[data-panel-group-direction=horizontal]{background-color:var(--app-content-bg,#f6f8ff);height:100%;box-sizing:border-box}[data-theme=dark] [data-panel-group-direction=horizontal]{background-color:var(--app-content-bg,#1a1a1a)}[data-theme=dark] [data-panel-group-direction=horizontal]>[data-panel]:nth-child(3){background-color:var(--app-paper-bg,#1e1e1e);border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 12px rgba(0,0,0,.2)}[data-panel-group-direction=horizontal]>[data-panel]{padding:0;border-radius:0!important;overflow:hidden;background-color:transparent}[data-panel-group-direction=horizontal]>[data-panel]:nth-child(3){background-color:var(--app-paper-bg,#ffffff);border-radius:0!important;overflow:hidden;border:1px solid rgba(0,0,0,.1);box-shadow:0 4px 12px rgba(0,0,0,.04)}[data-panel-group-direction=horizontal]>[data-panel-resize-handle],[data-theme=dark] [data-panel-group-direction=horizontal]>[data-panel-resize-handle]{box-shadow:0 4px 12px rgba(0,0,0,.04)}body,html{height:100%;overflow:hidden;transition:background-color .3s ease,color .3s ease}.main-content,.project-editor,[data-testid=main-content],body,html{overscroll-behavior:none;touch-action:pan-x pan-y}.MuiDataGrid-main,.MuiDataGrid-root,.MuiDataGrid-virtualScroller{overscroll-behavior:auto}.project-container{height:100vh;overflow:hidden;overscroll-behavior:none;transition:background-color .3s ease}.main-content-container{height:100vh;display:flex;flex-direction:column}.content-area,.main-content-container{flex-grow:1;overflow:hidden}.top-bar{height:56px;padding:16px;border-bottom:1px solid;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.top-bar-left,.top-bar-right{display:flex;align-items:center;gap:8px}.persistent-drawer{flex-shrink:0}.persistent-drawer.open{width:280px}.persistent-drawer.closed{width:0}.preview-panel-container{height:100%;overflow:auto;display:flex;flex-direction:column}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent;-ms-overflow-style:none}.custom-scrollbar::-webkit-scrollbar{width:8px}.custom-scrollbar::-webkit-scrollbar-track{background-color:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2);border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:rgba(0,0,0,.3)}.menu-icon-button{color:var(--text-primary)}.menu-icon-button.closed{color:var(--text-disabled)}.menu-icon-button:hover{background-color:var(--action-hover)}.tools-toggle-button{color:var(--text-primary)}.tools-toggle-button.hidden{color:var(--text-disabled)}.tools-toggle-button:hover{background-color:var(--action-hover)}.tutor-costs-text{color:var(--text-secondary);font-size:11px;font-weight:500;margin-left:4px}:root{--background:#ffffff;--foreground:#171717}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed}}body,html{max-width:100vw;overflow-x:hidden}body{color:var(--foreground);background:var(--background);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;padding:0;margin:0}a{color:inherit;text-decoration:none}@media (prefers-color-scheme:dark){html{color-scheme:dark}}[data-theme=dark] .__nmd_image_wrapper[data-is-diagram=true] .__nmd_img[data-is-svg=true]{filter:invert(1);transition:filter .2s ease-in-out}[data-theme=dark] .__nmd_image_wrapper[data-is-diagram=true]{background-color:rgba(18,18,18,.5);border-radius:4px}:where(.nova-shell).app-shell{display:flex;height:100dvh;width:100%;overflow:hidden;background:var(--content);color:var(--ink);font-family:Roboto,Arial,sans-serif}:where(.nova-shell) .sidebar{width:252px;flex-shrink:0;display:flex;flex-direction:column;height:100%;z-index:20}:where(.nova-shell) .workspace{display:flex;flex-direction:column;min-width:0;flex:1 1;height:100%;overflow:hidden}:where(.nova-shell) .main-content{flex:1 1;min-height:0;overflow:auto}:where(.nova-shell) .subject-dot{width:8px;height:8px;display:inline-block;border-radius:50%;flex-shrink:0}:where(.nova-shell) .agenda-row{display:flex;align-items:center;gap:14px;padding:16px 0}:where(.nova-shell) .calendar-page{padding:28px 28px 30px;max-width:1600px;margin:auto}:where(.nova-shell) .calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:20px;align-items:start}:where(.nova-shell) .calendar-surface{min-width:0;overflow:hidden}:where(.nova-shell) .calendar-day-head{display:grid;height:69px;border-bottom:1px solid var(--line);background:var(--paper)}:where(.nova-shell) .day-heading{border:0;border-left:1px solid var(--line);background:none;color:var(--muted);font:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:13px;letter-spacing:.3px}:where(.nova-shell) .day-heading:hover{background:var(--hover)}:where(.nova-shell) .day-heading strong{font-size:21px;font-weight:400;color:var(--ink);line-height:29px;width:29px;height:29px;border-radius:50%}:where(.nova-shell) .day-heading.is-today strong{background:var(--accent);color:#fff}:where(.nova-shell) .day-heading.is-today{color:var(--accent)}:where(.nova-shell) .timezone-label{align-self:end;padding-bottom:10px;text-align:center;font-size:12px;color:var(--muted)}:where(.nova-shell) .calendar-scroll{overflow:auto;max-height:calc(100dvh - 264px);min-height:340px}:where(.nova-shell) .calendar-grid{position:relative;display:grid;background:var(--paper);min-width:560px}:where(.nova-shell) .time-gutter{position:relative}:where(.nova-shell) .time-gutter span{position:absolute;left:0;right:9px;text-align:right;font-size:12px;line-height:15px;transform:translateY(-7px);color:var(--muted);pointer-events:none}:where(.nova-shell) .time-gutter span:first-child{transform:translateY(2px)}:where(.nova-shell) .calendar-day-column{position:relative;border-left:1px solid var(--line);background-image:linear-gradient(to bottom,var(--line) 1px,transparent 1px);background-size:100% 60px;cursor:crosshair}:where(.nova-shell) .calendar-day-column:before{position:absolute;content:"";inset:30px 0 0;background-image:linear-gradient(to bottom,var(--line) 1px,transparent 1px);background-size:100% 60px;opacity:.4;pointer-events:none}:where(.nova-shell) .today-column{background-color:var(--hover)}:where(.nova-shell) .calendar-event{position:absolute;z-index:2;border-left:3px solid;border-radius:4px;padding:6px 5px;cursor:grab;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none;box-shadow:0 1px 2px #0000000a;font-size:13px;line-height:1.25}:where(.nova-shell) .calendar-event:active{cursor:grabbing;z-index:6}:where(.nova-shell) .calendar-event:focus-visible{z-index:7}:where(.nova-shell) .event-fixed{cursor:pointer}:where(.nova-shell) .event-title{font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}:where(.nova-shell) .event-time{font-size:12px;white-space:nowrap;margin-top:4px}:where(.nova-shell) .event-kind{font-size:12px;margin-top:5px;opacity:.8}:where(.nova-shell) .event-done .event-title{text-decoration:line-through}:where(.nova-shell) .resize-handle{position:absolute;bottom:0;left:0;right:0;height:9px;cursor:ns-resize;touch-action:none}:where(.nova-shell) .resize-handle:after{content:"";position:absolute;width:16px;height:2px;border-radius:2px;bottom:3px;left:calc(50% - 8px);background:currentColor;opacity:.35}:where(.nova-shell) .now-line{position:absolute;left:0;right:0;height:2px;background:#c14d4c;z-index:4;pointer-events:none}:where(.nova-shell) .now-line span{position:absolute;width:7px;height:7px;border-radius:50%;background:#c14d4c;left:-4px;top:-3px}:where(.nova-shell) .task-card{border:1px solid var(--line);border-radius:7px;padding:12px;margin-bottom:12px;cursor:grab;background:var(--content)}:where(.nova-shell) .task-card:last-child{margin-bottom:0}:where(.nova-shell) .task-card:active{cursor:grabbing}:where(.nova-shell) .drop-marker{position:absolute;z-index:10;left:3px;right:3px;min-height:30px;background:var(--accent);color:#fff;border-radius:4px;padding:5px;font-size:12px;pointer-events:none}:where(.nova-shell) .event-short{padding:5px}:where(.nova-shell) .event-short .event-title{display:block;white-space:nowrap;text-overflow:ellipsis}:where(.nova-shell) .event-short .event-time{margin-top:3px}:where(.nova-shell) .event-tiny{padding:3px 4px}:where(.nova-shell) .event-tiny .event-title{font-size:12px;line-height:12px}:where(.nova-shell) .event-tiny .event-time{font-size:12px;line-height:9px;margin-top:1px}:where(.nova-shell) .event-tiny .resize-handle{height:5px}:where(.nova-shell) .event-tiny .resize-handle:after{display:none}@media (min-width:1600px){:where(.nova-shell) .calendar-event{font-size:14px}:where(.nova-shell) .event-time{font-size:12px}}@media (max-width:1200px){:where(.nova-shell) .calendar-layout{grid-template-columns:minmax(0,1fr)}:where(.nova-shell) .calendar-task-panel{display:grid;grid-template-columns:1fr 200px;gap:12px}:where(.nova-shell) .calendar-task-panel .MuiCardContent-root{display:flex;flex-wrap:wrap;gap:12px}:where(.nova-shell) .calendar-task-panel .MuiCardContent-root>p{width:100%;margin:0}:where(.nova-shell) .task-card{flex:1 1;min-width:180px;margin-bottom:0}:where(.nova-shell) .calendar-scroll{max-height:550px}}@media (max-width:1000px){:where(.nova-shell) .calendar-task-panel{display:block}:where(.nova-shell) .calendar-page{padding:24px}}@media (max-width:850px){:where(.nova-shell) .sidebar{position:absolute;left:0;top:0;width:260px;box-shadow:4px 0 22px #0000001f}:where(.nova-shell) .workspace{width:100%}:where(.nova-shell) .calendar-day-head,:where(.nova-shell) .calendar-grid{min-width:620px}:where(.nova-shell) .calendar-surface{overflow-x:auto}:where(.nova-shell) .calendar-scroll{max-height:530px}:where(.nova-shell) .calendar-page{padding:20px}}@media (max-width:540px){:where(.nova-shell) .calendar-page{padding:20px 14px}:where(.nova-shell) .calendar-page .MuiToggleButton-root{padding:5px 9px}}:where(.nova-shell) html[data-appearance=dark]{--q-bg:#202020;--q-side:#181818;--q-soft:#282828;--q-ink:#ededed;--q-muted:#a0a09c;--q-line:#383838;--q-hover:#303030;--q-book:#292929}:where(.nova-shell).quiet-shell{--chrome:var(--q-side);--paper:var(--q-bg);--content:var(--q-bg);--ink:var(--q-ink);--muted:var(--q-muted);--line:var(--q-line);--accent:var(--q-ink);--hover:var(--q-soft);background:var(--q-bg);color:var(--q-ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}:where(.nova-shell).quiet-shell button{font-family:inherit}:where(.nova-shell) .quiet-sidebar{width:220px;background:var(--q-side);border:0;padding:0 12px}:where(.nova-shell) .brand-row{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 10px}:where(.nova-shell) .brand-row .MuiIconButton-root{opacity:.6}:where(.nova-shell) .search-row{border:0;background:transparent;color:var(--q-muted);width:100%;display:flex;align-items:center;padding:11px 12px;gap:12px;cursor:pointer;font-size:15px;margin:5px 0 24px;border-radius:8px}:where(.nova-shell) .search-row svg{width:18px;height:18px}:where(.nova-shell) .search-row kbd{margin-left:auto;font-family:inherit;font-size:12px;color:var(--q-muted);border:1px solid var(--q-line);border-radius:4px;padding:1px 4px}:where(.nova-shell) .search-row:hover{background:var(--q-hover)}:where(.nova-shell) .global-nav{display:flex;flex-direction:column;gap:5px}:where(.nova-shell) .global-nav>button{display:flex;gap:12px;align-items:center;min-height:42px;padding:11px 13px;border:0;border-radius:8px;background:none;color:var(--q-ink);font-size:15px;text-align:left;cursor:pointer}:where(.nova-shell) .global-nav>button svg{width:19px;height:19px;stroke-width:1;color:var(--q-muted)}:where(.nova-shell) .global-nav>button:hover{background:var(--q-hover)}:where(.nova-shell) .global-nav>button.is-active{background:var(--q-hover);font-weight:500}:where(.nova-shell) .global-nav>button.is-active svg{color:var(--q-ink)}:where(.nova-shell) .sidebar-space{flex:1 1}:where(.nova-shell) .quiet-topbar{height:49px;flex-shrink:0;display:flex;align-items:center;padding:0 25px;gap:12px}:where(.nova-shell) .quiet-page{max-width:1110px;margin:auto;padding:39px 54px 70px}:where(.nova-shell) .quiet-page h1,:where(.nova-shell) .quiet-page h2,:where(.nova-shell) .quiet-page h3,:where(.nova-shell) .quiet-page p{margin:0}:where(.nova-shell) .quiet-page h1{font-size:32px;font-weight:500;letter-spacing:-1px;line-height:1.25}:where(.nova-shell) .quiet-page h2{font-size:17px;font-weight:500;letter-spacing:-.25px;line-height:1.4}:where(.nova-shell) .quiet-page h3{font-size:14px;font-weight:500;line-height:1.5}:where(.nova-shell) .quiet-page .secondary{font-size:15px;line-height:1.75;color:var(--q-muted)}:where(.nova-shell) .quiet-page .eyebrow{font-size:14px;color:var(--q-muted);line-height:1.5;margin-bottom:12px}:where(.nova-shell) .welcome{margin-bottom:40px}:where(.nova-shell) .sep{padding:0 4px}:where(.nova-shell) .quiet-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}:where(.nova-shell) .quiet-section-heading h2{font-size:15px;font-weight:500}:where(.nova-shell) .text-action{border:0;background:none;color:var(--q-muted);cursor:pointer;display:inline-flex;align-items:center;gap:3px;font-size:13px;padding:3px 0;line-height:1.5}:where(.nova-shell) .text-action svg{font-size:15px}:where(.nova-shell) .text-action:hover{color:var(--q-ink)}:where(.nova-shell) .book-open{display:block;text-align:left;border:0;padding:0;background:none;width:100%;color:var(--q-ink);cursor:pointer}:where(.nova-shell) .book-stage{display:flex;align-items:center;justify-content:center;background:var(--q-book);border-radius:11px;overflow:hidden;height:158px;margin-bottom:16px;transition:background .2s}:where(.nova-shell) .book-stage img{height:118px;width:85px;object-fit:contain;border-radius:1px;box-shadow:-2px 4px 8px #00000012;transition:transform .2s}:where(.nova-shell) .book-open:hover .book-stage img{transform:translateY(-4px)}:where(.nova-shell) .book-open h3{font-size:15px;font-weight:500}:where(.nova-shell) .book-open>p{font-size:13px;color:var(--q-muted);margin-top:6px}:where(.nova-shell) .book-progress{height:2px;background:var(--q-line);border-radius:4px;overflow:hidden;margin-top:18px}:where(.nova-shell) .book-progress span{height:100%;display:block;border-radius:4px;opacity:.7}:where(.nova-shell) .book-meta{display:flex;justify-content:space-between;align-items:center;gap:7px;font-size:12px;color:var(--q-muted);margin-top:10px}:where(.nova-shell) .book-meta button{display:inline-flex;align-items:center;gap:3px;border:0;background:none;padding:0;color:var(--q-muted);font-size:12px;cursor:pointer}:where(.nova-shell) .book-meta button:hover{color:var(--q-ink)}:where(.nova-shell) .library-books{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}:where(.nova-shell) .library-books .book-stage{height:290px;margin-bottom:23px}:where(.nova-shell) .library-books .book-stage img{width:155px;height:217px}:where(.nova-shell) .library-books .book-level{font-size:12px;letter-spacing:.5px;margin-bottom:8px}:where(.nova-shell) .library-books .book-open h2{font-size:20px}:where(.nova-shell) .library-books .book-open .secondary{font-size:14px;margin-top:7px}:where(.nova-shell) .library-books .book-meta,:where(.nova-shell) .library-books .book-meta button{font-size:13px}:where(.nova-shell) .library-books .book-progress{margin-top:24px}:where(.nova-shell) .course-overview-columns{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:72px}:where(.nova-shell) .course-overview-columns h2{font-size:15px;margin-bottom:19px}:where(.nova-shell) .course-facts{margin:0}:where(.nova-shell) .course-facts>div{display:flex;justify-content:space-between;gap:25px;padding:14px 0;border-bottom:1px solid var(--q-line);font-size:14px;line-height:1.6}:where(.nova-shell) .course-facts dt{color:var(--q-muted)}:where(.nova-shell) .course-facts dd{margin:0;text-align:right}:where(.nova-shell) .subsection-title{margin-top:38px!important;margin-bottom:16px!important}:where(.nova-shell) .plain-strands>div{display:flex;gap:18px;font-size:14px;padding:12px 0}:where(.nova-shell) .plain-strands>div>span{color:var(--q-muted);font-size:12px}:where(.nova-shell) .exam-date{margin-bottom:22px}:where(.nova-shell) .exam-date>p{font-size:14px;line-height:1.6;margin-bottom:5px}:where(.nova-shell) .exam-date>span{font-size:13px;color:var(--q-muted)}:where(.nova-shell) .minimal-topic{display:flex;gap:15px;align-items:center;padding:16px 0;border-bottom:1px solid var(--q-line)}:where(.nova-shell) .topic-number{font-size:13px;color:var(--q-muted);width:25px}:where(.nova-shell) .minimal-topic>button:not(.MuiIconButton-root){flex:1 1;text-align:left;border:0;background:none;padding:0;font-size:15px;cursor:pointer;color:var(--q-ink)}:where(.nova-shell) .assessment-content{max-width:670px}:where(.nova-shell) .assessment-content>.secondary{margin:12px 0 25px}:where(.nova-shell) .assessment-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:21px 0;border-bottom:1px solid var(--q-line)}:where(.nova-shell) .assessment-row h3{font-size:15px}:where(.nova-shell) .assessment-row p{font-size:13px;color:var(--q-muted);margin-top:6px}:where(.nova-shell) .assessment-row>span{font-size:14px}:where(.nova-shell) .assessment-content>.text-action{margin-top:20px}:where(.nova-shell) .grade-section{margin-top:45px}:where(.nova-shell) .grade-section .secondary{font-size:14px;margin-top:10px}:where(.nova-shell).quiet-shell .MuiCard-root{box-shadow:none;border-color:var(--q-line);border-radius:12px}:where(.nova-shell).quiet-shell .calendar-page{padding:30px 36px 40px;max-width:none}:where(.nova-shell).quiet-shell .calendar-layout{display:block}:where(.nova-shell).quiet-shell .calendar-layout.with-tasks{display:grid;grid-template-columns:minmax(0,1fr) 215px}:where(.nova-shell).quiet-shell .calendar-task-panel{display:none}:where(.nova-shell).quiet-shell .calendar-layout.with-tasks .calendar-task-panel{display:block}:where(.nova-shell).quiet-shell .calendar-surface{border-radius:10px}:where(.nova-shell).quiet-shell .calendar-day-head{height:65px}:where(.nova-shell).quiet-shell .day-heading strong{font-size:19px}:where(.nova-shell).quiet-shell .calendar-scroll{max-height:calc(100dvh - 263px)}:where(.nova-shell).quiet-shell .calendar-event{border-left-width:2px;border-radius:4px;box-shadow:none;font-size:13px}:where(.nova-shell).quiet-shell .event-kind{display:none}:where(.nova-shell).quiet-shell .today-column{background-color:transparent}:where(.nova-shell).quiet-shell .task-card{background:var(--q-soft);border:0}:where(.nova-shell).quiet-shell .calendar-task-panel>.MuiCard-root{border:0}:where(.nova-shell).quiet-shell .calendar-task-panel>.MuiCard-root>.MuiCardContent-root{padding-top:5px}:where(.nova-shell).quiet-shell .calendar-task-panel h6{font-size:14px}:where(.nova-shell) .MuiDialog-root .MuiAutocomplete-root{width:100%!important;max-width:100%!important}:where(.nova-shell) .MuiDialog-root .MuiAutocomplete-inputRoot{border:1px solid var(--q-line)!important;border-radius:9px!important;background:var(--q-bg)!important;color:var(--q-ink)!important}:where(.nova-shell) .MuiDialog-root .MuiAutocomplete-inputRoot input{color:var(--q-ink)!important}:where(.nova-shell) .MuiDialog-root .MuiAutocomplete-inputRoot svg{color:var(--q-muted)!important}@media (min-width:1550px){:where(.nova-shell) .quiet-page{max-width:1220px;padding-left:72px;padding-right:72px}:where(.nova-shell) .book-stage{height:180px}}@media (max-width:1200px){:where(.nova-shell) .quiet-sidebar{width:195px}:where(.nova-shell) .quiet-page{padding:32px 36px 55px}:where(.nova-shell) .book-stage{height:140px}:where(.nova-shell) .book-stage img{height:104px;width:74px}:where(.nova-shell) .library-books{gap:24px}:where(.nova-shell) .library-books .book-stage{height:245px}:where(.nova-shell) .library-books .book-stage img{height:182px;width:130px}:where(.nova-shell) .course-overview-columns{gap:35px}:where(.nova-shell).quiet-shell .calendar-page{padding:25px}:where(.nova-shell).quiet-shell .calendar-task-panel .MuiCardContent-root{display:block}:where(.nova-shell).quiet-shell .calendar-layout.with-tasks{grid-template-columns:minmax(0,1fr) 200px}:where(.nova-shell).quiet-shell .calendar-task-panel .task-card{min-width:0;margin-bottom:12px}}@media (max-width:1000px){:where(.nova-shell) .library-books .book-stage{height:210px}:where(.nova-shell) .library-books .book-stage img{height:160px;width:114px}:where(.nova-shell) .course-overview-columns{grid-template-columns:1fr}:where(.nova-shell) .course-dates{border-top:1px solid var(--q-line);padding-top:25px}:where(.nova-shell).quiet-shell .calendar-layout.with-tasks{display:block}:where(.nova-shell).quiet-shell .calendar-layout.with-tasks .calendar-task-panel{margin-top:25px}:where(.nova-shell).quiet-shell .calendar-task-panel .MuiCardContent-root{display:flex;flex-wrap:wrap;gap:14px}:where(.nova-shell).quiet-shell .calendar-task-panel .task-card{flex:1 1;min-width:150px}}@media (max-width:850px){:where(.nova-shell) .quiet-sidebar{width:230px}:where(.nova-shell) .quiet-page{padding:24px 28px 50px}:where(.nova-shell) .quiet-topbar{padding:0 18px}:where(.nova-shell) .quiet-page h1{font-size:29px}:where(.nova-shell).quiet-shell .calendar-day-head,:where(.nova-shell).quiet-shell .calendar-grid{min-width:620px}}@media (max-width:680px){:where(.nova-shell) .welcome{margin-bottom:30px}:where(.nova-shell) .library-books{gap:18px}:where(.nova-shell) .library-books .book-stage{height:175px}:where(.nova-shell) .library-books .book-stage img{height:134px;width:96px}:where(.nova-shell) .library-books .book-open h2{font-size:16px}:where(.nova-shell) .library-books .book-meta{flex-direction:column;align-items:flex-start;gap:10px}}@media (max-width:420px){:where(.nova-shell) .quiet-page{padding:22px 21px 42px}:where(.nova-shell) .quiet-page h1{font-size:27px}:where(.nova-shell) .book-stage{height:125px}:where(.nova-shell) .book-stage img{height:89px;width:64px}:where(.nova-shell) .book-open h3{font-size:14px}:where(.nova-shell) .book-open>p{font-size:12px}:where(.nova-shell) .book-meta,:where(.nova-shell) .book-meta button{font-size:12px}:where(.nova-shell) .book-meta{flex-wrap:wrap;gap:7px}:where(.nova-shell) .library-books{grid-template-columns:1fr}:where(.nova-shell) .library-books .book-stage{height:290px}:where(.nova-shell) .library-books .book-stage img{height:217px;width:155px}:where(.nova-shell) .library-books .book-open h2{font-size:22px}:where(.nova-shell) .library-books .book-meta{flex-direction:row}:where(.nova-shell) .library-books>article{margin-bottom:15px}:where(.nova-shell) .quiet-topbar{padding:0 14px}:where(.nova-shell).quiet-shell .calendar-page{padding:20px 16px}}:where(.nova-shell) html[data-appearance=dark] .MuiButton-containedPrimary:not(.Mui-disabled){background:#ededed!important;color:#222!important}:where(.nova-shell) html[data-appearance=dark] .MuiButton-containedPrimary:not(.Mui-disabled):hover{background:#d8d8d8!important}:where(.nova-shell).quiet-shell .day-heading.is-today strong{color:var(--q-bg)}.nova-shell{font-family:Roboto,Arial,sans-serif;--accent:var(--nova-accent);--paper:var(--nova-paper);--content:var(--nova-content);--chrome:var(--nova-chrome);--ink:var(--nova-text);--muted:var(--nova-muted);--line:var(--nova-divider);--hover:var(--nova-hover);--q-bg:var(--nova-content);--nova-frame:var(--nova-chrome);--q-side:var(--nova-frame);--q-soft:var(--nova-hover);--q-book:var(--nova-paper);--q-ink:var(--nova-text);--q-muted:var(--nova-muted);--q-line:var(--nova-divider);--q-hover:var(--nova-selected);background:var(--nova-content)}.nova-shell.quiet-light{--nova-frame:color-mix(in oklab,var(--nova-chrome) 93%,var(--nova-text))}.nova-shell.quiet-dark{--nova-frame:color-mix(in oklab,var(--nova-chrome) 95%,var(--nova-text))}.nova-shell .quiet-sidebar{width:244px;padding:0 8px;border-right:1px solid var(--nova-divider);background:var(--nova-frame)}.nova-shell .brand-row{height:64px;padding:0 15px}.nova-shell .search-row{margin:12px 0 17px;border:1px solid var(--nova-divider);background:var(--nova-paper);font-size:14px;padding:9px 11px}.nova-shell .global-nav{gap:3px}.nova-shell .global-nav>button{border-radius:4px;min-height:42px;font-size:14px;padding:10px 14px}.nova-shell .global-nav>button.is-active{background:var(--nova-selected);color:var(--nova-accent);font-weight:500}.nova-shell .global-nav>button svg{color:var(--nova-icon);width:21px;height:21px}.nova-shell .global-nav>button.is-active svg{color:var(--nova-accent)}.nova-shell .quiet-topbar{height:56px;background:var(--nova-frame);border-bottom:1px solid var(--nova-divider);padding:0 24px}.nova-shell .quiet-page{max-width:1280px;padding:32px}.nova-shell .quiet-page h1{font-size:28px}.nova-shell .quiet-page h1,.nova-shell .quiet-page h2{font-weight:600;letter-spacing:0}.nova-shell .quiet-page .secondary{font-size:14px}.nova-shell .MuiCard-root{border-radius:4px}.nova-shell .book-stage{border:1px solid var(--nova-divider);border-radius:6px}.nova-shell .book-meta,.nova-shell .book-meta button,.nova-shell .book-open>p{font-size:14px}.nova-shell .calendar-page{padding:28px 32px}.nova-shell .calendar-surface{border-radius:4px}.nova-shell .calendar-scroll{max-height:calc(100dvh - 270px)}.nova-shell .day-heading.is-today strong{background:var(--nova-accent);color:var(--nova-paper)}:where(.nova-shell) html[data-appearance=dark] .nova-shell .MuiButton-containedPrimary:not(.Mui-disabled),:where(.nova-shell) html[data-appearance=dark] .nova-shell .MuiButton-containedPrimary:not(.Mui-disabled):hover{background:var(--nova-accent)!important;color:var(--nova-paper)!important}:where(.nova-shell) .nova-dashboard{padding:28px 32px 40px;max-width:1600px;margin:0 auto}:where(.nova-shell) .nova-dashboard .MuiButton-root,:where(.nova-shell) .nova-dashboard .MuiToggleButton-root{text-transform:none}:where(.nova-shell) .dashboard-subject-filter i,:where(.nova-shell) .nova-score-subjects i,:where(.nova-shell) .nova-subject-statuses i{width:7px;height:7px;display:inline-block;border-radius:50%;margin-right:7px;flex-shrink:0}:where(.nova-shell) .dashboard-subject-filter .MuiToggleButton-root{padding:7px 12px;font-size:14px}:where(.nova-shell) .nova-dashboard .nova-dashboard-card{box-shadow:none;border-radius:4px}:where(.nova-shell) .nova-card-header{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid var(--nova-divider)}:where(.nova-shell) .nova-header-spacer{flex:1 1}:where(.nova-shell) .nova-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:16px;gap:10px}:where(.nova-shell) .nova-week-day{min-width:0;min-height:154px}:where(.nova-shell) .nova-week-date{display:flex;align-items:center;gap:5px;padding:0 2px 12px;font-size:14px;color:var(--nova-muted)}:where(.nova-shell) .nova-week-date strong{font-weight:600}:where(.nova-shell) .current-day .nova-week-date{color:var(--nova-accent)}:where(.nova-shell) .today-tag{font-size:12px;background:var(--nova-selected);border-radius:3px;padding:2px 4px;margin-left:auto}:where(.nova-shell) .nova-week-event{display:block;width:100%;text-align:left;border:1px solid var(--nova-divider);border-left:3px solid;border-radius:4px;padding:8px;background:var(--nova-paper);color:var(--nova-text);margin-bottom:8px;cursor:pointer;min-height:60px}:where(.nova-shell) .nova-week-event:hover{background:var(--nova-hover)}:where(.nova-shell) .nova-week-event>span{display:flex;justify-content:space-between;font-size:12px;color:var(--nova-muted);gap:4px}:where(.nova-shell) .nova-week-event>strong{font-weight:500;font-size:14px;display:block;margin-top:5px}:where(.nova-shell) .nova-week-event svg{font-size:14px;vertical-align:middle;margin-right:3px}:where(.nova-shell) .nova-week-event.is-done{background:color-mix(in srgb,#16a34a 7%,var(--nova-paper))}:where(.nova-shell) .nova-week-event.is-done>strong{color:var(--nova-muted)}:where(.nova-shell) .nova-week-event.is-done>strong svg{color:#16a34a}:where(.nova-shell) .nova-empty-day{display:block;color:var(--nova-muted);font-size:13px;padding:12px 2px}:where(.nova-shell) .nova-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}:where(.nova-shell) .nova-card-heading{display:flex;gap:10px;align-items:center;min-height:34px;margin-bottom:18px;flex-wrap:wrap}:where(.nova-shell) .nova-card-heading>.MuiToggleButtonGroup-root{margin-left:auto}:where(.nova-shell) .nova-card-heading .MuiToggleButton-root{font-size:13px;padding:5px 10px}:where(.nova-shell) .nova-dashboard-card>.MuiCardContent-root{padding:20px!important}:where(.nova-shell) .nova-subject-statuses{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--nova-divider);padding-top:13px}:where(.nova-shell) .nova-subject-statuses button{background:transparent;border:0;padding:0;cursor:pointer;font-size:13px;color:var(--nova-text);flex:1 1;min-width:120px}:where(.nova-shell) .nova-subject-statuses button>span{font-size:12px;color:#0288d1;margin-left:5px}:where(.nova-shell) .nova-subject-statuses button>span.status-behind{color:#b16a06}:where(.nova-shell) .nova-score-subjects{display:flex;gap:4px;margin-bottom:13px}:where(.nova-shell) .nova-score-subjects button{background:none;border:0;border-radius:4px;padding:5px 11px;color:var(--nova-muted);font-size:14px;cursor:pointer}:where(.nova-shell) .nova-score-subjects button[aria-pressed=true]{background:var(--nova-selected);color:var(--nova-accent);font-weight:500}:where(.nova-shell) .nova-prediction{display:flex;align-items:center;justify-content:space-between;border:1px solid;border-radius:8px;padding:12px 16px;margin-bottom:16px;gap:10px}:where(.nova-shell) .nova-textbook-row{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--nova-divider)}:where(.nova-shell) .nova-textbook-row:last-child{border-bottom:0}:where(.nova-shell) .nova-textbook-row>img{width:40px;height:56px;object-fit:contain;border-radius:2px}:where(.nova-shell) .nova-textbook-row>div{flex:1 1}:where(.nova-shell) .nova-textbook-row>div>button{border:0;padding:0;background:none;cursor:pointer;color:var(--nova-text);font-size:14px;font-weight:500}:where(.nova-shell) .nova-textbook-row>div>.nova-course-link{font-size:13px;font-weight:400;color:var(--nova-accent);margin-top:5px}:where(.nova-shell) .nova-exam-row{display:flex;gap:12px;align-items:center;border:0;border-bottom:1px solid var(--nova-divider);background:none;width:100%;text-align:left;color:var(--nova-text);cursor:pointer;padding:19px 0}:where(.nova-shell) .nova-exam-row>div:first-of-type{flex:1 1}:where(.nova-shell) .nova-exam-row>div:nth-of-type(2){text-align:right}:where(.nova-shell) .nova-exam-marker{width:4px;height:36px;border-radius:4px}:where(.nova-shell) .nova-exam-row:last-of-type{border-bottom:0;margin-bottom:7px}@media (max-width:1250px){:where(.nova-shell) .nova-week-days{overflow-x:auto;grid-template-columns:repeat(7,minmax(125px,1fr))}:where(.nova-shell) .nova-card-heading{gap:8px}:where(.nova-shell) .nova-card-heading h2{font-size:16px}:where(.nova-shell) .nova-card-heading .MuiToggleButton-root{font-size:12px}:where(.nova-shell) .nova-dashboard-card>.MuiCardContent-root{padding:16px!important}}@media (max-width:1000px){:where(.nova-shell) .nova-dashboard-grid{grid-template-columns:1fr}:where(.nova-shell) .nova-dashboard{padding:24px}:where(.nova-shell) .nova-card-heading .MuiToggleButton-root{font-size:14px}}@media (max-width:600px){:where(.nova-shell) .nova-dashboard{padding:18px 14px}:where(.nova-shell) .dashboard-subject-filter .MuiToggleButton-root{font-size:12px;padding:7px 8px}:where(.nova-shell) .nova-card-header{padding:12px;gap:7px;flex-wrap:wrap}:where(.nova-shell) .nova-card-header>.MuiSvgIcon-root{display:none}:where(.nova-shell) .nova-card-header .MuiButton-root{font-size:13px}:where(.nova-shell) .nova-card-header h2{font-size:16px}:where(.nova-shell) .nova-card-header .MuiTypography-caption{font-size:12px}:where(.nova-shell) .nova-week-days{padding:12px}:where(.nova-shell) .nova-dashboard-grid{gap:18px;margin-top:18px}:where(.nova-shell) .nova-card-heading h2{font-size:16px}:where(.nova-shell) .nova-card-heading .MuiToggleButton-root{font-size:12px}:where(.nova-shell) .nova-card-heading{gap:7px}:where(.nova-shell) .nova-card-heading>svg{font-size:19px}:where(.nova-shell) .nova-score-subjects button{font-size:13px}:where(.nova-shell) .nova-prediction .MuiTypography-caption{font-size:12px}:where(.nova-shell) .nova-subject-statuses button{min-width:90px}.nova-shell .quiet-page{padding:24px 20px}.nova-shell .quiet-topbar{padding:0 16px}.nova-shell .book-meta,.nova-shell .book-meta button{font-size:12px}:where(.nova-shell) .nova-textbook-row>.MuiButton-root{font-size:13px;padding:5px}:where(.nova-shell) .nova-exam-row{gap:8px}:where(.nova-shell) .nova-exam-row .MuiTypography-body2{font-size:14px}:where(.nova-shell) .nova-exam-row .MuiTypography-caption{font-size:12px}}:where(.nova-shell) .nova-week-more{background:none;border:0;color:var(--nova-accent);font-size:13px;padding:2px 4px;cursor:pointer}:where(.nova-shell) .full-panel-main{overflow:hidden;display:flex;flex-direction:column;min-height:0}:where(.nova-shell) .tracker-view{height:100%;display:flex;flex-direction:column;min-height:0}:where(.nova-shell) .tracker-body{flex:1 1;min-height:0;overflow:hidden;display:flex;flex-direction:column}:where(.nova-shell) .tracker-body>.MuiBox-root{min-height:0}:where(.nova-shell) .tracker-charts{padding:24px;overflow:auto;flex:1 1;min-height:0}:where(.nova-shell) .tracker-view .MuiDataGrid-root{border:0;border-radius:0;background:var(--nova-paper)}:where(.nova-shell) .tracker-view .MuiDataGrid-columnHeaderTitle{font-weight:600}:where(.nova-shell) .tracker-body .MuiOutlinedInput-root,:where(.nova-shell) .tracker-view .MuiDataGrid-cell{font-size:15px}:where(.nova-shell) .tracker-view .MuiDataGrid-row:hover{background:var(--nova-hover)}.nova-shell .calendar-fit{padding:0 16px 10px;height:100%;width:100%;display:flex;flex-direction:column;min-height:0}:where(.nova-shell) .calendar-period{display:flex;align-items:center;gap:4px}:where(.nova-shell) .calendar-period h1{margin-left:12px;font-size:19px}.nova-shell .calendar-fit .calendar-layout{flex:1 1;min-height:0;display:flex;gap:16px;align-items:stretch}.nova-shell .calendar-fit .calendar-surface{flex:1 1;display:flex;flex-direction:column;min-height:0;min-width:0;border-radius:4px}.nova-shell .calendar-fit .calendar-day-head{height:46px;flex-shrink:0}.nova-shell .calendar-fit .day-heading{padding:3px;gap:1px}.nova-shell .calendar-fit .day-heading>span{font-size:12px}.nova-shell .calendar-fit .day-heading strong{font-size:16px;width:25px;height:25px;line-height:25px}.nova-shell .calendar-fit .calendar-scroll{flex:1 1;min-height:0;max-height:none;overflow-x:auto;overflow-y:auto}.nova-shell .calendar-fit .calendar-grid{min-height:0;background:var(--nova-paper)}.nova-shell .calendar-fit .calendar-day-column{background-size:100% var(--hour-height);touch-action:none}.nova-shell .calendar-fit .calendar-day-column:before{top:var(--half-hour-height);background-size:100% var(--hour-height)}.nova-shell .calendar-fit .time-gutter span:last-child{transform:translateY(-13px)}.nova-shell .calendar-fit .calendar-event{padding:3px 4px;min-height:7px}.nova-shell .calendar-fit .event-title{line-height:1.2;-webkit-line-clamp:1}.nova-shell .calendar-fit .event-time{margin-top:2px;font-size:12px}.nova-shell .calendar-fit .with-tasks .calendar-task-panel{display:block;width:215px;overflow-y:auto;min-height:0;flex-shrink:0;margin-top:0}.nova-shell .calendar-fit.is-agenda .calendar-surface{overflow-y:auto}:where(.nova-shell) .calendar-range{position:absolute;left:3px;right:3px;background:var(--nova-selected);border:1px solid var(--nova-accent);color:var(--nova-accent);font-size:12px;padding:3px;pointer-events:none;z-index:8;min-height:6px;border-radius:3px}@media (max-width:1200px){:where(.nova-shell) .calendar-period h1{font-size:17px}}@media (max-width:950px){:where(.nova-shell) .calendar-period{flex:1 1}.nova-shell .calendar-fit .with-tasks .calendar-task-panel{width:185px}.nova-shell .calendar-fit .calendar-task-panel .MuiCardContent-root{display:block}}@media (max-width:600px){.nova-shell .calendar-fit{padding:0 8px 8px}:where(.nova-shell) .calendar-period h1{font-size:16px;margin-left:5px}:where(.nova-shell) .calendar-period .MuiButton-root{min-width:50px;padding:3px}.nova-shell .calendar-fit .with-tasks .calendar-task-panel{position:absolute;right:8px;top:190px;bottom:10px;width:225px;background:var(--nova-paper);box-shadow:0 8px 25px #0003;z-index:12;padding:10px;border:1px solid var(--nova-divider)}:where(.nova-shell) .tracker-body .MuiDataGrid-root{min-width:0}.nova-shell .library-books{grid-template-columns:1fr;gap:30px}.nova-shell .library-books .book-stage{height:225px}.nova-shell .library-books .book-stage img{height:185px;width:auto}.nova-shell .library-books .book-meta{flex-direction:row}.nova-shell .library-books .book-meta button{font-size:14px}}:where(.nova-shell) .paper-inline-filters{display:flex;align-items:center;gap:10px;flex-shrink:0}:where(.nova-shell) .paper-inline-filters .MuiTextField-root{min-width:0!important;width:138px}:where(.nova-shell) .paper-inline-filters .MuiTextField-root:nth-child(3){width:105px}:where(.nova-shell) .paper-inline-filters .MuiButton-root{font-size:14px;text-transform:none;padding:5px;min-width:40px}:where(.nova-shell) .progress-hierarchy{padding:24px 32px 40px}:where(.nova-shell) .progress-hierarchy>section{margin-bottom:42px}:where(.nova-shell) .progress-hierarchy .MuiCard-root{border:1px solid var(--nova-divider);box-shadow:none}:where(.nova-shell) .hierarchy-overall>.MuiBox-root>.MuiBox-root{flex-basis:100%;min-width:100%}:where(.nova-shell) .hierarchy-overall .MuiCard-root>.MuiCardContent-root{max-width:100%}:where(.nova-shell) .progress-hierarchy h2{font-size:23px}:where(.nova-shell) .progress-hierarchy h3{font-size:17px}:where(.nova-shell) .progress-hierarchy .MuiCardContent-root{padding:20px}:where(.nova-shell) .hierarchy-textbook-folders>.MuiTypography-root{font-size:19px}@media (max-width:850px){:where(.nova-shell) .progress-hierarchy{padding:20px}:where(.nova-shell) .paper-inline-filters{flex-wrap:wrap;gap:8px}:where(.nova-shell) .paper-inline-filters .MuiTextField-root{width:130px}}@media (max-width:600px){:where(.nova-shell) .paper-inline-filters{order:1;flex:1 1 100%;display:grid;grid-template-columns:1fr 1fr 85px;gap:8px}:where(.nova-shell) .paper-inline-filters .MuiTextField-root,:where(.nova-shell) .paper-inline-filters .MuiTextField-root:nth-child(3){width:100%;min-width:0!important}:where(.nova-shell) .paper-inline-filters .MuiInputBase-root{font-size:14px}:where(.nova-shell) .progress-hierarchy{padding:18px 12px}:where(.nova-shell) .progress-hierarchy .MuiCardContent-root{padding:12px}:where(.nova-shell) .progress-hierarchy h2{font-size:21px}}@media (max-width:600px){:where(.nova-shell) .paper-inline-filters{grid-template-columns:1fr 1fr 100px}}.nova-shell .quiet-topbar{height:auto;min-height:56px;gap:16px}:where(.nova-shell) .page-toolbar-controls{display:flex;align-items:center;margin-left:auto;gap:12px}:where(.nova-shell) .page-toolbar-controls:empty{display:none}:where(.nova-shell) .progress-toolbar-controls{display:flex;align-items:center;gap:12px}:where(.nova-shell) .progress-toolbar-controls .MuiInputBase-root{font-size:14px}:where(.nova-shell) .progress-toolbar-controls .MuiToggleButton-root{font-size:14px;text-transform:none;padding:6px 10px}:where(.nova-shell) .progress-toolbar-controls>.MuiToggleButtonGroup-root:last-child{margin-left:0}:where(.nova-shell) .nova-dashboard{padding-top:20px}:where(.nova-shell) .week-action-divider{height:24px;width:1px;background:var(--nova-divider);margin:0 4px}:where(.nova-shell) .calendar-period h2{margin-left:12px;font-size:19px}.nova-shell .calendar-fit .day-heading{cursor:default}@media (max-width:850px){.nova-shell .quiet-topbar{flex-wrap:wrap;padding-top:10px;padding-bottom:10px;gap:10px}:where(.nova-shell) .page-toolbar-controls{flex-basis:100%;justify-content:flex-start;order:2;margin-left:0}:where(.nova-shell) .progress-toolbar-controls{flex-wrap:wrap;gap:8px}:where(.nova-shell) .progress-toolbar-controls .MuiTextField-root{min-width:130px!important}:where(.nova-shell) .progress-toolbar-controls .MuiToggleButton-root{font-size:13px;padding:5px 7px}:where(.nova-shell) .calendar-period h2{font-size:17px}}@media (max-width:600px){:where(.nova-shell) .nova-dashboard{padding-top:14px}:where(.nova-shell) .progress-toolbar-controls>.MuiToggleButtonGroup-root:last-child{margin-left:auto}:where(.nova-shell) .progress-toolbar-controls{width:100%}:where(.nova-shell) .calendar-period{flex:initial;gap:0;min-width:0}:where(.nova-shell) .calendar-period h2{font-size:14px;margin-left:3px;white-space:nowrap}:where(.nova-shell) .calendar-period .MuiIconButton-root{padding:3px}}:where(.nova-shell) .page-toolbar-controls .MuiToggleButton-root{text-transform:none}:where(.nova-shell) .calendar-toolbar-controls{display:flex;align-items:center;gap:16px;width:100%}:where(.nova-shell) .page-toolbar-controls:has(.calendar-toolbar-controls){flex:1 1;margin-left:4px}:where(.nova-shell) .calendar-toolbar-controls>.MuiButton-root{margin-left:auto;white-space:nowrap;font-size:14px;text-transform:none}:where(.nova-shell) .calendar-toolbar-controls .calendar-period h2{font-size:18px;white-space:nowrap}.nova-shell .calendar-fit{padding-top:10px}@media (max-width:850px){:where(.nova-shell) .page-toolbar-controls:has(.calendar-toolbar-controls){flex-basis:100%;margin-left:0}:where(.nova-shell) .calendar-toolbar-controls{gap:8px}:where(.nova-shell) .calendar-toolbar-controls .calendar-period h2{font-size:16px;margin-left:3px}:where(.nova-shell) .paper-inline-filters{grid-template-columns:1fr 1fr}}@media (max-width:600px){:where(.nova-shell) .calendar-toolbar-controls .calendar-period h2{font-size:14px}:where(.nova-shell) .calendar-toolbar-controls .calendar-period .MuiIconButton-root{padding:3px}:where(.nova-shell) .calendar-toolbar-controls>.MuiButton-root{font-size:13px;padding:5px 7px;min-width:0}:where(.nova-shell) .calendar-toolbar-controls>.MuiButton-root .MuiButton-startIcon{margin-right:3px}}:where(.nova-shell) .page-toolbar-controls{width:100%;margin-left:0}:where(.nova-shell) .hierarchy-overall{width:calc((100% - 24px) / 2)}@media (max-width:700px){:where(.nova-shell) .hierarchy-overall{width:100%}}.nova-shell .course-page{padding-top:28px}.nova-shell .MuiTypography-caption,.nova-shell .MuiTypography-overline{font-size:13px;line-height:1.55}.nova-shell .MuiTypography-body2{font-size:15px}.nova-shell .MuiChip-label{font-size:13px}.nova-shell .MuiDataGrid-columnHeaderTitle,.nova-shell .paper-inline-filters .MuiInputBase-root,.nova-shell .progress-toolbar-controls .MuiInputBase-root,.nova-shell .tracker-body .MuiInputBase-root{font-size:14px}.nova-shell .calendar-fit .event-title{font-size:12px;line-height:1.3}.nova-shell .calendar-fit .event-kind,.nova-shell .calendar-fit .event-time{font-size:11px}.nova-shell .quiet-page .secondary{font-size:15px}.nova-shell .assessment-row p,.nova-shell .course-facts,.nova-shell .course-facts>div,.nova-shell .exam-date>p,.nova-shell .plain-strands>div{font-size:14px}.nova-shell .exam-date>span,.nova-shell .nova-dashboard .MuiTypography-caption{font-size:13px}.nova-shell .course-facts{max-width:640px}.nova-shell .course-facts>div{display:grid;grid-template-columns:180px minmax(0,1fr);justify-content:normal;gap:24px;padding:12px 0}.nova-shell .course-facts dd{text-align:left}.nova-shell .course-facts dd,.nova-shell .course-facts dt{line-height:1.6}@media (max-width:600px){.nova-shell .course-facts>div{grid-template-columns:140px minmax(0,1fr);gap:16px}}:where(.nova-shell) .nova-week-event{height:88px;min-height:88px;overflow:hidden}:where(.nova-shell) .nova-week-event>strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.4}:where(.nova-shell) .nova-week-event{height:64px;min-height:64px;padding:6px 8px}:where(.nova-shell) .nova-week-event>strong{font-size:13px;line-height:1.3;margin-top:4px}.session-split-layout{display:grid;grid-template-columns:280px minmax(0,1fr);height:100%;min-height:0}.session-details{padding:24px;overflow:auto}.session-details,.session-preview-pane{display:flex;flex-direction:column;min-height:0}.session-preview-pane{min-width:0}.session-preview-toolbar{display:flex;align-items:center;gap:10px;padding:0 16px;flex-shrink:0}.session-modal-content{flex:1 1;min-height:0;overflow:auto;overscroll-behavior:contain}.session-modal-content .MD-Item-1>.MuiTypography-h3{font-size:28px}.session-preview-toolbar .MuiTab-root{text-transform:none;font-size:14px;min-width:80px}@media (max-width:700px){.session-split-modal.MuiPaper-root{width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);margin:8px}.session-split-layout{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.session-details{padding:16px;max-height:210px;border-right:0;border-bottom:1px solid var(--nova-divider);display:block}.session-details h2{font-size:18px;margin-bottom:8px}.session-details .session-content-path{font-size:13px}.session-preview-toolbar{gap:4px;padding:0 8px}.session-preview-toolbar .MuiTab-root{min-width:64px;font-size:13px;padding:8px}.session-modal-content .MD-Item-1>.MuiTypography-h3{font-size:24px}}.session-reading-column{width:100%;max-width:848px;margin:0 auto;padding:24px;box-sizing:border-box}.session-reading-column .MD-Item-1{width:100%;margin-left:0;margin-right:0}.session-preview-toolbar .MuiTabs-root{margin-right:auto}.session-preview-toolbar>.MuiIconButton-root{flex-shrink:0}@media (max-width:700px){.session-reading-column{padding:16px}}.nova-shell .calendar-fit .calendar-day-head{height:56px}.nova-shell .calendar-fit .day-heading{padding:5px 3px 7px;gap:3px}.nova-shell .calendar-fit .day-heading strong{flex-shrink:0}.session-details:has(.session-sidebar-tabs){padding-top:0}.session-sidebar-tabs{margin:0 -24px 24px!important;flex-shrink:0}.session-sidebar-tabs,.session-sidebar-tabs .MuiTab-root,.session-sidebar-tabs .MuiTabs-flexContainer,.session-sidebar-tabs .MuiTabs-root,.session-sidebar-tabs .MuiTabs-scroller{height:56px;min-height:56px}.session-sidebar-tabs .MuiTab-root{text-transform:none;font-size:14px}.session-preview-toolbar{height:56px;min-height:56px}@media (max-width:700px){.session-sidebar-tabs{margin-left:-16px!important;margin-right:-16px!important}}:where(.nova-shell) .nova-subject-statuses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;padding-top:16px}:where(.nova-shell) .nova-subject-statuses button{width:100%;min-width:0;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:14px;border-radius:4px}:where(.nova-shell) .nova-subject-statuses button:hover{background:var(--nova-hover)}:where(.nova-shell) .nova-subject-statuses button>.status-course{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--nova-text);margin:0;white-space:nowrap}:where(.nova-shell) .nova-subject-statuses .status-course i{margin:0;width:6px;height:6px}:where(.nova-shell) .nova-subject-statuses button>span:not(.status-course){font-size:12px;line-height:20px;white-space:nowrap;flex-shrink:0;padding:2px 8px;border-radius:4px;background:#0288d110;color:#027db8;margin:0}:where(.nova-shell) .nova-subject-statuses button>span.status-behind{background:#b16a0610;color:#a46208}@media (max-width:1100px){:where(.nova-shell) .nova-subject-statuses{grid-template-columns:1fr}}@media (max-width:850px){.nova-shell .quiet-topbar{flex-wrap:nowrap;gap:12px;min-height:56px;padding-top:0;padding-bottom:0;overflow:hidden}.nova-shell .quiet-topbar>.MuiIconButton-root{flex-shrink:0}.nova-shell .quiet-topbar .page-toolbar-controls{flex:1 1;flex-basis:0;min-width:0;width:auto;order:0;margin-left:0;overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:6px 0}.nova-shell .quiet-topbar .page-toolbar-controls::-webkit-scrollbar{display:none}.nova-shell .quiet-topbar .page-toolbar-controls>*{flex-shrink:0}.nova-shell .quiet-topbar .dashboard-subject-filter{flex-wrap:nowrap}.nova-shell .quiet-topbar .progress-toolbar-controls{flex-wrap:nowrap;width:max-content}.nova-shell .quiet-topbar .page-toolbar-controls:has(.calendar-toolbar-controls){flex-basis:0}.nova-shell .quiet-topbar .calendar-toolbar-controls{width:max-content;min-width:100%}}:where(.nova-shell) .nova-subject-statuses{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 16px}:where(.nova-shell) .nova-subject-statuses button{gap:8px}:where(.nova-shell) .nova-subject-statuses button>.status-course{font-size:13px;gap:6px}:where(.nova-shell) .nova-subject-statuses button>span:not(.status-course){font-size:11px;padding:2px 6px}@media (max-width:1350px){:where(.nova-shell) .nova-subject-statuses{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1100px){:where(.nova-shell) .nova-subject-statuses{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){:where(.nova-shell) .nova-subject-statuses{grid-template-columns:1fr}}:where(.nova-shell) .nova-score-subjects{flex-wrap:wrap;row-gap:6px}:where(.nova-shell) .sidebar-footer{display:flex;align-items:center;border-top:1px solid var(--nova-divider);gap:4px;padding:12px 0}:where(.nova-shell) .sidebar-collapse-button{flex-shrink:0}.nova-shell .sidebar-collapsed{width:64px;padding:0 8px;position:relative;box-shadow:none}.nova-shell .sidebar-collapsed .brand-row{padding:0;justify-content:center}.nova-shell .sidebar-collapsed .global-nav>button{padding:12px;justify-content:center;min-height:44px}:where(.nova-shell) .sidebar-collapsed .search-row>kbd{display:none}.nova-shell .sidebar-collapsed .search-row{padding:11px;justify-content:center}:where(.nova-shell) .sidebar-collapsed .sidebar-footer{flex-direction:column;gap:8px}.nova-shell .sidebar-collapsed .sidebar-footer{padding-bottom:16px}.nova-shell .quiet-sidebar{padding-left:8px;padding-right:8px}.nova-shell .sidebar-footer{flex-direction:column;align-items:flex-start;gap:8px;padding:12px 0 16px}.nova-shell .sidebar-footer .sidebar-collapse-button{width:40px;height:40px;margin-left:3px}.nova-shell .sidebar-collapsed .sidebar-footer{align-items:flex-start;gap:8px}:where(.nova-shell) .sidebar-footer-bottom{display:flex;align-items:center;gap:8px;width:100%}:where(.nova-shell) .footer-quick-actions{display:flex;align-items:center;gap:2px;margin-left:auto}:where(.nova-shell) .footer-quick-actions .MuiIconButton-root{width:30px;height:30px}.nova-shell .sidebar-footer .MuiIconButton-root{color:var(--nova-text)}.nova-shell .sidebar-collapsed .sidebar-footer,.nova-shell .sidebar-footer{height:49px;min-height:49px;padding:4px 0;gap:0;flex-shrink:0}:where(.nova-shell) .sidebar-footer-bottom{height:40px}.nova-shell .quiet-page:has(.library-books){max-width:none;width:100%;padding:24px}.nova-shell .library-books{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 24px}.nova-shell .library-books>article{margin:0;min-width:0}.nova-shell .library-books .book-stage{height:clamp(64px,calc((100dvh - 280px) / 4 - 72px),140px);margin-bottom:0}.nova-shell .library-books .book-stage img{height:calc(100% - 16px);width:auto;max-width:85%}.nova-shell .library-books .book-level{font-size:11px;margin:8px 0 3px;line-height:16px}.nova-shell .library-books .book-open h2{font-size:16px;line-height:21px;height:42px;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.nova-shell .library-books .book-progress{margin-top:4px;height:2px}.nova-shell .library-books .book-meta{margin-top:6px;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;font-size:11px;gap:6px}.nova-shell .library-books .book-meta button{font-size:11px;white-space:nowrap}@media (max-width:1050px){.nova-shell .library-books{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.nova-shell .library-books .book-stage{height:110px}}@media (max-width:600px){.nova-shell .quiet-page:has(.library-books){padding:16px}.nova-shell .library-books{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.nova-shell .library-books .book-stage{height:120px}.nova-shell .library-books .book-meta{flex-wrap:wrap}.nova-shell .library-books .book-open h2{font-size:15px}}.nova-shell .library-books{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:28px 24px}.nova-shell .library-books>article{max-width:200px;width:100%;justify-self:center}.nova-shell .library-books .book-stage{height:auto;aspect-ratio:5/7;background:transparent;border:0;border-radius:0;display:flex;align-items:stretch;justify-content:center}.nova-shell .library-books .book-stage img{width:100%;height:100%;max-width:100%;object-fit:contain;box-shadow:0 4px 10px #00000012}.nova-shell .library-books .book-level{margin-top:12px;font-size:12px}.nova-shell .library-books .book-open h2{font-size:15px;line-height:20px;height:40px}.nova-shell .library-books .book-meta{font-size:12px;flex-wrap:wrap;row-gap:4px}.nova-shell .library-books .book-meta button{font-size:12px}.nova-shell .library-books .book-progress{margin-top:6px}@media (max-width:600px){.nova-shell .library-books{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.nova-shell .library-books .book-stage{height:auto}}.nova-shell .calendar-fit{padding:0}.nova-shell .calendar-fit .calendar-surface{border-left:0;border-right:0;border-bottom:0}:where(.nova-shell).quiet-dark .calendar-event,:where(.nova-shell).quiet-dark .nova-week-event{background:color-mix(in srgb,var(--event-color) 32%,var(--nova-paper) 68%)!important;color:#eef2f6!important}:where(.nova-shell).quiet-dark .calendar-event:hover,:where(.nova-shell).quiet-dark .nova-week-event:hover{background:color-mix(in srgb,var(--event-color) 42%,var(--nova-paper) 58%)!important}:where(.nova-shell).quiet-dark .nova-week-event>span{color:#d2d8df}:where(.nova-shell).quiet-dark .calendar-event .event-time{color:#dbe1e7}:where(.nova-shell).quiet-dark .nova-week-event{border-top-color:#ffffff20;border-right-color:#ffffff20;border-bottom-color:#ffffff20}:where(.nova-shell) .nova-week-day.current-day{background:color-mix(in srgb,var(--nova-accent) 9%,var(--nova-paper) 91%);border:1px solid color-mix(in srgb,var(--nova-accent) 35%,var(--nova-divider) 65%);border-top:3px solid var(--nova-accent);border-radius:5px;padding:8px;margin:-8px -3px -4px}:where(.nova-shell) .current-day .nova-week-date{font-weight:600;padding-bottom:12px}:where(.nova-shell) .current-day .nova-week-date strong{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--nova-accent);color:var(--nova-paper)}:where(.nova-shell) .current-day .today-tag{background:var(--nova-accent);color:var(--nova-paper);font-size:11px;font-weight:600;padding:3px 5px;border-radius:3px}:where(.nova-shell).quiet-dark .nova-week-day.current-day{background:color-mix(in srgb,var(--nova-accent) 12%,var(--nova-paper) 88%)}:where(.nova-shell) .nova-week-day.current-day,:where(.nova-shell).quiet-dark .nova-week-day.current-day{background:transparent;border:0;border-radius:0;padding:0;margin:0}:where(.nova-shell).quiet-light .calendar-event{color:color-mix(in srgb,var(--event-color) 68%,#111827 32%)!important}:where(.nova-shell).quiet-light .calendar-event .event-kind,:where(.nova-shell).quiet-light .calendar-event .event-time{color:inherit;opacity:1}:where(.nova-shell) .main-content.full-panel-main:has(.textbook){padding:0;display:flex;flex-direction:column;overflow:hidden}:where(.nova-shell) .quiet-topbar:has(.page-toolbar-controls .MuiAutocomplete-root) .page-toolbar-controls{width:100%;justify-content:flex-start}:where(.nova-shell) .textbook-progress-meter{padding-right:8px}.nova-shell .quiet-topbar .page-toolbar-controls:has(.textbook-toolbar){overflow:visible;padding:0}.nova-shell .quiet-topbar .page-toolbar-controls>.textbook-toolbar{flex:1 1;min-width:0}.nova-shell .quiet-sidebar .global-nav>button,.nova-shell .quiet-sidebar .global-nav>button.is-active{font-weight:700;color:var(--nova-text)}.nova-shell.quiet-light .quiet-sidebar .global-nav>button,.nova-shell.quiet-light .quiet-sidebar .global-nav>button svg,.nova-shell.quiet-light .quiet-sidebar .global-nav>button.is-active,.nova-shell.quiet-light .quiet-sidebar .global-nav>button.is-active svg,.nova-shell.quiet-light .sidebar-footer .MuiIconButton-root{color:#202020}.nova-shell .quiet-sidebar .global-nav>button,.nova-shell .quiet-sidebar .global-nav>button.is-active{font-size:14px;font-weight:500;min-height:36px;padding:8px 16px;gap:8px}.nova-shell .quiet-sidebar .global-nav>button svg{width:20px;height:20px}.nova-shell .quiet-topbar:has(.textbook-toolbar){padding-left:8px;padding-right:8px;min-height:48px;height:48px;color:var(--nova-text)}.nova-shell.illustrated-textbook{background-image:var(--textbook-wallpaper);background-size:cover;background-position:50%;background-attachment:fixed}.nova-shell.illustrated-textbook .main-content,.nova-shell.illustrated-textbook .textbook,.nova-shell.illustrated-textbook .textbook-scroll,.nova-shell.illustrated-textbook .workspace{background:transparent}.nova-shell.illustrated-textbook .quiet-sidebar,.nova-shell.illustrated-textbook .quiet-topbar,.nova-shell.illustrated-textbook .textbook-navigation{background:color-mix(in srgb,var(--nova-chrome) 82%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.nova-shell.illustrated-textbook .textbook-pages{background:var(--nova-paper);border-radius:16px}.nova-shell.illustrated-textbook .textbook-section:has(.worksheet){padding-bottom:24px}.nova-shell.illustrated-textbook .quiet-sidebar,.nova-shell.illustrated-textbook .quiet-topbar,.nova-shell.illustrated-textbook .textbook-navigation{background:color-mix(in srgb,var(--nova-chrome) 62%,transparent);backdrop-filter:blur(7px) saturate(.8);-webkit-backdrop-filter:blur(7px) saturate(.8)}.nova-shell.illustrated-textbook .textbook-navigation-controls{background:transparent}.nova-shell.illustrated-textbook .search-row,.nova-shell.illustrated-textbook .textbook-toolbar .MuiOutlinedInput-root{background:color-mix(in srgb,var(--nova-paper) 60%,transparent)}.nova-shell.illustrated-textbook .global-nav>button.is-active,.nova-shell.illustrated-textbook .textbook-content-row.active{background:color-mix(in srgb,var(--nova-selected) 72%,transparent)}.nova-shell .quiet-sidebar .search-row{margin-top:4px}.nova-shell .page-toolbar-controls:has(.calendar-toolbar-controls){margin-left:0}.nova-shell .brand-row{padding:0 8px}:where(.nova-shell) .brand-switcher{display:flex;align-items:center;gap:10px;width:100%;min-width:0;border:0;border-radius:6px;padding:6px;background:transparent;color:var(--nova-text);cursor:pointer;text-align:left}:where(.nova-shell) .brand-switcher:hover{background:var(--nova-hover)}:where(.nova-shell) .brand-switcher>span{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:600}:where(.nova-shell) .brand-switcher>.MuiSvgIcon-root{flex-shrink:0;font-size:18px;opacity:.65}.nova-shell .organisation-mark img{filter:none}.nova-shell .sidebar-collapsed .brand-switcher{padding:6px;width:40px;justify-content:center}:where(.nova-shell) .brand-switcher>span{font-size:14px;font-weight:500}.nova-shell .quiet-sidebar.sidebar-collapsed{width:76px;padding:0 6px}.nova-shell .quiet-sidebar.sidebar-collapsed .global-nav>button,.nova-shell .quiet-sidebar.sidebar-collapsed .search-row{flex-direction:column;justify-content:center;gap:4px;min-height:58px;padding:8px 2px}.nova-shell .quiet-sidebar.sidebar-collapsed .search-row{border-color:transparent;background:none}.nova-shell .quiet-sidebar.sidebar-collapsed .global-nav>button>span,.nova-shell .quiet-sidebar.sidebar-collapsed .search-row>span{font-size:10.5px;font-weight:500;line-height:1.2;text-align:center}.nova-shell .quiet-sidebar.sidebar-collapsed .brand-switcher{width:auto;padding:4px}.nova-shell .quiet-sidebar .organisation-mark,.nova-shell .quiet-sidebar .organisation-mark img{width:40px;height:40px}.nova-shell .quiet-sidebar.sidebar-collapsed .organisation-mark,.nova-shell .quiet-sidebar.sidebar-collapsed .organisation-mark img{width:48px;height:48px}.nova-shell .quiet-sidebar .brand-switcher>span{font-size:18px}.nova-shell .quiet-sidebar.sidebar-collapsed .sidebar-footer-bottom{justify-content:center}.nova-shell .quiet-sidebar.sidebar-collapsed .sidebar-collapse-button{margin-left:0}.nova-shell.quiet-dark .quiet-sidebar .organisation-mark{padding:4px;border-radius:10px;background:#fff}.nova-shell.quiet-dark .quiet-sidebar .organisation-mark img{width:100%;height:100%}.nova-shell .global-nav .nested-courses{display:flex;flex-direction:column;gap:1px;margin:0 0 6px 21px;padding:0 0 0 10px;border-left:1px solid var(--nova-divider);list-style:none}.nova-shell .global-nav .nested-courses li{position:relative}.nova-shell .global-nav .nested-courses .course-open{display:flex;align-items:center;gap:8px;width:100%;height:32px;padding:0 10px;border:0;border-radius:6px;background:none;color:var(--nova-muted);font:inherit;font-size:13px;text-align:left;cursor:pointer}.nova-shell .global-nav .nested-courses .course-open:hover{background:var(--nova-hover)}.nova-shell .global-nav .nested-courses .course-open[aria-current]{background:var(--nova-selected);color:var(--nova-text);font-weight:600}.nova-shell .global-nav .nested-courses .course-cover{display:block;flex-shrink:0;width:20px;height:28px;overflow:hidden;border-radius:3px;box-shadow:0 0 0 1px rgb(0 0 0/.14)}.nova-shell .global-nav .nested-courses .course-cover img{display:block;width:100%;height:100%;object-fit:cover}.nova-shell .global-nav .nested-courses span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nova-shell .global-nav .nested-courses .course-more{position:absolute;top:4px;right:4px;width:24px;height:24px;padding:0;border-radius:6px;color:var(--nova-muted);font-size:18px;opacity:0}.nova-shell .global-nav .nested-courses .course-more[aria-expanded=true],.nova-shell .global-nav .nested-courses li:focus-within .course-more,.nova-shell .global-nav .nested-courses li:hover .course-more{opacity:1}.nova-shell .global-nav .nested-courses .course-more:hover{background:var(--nova-selected);color:var(--nova-text)}@media (hover:none){.nova-shell .global-nav .nested-courses .course-more{opacity:1}}.nova-shell .global-nav .nested-courses .course-open:has(+.course-more)>span:not(.course-cover){padding-right:18px}.nova-shell .global-nav .nested-courses .course-rename{box-sizing:border-box;width:100%;height:32px;padding:0 10px;border:1px solid var(--nova-accent);border-radius:6px;background:var(--nova-paper);color:var(--nova-text);font:inherit;font-size:13px;outline:none}.nova-shell.project-container{width:100%;height:100dvh;background-color:var(--nova-content);color:var(--nova-text)}.nova-shell .main-content,.nova-shell .workspace{background-color:var(--nova-content);min-height:0}.nova-shell .main-content{flex:1 1;overflow:auto}.nova-shell.illustrated-textbook .content-area>[data-panel-group-direction]{background-color:transparent}.nova-shell .full-panel-main{padding:0}.nova-shell .full-panel-main,.nova-shell .sidebar{display:flex;flex-direction:column;overflow:hidden}.nova-shell .sidebar{flex-shrink:0;height:100%}.nova-shell .global-nav{flex-shrink:0}.nova-shell .sidebar-space{flex:1 1;min-height:16px}.nova-shell .quiet-sidebar .organisation-mark{display:flex;align-items:center;justify-content:center;overflow:hidden}.nova-shell .organisation-mark img{object-fit:contain}.nova-shell .brand-switcher{max-width:100%}.nova-shell .brand-switcher>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nova-shell .quiet-topbar{flex-shrink:0}.nova-shell .quiet-topbar[data-scope=page]:not([data-mobile]):not(:has([data-panel-toolbar])){display:none}.nova-shell .topbar-label{flex-shrink:0;max-width:40%;overflow:hidden;font-size:16px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.nova-shell .quiet-topbar:has(.calendar-toolbar-controls){padding-left:8px}.nova-shell .page-toolbar-controls>div:last-child{scrollbar-width:none}.nova-shell .nova-dashboard .nova-week-event>span{overflow:hidden;text-overflow:ellipsis;gap:4px}.nova-shell .nova-week-event>span>span{flex-shrink:0;margin-left:auto}.nova-shell .nova-prediction{border-color:var(--nova-divider)}.nova-shell .status-course{min-width:0}.nova-shell .status-course i{flex-shrink:0}.nova-shell .dashboard-book-cover,.nova-shell .dashboard-book-cover img{width:40px;height:56px;object-fit:contain;flex-shrink:0}.nova-shell .dashboard-book-cover{margin-right:2px}.nova-shell .nova-textbook-row>.dashboard-book-cover{flex:none}.nova-shell .book-cover-fallback{width:100%;height:100%;aspect-ratio:5/7;color:white;padding:16px;display:flex;flex-direction:column;justify-content:space-between;text-align:left}.nova-shell .book-cover-fallback span{font-size:18px;line-height:1.25}.nova-shell .dashboard-book-cover .book-cover-fallback{padding:5px}.nova-shell .dashboard-book-cover .book-cover-fallback span{font-size:7px}.nova-shell .dashboard-book-cover .book-cover-fallback svg{width:16px}.nova-shell .library-books>article{position:relative}.nova-shell .library-books .book-menu{position:absolute;right:-8px;top:-8px;z-index:1;background:var(--nova-paper)}.nova-shell .workspace-welcome{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.nova-shell .workspace-empty{padding:32px;display:flex;flex-direction:column;gap:12px;align-items:center;text-align:center}.nova-shell .workspace-chart-empty{display:grid;place-items:center;text-align:center;padding:16px}.nova-shell .workspace-progress-summary{margin-bottom:20px}.nova-shell .workspace-progress-segments{display:flex;height:8px;border-radius:4px;overflow:hidden;background:var(--nova-hover)}.nova-shell .workspace-progress-legend{display:flex;gap:6px 12px;flex-wrap:wrap;margin-top:9px;color:var(--nova-muted);font-size:11px}.nova-shell .workspace-progress-legend>span{display:inline-flex;align-items:center;gap:4px}.nova-shell .workspace-progress-legend i{width:6px;height:6px;border-radius:50%}.nova-shell .hierarchy-textbook-folders{margin-bottom:32px}.nova-shell .calendar-fit .calendar-surface{border:0;border-radius:0;background:var(--nova-paper)}.nova-shell .calendar-fit .calendar-day-head{overflow:hidden}.nova-shell .calendar-heading-viewport{min-width:0;overflow:hidden;flex-shrink:0}.nova-shell .calendar-fit .calendar-day-column{touch-action:pan-x pan-y}.nova-shell .calendar-fit .calendar-event{touch-action:none}.nova-shell .calendar-fit .calendar-task-panel{padding:20px 16px;border-left:1px solid var(--nova-divider);background:var(--nova-paper)}.nova-shell .calendar-event:focus-visible,.nova-shell button:focus-visible{outline:2px solid var(--nova-accent);outline-offset:2px}.nova-shell .calendar-event .resize-handle:focus-visible{outline:2px solid var(--nova-accent)}.nova-shell .task-card>strong{display:block;font-size:13px}.nova-shell .paper-pdf-frame{flex:1 1;width:100%;height:100%;border:0}.catalogue-book{display:flex;align-items:center;gap:16px;padding:14px 0}.catalogue-book>div:nth-child(2){flex:1 1}.catalogue-cover,.catalogue-cover img{width:40px;height:56px;object-fit:contain}.catalogue-cover .book-cover-fallback{padding:5px}.catalogue-cover .book-cover-fallback span{font-size:8px}.session-form-two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.session-form-three{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:12px}.session-preview-pane .preview-panel{background:transparent}.session-split-modal .session-modal-content .preview-panel{min-height:100%}html[data-appearance=dark] .MuiButton-containedPrimary:not(.Mui-disabled){background:#ededed;color:#222}html[data-appearance=dark] .MuiButton-containedPrimary:not(.Mui-disabled):hover{background:#d8d8d8}@media (max-width:850px){.nova-shell .quiet-topbar{flex-wrap:nowrap;padding-top:0;padding-bottom:0;gap:8px}.nova-shell .page-toolbar-controls{flex-basis:auto;margin-left:0}.nova-shell .progress-toolbar-controls{flex-wrap:nowrap}.nova-shell .main-content{-webkit-overflow-scrolling:touch}.nova-shell .calendar-fit .calendar-task-panel{width:200px}}@media (max-width:600px){.session-form-three{grid-template-columns:1fr}.nova-shell .nova-textbook-row>.MuiButton-root{min-width:0;font-size:12px}.nova-shell .nova-textbook-row>.MuiButton-root .MuiButton-endIcon{display:none}.nova-shell .calendar-toolbar-controls{gap:4px}.nova-shell .calendar-toolbar-controls .calendar-period h2{font-size:13px;margin-left:2px}.nova-shell .calendar-toolbar-controls>.MuiButton-root{min-width:0;font-size:12px;padding:5px 7px}.nova-shell .calendar-period .MuiIconButton-root{padding:3px}.nova-shell .calendar-toolbar-controls>.MuiButton-root .MuiButton-startIcon{margin-right:3px}}.nova-shell .brand-static,.nova-shell .brand-static:hover{cursor:default;background:transparent}.nova-shell .nova-subject-statuses .status-unavailable{color:var(--nova-muted);background:var(--nova-hover)}.nova-shell .nova-subject-statuses{grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr))}.nova-shell .nova-subject-statuses .status-course>span{min-width:0;white-space:normal;overflow-wrap:anywhere}@media (max-width:760px){.nova-shell .calendar-fit .with-tasks .guest-calendar-tasks{display:none}}:where(.nova-shell) .course-home{max-width:1240px}:where(.nova-shell) .course-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin:0 0 36px}:where(.nova-shell) .course-stats>div{display:flex;flex-direction:column-reverse;gap:2px;padding:14px 16px;border:1px solid var(--q-line);border-radius:10px}:where(.nova-shell) .course-stats dd{margin:0;font-size:22px;font-weight:500}:where(.nova-shell) .course-stats dt{color:var(--q-muted);font-size:13px}:where(.nova-shell) .course-section{min-width:0}:where(.nova-shell) .course-about-text{margin:12px 0 20px!important;max-width:620px}:where(.nova-shell) .course-group-row{margin:0 0 12px!important;color:var(--q-muted);font-size:13px!important}@media (max-width:600px){:where(.nova-shell) .course-home{padding:24px 16px 56px}:where(.nova-shell) .course-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:24px}:where(.nova-shell) .course-stats>div{padding:8px 10px}:where(.nova-shell) .course-stats dd{font-size:17px}:where(.nova-shell) .course-stats dt{font-size:11px}}:where(.nova-shell) .course-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:26px}:where(.nova-shell) .course-page-heading h1{font-size:28px}:where(.nova-shell) .course-page-heading .secondary{margin-top:6px}:where(.nova-shell) .course-textbook{display:flex;flex-direction:column;gap:14px}:where(.nova-shell) .course-textbook .course-group-row{margin:12px 0 16px!important;color:var(--q-ink);font-size:32px!important;font-weight:600}:where(.nova-shell) .course-unit{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:16px;align-items:start;padding:16px 18px;border:1px solid var(--q-line);border-radius:12px;background:var(--q-book,transparent)}:where(.nova-shell) .course-unit-number{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--course-group-colour,var(--nova-accent,#888));color:#fff;font-size:17px;font-weight:600}:where(.nova-shell) .course-unit-body h3{margin:8px 0 10px!important;font-size:16px!important}:where(.nova-shell) .course-unit-body ol{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px;margin:0;padding:0;list-style:none}:where(.nova-shell) .course-unit-body li{display:flex;align-items:center;gap:8px;min-width:0;font-size:14px}:where(.nova-shell) .course-unit-index{flex-shrink:0;min-width:28px;color:var(--q-muted);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}:where(.nova-shell) .course-unit-lesson{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:8px 12px;border:1px solid transparent;border-radius:10px;background:var(--q-soft);color:var(--q-ink);font:inherit;font-size:14px;text-align:left;cursor:pointer}:where(.nova-shell) .course-unit-lesson:hover{border-color:var(--q-line);background:var(--q-hover,var(--q-soft))}:where(.nova-shell) .course-unit-lesson:focus-visible{outline:2px solid var(--nova-accent,currentColor)}:where(.nova-shell) .course-unit-title{flex:1 1;min-width:0;overflow-wrap:anywhere}:where(.nova-shell) .course-unit-done{flex-shrink:0;color:var(--nova-accent,#2e7d32);font-size:16px!important}:where(.nova-shell) .course-unit-progress{display:grid;place-items:center;color:var(--course-group-colour,var(--nova-accent))}:where(.nova-shell) .course-unit-progress>span:last-child{grid-area:1/1;color:var(--q-muted);font-size:11px}:where(.nova-shell) .course-unit-progress .MuiCircularProgress-root{grid-area:1/1;color:inherit}:where(.nova-shell) .course-unit-progress .course-unit-track{color:var(--q-line)}@media (max-width:600px){:where(.nova-shell) .course-unit{grid-template-columns:34px minmax(0,1fr);padding:14px}:where(.nova-shell) .course-unit-number{width:34px;height:34px}:where(.nova-shell) .course-unit-progress{display:none}}:where(.nova-shell) .course-home-page{max-width:1040px;margin:0 auto}:where(.nova-shell) .course-hub{display:flex;flex-direction:column;gap:30px}:where(.nova-shell) .course-hub h2{margin:0 0 12px!important;font-size:20px!important;font-weight:600}:where(.nova-shell) .course-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}:where(.nova-shell) .course-hub-card{display:flex;align-items:center;gap:16px;min-width:0;padding:14px;border:1px solid var(--q-line);border-radius:16px;background:var(--q-book,transparent);color:var(--q-ink);font:inherit;text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}:where(.nova-shell) .course-hub-card:hover{border-color:color-mix(in srgb,var(--hub-colour) 40%,var(--q-line));box-shadow:0 14px 28px -20px color-mix(in srgb,var(--hub-colour) 70%,rgb(0 0 0/.6));transform:translateY(-2px)}:where(.nova-shell) .course-hub-card:active{transform:translateY(0)}:where(.nova-shell) .course-hub-card:focus-visible{outline:2px solid var(--nova-accent,currentColor)}:where(.nova-shell) .course-hub-tile{display:grid;flex-shrink:0;place-items:center;width:72px;height:72px;border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--hub-colour) 26%,var(--nova-paper)),color-mix(in srgb,var(--hub-colour) 9%,var(--nova-paper)));color:var(--hub-colour);transition:transform .25s cubic-bezier(.34,1.56,.64,1)}:where(.nova-shell) .course-hub-tile svg{font-size:30px}:where(.nova-shell) .course-hub-card:hover .course-hub-tile{transform:rotate(-4deg) scale(1.06)}:where(.nova-shell) .course-hub-card[data-soon] .course-hub-tile{filter:saturate(.35);opacity:.75}:where(.nova-shell) .course-hub-text{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}:where(.nova-shell) .course-hub-title{font-size:17px;font-weight:600}:where(.nova-shell) .course-hub-description{color:var(--q-muted);font-size:14px;line-height:1.4}:where(.nova-shell) .course-hub-meta{color:var(--q-muted);font-size:13px;opacity:.8}:where(.nova-shell) [data-course-section]{--hub-colour:var(--nova-accent,#888)}:where(.nova-shell) [data-course-section=about]{--hub-colour:#64748b}:where(.nova-shell) [data-course-section=textbook]{--hub-colour:#3b82f6}:where(.nova-shell) [data-course-section=videos]{--hub-colour:#ef4444}:where(.nova-shell) [data-course-section=interactives]{--hub-colour:#14b8a6}:where(.nova-shell) [data-course-section=flashcards]{--hub-colour:#8b5cf6}:where(.nova-shell) [data-course-section=question-bank]{--hub-colour:#f59e0b}:where(.nova-shell) [data-course-section=practice-papers]{--hub-colour:#22c55e}:where(.nova-shell) [data-course-section=past-papers]{--hub-colour:#6366f1}:where(.nova-shell) [data-course-section=glossary]{--hub-colour:#ec4899}:where(.nova-shell) .course-coming-soon{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:560px;margin:24px auto 0;text-align:center}:where(.nova-shell) .course-coming-soon h1{margin:4px 0 0!important;font-size:28px}:where(.nova-shell) .course-coming-soon ul{display:flex;flex-direction:column;gap:10px;margin:8px 0 0;padding:0;list-style:none;text-align:left}:where(.nova-shell) .course-coming-soon li{display:flex;align-items:flex-start;gap:10px;font-size:15px}:where(.nova-shell) .course-coming-soon li svg{flex-shrink:0;color:var(--hub-colour);font-size:20px}@media (max-width:760px){:where(.nova-shell) .course-hub-grid{grid-template-columns:minmax(0,1fr)}:where(.nova-shell) .course-hub-tile{width:56px;height:56px}}:where(.nova-shell) .course-hub-art{width:78%;height:78%;overflow:visible;--art-paper:var(--nova-paper,#fff);--art-line:color-mix(in srgb,var(--hub-colour) 78%,#0b1220);--art-pop:#fbbf24}:where(.nova-shell) .course-hub-art .art-main{fill:var(--hub-colour)}:where(.nova-shell) .course-hub-art .art-tint{fill:color-mix(in srgb,var(--hub-colour) 32%,var(--art-paper))}:where(.nova-shell) .course-hub-art .art-paper{fill:var(--art-paper)}:where(.nova-shell) .course-hub-art .art-line{stroke:var(--art-line);stroke-width:2;stroke-linejoin:round}:where(.nova-shell) .course-hub-art .art-thick{stroke-width:3}:where(.nova-shell) .course-hub-art .art-pop{fill:var(--art-pop)}:where(.nova-shell) .course-hub-art .art-stroke,:where(.nova-shell) .course-hub-art .art-track{fill:none;stroke:color-mix(in srgb,var(--hub-colour) 38%,var(--art-paper));stroke-width:3;stroke-linecap:round}:where(.nova-shell) .course-hub-art .art-track{stroke-width:4}:where(.nova-shell) .course-hub-art .art-check,:where(.nova-shell) .course-hub-art .art-curve,:where(.nova-shell) .course-hub-art .art-hand{stroke:var(--hub-colour);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}:where(.nova-shell) .course-hub-art .art-handle{stroke:var(--art-line);stroke-width:5;stroke-linecap:round}:where(.nova-shell) .course-hub-art text{fill:var(--art-paper);font-family:inherit;font-weight:800}:where(.nova-shell) .course-hub-art .art-glyph{font-size:24px}:where(.nova-shell) .course-hub-art .art-grade{font-size:14px}:where(.nova-shell) .course-hub-art .art-letters{font-size:17px}:where(.nova-shell) .course-hub-art .art-slide{transition:transform .4s ease}:where(.nova-shell) .course-hub-card:hover .course-hub-art .art-slide{transform:translateX(-12px)}:where(.nova-shell) .course-hub-art .art-twinkle{transform-origin:54px 11px;transition:transform .4s ease}:where(.nova-shell) .course-hub-card:hover .course-hub-art .art-twinkle{transform:rotate(45deg) scale(1.2)}:where(.nova-shell) .course-hero{--course-ink:color-mix(in srgb,var(--course-colour) 62%,var(--q-ink));position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;margin:0 0 32px;padding:24px 28px;overflow:hidden;border:1px solid color-mix(in srgb,var(--course-colour) 26%,var(--nova-divider));border-radius:20px;background:radial-gradient(110% 160% at 0 0,color-mix(in srgb,var(--course-colour) 26%,var(--nova-paper)) 0,transparent 62%),linear-gradient(120deg,color-mix(in srgb,var(--course-colour) 10%,var(--nova-paper)),color-mix(in srgb,var(--nova-accent) 7%,var(--nova-paper)))}:where(.nova-shell) .course-hero>:not(.course-hero-art){position:relative;z-index:1}:where(.nova-shell) .course-hero-art{position:absolute;top:0;right:0;width:400px;height:200px;pointer-events:none}:where(.nova-shell) .course-hero-art .art-a{fill:color-mix(in srgb,var(--course-colour) 14%,transparent)}:where(.nova-shell) .course-hero-art .art-b{fill:color-mix(in srgb,var(--nova-accent) 10%,transparent)}:where(.nova-shell) .course-hero-art .art-spark{fill:color-mix(in srgb,var(--course-colour) 50%,transparent)}:where(.nova-shell) .course-hero-cover .book-cover-fallback,:where(.nova-shell) .course-hero-cover img{display:block;width:96px;height:132px;object-fit:cover;border-radius:8px;box-shadow:0 14px 26px -12px rgb(0 0 0/.45);transform:rotate(-4deg);transition:transform .3s ease}:where(.nova-shell) .course-hero:hover .course-hero-cover img{transform:rotate(-1deg) translateY(-2px)}:where(.nova-shell) .course-hero-body{display:flex;flex-direction:column;align-items:flex-start;min-width:0}:where(.nova-shell) .course-hero-eyebrow{color:var(--course-ink);font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}:where(.nova-shell) .course-hero h1{margin:2px 0!important;color:var(--q-ink);font-size:32px!important;font-weight:700;letter-spacing:-.01em;line-height:1.15}:where(.nova-shell) .course-hero-meta{margin:0 0 14px;color:var(--q-muted);font-size:14px}:where(.nova-shell) .course-hero-next{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding:10px 12px 10px 16px;border:1px solid var(--q-line);border-radius:14px;background:color-mix(in srgb,var(--nova-paper) 92%,transparent);box-shadow:0 10px 24px -20px rgb(0 0 0/.5)}:where(.nova-shell) .course-hero-next>span:first-child{display:flex;flex-direction:column;min-width:0}:where(.nova-shell) .course-hero-next-label{color:var(--course-ink);font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}:where(.nova-shell) .course-hero-next strong{font-size:16px}:where(.nova-shell) .course-hero-next-count{color:var(--q-muted);font-size:13px}:where(.nova-shell) .course-hero-actions{display:flex;gap:8px}:where(.nova-shell) .course-hero-actions .MuiButton-root{border-radius:10px;font-weight:600;text-transform:none}:where(.nova-shell) .course-hero-ring{display:grid;place-items:center;width:112px;height:112px}:where(.nova-shell) .course-hero-ring svg{grid-area:1/1;width:100%;height:100%;transform:rotate(-90deg)}:where(.nova-shell) .course-hero-ring circle{fill:none;stroke-width:8}:where(.nova-shell) .course-hero-ring .ring-track{stroke:color-mix(in srgb,var(--course-colour) 18%,var(--nova-paper))}:where(.nova-shell) .course-hero-ring .ring-fill{stroke:var(--course-colour);stroke-linecap:round;animation:course-ring 1s ease .15s both}:where(.nova-shell) .course-hero-ring>span{display:flex;flex-direction:column;align-items:center;grid-area:1/1;line-height:1.1}:where(.nova-shell) .course-hero-ring strong{color:var(--q-ink);font-size:24px}:where(.nova-shell) .course-hero-ring small{color:var(--q-muted);font-size:12px}@keyframes course-ring{0%{stroke-dashoffset:213.6}}@media (max-width:900px){:where(.nova-shell) .course-hero{grid-template-columns:auto minmax(0,1fr)}:where(.nova-shell) .course-hero-ring{display:none}}@media (max-width:600px){:where(.nova-shell) .course-hero{grid-template-columns:minmax(0,1fr);padding:20px 16px}:where(.nova-shell) .course-hero-cover{display:none}:where(.nova-shell) .course-hero h1{font-size:26px!important}}@media (prefers-reduced-motion:reduce){:where(.nova-shell) .course-hero-ring .ring-fill,:where(.nova-shell) .course-hub-art *,:where(.nova-shell) .course-hub-card,:where(.nova-shell) .course-hub-tile{animation:none;transition:none}}