@font-face{font-family:JakartaSans;src:url(/assets/PlusJakartaSans-Regular-C2UfmnDu.ttf);font-weight:100}@font-face{font-family:JakartaSansBold;src:url(/assets/PlusJakartaSans-Bold-C5aszj9T.ttf);font-weight:100}:root{--ui: .18s ease}:root{--bg: #ffffff;--text: #222;--card: #ffffff;--border: #dddddd;--primary: var(--forge-accent, #7c3aed);--bg-alt: #f7f7f7;--secondary: #e8e8ed;--blue: #3b82f6;--green: #4bb45d;--border-light: #ddd;--fullblack: #222;--highlight: var(--forge-accent-highlight, #6d28d9);--text-secondary: #919191}:root.dark{--bg: #0f0f10;--text: #f5f5f5;--card: #181819;--border: #343437;--primary: var(--forge-accent, #7c3aed);--bg-alt: #202022;--secondary: #2b2b2e;--blue: #3b82f6;--green: #6fef84;--border-light: #343437;--fullblack: #222;--highlight: var(--forge-accent-highlight, #7c3aed);--text-secondary: #919191}.theme-switching *,.theme-switching *:before,.theme-switching *:after{transition:none!important}.theme-fade{position:fixed;inset:0;background:var(--bg);opacity:0;pointer-events:none;z-index:9999;transition:opacity .18s ease}.theme-fade.active{opacity:1}.highlight{color:var(--accent-text)}.bold{font-family:JakartaSansBold}h1,h2,h3{font-weight:100}p{color:var(--text-secondary)}input{box-sizing:border-box}input,textarea{background:var(--card);color:var(--text);border:1px solid var(--border);transition:background .2s,color .2s}*,*:before,*:after{box-sizing:border-box}.dark input,.dark textarea{background:var(--card);color:var(--text)}body{background:var(--bg);color:var(--text);transition:background .25s ease,color .25s ease;font-family:JakartaSans;font-weight:100}.academy-nav{height:62px;background:var(--card);border-bottom:1px solid var(--border);position:relative;z-index:1000}.nav-inner{position:relative;z-index:2;width:min(1180px,calc(100% - 40px));height:100%;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px}.nav-zone{display:flex;align-items:center;gap:22px;min-width:0}.nav-zone-right{justify-content:flex-end;font-family:JakartaSansBold;font-size:.78rem}.nav-zone-right>a,.nav-login,.account-button,.explore-button{color:var(--accent-text)}.explore-button,.account-button,.nav-login{display:inline-flex;align-items:center;gap:6px;background:none;border:0;padding:9px 0;font:100 .78rem JakartaSans;cursor:pointer}.workspace-switch,.nav-login{color:#d6d6da!important;font:100 .78rem/1 JakartaSans}.workspace-switch:hover,.nav-login:hover{color:#fff!important}:root:not(.dark) .workspace-switch,:root:not(.dark) .nav-login{background:transparent;color:var(--forge-neutral-900)!important}:root:not(.dark) .workspace-switch:hover,:root:not(.dark) .nav-login:hover{background:transparent;color:var(--primary)!important}.explore-button{padding:9px 11px;border-radius:5px;transition:background .16s ease,color .16s ease}.explore-button:hover,.explore-button.active{background:color-mix(in srgb,var(--primary) 10%,var(--card));color:var(--accent-text)}.explore-button.active svg{transform:rotate(180deg)}.explore-button svg{transition:transform .16s ease}.account-button:hover,.nav-login:hover{color:color-mix(in srgb,var(--primary) 75%,black)}.nav-brand{width:150px;height:44px;display:flex;align-items:center;justify-content:center;overflow:hidden}.nav-brand img{display:block;width:150px;height:150px;flex:0 0 150px;-o-object-fit:contain;object-fit:contain}.nav-brand-dark,.dark .nav-brand-light{display:none!important}.dark .nav-brand-dark{display:block!important}.nav-brand.teacher-brand{width:145px}.nav-brand.teacher-brand img{width:145px;height:145px;flex-basis:145px}.nav-search{width:min(290px,24vw);height:33px;display:flex;align-items:center;gap:9px;border:1px solid color-mix(in srgb,var(--text) 16%,transparent);border-radius:999px;padding:0 16px;color:var(--accent-text);position:relative}.nav-search:focus-within{outline:2px solid color-mix(in srgb,var(--primary) 28%,transparent);border-color:var(--primary)}.nav-search input{align-self:stretch;width:100%;min-height:0;border:0;outline:0;background:transparent;padding:0;font:100 .78rem/1 JakartaSans}.nav-search-results{position:absolute;top:calc(100% + 8px);left:0;width:min(360px,72vw);max-height:min(440px,calc(100vh - 90px));overflow:auto;padding:7px;border:1px solid var(--border);border-radius:7px;background:var(--card);box-shadow:0 12px 34px #1d1f2b29;z-index:1002}.nav-search-results a{display:flex;align-items:center;gap:10px;padding:10px;border-radius:5px;color:var(--text)}.nav-search-results a:hover{background:var(--bg-alt);color:var(--accent-text)}.nav-search-results a>svg{flex:0 0 auto;color:var(--accent-text)}.nav-search-results span{display:grid;gap:2px;min-width:0}.nav-search-results strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:100 .68rem JakartaSansBold}.nav-search-results small,.nav-search-results p{color:var(--text-secondary);font-size:.56rem}.nav-search-results p{margin:0;padding:11px}.explore-menu,.account-menu{position:absolute;top:52px;background:var(--card);border:1px solid var(--border);box-shadow:0 12px 34px #1d1f2b21;opacity:0;transform:translateY(8px);pointer-events:none;transition:.16s ease}.explore-menu.show,.account-menu.show{opacity:1;transform:translateY(0);pointer-events:auto}.explore-wrap{position:relative}.explore-menu{top:calc(100% + 18px);left:0;display:grid;grid-template-columns:minmax(184px,1fr) minmax(196px,1fr);width:420px;padding:9px;border-radius:10px}.explore-feature-column,.explore-subject-column{display:grid;align-content:start;gap:0;padding:6px}.explore-subject-column{border-left:1px solid var(--border)}.explore-feature-column>span,.explore-subject-column>span{display:block;padding:6px 9px 7px;color:var(--text-secondary);font-size:.58rem;text-transform:uppercase;letter-spacing:.1em}.explore-menu a,.account-menu a,.account-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:8px 9px;border-radius:6px;color:var(--text);background:none;border:0;text-align:left;font:100 .7rem JakartaSans;cursor:pointer}.explore-menu a:hover,.account-menu a:hover,.account-menu button:hover{background:color-mix(in srgb,var(--primary) 8%,var(--card));color:var(--accent-text)}.explore-backdrop{position:fixed;z-index:1;inset:62px 0 0;width:100vw;height:calc(100vh - 62px);border:0;background:#1a162675;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:default}.course-dot{width:26px;height:26px;flex:0 0 26px;padding:6px;border-radius:50%;background:var(--subject-color);color:#fff;stroke-width:2.2}.explore-subject-name{min-width:0}.explore-new-badge{display:inline-flex;align-items:center;min-height:18px;margin-left:5px;padding:1px 7px;border-radius:999px;background:#ff5c64;color:#fff;font:100 .52rem/1 JakartaSansBold;letter-spacing:0;text-transform:none}.account-wrap{position:relative}.account-menu{right:0;min-width:175px;padding:7px 0}@media(max-width:820px){.nav-inner{width:calc(100% - 28px);grid-template-columns:1fr auto 1fr;gap:10px}.nav-search{display:none}.nav-zone-right{gap:10px}.workspace-switch,.nav-login{display:inline-flex;align-items:center;min-height:34px;font-size:.7rem;white-space:nowrap}.nav-login{flex:0 0 auto}.nav-brand{width:125px}.nav-brand img{width:125px;height:125px;flex-basis:125px}.nav-zone{gap:10px}.explore-menu{width:min(430px,calc(100vw - 28px))}}@media(max-width:480px){.explore-button,.workspace-switch,.nav-login{font-size:.62rem}.explore-button svg{font-size:.8rem}.nav-brand{width:100px}.nav-brand img{width:100px;height:100px;flex-basis:100px}.account-button{max-width:88px;overflow:hidden;text-overflow:ellipsis}.explore-menu{grid-template-columns:1fr;width:calc(100vw - 28px)}.explore-subject-column{border-top:1px solid var(--border);border-left:0}}@media(max-width:420px){.nav-brand{width:92px}.nav-brand img{width:92px;height:92px;flex-basis:92px}}@media(max-width:360px){.nav-inner{grid-template-columns:1fr 86px 1fr;gap:6px}.nav-zone{gap:6px}.nav-brand,.nav-brand img{width:86px}.nav-brand img{height:86px;flex-basis:86px}.workspace-switch,.nav-login{font-size:.56rem}}.explore-menu-disabled{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border-radius:5px;color:var(--text-secondary);font:100 .72rem JakartaSans;opacity:.52;cursor:default}.explore-subject-column>.explore-menu-disabled{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border-radius:5px;color:var(--text-secondary);font:100 .72rem JakartaSans;letter-spacing:normal;text-transform:none;opacity:.52;cursor:default}.explore-backdrop{border-radius:0}.nav-search-results a:hover,.explore-menu a:hover,.account-menu a:hover,.account-menu button:hover{background:var(--surface-hover-subtle);color:inherit}.footer{width:100%;margin-top:76px;padding:54px 20px 25px;border-top:1px solid var(--border);background:var(--card)}.footer-content{width:min(1100px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(120px,1fr));gap:36px 56px}.footer-brand-column{display:grid;align-content:start;gap:13px;max-width:290px}.footer-brand{display:inline-flex;align-items:center;width:148px;height:38px}.footer-brand img{display:block;width:148px;height:148px;-o-object-fit:contain;object-fit:contain}.footer-brand-dark,.dark .footer-brand-light{display:none!important}.dark .footer-brand-dark{display:block!important}.footer-brand-column p,.footer-bottom p{margin:0;color:var(--text-secondary);font-size:.66rem;line-height:1.65}.footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-col h4{margin:0 0 4px;color:var(--text);font:100 .7rem JakartaSansBold}.footer-col a{color:var(--text-secondary);font-size:.66rem;line-height:1.4}.footer-col a:hover{color:var(--accent-text)}.footer-bottom{width:min(1100px,100%);margin:48px auto 0;padding-top:18px;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 28px}.footer-instagram-link{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;color:var(--text-secondary);font-size:1.15rem;line-height:1;transition:color .18s ease}.footer-instagram-link:hover,.footer-instagram-link:focus-visible{color:var(--accent-text)}.footer-instagram-link:focus-visible{outline:2px solid var(--accent-text);outline-offset:4px;border-radius:3px}@media(max-width:760px){.footer{margin-top:54px;padding-top:42px}.footer-content{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 26px}.footer-brand-column{grid-column:1 / -1}.footer-bottom{margin-top:36px;flex-direction:column}.footer-instagram-link{align-self:flex-end}}@media(max-width:430px){.footer-content{grid-template-columns:1fr}.footer-brand-column{grid-column:auto}}.dark-toggle{position:fixed;bottom:22px;right:22px;width:48px;height:48px;border-radius:50%;background:var(--card);color:var(--text);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer;box-shadow:0 4px 18px #0003;transition:background .25s ease,color .25s ease,transform .15s ease;z-index:3000}.dark-toggle:hover{transform:scale(1.07);background:var(--border)}.platform-shell{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:0 0 70px}.platform-shell h1,.platform-shell h2,.platform-shell h3,.practice-page h1{color:var(--text);font-family:JakartaSansBold;font-weight:100}.eyebrow,.workspace-kicker{display:block;color:var(--accent-text);font:100 .64rem JakartaSansBold;letter-spacing:.1em;text-transform:uppercase}.back-link,.text-link,.tile-action{display:inline-flex;align-items:center;gap:7px;color:var(--accent-text)!important;font:100 .72rem JakartaSansBold}.back-link{margin-bottom:24px}.platform-button,.outline-action,.blue-action,.row-start{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 16px;border-radius:4px;font:100 .7rem JakartaSansBold;cursor:pointer}.platform-button.primary,.blue-action,.row-start{color:#fff!important;background:linear-gradient(135deg,var(--forge-accent),var(--forge-accent-strong));border:1px solid transparent;box-shadow:0 8px 20px color-mix(in srgb,var(--forge-accent) 25%,transparent)}.platform-button.secondary,.outline-action{color:var(--forge-accent);background:var(--card);border:1px solid #9a9da4}.platform-button:disabled{opacity:.45;cursor:not-allowed}.academy-dashboard{min-height:650px}.profile-band{background:color-mix(in srgb,var(--primary) 4%,var(--bg-alt));border-bottom:1px solid var(--border)}.profile-band-inner{width:min(1120px,calc(100% - 40px));min-height:130px;margin:0 auto;display:flex;align-items:center;gap:17px}.profile-avatar{width:62px;height:62px;display:grid;place-items:center;border-radius:50%;background:var(--primary);color:#fff;font:100 1.65rem JakartaSansBold}.profile-copy{flex:1}.profile-copy h1{margin:0 0 4px;font:100 1.45rem JakartaSansBold}.profile-copy p{margin:0;font-size:.7rem}.account-status{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--border);color:var(--text-secondary);font-size:.62rem}.dashboard-layout{width:min(1120px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:210px 1fr;min-height:650px}.dashboard-sidebar{padding:28px 0;border-right:1px solid var(--border);display:flex;flex-direction:column;align-items:stretch}.dashboard-sidebar>span{padding:8px 18px;color:var(--text-secondary);font-size:.6rem}.dashboard-sidebar>a,.dashboard-sidebar>button{display:flex;align-items:center;gap:9px;min-height:43px;padding:0 18px;margin-right:0;border:0;background:none;color:var(--text);font:100 .75rem JakartaSans;text-align:left;cursor:pointer}.dashboard-sidebar>a.active,.dashboard-sidebar>a:hover,.dashboard-sidebar>button:hover{background:var(--bg-alt);color:var(--accent-text);border-right:3px solid var(--primary)}.sidebar-privacy{display:flex;gap:9px;margin:auto 18px 0;padding:14px 0 0;border-top:1px solid var(--border);color:var(--accent-text)}.sidebar-privacy p{margin:0;font-size:.58rem;line-height:1.5}.sidebar-privacy strong{display:block;color:var(--text);font-family:JakartaSansBold}.course-workspace{min-width:0;padding:28px 0 70px 32px}.workspace-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.workspace-heading h2{margin:5px 0 0;font:100 1.65rem JakartaSansBold}.homework-panel{margin-bottom:46px;padding-bottom:20px;border-bottom:1px solid var(--border)}.courses-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px 46px}.course-column{min-width:0}.course-section-heading{display:flex;align-items:flex-end;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid var(--border)}.course-section-heading h3{margin:4px 0 0;font:100 .88rem JakartaSansBold}.course-section-heading span{color:var(--text-secondary);font-size:.58rem;text-transform:uppercase;letter-spacing:.08em}.course-section-heading a,.course-section-heading small{color:var(--accent-text);font-size:.64rem}.learning-path{padding-top:15px}.learning-row{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:56px;padding:6px}.learning-row:not(:last-child):after{content:"";position:absolute;left:25px;top:46px;width:1px;height:23px;background:var(--border)}.path-node{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--subject-color,var(--primary)) 14%,var(--card));color:var(--subject-color,var(--primary));font:100 .66rem JakartaSansBold}.path-node.homework{background:#fff0cc;color:#9c6300}.learning-row>div{display:flex;flex-direction:column;gap:4px;min-width:0}.learning-row .learning-title{color:var(--accent-text);font:100 .73rem JakartaSansBold;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.learning-row .learning-title.locked{color:var(--text)}.learning-row small{color:var(--text-secondary);font-size:.59rem}.row-start{min-height:32px;padding:0 14px}.complete-label{display:flex;align-items:center;gap:5px;color:#177553;font-size:.62rem}.learning-row-actions{display:flex!important;flex-direction:row!important;align-items:center;gap:7px!important}.learning-row-actions .row-start{min-height:30px;padding:0 10px;font-size:.6rem}.learning-row-actions .row-start.secondary{border:1px solid var(--border);background:var(--card);color:var(--subject-color,var(--primary))!important}.maths-learning-row{grid-template-columns:40px minmax(0,1fr) auto}.practice-placeholder-card{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:26px;border:1px solid var(--border);background:var(--card)}.practice-placeholder-card strong{font:100 .86rem JakartaSansBold}.practice-placeholder-card p{margin:7px 0 0;color:var(--text-secondary);font-size:.65rem;line-height:1.55}.subject-hero,.topic-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:26px 0 32px;border-bottom:1px solid var(--border);margin-bottom:28px}.subject-hero:before,.topic-hero:before{content:"";width:10px;align-self:stretch;background:var(--subject-color);border-radius:5px}.subject-hero>div:first-child,.topic-hero>div:first-child{flex:1}.subject-hero h1,.topic-hero h1{margin:7px 0;font-size:clamp(2.3rem,5vw,3.4rem);letter-spacing:-.045em}.subject-hero p,.topic-hero p{max-width:650px;margin:0;font-size:.83rem}.topic-index{border-top:1px solid var(--border)}.topic-index-row{display:grid;grid-template-columns:46px minmax(0,1fr) auto 24px;align-items:center;gap:16px;padding:18px 8px;border-bottom:1px solid var(--border)}.topic-index-row:hover{background:var(--bg-alt)}.topic-number{color:var(--text-secondary);font-size:.65rem}.topic-index-row h2{margin:0 0 5px;font-size:.88rem}.topic-index-row p{margin:0;font-size:.62rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topic-meta{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:.62rem}.row-arrow{color:var(--accent-text)}.topic-count{width:82px;height:82px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:50%}.topic-count strong{font:100 1.65rem JakartaSansBold}.topic-count span{font-size:.57rem;color:var(--text-secondary)}.subtopic-strip{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:32px}.subtopic-strip span{padding:7px 10px;border:1px solid var(--border);border-radius:3px;color:var(--text-secondary);font-size:.62rem}.resource-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--border);border-left:1px solid var(--border)}.resource-card{min-height:205px;display:flex;flex-direction:column;align-items:flex-start;padding:24px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--card)}.resource-card:hover{background:var(--bg-alt)}.resource-card.disabled{opacity:.55}.resource-group{font-size:.58rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary)}.resource-icon{margin:25px 0 12px;color:var(--accent-text);font-size:1.35rem}.resource-card h2{margin:0 0 5px;font-size:1rem}.resource-card p{margin:0 0 20px;font-size:.68rem}.resource-card .tile-action{margin-top:auto}.privacy-banner{display:flex;align-items:center;gap:12px;margin-top:28px;padding:16px 18px;background:#e9f7f1;color:#14694b}.privacy-banner strong{font:100 .75rem JakartaSansBold}.privacy-banner p{margin:3px 0 0;color:inherit;font-size:.62rem}.dark .privacy-banner{background:#102a20;color:#83e7bc}.practice-page{min-height:100vh;background:var(--bg-alt);padding-bottom:50px}.practice-topbar{height:66px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 28px;border-bottom:1px solid var(--border);background:var(--card)}.practice-topbar>a{display:flex;align-items:center;gap:7px;color:var(--accent-text);font-size:.7rem}.practice-topbar>.back-link{justify-self:start;margin-bottom:0}.practice-topbar>div{display:flex;flex-direction:column;text-align:center;font-size:.7rem}.practice-topbar>div:only-child{grid-column:2}.practice-topbar>div span{color:var(--text-secondary);font-size:.58rem}.session-visibility{justify-self:end;display:flex;align-items:center;gap:6px;padding:6px 9px;font-size:.58rem}.session-visibility.private{color:#177553}.session-visibility.assigned{color:#9c6300}.practice-progress{height:5px;background:var(--border)}.practice-progress span{display:block;height:100%;background:var(--primary)}.question-shell{box-sizing:border-box;width:min(720px,calc(100% - 32px));margin:45px auto 0;padding:34px;border:1px solid var(--border);border-radius:6px;background:var(--card)}.question-meta{display:flex;justify-content:space-between;margin-bottom:25px;color:var(--text-secondary);font-size:.62rem}.question-shell h1{font-size:1.45rem;line-height:1.5;margin-bottom:26px}.option-list{display:grid;gap:9px}.answer-option{display:flex;align-items:center;gap:13px;padding:13px;border:0;border-radius:4px;font-size:.76rem;cursor:pointer}.answer-option:not(.selected):hover{background:var(--bg-alt)}.dark .answer-option:not(.selected):hover{background:var(--secondary)}.answer-option input{position:absolute;opacity:0}.answer-option>span{width:28px;height:28px;display:grid;place-items:center;background:var(--bg-alt);font-size:.62rem}.answer-option.selected{border:0;padding:13px;background:color-mix(in srgb,var(--primary) 5%,var(--card))}.answer-option.selected>span{background:var(--primary);color:#fff}.written-answer{display:grid;gap:8px;color:var(--text-secondary);font-size:.65rem}.written-answer input{height:48px;padding:0 12px;border:1px solid #a9abb1;border-radius:4px;font:inherit}.feedback-card{margin-top:16px;padding:14px;font-size:.7rem}.feedback-card.correct{background:#e9f7f1;color:#14694b}.feedback-card.incorrect{background:#fff0ee;color:#9b3328}.feedback-card p{margin:4px 0 0;color:inherit}.question-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:28px;padding-top:20px;border-top:1px solid var(--border)}.question-footer>:last-child{justify-self:end}.question-footer>span{color:var(--text-secondary);font-size:.6rem}.provenance{text-align:center;margin:19px 0 0;font-size:.56rem}.result-page{min-height:70vh;display:grid;place-items:center}.result-card{width:min(530px,100%);padding:42px;text-align:center;border:1px solid var(--border);background:var(--card)}.result-icon{width:52px;height:52px;display:grid;place-items:center;margin:0 auto 18px;border-radius:50%;background:#e9f7f1;color:#177553;font-size:1.5rem}.result-card h1{margin:5px;font-size:3.7rem}.result-actions{display:flex;justify-content:center;gap:9px;margin-top:24px;padding-top:24px}.result-privacy{font-size:.62rem}.teacher-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0}.teacher-header h1,.library-header h1{margin:7px 0;font-size:2.7rem;letter-spacing:-.04em}.teacher-header p,.library-header p{margin:0;font-size:.8rem}.teacher-privacy{margin:18px 0}.teacher-stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);margin:24px 0 42px}.teacher-stats article{display:flex;align-items:center;gap:12px;padding:20px;border-right:1px solid var(--border);color:var(--accent-text)}.teacher-stats article:last-child{border-right:0}.teacher-stats div,.assignment-metric{display:flex;flex-direction:column}.teacher-stats strong{color:var(--text);font:100 1.35rem JakartaSansBold}.teacher-stats span,.assignment-metric span{color:var(--text-secondary);font-size:.59rem}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:14px}.section-heading h2{margin:4px 0 0;font-size:1.35rem}.assignment-form{padding:22px;border:1px solid var(--border);background:var(--bg-alt);margin:20px 0}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.form-grid label{display:grid;gap:6px;font-size:.61rem}.form-grid input,.form-grid select{height:42px;padding:0 10px;border:1px solid #a9abb1;border-radius:3px;background:var(--card);color:var(--text)}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.teacher-assignment-list{border-top:1px solid var(--border)}.teacher-assignment-row{display:grid;grid-template-columns:1fr 100px 100px auto;align-items:center;gap:18px;padding:18px 8px;border-bottom:1px solid var(--border)}.teacher-assignment-row h3{margin:5px 0;font-size:.83rem}.teacher-assignment-row p{margin:0;font-size:.6rem}.subject-label{color:var(--subject-color,var(--primary));font:100 .58rem JakartaSansBold;text-transform:uppercase;letter-spacing:.07em}.assignment-metric strong{font:100 1rem JakartaSansBold}.library-header{max-width:680px;padding:25px 0}.library-toolbar{display:flex;justify-content:space-between;padding:13px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:.62rem}.library-toolbar span{display:flex;align-items:center;gap:6px}.library-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-left:1px solid var(--border);margin-top:25px}.library-card{padding:22px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);border-top:4px solid var(--subject-color);background:var(--card)}.library-card:hover{background:var(--bg-alt)}.library-card h2{font-size:.98rem}.library-card p{min-height:50px;font-size:.65rem}.library-card>div{display:flex;justify-content:space-between;gap:10px;padding-top:13px;border-top:1px solid var(--border);font-size:.6rem;color:var(--text-secondary)}.library-card a{display:flex;gap:5px;color:var(--accent-text);font-family:JakartaSansBold}.teacher-header-actions{display:flex;gap:9px}.directory-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:20px 0 28px}.directory-header h1,.access-page h1{margin:7px 0;font-size:2.5rem}.directory-header p{margin:0}.security-callout{display:flex;align-items:center;gap:12px;padding:16px;background:#fff7dc;color:#725000}.security-callout strong{font:100 .72rem JakartaSansBold}.security-callout p{margin:3px 0 0;color:inherit;font-size:.61rem}.directory-summary{display:flex;gap:28px;padding:22px 0;border-bottom:1px solid var(--border)}.directory-summary span{display:flex;align-items:center;gap:7px;color:var(--text-secondary);font-size:.66rem}.directory-summary svg{color:var(--accent-text)}.account-table-wrap{overflow-x:auto;margin-top:20px}.account-table{width:100%;border-collapse:collapse;font-size:.68rem}.account-table th,.account-table td{padding:13px 10px;text-align:left;border-bottom:1px solid var(--border)}.account-table th{color:var(--text-secondary);font-size:.58rem;text-transform:uppercase;letter-spacing:.07em}.account-table td:last-child{display:flex;align-items:center;gap:6px;color:var(--text-secondary)}.role-chip{padding:4px 7px;border-radius:3px;background:var(--accent-fill);color:var(--accent-fill-text);font:100 .56rem JakartaSansBold;text-transform:capitalize}.role-chip.teacher{background:#fff0cc;color:#875600}.access-page{text-align:center;min-height:55vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.access-icon{font-size:2rem;color:var(--accent-text)}@media(max-width:820px){.dashboard-layout{grid-template-columns:1fr}.dashboard-sidebar{display:none}.course-workspace{padding-left:0}.courses-grid,.library-grid,.resource-grid{grid-template-columns:1fr}.subject-hero,.topic-hero,.teacher-header{align-items:flex-start}.form-grid{grid-template-columns:1fr 1fr}.teacher-assignment-row{grid-template-columns:1fr 90px auto}.teacher-assignment-row .assignment-metric:nth-of-type(2){display:none}}.dashboard-sidebar>button.active{background:var(--bg-alt);color:var(--accent-text);border-right:3px solid var(--primary)}.dashboard-sidebar>a:hover:not(.active),.dashboard-sidebar>button:hover:not(.active){background:color-mix(in srgb,var(--primary) 4%,transparent);border-right:0}.dashboard-sidebar>a,.dashboard-sidebar>button{border:1px solid transparent}.dashboard-sidebar>a.active,.dashboard-sidebar>button.active{border:1px solid var(--primary);border-radius:var(--ui-radius-sm)}.dashboard-sidebar>a,.dashboard-sidebar>button{border:0;border-left:3px solid transparent;border-radius:0;box-sizing:border-box}.dashboard-sidebar>a:hover,.dashboard-sidebar>button:hover{background:color-mix(in srgb,var(--primary) 6%,var(--bg-alt));color:var(--accent-text);border-left-color:color-mix(in srgb,var(--primary) 55%,transparent)}.dashboard-sidebar>a.active,.dashboard-sidebar>button.active{background:var(--bg-alt);color:var(--accent-text);border:0;border-left:3px solid var(--primary);border-radius:0}.dashboard-sidebar>a,.dashboard-sidebar>button,.dashboard-sidebar>a:hover,.dashboard-sidebar>button:hover,.dashboard-sidebar>a.active,.dashboard-sidebar>button.active{border-radius:0!important}.profile-band{position:relative;overflow:hidden;background:color-mix(in srgb,var(--primary) 5%,var(--bg-alt))}.profile-band:before{content:"";position:absolute;inset:0;opacity:.5;background:radial-gradient(circle at 12% 30%,color-mix(in srgb,var(--primary) 22%,transparent) 0 2px,transparent 3px),radial-gradient(circle at 76% 65%,color-mix(in srgb,var(--primary) 14%,transparent) 0 1px,transparent 2px),repeating-linear-gradient(135deg,transparent 0 16px,color-mix(in srgb,var(--primary) 4%,transparent) 16px 18px);background-size:34px 34px,26px 26px,auto;pointer-events:none}.profile-band-inner{position:relative;z-index:1}.profile-avatar{box-shadow:0 0 0 7px color-mix(in srgb,var(--primary) 10%,transparent),0 10px 24px color-mix(in srgb,var(--primary) 22%,transparent)}@media(max-width:560px){.profile-band-inner,.dashboard-layout,.platform-shell{width:calc(100% - 28px)}.profile-band-inner{min-height:110px}.profile-avatar{width:48px;height:48px}.profile-copy h1{font-size:1.15rem}.outline-action{display:none}.courses-grid{gap:36px}.course-workspace{padding-top:22px}.workspace-heading{margin-bottom:22px}.subject-hero:before,.topic-hero:before,.topic-count,.topic-meta{display:none}.topic-index-row{grid-template-columns:30px minmax(0,1fr) 20px}.form-grid,.teacher-stats,.teacher-assignment-row{grid-template-columns:1fr}.teacher-stats article{border-right:0;border-bottom:1px solid var(--border)}.teacher-stats article:last-child{border-bottom:0}.teacher-assignment-row .assignment-metric{display:none}.practice-topbar{grid-template-columns:auto 1fr;padding:0 14px}.practice-topbar>div{text-align:left;padding-left:12px}.session-visibility{display:none}.question-shell{margin-top:22px;padding:22px 18px}.question-footer{grid-template-columns:1fr 1fr}.question-footer>span{display:none}.result-card{padding:32px 18px}.result-actions{flex-direction:column}.library-toolbar{align-items:flex-start;flex-direction:column;gap:8px}}.back-link{border:0;padding:0;background:transparent;cursor:pointer}.account-gate{gap:10px}.account-gate p{max-width:480px;margin:0}.account-gate-actions{display:flex;gap:10px;margin-top:12px}.subject-activity-content .practice-progress span{background:var(--forge-accent)}.subject-activity-content .answer-option.selected{border-color:var(--forge-accent);background:color-mix(in srgb,var(--forge-accent) 5%,var(--card))}.subject-activity-content .answer-option.selected>span{background:var(--forge-accent)}:root.dark .answer-option:not(.selected):is(:hover,:focus-within){background:var(--secondary);color:var(--text)}.result-actions{padding-top:0}.practice-placeholder-card .platform-button.primary{background:var(--forge-accent);border-color:var(--forge-accent);box-shadow:none}.practice-placeholder-card .platform-button.primary:not(:disabled):hover{background:var(--forge-accent-strong);border-color:var(--forge-accent-strong);box-shadow:none}.account-gate{padding-top:42px;padding-bottom:72px}.account-gate-form{width:min(430px,100%);padding:34px;border:1px solid var(--border);border-radius:10px;background:var(--card);box-shadow:0 20px 48px #1116261a;text-align:left}.account-gate-lock{display:block;margin:0 auto 14px;color:var(--accent-text);font-size:2rem}.account-gate-form h1{margin:0 0 26px;text-align:center;font-size:1.65rem!important}.account-gate-form label{display:block;margin:0 0 16px;color:var(--text);font:100 .7rem JakartaSansBold}.account-gate-input{display:flex;align-items:center;gap:8px;height:46px;margin-top:7px;padding:0 12px;border:1px solid #9b9ea5;border-radius:4px;color:var(--text-secondary)}.account-gate-input:focus-within{border-color:var(--primary);outline:2px solid color-mix(in srgb,var(--primary) 20%,transparent)}.account-gate-input>svg{flex:0 0 auto}.account-gate-input input{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;color:var(--text);font:100 .78rem JakartaSans}.account-gate-input button{display:grid;place-items:center;min-width:30px;height:30px;padding:0;border:0;background:transparent;color:var(--accent-text);cursor:pointer}.account-gate-forgot{display:block;margin:-7px 0 15px auto;padding:2px 0;border:0;background:transparent;color:var(--accent-text);font:100 .66rem JakartaSansBold;text-decoration:underline;cursor:pointer}.account-gate-error{display:flex;align-items:flex-start;gap:7px;margin-bottom:13px;padding:10px;background:#fff0ee;color:#9b3328;font-size:.7rem}.account-gate-submit,.account-gate-register{width:100%;height:46px;border-radius:4px;font:100 .76rem JakartaSansBold;cursor:pointer}.account-gate-submit{border:1px solid var(--primary);background:var(--primary);color:#fff}.account-gate-submit:disabled{opacity:.6;cursor:wait}.account-gate-register{margin-top:11px;border:1px solid var(--border);background:var(--card);color:var(--accent-text)}.account-gate-context{margin:20px auto 0!important;color:var(--text-secondary);font-size:.61rem;line-height:1.5;text-align:center}@media(max-width:560px){.account-gate-form{padding:26px 20px}.account-gate-form h1{font-size:1.4rem!important}}.teacher-tool-section{margin-top:52px;padding-top:34px;border-top:1px solid var(--border)}.inline-create-form{display:flex;gap:8px}.inline-create-form input,.question-bank-filters select,.question-edit-form input,.question-edit-form select,.question-edit-form textarea{border:1px solid #a9abb1;border-radius:3px;background:var(--card);color:var(--text);font:inherit}.inline-create-form input{min-width:190px;height:38px;padding:0 11px}.class-manager-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.class-manager-card{border:1px solid var(--border);background:var(--card)}.class-manager-card>header{padding:16px;border-bottom:1px solid var(--border)}.class-manager-card h3{margin:0 0 5px;font-size:.84rem}.class-manager-card header span{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:.58rem}.student-check-list{max-height:240px;overflow:auto;padding:7px}.student-check-list label{display:flex;align-items:center;gap:10px;padding:9px;border-radius:3px;cursor:pointer}.student-check-list label:hover{background:var(--bg-alt)}.student-check-list input{accent-color:var(--primary)}.student-check-list label>span{display:flex;flex-direction:column;gap:2px}.student-check-list strong{font:100 .67rem JakartaSansBold}.student-check-list small,.student-check-list p{color:var(--text-secondary);font-size:.57rem}.student-check-list p{padding:9px}.question-bank-filters{display:flex;gap:12px;margin:14px 0}.question-bank-filters label{display:grid;gap:5px;color:var(--text-secondary);font-size:.58rem}.question-bank-filters select{min-width:180px;height:40px;padding:0 10px}.question-edit-form{display:grid;gap:13px;margin:16px 0 20px;padding:20px;border:1px solid var(--border);background:var(--bg-alt)}.question-edit-form>label{display:grid;gap:6px;color:var(--text-secondary);font-size:.61rem}.question-edit-form>label input{height:42px;padding:0 10px}.question-edit-form textarea{min-height:84px;padding:10px;resize:vertical}.question-form-grid{grid-template-columns:repeat(4,1fr)}.question-bank-list{border-top:1px solid var(--border)}.question-bank-list article{display:grid;grid-template-columns:30px minmax(0,1fr) 34px 34px;align-items:center;gap:10px;padding:14px 7px;border-bottom:1px solid var(--border)}.question-bank-list article>span{color:var(--text-secondary);font-size:.6rem}.question-bank-list article>div{display:flex;flex-direction:column;gap:5px}.question-bank-list strong{font:100 .68rem JakartaSansBold}.question-bank-list small{color:var(--text-secondary);font-size:.56rem;text-transform:capitalize}.question-bank-list article>button{width:32px;height:32px;display:grid;place-items:center;border:0;background:transparent;color:var(--accent-text);cursor:pointer}.question-bank-list article>button:hover{background:var(--bg-alt)}.question-bank-list .danger-icon-button{color:#a83737}.empty-tool-state{padding:20px 7px;color:var(--text-secondary);font-size:.65rem}@media(max-width:820px){.class-manager-grid{grid-template-columns:1fr}.question-form-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.section-heading{align-items:flex-start;flex-direction:column;gap:12px}.inline-create-form{width:100%}.inline-create-form input{min-width:0;flex:1}.question-bank-filters{flex-direction:column}.question-bank-filters select{width:100%}.question-form-grid{grid-template-columns:1fr}}.assignment-details{display:grid;gap:12px;margin-top:14px}.assignment-details label{display:grid;gap:6px;color:var(--text-secondary);font-size:.61rem}.assignment-details input,.assignment-details textarea{border:1px solid #a9abb1;border-radius:3px;background:var(--card);color:var(--text);font:inherit}.assignment-details input{height:42px;padding:0 10px}.assignment-details textarea{min-height:90px;padding:10px;resize:vertical}.assignment-warning{margin:12px 0 0;color:#9b3328;font-size:.62rem}.assignment-success{display:flex;align-items:center;gap:8px;margin:14px 0;padding:12px 14px;background:#e9f7f1;color:#14694b;font-size:.66rem}.assignment-row-instructions{max-width:520px;margin-top:5px!important;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-homework{margin:16px 0 0;color:var(--text-secondary);font-size:.65rem}.homework-instructions{margin:0;color:var(--text-secondary);font-size:.59rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.practice-instructions{width:min(720px,calc(100% - 32px));margin:24px auto -22px;padding:15px 18px;border-left:4px solid var(--primary);background:var(--card)}.practice-instructions strong{font:100 .7rem JakartaSansBold}.practice-instructions p{margin:5px 0;color:var(--text);font-size:.67rem;white-space:pre-wrap}.practice-instructions small{color:var(--text-secondary);font-size:.58rem}.student-search-wrap{display:flex;align-items:center;gap:8px;margin:12px;padding:0 10px;border:1px solid #a9abb1;background:var(--card);color:var(--accent-text)}.student-search-wrap input{width:100%;height:40px;border:0;outline:0;background:transparent;color:var(--text);font:inherit}.student-search-results{max-height:230px;overflow:auto;margin:0 12px 12px;border:1px solid var(--border)}.student-search-results>button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px;border:0;border-bottom:1px solid var(--border);background:var(--card);color:var(--text);text-align:left;cursor:pointer}.student-search-results>button:hover{background:var(--bg-alt);color:var(--accent-text)}.student-search-results span,.assigned-student-list span{display:flex;flex-direction:column;gap:2px}.student-search-results strong,.assigned-student-list strong{font:100 .65rem JakartaSansBold}.student-search-results small,.assigned-student-list small{color:var(--text-secondary);font-size:.56rem}.student-search-results p,.assigned-student-list p{padding:10px;color:var(--text-secondary);font-size:.59rem}.assigned-student-list{max-height:250px;overflow:auto;padding:0 12px 12px}.assigned-student-list>div{display:flex;align-items:center;justify-content:space-between;padding:9px 2px;border-bottom:1px solid var(--border)}.assigned-student-list>div>button{width:30px;height:30px;display:grid;place-items:center;border:0;background:transparent;color:#a83737;cursor:pointer}.assigned-student-list>div>button:hover{background:var(--bg-alt)}.teacher-assignment-row h3 a{color:var(--accent-text)}.assignment-row-actions{display:flex!important;flex-direction:row!important;gap:7px}.assignment-row-actions a,.assignment-row-actions button{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--border);border-radius:var(--ui-radius-sm);background:var(--card);color:var(--accent-text);cursor:pointer}.assignment-row-actions a:hover,.assignment-row-actions button:hover{border-color:var(--primary);background:var(--bg-alt)}.analytics-header{padding:4px 0 24px;border-bottom:1px solid var(--border)}.analytics-header h1{margin:7px 0;font-size:2.4rem}.analytics-header p{margin:0;font-size:.7rem}.analytics-summary{display:grid;grid-template-columns:repeat(3,1fr);margin:22px 0 44px;border:1px solid var(--border)}.analytics-summary article{display:flex;align-items:center;gap:12px;padding:20px;border-right:1px solid var(--border);color:var(--accent-text)}.analytics-summary article:last-child{border-right:0}.analytics-summary article>div{display:flex;flex-direction:column}.analytics-summary strong{color:var(--text);font:100 1.3rem JakartaSansBold}.analytics-summary span{color:var(--text-secondary);font-size:.58rem}.question-metric-list{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-left:1px solid var(--border)}.question-metric-list>button{min-height:160px;padding:18px;text-align:left;border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:0;background:var(--card);color:var(--text);cursor:pointer}.question-metric-list>button.active{box-shadow:inset 0 0 0 2px var(--primary);background:var(--bg-alt)}.question-metric-list>button>span{display:block;color:var(--text-secondary);font-size:.57rem;text-transform:uppercase}.question-metric-list>button>strong{display:block;margin:8px 0 2px;font:100 1.45rem JakartaSansBold}.question-metric-list>button>small{color:var(--text-secondary);font-size:.55rem}.question-metric-list>button>p{margin:13px 0 0;font-size:.64rem;line-height:1.45}.question-response-section{margin-top:42px}.response-question-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px;border:1px solid var(--border);border-radius:var(--ui-radius);background:var(--bg-alt)}.response-question-header h2{max-width:720px;margin:7px 0;font-size:1.15rem}.response-question-header p{margin:0;font-size:.65rem}.response-rate{min-width:110px;display:flex;flex-direction:column;text-align:center}.response-rate>strong{font:100 1.8rem JakartaSansBold;color:var(--accent-text)}.response-rate span,.response-rate small{font-size:.57rem}.response-rate small{color:var(--text-secondary)}.response-toolbar{display:flex;align-items:center;justify-content:space-between;padding:14px 0}.response-toolbar label{width:min(390px,70%);display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid #a9abb1;border-radius:var(--ui-radius);color:var(--accent-text)}.response-toolbar input{width:100%;height:40px;border:0;outline:0;background:transparent;color:var(--text)}.response-toolbar>span{color:var(--text-secondary);font-size:.6rem}.student-response-table{border:1px solid var(--border)}.student-response-head,.student-response-row{display:grid;grid-template-columns:1.1fr 1.7fr .7fr .6fr;align-items:center;gap:14px;padding:12px 14px;border-bottom:1px solid var(--border)}.student-response-head{background:var(--bg-alt);color:var(--text-secondary);font-size:.55rem;text-transform:uppercase}.student-response-row{min-height:57px;font-size:.64rem}.student-response-row>span:first-child{display:flex;flex-direction:column}.student-response-row small{color:var(--text-secondary);font-size:.54rem}.answer-correct,.answer-incorrect{display:flex;align-items:center;gap:5px}.answer-correct{color:#177553}.answer-incorrect{color:#a83737}.answer-pending{color:var(--text-secondary)}.response-limit-note{color:var(--text-secondary);font-size:.59rem}@media(max-width:820px){.question-metric-list{grid-template-columns:1fr 1fr}.student-response-head,.student-response-row{grid-template-columns:1fr 1.4fr .7fr}.student-response-head>span:last-child,.student-response-row>span:last-child{display:none}}@media(max-width:560px){.analytics-summary,.question-metric-list{grid-template-columns:1fr}.analytics-summary article{border-right:0;border-bottom:1px solid var(--border)}.response-question-header{align-items:flex-start;flex-direction:column}.response-rate{text-align:left}.student-response-head,.student-response-row{grid-template-columns:1fr 1fr}.student-response-head>span:nth-child(3),.student-response-row>span:nth-child(3){display:none}}.class-create-form select{height:38px;padding:0 8px;border:1px solid #a9abb1;border-radius:3px;background:var(--card);color:var(--text);font:inherit}.class-colour-input{width:38px!important;min-width:38px!important;height:38px!important;padding:3px!important;border:1px solid #a9abb1;border-radius:3px;background:var(--card)}.class-manager-card>header{display:flex;align-items:center;justify-content:space-between;border-left:4px solid var(--class-colour)}.class-card-heading{display:flex;align-items:center;gap:10px}.class-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--class-colour) 14%,var(--card));color:var(--class-colour);font-size:.9rem}.class-edit-button{width:32px;height:32px;display:grid;place-items:center;border:0;background:transparent;color:var(--class-colour);cursor:pointer}.class-edit-button:hover{background:var(--bg-alt)}.class-edit-form{display:grid;grid-template-columns:minmax(0,1fr) 110px 55px auto auto;align-items:end;gap:8px;padding:12px;border-bottom:1px solid var(--border);background:var(--bg-alt)}.class-edit-form label{display:grid;gap:5px;color:var(--text-secondary);font-size:.56rem}.class-edit-form input:not([type=color]),.class-edit-form select{height:36px;padding:0 8px;border:1px solid #a9abb1;border-radius:3px;background:var(--card);color:var(--text);font:inherit}.class-edit-form input[type=color]{height:36px;width:100%;padding:2px;border:1px solid #a9abb1;border-radius:3px;background:var(--card)}.class-edit-form .platform-button{min-height:36px;padding:0 10px}@media(max-width:560px){.class-create-form{flex-wrap:wrap}.class-create-form input:first-child{min-width:150px}.class-edit-form{grid-template-columns:1fr 1fr}.class-edit-form label:first-child{grid-column:span 2}}.class-manager-grid{align-items:start}.class-dialog-backdrop{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:20px;background:#16181f8f;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.class-dialog{width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;border-radius:10px;background:var(--card);box-shadow:0 24px 70px #0000003d}.class-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 26px 18px;border-bottom:1px solid var(--border)}.class-dialog>header h2{margin:5px 0 0;font-size:1.35rem}.class-dialog>header>button{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--bg-alt);color:var(--text);cursor:pointer}.class-dialog-preview{display:flex;align-items:center;gap:12px;margin:22px 26px 0;padding:15px;border-left:4px solid var(--class-colour);border-radius:4px;background:var(--bg-alt)}.class-dialog-preview>span{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--class-colour) 16%,var(--card));color:var(--class-colour);font-size:1.05rem}.class-dialog-preview>div{display:flex;flex-direction:column;gap:3px}.class-dialog-preview strong{font:100 .78rem JakartaSansBold}.class-dialog-preview small{color:var(--text-secondary);font-size:.56rem}.class-dialog>form{display:grid;gap:20px;padding:24px 26px 26px}.class-name-field{display:grid;gap:7px;color:var(--text-secondary);font-size:.62rem}.class-name-field input{height:44px;padding:0 12px;border:1px solid #a9abb1;border-radius:4px;background:var(--card);color:var(--text);font:inherit}.class-dialog fieldset{margin:0;padding:0;border:0}.class-dialog legend{margin-bottom:9px;color:var(--text-secondary);font-size:.62rem}.class-icon-options,.class-colour-options{display:flex;flex-wrap:wrap;gap:9px}.class-icon-options button{width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--border);border-radius:6px;background:var(--card);color:var(--text-secondary);font-size:1rem;cursor:pointer}.class-icon-options button:hover{border-color:var(--primary);color:var(--accent-text)}.class-icon-options button.selected{border:2px solid var(--primary);background:var(--accent-fill);color:var(--accent-fill-text)}.class-colour-options button{width:38px;height:38px;display:grid;place-items:center;border:3px solid var(--card);border-radius:50%;outline:1px solid var(--border);background:var(--swatch-colour);color:#fff;cursor:pointer}.class-colour-options button.selected{outline:3px solid var(--swatch-colour);outline-offset:2px}.class-dialog footer{display:flex;justify-content:flex-end;gap:9px;padding-top:4px}@media(max-width:560px){.class-dialog-backdrop{align-items:end;padding:0}.class-dialog{width:100%;max-height:92vh;border-radius:12px 12px 0 0}.class-dialog>header,.class-dialog>form{padding-left:20px;padding-right:20px}.class-dialog-preview{margin-left:20px;margin-right:20px}}.class-manager-card>header .class-icon{display:grid;place-items:center;flex:0 0 34px}.class-manager-card>header .class-icon>svg{display:block}.class-card-heading>div>span{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:.58rem}.class-delete-zone{display:grid;grid-template-columns:1fr auto;gap:10px 12px;padding:16px;border:1px solid #e5b7b7;border-radius:5px;background:#fff7f7}.dark .class-delete-zone{background:#2b1719;border-color:#704046}.class-delete-zone>div{grid-column:1/-1}.class-delete-zone strong{color:#9b3328;font:100 .68rem JakartaSansBold}.class-delete-zone p{margin:5px 0 0;color:var(--text-secondary);font-size:.58rem}.class-delete-zone p b{color:var(--text);font-family:JakartaSansBold}.class-delete-zone input{min-width:0;height:38px;padding:0 10px;border:1px solid #c68787;border-radius:3px;background:var(--card);color:var(--text);font:inherit}.class-delete-button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 12px;border:1px solid #a83737;border-radius:3px;background:#a83737;color:#fff;font:100 .62rem JakartaSansBold;cursor:pointer}.class-delete-button:disabled{opacity:.38;cursor:not-allowed}@media(max-width:520px){.class-delete-zone{grid-template-columns:1fr}.class-delete-zone>div{grid-column:1}.class-delete-button{justify-self:start}}.class-dialog-footer .class-delete-trigger{margin-right:auto;display:flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 13px;border:1px solid #c36c6c;border-radius:4px;background:var(--card);color:#a83737;font:100 .62rem JakartaSansBold;cursor:pointer}.class-dialog-footer .class-delete-trigger:hover{background:#fff2f2}.dark .class-dialog-footer .class-delete-trigger:hover{background:#321d20}.class-delete-dialog-backdrop{position:fixed;inset:0;z-index:3100;display:grid;place-items:center;padding:20px;background:#16181fad;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.class-delete-dialog{width:min(440px,100%);padding:28px;border-radius:9px;background:var(--card);box-shadow:0 24px 70px #0000004d}.delete-dialog-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#fff0f0;color:#a83737;font-size:1.05rem}.dark .delete-dialog-icon{background:#321d20}.class-delete-dialog h2{margin:16px 0 8px;font:100 1.25rem JakartaSansBold}.class-delete-dialog>p{margin:0 0 20px;color:var(--text-secondary);font-size:.64rem;line-height:1.55}.class-delete-dialog>label{display:grid;gap:8px;color:var(--text-secondary);font-size:.61rem}.class-delete-dialog>label strong{color:var(--text);font-family:JakartaSansBold}.class-delete-dialog>label input{height:42px;padding:0 11px;border:1px solid #c68787;border-radius:4px;background:var(--card);color:var(--text);font:inherit}.class-delete-dialog>footer{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.class-delete-dialog .class-delete-button:disabled{opacity:.38}@media(max-width:520px){.class-dialog-footer{flex-wrap:wrap}.class-dialog-footer .class-delete-trigger{margin-right:0}.class-delete-dialog-backdrop{align-items:end;padding:0}.class-delete-dialog{width:100%;border-radius:12px 12px 0 0;padding:24px 20px}}.year-group-chip{display:inline-flex;align-items:center;margin-left:6px;padding:3px 6px;border-radius:999px;background:color-mix(in srgb,var(--class-colour,var(--primary)) 12%,var(--card));color:var(--class-colour,var(--primary));font:100 .5rem JakartaSansBold;font-style:normal;white-space:nowrap;vertical-align:1px}.optional-label{margin-left:5px;color:var(--text-secondary);font:100 .52rem JakartaSans}.course-workspace>.homework-panel:first-child{margin-top:0}.workspace-actions{display:flex;align-items:center;gap:9px}.workspace-actions .blue-action,.workspace-actions .outline-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px}.student-profile-section{margin-top:52px;padding-top:2px}.student-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-top:18px}.student-profile-grid dl{margin:0}.student-profile-grid dl>div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.student-profile-grid dt{color:var(--text-secondary);font-size:.59rem}.student-profile-grid dd{margin:0;font:100 .65rem JakartaSansBold}.profile-class-list{padding:16px 18px;background:var(--bg-alt);border:1px solid var(--border)}.profile-class-list h4{display:flex;align-items:center;gap:7px;margin:0 0 12px;font-size:.7rem}.profile-class-list ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.profile-class-list li{display:flex;align-items:center;gap:8px;font-size:.63rem}.profile-class-list p{margin:0;font-size:.6rem}.profile-class-dot{width:9px;height:9px;border-radius:50%}.course-editor-backdrop{position:fixed;inset:0;z-index:3200;display:grid;place-items:center;padding:20px;background:#16181fa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.course-editor-dialog{width:min(510px,100%);padding:26px;border-radius:9px;background:var(--card);box-shadow:0 24px 70px #0000004d}.course-editor-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.course-editor-dialog>header h2{margin:5px 0 0;font-size:1.3rem}.course-editor-dialog>header>button{width:34px;height:34px;display:grid;place-items:center;border:0;background:transparent;color:var(--text);cursor:pointer}.course-editor-dialog>p{margin:12px 0 18px;font-size:.64rem}.course-choice-list{display:grid;gap:9px}.course-choice-list label{display:grid;grid-template-columns:auto 12px 1fr auto;align-items:center;gap:11px;padding:13px;border:1px solid var(--border);cursor:pointer}.course-choice-list label:has(input:checked){border-color:var(--subject-color);background:color-mix(in srgb,var(--subject-color) 7%,var(--card))}.course-choice-list input{width:16px;height:16px;accent-color:var(--subject-color)}.course-choice-dot{width:10px;height:10px;border-radius:50%;background:var(--subject-color)}.course-choice-list label>span:nth-of-type(2){display:flex;flex-direction:column;gap:3px}.course-choice-list strong{font:100 .68rem JakartaSansBold}.course-choice-list small{color:var(--text-secondary);font-size:.56rem}.course-choice-list label>svg{opacity:0;color:var(--subject-color)}.course-choice-list label:has(input:checked)>svg{opacity:1}.course-editor-dialog>footer{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.course-editor-error{padding:9px!important;background:#fff0f0;color:#9c2828!important}.dark .course-editor-error{background:#321d20}.course-editor-dialog .eyebrow{font-size:.58rem}.study-check-backdrop{position:fixed;inset:0;z-index:3300;display:grid;place-items:center;padding:20px;background:#16181fad;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.study-check-dialog{width:min(460px,100%);padding:34px 32px 28px;border-radius:10px;background:var(--card);box-shadow:0 24px 70px #00000052;text-align:center}.study-check-icon{width:54px;height:54px;display:grid;place-items:center;margin:0 auto 18px;border-radius:50%;background:color-mix(in srgb,var(--primary) 12%,var(--card));color:var(--accent-text);font-size:1.35rem}.study-check-dialog h2{margin:7px 0 10px;font-size:1.45rem}.study-check-dialog>p{margin:0;color:var(--text-secondary);font-size:.68rem;line-height:1.65}.study-check-dialog>p strong{color:var(--text)}.study-check-dialog footer{display:flex;justify-content:center;gap:10px;margin-top:25px}.homework-row>.row-start{border:0;border-radius:3px;background:var(--primary);color:#fff;font:100 .63rem JakartaSansBold;cursor:pointer}.homework-row>.row-start:hover{filter:brightness(.94)}.self-mark-card{width:min(850px,calc(100% - 32px));margin:44px auto 0;padding:34px;border:1px solid var(--border);border-radius:7px;background:var(--card)}.self-mark-card>h1{margin:10px 0 28px;font-size:1.35rem;line-height:1.45}.self-mark-comparison{display:grid;grid-template-columns:1fr 1fr;gap:16px}.self-mark-comparison>div{min-height:130px;padding:18px;border:1px solid var(--border);background:var(--bg-alt)}.self-mark-comparison span{color:var(--text-secondary);font-size:.57rem;text-transform:uppercase;letter-spacing:.08em}.self-mark-comparison p{margin:10px 0 0;font:100 .73rem/1.6 JakartaSansBold;white-space:pre-wrap}.self-mark-card>aside{margin:22px 0;padding:15px 18px;border-left:4px solid var(--primary);background:color-mix(in srgb,var(--primary) 7%,var(--card))}.self-mark-card>aside strong{font:100 .7rem JakartaSansBold}.self-mark-card>aside p{margin:5px 0 0;color:var(--text-secondary);font-size:.64rem}.self-mark-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.self-mark-actions button{justify-content:center;min-height:48px}.self-mark-actions .incorrect-mark{background:#b73a3a;color:#fff;border-color:#b73a3a}.self-mark-actions .correct-mark{background:#177553;color:#fff;border-color:#177553}@media(max-width:600px){.self-mark-card{margin-top:22px;padding:22px 18px}.self-mark-comparison,.self-mark-actions{grid-template-columns:1fr}.self-mark-comparison>div{min-height:100px}}.response-result{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.response-result>span{display:flex;align-items:center;gap:5px}.response-result>small{color:var(--text-secondary);font-size:.49rem;white-space:nowrap}@media(max-width:680px){.workspace-heading{align-items:flex-start;gap:15px}.workspace-actions{align-items:stretch;flex-direction:column}.student-profile-grid{grid-template-columns:1fr}.course-editor-backdrop{align-items:end;padding:0}.course-editor-dialog{border-radius:12px 12px 0 0;padding:22px 18px}.maths-learning-row{grid-template-columns:40px minmax(0,1fr)}.maths-learning-row>.learning-row-actions{grid-column:2;justify-content:flex-start}.practice-placeholder-card{align-items:flex-start;flex-direction:column}}.multiple-choice-editor{display:grid;gap:10px;border:1px solid var(--border);padding:16px;margin:0}.multiple-choice-editor legend{padding:0 5px;font:100 .68rem JakartaSansBold}.multiple-choice-editor>p{margin:0 0 4px;color:var(--text-secondary);font-size:.58rem}.multiple-choice-editor>label{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:10px;font-size:.65rem}.multiple-choice-editor>label>span{height:38px;display:grid;place-items:center;background:var(--primary);color:#fff;border-radius:4px;font:100 .68rem JakartaSansBold}.multiple-choice-editor input,.multiple-choice-editor select{height:38px;padding:0 10px;min-width:0}.multiple-choice-editor .correct-choice{display:grid;grid-template-columns:1fr;gap:6px;margin-top:6px;color:var(--text-secondary);font-size:.61rem}.teacher-content-page{min-height:620px}.teacher-content-header{display:flex;align-items:center;gap:16px;padding-bottom:26px;margin-bottom:28px;border-bottom:1px solid var(--border)}.teacher-content-header>svg{width:48px;height:48px;padding:13px;box-sizing:border-box;background:var(--accent-fill);color:var(--accent-fill-text);border-radius:50%}.teacher-content-header h1{margin:5px 0 7px;font-size:1.65rem}.teacher-content-header p,.section-heading p{margin:0;color:var(--text-secondary);font-size:.68rem;line-height:1.5}.teacher-notes-editor .section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.teacher-notes-editor .section-heading>div{max-width:700px}.teacher-note-form{display:grid;gap:14px;padding:20px;margin:22px 0;background:var(--bg-alt);border:1px solid var(--border)}.teacher-note-form>label{display:grid;gap:7px;color:var(--text-secondary);font-size:.62rem}.teacher-note-form textarea{min-height:400px;padding:13px;resize:vertical;border:1px solid var(--border);background:var(--card);color:var(--text);font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace}.teacher-note-help{margin:0;color:var(--text-secondary);font-size:.6rem}.teacher-note-help code{color:var(--accent-text)}.teacher-editor-message{padding:11px 13px;background:var(--secondary);color:var(--text);font-size:.64rem}.teacher-note-group{margin-top:30px;border-top:1px solid var(--border)}.teacher-note-group h3{margin:18px 0 0;font-size:.82rem;text-transform:capitalize}.teacher-note-group article{display:grid;grid-template-columns:minmax(0,1fr) 34px 34px;gap:7px;align-items:center;padding:13px 7px;border-bottom:1px solid var(--border)}.teacher-note-group article>div{display:flex;flex-direction:column;gap:4px;min-width:0}.teacher-note-group strong{font:100 .69rem JakartaSansBold}.teacher-note-group small{color:var(--text-secondary);font-size:.56rem}.teacher-note-group button{width:32px;height:32px;display:grid;place-items:center;border:0;background:transparent;color:var(--accent-text);cursor:pointer}.teacher-note-group button:hover{background:var(--bg-alt)}.teacher-note-group .danger-icon-button{color:#a83737}.teacher-page .teacher-header{padding:0 0 22px}.teacher-content-page .teacher-content-header{padding:0 0 26px}.teacher-content-page .teacher-content-header{margin-bottom:0}.teacher-content-page .teacher-tool-section{margin-top:0;padding-top:50px;border-top:0}.teacher-content-page .teacher-notes-editor{padding-top:50px}.teacher-note-filters{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(2,minmax(150px,1fr));gap:14px;padding:16px;margin-top:22px;background:var(--bg-alt);border:1px solid var(--border)}.teacher-filter-heading{grid-column:1/-1;display:flex;align-items:center;gap:7px;font-size:.66rem}.teacher-filter-heading svg{color:var(--accent-text)}.teacher-filter-heading button{margin-left:auto;border:0;background:transparent;color:var(--accent-text);font:100 .6rem JakartaSansBold;cursor:pointer}.teacher-note-filters>label{display:grid;gap:6px;color:var(--text-secondary);font-size:.58rem}.teacher-note-filters input[type=search],.teacher-note-filters select{height:40px;padding:0 10px;border:1px solid var(--border);border-radius:4px;background:var(--card);color:var(--text);font:inherit}.teacher-note-filters fieldset{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px 17px;margin:0;padding:10px;border:1px solid var(--border)}.teacher-note-filters legend{padding:0 5px;color:var(--text-secondary);font-size:.57rem}.teacher-note-filters fieldset label{display:flex;align-items:center;gap:5px;font-size:.61rem;cursor:pointer}.teacher-note-filters input[type=checkbox]{accent-color:var(--primary)}.teacher-note-results{margin:18px 0 -12px;color:var(--text-secondary);font-size:.62rem}@media(max-width:600px){.teacher-content-header{align-items:flex-start}.teacher-notes-editor .section-heading{flex-direction:column}.teacher-note-form textarea{min-height:300px}.teacher-note-group article{grid-template-columns:minmax(0,1fr) 34px 34px}.teacher-note-filters{grid-template-columns:1fr}}:is(.platform-button,.blue-action,.row-start,.outline-action,.home-primary,.home-secondary,.community-primary,.community-secondary,.login-primary,.login-secondary,.account-gate-submit,.account-gate-register,.notes-intro-btn,.mock-intro-btn,.more-btn){border-radius:999px!important}:is(.platform-button,.blue-action,.row-start,.outline-action):not(:disabled):hover{transform:none;background:var(--forge-accent-strong);border-color:var(--forge-accent-strong);color:#fff}:is(.platform-button.secondary,.outline-action):not(:disabled):hover{background:var(--surface-hover);border-color:var(--border-2);color:var(--forge-accent)}.privacy-banner{display:block}.privacy-banner>div{width:100%}.homework-delete-backdrop{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:20px;background:#13141fa6}.homework-delete-dialog{width:min(460px,100%);padding:28px;border-radius:8px;background:var(--card);color:var(--text);box-shadow:0 20px 60px #0003}.homework-delete-dialog h2{margin:0 0 14px}.loading-state{position:relative;width:100%;min-height:calc(100vh - 118px);display:grid;place-items:center;margin:0;padding:60px 24px;box-sizing:border-box;background:var(--bg);overflow:hidden;text-align:center}.loading-state-bar{position:fixed;z-index:9999;top:0;left:0;width:100vw;height:4px;background:color-mix(in srgb,var(--primary) 12%,var(--bg-alt));overflow:hidden}.loading-state-bar span{display:block;width:34%;height:100%;border-radius:999px;background:var(--primary);box-shadow:0 0 18px color-mix(in srgb,var(--primary) 65%,transparent);animation:loading-slide 1.35s ease-in-out infinite}.loading-state-content{display:flex;align-items:center;flex-direction:column;gap:10px}.loading-state-art{width:min(170px,42vw);height:auto;margin-bottom:6px;filter:drop-shadow(0 16px 24px color-mix(in srgb,var(--primary) 16%,transparent));animation:loading-float 2.2s ease-in-out infinite}.loading-state strong{font:100 1.05rem JakartaSansBold;color:var(--text)}.loading-state p{margin:0;color:var(--text-secondary);font-size:.68rem}.loading-state[role=status]{min-height:calc(100vh - 118px)}@keyframes loading-slide{0%{transform:translate(-130%)}55%{transform:translate(210%)}to{transform:translate(330%)}}@keyframes loading-float{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(2deg)}}.subject-course-sidebar{min-width:0;padding:12px 10px 32px;border-right:1px solid var(--border);background:var(--card);box-shadow:0 4px 24px color-mix(in srgb,var(--text) 13%,transparent)}.subject-menu-toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:36px;padding:0 8px;border:0;background:transparent;color:var(--text-secondary);font:100 .7rem JakartaSans;cursor:pointer}.subject-menu-toggle:hover{color:inherit;background:var(--surface-hover-subtle)}.subject-menu-toggle svg{font-size:.9rem}.subject-sidebar-label{display:block;padding:14px 8px 6px;color:var(--text-secondary);font-size:.56rem}.subject-switcher{position:relative;margin:0 0 4px}.subject-switcher summary{display:grid;grid-template-columns:28px minmax(0,1fr) 16px;align-items:center;gap:8px;min-height:42px;padding:0 9px;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--text);font:100 .78rem/1.4 JakartaSansBold;cursor:pointer;list-style:none}.subject-switcher summary::-webkit-details-marker{display:none}.subject-switcher summary:hover{border-color:var(--border-2);background:var(--surface-hover-subtle)}.subject-switcher summary>svg:first-child{width:28px;height:28px;padding:6px;box-sizing:border-box;border-radius:50%;background:var(--subject-color);color:#fff;font-size:.92rem;stroke-width:2.2}.subject-switcher-chevron{justify-self:end;transition:transform .16s ease}.subject-switcher[open] .subject-switcher-chevron{transform:rotate(180deg)}.subject-switcher-options{position:absolute;z-index:8;top:calc(100% + 6px);left:0;right:0;padding:6px;border:1px solid var(--border);border-radius:10px;background:var(--card);box-shadow:0 14px 35px color-mix(in srgb,#000 12%,transparent)}.subject-switcher-options a{display:flex;align-items:center;gap:8px;min-height:36px;padding:0 8px;border-radius:7px;color:var(--text);font-size:.68rem}.subject-switcher-options a:hover{background:var(--surface-hover-subtle);color:inherit}.subject-switcher-options svg{width:26px;height:26px;padding:5px;box-sizing:border-box;border-radius:50%;background:var(--switcher-subject-color,var(--subject-color));color:#fff;stroke-width:2.2}.subject-resource-nav{display:flex;flex-direction:column;margin-top:4px}.subject-resource-nav>div>a{display:flex;align-items:center;gap:9px;min-height:38px;padding:0 9px;border-radius:8px;color:var(--text);font-size:.76rem}.subject-resource-nav>div>a:hover{background:var(--surface-hover-subtle);color:inherit}.subject-resource-nav>div>a.active{background:color-mix(in srgb,var(--forge-accent) 10%,var(--card));color:var(--forge-accent);font-family:JakartaSans;font-weight:100}.subject-resource-nav>div>a svg{font-size:.84rem}.subject-resource-group{margin-top:2px}.subject-resource-group .subject-sidebar-label{padding-top:13px}.subject-course-sidebar.is-collapsed{padding-inline:8px}.subject-course-sidebar.is-collapsed .subject-menu-toggle{justify-content:center;padding:0}.subject-course-sidebar.is-collapsed :is(.subject-menu-toggle span,.subject-sidebar-label,.subject-switcher summary span,.subject-switcher-chevron,.subject-resource-nav a span){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.subject-course-sidebar.is-collapsed .subject-switcher{margin:8px 0 12px}.subject-course-sidebar.is-collapsed .subject-switcher summary{display:grid;grid-template-columns:1fr;place-items:center;min-height:38px;padding:0;border-color:transparent}.subject-course-sidebar.is-collapsed .subject-switcher summary:hover,.subject-course-sidebar.is-collapsed .subject-switcher[open] summary{border-color:var(--border-2);background:var(--card)}.subject-course-sidebar.is-collapsed .subject-switcher-options{left:46px;right:auto;top:0;width:168px}.subject-course-sidebar.is-collapsed .subject-resource-nav{gap:4px;margin-top:0}.subject-course-sidebar.is-collapsed .subject-resource-group{margin-top:0}.subject-course-sidebar.is-collapsed .subject-resource-nav>div>a{justify-content:center;min-height:38px;padding:0}.subject-course-sidebar.is-collapsed .subject-resource-nav>div>a svg{font-size:.92rem}:root.dark .subject-course-sidebar,:root.dark .subject-switcher summary,:root.dark .subject-switcher-options{background:var(--card)}:root.dark .subject-course-sidebar{border-right-color:#242426}.subject-switcher summary{box-sizing:border-box;width:100%}@media(max-width:820px){.subject-course-sidebar{display:none}}.subject-activity-shell{min-height:650px;background:var(--card)}.reader-layout{height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden}.reader-layout>.academy-nav,.reader-layout>.app-navigation,.reader-layout>.progress-strip,.reader-layout>.student-breadcrumbs{flex:0 0 auto}.reader-layout>.app-route-stage{box-sizing:border-box;flex:1 1 auto;min-height:0;overflow:hidden;padding-top:0}.reader-layout>.app-route-stage>.subject-activity-shell{box-sizing:border-box;height:100%;min-height:0;overflow:hidden}.subject-activity-layout{width:100%;grid-template-columns:var(--course-rail-width) minmax(0,1fr);margin:0;background:var(--card)}.subject-activity-layout.menu-collapsed{grid-template-columns:var(--course-rail-collapsed) minmax(0,1fr)}.subject-activity-content{box-sizing:border-box;min-width:0;width:100%;margin-left:0;padding:0 var(--activity-content-gutter,var(--content-gutter)) 76px 0;transition:width .24s ease,margin-left .24s ease}.subject-activity-content:has(>.note-reader-shell),.subject-activity-content:has(>.flashcard-reader-shell),.subject-activity-content:has(>.platform-shell),.subject-activity-content:has(>.practice-page){--activity-content-gutter:24px}.subject-activity-layout.menu-collapsed .subject-activity-content{width:100%;margin-left:0}.subject-activity-content:has(>.platform-shell){padding-right:0}.subject-activity-content>.platform-shell{box-sizing:border-box;width:min(var(--layout-max),calc(100% - 102px));margin:0 auto;padding:40px 0 76px}.subject-activity-content>.note-reader-shell{width:100%;margin:0;padding:0;grid-template-columns:var(--topic-rail-width) minmax(0,1fr);gap:40px;transition:grid-template-columns .24s ease,gap .24s ease}.subject-activity-content>.note-reader-shell:not(.topics-hidden) .note-reader{width:min(100%,var(--reading-width));justify-self:center}.subject-activity-content>.note-reader-shell.topics-hidden{grid-template-columns:44px minmax(0,1fr);gap:24px}.subject-activity-content>.note-reader-shell.topics-hidden .note-reader{width:min(100%,1020px);justify-self:center}.subject-activity-content>.flashcard-reader-shell{width:100%;margin:0;padding:0;grid-template-columns:var(--topic-rail-width) minmax(0,1fr);gap:40px}.subject-activity-content>.flashcard-reader-shell:not(.topics-hidden) .recall-page{width:min(100%,var(--reading-width));justify-self:center}.subject-activity-content>.practice-page{box-sizing:border-box;width:min(var(--layout-max),calc(100% - 102px));min-height:650px;margin:0 auto;border:0;background:var(--bg-alt)}.subject-activity-content .practice-topbar{position:static}.subject-activity-content>.practice-page{padding:40px 0 60px}.practice-session-shell,.practice-session-shell .subject-activity-layout,.practice-session-shell .subject-activity-content,.practice-session-shell .practice-page{min-height:100dvh}.practice-session-shell .subject-activity-layout{display:block;width:100%;margin:0}.practice-session-shell .subject-activity-content{width:100%;margin:0;padding:0;background:var(--bg-alt)}.practice-session-shell .subject-activity-content>.practice-page{width:100%;margin:0;padding:0 0 60px}.practice-session-shell .practice-topbar{grid-template-columns:1fr auto 1fr}.practice-session-shell .practice-topbar>div{padding-left:0;text-align:center}.subject-activity-content .practice-library .workspace-heading .eyebrow,.subject-activity-content .practice-library .builder-heading .eyebrow{color:var(--forge-accent)}.subject-activity-content .practice-library .platform-button.primary{background:linear-gradient(135deg,var(--forge-accent),var(--forge-accent-strong));border-color:transparent}.subject-activity-content .eyebrow,.subject-activity-content .workspace-kicker{color:var(--forge-accent)}.subject-activity-content .math-index-hero header .eyebrow,.subject-activity-content .math-topic-browser-heading .eyebrow{color:var(--forge-accent)}.subject-activity-content .subject-notes-page>header{border-bottom-color:var(--forge-accent)}:root.dark .subject-activity-shell,:root.dark .subject-activity-layout{background:var(--card)}.reader-layout .subject-activity-shell,.reader-layout .subject-activity-layout{box-sizing:border-box;height:100%;min-height:0;overflow:hidden}.reader-layout .subject-activity-content{box-sizing:border-box;position:relative;height:100%;min-height:0;overflow:hidden;padding-bottom:0}.note-reader-aside{margin-top:0;padding-top:20px}.flashcard-reader-aside{margin-top:-46px;padding-top:20px}.subject-activity-content>.note-reader-shell .note-reader{padding-top:20px}.reader-layout .subject-activity-content>.note-reader-shell,.reader-layout .subject-activity-content>.flashcard-reader-shell{box-sizing:border-box;height:100%;min-height:0;overflow:hidden}.reader-layout .subject-activity-content .note-reader-aside-content,.reader-layout .subject-activity-content .flashcard-reader-aside-content{height:calc(100% - 46px);max-height:none}.reader-layout .flashcard-reader-aside{top:0;min-height:0;overflow:visible}.reader-layout .flashcard-reader-aside-content{position:static;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}.reader-layout .flashcard-reader-aside-content::-webkit-scrollbar,.reader-layout .recall-page::-webkit-scrollbar{display:none}.reader-layout .recall-page{box-sizing:border-box;height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:80px;scrollbar-width:none}.reader-layout .note-reader-aside,.reader-layout .flashcard-reader-aside{z-index:2}.note-reader-shell:not(.topics-hidden) .note-topics-toggle,.flashcard-reader-shell:not(.topics-hidden) .note-topics-toggle{position:relative;z-index:5}.note-topics-tooltip{position:absolute;z-index:20;left:calc(100% + 13px);top:50%;min-width:-moz-max-content;min-width:max-content;padding:11px 14px;border-radius:9px;background:#303030;color:#fff;box-shadow:0 10px 25px #14141833;font:100 .68rem/1.25 JakartaSans;opacity:0;pointer-events:none;transform:translate(7px,-50%);transition:opacity .14s ease,transform .14s ease}.note-topics-tooltip:before{content:"";position:absolute;left:-6px;top:50%;width:12px;height:12px;border-radius:2px;background:#303030;transform:translateY(-50%) rotate(45deg)}.note-topics-toggle:hover .note-topics-tooltip,.note-topics-toggle:focus-visible .note-topics-tooltip{opacity:1;transform:translateY(-50%)}@media(min-width:821px){.subject-activity-content .note-reader-aside,.subject-activity-content .flashcard-reader-aside{box-sizing:border-box;margin-top:0;padding:20px 20px 0}.subject-activity-content .note-reader-aside-heading,.subject-activity-content .flashcard-reader-aside-heading{margin:0 0 14px}.subject-activity-content .note-reader-aside-content,.subject-activity-content .flashcard-reader-aside-content{width:100%;padding-right:0}}@media(max-width:820px){.subject-activity-content>.platform-shell,.subject-activity-content>.practice-page{width:100%}}@media(max-width:900px){.subject-activity-layout{grid-template-columns:188px minmax(0,1fr)}.subject-activity-content{width:100%;margin-left:0;padding-right:18px}.subject-activity-content>.note-reader-shell{grid-template-columns:200px minmax(0,1fr);gap:24px}}@media(max-width:820px){.subject-activity-layout,.subject-activity-layout.menu-collapsed{grid-template-columns:1fr}.subject-activity-content,.subject-activity-layout.menu-collapsed .subject-activity-content{width:calc(100% - 28px);margin:0 auto;padding-top:0}.reader-layout .subject-activity-layout{height:100%}.note-reader-aside,.flashcard-reader-aside{margin-top:0;padding-top:18px}.subject-activity-content>.note-reader-shell,.subject-activity-content>.flashcard-reader-shell{display:flex;grid-template-columns:1fr;flex-direction:column}.reader-layout .flashcard-reader-aside{flex:0 0 auto;overflow:visible}.reader-layout .flashcard-reader-aside-content{height:auto;overflow:visible}.reader-layout .recall-page{flex:1 1 auto;height:auto;padding-right:0;padding-bottom:60px}.subject-activity-content>.practice-page{margin-right:0}}@media(max-width:820px){html:has(.reader-layout),body:has(.reader-layout),body:has(.reader-layout)>#root{height:auto;min-height:100%;overflow-y:visible}.reader-layout{height:auto;min-height:100dvh;overflow:visible}.reader-layout>.app-route-stage{flex:0 0 auto;overflow:visible}.reader-layout>.app-route-stage>.subject-activity-shell,.reader-layout .subject-activity-shell,.reader-layout .subject-activity-layout,.reader-layout .subject-activity-content,.reader-layout .subject-activity-content>.note-reader-shell,.reader-layout .subject-activity-content>.flashcard-reader-shell,.reader-layout>.app-route-stage>.note-reader-shell{height:auto;min-height:0;overflow:visible}.reader-layout .note-reader-aside-content,.reader-layout .flashcard-reader-aside-content,.reader-layout .note-reader,.reader-layout .recall-page{height:auto;max-height:none;overflow:visible;overscroll-behavior:auto;-webkit-overflow-scrolling:auto}.reader-layout .note-reader,.reader-layout .recall-page{padding-bottom:max(80px,calc(60px + env(safe-area-inset-bottom)))}.reader-layout .note-reader-aside,.reader-layout .flashcard-reader-aside{box-sizing:border-box;padding-top:18px}.reader-layout .subject-activity-content>.note-reader-shell,.reader-layout .subject-activity-content>.flashcard-reader-shell{gap:24px}.reader-layout .note-reader-aside-content,.reader-layout .flashcard-reader-aside-content{align-items:stretch;width:100%;padding-right:0}.reader-layout .flashcard-reader-aside-heading{justify-content:center;margin:0 0 14px;text-align:center}.reader-layout .flashcard-reader-aside-heading>strong{width:100%;text-align:center}.reader-layout .note-reader-aside-heading .note-topics-toggle,.reader-layout .flashcard-reader-aside-heading .note-topics-toggle{display:none}.reader-layout .note-reader-shell.topics-hidden .note-reader-aside-content,.reader-layout .flashcard-reader-shell.topics-hidden .flashcard-reader-aside-content{visibility:visible;opacity:1;transform:none;pointer-events:auto}.reader-layout .flashcard-topic-outline{box-sizing:border-box;width:100%;max-width:100%;padding-bottom:20px}.reader-layout .note-reader-aside-content .math-reader-year-switcher,.reader-layout .flashcard-reader-aside-content .math-reader-year-switcher{box-sizing:border-box;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:none;margin:10px 0 24px;gap:8px}.reader-layout .note-reader-aside-content .math-reader-year-switcher a,.reader-layout .flashcard-reader-aside-content .math-reader-year-switcher a{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:10px 8px}}@media(prefers-reduced-motion:reduce){.note-topics-tooltip{transition:none}}@media(min-width:821px){.subject-activity-content .note-reader-aside-heading>strong,.subject-activity-content .flashcard-reader-aside-heading>strong,.subject-activity-content .note-reader-aside-content>span,.subject-activity-content .flashcard-reader-aside-content>span{margin-left:4px}.subject-activity-content>.note-reader-shell,.subject-activity-content>.flashcard-reader-shell{transition:none}.subject-activity-content .note-reader-aside-content,.subject-activity-content .flashcard-reader-aside-content{transition:none}.subject-activity-content>.note-reader-shell.topics-hidden .note-reader-aside-content,.subject-activity-content>.flashcard-reader-shell.topics-hidden .flashcard-reader-aside-content{transform:none}.subject-activity-content>.note-reader-shell.topics-hidden .note-reader-aside,.subject-activity-content>.flashcard-reader-shell.topics-hidden .flashcard-reader-aside{position:relative;padding:0;overflow:visible}.subject-activity-content>.note-reader-shell.topics-hidden .note-reader-aside-heading,.subject-activity-content>.flashcard-reader-shell.topics-hidden .flashcard-reader-aside-heading{position:absolute;top:20px;right:0;width:0;min-height:32px;margin:0}.subject-activity-content>.note-reader-shell.topics-hidden .note-topics-toggle,.subject-activity-content>.flashcard-reader-shell.topics-hidden .note-topics-toggle{position:absolute;top:0;right:0;width:32px;height:32px;transform:translate(50%)}}:root{--primary:var(--forge-accent,#7c3aed);--primary-dark:var(--forge-accent-strong,#5b21b6);--secondary:#f3efff;--bg:#ffffff;--bg-alt:#f7f7f9;--card:#ffffff;--border:#d8d9de;--text:#24252d;--text-secondary:#6c707a;--green:var(--forge-success,#21a366)}:root.dark{--primary:var(--forge-accent,#7c3aed);--primary-dark:var(--forge-accent-strong,#6d28d9);--secondary:#2f1b56;--bg:#141419;--bg-alt:#1b1b22;--card:#141419;--border:#34343d;--text:#f1f1f4;--text-secondary:#b8b8c2;--green:var(--forge-success,#21a366)}html{scroll-behavior:auto}body{margin:0;background:var(--bg);color:var(--text);font-family:JakartaSans,system-ui,sans-serif;font-weight:100}html:has(.app-navigation),body:has(.app-navigation),.app-navigation-inner{scrollbar-width:none}html:has(.app-navigation)::-webkit-scrollbar,body:has(.app-navigation)::-webkit-scrollbar,.app-navigation-inner::-webkit-scrollbar{display:none}.student-breadcrumbs{border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--card) 97%,var(--primary-light))}.student-breadcrumbs ol{box-sizing:border-box;width:min(1120px,calc(100% - 40px));min-height:38px;display:flex;align-items:center;gap:7px;margin:0 auto;padding:0;overflow-x:auto;list-style:none;scrollbar-width:none}.student-breadcrumbs ol::-webkit-scrollbar{display:none}.student-breadcrumbs li{display:flex;align-items:center;gap:7px;flex:0 0 auto;color:var(--text-secondary);font-size:.58rem}.student-breadcrumbs li>svg{opacity:.48;font-size:.66rem}.student-breadcrumbs a,.student-breadcrumbs span{display:inline-flex;align-items:center;gap:6px;color:inherit;font-family:JakartaSansBold}.student-breadcrumbs a:hover{color:var(--accent-text)}.student-breadcrumbs span[aria-current=page]{color:var(--text)}.student-breadcrumbs a>svg,.student-breadcrumbs span>svg{font-size:.68rem}button,input,select,textarea{font-family:inherit}a{text-decoration:none}.min-h-screen{display:flex;flex-direction:column;min-height:100vh}.app-navigation{border-bottom:1px solid var(--border);background:var(--card)}.app-navigation-inner{width:min(1120px,calc(100% - 40px));height:44px;margin:0 auto;display:flex;align-items:stretch;gap:4px}.app-navigation a,.app-navigation-disabled{display:flex;align-items:center;gap:6px;padding:0 14px;border-bottom:3px solid transparent;color:var(--text-secondary);font:100 .66rem JakartaSans;white-space:nowrap}.app-navigation a:hover,.app-navigation a.active{color:var(--accent-text);background:transparent;border-bottom-color:var(--primary)}.app-navigation-disabled{opacity:.48;cursor:default}.progress-strip{min-height:62px;border-bottom:1px solid var(--border);background:var(--card)}.progress-strip-inner{width:min(1120px,calc(100% - 40px));min-height:62px;margin:0 auto;display:grid;grid-template-columns:1fr auto 340px;align-items:center;gap:25px}.progress-strip p{margin:0;color:var(--text);font:100 .82rem JakartaSansBold}.streak-stat{display:flex;align-items:center;gap:7px;padding-right:20px;border-right:1px solid var(--border);color:var(--text-secondary)}.streak-stat strong{color:var(--text);font:100 1.25rem JakartaSansBold}.streak-stat span{font-size:.58rem}.level-stat{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;color:var(--text-secondary)}.level-stat>div>span{display:block;margin-bottom:5px;color:var(--text);font:100 .62rem JakartaSansBold}.level-stat small{font-size:.57rem}.level-track{height:6px;border-radius:6px;background:var(--bg-alt);overflow:hidden}.level-track i{display:block;height:100%;background:var(--primary)}.footer{margin-top:auto!important;background:var(--bg-alt);border-top:1px solid var(--border)!important}.footer-content{max-width:920px!important;gap:70px!important}.footer-col{width:160px!important}.footer-col h4{font-size:.7rem!important}.footer-col a{font-size:.62rem!important;color:var(--text-secondary)!important}.footer-bottom{font-size:.58rem!important}.notes-intro,.mock-intro,.pastpapers-intro{background:var(--bg)!important;padding-top:85px!important;border-bottom:1px solid var(--border)}.notes-intro-title,.mock-intro-title,.pastpapers-title{font-family:JakartaSansBold!important;font-weight:100!important;letter-spacing:-.04em!important}.notes-intro-btn,.mock-intro-btn,.more-btn{border-radius:4px!important;background:var(--primary)!important;color:#fff!important}.notes-love-card,.mock-benefit-card,.subject-card,.pastpaper-card{border-radius:4px!important;box-shadow:none!important;border:1px solid var(--border)!important}.notes-love-grid,.mock-benefits-grid{gap:1px!important}.subjects-page,.flashcards-page,.pastpapers-page{background:var(--bg)!important}.subject-card:hover,.notes-love-card:hover,.mock-benefit-card:hover{transform:none!important;background:var(--bg-alt)!important}@media(max-width:820px){.app-navigation-inner{box-sizing:border-box;width:100%;justify-content:center;overflow-x:auto;padding:0 10px}.app-navigation a{padding:0 12px}.student-breadcrumbs ol{width:100%;padding:0 14px}.progress-strip-inner{width:calc(100% - 28px);grid-template-columns:1fr auto}.level-stat{display:none}.footer-content{gap:25px!important;flex-wrap:wrap}.footer-col{width:125px!important}}@media(max-width:520px){.progress-strip{display:none}}:root{--forge-neutral-0: #ffffff;--forge-neutral-100: #fbfbfc;--forge-neutral-200: #f5f5f7;--forge-neutral-300: #e8e8ed;--forge-neutral-400: #d1d2da;--forge-neutral-500: #9a9ca8;--forge-neutral-600: #696c7a;--forge-neutral-700: #4c4f5c;--forge-neutral-800: #30323c;--forge-neutral-900: #1f212a;--forge-violet-100: #f3efff;--forge-violet-200: #e4d7ff;--forge-violet-300: #c4b5fd;--forge-violet-400: #8b5cf6;--forge-violet-500: #7c3aed;--forge-violet-600: #6d28d9;--forge-violet-700: #4c1d95;--forge-accent: #7c3aed;--forge-accent-strong: #5b21b6;--forge-accent-soft: #f3efff;--forge-accent-highlight: #6d28d9;--forge-success: #21a366;--forge-success-strong: #147a49;--forge-success-soft: #e5f7ee;--forge-blue-100: #edf3ff;--forge-blue-200: #b9d0ff;--forge-blue-300: #7ba9f7;--forge-blue-400: #4277dc;--forge-blue-500: #285bbd;--forge-blue-600: #193e82;--forge-blue-700: #102651;--forge-cyan-100: #e6f8fa;--forge-cyan-200: #b9e9ed;--forge-cyan-300: #83d7df;--forge-cyan-400: #3eb7c4;--forge-cyan-500: #218b98;--forge-lime-100: #f2f9d8;--forge-lime-200: #dceba5;--forge-lime-300: #bdd765;--forge-lime-400: #95ae37;--forge-lime-500: #718525;--forge-green-100: #e7f7ed;--forge-green-200: #bee9ce;--forge-green-300: #83d4a4;--forge-green-400: #3aa36c;--forge-green-500: #217d51;--forge-green-600: #175937;--forge-orange-100: #fff0e7;--forge-orange-200: #f8c6a8;--forge-orange-300: #ee9667;--forge-orange-400: #d96b35;--forge-orange-500: #ad4a20;--forge-red-100: #fff0f0;--forge-red-200: #ffc5c5;--forge-red-300: #ed8e92;--forge-red-400: #cf4d58;--forge-red-500: #a83440}:root.dark{--forge-accent: #a276f2;--forge-accent-strong: #8258d5;--forge-accent-soft: #2d2145;--forge-accent-highlight: #b596ff;--forge-success-soft: #173c2b}.app-route-stage{box-sizing:border-box}.app-route-stage-flush{padding-top:0}:root{--bg: #ffffff;--background: #ffffff;--card: #ffffff;--bg-alt: var(--forge-neutral-200);--secondary: var(--forge-violet-200);--primary: var(--forge-accent);--primary-dark: var(--forge-accent-strong);--primary-light: var(--forge-accent-soft);--accent-text: var(--forge-violet-600);--accent-fill: var(--primary);--accent-fill-text: #ffffff;--highlight: var(--forge-accent-highlight);--text: var(--forge-neutral-900);--text-secondary: var(--forge-neutral-600);--border: var(--forge-neutral-300);--border-2: var(--forge-neutral-400);--border-light: var(--forge-neutral-300);--on-accent: #ffffff;--surface-hover: var(--forge-neutral-200);--surface-hover-subtle: color-mix(in srgb, var(--text) 3%, transparent);--surface-hover-strong: var(--forge-neutral-300);--surface-hover-accent: color-mix(in srgb, var(--primary) 8%, var(--forge-neutral-200));--resource-hero-start: color-mix(in srgb, var(--primary-light) 56%, var(--card));--resource-hero-mid: color-mix(in srgb, var(--primary) 6%, var(--card));--resource-hero-glow: color-mix(in srgb, var(--primary) 17%, transparent);--resource-hero-glow-soft: color-mix(in srgb, var(--forge-blue-300) 10%, transparent);--hero-surface-gradient: radial-gradient(circle at 8% 14%, color-mix(in srgb, var(--primary) 18%, transparent), transparent 34%), radial-gradient(circle at 82% 28%, color-mix(in srgb, var(--forge-blue-300) 11%, transparent), transparent 36%), linear-gradient(135deg, color-mix(in srgb, var(--primary-light) 72%, var(--card)) 0%, var(--card) 48%, color-mix(in srgb, var(--forge-blue-100) 55%, var(--card)) 100%);--hero-heading-gradient: linear-gradient(112deg, var(--text) 22%, var(--primary) 72%, var(--forge-blue-500));--ui-radius-sm: 10px;--ui-radius: 12px;--ui-radius-lg: 16px;--type-display: clamp(3rem, 5vw, 3.75rem);--type-page-title: clamp(2rem, 3vw, 2.25rem);--type-section-title: clamp(1.75rem, 3vw, 2.25rem);--type-subtitle: 1.35rem;--type-card-title: 1rem;--type-body-lg: 1.05rem;--type-body: 1rem;--type-small: .875rem;--type-micro: .75rem;--layout-max: 1200px;--course-rail-width: 210px;--course-rail-collapsed: 56px;--topic-rail-width: 330px;--reading-width: 760px;--content-gutter: 48px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--shadow-raised: 0 12px 34px rgb(35 28 66 / 10%)}:root.dark{--bg: #0f0f10;--background: #0f0f10;--card: #181819;--bg-alt: #202022;--secondary: #2b2b2e;--primary: var(--forge-accent);--primary-dark: var(--forge-accent-strong);--primary-light: var(--forge-accent-soft);--accent-text: var(--primary);--accent-fill: var(--primary);--accent-fill-text: #ffffff;--highlight: var(--forge-accent-highlight);--text: #f4f4f5;--text-secondary: #b5b5b8;--border: #343437;--border-2: #4b4b4f;--border-light: #343437;--on-accent: #ffffff;--surface-hover: #2a2a2d;--surface-hover-strong: #343438;--surface-hover-accent: color-mix(in srgb, var(--primary) 18%, #29292b);--control-border: var(--border);--control-border-hover: var(--border-2);--control-surface: color-mix(in srgb, var(--card) 84%, var(--bg-alt));--resource-hero-start: color-mix(in srgb, var(--primary-light) 92%, var(--card));--resource-hero-mid: color-mix(in srgb, var(--primary) 15%, var(--card));--resource-hero-glow: color-mix(in srgb, var(--primary) 27%, transparent);--resource-hero-glow-soft: color-mix(in srgb, var(--forge-blue-300) 15%, transparent);--hero-surface-gradient: radial-gradient(circle at 8% 14%, color-mix(in srgb, var(--primary) 29%, transparent), transparent 35%), radial-gradient(circle at 82% 28%, color-mix(in srgb, var(--forge-blue-300) 18%, transparent), transparent 38%), linear-gradient(135deg, color-mix(in srgb, var(--primary-light) 90%, var(--card)) 0%, color-mix(in srgb, var(--primary) 12%, var(--card)) 48%, var(--bg) 100%);--hero-heading-gradient: linear-gradient(112deg, var(--text) 18%, var(--primary) 68%, var(--forge-blue-300))}button,input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{border-radius:var(--ui-radius)}a,button,[role=button],input,select,textarea{transition:color var(--ui),background-color var(--ui),border-color var(--ui),box-shadow var(--ui),filter var(--ui),transform var(--ui)}:is(.back-link,.text-link,.tile-action,.community-text-link,.footer-col a,.markdown-content a,.note-reader-aside a,.note-reader-section-list a,.note-page-navigation a):hover{color:var(--accent-text)}:is(.platform-button.primary,.blue-action,.row-start,.login-primary,.account-gate-submit,.community-primary,.home-primary,.notes-intro-btn,.mock-intro-btn,.more-btn):not(:disabled):hover{background:var(--primary-dark);border-color:var(--primary-dark);filter:none;transform:none}:is(.platform-button.secondary,.outline-action,.community-secondary,.home-secondary,.account-gate-register,.login-secondary):not(:disabled):hover{background:var(--bg-alt);border-color:var(--border-2);color:inherit;filter:none}button:focus-visible,a:focus-visible,[role=button]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 32%,transparent);outline-offset:3px}:is(.academy-login,.account-gate-form,.community-hero-card,.join-hero-note,.hero-learning-preview,.question-shell,.result-card,.self-mark-card,.paper-collection,.markdown-figure,.note-feedback,.note-build-links>a,.history-review-dialog,.class-dialog,.class-delete-dialog,.course-editor-dialog,.study-check-dialog,.homework-delete-dialog,.flashcard-face,.recall-card-face,.recall-modal>section){border-radius:var(--ui-radius-lg)}:is(.platform-button,.outline-action,.blue-action,.row-start,.login-primary,.login-secondary,.account-gate-submit,.account-gate-register,.community-primary,.community-secondary,.home-primary,.home-secondary,.notes-intro-btn,.mock-intro-btn,.more-btn,.paper-subjects button,.paper-search,.paper-select select){border-radius:var(--ui-radius)}:is(.assignment-row-actions a,.assignment-row-actions button,.class-edit-button,.class-icon-options button,.history-card-menu>button,.history-card-menu [role=menuitem],.paper-file,.paper-file-icon){border-radius:var(--ui-radius-sm)}:is(.account-status,.profile-class-list,.class-dialog-preview,.course-choice-list label,.chapter-selector,.test-personalisation>section,.practice-chapters,.delete-history-dialog){border-radius:var(--ui-radius)}:is(.notes-subject-grid,.flash-subject-grid,.flash-chapter-grid,.analytics-summary,.question-metric-list,.student-response-table){overflow:hidden;border-radius:var(--ui-radius-lg)}:is(.resource-card,.library-card,.notes-subject,.subject-note-list>a,.topic-index-row,.flash-subject-card,.flash-chapter-card,.paper-item,.note-subchapter-links a,.question-metric-list>button):hover{background-color:var(--surface-hover)}.notes-subject-icon,.practice-subject-icon{background:var(--subject-secondary, var(--secondary))}.flash-library-summary,.flash-subject-icon,.flash-chapter-number{background:var(--deck-secondary, var(--secondary))}.home-hero{position:relative;isolation:isolate}.home-hero:before{content:"";position:absolute;z-index:-2;top:0;bottom:0;left:50%;width:100vw;transform:translate(-50%);background:var(--hero-surface-gradient)}.home-hero:after{content:"";position:absolute;z-index:-1;width:22rem;height:22rem;top:-8rem;left:-7rem;border-radius:50%;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--primary) 18%,transparent),transparent 68%);filter:blur(10px)}.home-hero h1{background:none;color:var(--text)}@media(max-width:700px){.home-hero:before{left:50%;width:100vw}.home-hero:after{width:15rem;height:15rem;top:-5rem;left:-5rem}}.notes-library-header,.flash-library-header{position:relative;isolation:isolate}.notes-library-header:before,.flash-library-header:before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translate(-50%);pointer-events:none;background:var(--hero-surface-gradient);opacity:1}@media(max-width:700px){.notes-library-header:before,.flash-library-header:before{left:50%;width:100vw}}.platform-shell{padding-top:auto}.platform-shell.teacher-page,.platform-shell.teacher-content-page,.teacher-page .teacher-header,.teacher-content-page .teacher-content-header{padding-top:50px}.platform-shell .resource-page-hero,.flash-library-page .resource-page-hero{min-height:360px;padding-top:24px;padding-bottom:30px}.flash-library-page{padding-top:0}.platform-shell .resource-page-hero:before,.flash-library-page .resource-page-hero:before{top:0;bottom:-130px;left:50%;width:100vw;transform:translate(-50%);background:var(--hero-surface-gradient);opacity:1;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 62%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 62%,transparent 100%)}@media(max-width:720px){.flash-library-page{padding-top:0}.platform-shell .resource-page-hero:before,.flash-library-page .resource-page-hero:before{bottom:-90px}}.flash-library-page:not(.flash-library-landing) .flash-library-header:before{content:none}.academy-nav{position:sticky;top:0;z-index:1200;border-bottom-color:color-mix(in srgb,var(--border) 76%,transparent);background:color-mix(in srgb,var(--card) 92%,transparent);box-shadow:0 1px #ffffff73,0 8px 26px #221a400d;-webkit-backdrop-filter:blur(14px) saturate(1.15);backdrop-filter:blur(14px) saturate(1.15)}.nav-brand{position:relative;z-index:3;transition:none}.nav-brand:hover{transform:none}.nav-search{border-color:var(--border-2);border-radius:var(--ui-radius);background:color-mix(in srgb,var(--card) 90%,transparent)}.explore-button,.account-button,.nav-login{border-radius:var(--ui-radius-sm);padding-inline:11px}.account-button:hover,.nav-login:hover{background:var(--surface-hover)}.explore-menu,.account-menu,.nav-search-results{border-radius:var(--ui-radius);box-shadow:var(--shadow-md, 0 12px 30px rgb(30 20 60 / 12%))}.explore-feature-column>span.explore-menu-disabled{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border-radius:5px;color:var(--text);font-size:.72rem;letter-spacing:normal;text-align:left;text-transform:none}.app-navigation{background:color-mix(in srgb,var(--card) 96%,var(--bg-alt))}.app-navigation-inner{gap:8px}.app-navigation a,.app-navigation-disabled{position:relative;border-bottom:0}.app-navigation a:after{content:"";position:absolute;left:13px;right:13px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:var(--primary);transform:scaleX(0);transition:transform var(--ui)}.app-navigation a:hover,.app-navigation a.active{border-bottom-color:transparent;background:var(--surface-hover-accent)}.app-navigation a:hover:after,.app-navigation a.active:after{transform:scaleX(1)}.subject-verified{display:inline-block;flex:0 0 auto;width:.88em;height:.88em;margin-left:2px;-o-object-fit:contain;object-fit:contain;vertical-align:-.08em}.explore-subject-name{display:inline-flex;align-items:center;gap:2px}.notes-subject-disabled{opacity:.42;cursor:default}.notes-subject-disabled:hover{background:transparent}.notes-subject h2{display:flex;align-items:center;gap:2px}.practice-subject h2,.flash-subject-card h2{font-family:JakartaSansBold;font-weight:100}.practice-subject p,.practice-subject-action,.flash-subject-card>p,.flash-subject-card footer{font-family:JakartaSans;font-weight:400}.dark :is(.platform-button.primary,.blue-action,.row-start,.login-primary,.account-gate-submit,.community-primary,.home-primary,.notes-intro-btn,.mock-intro-btn,.more-btn){color:var(--on-accent)!important}.dark :is(.notes-subject-icon,.practice-subject-icon,.path-node,.note-status.published,.note-build-icon,.community-card-icon){background:color-mix(in srgb,var(--subject-color,var(--primary)) 24%,var(--card));color:color-mix(in srgb,var(--subject-color,var(--primary)) 38%,#fff)}.dark :is(.flash-subject-icon,.flash-chapter-number){background:color-mix(in srgb,var(--deck-colour,var(--primary)) 24%,var(--card));color:color-mix(in srgb,var(--deck-colour,var(--primary)) 38%,#fff)}.dark :is(.practice-subject-action,.flash-subject-card>small,.flash-subject-card footer){color:color-mix(in srgb,var(--subject-color,var(--deck-colour,var(--primary))) 38%,#fff)}.dark :is(.math-reader-year-switcher a.active,.note-reader-section-list>a[aria-current=page] b){color:var(--bg)!important}.dark .markdown-image-pending{color:var(--bg)!important}:root.dark :is(.platform-button.secondary,.outline-action,.community-secondary,.home-secondary,.account-gate-register,.login-secondary,.assignment-row-actions a,.assignment-row-actions button,.class-icon-options button){border-color:var(--control-border);background:var(--control-surface)}:root.dark .home-secondary{border-color:var(--primary)}:root.dark :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){border-color:var(--control-border);background:var(--control-surface)}:root.dark :is(.auth-input-wrap,.account-gate-input,.password-settings-form label>div,.student-search-wrap,.response-toolbar label){border-color:var(--control-border);background:var(--control-surface)}:root.dark :is(.platform-button.secondary,.outline-action,.community-secondary,.home-secondary,.account-gate-register,.login-secondary,.assignment-row-actions a,.assignment-row-actions button,.class-icon-options button):not(:disabled):hover{border-color:var(--control-border-hover);background:var(--surface-hover)}:is(.auth-input-wrap,.account-gate-input,.password-settings-form label>div) input{border-radius:0}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill{-webkit-text-fill-color:var(--text);caret-color:var(--text);box-shadow:0 0 0 1000px var(--card) inset;-webkit-transition:background-color 9999s ease-out 0s;transition:background-color 9999s ease-out 0s}:root.dark input:-webkit-autofill,:root.dark input:-webkit-autofill:hover,:root.dark input:-webkit-autofill:focus,:root.dark textarea:-webkit-autofill,:root.dark select:-webkit-autofill{box-shadow:0 0 0 1000px var(--control-surface) inset}.platform-shell.account-gate{display:grid;min-height:520px;padding:50px 0 80px;place-items:start center}:is(.academy-login,.account-gate-form){border:1px solid color-mix(in srgb,var(--border) 84%,var(--primary));background:linear-gradient(145deg,color-mix(in srgb,var(--card) 94%,var(--primary-light)),var(--card) 46%)}@media(max-width:700px){.academy-nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--card)}}.explore-button:hover,.explore-menu a:hover,.account-menu a:hover,.account-menu button:hover,.nav-search-results a:hover{background:var(--surface-hover-subtle);color:inherit}.explore-button.active{background:color-mix(in srgb,var(--forge-accent) 10%,var(--card));color:var(--forge-accent)}.subject-overview-sidebar nav a:hover{background:var(--surface-hover);color:var(--subject-color)}.subject-resource-grid>a:hover{border-color:var(--border-2);background:var(--surface-hover)}:root.dark .subject-framework-card.step-1{background:color-mix(in srgb,#3a956a 18%,var(--card))}:root.dark .subject-framework-card.step-2{background:color-mix(in srgb,#438fae 18%,var(--card))}:root.dark .subject-framework-card.step-3{background:color-mix(in srgb,#a6a145 18%,var(--card))}.subject-overview-locked-link{display:flex;align-items:center;gap:9px;min-height:39px;padding:0 10px;border-radius:7px;color:var(--text-secondary);font-size:.68rem;opacity:.72}.subject-resource-grid>.subject-resource-locked{min-height:190px;display:flex;flex-direction:column;align-items:flex-start;padding:23px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--bg-alt) 76%,var(--card));color:var(--text-secondary)}.subject-resource-locked>svg{color:var(--text-secondary);font-size:1.1rem}.subject-resource-locked h3{margin:22px 0 7px;color:var(--text);font-size:1rem}.subject-resource-locked p{margin:0;font-size:.67rem;line-height:1.55}.subject-resource-locked>span{margin-top:auto;font:100 .62rem JakartaSansBold}@media(max-width:540px){.subject-resource-grid>.subject-resource-locked{min-height:155px}}:root.dark{--secondary: #202022;--surface-raised: #202022;--surface-soft: #202022;--shadow-raised: none;--shadow-sm: none;--shadow-md: none}:root.dark .min-h-screen{background:var(--bg)}:root.dark .subject-activity-shell{background:var(--bg)}:root.dark .academy-nav,:root.dark .app-navigation{background:var(--bg);border-bottom-color:#242426}:root.dark .subject-activity-layout{background:var(--bg)}:root.dark .subject-activity-content{background:var(--bg)}:root.dark .note-reader-aside,:root.dark .flashcard-reader-aside{background:var(--card)}:root.dark .note-reader{background:var(--bg-alt)}:root.dark .note-reader>header{background:var(--surface-soft)}:root.dark .markdown-content{background:var(--bg-alt)}:is(.app-navigation a:hover,.app-navigation a.active){background:transparent!important}:root.dark :is(.explore-button:hover,.account-button:hover,.nav-login:hover){background:transparent!important}:root.dark :is(.app-navigation a,.nav-zone-right>a,.nav-login,.account-button,.explore-button){font-family:JakartaSans;font-weight:100}:root.dark :is(.subject-course-sidebar,.my-course-card,.community-team-grid,.join-hero-note,.ambassadors-hero-card,.hero-learning-preview,.method-steps article,.home-get-started,.teacher-stats,.analytics-summary,.question-metric-list,.assignment-form,.teacher-note-form,.test-personalisation>section,.chapter-selector,.markdown-callout,.note-reader>header,.recall-history,.flashcard-topic-card){box-shadow:none}:root.dark :is(.subject-course-sidebar,.my-course-card,.join-hero-note,.ambassadors-hero-card,.hero-learning-preview,.method-steps article,.home-get-started,.assignment-form,.teacher-note-form,.test-personalisation>section,.chapter-selector,.markdown-callout,.note-reader>header){border-color:var(--border)}:root.dark :is(.nav-search-results,.explore-menu,.account-menu,.subject-switcher-options,.academy-login,.class-dialog,.class-delete-dialog,.course-editor-dialog,.study-check-dialog,.homework-delete-dialog,.history-card-menu>[role=menu],.student-quick-panel){box-shadow:none;border:1px solid var(--border)}:root.dark :is(.academy-nav,.app-navigation,.subject-course-sidebar,.subject-switcher-options,.markdown-image-gallery-stage>button,.glossary-tooltip,.topic-image,.profile-avatar,.community-primary,.join-team-grid,.loading-state-art){box-shadow:none!important}.nav-search{border:1px solid color-mix(in srgb,var(--text) 16%,transparent);border-radius:999px}.explore-button,.nav-search input{font-family:JakartaSans;font-weight:100}:is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea):focus,:is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea):focus-visible{outline:none!important;box-shadow:none!important;border-color:var(--border)!important}:is(.nav-search,.notes-search,.math-lesson-search,.paper-search,.account-gate-input,.auth-input-wrap,.password-settings-form label>div,.student-search-wrap,.response-toolbar label):focus-within{outline:none!important;box-shadow:none!important;border-color:var(--border)!important}.login-backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:18px;background:#13141fad;z-index:3000}.academy-login{width:min(440px,100%);max-height:calc(100vh - 30px);overflow:auto;position:relative;padding:34px;border-radius:8px;background:var(--card);box-shadow:0 24px 70px #00000047;color:var(--text)}.login-close{position:absolute;right:18px;top:18px;display:grid;place-items:center;background:none;border:0;color:var(--text-secondary);cursor:pointer;font-size:1.2rem}.auth-kicker{color:var(--accent-text);font:100 .66rem JakartaSansBold;text-transform:uppercase;letter-spacing:.1em}.academy-login h2{margin:8px 0 6px;font:100 1.65rem JakartaSansBold;letter-spacing:-.02em}.auth-intro{margin:0 0 22px;font-size:.76rem}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--border);margin-bottom:20px}.auth-tabs button{padding:11px;border:0;border-radius:0!important;border-bottom:3px solid transparent;background:none;color:var(--text-secondary);font:100 .76rem JakartaSansBold;cursor:pointer;filter:none!important;transform:none!important}.auth-tabs button:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 42%,transparent);outline-offset:-3px;border-radius:7px!important}.auth-tabs button.active{color:var(--accent-text);border-bottom-color:var(--primary)}.academy-login label{display:block;position:relative;margin-bottom:16px;color:var(--text);font:100 .7rem JakartaSansBold}.academy-login label>input,.auth-input-wrap{width:100%;height:46px;margin-top:7px;border:1px solid #9b9ea5;border-radius:4px;background:var(--card)}.academy-login label>select{width:100%;height:46px;margin-top:7px;padding:0 12px;border:1px solid #9b9ea5;border-radius:4px;background:var(--card);color:var(--text)}.academy-login label>input{padding:0 12px;font:inherit}.auth-input-wrap{display:flex;align-items:center;gap:8px;padding:0 12px;color:var(--text-secondary)}.auth-input-wrap input{flex:1;height:100%;min-width:0;border:0;outline:0;background:transparent;font:100 .78rem JakartaSans}.academy-login input:focus,.academy-login select:focus,.auth-input-wrap:focus-within{border-color:var(--primary);outline:2px solid color-mix(in srgb,var(--primary) 20%,transparent)}.auth-input-wrap>svg{flex:0 0 auto}.academy-login .password-toggle{position:static;flex:0 0 auto;align-self:stretch;display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:62px;padding:0 4px;margin:0;border:0;background:transparent;color:var(--accent-text);font:inherit;cursor:pointer}.academy-login .password-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:-3px;border-radius:3px}.forgot-password{display:block;margin:-7px 0 15px auto;padding:2px 0;border:0;background:transparent;color:var(--accent-text);font:100 .66rem JakartaSansBold;text-decoration:underline;cursor:pointer}.password-recovery-card{display:grid;grid-template-columns:38px 1fr;gap:13px;margin:20px 0;padding:16px;border:1px solid var(--border);background:var(--bg-alt)}.password-recovery-card>svg{width:22px;height:22px;padding:8px;border-radius:50%;background:var(--accent-fill);color:var(--accent-fill-text)}.password-recovery-card strong{font:100 .72rem JakartaSansBold}.password-recovery-card p{margin:6px 0 0;color:var(--text-secondary);font-size:.66rem;line-height:1.55}.login-secondary{min-height:42px;display:inline-flex;align-items:center;gap:7px;padding:0 14px;border:1px solid var(--border);background:var(--card);color:var(--accent-text);font:100 .68rem JakartaSansBold;cursor:pointer}.auth-error{display:flex;align-items:flex-start;gap:7px;padding:10px;margin-bottom:13px;background:#fff0ee;color:#9b3328;font-size:.7rem}.login-primary{width:100%;height:46px;display:flex;align-items:center;justify-content:center;gap:9px;border-radius:4px;font:100 .76rem JakartaSansBold}.login-primary{border:1px solid var(--primary);background:var(--primary);color:#fff;cursor:pointer}.login-primary:disabled{opacity:.6}.auth-security-note{margin:13px 0 0;text-align:center;font-size:.6rem;line-height:1.5}
