.subject-library-page .library-heading{align-items:flex-end;gap:20px;margin-bottom:30px}.subject-library-page .library-heading h1{font-family:var(--font-display,Georgia,serif);letter-spacing:-.8px;font-size:38px;font-weight:500;line-height:1.25}.library-heading-actions{flex:none;align-items:center;gap:8px;width:auto;display:flex}.subject-library-page .library-toolbar{flex-direction:row;align-items:center;gap:16px;margin-bottom:20px;display:flex}.library-result-count{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.subject-library-page .library-toolbar .search{background:var(--inset);border-radius:6px;width:min(100%,300px);min-width:0;min-height:44px;margin-left:auto;padding:0 5px 0 12px}.subject-library-page .library-toolbar .search input{flex:1;min-width:0;min-height:44px;font-size:14px}.subject-library-page .search input::-webkit-search-cancel-button{appearance:none}.subject-library-page .search>svg{flex:none;width:16px}.subject-library-page .search kbd{border:1px solid var(--line);width:19px;height:21px;color:var(--muted);font:10px var(--font-mono,monospace);border-radius:3px;flex:none;place-items:center;margin-right:7px;display:grid}.library-clear-search{width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;place-items:center;padding:0;display:grid}.library-clear-search:hover{color:var(--ink);background:var(--sheet)}.library-clear-search:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.subject-library-page .subject-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.subject-library-page .subject-card{border:1px solid var(--line);background:var(--shelf);border-radius:9px;flex-direction:column;min-width:0;transition:border-color .2s,transform .2s,background-color .2s;display:flex;overflow:hidden}.subject-library-page .subject-card:hover{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--shelf) 88%,var(--sheet));transform:translateY(-3px)}.subject-library-page .subject-card:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.subject-library-page .subject-card:active{background:var(--sheet);transform:translateY(-1px)}.subject-library-page .subject-card .cover{border-bottom:1px solid var(--line);background:linear-gradient(130deg,color-mix(in srgb,var(--cover-color) 7%,var(--inset)),var(--desk));flex:none;height:168px;position:relative;overflow:hidden}.subject-library-page .cover svg{width:100%;height:100%;color:inherit;opacity:.85;transition:transform .5s cubic-bezier(.22,1,.36,1);display:block}.subject-library-page .subject-card:hover .cover svg{transform:scale(1.05)}.subject-library-page .cover-label{border:1px solid color-mix(in srgb,var(--cover-color) 18%,transparent);background:var(--desk);color:inherit;font:10px/16px var(--font-mono,monospace);letter-spacing:.5px;border-radius:3px;padding:3px 6px;position:absolute;top:15px;left:18px}.subject-library-page .subject-card .card-body{flex-direction:column;flex:1;padding:22px;display:flex}.subject-library-page .card-body h2{min-height:50px;font-family:var(--font-ui,sans-serif);letter-spacing:-.25px;overflow-wrap:anywhere;font-size:18px;font-weight:600;line-height:1.4}.subject-card-meta{justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:24px;display:flex}.subject-library-page .subject-card-meta p{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;margin:0;font-size:11px;line-height:1.6;display:flex}.subject-card-meta p>span{opacity:.6}.subject-card-meta>svg{color:var(--accent);flex:none;transition:transform .2s}.subject-card:hover .subject-card-meta>svg{transform:translate(3px)}.subject-library-page .empty{border-color:var(--line);background:0 0;grid-column:1/-1;padding:48px 24px}.library-archive-count{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto}@media (width>=1600px){.subject-library-page .subject-grid{gap:24px}.subject-library-page .subject-card .cover{height:180px}}@media (width<=1100px){.subject-library-page .subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=767px){.subject-library-page .library-heading{flex-wrap:nowrap;align-items:flex-start;gap:12px;margin-bottom:25px}.subject-library-page .library-heading h1{overflow-wrap:anywhere;font-size:29px;line-height:1.3}.subject-library-page .library-heading-actions{gap:4px}.subject-library-page .library-heading-actions>.button{padding:10px 12px;font-size:12px}.subject-library-page .library-toolbar{flex-wrap:wrap;gap:12px;margin-bottom:18px}.subject-library-page .library-toolbar .search{flex:100%;width:100%;margin-left:0}.subject-library-page .library-toolbar .search input{font-size:16px}.library-result-count{font-size:11px}.subject-library-page .subject-grid{grid-template-columns:minmax(0,1fr);gap:16px}.subject-library-page .subject-card .cover{height:152px}.subject-library-page .subject-card .card-body{padding:20px}.subject-library-page .card-body h2{min-height:0;font-size:18px}.subject-card-meta{padding-top:20px}.subject-library-page .library-heading-actions>.action-menu{flex:none}}@media (prefers-reduced-motion:reduce){.subject-library-page .subject-card,.subject-library-page .cover svg,.subject-card-meta>svg{transition:none}.subject-library-page .subject-card:hover,.subject-library-page .subject-card:active,.subject-library-page .subject-card:hover .cover svg,.subject-card:hover .subject-card-meta>svg{transform:none}}.library-deadlines{margin-top:38px}.library-deadlines-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px;display:flex}.library-deadlines-heading h2{font-family:var(--font-ui,sans-serif);letter-spacing:-.3px;font-size:18px;font-weight:500;line-height:1.4}.library-deadlines-heading>a{min-height:44px;color:var(--accent);white-space:nowrap;align-items:center;gap:8px;padding:8px 0;font-size:12px;display:inline-flex}.library-deadlines-heading>a:hover{color:var(--accent-hover,var(--accent))}.library-deadline-list{border-top:1px solid var(--line)}.library-deadline-row{border-bottom:1px solid var(--line);align-items:center;gap:20px;min-height:84px;padding:17px 6px;transition:background-color .15s;display:flex}.library-deadline-row:hover{background:var(--shelf)}.library-deadline-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:5px}.library-deadline-date{width:44px;color:var(--secondary);font-variant-numeric:tabular-nums;flex-direction:column;flex:none;align-items:center;gap:3px;display:flex}.library-deadline-date>b{font:500 25px/1.15 var(--font-display,Georgia,serif)}.library-deadline-date>span{font:9px/1.4 var(--font-mono,monospace);letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.library-deadline-date.is-overdue>b{color:var(--danger,#e5a2a5)}.library-deadline-copy{flex:1;min-width:0}.library-deadline-copy h3{font-family:var(--font-ui,sans-serif);letter-spacing:-.15px;overflow-wrap:anywhere;margin-bottom:5px;font-size:14px;font-weight:500;line-height:1.5}.library-deadline-subject{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;font-size:11px;line-height:1.6;display:flex}.library-deadline-subject>i{border-radius:2px;flex:none;width:5px;height:5px;display:inline-block}.library-deadline-hour{font:10px/1.6 var(--font-mono,monospace);color:var(--secondary);margin-left:3px}.library-deadline-state{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:4px;flex:none;padding:4px 8px;font-size:10px}.library-deadline-state.in_progress{border-color:color-mix(in srgb,var(--accent) 24%,transparent);background:color-mix(in srgb,var(--accent) 5%,transparent);color:var(--accent)}.library-deadline-state.completed{color:var(--success)}.library-deadline-state.is-overdue{color:var(--danger,#e5a2a5);border-color:color-mix(in srgb,var(--danger,#e5a2a5) 24%,transparent)}.library-deadline-arrow{color:var(--muted);flex:none}@media (width<=767px){.library-deadlines{margin-top:30px}.library-deadlines-heading{gap:12px;margin-bottom:8px}.library-deadlines-heading h2{font-size:17px}.library-deadlines-heading>a{gap:6px;font-size:11px}.library-deadline-row{gap:12px;min-height:84px;padding:16px 0}.library-deadline-date{width:35px}.library-deadline-date>b{font-size:23px}.library-deadline-date>span{font-size:8px}.library-deadline-copy h3{font-size:13px;line-height:1.6}.library-deadline-subject{gap:5px;font-size:10px}.library-deadline-state{padding:4px 6px;font-size:9px}.library-deadline-arrow{display:none}}@media (prefers-reduced-motion:reduce){.library-deadline-row{transition:none}}.library-reading{margin-top:38px}.library-reading-heading{align-items:center;gap:20px;margin-bottom:18px;display:flex}.library-reading-heading h2{font-family:var(--font-ui,sans-serif);letter-spacing:-.3px;font-size:18px;font-weight:500;line-height:1.4}.library-reading-heading>span{background:var(--line);flex:1;height:1px}.library-reading-link{border:1px solid color-mix(in srgb,var(--accent) 24%,transparent);background:linear-gradient(95deg,color-mix(in srgb,var(--accent) 4%,transparent),transparent 70%),var(--shelf);border-radius:8px;align-items:center;gap:20px;padding:22px 24px;transition:border-color .15s,background-color .15s;display:flex}.library-reading-link:hover{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background-color:var(--sheet)}.library-reading-link:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.library-reading-icon{border:1px solid color-mix(in srgb,var(--accent) 24%,transparent);width:48px;height:60px;color:var(--accent);background:color-mix(in srgb,var(--accent) 4%,transparent);border-radius:5px;flex:none;place-items:center;display:grid}.library-reading-copy{flex:1;gap:7px;min-width:0;display:grid}.library-reading-subject{font:9px/1.6 var(--font-mono,monospace);letter-spacing:.55px;color:var(--accent);text-transform:uppercase;overflow-wrap:anywhere}.library-reading-copy h3{font-family:var(--font-ui,sans-serif);letter-spacing:-.25px;overflow-wrap:anywhere;font-size:17px;font-weight:500;line-height:1.5}.library-reading-position{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.library-reading-action{color:var(--accent);white-space:nowrap;flex:none;align-items:center;gap:10px;font-size:12px;display:flex}@media (width<=767px){.library-reading{margin-top:30px}.library-reading-heading{margin-bottom:15px}.library-reading-heading h2{font-size:17px}.library-reading-link{flex-wrap:wrap;gap:14px;padding:18px 16px}.library-reading-icon{width:40px;height:54px}.library-reading-copy{flex:calc(100% - 54px)}.library-reading-subject{letter-spacing:.3px;font-size:8px}.library-reading-copy h3{font-size:15px;line-height:1.5}.library-reading-position{font-size:11px}.library-reading-action{margin-left:54px;font-size:12px}}@media (prefers-reduced-motion:reduce){.library-reading-link{transition:none}}.subject-teacher-control{min-width:0;max-width:100%;min-height:40px;color:var(--secondary);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;padding:8px 0;font:11px/1.6 Aptos,Trebuchet MS,sans-serif;display:inline-flex}.subject-teacher-control>svg{flex:none}.subject-teacher-label{color:var(--muted);flex:none}.subject-teacher-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:360px;overflow:hidden}.subject-teacher-control:hover,.subject-teacher-control:hover .subject-teacher-label{color:var(--accent)}.subject-teacher-control:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.subject-teacher-modal fieldset{border:0;min-width:0;margin:0;padding:0}.subject-teacher-modal input{width:100%;min-height:44px}.subject-teacher-help{color:var(--secondary);margin:16px 0 0;font-size:12px;line-height:1.8}.subject-teacher-modal .dialog-actions{margin-top:24px}@media (width<=767px){.subject-teacher-control{max-width:100%;min-height:44px}.subject-teacher-name{max-width:200px}.subject-teacher-modal input{font-size:16px}.subject-teacher-modal .dialog-actions .button{min-height:44px}}.subject-page-heading.page-heading{align-items:center;gap:16px;margin-bottom:16px}.subject-page-heading .subject-heading{flex:1;min-width:0;display:block}.subject-page-heading .subject-heading h1{letter-spacing:-.6px;overflow-wrap:anywhere;font-size:26px;line-height:1.25}.subject-page-heading .heading-actions{flex:none;align-items:center;gap:8px;width:auto;display:flex}.subject-navigation.compact-subject-navigation{scrollbar-width:thin;align-items:center;gap:24px;margin-bottom:24px;display:flex;overflow-x:auto}.subject-navigation.compact-subject-navigation a{white-space:nowrap;gap:8px;min-height:44px;padding:10px 0;font-size:14px;line-height:20px}.subject-navigation.compact-subject-navigation .count{min-width:0;color:var(--muted);background:0 0;margin-left:0;padding:0;font-size:12px;line-height:18px}@media (width<=767px){.subject-page-heading.page-heading{flex-wrap:nowrap;align-items:flex-start;margin-bottom:20px}.subject-page-heading .subject-heading{flex:1 1 0;width:auto}.subject-page-heading .subject-heading h1{font-size:24px;line-height:1.3}.subject-navigation.compact-subject-navigation{display:none}}.topic-content-nav{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px;margin:0 0 20px;display:flex}.topic-content-nav a{min-height:44px;color:var(--secondary);border-bottom:2px solid #0000;align-items:center;gap:8px;padding:10px 14px;font-size:14px;text-decoration:none;display:inline-flex}.topic-content-nav a:hover{color:var(--ink);background:var(--sheet)}.topic-content-nav a[aria-current=page]{color:var(--accent);border-color:var(--accent)}.topic-content-nav a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:4px}@media (width<=520px){.topic-content-nav{gap:0}.topic-content-nav a{flex:1;justify-content:center;padding:10px 8px}}@font-face{font-family:Geist;src:url(/fonts/geist-regular.woff)format("woff");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/geist-semibold.woff)format("woff");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/geist-mono.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap}@font-face{font-family:Cinzel;src:url(/fonts/cinzel.ttf)format("truetype");font-style:normal;font-weight:400 900;font-display:swap}@font-face{font-family:Fira Sans;src:url(/fonts/fira-sans-regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Fira Sans;src:url(/fonts/fira-sans-semibold.ttf)format("truetype");font-weight:600 900;font-style:normal;font-display:swap}@font-face{font-family:Fira Mono;src:url(/fonts/fira-mono.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Alfa Slab One;src:url(/fonts/alfa-slab-one.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--font-ui:"Geist",system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:"Cinzel",Georgia,serif;--font-mono:"Geist Mono",ui-monospace,monospace;--accent-hover:#e2c58f;--accent-line:#c7a86b47;--line-strong:#cdd6eb2e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--desk:#0a1024;--shelf:#0e172e;--sheet:#142039;--raised:#1a2944;--inset:#080e1f;--ink:#f4e4c9;--secondary:#c3c1bd;--muted:#969eaf;--line:#cdd6eb1a;--accent:#c7a86b;--accent-dark:#242539;--success:#9fcbb7;--radius:12px;--unit:4px;font-family:var(--font-ui);color:var(--ink);background:var(--desk);font-synthesis:none;font-size:14px;line-height:1.5}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;margin:0}button,input,select,textarea{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button,a{touch-action:manipulation;transition:background .16s,color .16s,transform .16s}button:active{transform:scale(.98)}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}h1{letter-spacing:-1.4px;font-size:38px;font-weight:500;line-height:1.15}h2{letter-spacing:-.5px;font-size:22px;font-weight:500}h3{font-size:17px;font-weight:500}p{color:var(--secondary)}small{color:var(--muted);font-size:12px;display:block}.sidebar{border-right:1px solid var(--line);background:var(--desk);z-index:3;flex-direction:column;width:224px;padding:32px 20px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:-.65px;align-items:center;gap:8px;font-size:20px;font-weight:700;display:flex}.brand-symbol{object-fit:contain;flex:none;width:32px;height:32px;display:block}.nav-label{letter-spacing:1.5px;color:var(--muted);margin:0 12px 12px;font-size:9px}.nav-link{min-height:44px;color:var(--secondary);border-radius:6px;align-items:center;gap:12px;padding:10px 12px;font-size:12px;display:flex}.nav-link>span:first-child{width:18px;font-size:18px}.nav-link:hover,.subject-link:hover{background:var(--shelf);color:var(--ink)}.nav-count{margin-left:auto;font-size:11px}.sidebar-subjects{margin-top:36px}.subject-link{text-align:left;width:100%;color:var(--secondary);background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:12px;font-size:11px;display:flex}.subject-dot{border-radius:2px;flex-shrink:0;width:6px;height:6px}.sidebar-bottom{margin-top:auto;padding-top:24px}.status-dot{background:var(--accent);border-radius:50%;width:5px;height:5px;margin-right:8px;display:inline-block}.profile{align-items:center;gap:10px;margin-top:20px;font-size:11px;display:flex}.profile small{font-size:10px}.avatar{width:32px;height:32px;color:var(--accent);background:#343036;border-radius:50%;place-items:center;display:grid}.topbar{z-index:4;background:var(--desk);border-bottom:1px solid var(--line);height:72px;color:var(--secondary);justify-content:space-between;align-items:center;padding:0 40px;font-size:11px;display:flex;position:sticky;top:0}#breadcrumb span{color:var(--muted);margin:0 12px}.prototype-pill{color:var(--muted);border:1px solid var(--line);letter-spacing:1px;border-radius:4px;padding:4px 8px;font-size:9px}main{max-width:1500px;min-height:calc(100vh - 130px);margin:auto;padding:44px 40px 60px}.eyebrow{color:var(--accent);letter-spacing:2px;text-transform:uppercase;margin-bottom:12px;font-size:10px}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:36px;display:flex}.page-heading p{max-width:620px;margin-top:12px}.button{border:1px solid var(--line);background:var(--sheet);min-height:42px;color:var(--ink);border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:12px;font-weight:500;display:inline-flex}.button:hover{background:var(--raised)}.button.primary{background:var(--accent);color:var(--desk);border-color:#0000}.button.primary:hover{background:var(--accent-hover)}.button.quiet{color:var(--secondary);background:0 0}.button .plus{font-size:18px;line-height:1}.heading-actions{flex-shrink:0;gap:8px;display:flex}.library-toolbar{justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px;display:flex}.tabs{border-bottom:1px solid var(--line);gap:20px;display:flex}.tab{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;min-height:44px;padding:10px 0;font-size:12px}.tab.active{color:var(--ink);border-bottom-color:var(--accent)}.tab:hover{color:var(--ink)}.tabs .count{color:var(--muted);margin-left:6px;font-size:10px}.search{color:var(--muted);background:var(--inset);border:1px solid var(--line);border-radius:7px;align-items:center;gap:10px;max-width:270px;padding:0 12px;display:flex}.search input{color:var(--ink);background:0 0;border:0;outline:0;width:100%;height:38px;font-size:11px}.search input:focus-visible{outline:0}.subject-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.subject-card{background:var(--shelf);border:1px solid var(--line);border-radius:var(--radius);transition:transform .18s,border-color .18s;display:block;overflow:hidden}.subject-card:hover{border-color:color-mix(in srgb,var(--accent) 40%,transparent);transform:translateY(-4px)}.cover{background:var(--cover-bg);height:180px;position:relative;overflow:hidden}.cover svg{width:100%;height:100%;color:var(--cover-ink);display:block}.cover-label{color:var(--cover-ink);background:#0f0f1159;border:1px solid #ffffff1f;border-radius:4px;padding:4px 8px;font:10px monospace;position:absolute;top:16px;left:16px}.cover-code{color:var(--cover-ink);opacity:.6;font:10px monospace;position:absolute;bottom:12px;right:16px}.card-body{padding:24px}.card-body h2{min-height:50px;font-size:20px}.card-body p{color:var(--muted);margin-top:8px;font-size:11px}.card-bottom{border-top:1px solid var(--line);color:var(--secondary);justify-content:space-between;align-items:center;margin-top:24px;padding-top:16px;font-size:11px;display:flex}.card-arrow{color:var(--accent);font-size:20px}.library-note{border-top:1px solid var(--line);align-items:flex-start;gap:16px;margin-top:32px;padding:24px 0;display:flex}.note-icon{color:var(--accent);font-size:24px;line-height:1.2}.library-note p{font-size:12px}.library-note small{margin-top:4px}.subtle-link{color:var(--accent);white-space:nowrap;background:0 0;border:0;margin-left:auto;padding:8px;font-size:11px}.empty{text-align:center;background:var(--shelf);border:1px dashed var(--line);border-radius:12px;grid-column:1/-1;padding:48px 24px}.empty p{margin:12px 0 24px;font-size:12px}footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;padding:20px 40px;font-size:10px;display:flex}.subject-heading{align-items:center;gap:20px;display:flex}.subject-emblem{background:var(--cover-bg);width:72px;height:72px;color:var(--cover-ink);border-radius:12px;place-items:center;font:32px Georgia,serif;display:grid;overflow:hidden}.subject-heading h1{font-size:32px}.subject-heading .eyebrow{margin-bottom:8px}.subject-tabs{margin-bottom:28px}.material-layout{grid-template-columns:220px minmax(0,1fr);gap:32px;display:grid}.topic-nav{border-right:1px solid var(--line);padding-right:20px}.topic-nav>p{letter-spacing:1.4px;color:var(--muted);margin-bottom:12px;font-size:10px}.topic{text-align:left;width:100%;color:var(--secondary);background:0 0;border:0;border-radius:8px;gap:12px;margin-bottom:4px;padding:16px 12px;font-size:12px;line-height:1.4;display:flex}.topic:hover{background:var(--shelf)}.topic.active{background:var(--accent-dark);color:var(--ink)}.topic-num{color:var(--muted);padding-top:2px;font:11px monospace}.topic.active .topic-num{color:var(--accent)}.topic small{margin-top:5px;font-size:10px}.topic-title{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.topic-title h2{font-size:24px}.topic-title p{margin-top:6px;font-size:11px}.source-tag{letter-spacing:.6px;color:var(--success);border:1px solid #b9c5a62e;border-radius:4px;padding:5px 8px;font-size:9px}.section-heading{justify-content:space-between;align-items:center;margin:24px 0 12px;display:flex}.section-heading h3{font-size:13px}.section-heading span{color:var(--muted);font-size:10px}.resource{background:var(--shelf);border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;border-radius:8px;align-items:center;gap:16px;margin-bottom:8px;padding:16px;display:flex}.resource:hover{background:var(--sheet)}.file-icon{background:var(--raised);color:var(--accent);border-radius:6px;place-items:center;min-width:40px;height:44px;font:9px monospace;display:grid}.resource h3{font-size:12px}.resource small{margin-top:4px;font-size:10px}.resource .resource-arrow{color:var(--muted);margin-left:auto}.class-card{background:var(--shelf);border:1px solid var(--line);text-align:left;width:100%;color:var(--ink);border-radius:10px;grid-template-columns:210px 1fr;padding:0;display:grid;overflow:hidden}.class-card:hover{background:var(--sheet)}.video-thumb{background:#24252a;place-items:center;min-height:142px;display:grid;position:relative;overflow:hidden}.board-equation{color:#898f87;font:italic 25px Georgia,serif;position:absolute;top:22px;left:16px;transform:rotate(-7deg)}.play{background:var(--accent);width:38px;height:38px;color:var(--desk);z-index:1;border-radius:50%;place-items:center;padding-left:2px;display:grid}.duration{background:var(--desk);border-radius:3px;padding:2px 5px;font:9px monospace;position:absolute;bottom:10px;right:10px}.class-info{padding:24px}.class-info .eyebrow{margin-bottom:8px;font-size:9px}.class-info h3{font-size:15px}.class-info small{margin-top:12px;font-size:10px}.class-info .transcript{color:var(--success);margin-top:16px;font-size:9px;display:inline-block}.exam-layout{grid-template-columns:minmax(0,1.35fr) minmax(260px,.8fr);gap:28px;max-width:1060px;display:grid}.panel{background:var(--shelf);border:1px solid var(--line);border-radius:12px;padding:28px}.panel-title{margin-bottom:24px;font-size:17px}.field{margin-bottom:24px}.field>label,.field-label{margin-bottom:12px;font-size:12px;font-weight:500;display:block}.field select,.field input[type=number],.field input[type=text],.field input[type=url]{color:var(--ink);background:var(--inset);border:1px solid var(--line);border-radius:6px;width:100%;min-height:42px;padding:10px 12px}.checks{grid-template-columns:1fr 1fr;gap:8px;display:grid}.check{background:var(--sheet);border-radius:6px;align-items:center;gap:8px;min-height:44px;padding:12px;font-size:11px;display:flex}.check input{accent-color:var(--accent);width:16px;height:16px;margin:0}.difficulty{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.difficulty label{cursor:pointer;position:relative}.difficulty input{opacity:0;position:absolute}.difficulty span{border:1px solid var(--line);background:var(--sheet);border-radius:6px;padding:12px;font-size:11px;display:block}.difficulty small{margin-top:4px;font-size:9px}.difficulty input:checked+span{border-color:var(--accent);background:var(--accent-dark);color:var(--accent)}.difficulty input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}.two-fields{grid-template-columns:1fr 1fr;gap:20px;display:grid}.time-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.time-controls label{font-size:11px}.time-controls input[type=number]{width:80px}.submit-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding-top:24px;display:flex}.submit-row small{max-width:220px;font-size:10px}.preview-sheet{border:1px solid var(--line);background:var(--desk);border-radius:8px;min-height:205px;margin-bottom:24px;padding:24px}.preview-top{color:var(--muted);letter-spacing:1px;justify-content:space-between;font-size:9px;display:flex}.preview-sheet h3{margin:24px 0 16px;font-size:17px}.preview-line{background:var(--raised);border-radius:3px;width:100%;height:5px;margin-bottom:8px}.preview-line.short{width:65%}.preview-options{gap:8px;margin-top:20px;display:flex}.preview-options span{border:1px solid var(--line);width:24px;height:24px;color:var(--muted);border-radius:4px;place-items:center;font-size:9px;display:grid}.source-summary{border-top:1px solid var(--line);gap:12px;padding:16px 0;font-size:11px;display:flex}.source-summary>span{color:var(--accent);font-size:18px}.source-summary small{margin-top:4px;font-size:10px}.info-box{background:var(--accent-dark);color:var(--secondary);border-radius:8px;margin-top:16px;padding:16px;font-size:11px;line-height:1.7}.question-layout{max-width:900px;margin:auto}.exam-bar{color:var(--secondary);justify-content:space-between;align-items:center;margin-bottom:24px;font-size:12px;display:flex}.timer{background:var(--shelf);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:6px;padding:8px 12px;font:12px monospace}.question-panel{padding:36px}.question-panel h2{max-width:650px;margin:16px 0 28px;font-size:24px;line-height:1.4}.answer{background:var(--desk);border:1px solid var(--line);cursor:pointer;border-radius:8px;align-items:center;gap:16px;min-height:58px;margin-top:12px;padding:12px 16px;font-size:13px;display:flex}.answer input{accent-color:var(--accent)}.answer:has(input:checked){border-color:var(--accent);background:var(--accent-dark)}.answer-letter{color:var(--muted);font:11px monospace}.question-dots{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.question-dots button{background:var(--shelf);color:var(--secondary);border:1px solid var(--line);border-radius:6px;width:36px;height:36px;font:11px monospace}.question-dots button.current{border-color:var(--accent);color:var(--accent)}.question-dots button.answered{background:var(--accent-dark)}.exam-bottom{justify-content:space-between;margin-top:24px;display:flex}.result-score{letter-spacing:-2px;color:var(--accent);font-size:56px;font-weight:500;line-height:1.2}.result-score span{color:var(--muted);letter-spacing:0;font-size:22px}.result-head{justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px;display:flex}.correction{border-top:1px solid var(--line);padding:20px 0}.correction summary{cursor:pointer;color:var(--ink);font-size:13px;line-height:1.7}.correction p{margin-top:12px;font-size:12px;line-height:1.8}.correct{color:var(--success)}.incorrect{color:#e7b1a6}.reference{color:var(--accent);margin-top:12px;font-size:11px;display:inline-block}.dialog-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}dialog{background:var(--sheet);color:var(--ink);border:1px solid var(--line);border-radius:16px;width:min(560px,100% - 40px);max-height:85vh;padding:32px}dialog::backdrop{background:#000000b8}dialog h2{margin-bottom:12px}dialog p{margin-bottom:20px;font-size:12px;line-height:1.8}dialog .field{margin-top:20px}#toast{background:var(--raised);border:1px solid var(--line);z-index:10;opacity:0;pointer-events:none;border-radius:8px;padding:12px 20px;font-size:12px;transition:opacity .2s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}#toast.visible{opacity:1}.demo-banner{border:1px solid var(--line);color:var(--secondary);background:var(--shelf);border-radius:6px;margin-bottom:24px;padding:12px 16px;font-size:11px}[hidden]{display:none!important}@media (width>=1500px){.cover{height:220px}.card-body{padding:28px}}@media (width<=1150px){.sidebar{width:190px;padding:24px 12px}.main-shell{margin-left:190px}main{padding:32px 28px 48px}.topbar{padding:0 28px}.subject-grid{gap:12px}.cover{height:150px}.card-body{padding:18px}.card-body h2{font-size:18px}.exam-layout{grid-template-columns:1fr}.exam-preview{display:none}.material-layout{grid-template-columns:180px minmax(0,1fr);gap:20px}.class-card{grid-template-columns:160px 1fr}.page-heading{align-items:flex-start}h1{font-size:32px}.source-tag{display:none}}@media (width<=800px){.sidebar{width:68px;padding:24px 12px}.brand{justify-content:center;font-size:0}.brand-symbol{margin:0;font-size:32px}.nav-label,.sidebar-subjects,.sidebar-bottom{display:none}.sidebar nav{margin-top:32px}.nav-link{justify-content:center;padding:10px;font-size:0}.nav-link>span:first-child{font-size:20px}.nav-count{display:none}.main-shell{margin-left:68px}main{padding:28px 20px}.topbar{padding:0 20px}.subject-grid{grid-template-columns:1fr 1fr}.page-heading{flex-wrap:wrap}.subject-heading h1{font-size:27px}.material-layout{grid-template-columns:1fr}.topic-nav{border:0;gap:8px;padding:0;display:flex;overflow:auto}.topic-nav>p{display:none}.topic{min-width:170px}.class-card{grid-template-columns:160px 1fr}footer{padding:20px;font-size:9px}footer span{display:none}.library-toolbar{flex-wrap:wrap}.checks{grid-template-columns:1fr}.question-panel{padding:24px}}@media (width<=520px){.subject-grid{grid-template-columns:1fr}.cover{height:180px}.subject-emblem{display:none}.topbar{font-size:10px}.prototype-pill{display:none}.class-card{grid-template-columns:1fr}.two-fields{grid-template-columns:1fr;gap:0}.panel{padding:20px}.difficulty{grid-template-columns:1fr}.submit-row,.library-note{flex-wrap:wrap}.subtle-link{margin-left:0}.result-head{flex-wrap:wrap;align-items:flex-start}.question-panel h2{font-size:20px}.card-body h2{min-height:0}.source-tag{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}.subject-card:hover,button:active{transform:none}}.reference{white-space:normal;text-align:left;overflow-wrap:anywhere;margin-left:0}.exam-bottom{flex-wrap:wrap;gap:12px}.subject-navigation{border-bottom:1px solid var(--line);gap:24px;margin-bottom:28px;display:flex}.subject-navigation a{min-height:48px;color:var(--secondary);border-bottom:2px solid #0000;align-items:center;padding:12px 0;font-size:13px;display:flex}.subject-navigation a:hover{color:var(--ink)}.subject-navigation a[aria-current=page]{color:var(--accent);border-bottom-color:var(--accent)}.subject-link.active{color:var(--accent);background:var(--accent-dark)}.subject-tabs{border-bottom:0;flex-wrap:wrap;gap:8px;margin-bottom:24px}.subject-tabs .tab{border:1px solid #0000;border-radius:6px;min-height:36px;padding:8px 12px;font-size:11px}.subject-tabs .tab.active{background:var(--sheet);border-color:var(--line)}#breadcrumb a:hover{color:var(--accent)}@media (width<=520px){#breadcrumb{font-size:9px}.subject-navigation{gap:20px}}.field textarea{resize:vertical;width:100%;min-height:104px;color:var(--ink);background:var(--inset);border:1px solid var(--line);border-radius:6px;padding:12px;font-size:12px;line-height:1.6;display:block}.field textarea::placeholder{color:var(--muted)}.optional-label{color:var(--muted);margin-left:8px;font-size:10px;font-weight:400}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.subject-navigation .count{background:var(--sheet);color:var(--muted);text-align:center;font-variant-numeric:tabular-nums;border-radius:4px;min-width:20px;margin-left:8px;padding:1px 4px;font-size:10px}.subject-navigation a[aria-current=page] .count{color:var(--accent);background:var(--accent-dark)}.history-heading{margin:8px 0 24px}.history-heading h2{font-size:22px}.history-filter{color:var(--secondary);align-items:center;gap:12px;font-size:11px;display:flex}.history-filter select{border:1px solid var(--line);background:var(--inset);min-height:40px;color:var(--ink);font:inherit;border-radius:6px;padding:8px 12px}.history-overview{grid-template-columns:minmax(0,1fr) 244px;gap:20px;margin-bottom:28px;display:grid}.chart-panel{padding:24px 24px 12px}.chart-panel .section-heading{margin:0}.grade-chart{width:100%;height:208px;display:block}.chart-grid{stroke:var(--line);stroke-width:1px}.chart-label{fill:var(--muted);font:11px Trebuchet MS,sans-serif}.chart-line{stroke:var(--accent);stroke-width:2px;fill:none;stroke-linejoin:round}.chart-point{fill:var(--accent);stroke:var(--shelf);stroke-width:3px}.grade-summary{flex-direction:column;justify-content:space-between;padding:24px;display:flex}.grade-summary strong{letter-spacing:-1px;color:var(--accent);font-variant-numeric:tabular-nums;font-size:44px;font-weight:500;line-height:1.5;display:block}.grade-summary strong span{color:var(--muted);letter-spacing:0;font-size:14px}.summary-pair{border-top:1px solid var(--line);gap:40px;padding-top:16px;display:flex}.summary-pair b{font-variant-numeric:tabular-nums;margin-top:4px;font-size:20px;font-weight:500;display:block}.table-scroll{border:1px solid var(--line);border-radius:10px;overflow:auto}.history-table{border-collapse:collapse;text-align:left;width:100%;min-width:650px;font-size:12px}.history-table th{color:var(--muted);background:var(--shelf);padding:16px 20px;font-size:10px;font-weight:400}.history-table td{border-top:1px solid var(--line);padding:20px}.history-table tbody tr:hover{background:var(--shelf)}.history-table td small{margin-top:4px;font-size:10px}.history-table td:last-child{text-align:right}.difficulty-badge{background:var(--accent-dark);color:var(--accent);border-radius:4px;padding:5px 8px;font-size:10px}.grade-value{font-variant-numeric:tabular-nums;font-size:22px}.grade-value small{margin-left:4px;display:inline}.attempt-metadata{color:var(--muted);flex-wrap:wrap;gap:20px;margin-bottom:24px;font-size:11px;display:flex}.saved-guidance{border:1px solid var(--line);border-radius:8px;margin-bottom:24px;padding:16px}.saved-guidance summary{cursor:pointer;font-size:12px}.saved-guidance p{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:12px;font-size:12px}.doubts-toolbar{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:8px;display:flex}.doubts-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;display:grid}.doubt-card{background:var(--shelf);border:1px solid var(--line);border-radius:10px;min-width:0;padding:24px}.doubt-card-top{align-items:center;gap:12px;font-size:10px;display:flex}.note-kind{color:var(--secondary)}.note-state{border-radius:4px;padding:3px 6px;font-size:9px}.example-label{color:var(--muted);margin-left:auto;font-size:9px}.doubt-text{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:20px 0 12px;font-size:17px;line-height:1.6}.source-link{color:var(--accent);text-align:left;overflow-wrap:anywhere;background:0 0;border:0;min-height:40px;padding:8px 0;font-size:11px}.source-link:hover{text-decoration:underline}.note-actions{border-top:1px solid var(--line);gap:16px;margin-top:16px;padding-top:12px;display:flex}.text-button{color:var(--secondary);background:0 0;border:0;min-height:40px;padding:8px 0;font-size:10px}.text-button:hover{color:var(--accent)}.doubt-card.highlighted{border-color:var(--accent)}.reader-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.reader-heading h1{font-size:28px}.reader-layout{grid-template-columns:minmax(0,1fr) 328px;align-items:start;gap:24px;display:grid}.reader-content{min-width:0}.reader-notes{background:var(--shelf);border:1px solid var(--line);border-radius:12px;min-width:0;padding:24px}.reader-notes>.section-heading{margin:0 0 20px}.reader-notes h2{font-size:18px}.reader-notes .section-heading>span{font-size:10px}.reader-notes textarea,#edit-note{resize:vertical;background:var(--inset);border:1px solid var(--line);width:100%;min-height:100px;color:var(--ink);border-radius:6px;padding:12px;font-size:12px;line-height:1.7;display:block}.reader-notes textarea::placeholder{color:var(--muted)}.note-anchor{color:var(--accent);gap:8px;margin-bottom:12px;font-size:10px;display:flex}.note-submit{justify-content:flex-end;margin-top:12px;display:flex}.note-submit .button{font-size:11px}.reader-note-list{gap:12px;margin-top:24px;display:grid}.doubt-card.compact{background:var(--desk);padding:16px}.compact .doubt-card-top{gap:8px}.compact .doubt-text{margin:12px 0 4px;font-size:13px}.compact .source-link{font-size:10px}.compact .note-actions{margin-top:8px;padding-top:4px}.reader-empty{color:var(--muted);text-align:center;padding:16px;font-size:11px}.reader-notes form{border-bottom:1px solid var(--line);padding-bottom:24px}.document-toolbar{background:var(--shelf);border:1px solid var(--line);color:var(--secondary);border-radius:10px 10px 0 0;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:11px;display:flex}.document-toolbar>div{align-items:center;gap:8px;display:flex}.document-toolbar .button{min-width:36px;min-height:36px;padding:8px}.page-selector{font-size:10px}.page-selector input{font:inherit;color:var(--ink);background:var(--inset);border:1px solid var(--line);text-align:center;border-radius:4px;width:48px;margin:0 4px;padding:6px}.document-stage{border:1px solid var(--line);background:#242428;border-top:0;border-radius:0 0 10px 10px;padding:32px}.sample-page{color:#30322e;background:#eeece5;border-radius:2px;flex-direction:column;max-width:680px;min-height:540px;margin:auto;padding:40px 36px;display:flex}.paper-meta{letter-spacing:1px;color:#73736e;border-bottom:1px solid #d6d5cc;justify-content:space-between;padding-bottom:16px;font-size:8px;display:flex}.sample-page h2{letter-spacing:-.5px;margin:32px 0 24px;font:28px/1.3 Georgia,serif}.sample-page p{color:#4c4d47;margin:8px 0;font:14px/1.9 Georgia,serif}.sample-page .paper-section{letter-spacing:1px;color:#74766b;text-transform:uppercase;margin-bottom:12px;font:10px Trebuchet MS,sans-serif}.paper-equation{overflow-wrap:anywhere;background:#e2e2d8;border-radius:4px;margin-top:24px;padding:20px 16px;font:13px/1.8 monospace}.paper-rule{background:#d6d5cc;height:1px;margin:32px 0 20px}.paper-lines{gap:10px;display:grid}.paper-lines span{background:#dcdcd3;border-radius:2px;height:4px}.paper-lines span:nth-child(2){width:90%}.paper-lines span:last-child{width:65%}.paper-footer{color:#74766b;justify-content:space-between;margin-top:auto;padding-top:40px;font:9px Trebuchet MS,sans-serif;display:flex}.class-player{border:1px solid var(--line);background:var(--shelf);border-radius:10px;overflow:hidden}.lecture-board{color:#d4dfcc;background:#28322e;min-height:330px;padding:32px 36px}.lecture-meta{letter-spacing:1px;color:#a4b29f;font-size:8px}.lecture-board h2{color:#d9e1d3;margin:40px 0 24px;font:28px/1.4 Georgia,serif}.lecture-board>p{color:#c0d0b5;font:italic 22px/1.6 Georgia,serif}.board-rule{background:#cddcc529;height:1px;margin:24px 0}.lecture-board .board-caption{color:#acb9a7;max-width:480px;font:13px/1.8 Trebuchet MS,sans-serif}.player-toolbar{color:var(--secondary);font-variant-numeric:tabular-nums;align-items:center;gap:12px;padding:12px 16px;font:10px monospace;display:flex}.player-toolbar .button{min-width:32px;min-height:32px;padding:4px}.player-toolbar input{min-width:40px;accent-color:var(--accent);flex:1}.sample-transcript{margin-top:28px}.sample-transcript h2{font-size:16px}.transcript-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;align-items:flex-start;gap:20px;width:100%;padding:16px 0;display:flex}.transcript-row:hover{background:var(--shelf)}.transcript-row>span{color:var(--accent);padding-top:3px;font:11px monospace}.transcript-row>p{font-size:12px;line-height:1.8}@media (width<=1150px){.reader-layout{grid-template-columns:minmax(0,1fr) 288px;gap:16px}.reader-notes{padding:20px}.sample-page{padding:28px 24px}.document-stage{padding:20px}.document-toolbar{flex-wrap:wrap}.history-overview{grid-template-columns:minmax(0,1fr) 200px}.grade-summary{padding:20px}.summary-pair{gap:24px}.doubts-grid{gap:16px}}@media (width<=900px){.reader-layout{grid-template-columns:1fr}.reader-note-list{grid-template-columns:repeat(2,minmax(0,1fr))}.reader-notes form{max-width:none}.doubts-grid{grid-template-columns:1fr}.history-heading{flex-wrap:wrap;align-items:flex-start;gap:16px}.history-overview{grid-template-columns:1fr}.grade-summary{flex-direction:row;align-items:center}.summary-pair{border:0;gap:32px;padding:0}.history-filter{flex-wrap:wrap}}@media (width<=520px){.reader-heading{flex-wrap:wrap}.reader-heading h1{font-size:24px}.reader-note-list{grid-template-columns:1fr}.sample-page{min-height:500px;padding:24px 20px}.sample-page h2{font-size:24px}.document-stage,.document-toolbar{padding:12px}.document-toolbar>div{gap:4px}.document-toolbar>span{display:none}.paper-meta{gap:8px;font-size:7px}.doubts-toolbar{flex-wrap:wrap}.doubts-toolbar .subject-tabs{margin-bottom:0}.doubts-grid{margin-top:20px}.subject-navigation{gap:16px}.subject-navigation a{font-size:11px}.doubt-card{padding:20px}.history-filter{font-size:10px}.history-heading h2{font-size:20px}.chart-panel{padding:16px 8px 0}.chart-panel .section-heading{flex-wrap:wrap;gap:8px;padding:0 8px}.grade-chart{height:auto}.grade-summary strong{font-size:32px}.summary-pair{gap:16px}.summary-pair b{font-size:18px}.lecture-board{min-height:300px;padding:24px}.lecture-board h2{margin-top:28px;font-size:24px}.lecture-board>p{font-size:17px}.player-toolbar{gap:8px;padding:12px}.attempt-metadata{gap:12px}.reader-notes{padding:20px}}.action-menu{text-align:left;flex:none;display:inline-block;position:relative}.action-menu>.action-menu-trigger{cursor:pointer;width:44px;height:44px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;list-style:none;display:grid}.action-menu>.action-menu-trigger:hover,.action-menu>.action-menu-trigger[aria-expanded=true]{background:var(--sheet);color:var(--ink)}.action-menu>.action-menu-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.action-menu-panel{overscroll-behavior:contain;border:1px solid var(--line);background:var(--raised);border-radius:10px;width:max-content;min-width:min(208px,100vw - 24px);max-width:min(320px,100vw - 24px);margin:0;padding:4px;position:fixed;inset:auto;overflow-y:auto;box-shadow:0 8px 24px #0000002e}.action-menu-item,.action-menu-panel>.button{width:100%;min-height:44px;color:var(--secondary);font:inherit;text-align:left;white-space:normal;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:flex-start;align-items:center;gap:10px;padding:10px 12px;font-size:13px;text-decoration:none;display:flex}.action-menu-item:hover,.action-menu-panel>.button:hover{background:var(--sheet);color:var(--ink)}.action-menu-item:focus-visible,.action-menu-panel>.button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.action-menu-item:disabled{opacity:.45;cursor:default}.action-menu-item svg{flex:none}:root{--tutor-width:440px;--tutor-gap:16px}.tutor-trigger{border:1px solid var(--line);min-height:40px;color:var(--accent);background:var(--accent-dark);border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:11px;display:inline-flex}.tutor-trigger:hover,.tutor-trigger[aria-expanded=true]{background:var(--sheet);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}body.tutor-open .main-shell{margin-right:calc(var(--tutor-width) + var(--tutor-gap)*2)}body.tutor-open .reader-layout{grid-template-columns:minmax(0,1fr)}body.tutor-open .reader-notes{display:none}body.tutor-open .page-heading{flex-wrap:wrap;align-items:flex-start}body.tutor-open .material-layout{grid-template-columns:164px minmax(0,1fr);gap:24px}body.tutor-open .class-card{grid-template-columns:140px minmax(0,1fr)}body.tutor-open .class-info{padding:20px}body.tutor-open .doubts-grid,body.tutor-open .history-overview{grid-template-columns:1fr}body.tutor-open .grade-summary{flex-direction:row;align-items:center}body.tutor-open .grade-summary .summary-pair{border:0;padding:0}body.tutor-open .exam-preview{display:none}body.tutor-open .exam-layout{grid-template-columns:1fr}dialog.tutor-panel{inset:var(--tutor-gap) var(--tutor-gap) var(--tutor-gap) auto;width:var(--tutor-width);height:calc(100dvh - var(--tutor-gap)*2);background:var(--shelf);border:1px solid var(--line);max-width:none;max-height:none;color:var(--ink);z-index:8;border-radius:14px;margin:0;padding:0;position:fixed;overflow:hidden}.tutor-panel[open]{flex-direction:column;display:flex}.tutor-panel::backdrop{background:#08080a8c}.tutor-panel p{margin:0;font-size:13px;line-height:1.85}.tutor-panel h2,.tutor-panel h3{margin:0}.tutor-panel button:focus-visible,.tutor-panel textarea:focus-visible{outline-offset:2px}.tutor-panel svg{flex-shrink:0}.tutor-header{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:12px;padding:20px;display:flex}.tutor-heading-icon{background:var(--accent-dark);width:40px;height:40px;color:var(--accent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.tutor-heading-copy{flex:1;min-width:0}.tutor-heading-copy h2{letter-spacing:-.2px;font-size:15px;font-weight:500;line-height:1.4}.tutor-heading-copy>span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:10px;display:block;overflow:hidden}.tutor-header-actions{gap:0;display:flex}.tutor-icon-button{width:40px;min-width:40px;height:40px;color:var(--muted);background:0 0;border:0;border-radius:6px;place-items:center;padding:8px;display:grid}.tutor-icon-button:hover{background:var(--raised);color:var(--ink)}.tutor-context{border-bottom:1px solid var(--line);background:var(--shelf);flex-shrink:0;max-height:210px;padding:16px 20px;overflow:auto}.tutor-context-heading{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.tutor-context-heading>span{letter-spacing:1.5px;color:var(--muted);font-size:8px}.tutor-text-button{min-height:40px;color:var(--secondary);background:0 0;border:0;align-items:center;gap:4px;padding:4px 0 4px 8px;font-size:10px;display:inline-flex}.tutor-text-button:hover{color:var(--accent)}.tutor-source-row{flex-wrap:wrap;gap:8px;display:flex}.tutor-topic-tag{white-space:nowrap;text-overflow:ellipsis;width:100%;color:var(--secondary);margin-bottom:4px;font-size:11px;display:block;overflow:hidden}.tutor-source-chip{background:var(--desk);border:1px solid var(--line);min-height:40px;color:var(--accent);border-radius:5px;align-items:center;gap:6px;padding:5px 8px;font-size:10px;display:inline-flex}.tutor-source-chip:hover{background:var(--accent-dark);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.tutor-selection{color:var(--secondary);margin-top:12px;font-size:10px}.tutor-selection summary{cursor:pointer;padding:4px 0}.tutor-selection blockquote{border-left:2px solid var(--accent);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0 4px;padding:0 0 0 12px;font-size:11px;line-height:1.8}.tutor-linked-note{color:var(--secondary);align-items:center;gap:6px;margin-top:12px;font-size:10px;display:flex}.tutor-linked-note button{color:var(--accent);background:0 0;border:0;min-height:40px;margin-left:auto;padding:4px 0;font-size:9px}.tutor-linked-note button:hover{text-decoration:underline}.tutor-messages{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--raised) transparent;flex:1;min-height:0;padding:24px 24px 28px;overflow-y:auto}.tutor-welcome{padding:28px 0 8px}.tutor-emblem{border:1px solid var(--line);width:68px;height:68px;color:var(--accent);background:var(--desk);border-radius:18px;place-items:center;margin-bottom:28px;display:grid;position:relative}.tutor-emblem>span{border:3px solid var(--shelf);background:var(--accent);border-radius:50%;width:12px;height:12px;position:absolute;bottom:10px;right:-4px}.tutor-panel .tutor-welcome-eyebrow{color:var(--muted);margin-bottom:8px;font-size:9px;line-height:1.5}.tutor-welcome h3{letter-spacing:-.6px;max-width:290px;color:var(--ink);margin-bottom:28px;font:30px/1.25 Georgia,serif}.tutor-starters{gap:8px;display:grid}.tutor-starters>button{background:var(--desk);border:1px solid var(--line);text-align:left;width:100%;min-height:44px;color:var(--secondary);border-radius:7px;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;font-size:11px;display:flex}.tutor-starters>button>svg{color:var(--muted)}.tutor-starters>button:hover{background:var(--accent-dark);border-color:color-mix(in srgb,var(--accent) 25%,transparent);color:var(--accent)}.tutor-user-message{border:1px solid color-mix(in srgb,var(--accent) 12%,transparent);background:var(--accent-dark);border-radius:10px 10px 3px;margin-left:28px;padding:14px 16px}.tutor-panel .tutor-user-message>p{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7}.tutor-answer{margin:28px 0 32px}.tutor-answer:last-child{margin-bottom:0}.tutor-answer-byline{color:var(--secondary);align-items:center;gap:8px;margin-bottom:16px;font-size:10px;display:flex}.tutor-answer-icon{color:var(--accent);background:var(--accent-dark);border-radius:5px;place-items:center;width:24px;height:24px;display:grid}.tutor-sample-label{color:var(--muted);border:1px solid var(--line);border-radius:3px;margin-left:auto;padding:2px 5px;font-size:8px}.tutor-answer-copy{padding-left:0}.tutor-panel .tutor-answer-copy>p{color:var(--secondary);overflow-wrap:anywhere;white-space:pre-wrap;margin:0 0 16px;font-size:13px;line-height:1.85}.tutor-panel .tutor-answer-copy>p:first-child{color:var(--ink)}.tutor-keyline{background:var(--desk);border-left:2px solid var(--accent);color:var(--ink);overflow-wrap:anywhere;border-radius:0 6px 6px 0;margin:16px 0;padding:14px 16px;font-size:11px;line-height:1.8}.tutor-keyline code{white-space:pre-wrap;font-family:Cascadia Code,DejaVu Sans Mono,monospace}.tutor-panel .tutor-answer-copy .tutor-followup{color:var(--ink);margin-top:20px;font-size:13px}.tutor-citations{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.tutor-citations>button{border:1px solid var(--line);min-height:40px;color:var(--secondary);background:0 0;border-radius:5px;align-items:center;gap:6px;padding:5px 8px;font-size:9px;display:inline-flex}.tutor-citations>button:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.tutor-citation-number{background:var(--accent-dark);width:16px;height:16px;color:var(--accent);border-radius:3px;place-items:center;font:9px monospace;display:grid}.tutor-composer{flex-shrink:0;padding:12px 16px}.tutor-input-shell{background:var(--inset);border:1px solid var(--line);border-radius:10px;padding:12px}.tutor-input-shell:focus-within{border-color:color-mix(in srgb,var(--accent) 50%,transparent)}.tutor-input-shell>textarea{resize:none;width:100%;min-height:44px;max-height:128px;color:var(--ink);background:0 0;border:0;outline:0;padding:0;font-size:12px;line-height:1.7;display:block}.tutor-input-shell>textarea:focus-visible{outline:0}.tutor-input-shell>textarea::placeholder{color:var(--muted)}.tutor-composer-tools{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.tutor-composer-tools>span{color:var(--muted);align-items:center;gap:6px;font-size:9px;display:flex}.tutor-send{background:var(--accent);width:40px;height:40px;color:var(--desk);border:0;border-radius:6px;place-items:center;padding:8px;display:grid}.tutor-send:disabled{opacity:.3;cursor:default}.tutor-composer-footer{color:var(--muted);align-items:center;gap:6px;padding:8px 2px 0;font-size:8px;display:flex}.tutor-composer-footer>span:last-child{color:var(--muted);margin-left:auto}.tutor-demo-dot{background:var(--accent);border-radius:50%;width:4px;height:4px}.tutor-thread-screen{flex:1;min-height:0;padding:20px;overflow:auto}.tutor-new-thread{background:var(--accent-dark);border:1px solid color-mix(in srgb,var(--accent) 15%,transparent);width:100%;min-height:44px;color:var(--accent);border-radius:7px;align-items:center;gap:8px;padding:12px 16px;font-size:11px;display:flex}.tutor-new-thread:hover{background:var(--sheet)}.tutor-panel .tutor-list-label{letter-spacing:1.2px;color:var(--muted);margin:28px 0 8px;font-size:8px}.tutor-thread-item{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--secondary);text-align:left;background:0 0;align-items:center;gap:12px;padding:16px 4px;display:flex}.tutor-thread-item:hover{background:var(--sheet)}.tutor-thread-icon{color:var(--accent);align-self:flex-start;margin-top:2px}.tutor-thread-item>span:nth-child(2){flex:1;min-width:0}.tutor-thread-item strong{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:400;display:block;overflow:hidden}.tutor-thread-item small{overflow-wrap:anywhere;margin-top:6px;font-size:9px;line-height:1.7}.tutor-panel .tutor-thread-empty{color:var(--muted);text-align:center;margin-top:32px;font-size:11px}.tutor-context-options{border:0;gap:8px;padding:0;display:grid}.tutor-context-options legend{margin-bottom:12px;padding:0;font-size:12px}.document-title{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.document-tutor-action{color:var(--accent);background:0 0;border:0;min-height:40px;padding:8px 0;font-size:10px}.document-tutor-action:hover{text-decoration:underline}.note-actions{flex-wrap:wrap;gap:0 16px}.note-tutor-action{color:var(--accent)}.correction-tutor-action{color:var(--accent);text-align:left;background:0 0;border:0;min-height:40px;padding:8px 0;font-size:11px;display:block}.correction-tutor-action:hover{text-decoration:underline}@media (width<=1350px) and (width>=1181px){:root{--tutor-width:400px}.tutor-open main{padding:32px 24px}.tutor-open .topbar{padding:0 24px}.tutor-open .material-layout{grid-template-columns:1fr}.tutor-open .topic-nav{border:0;gap:8px;padding:0;display:flex;overflow:auto}.tutor-open .topic-nav>p{display:none}.tutor-open .topic{min-width:164px}.tutor-open .class-card{grid-template-columns:1fr}.tutor-open .subject-heading h1{font-size:26px}.tutor-open .subject-emblem,.tutor-open .topbar-actions .prototype-pill{display:none}}@media (width<=1180px){body.tutor-open .main-shell{margin-right:0}.tutor-open .topbar-actions .prototype-pill{display:none}dialog.tutor-panel{z-index:8}}@media (width<=760px){dialog.tutor-panel{border-radius:12px;width:calc(100% - 24px);height:calc(100dvh - 24px);margin:0;inset:12px}.tutor-header{gap:10px;padding:16px}.tutor-header-actions .tutor-icon-button{width:40px;min-width:40px}.tutor-heading-copy h2{font-size:14px}.tutor-heading-icon{border-radius:8px;width:36px;height:36px}.tutor-context{max-height:180px;padding:12px 16px}.tutor-messages{padding:20px}.tutor-welcome{padding-top:16px}.tutor-welcome h3{font-size:27px}.tutor-welcome .tutor-emblem{margin-bottom:24px}.tutor-composer{padding:8px 12px 10px}.topbar-actions{gap:12px}.topbar-actions .prototype-pill{display:none}.tutor-trigger{min-width:36px;padding:8px}.tutor-trigger>span{display:none}.document-title{gap:8px}.document-tutor-action{font-size:9px}.tutor-context-heading{margin-bottom:4px}}.sample-page .tutor-referenced{background:#8468b124;border-radius:3px;outline:4px solid #8468b124}.tutor-context-heading{gap:12px}.tutor-source-chip{max-width:100%}.tutor-source-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tutor-more-sources{color:var(--muted);align-self:center;font-size:11px}.tutor-topic-tag{white-space:normal;overflow-wrap:anywhere}.tutor-thread-item[aria-current=true]{background:var(--accent-dark)}.tutor-review-banner{border:0;border-bottom:1px solid var(--line);background:var(--accent-dark);width:100%;min-height:44px;color:var(--accent);text-align:left;flex-shrink:0;align-items:center;gap:8px;padding:10px 20px;font-size:11px;display:flex}.tutor-review-banner span{flex:1}.tutor-review-banner:hover{background:var(--raised)}.tutor-tool-activity{color:var(--muted);margin:0 0 16px;font-size:11px}.tutor-tool-activity summary{cursor:pointer;min-height:28px;padding:4px 0}.tutor-tool-activity ul{gap:8px;margin:4px 0 0;padding:0;list-style:none;display:grid}.tutor-tool-activity li{overflow-wrap:anywhere;align-items:center;gap:8px;line-height:1.5;display:flex}.tutor-tool-activity li.done>svg{color:var(--success)}.tutor-tool-activity li.running>svg{color:var(--accent)}.tutor-tool-activity li.error{color:var(--secondary)}.tutor-tool-activity small{color:var(--muted);font-size:10px}.tutor-proposal-links{gap:8px;margin-top:16px;display:grid}.tutor-proposal-links>button{border:1px solid var(--line);background:var(--desk);min-height:56px;color:var(--accent);text-align:left;border-radius:7px;align-items:center;gap:12px;padding:12px;display:flex}.tutor-proposal-links>button:hover{background:var(--accent-dark)}.tutor-proposal-links>button>span{flex:1;min-width:0}.tutor-proposal-links strong{overflow-wrap:anywhere;font-size:12px;font-weight:500;line-height:1.5;display:block}.tutor-proposal-links small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.tutor-progress{margin-top:16px}.tutor-progress .tutor-thinking{color:var(--muted);align-items:center;gap:8px;font-size:11px;display:flex}.tutor-thinking .text-button{margin-left:auto}.tutor-scope-picker{max-width:480px}.tutor-scope-options{gap:8px;max-height:min(55dvh,520px);display:grid;overflow-y:auto}.tutor-scope-options>.context-location{margin:0 0 8px}.tutor-scope-option{background:var(--desk);border:1px solid var(--line);width:100%;min-height:48px;color:var(--secondary);text-align:left;border-radius:7px;align-items:center;gap:12px;padding:12px;font-size:13px;display:flex}.tutor-scope-option>span:nth-last-child(2),.tutor-scope-option>span:last-child{overflow-wrap:anywhere;flex:1}.tutor-scope-option .subject-dot{flex:none}.tutor-scope-option[aria-pressed=true]{background:var(--accent-dark);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.tutor-scope-option:hover{background:var(--sheet)}@media (width<=767px){.tutor-header{gap:8px}.tutor-heading-copy h2{font-size:14px}.tutor-heading-copy>span{max-width:100%}.tutor-header-actions .tutor-icon-button{width:40px;min-width:40px}.tutor-heading-icon{width:32px;height:32px}.tutor-context-heading>span{letter-spacing:1px}.tutor-review-banner{padding:10px 16px}.tutor-scope-picker .dialog-actions{flex-wrap:wrap}.tutor-scope-option{min-height:48px}.tutor-tool-activity summary{min-height:40px}}.tutor-document-proposal{border:1px solid var(--line);background:var(--sheet);border-radius:8px;min-width:0;padding:16px;scroll-margin-block:16px}.tutor-document-proposal-heading{flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.tutor-document-proposal-heading>svg{color:var(--accent);flex:none}.tutor-document-proposal-heading>strong{overflow-wrap:anywhere;flex:1;font-weight:500}.tutor-document-proposal-heading>span{color:var(--muted);font-size:10px}.tutor-document-proposal>p{color:var(--secondary);white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0;font-size:12px;line-height:1.7}.tutor-document-open{min-height:44px;color:var(--accent);text-align:left;text-underline-offset:3px;background:0 0;border:0;align-items:center;padding:8px 0;font-size:12px;text-decoration:underline;display:flex}.tutor-document-open:hover{color:var(--ink)}.tutor-document-open:focus-visible,.tutor-document-reasons button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tutor-document-reasons summary{min-height:44px;color:var(--muted);cursor:pointer;padding:12px 0;font-size:11px}.tutor-document-reasons ol{color:var(--muted);margin:0 0 8px;padding-left:20px}.tutor-document-reasons li>button{min-height:44px;color:var(--secondary);text-align:left;overflow-wrap:anywhere;background:0 0;border:0;padding:8px 0;font-size:11px;line-height:1.7}.tutor-document-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.tutor-document-proposal .button{white-space:normal;min-height:44px;font-size:11px}.tutor-document-proposal>p.tutor-document-stale{color:var(--secondary)}.tutor-proposal-fields{white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;font-size:11px;line-height:1.7;overflow:auto}.tutor-proposal-fields dl{margin:0}.tutor-proposal-fields dl>div{border-bottom:1px solid var(--line);padding:8px 0}.tutor-proposal-fields dt{color:var(--muted);font-size:10px}.tutor-proposal-fields dd{color:var(--secondary);margin:4px 0 0}.tutor-proposal-fields ol{padding-left:16px}.tutor-proposal-image{object-fit:contain;background:#fff;border-radius:4px;max-width:100%;max-height:320px;margin-top:12px;display:block}.tutor-proposal-links>section.tutor-document-proposal{width:100%}@media (width<=767px){.tutor-document-proposal{padding:12px}.tutor-document-actions>.button{flex:1;justify-content:center}}.tutor-chat-surface{flex-direction:column;flex:1;min-height:0;display:flex}.tutor-chat-surface[hidden],.reader-support-note-surface[hidden],.tutor-conversation-actions[hidden]{display:none}.tutor-conversation-actions{display:flex}.reader-support-tabs{border-bottom:1px solid var(--line);flex:none;gap:20px;padding:0 20px;display:flex}.reader-support-tabs>[role=tab]{min-height:44px;color:var(--secondary);background:0 0;border:0;border-bottom:2px solid #0000;padding:12px 4px;font-size:14px}.reader-support-tabs>[role=tab][aria-selected=true]{border-color:var(--accent);color:var(--accent)}.reader-support-tabs>[role=tab]:hover{color:var(--ink)}.reader-support-tabs>[role=tab]:focus-visible{outline:2px solid var(--accent);outline-offset:-4px}.reader-support-note-surface{overscroll-behavior:contain;scrollbar-width:thin;flex:1;min-height:0;padding:20px;overflow-y:auto}.reader-support-notes .note-anchor{color:var(--muted);align-items:center;gap:8px;margin-bottom:12px;font-size:12px;display:flex}.reader-support-notes textarea{border:1px solid var(--line);background:var(--inset);width:100%;min-height:120px;color:var(--ink);resize:vertical;border-radius:8px;padding:12px;font-family:inherit;font-size:14px;line-height:1.6;display:block}.reader-support-notes textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.reader-support-notes .note-submit{justify-content:flex-end;margin-top:12px;display:flex}.reader-support-notes .note-submit>.button{min-height:44px;font-size:12px}.reader-support-notes .reader-note-list{gap:16px;margin-top:24px;display:grid}.reader-support-notes .doubt-card{background:var(--desk);min-width:0;padding:16px}.reader-support-notes .doubt-text{overflow-wrap:anywhere;font-size:14px;line-height:1.7}.reader-support-notes .note-actions{flex-wrap:wrap;gap:0 12px;display:flex}.reader-support-notes .note-actions>.text-button{min-height:44px;font-size:12px}.reader-support-notes .source-link{overflow-wrap:anywhere;font-size:12px;line-height:1.6;display:block}.reader-support-notes .reader-notes-empty{color:var(--muted);font-size:12px;line-height:1.7}.reader-support-notes .selected-quote{margin-bottom:16px}.reader-support-notes .selected-quote blockquote{border-left:2px solid var(--accent);overflow-wrap:anywhere;margin:0;padding:0 0 0 12px;font-size:12px;line-height:1.7}.reader-support-notes .selected-quote .text-button{min-height:44px;font-size:12px}.tutor-panel .tutor-header{gap:12px;padding:12px 16px}.tutor-panel .tutor-heading-icon{background:0 0;border-radius:0;width:32px;height:32px}.tutor-panel .tutor-heading-copy>span{font-size:12px}.tutor-panel .tutor-icon-button{width:44px;min-width:44px;height:44px}.tutor-panel .tutor-context{max-height:200px;padding:12px 20px}.tutor-panel .tutor-context-heading{gap:8px;margin:0}.tutor-context-summary{min-width:0;min-height:44px;color:var(--secondary);text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:8px;padding:8px 0;font-size:12px;display:flex}.tutor-context-summary>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tutor-context-summary:hover{color:var(--accent)}.tutor-context-heading>.tutor-context-fixed{letter-spacing:0;color:var(--muted);flex:none;font-size:11px}.tutor-source-details{color:var(--muted);font-size:12px}.tutor-source-details>summary{cursor:pointer;min-height:36px;padding:8px 0}.tutor-panel .tutor-text-button{min-height:44px;font-size:12px}.tutor-panel .tutor-welcome{padding:8px 0}.tutor-panel .tutor-welcome-copy{color:var(--secondary);margin-bottom:16px;font-size:14px;line-height:1.7}.tutor-panel .tutor-starters{gap:0}.tutor-panel .tutor-starters>button{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;min-height:44px;padding:10px 0;font-size:12px}.tutor-panel .tutor-starters>button:hover{color:var(--accent);background:0 0}.tutor-panel .tutor-user-message>p,.tutor-panel .tutor-answer-copy>p{font-size:14px;line-height:1.75}.tutor-panel .tutor-input-shell>textarea{font-size:14px}.tutor-panel .tutor-composer-tools>span{font-size:12px}.tutor-panel .tutor-composer-footer{font-size:11px}.tutor-panel .tutor-send{width:44px;height:44px}.tutor-panel .tutor-citations>button{min-height:44px;font-size:12px}.tutor-panel .tutor-topic-tag,.tutor-panel .tutor-source-chip{font-size:12px}@media (width<=767px){.reader-support-tabs{padding:0 16px}.reader-support-note-surface{padding:16px}.reader-support-notes textarea{font-size:16px}.tutor-panel .tutor-header{gap:8px;padding:12px}.tutor-panel .tutor-heading-icon{display:none}.tutor-panel .tutor-input-shell>textarea{font-size:16px}.tutor-panel .tutor-context{padding:8px 16px}}#root{min-height:100vh}main{min-height:calc(100vh - 72px)}a,button{touch-action:manipulation}.sidebar-subjects{min-height:0;overflow:auto}.nav-link>svg{flex-shrink:0}.nav-link>span:not(.nav-count){font-size:12px}.nav-link>span.nav-count{font-size:11px}.subject-link{line-height:1.5}.nav-link.active{background:var(--accent-dark);color:var(--accent)}.subject-navigation a{gap:7px}.topbar{gap:16px}.local-pill{color:var(--muted);letter-spacing:1.5px;border:1px solid var(--line);border-radius:4px;padding:5px 8px;font-size:8px}.loading-screen{min-height:220px;color:var(--muted);justify-content:center;align-items:center;padding:32px;font-size:13px;display:flex}.empty-actions{justify-content:center;gap:12px;margin-top:24px;display:flex}.error-box{color:#e7b1a6;white-space:pre-wrap;overflow-wrap:anywhere;background:#e7b1a60f;border:1px solid #e7b1a638;border-radius:8px;align-items:flex-start;gap:8px;margin:16px 0;padding:14px 16px;font-size:12px;line-height:1.7;display:flex}.processing-line{color:var(--accent);align-items:center;gap:10px;margin:20px 0;font-size:12px;display:flex}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.muted{color:var(--muted)}.button{white-space:nowrap}.button>svg{flex-shrink:0}.button:has(>svg:only-child){min-width:40px;padding:8px}.inline-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.field{display:block}.field input:not([type=radio]):not([type=checkbox]):not([type=file]),.field select,.field textarea{background:var(--inset);border:1px solid var(--line);width:100%;color:var(--ink);border-radius:6px;min-height:42px;padding:10px 12px;font-size:12px}.field input[type=file]{max-width:100%;color:var(--secondary);font-size:12px}.field input[type=file]::file-selector-button{font:inherit;background:var(--sheet);color:var(--ink);border:1px solid var(--line);cursor:pointer;border-radius:6px;margin-right:12px;padding:10px 12px}.field textarea,dialog textarea{font:inherit;resize:vertical;min-height:100px;font-size:12px;line-height:1.8}.field select{appearance:auto}.field .time-controls{display:flex}.field .time-controls input[type=number]{width:80px}.field .time-controls input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.plain-fieldset{border:0;min-width:0;margin:0 0 24px;padding:0}.plain-fieldset>legend{color:var(--ink);margin-bottom:12px;padding:0;font-size:12px}.color-options{border:0;flex-wrap:wrap;gap:12px;margin:20px 0 28px;padding:0;display:flex}.color-options legend{margin-bottom:12px;font-size:12px}.color-options>label{cursor:pointer;border:2px solid #0000;border-radius:8px;place-items:center;width:40px;height:40px;display:grid}.color-options>label:has(input:checked){outline:2px solid var(--accent);outline-offset:4px}.color-options input{accent-color:var(--desk)}.app-modal{max-height:85dvh;overflow:auto}.modal-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.modal-heading h2{margin:0}.app-modal>form>textarea{background:var(--inset);border:1px solid var(--line);width:100%;color:var(--ink);border-radius:6px;padding:12px}.dialog-actions .button{min-width:92px}.app-modal .checks{max-height:240px;overflow:auto}.context-material-list{gap:8px;max-height:240px;display:grid;overflow:auto}.add-topic{color:var(--accent);align-items:center;margin-top:12px;display:flex}.material-count{color:var(--muted);font-size:12px}.resource>span:nth-child(2){min-width:0}.resource h3{overflow-wrap:anywhere}.resource-arrow{flex-shrink:0}.resource .file-icon>svg{color:var(--accent)}.document-title>span{align-items:center;gap:6px;display:flex}.document-title .button{min-height:36px;padding:8px 0;font-size:10px}.pdf-stage{min-height:300px;padding:20px;overflow:auto}.react-pdf__Document{justify-content:center;display:flex}.react-pdf__Page{background:#fff;max-width:100%}.react-pdf__Page canvas{max-width:100%;display:block;height:auto!important}.react-pdf__Page__textContent::selection{background:#8468b14d}.react-pdf__Page__textContent span::selection{background:#8468b14d}.react-pdf__Page__annotations.annotationLayer{z-index:1}.reader-notes form{margin:0}.reader-notes .section-heading>span{white-space:nowrap}.selected-quote{margin-bottom:12px}.selected-quote blockquote,.note-quote{border-left:2px solid var(--accent);color:var(--secondary);white-space:pre-wrap;max-height:140px;margin:12px 0;padding-left:12px;font-size:11px;line-height:1.8;overflow:auto}.reader-source-actions{color:var(--muted);flex-wrap:wrap;align-items:center;gap:20px;margin-top:20px;font-size:11px;display:flex}.reader-source-actions>a:hover{color:var(--accent)}.text-reader{background:var(--shelf);border:1px solid var(--line);border-radius:10px;max-height:75vh;padding:32px;overflow:auto}.text-reader>p{white-space:pre-wrap;margin-bottom:24px;font-size:14px;line-height:1.9}.transcript-row>.source-link{min-width:44px;min-height:40px;padding:0;font:11px monospace}.transcript-row>p{flex:1}.reader-content [data-vjs-container]{border:1px solid var(--line);border-radius:12px;overflow:hidden}.reader-content video{width:100%}.reader-content{--color-brand:var(--accent);--color-accent:var(--accent)}.video-resource .file-icon{color:var(--accent)}.prepared-exam{justify-content:space-between;align-items:center;gap:20px;margin:12px 0;padding:20px 24px;display:flex}.prepared-exam h3{font-size:14px}.prepared-exam small{margin-top:8px}.option-details{margin-top:16px}.option-details>summary{color:var(--muted);cursor:pointer;font-size:11px}.option-details>p{font-size:12px}.result-head p{margin-top:12px}.correction .reference{display:block}.history-table th{white-space:nowrap}.history-table td{vertical-align:middle}.grade-summary b{font-variant-numeric:tabular-nums}.question-layout .plain-fieldset{margin-bottom:0}.question-dots>button{min-width:36px;min-height:36px}.answer{margin-bottom:0}.answer input{flex-shrink:0;width:16px;height:16px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.setting-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:16px 0;font-size:12px;display:flex}.setting-row code,.settings-storage>code{color:var(--accent);overflow-wrap:anywhere;font:11px monospace}.setting-row>span:nth-child(2){text-align:right}.setup-command{background:var(--inset);border:1px solid var(--line);color:var(--accent);border-radius:6px;padding:16px;font:11px/1.8 monospace;overflow:auto}.setup-label{margin-top:24px;font-size:12px}.settings-note{margin-top:16px;font-size:11px;line-height:1.8}.settings-storage{grid-column:1/-1}.topbar-actions{flex-shrink:0;align-items:center;gap:16px;display:flex}.tutor-heading-copy>span{max-width:160px}.tutor-panel:not([open]){display:none}.tutor-panel button{font-family:inherit}.tutor-panel .error-box{font-size:11px}.tutor-more-sources{color:var(--muted);padding:8px;font-size:10px}.tutor-thinking{color:var(--accent);align-items:center;gap:10px;margin:24px 0;font-size:11px;display:flex}.tutor-panel .tutor-citations button{white-space:normal;text-align:left;overflow-wrap:anywhere;max-width:100%}.tutor-thread-item>span{flex:1;min-width:0}.markdown{color:var(--secondary);overflow-wrap:anywhere;font-size:13px;line-height:1.85}.markdown p{margin-bottom:16px}.markdown strong{color:var(--ink);font-weight:600}.markdown pre{background:var(--inset);border-left:2px solid var(--accent);border-radius:0 6px 6px 0;margin:20px 0;padding:16px;font:11px/1.8 monospace;overflow:auto}.markdown code{font-family:Cascadia Code,DejaVu Sans Mono,monospace;font-size:11px}.markdown p>code{background:var(--accent-dark);color:var(--accent);border-radius:3px;padding:2px 4px}.markdown ul,.markdown ol{margin:16px 0;padding-left:20px}.markdown li{margin:6px 0}.markdown h1,.markdown h2,.markdown h3{color:var(--ink);margin:20px 0 12px;font-family:inherit;font-size:15px;font-weight:500;line-height:1.6}.markdown table{border-collapse:collapse;max-width:100%;font-size:11px;display:block;overflow:auto}.markdown td,.markdown th{border:1px solid var(--line);padding:8px}.markdown a{color:var(--accent)}.tutor-linked-note{line-height:1.7}.tutor-composer textarea{min-height:44px}.tutor-send:disabled{transform:none}.tutor-open .document-stage{padding:20px}.tutor-open .local-pill{display:none}.tutor-open .exam-layout{grid-template-columns:1fr}.reader-notes .note-actions{gap:12px}.reader-heading h1{overflow-wrap:anywhere}.history-heading{flex-wrap:wrap}.processing-line{overflow-wrap:anywhere}.empty h3{font-size:17px}@media (width<=1150px){.settings-grid{grid-template-columns:1fr}.settings-storage{grid-column:auto}.reader-layout{grid-template-columns:minmax(0,1fr) 280px}.reader-heading{flex-wrap:wrap}.document-title{gap:12px}}@media (width<=900px){.reader-layout{grid-template-columns:1fr}.reader-notes .reader-note-list{grid-template-columns:repeat(2,minmax(0,1fr))}.subject-heading h1{font-size:26px}.heading-actions{flex-wrap:wrap}.topbar{height:auto;min-height:72px}.topbar-actions .local-pill{display:none}.topbar #breadcrumb{line-height:1.8}}@media (width<=800px){.nav-link>span,.nav-link>span:not(.nav-count){display:none}.nav-link>svg{display:block}.sidebar-subjects{display:none}}@media (width<=520px){.reader-notes .reader-note-list{grid-template-columns:1fr}.document-toolbar .document-title{display:none}.settings-grid{gap:16px}.panel.settings-storage{overflow-wrap:anywhere}.field .time-controls,.prepared-exam{flex-wrap:wrap}.tutor-trigger>span{display:none}.modal-heading h2{font-size:20px}.app-modal{padding:24px}.document-stage.pdf-stage{padding:12px}.reader-heading h1{font-size:24px}.subject-navigation{gap:16px}.subject-navigation a{font-size:11px}.transcript-row{gap:12px}.text-reader{padding:20px}.setting-row{font-size:11px}}@media (prefers-reduced-motion:reduce){.spin{animation:none}}.account-profile-form{margin:20px 0 24px}.account-profile-form .settings-note{margin:8px 0 16px}.account-profile-form .inline-actions{gap:8px}.account-profile-form .field input{width:100%;min-height:44px}.main-shell,#main,.subject-heading,.subject-heading>div:last-child,.reader-layout>*,.material-layout>section,.exam-layout>*,.panel{min-width:0}#breadcrumb{flex:1;align-items:center;min-width:0;display:flex}#breadcrumb>a{flex-shrink:0}#breadcrumb>.breadcrumb-subject{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--secondary);margin:0;overflow:hidden}#breadcrumb>.breadcrumb-section{color:var(--secondary);white-space:nowrap;margin:0}.icon-control{border:1px solid var(--line);background:var(--shelf);width:44px;height:44px;color:var(--secondary);border-radius:8px;flex-shrink:0;place-items:center;padding:8px;display:inline-grid}.icon-control:hover{background:var(--raised);color:var(--ink)}.menu-trigger,.mobile-navigation,.topic-picker,.reader-note-shortcut{display:none}.skip-link{background:var(--accent);color:var(--desk);z-index:30;border-radius:8px;padding:12px 16px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:none}body.navigation-open{overflow:hidden}dialog.navigation-drawer{border:0;border-right:1px solid var(--line);width:min(360px,100vw - 32px);max-width:none;height:100dvh;max-height:100dvh;padding:max(20px, env(safe-area-inset-top)) 20px max(20px, env(safe-area-inset-bottom));background:var(--desk);overscroll-behavior:contain;border-radius:0 16px 16px 0;margin:0;position:fixed;inset:0 auto 0 0;overflow-y:auto}.navigation-drawer[open]{flex-direction:column;display:flex}.navigation-drawer::backdrop{background:#08080aad}.drawer-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.navigation-drawer .brand{justify-content:flex-start;font-size:22px}.navigation-drawer .drawer-heading{margin-bottom:32px}.navigation-drawer .nav-label{display:block}.navigation-drawer nav{margin:0}.navigation-drawer .nav-link{justify-content:flex-start;min-height:48px;padding:12px;font-size:14px;display:flex}.navigation-drawer .nav-link>span:not(.nav-count){width:auto;font-size:14px;display:inline}.navigation-drawer .nav-count{display:inline}.navigation-drawer .sidebar-subjects{flex:1;min-height:0;margin:28px 0 16px;display:block;overflow-y:auto}.navigation-drawer .subject-link{min-height:48px;padding:14px 12px;font-size:13px}.navigation-drawer .sidebar-bottom{margin-top:auto;padding-top:16px;display:flex}.topic-picker{align-items:flex-end;gap:12px;margin-bottom:24px}.topic-picker label{min-width:0;color:var(--muted);flex:1;font-size:12px}.topic-picker select{width:100%;min-width:0;height:48px;color:var(--ink);background:var(--shelf);border:1px solid var(--line);border-radius:8px;margin-top:8px;padding:10px 12px;font-size:14px;display:block}.topic-picker>.button{min-width:48px;min-height:48px}.table-scroll{max-width:100%;overflow-x:auto}.transcript-list{overscroll-behavior:contain;scrollbar-width:thin;max-height:min(52dvh,520px);padding-right:8px;overflow-y:auto}.transcript-row>p{overflow-wrap:anywhere;min-width:0}.pdf-stage{overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom}.pdf-stage .react-pdf__Document{justify-content:flex-start;width:max-content;min-width:100%}.pdf-stage .react-pdf__Page{flex:none;max-width:none;margin-inline:auto}.pdf-stage .react-pdf__Page canvas{max-width:none}.pdf-pagination,.pdf-zoom{flex-shrink:0}.pdf-zoom .pdf-zoom-reset{font-variant-numeric:tabular-nums;min-width:56px}#reader-notes{scroll-margin-top:88px}.document-toolbar{flex-wrap:wrap}.reader-heading-actions{justify-content:flex-end}.tutor-source-chip{white-space:normal;text-align:left;overflow-wrap:anywhere;max-width:100%}.tutor-welcome h3{overflow-wrap:anywhere}@media (width<=1350px) and (width>=1101px){body.tutor-open .topic-picker{display:flex}body.tutor-open .topic-nav{display:none}body.tutor-open .material-layout{grid-template-columns:minmax(0,1fr)}}@media (width<=1100px){body.tutor-open{overflow:hidden}.sidebar{display:none}.main-shell{margin-left:0}.menu-trigger{display:inline-grid}.topbar{gap:16px;height:auto;min-height:72px;padding:12px 28px}#main{width:100%;padding:32px 28px 48px}.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.cover{height:180px}.card-body{padding:24px}.card-body h2{font-size:21px;line-height:1.3}.page-heading{flex-wrap:wrap;align-items:flex-start;gap:24px}.subject-heading{flex:1;gap:16px}.subject-heading h1{overflow-wrap:anywhere;font-size:30px;line-height:1.2}.subject-emblem{flex-shrink:0;width:60px;height:60px}.heading-actions{flex-wrap:wrap}.topic-picker{display:flex}.topic-nav,body.tutor-open .topic-nav{display:none}.material-layout,body.tutor-open .material-layout{grid-template-columns:minmax(0,1fr);gap:0}.topic-title h2{overflow-wrap:anywhere;font-size:24px;line-height:1.35}.reader-layout,body.tutor-open .reader-layout{grid-template-columns:minmax(0,1fr);gap:24px}body.tutor-open .reader-notes{display:block}.reader-notes .reader-note-list{grid-template-columns:repeat(2,minmax(0,1fr))}.reader-note-shortcut{display:inline-flex}.reader-heading{flex-wrap:wrap}.reader-heading>div:first-child{flex:100%}.reader-heading-actions{justify-content:flex-start}.reader-heading h1{font-size:28px}.document-toolbar .document-title{display:flex}.document-toolbar .document-title>span{display:none}.pdf-stage,body.tutor-open .pdf-stage{padding:16px}.exam-layout{grid-template-columns:minmax(0,1fr);max-width:none}.doubts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.doubt-card{padding:24px}.button,.tutor-trigger,.tab{min-height:44px}.subject-tabs{scrollbar-width:none;scroll-snap-type:x proximity;flex-wrap:nowrap;gap:4px;padding-bottom:4px;overflow-x:auto}.subject-tabs .tab{scroll-snap-align:start;flex-shrink:0;min-height:44px}.resource{gap:16px;padding:20px}.resource h3{font-size:14px;line-height:1.5}.resource small{font-size:11px;line-height:1.6}.settings-grid{grid-template-columns:minmax(0,1fr)}.settings-storage{grid-column:auto}dialog.tutor-panel{width:min(480px,100vw - 32px);height:calc(100dvh - 24px);inset:12px 12px 12px auto}.tutor-header{padding:16px}.tutor-icon-button{width:44px;min-width:44px;height:44px}.tutor-context{max-height:min(28dvh,240px)}}@media (width<=767px){:root{--mobile-navigation-height:calc(68px + env(safe-area-inset-bottom))}.topbar{min-height:68px;padding:max(10px, env(safe-area-inset-top)) 16px 10px;gap:12px}.topbar-actions{gap:0}.topbar .local-pill{display:none}#breadcrumb{font-size:12px;line-height:1.5;display:block;overflow:hidden}#breadcrumb>a{width:fit-content;color:var(--muted);font-size:10px;display:block}#breadcrumb>span:not(.breadcrumb-subject):not(.breadcrumb-section){display:none}#breadcrumb>.breadcrumb-subject{color:var(--ink);margin:2px 0 0;font-size:12px;display:block}#breadcrumb>.breadcrumb-section{display:none}.topbar .tutor-trigger{min-width:44px;min-height:44px;padding:10px}.tutor-trigger>span{display:none}#main{padding:28px 16px 40px}.has-mobile-navigation #main{padding-bottom:calc(var(--mobile-navigation-height) + 28px)}.mobile-navigation{z-index:5;min-height:var(--mobile-navigation-height);padding:6px max(8px, env(safe-area-inset-right)) max(6px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));background:var(--shelf);border-top:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;inset:auto 0 0}.mobile-navigation>a{min-width:0;min-height:52px;color:var(--muted);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:10px;display:flex}.mobile-navigation>a[aria-current=page]{color:var(--accent);background:var(--accent-dark)}.mobile-nav-icon{display:flex;position:relative}.mobile-nav-count{min-width:15px;color:var(--desk);background:var(--accent);border-radius:4px;padding:0 3px;font-size:9px;line-height:15px;position:absolute;top:-5px;right:-13px}.subject-navigation{display:none}.page-heading{gap:20px;margin-bottom:24px}.page-heading h1{letter-spacing:-.9px;font-size:30px}.subject-heading{flex-basis:100%}.subject-heading h1{font-size:26px;line-height:1.25}.subject-emblem{display:none}.subject-heading .eyebrow{letter-spacing:1.4px;margin-bottom:10px;font-size:9px}.heading-actions{gap:8px;width:100%}.heading-actions>.button:first-child,.heading-actions>.button.primary{flex:1}.heading-actions>.button:has(>svg:only-child){flex:none}.library-toolbar{flex-direction:column;align-items:stretch;gap:16px;margin-bottom:20px;display:flex}.library-toolbar .tabs{justify-content:flex-start}.search{width:100%;max-width:none;min-height:48px}.subject-grid{grid-template-columns:minmax(0,1fr);gap:20px}.cover{height:150px}.card-body{padding:20px}.card-body h2{min-height:0;font-size:22px}.card-body p{font-size:12px}.card-bottom{margin-top:20px;font-size:12px}.subject-tabs{margin-bottom:20px}.topic-picker{gap:8px;margin-bottom:24px}.topic-picker select{font-size:16px}.topic-title{align-items:flex-start;gap:16px;margin-bottom:20px}.topic-title h2{letter-spacing:-.4px;font-size:22px}.topic-title .eyebrow{margin-top:0;font-size:10px}.resource{align-items:flex-start;gap:12px;padding:16px}.resource .file-icon{min-width:36px;height:40px}.resource h3{text-wrap:initial;font-size:14px}.resource-arrow{align-self:center}.panel{padding:20px}.panel-title{font-size:20px}.plain-fieldset>legend,.field-label{font-size:14px}.checks{grid-template-columns:minmax(0,1fr)}.check{align-items:flex-start;min-height:48px;padding:14px;font-size:13px;line-height:1.6}.check input{flex-shrink:0;width:18px;height:18px;margin-top:2px}.field input:not([type=radio]):not([type=checkbox]):not([type=file]),.field select,.field textarea,.reader-notes textarea,.tutor-input-shell>textarea,.page-selector input,.search input,.history-filter select,#edit-note{font-size:16px}.field input[type=file]{font-size:14px}.field input[type=file]::file-selector-button{margin-bottom:8px;display:block}.color-options>label{width:44px;height:44px}.two-fields{grid-template-columns:minmax(0,1fr);gap:0}.difficulty{grid-template-columns:minmax(0,1fr)}.difficulty span{justify-content:space-between;gap:12px;padding:16px;font-size:14px;display:flex}.difficulty small{margin:0;font-size:11px}.submit-row{flex-wrap:wrap;gap:16px}.submit-row>.button{width:100%}.question-dots{scrollbar-width:thin;flex-wrap:nowrap;gap:8px;padding:4px 2px 12px;overflow-x:auto}.question-dots>button{flex:0 0 44px;min-width:44px;min-height:44px;font-size:12px}.exam-bar{align-items:flex-start;gap:12px;font-size:12px}.timer{flex-shrink:0}.question-panel{padding:20px}.question-panel h2{overflow-wrap:anywhere;font-size:22px;line-height:1.45}.answer{overflow-wrap:anywhere;gap:12px;padding:16px 12px;font-size:14px;line-height:1.7}.answer input,.answer-letter{flex-shrink:0}.exam-bottom{gap:12px}.exam-bottom>.button{flex:1}.prepared-exam{align-items:flex-start;gap:16px}.prepared-exam>.button{width:100%}.result-head{flex-wrap:wrap;gap:24px}.result-head h1{font-size:30px}.correction summary,.correction p{font-size:14px}.history-overview{grid-template-columns:minmax(0,1fr)}.history-table{min-width:0;display:block}.history-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.history-table tbody{gap:16px;display:grid}.history-table tr{background:var(--shelf);border:1px solid var(--line);border-radius:12px;grid-template-columns:minmax(0,1fr) auto;gap:12px 20px;padding:16px;display:grid}.history-table td{border:0;min-width:0;padding:0;font-size:14px;display:block}.history-table td:before{content:attr(data-label);color:var(--muted);margin-bottom:4px;font-size:10px;display:block}.history-table td:first-child{border-bottom:1px solid var(--line);grid-column:1/-1;padding-bottom:12px}.history-table td:nth-child(2),.history-table td:nth-child(3){grid-column:1}.history-table td.grade-value{color:var(--accent);text-align:right;grid-area:2/2/span 2;font-size:28px}.history-table td:last-child{grid-column:1/-1}.history-table td:last-child:before{display:none}.history-table td:last-child .button{width:100%}.reader-heading{gap:20px;margin-bottom:24px}.reader-heading h1{font-size:25px;line-height:1.3}.reader-heading-actions{gap:8px;width:100%}.reader-heading-actions>.button{flex:1;padding:10px}.document-toolbar{gap:8px 12px;padding:12px}.document-toolbar .document-title{width:100%}.document-toolbar .document-title .button{min-height:44px;font-size:12px}.document-toolbar .button{min-width:44px;min-height:44px;padding:8px}.document-toolbar .pdf-pagination{flex:1;gap:4px}.page-selector{white-space:nowrap;font-size:12px}.page-selector input{width:44px;min-height:44px;margin:0 2px;padding:8px 2px}.document-toolbar .pdf-zoom{gap:4px}.pdf-zoom .pdf-zoom-reset{min-width:48px;font-size:11px}.pdf-stage,body.tutor-open .pdf-stage{min-height:220px;padding:8px}.reader-notes{padding:20px}.reader-notes .reader-note-list{grid-template-columns:minmax(0,1fr)}.reader-source-actions{gap:8px 16px}.reader-source-actions>a,.reader-source-actions>button{align-items:center;min-height:44px;display:inline-flex}.transcript-list{max-height:40dvh}.transcript-row{gap:12px}.transcript-row>p{font-size:14px}.doubts-toolbar{flex-direction:column;align-items:stretch;gap:12px}.doubts-grid{grid-template-columns:minmax(0,1fr);gap:16px}.doubt-card{padding:20px}.note-actions>a,.note-actions>button{align-items:center;min-height:44px;display:inline-flex}.setting-row{align-items:flex-start;font-size:13px}.setting-row>span{min-width:0}.setting-row code,.settings-storage>code{font-size:12px}.settings-note{font-size:13px}.app-modal{border-radius:14px;width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:24px 20px}.modal-heading{margin-bottom:24px}.modal-heading h2{font-size:22px}.dialog-actions{flex-wrap:wrap;gap:8px}.dialog-actions>.button{flex:1;min-height:48px}dialog.tutor-panel{inset:var(--tutor-viewport-top,0px) 0 auto;width:100%;height:var(--tutor-viewport-height,100dvh);border:0;border-radius:0}.tutor-header{padding:max(12px, env(safe-area-inset-top)) 12px 12px;gap:8px}.tutor-heading-icon{display:none}.tutor-heading-copy h2{font-size:17px}.tutor-heading-copy>span{max-width:170px;font-size:11px}.tutor-header-actions .tutor-icon-button{width:44px;min-width:44px;height:44px}.tutor-context{max-height:min(27dvh,200px);padding:12px 16px}.tutor-context-heading{margin-bottom:4px}.tutor-context-heading>span{font-size:10px}.tutor-topic-tag{font-size:12px}.tutor-source-chip{min-height:44px;font-size:11px}.tutor-messages{padding:20px 16px}.tutor-welcome{padding-top:16px}.tutor-emblem{border-radius:12px;width:48px;height:48px;margin-bottom:20px}.tutor-welcome h3{max-width:none;margin-bottom:24px;font-size:26px;line-height:1.3}.tutor-starters>button{min-height:48px;font-size:13px}.tutor-panel .tutor-user-message>p,.tutor-panel .tutor-answer-copy>p,.markdown{font-size:15px;line-height:1.8}.tutor-user-message{margin-left:12px}.tutor-composer{padding:8px 12px max(12px, env(safe-area-inset-bottom))}.tutor-input-shell>textarea{line-height:1.6}.tutor-send{width:44px;height:44px}.tutor-composer-footer{font-size:9px}#toast{width:calc(100% - 32px);max-width:460px;bottom:calc(var(--mobile-navigation-height) + 12px);font-size:13px}}@media (pointer:coarse){.tutor-composer-footer>span:last-child{display:none}.subject-card:hover{transform:none}}@media (width<=380px){.heading-actions{flex-wrap:wrap}.heading-actions>.button{padding:10px;font-size:11px}.pdf-pagination{justify-content:center}.document-toolbar .pdf-zoom{justify-content:center;width:100%}.tutor-heading-copy>span{max-width:135px}}@media (width<=1100px){.subject-tabs::-webkit-scrollbar{display:none}}@media (width<=767px){.tutor-source-chip{width:100%}.tutor-source-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.question-dots{scrollbar-width:none}.question-dots::-webkit-scrollbar{display:none}}.reader-edit-short{display:none}@media (width<=767px){.reader-edit-long{display:none}.reader-edit-short{display:inline}.document-toolbar .document-title{display:none}}@media (width<=1100px){.document-toolbar .button,.transcript-row>.source-link,.tutor-text-button,.tutor-citations>button,.tutor-source-chip{min-height:44px}.document-toolbar .button{min-width:44px}.question-dots>button{min-width:44px;min-height:44px}.field input:not([type=radio]):not([type=checkbox]):not([type=file]),.field select,.field textarea,.reader-notes textarea,.tutor-input-shell>textarea,.page-selector input,.search input,.history-filter select,#edit-note{font-size:16px}.check{min-height:48px;font-size:13px}}.exam-topic-selector{margin-bottom:24px}.exam-topic-selector>summary{border:1px solid var(--line);background:var(--sheet);cursor:pointer;border-radius:8px;align-items:center;gap:12px;min-height:48px;padding:12px 16px;font-size:13px;list-style:none;display:flex}.exam-topic-selector>summary::-webkit-details-marker{display:none}.exam-topic-selector>summary>small{margin-left:auto;font-size:11px}.exam-topic-selector>summary>svg{color:var(--muted);flex-shrink:0}.exam-topic-selector[open]>summary>svg{transform:rotate(180deg)}.exam-topic-selector>fieldset{margin:12px 0 0}@media (width<=767px){.exam-topic-selector>summary{min-height:52px;font-size:14px}.tutor-context{min-height:0;max-height:min(calc(var(--tutor-viewport-height,100dvh) * .24), 200px);flex-shrink:1}}@media (width<=1100px){.topbar,#main{padding-left:max(28px, env(safe-area-inset-left));padding-right:max(28px, env(safe-area-inset-right))}.navigation-drawer{padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right))}}@media (width<=767px){.topbar,#main{padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right))}.tutor-header,.tutor-composer{padding-left:max(12px, env(safe-area-inset-left));padding-right:max(12px, env(safe-area-inset-right))}}.fullscreen-viewer{min-width:0}.fullscreen-button{flex-shrink:0;gap:8px}.video-viewer-toolbar{justify-content:flex-end;margin-bottom:8px;display:flex}.fullscreen-viewer.is-fullscreen{width:100%;height:100%;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--desk);box-sizing:border-box;flex-direction:column;display:flex;overflow:hidden}.fullscreen-viewer.fullscreen-fallback{z-index:1000;height:100dvh;position:fixed;inset:0}.fullscreen-viewer::backdrop{background:var(--desk)}.pdf-viewer.is-fullscreen .document-toolbar{border-radius:0;flex-shrink:0}.pdf-viewer.is-fullscreen .pdf-stage{border-radius:0;flex:1;min-height:0;overflow:auto}.video-viewer.is-fullscreen .video-viewer-toolbar{flex-shrink:0;margin:0;padding:8px 12px}.video-viewer .umbral-video-skin{border:1px solid var(--line);border-radius:12px;overflow:hidden}.video-viewer.is-fullscreen .umbral-video-skin{border:0;border-radius:0;flex:1;height:100%;min-height:0;aspect-ratio:auto!important}.video-viewer.is-fullscreen video{object-fit:contain;height:100%}@media (width<=767px){.fullscreen-button{min-height:44px}.document-toolbar>.fullscreen-button{margin-left:auto}.document-toolbar .fullscreen-button span{display:none}}.pdf-viewer.is-fullscreen .document-title .button{display:none}.youtube-stage{aspect-ratio:16/9;border:1px solid var(--line);background:#000;border-radius:12px;width:100%;min-height:200px;position:relative;overflow:hidden}.youtube-stage iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.youtube-viewer.is-fullscreen .youtube-stage{aspect-ratio:auto;border:0;border-radius:0;flex:1;min-height:0}.youtube-feedback{padding:16px}.pdf-viewer:not(.is-fullscreen) .pdf-stage{height:var(--pdf-available-height,70dvh);min-height:240px}.pdf-viewer .pdf-stage{scrollbar-gutter:stable;overflow:auto}.pdf-page-region{align-items:center;width:max-content;min-width:100%;min-height:100%;display:flex}.pdf-scale-select{appearance:auto;max-width:192px;min-height:36px;color:var(--ink);background:var(--inset);border:1px solid var(--line);font:inherit;font-variant-numeric:tabular-nums;border-radius:6px;padding:8px}.pdf-viewer.is-fullscreen .pdf-stage{height:auto}@media (width<=767px){.pdf-scale-select{flex:1;width:0;min-width:0;max-width:none;min-height:44px;font-size:16px}.pdf-viewer .document-toolbar>.fullscreen-button{order:1}.pdf-viewer .document-toolbar .pdf-zoom{flex-wrap:nowrap;flex:1 0 100%;order:2;width:100%;max-width:100%}.pdf-viewer .pdf-zoom .button{flex:0 0 44px}}.pdf-viewer:focus{outline:none}.pdf-viewer:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:10px}.access-page{background:var(--desk);place-content:center;gap:32px;min-height:100dvh;padding:32px 20px;display:grid}.access-brand{letter-spacing:-1px;justify-content:center;align-items:center;gap:12px;font:700 30px Trebuchet MS,sans-serif;display:flex}.access-brand .brand-symbol{width:44px;height:44px}.access-card{background:var(--shelf);border:1px solid var(--line);border-radius:14px;width:min(420px,100vw - 40px);padding:32px}.access-glyph{background:var(--accent-dark);width:52px;height:52px;color:var(--accent);border-radius:12px;place-items:center;margin-bottom:24px;display:grid}.access-card h1{letter-spacing:-.6px;margin-bottom:28px;font-size:26px}.access-card form>.button{justify-content:center;width:100%}.access-links{flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:24px;display:flex}.access-feedback{color:var(--accent);margin-bottom:20px;font-size:13px;line-height:1.7}.access-card .field small{color:var(--muted);font-size:11px}.settings-tabs{border-bottom:1px solid var(--line);gap:24px;margin-bottom:28px;display:flex;overflow-x:auto}.settings-tabs .tab{appearance:none;white-space:nowrap;min-height:48px;color:var(--secondary);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;flex:none;justify-content:center;align-items:center;padding:12px 4px;font-size:13px;line-height:20px;display:inline-flex}.settings-tabs .tab:hover{color:var(--ink)}.settings-tabs .tab.active{color:var(--accent);border-bottom-color:var(--accent)}.settings-tabs .tab:focus-visible{outline-offset:-4px}.connection-state{color:var(--muted);align-items:center;gap:8px;font-size:11px;display:flex}.connection-state.connected{color:var(--success)}.ai-connection>.inline-actions{margin-top:24px}.connection-actions{flex-wrap:wrap;gap:16px;margin-top:20px;display:flex}.settings-external{color:var(--muted);align-items:center;gap:8px;margin-top:24px;font-size:11px;display:inline-flex}.key-form{border-top:1px solid var(--line);margin-top:24px;padding-top:24px}.key-usage{margin-top:20px}.key-usage>.text-button{align-items:center;gap:8px;margin-top:16px;display:inline-flex}.model-prices{background:var(--inset);border-radius:8px;flex-wrap:wrap;gap:20px;margin:20px 0;padding:16px;display:flex}.model-prices>span{width:100%;color:var(--muted);font-size:11px}.model-prices b{font-size:14px;font-weight:500}.model-prices small{color:var(--muted);margin-top:6px;font-size:11px;display:block}.settings-grid .panel-title{align-items:center;gap:10px;display:flex}.account-export{margin-top:24px}.storage-value{font-variant-numeric:tabular-nums;letter-spacing:-.5px;margin:28px 0 16px;font-size:28px}.storage-value small{color:var(--muted);font-size:14px}.settings-grid meter{width:100%;height:10px;accent-color:var(--accent)}.processing-status{margin-top:28px}.admin-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:28px;display:grid}.admin-summary>div{background:var(--shelf);border:1px solid var(--line);border-radius:10px;padding:24px}.admin-summary span{color:var(--muted);margin-bottom:16px;font-size:12px;display:block}.admin-summary strong{font-size:24px;font-weight:500}.admin-summary small{color:var(--muted);font-size:13px}.admin-user{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:20px;padding:20px 0;font-size:12px;display:flex}.admin-user>div{flex:1;min-width:160px}.admin-user small{color:var(--muted);overflow-wrap:anywhere;margin-top:8px;display:block}.admin-user>span{color:var(--secondary)}.admin-user form{align-items:center;gap:8px;display:flex}.admin-user input{border:1px solid var(--line);background:var(--inset);width:90px;color:var(--ink);border-radius:6px;padding:10px}.account-delete>.button{margin-top:20px}.settings-grid select{text-overflow:ellipsis;max-width:100%}.settings-grid .settings-note{margin-top:16px;margin-bottom:20px}.settings-grid .section-heading{margin-bottom:0}.settings-grid .section-heading .panel-title{margin:0}@media (width<=767px){.access-card{padding:24px}.settings-tabs{gap:20px}.settings-grid .button,.admin-user .button{min-height:44px}.settings-grid input,.settings-grid select,.admin-user input{font-size:16px}.admin-summary{grid-template-columns:1fr;gap:12px}.admin-summary>div{justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.admin-summary span{margin:0}.admin-summary strong{font-size:19px}.admin-user{align-items:flex-start;gap:16px}.admin-user>div{flex:auto;width:100%}.settings-grid>.panel{min-width:0}}.private-ai-provider{margin-bottom:24px}.private-ai-provider>.inline-actions{margin:24px 0}.private-ai-provider .settings-note{margin:16px 0;font-size:12px;line-height:1.7}.private-ai-provider .panel-title{margin:0}.private-ai-provider>.button{margin-top:8px}@media (width<=767px){.private-ai-provider .inline-actions{flex-direction:column;align-items:stretch}.private-ai-provider .button{min-height:44px}.private-ai-provider .section-heading{flex-direction:column;align-items:flex-start;gap:12px}}.app-modal.context-picker{width:min(840px,100vw - 48px);max-height:min(88dvh,920px);padding:0;overflow:hidden}.context-picker[open]{flex-direction:column;display:flex}.context-picker>.modal-heading{border-bottom:1px solid var(--line);flex:none;margin:0;padding:24px 28px}.context-picker>.modal-heading h2{font-size:22px}.context-picker>form{flex-direction:column;min-height:0;display:flex;overflow:hidden}.context-picker-body{overscroll-behavior:contain;scrollbar-width:thin;min-height:0;padding:24px 28px;overflow:auto}.context-location{background:var(--inset);border:1px solid var(--line);width:100%;color:var(--accent);text-align:left;border-radius:8px;align-items:center;gap:12px;min-height:60px;margin-bottom:24px;padding:12px 16px;display:flex}.context-location>svg{flex:none}.context-location>span{min-width:0}.context-location strong{font-size:12px;font-weight:500}.context-location small{text-overflow:ellipsis;white-space:nowrap;color:var(--secondary);margin-top:4px;font-size:11px;overflow:hidden}.context-location:hover{background:var(--accent-dark)}.context-modes{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0;margin:0 0 24px;padding:0;display:grid}.context-modes legend{color:var(--ink);margin-bottom:12px;padding:0;font-size:13px;font-weight:500}.context-modes label{border:1px solid var(--line);background:var(--shelf);color:var(--secondary);cursor:pointer;border-radius:8px;flex-direction:column;align-items:flex-start;gap:12px;padding:16px;font-size:12px;line-height:1.5;display:flex;position:relative}.context-modes label:hover{background:var(--raised)}.context-modes label.selected{background:var(--accent-dark);border-color:var(--accent);color:var(--accent)}.context-modes input{opacity:0;width:1px;height:1px;position:absolute;top:12px;left:12px}.context-modes label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.context-mode-check{visibility:hidden;position:absolute;top:16px;right:12px}.context-modes .selected .context-mode-check{visibility:visible}.context-list-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.context-list-heading h3{letter-spacing:0;font-size:14px;font-weight:500}.context-list-heading>span{color:var(--muted);font-size:11px}.context-search{background:var(--inset);border:1px solid var(--line);color:var(--muted);border-radius:7px;align-items:center;gap:12px;margin-bottom:12px;padding:0 12px;display:flex}.context-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;min-height:44px;font-size:13px}.context-search:focus-within{outline:2px solid var(--accent);outline-offset:2px}.context-search input:focus-visible{outline:0}.context-options{flex-direction:column;gap:8px;display:flex}.context-option{border:1px solid var(--line);cursor:pointer;background:var(--shelf);border-radius:8px;align-items:center;gap:12px;min-height:64px;padding:12px 16px;display:flex}.context-option:hover{background:var(--raised)}.context-option.selected{background:var(--accent-dark);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.context-option input{width:17px;height:17px;accent-color:var(--accent);flex:none;margin:0}.context-option>span:first-of-type{flex:1;min-width:0}.context-option strong{color:var(--ink);overflow-wrap:anywhere;font-size:13px;font-weight:400;line-height:1.6;display:block}.context-option small{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.5}.context-option .context-text-state{color:var(--muted);white-space:nowrap;flex:none;font-size:10px}.context-option .context-text-state.ready{color:var(--success)}.context-all-summary{background:var(--shelf);border:1px solid var(--line);border-radius:8px;align-items:center;gap:16px;padding:24px;display:flex}.context-all-summary>svg{color:var(--accent);flex:none}.context-all-summary strong{font-size:15px;font-weight:500}.context-all-summary p{color:var(--muted);margin-top:8px;font-size:12px}.context-included{margin-top:20px;font-size:12px}.context-included summary{cursor:pointer;color:var(--secondary);padding:12px 0}.context-included ul{margin:0;padding:0;list-style:none}.context-included li{border-top:1px solid var(--line);justify-content:space-between;gap:16px;padding:12px 0;line-height:1.7;display:flex}.context-included li>span{overflow-wrap:anywhere;min-width:0}.context-included small{white-space:nowrap;padding-top:2px;font-size:10px}.context-no-results{color:var(--muted);padding:24px 0;font-size:13px}.context-picker-footer{border-top:1px solid var(--line);background:var(--sheet);flex:none;justify-content:space-between;align-items:center;gap:20px;padding:20px 28px;display:flex}.context-selection-summary{min-width:0}.context-selection-summary strong{font-size:12px;font-weight:500;display:block}.context-selection-summary>span{color:var(--muted);margin-top:6px;font-size:11px;line-height:1.5;display:block}.context-picker-actions{flex:none;gap:8px;display:flex}.context-picker-actions .button{min-height:44px}@media (width<=767px){.app-modal.context-picker{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.context-picker>.modal-heading{padding:20px}.context-picker>.modal-heading h2{font-size:20px}.context-picker-body{padding:20px}.context-modes{grid-template-columns:1fr;gap:8px}.context-modes label{flex-direction:row;align-items:center;gap:12px;min-height:48px;padding:12px 40px 12px 16px}.context-mode-check{top:16px}.context-search input{font-size:16px}.context-option{align-items:flex-start;padding:12px}.context-option input{margin-top:3px}.context-option .context-text-state{display:none}.context-picker-footer{flex-direction:column;align-items:stretch;gap:16px;padding:16px 20px}.context-picker-actions{flex-wrap:wrap;justify-content:flex-end}.context-picker-actions .button{flex:1;padding:10px 12px;font-size:12px}.context-included li{flex-direction:column;gap:4px}}.sidebar-heading{justify-content:space-between;align-items:center;gap:4px;margin-bottom:24px;display:flex}.sidebar-heading .brand{flex-shrink:0;gap:8px;font-size:18px}.brand-wordmark{white-space:nowrap}.brand-wordmark>span{color:var(--accent)}.sidebar-toggle{width:44px;height:44px;color:var(--muted);background:0 0;border:0;border-radius:6px;flex:none;place-items:center;padding:12px;display:grid}.sidebar-toggle:hover{background:var(--sheet);color:var(--ink)}.subject-avatar{display:none}.subject-name{overflow-wrap:anywhere;min-width:0}.sidebar-subjects{scrollbar-width:thin;min-height:0;overflow-y:auto}.sidebar-bottom{flex-shrink:0;align-items:center;display:flex}.account-avatar{border:1px solid var(--line);background:var(--shelf);width:44px;height:44px;color:var(--secondary);letter-spacing:.4px;border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:600;text-decoration:none;display:grid}.account-avatar:hover{background:var(--sheet);color:var(--ink);border-color:var(--accent)}.account-avatar:active{background:var(--accent-dark)}.account-avatar.active{background:var(--accent-dark);color:var(--accent);border-color:var(--accent)}.account-avatar:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.account-avatar svg{display:block}@media (width>=1101px){.sidebar.is-collapsed{width:72px;padding:32px 14px 20px}.main-shell.is-sidebar-collapsed{margin-left:72px}.sidebar.is-collapsed .sidebar-heading{flex-direction:column;gap:16px;margin-bottom:0}.sidebar.is-collapsed .sidebar-toggle{width:44px;height:44px}.sidebar.is-collapsed .brand-wordmark,.sidebar.is-collapsed .nav-label,.sidebar.is-collapsed .nav-link>span,.sidebar.is-collapsed .subject-dot,.sidebar.is-collapsed .subject-name{display:none}.sidebar.is-collapsed>nav{margin-top:32px}.sidebar.is-collapsed .nav-link{justify-content:center;align-items:center;gap:0;width:44px;min-height:44px;padding:0;display:flex}.sidebar.is-collapsed .sidebar-subjects{scrollbar-width:thin;margin-top:24px;overflow-x:hidden}.sidebar.is-collapsed .subject-link{justify-content:center;gap:0;width:44px;min-height:48px;padding:4px}.sidebar.is-collapsed .subject-avatar{border:1px solid var(--line);background:var(--inset);letter-spacing:.3px;border-radius:8px;place-items:center;width:36px;height:36px;font-size:11px;font-weight:500;display:grid}.sidebar.is-collapsed .subject-link.active .subject-avatar{border-color:currentColor}.sidebar.is-collapsed .sidebar-bottom{flex-direction:column;align-items:center;display:flex}}@media (width<=767px){#breadcrumb.breadcrumb-reader>a:first-child{display:none}#breadcrumb.breadcrumb-reader>.breadcrumb-return{color:var(--secondary);margin-top:2px;font-size:11px;display:block}.reader-heading-actions>.button:first-child{flex:0 0 44px}}.sidebar .nav-link{min-height:44px;font-size:14px}.sidebar .subject-link{min-height:44px;font-size:13px;line-height:1.45}.sidebar .nav-label{letter-spacing:1px;font-size:10px}.sidebar .nav-count{font-size:12px}.sidebar-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#breadcrumb:empty{flex:1}.material-shelf{min-width:0;container-type:inline-size}.material-toolbar{grid-template-columns:minmax(180px,.8fr) minmax(220px,1.2fr) auto auto;align-items:center;gap:12px;margin:28px 0 24px;display:grid}.material-topic-select{min-width:0;display:block}.material-topic-select select,.material-filter-panel select{background:var(--shelf);border:1px solid var(--line);width:100%;min-width:0;min-height:44px;color:var(--ink);font:inherit;text-overflow:ellipsis;border-radius:7px;padding:10px 12px;font-size:14px}.material-search{background:var(--inset);border:1px solid var(--line);min-width:0;color:var(--muted);border-radius:7px;align-items:center;gap:10px;padding:0 12px;display:flex}.material-search>svg{flex:none}.material-search input{width:100%;min-width:0;min-height:44px;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:14px}.material-search input::-webkit-search-cancel-button{appearance:none}.material-search kbd{border:1px solid var(--line);width:19px;height:21px;color:var(--muted);font:10px var(--font-mono,monospace);border-radius:3px;flex:none;place-items:center;display:grid}.material-clear-search{width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;place-items:center;margin-right:-8px;padding:0;display:grid}.material-clear-search:hover{background:var(--sheet);color:var(--ink)}.material-clear-search:focus-visible{outline:2px solid var(--accent);outline-offset:-4px}.material-search:focus-within{outline:2px solid var(--accent);outline-offset:2px}.material-toolbar>.material-add{white-space:nowrap;min-height:44px}.material-filters{position:relative}.material-filters>summary{border:1px solid var(--line);min-height:44px;color:var(--secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:13px;list-style:none;display:flex}.material-filters>summary::-webkit-details-marker{display:none}.material-filters>summary:hover,.material-filters[open]>summary{background:var(--sheet);color:var(--ink)}.material-filters>summary:focus-visible,.material-topic-select select:focus-visible,.material-filter-panel select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.material-filter-count{background:var(--accent-dark);min-width:20px;height:20px;color:var(--accent);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;padding:0 4px;font-size:11px;display:grid}.material-filter-panel{z-index:8;border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);background:var(--sheet);border-radius:8px;grid-template-columns:1fr 1fr;gap:16px;width:360px;max-width:calc(100vw - 40px);padding:20px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 32px #0003}.material-filter-panel .field{min-width:0;margin:0}.material-filter-panel .field-label{font-size:12px}.material-active-filters{flex-wrap:wrap;gap:8px;margin:-8px 0 20px;display:flex}.material-active-filters>button{border:1px solid color-mix(in srgb,var(--accent) 24%,transparent);background:color-mix(in srgb,var(--accent) 7%,transparent);min-height:44px;color:var(--accent);font:inherit;cursor:pointer;border-radius:5px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:inline-flex}.material-active-filters>button:hover{border-color:var(--accent)}.material-active-filters>.material-clear-filters{color:var(--muted);background:0 0;border-color:#0000}.material-topic-heading{font-family:var(--font-ui,sans-serif);letter-spacing:-.4px;overflow-wrap:anywhere;margin:28px 0 18px;font-size:21px;font-weight:500;line-height:1.45}.material-list{border-top:1px solid var(--line)}.material-list-header{color:var(--muted);font:9px var(--font-mono,monospace);letter-spacing:1.2px;padding:15px 12px 13px}.material-resource-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-width:0;padding:4px 0;transition:background-color .15s;display:flex}.material-resource-row:hover,.material-resource-row:focus-within{background:var(--shelf)}.material-resource-link{border-radius:6px;flex:1;align-items:center;gap:17px;min-width:0;min-height:80px;padding:17px 12px;text-decoration:none;display:flex}.material-resource-link:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.material-format-icon{border:1px solid color-mix(in srgb,var(--accent) 18%,transparent);background:color-mix(in srgb,var(--accent) 4%,transparent);width:40px;height:46px;color:var(--accent);border-radius:5px;flex:none;place-items:center;display:grid}.material-resource-row[data-format=video] .material-format-icon,.material-resource-row[data-format=classes] .material-format-icon,.material-resource-row[data-format=audio] .material-format-icon{background:color-mix(in srgb,var(--secondary) 4%,transparent);border-color:color-mix(in srgb,var(--secondary) 15%,transparent);color:var(--secondary)}.material-resource-copy{flex:1;min-width:0}.material-resource-copy h3{font-family:var(--font-ui,sans-serif);letter-spacing:-.15px;color:var(--ink);overflow-wrap:anywhere;margin:0 0 6px;font-size:14px;font-weight:500;line-height:1.6}.material-resource-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;line-height:1.6;display:flex}.material-resource-warning{color:var(--secondary);align-items:center;gap:6px;display:inline-flex}.material-resource-warning:before{content:"·";color:var(--muted);margin-right:2px}.material-resource-row>.action-menu{flex:none;margin-right:8px}.app-modal.add-material-dialog{overscroll-behavior:contain;scrollbar-width:thin;width:min(560px,100vw - 32px);max-height:calc(100dvh - 32px);overflow-y:auto}.add-material-dialog .field input[type=file]{width:100%}.add-material-dialog .field input,.add-material-dialog .field select{min-height:44px}.material-source-options{grid-template-columns:1fr 1fr;gap:8px;margin:24px 0;display:grid}.material-source-options>button{border:1px solid var(--line);min-height:44px;color:var(--secondary);font:inherit;cursor:pointer;background:0 0;border-radius:7px;justify-content:center;align-items:center;gap:10px;padding:10px 12px;font-size:14px;display:flex}.material-source-options>button:hover{background:var(--sheet)}.material-source-options>button.selected{background:var(--accent-dark);border-color:var(--accent);color:var(--accent)}.material-metadata{border-top:1px solid var(--line);margin:24px 0}.material-metadata>summary{cursor:pointer;min-height:48px;color:var(--secondary);align-items:center;gap:12px;font-size:13px;list-style:none;display:flex}.material-metadata>summary:before{content:"›";color:var(--muted);font-size:20px;transform:rotate(0)}.material-metadata[open]>summary:before{transform:rotate(90deg)}.material-metadata>summary::-webkit-details-marker{display:none}.material-metadata>summary>span{color:var(--muted);margin-left:auto;font-size:12px}.material-metadata>summary:focus-visible,.material-source-options>button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.material-metadata-fields{padding-top:12px}.material-topic-assignment{border:0;min-width:0;margin:20px 0 0;padding:0}.material-topic-assignment>legend{color:var(--secondary);margin-bottom:8px;font-size:12px}.material-topic-checks{scrollbar-width:thin;flex-direction:column;gap:4px;max-height:240px;display:flex;overflow:auto}.material-topic-checks>label{cursor:pointer;align-items:flex-start;gap:12px;min-height:44px;padding:10px 4px;font-size:13px;line-height:1.6;display:flex}.material-topic-checks input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin:2px 0 0}.material-read-option{min-height:44px;color:var(--secondary);cursor:pointer;align-items:center;gap:12px;margin-top:16px;font-size:12px;display:flex}.material-read-option>input{width:17px;height:17px;accent-color:var(--accent);flex:none}.web-reader-heading{margin-bottom:16px}.web-reader p{overflow-wrap:anywhere}@media (width<=1000px){.material-toolbar{grid-template-columns:minmax(150px,.8fr) minmax(150px,1.2fr) auto}.material-toolbar>.material-add{grid-area:1/3}.material-filters{grid-area:2/3}.material-search{grid-area:2/1/auto/3}.material-topic-select{grid-column:1/3}}@media (width<=767px){.material-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:20px 0}.material-topic-select{grid-area:1/1}.material-toolbar>.material-add{grid-area:1/2;padding:10px 12px}.material-search{grid-area:2/1}.material-filters{grid-area:2/2}.material-filter-panel{grid-template-columns:1fr;gap:12px;width:280px;padding:16px}.material-search input,.material-topic-select select,.material-filter-panel select,.add-material-dialog .field input,.add-material-dialog .field select{font-size:16px}.material-resource-link{gap:12px;min-height:86px;padding:15px 2px}.material-resource-row{gap:4px}.material-resource-row>.action-menu{margin-right:0}.material-format-icon{width:34px;height:42px}.material-format-icon>svg{width:17px}.material-search kbd{display:none}.material-topic-heading{margin-top:24px;font-size:19px}.material-list-header{padding-inline:2px;font-size:8px}.material-resource-meta{gap:2px 6px}.material-resource-warning{flex-basis:100%}.material-resource-warning:before{display:none}.app-modal.add-material-dialog{padding:24px 20px}}@container (width<=720px){.material-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:8px}.material-topic-select{grid-area:1/1}.material-toolbar>.material-add{grid-area:1/2}.material-search{grid-area:2/1}.material-filters{grid-area:2/2}}@media (prefers-reduced-motion:reduce){.material-resource-row{transition:none}}.external-recording-stage{aspect-ratio:16/9;background:var(--inset);border:1px solid var(--line);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:24px;min-height:280px;max-height:560px;padding:32px 24px;display:flex}.recording-play-icon{border:1px solid var(--line);background:var(--shelf);width:72px;height:72px;color:var(--accent);border-radius:50%;place-items:center;display:grid}.recording-origin{color:var(--muted);overflow-wrap:anywhere;text-align:center;font-size:12px}.external-recording .inline-actions{justify-content:center}.recording-transcript{border-top:1px solid var(--line);margin-top:24px}.recording-transcript>summary{color:var(--secondary);cursor:pointer;min-height:44px;padding:16px 0;font-size:12px}.recording-transcript .transcript-actions{justify-content:flex-end;margin:0 0 16px}.recording-transcript .transcript-time{color:var(--muted);flex:none;min-width:44px;padding-top:4px;font:11px monospace}@media (width<=767px){.external-recording-stage{aspect-ratio:auto;min-height:260px;padding:24px 16px}.external-recording .inline-actions{flex-direction:column;width:100%}.external-recording .inline-actions>.button{justify-content:center;width:100%;min-height:44px}}.youtube-controls{flex-wrap:wrap;align-items:center;gap:8px}.youtube-seek-controls{gap:8px;margin-right:auto;display:flex}.youtube-speed select{background:var(--sheet);width:80px;min-height:36px;color:var(--ink);border:1px solid var(--line);font:inherit;border-radius:7px;padding:6px 10px}@media (width<=767px){.youtube-controls .button,.youtube-speed select{min-height:44px}.youtube-speed select{font-size:16px}.youtube-controls{gap:8px}}.calendar-heading{align-items:center}.calendar-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin:0 0 24px;display:flex}.calendar-date-nav,.calendar-filters{align-items:center;gap:8px;min-width:0;display:flex}.calendar-date-nav h2{letter-spacing:-.4px;margin-left:12px;font-size:19px}.calendar-filters select{background:var(--sheet);max-width:230px;min-height:42px;color:var(--ink);border:1px solid var(--line);border-radius:7px;padding:8px 12px;font-size:12px}.study-calendar{--fc-border-color:var(--line);--fc-page-bg-color:var(--desk);--fc-neutral-bg-color:var(--shelf);--fc-neutral-text-color:var(--secondary);--fc-today-bg-color:color-mix(in srgb,var(--accent) 4%,transparent);--fc-highlight-color:color-mix(in srgb,var(--accent) 12%,transparent);--fc-list-event-hover-bg-color:var(--raised);--fc-event-border-color:var(--accent);--fc-now-indicator-color:var(--accent);--fc-small-font-size:11px;background:var(--shelf);border:1px solid var(--line);border-radius:12px;overflow:hidden}.study-calendar .fc-theme-standard .fc-scrollgrid{border:0}.study-calendar .fc-col-header-cell-cushion{color:var(--secondary);padding:16px 4px;font-size:12px;font-weight:500}.study-calendar .fc-day-today .fc-col-header-cell-cushion{color:var(--accent)}.study-calendar .fc-timegrid-slot-minor{border-top-style:dotted}.study-calendar .fc-timegrid-axis-cushion,.study-calendar .fc-daygrid-day-number{color:var(--secondary);font-size:11px}.study-calendar .fc-event{cursor:pointer;box-shadow:none;border-width:0 0 0 3px;border-radius:5px;padding:3px 5px}.study-calendar .fc-event:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.study-event-copy{min-width:0;line-height:1.4;overflow:hidden}.study-event-copy>span{color:var(--secondary);font-size:10px;display:block}.study-event-copy strong{overflow-wrap:anywhere;font-size:11px;font-weight:500;display:block;overflow:hidden}.study-event-copy small{white-space:normal;margin-top:4px;font-size:11px}.study-calendar .study-completed strong{text-decoration:line-through}.study-calendar .study-deadline{border-left-width:4px;font-weight:600}.study-task-deadline .study-event-copy small{color:var(--accent);margin-top:2px;font-size:10px;display:block}.study-task-deadline .study-event-copy strong{font-weight:600}.calendar-task-link{border-radius:4px;display:block}.calendar-task-link:hover strong{color:var(--accent)}.study-calendar .fc-list{border:0}.study-calendar .fc-list-day-cushion{background:var(--sheet);padding:14px 16px;font-size:12px;font-weight:500}.study-calendar .fc-list-event-time{color:var(--secondary);font-size:12px}.study-calendar .fc-list-event .study-event-copy>span{display:none}.study-calendar .fc-list-event .study-event-copy strong{font-size:14px}.study-calendar .fc-list-empty{background:var(--shelf);color:var(--muted);min-height:220px;font-size:13px}.study-calendar .fc-dayGridMonth-view .fc-daygrid-day-frame{min-height:100px}.study-calendar .fc-timegrid .fc-daygrid-day-frame{min-height:36px}.study-calendar .fc-popover{background:var(--sheet);border:1px solid var(--line);color:var(--ink)}.calendar-hours{color:var(--muted);gap:28px;margin-top:20px;font-size:12px;display:flex}.calendar-hours strong{color:var(--ink);font-weight:500}.app-modal.calendar-editor{width:650px;max-width:calc(100vw - 24px)}.calendar-form-pair{grid-template-columns:1fr 1fr;gap:16px;display:grid}.calendar-form-pair>*{min-width:0}.calendar-editor input,.calendar-editor select,.calendar-editor textarea{width:100%;min-width:0}.calendar-check{min-height:44px;color:var(--secondary);align-items:center;gap:10px;font-size:12px;display:flex}.calendar-check input{width:16px;height:16px;accent-color:var(--accent)}.calendar-repeat{border:0;gap:6px;margin:12px 0 20px;padding:0;display:flex}.calendar-repeat legend{color:var(--muted);margin-bottom:8px;font-size:12px}.calendar-repeat label{border:1px solid var(--line);cursor:pointer;width:36px;height:36px;color:var(--secondary);border-radius:7px;place-items:center;font-size:12px;display:grid;position:relative}.calendar-repeat label.selected{background:var(--accent-dark);color:var(--accent);border-color:var(--accent)}.calendar-repeat input{opacity:0;cursor:pointer;position:absolute;inset:0}.calendar-repeat label:focus-within{outline:2px solid var(--accent);outline-offset:3px}.calendar-editor-actions{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.calendar-task-summary{gap:16px;padding:8px 0 16px;display:grid}.calendar-task-summary h3{overflow-wrap:anywhere;font-size:18px}.calendar-task-summary p{font-size:13px}.calendar-task-summary .button{justify-self:start}.calendar-proposal{border:1px solid var(--line);background:var(--inset);border-radius:8px;margin:16px 0;padding:14px}.calendar-proposal ul{max-height:360px;margin:0 0 12px;padding:0;list-style:none;overflow:auto}.calendar-proposal li{border-bottom:1px solid var(--line);padding:12px 0}.calendar-proposal li:first-child{padding-top:0}.calendar-proposal strong{margin:4px 0;font-size:12px;font-weight:500;display:block}.calendar-proposal-date{color:var(--accent);font-size:11px}.calendar-proposal small{font-size:10px}@media (width<=767px){.calendar-heading{flex-direction:column;align-items:flex-start;gap:20px}.calendar-heading .heading-actions{flex-wrap:wrap;width:100%}.calendar-heading .heading-actions>.button{flex:1;min-height:44px}.calendar-toolbar{gap:16px}.calendar-date-nav{flex-wrap:wrap;width:100%}.calendar-date-nav h2{order:-1;width:100%;margin:0 0 8px;font-size:20px}.calendar-filters{width:100%}.calendar-filters select{flex:1;min-width:0;max-width:none;min-height:44px;font-size:16px}.calendar-form-pair{grid-template-columns:1fr;gap:0}.calendar-editor input,.calendar-editor select,.calendar-editor textarea{font-size:16px}.calendar-repeat label{width:38px;height:44px}.calendar-hours{gap:16px;font-size:11px}.study-calendar .fc-list-event td{padding:12px 8px}.study-calendar .fc-list-event-time{font-size:11px}}.tutor-composer-tools>.tutor-send:only-child{margin-left:auto}.calendar-date-nav .button{min-width:44px;min-height:44px;padding-inline:12px}.calendar-date-nav h2{font-family:var(--font-ui,sans-serif);letter-spacing:-.4px;margin-left:14px;font-size:20px;font-weight:500;line-height:1.6}.calendar-filters{gap:10px}.calendar-filters select{background:var(--inset);text-overflow:ellipsis;border-radius:6px;max-width:240px;min-height:44px;font-size:12px}.study-calendar{background:var(--shelf);border-radius:9px}.study-calendar .fc-col-header-cell-cushion{padding:15px 5px;font-size:12px;line-height:1.7}.study-calendar .fc-timegrid-slot-label-cushion{font:10px var(--font-mono,monospace);color:var(--muted);padding:0 11px}.study-calendar .fc-timegrid-slot{height:30px}.study-calendar .fc-timegrid-axis-cushion,.study-calendar .fc-daygrid-day-number{font-family:var(--font-mono,monospace);font-size:11px}.study-calendar .fc-daygrid-day-number{padding:10px}.study-calendar .fc-event{border-radius:4px;padding:5px 7px}.study-event-copy>span{font:10px/1.5 var(--font-mono,monospace);color:var(--secondary)}.study-event-copy strong{letter-spacing:-.1px;font-size:12px;font-weight:500;line-height:1.55}.study-event-copy small{font-size:10px;line-height:1.65}.study-calendar .study-completed{opacity:.85}.study-calendar .fc-list-day-cushion{color:var(--ink);padding:15px 18px;font-size:12px}.study-calendar .fc-list-event td{padding:15px 18px}.study-calendar .fc-list-event-time{font:11px/1.7 var(--font-mono,monospace)}.study-calendar .fc-list-event .study-event-copy strong{font-size:14px;line-height:1.7}.study-calendar .fc-list-empty{min-height:240px;font-size:14px;line-height:1.8}.calendar-hours{border-top:1px solid var(--line);gap:28px;margin-top:22px;padding-top:17px;font-size:12px}.calendar-hours strong{font-family:var(--font-mono,monospace);margin-right:4px;font-size:13px}.calendar-repeat label{border-radius:5px;width:42px;height:44px;font-size:12px}.calendar-repeat label.selected{border-color:color-mix(in srgb,var(--accent) 50%,transparent)}@media (width<=767px){.calendar-date-nav h2{margin-left:0;font-size:20px}.calendar-filters{gap:9px;min-width:0}.calendar-filters select{max-width:100%;padding-inline:10px;font-size:16px}.calendar-filters select:first-child{flex:1.3}.calendar-filters select:last-child{flex:1}.study-calendar .fc-list-event td{padding:15px 10px}.study-calendar .fc-list-event-time{font-size:10px;line-height:1.8}.study-calendar .fc-list-event .study-event-copy strong{font-size:13px}.calendar-hours{flex-wrap:wrap;gap:10px 22px;font-size:11px}.calendar-repeat{gap:5px;max-width:100%}.calendar-repeat label{flex:1;width:38px;min-width:0}}.task-toolbar{flex-direction:column;gap:20px;margin-bottom:28px;display:flex}.task-filter-tabs{flex-wrap:wrap;gap:8px;display:flex}.task-filter-tabs button{min-height:44px;color:var(--secondary);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:flex}.task-filter-tabs button:hover{background:var(--shelf);color:var(--ink)}.task-filter-tabs button span{font-variant-numeric:tabular-nums;opacity:.75;font-size:11px}.task-list-controls{justify-content:space-between;gap:16px;display:flex}.task-list-controls .search{width:270px;max-width:100%}.task-list-controls .history-filter{min-width:0;max-width:420px}.task-list-controls select{text-overflow:ellipsis;max-width:100%}.task-groups{flex-direction:column;gap:32px;display:flex}.task-group-heading{color:var(--muted);justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;font-size:12px;display:flex}.task-group-heading>a{min-height:32px;color:var(--secondary);align-items:center;gap:10px;display:inline-flex}.task-group-heading>a:hover{color:var(--accent)}.task-group-heading>span{font-variant-numeric:tabular-nums}.task-list{border:1px solid var(--line);background:var(--shelf);border-radius:10px;overflow:hidden}.task-row{grid-template-columns:28px minmax(0,1fr) 176px 20px;align-items:center;gap:16px;min-height:96px;padding:20px 24px;display:grid}.task-row+.task-row{border-top:1px solid var(--line)}.task-row:hover{background:var(--sheet)}.task-row-title{min-width:0}.task-row h2{letter-spacing:0;text-wrap:pretty;overflow-wrap:anywhere;margin-bottom:8px;font-size:15px;line-height:1.5}.task-status-glyph{width:24px;height:24px;color:var(--muted);place-items:center;display:grid}.task-status-glyph>span{border:1px solid var(--muted);border-radius:50%;width:17px;height:17px}.task-status-glyph.in_progress>span{border-color:var(--accent);box-shadow:inset 0 0 0 4px var(--shelf);background:var(--accent)}.task-status-glyph.completed,.task-status-glyph.submitted{color:var(--success)}.task-state{color:var(--muted);font-size:10px;line-height:1.4;display:inline-flex}.task-state.in_progress{color:var(--accent)}.task-due{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:8px;font-size:11px;display:flex}.task-due>svg{flex-shrink:0}.task-due small{color:inherit;margin-top:4px;font-size:10px}.task-row-arrow{color:var(--muted)}.task-workspace-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.task-back{color:var(--secondary);align-items:center;gap:8px;min-width:0;min-height:44px;font-size:12px;display:inline-flex}.task-back:hover{color:var(--accent)}.task-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.task-workspace-heading>.task-actions{flex-shrink:0}.task-title-block{max-width:1000px;margin-bottom:32px}.task-state-picker{margin-bottom:12px;display:inline-block}.task-state-picker select{border:1px solid var(--line);background:var(--shelf);min-height:40px;color:var(--accent);border-radius:6px;padding:8px 28px 8px 12px;font-size:12px}.task-title-block>.task-status-note{margin-top:12px}.task-assignment-disclosure{min-width:0}.task-assignment-disclosure>summary{display:none}.task-title-block>.task-state{margin-bottom:12px;font-size:11px}.task-title-block h1{letter-spacing:-.8px;overflow-wrap:anywhere;margin-bottom:16px;font-size:30px;line-height:1.3}.task-workspace{grid-template-columns:minmax(220px,280px) minmax(0,1fr);align-items:start;gap:28px;display:grid}.task-assignment{min-width:0}.task-assignment>section{border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:24px}.task-assignment h2{letter-spacing:0;margin-bottom:16px;font-size:15px}.task-description{overflow-wrap:anywhere;scrollbar-width:thin;max-height:520px;font-size:13px;line-height:1.8;overflow:auto}.task-description p{color:var(--secondary)}.task-description h1,.task-description h2,.task-description h3{letter-spacing:0;margin:16px 0 8px;font-size:15px;line-height:1.6}.task-no-description,.task-status-note{color:var(--muted);font-size:12px;line-height:1.7}.task-campus-link{justify-content:flex-start;min-height:44px;margin-top:20px}.task-material-links{flex-direction:column;gap:8px;display:flex}.task-material-links a{color:var(--secondary);overflow-wrap:anywhere;justify-content:space-between;align-items:flex-start;gap:8px;padding:8px 0;font-size:12px;display:flex}.task-material-links a:hover{color:var(--accent)}.task-material-links svg{flex-shrink:0;margin-top:3px}.task-assignment .field{margin:0 0 12px;display:block}.task-editor{background:var(--shelf);border:1px solid var(--line);border-radius:12px;min-width:0;overflow:hidden}.task-editor-heading{justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.task-editor-heading h2{letter-spacing:0;font-size:17px}.task-save-state{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:10px;display:flex}.task-feedback{color:var(--accent);padding:0 24px 16px;font-size:12px}.task-editor>.error-box{margin:0 16px 16px}.task-conflict{background:var(--accent-dark);border-radius:8px;margin:0 16px 16px;padding:16px;font-size:12px}.task-conflict p{line-height:1.7}.task-conflict details{margin:12px 0}.task-conflict summary{cursor:pointer;min-height:32px;color:var(--secondary)}.task-conflict pre{white-space:pre-wrap;max-height:240px;color:var(--ink);font-size:12px;overflow:auto}.task-editor-bar{border-block:1px solid var(--line);background:var(--sheet);justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.task-format-tools{gap:0;display:flex}.task-format-tools>.button{border:0;min-width:40px;min-height:44px;padding:8px}.task-editor-modes{gap:4px;display:flex}.task-editor-modes>button{min-height:40px;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:6px;padding:8px 12px;font-size:11px}.task-editor-modes>button:hover{color:var(--ink)}.task-editor-modes>button[aria-pressed=true]{background:var(--raised);color:var(--accent)}.task-draft-input{resize:vertical;background:var(--inset);width:100%;min-height:520px;color:var(--ink);font:14px/1.85 var(--font-ui,sans-serif);border:0;border-radius:0;padding:28px 24px;display:block}.task-draft-input:focus-visible{outline-offset:-3px;outline-width:1px}.task-draft-input::placeholder{color:var(--muted)}.task-draft-preview{overflow-wrap:anywhere;min-height:520px;padding:28px 24px;font:15px/1.85 Georgia,serif}.task-draft-preview h1{letter-spacing:-.5px;font-size:28px;line-height:1.4}.task-draft-preview h2{font-size:22px;line-height:1.4}.task-draft-preview h3{font-size:18px;line-height:1.4}.task-draft-preview h1,.task-draft-preview h2,.task-draft-preview h3{margin:24px 0 12px}.task-draft-preview h1:first-child,.task-draft-preview h2:first-child,.task-draft-preview h3:first-child{margin-top:0}.task-preview-empty{color:var(--muted);font:14px var(--font-ui,sans-serif)}.task-draft-preview pre,.task-description pre{overflow:auto}.task-draft-preview table,.task-description table{border-collapse:collapse;max-width:100%;display:block;overflow:auto}.task-draft-preview th,.task-draft-preview td,.task-description th,.task-description td{border:1px solid var(--line);padding:8px}.task-draft-preview a,.task-description a{color:var(--accent);text-decoration:underline}.task-editor-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.task-editor-footer>span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px}.task-editor-footer .button{min-height:40px;padding:8px 12px;font-size:11px}.task-form-modal{width:min(680px,100% - 32px)}.task-form-modal .field{display:block}.task-deadline-fields{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.task-deadline-fields>.field{flex:1;min-width:200px}.task-deadline-fields input[type=date],.task-deadline-fields input[type=datetime-local]{border:1px solid var(--line);background:var(--inset);width:100%;min-height:44px;color:var(--ink);border-radius:6px;padding:10px 12px;display:block}.task-time-check{color:var(--secondary);align-items:center;gap:8px;min-height:44px;font-size:12px;display:flex}.task-time-check input{accent-color:var(--accent);width:16px;height:16px}.task-material-picker{margin-top:20px}.task-material-picker summary{color:var(--secondary);cursor:pointer;min-height:44px;padding:12px 0;font-size:12px}.task-material-picker .checks{grid-template-columns:1fr;max-height:280px;margin-top:8px;overflow:auto}@media (width<=1200px){.task-workspace{grid-template-columns:minmax(200px,240px) minmax(0,1fr);gap:20px}.task-editor-bar{flex-wrap:wrap}.task-editor-modes{margin-left:auto}}@media (width<=900px){.task-workspace{grid-template-columns:1fr}.task-assignment{grid-template-columns:minmax(0,1fr) minmax(200px,.65fr);gap:0 24px;display:grid}.task-assignment>section:first-child{grid-row:span 2}.task-description{max-height:340px}.task-editor{width:100%}.task-row{grid-template-columns:24px minmax(0,1fr) 160px 16px;gap:12px;padding:20px}}@media (width<=767px){.mobile-navigation{grid-template-columns:repeat(5,minmax(0,1fr))}.mobile-navigation>a{font-size:9px}.task-workspace-heading{align-items:flex-start;gap:12px;margin-bottom:20px}.task-workspace-heading>.task-actions .button{min-height:44px;padding:8px}.task-title-block h1{font-size:25px}.task-assignment{display:block}.task-assignment>section{margin-bottom:20px;padding-bottom:20px}.task-editor-heading{padding:16px}.task-editor-bar{padding:8px}.task-draft-input,.task-draft-preview{min-height:420px;padding:20px 16px;font-size:16px}.task-row{grid-template-columns:20px minmax(0,1fr) 16px;padding:16px}.task-row h2{font-size:14px}.task-row .task-due{grid-area:2/2}.task-row .task-due small{margin-left:8px;display:inline}.task-row-arrow{grid-area:1/3/span 2}.task-status-glyph{align-self:start;margin-top:2px}.task-list-controls{flex-wrap:wrap;gap:12px}.task-list-controls .history-filter,.task-list-controls .search{width:100%;max-width:none}.task-list-controls select{width:100%;min-height:44px;font-size:16px}.task-list-controls .search input{min-height:44px;font-size:16px}.task-filter-tabs{flex-wrap:nowrap;padding-bottom:4px;overflow:auto}.task-filter-tabs button{font-size:12px}.task-form-modal input,.task-form-modal textarea,.task-form-modal select{font-size:16px!important}.task-deadline-fields{gap:0}.task-deadline-fields>.field{flex:auto;width:100%}.task-time-check{margin-top:0}.task-editor-footer{padding:12px}.task-editor-footer>.task-actions{justify-content:space-between;gap:4px;width:100%}.task-editor-footer .button{min-height:44px;padding:8px}.task-editor-footer>span{font-size:11px}.task-state-picker select{min-height:44px;font-size:16px}.task-assignment-disclosure{border:1px solid var(--line);background:var(--shelf);border-radius:8px}.task-assignment-disclosure>summary{cursor:pointer;min-height:48px;color:var(--secondary);padding:12px 16px;font-size:13px;display:list-item}.task-assignment-disclosure .task-assignment{padding:16px}.task-assignment-disclosure .task-assignment>section:last-child{border:0;margin:0;padding-bottom:0}}.task-toolbar-minimal{flex-direction:row;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.task-toolbar-minimal .task-list-controls{justify-content:flex-end;align-items:center;min-width:0}.task-toolbar-minimal .task-filter-tabs{flex:none}.task-list-chronological{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0}.task-list-chronological .task-row{min-height:88px;padding:20px 12px}.task-list-chronological .task-row h2{margin-bottom:8px;font-size:14px;font-weight:500}.task-row-meta{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.task-row-subject{color:var(--muted);align-items:center;gap:8px;font-size:12px;line-height:1.5;display:inline-flex}.task-list-chronological .task-state,.task-list-chronological .task-due{font-size:12px}.task-filters{flex:none;position:relative}.task-filters>summary{cursor:pointer;border:1px solid var(--line);min-height:44px;color:var(--secondary);border-radius:7px;align-items:center;gap:8px;padding:10px 12px;font-size:12px;list-style:none;display:flex}.task-filters>summary::-webkit-details-marker{display:none}.task-filters>summary:hover,.task-filters[open]>summary{background:var(--sheet);color:var(--ink)}.task-filters>summary>span{color:var(--accent);font-variant-numeric:tabular-nums}.task-filter-fields{z-index:5;border:1px solid var(--line);background:var(--sheet);border-radius:10px;gap:16px;width:300px;max-width:calc(100vw - 48px);padding:16px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.task-filter-fields>label{color:var(--secondary);gap:8px;font-size:12px;display:grid}.task-filter-fields select{background:var(--inset);width:100%;min-height:44px;color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:10px 12px}.task-active-filters{flex-wrap:wrap;align-items:center;gap:8px;margin:-4px 0 20px;display:flex}.task-active-filters>button{background:var(--accent-dark);min-height:40px;color:var(--accent);border:1px solid var(--line);border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:inline-flex}@media (width<=767px){.task-toolbar-minimal{flex-direction:column;align-items:stretch;gap:16px}.task-toolbar-minimal .task-list-controls{flex-wrap:nowrap;gap:8px;width:100%}.task-toolbar-minimal .task-list-controls .search{flex:1;width:auto;min-width:0}.task-toolbar-minimal .task-list-controls .search input{width:100%}.task-filter-fields select{font-size:16px}.task-list-chronological .task-row{padding:16px 4px}.task-row-meta{gap:4px 12px}.task-row-subject{overflow-wrap:anywhere;max-width:100%}}.task-toolbar-minimal{flex-wrap:wrap;gap:16px 24px;margin-bottom:24px}.task-toolbar-minimal .task-list-controls{flex:none;gap:10px}.task-filter-tabs{border:1px solid var(--line);background:var(--inset);border-radius:7px;gap:5px;padding:4px}.task-filter-tabs button{border-radius:4px;min-height:38px;padding:7px 12px;font-size:12px}.task-filter-tabs button[aria-pressed=true]{background:var(--sheet);color:var(--ink);border-color:color-mix(in srgb,var(--accent) 25%,transparent)}.task-filter-tabs button span{font:10px var(--font-mono,monospace);color:var(--accent);opacity:1}.task-list-controls .search{background:var(--inset);gap:9px;min-height:44px;position:relative}.task-list-controls .search input{flex:1;min-width:0;min-height:42px;font-size:13px}.task-search-clear{width:30px;height:40px;color:var(--muted);background:0 0;border:0;border-radius:4px;flex:none;place-items:center;padding:0;display:grid}.task-search-clear:hover{color:var(--ink);background:var(--sheet)}.task-filters>summary{background:var(--shelf);border-radius:6px;font-size:12px}.task-filters[open]>summary{border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.task-filter-fields{border-radius:8px;gap:18px;padding:20px;box-shadow:0 8px 28px #0003}.task-active-filters>button{background:color-mix(in srgb,var(--accent) 7%,var(--desk));border-color:color-mix(in srgb,var(--accent) 25%,transparent);border-radius:5px;font-size:11px}.task-list-chronological .task-row{border-radius:0;gap:17px;min-height:92px;padding:21px 12px;transition:background-color .16s ease-out}.task-list-chronological .task-row h2{letter-spacing:-.2px;color:var(--ink);font-size:15px;line-height:1.6}.task-list-chronological .task-row:hover{background:color-mix(in srgb,var(--shelf) 75%,transparent)}.task-list-chronological .task-row:focus-visible{outline-offset:-2px}.task-row-meta{gap:7px 15px}.task-row-subject{color:var(--secondary);font-size:12px}.task-list-chronological .task-state{font-size:11px;line-height:1.6}.task-state.in_progress{background:color-mix(in srgb,var(--accent) 6%,transparent);border:1px solid color-mix(in srgb,var(--accent) 18%,transparent);border-radius:4px;padding:2px 6px}.task-state.completed,.task-state.submitted{color:var(--success)}.task-list-chronological .task-due{color:var(--secondary);font-size:11px;line-height:1.65}.task-due time{font-variant-numeric:tabular-nums}.task-due.overdue{color:var(--danger,#e7b1a6)}.task-due.overdue small{background:color-mix(in srgb,var(--danger,#e7b1a6) 8%,transparent);border-radius:4px;min-height:22px;margin-top:5px;padding:2px 6px;font-size:10px;display:inline-flex}.task-status-glyph>span{border-color:var(--line);width:18px;height:18px}.task-status-glyph.in_progress>span{box-shadow:inset 0 0 0 4px var(--desk);border-color:var(--accent)}.task-row:hover .task-row-arrow{color:var(--accent)}.task-title-block h1{font-family:var(--font-ui,sans-serif);font-weight:500;line-height:1.4}.task-description{font-size:14px;line-height:1.85}.task-save-state{font-size:11px}.task-save-state.has-error{color:var(--danger,#e7b1a6)}@media (width<=767px){.task-toolbar-minimal .task-filter-tabs{width:100%;padding:4px}.task-filter-tabs button{flex:1;justify-content:center;min-height:42px;padding-inline:9px;font-size:12px}.task-list-controls .search input{font-size:16px}.task-search-clear{width:36px;height:42px}.task-list-chronological .task-row{gap:7px 12px;min-height:96px;padding:18px 4px}.task-list-chronological .task-row h2{margin-bottom:6px;font-size:14px;line-height:1.7}.task-list-chronological .task-row .task-due{font-size:11px;line-height:1.7}.task-row-subject{font-size:11px;line-height:1.6}.task-row-meta{gap:5px 10px}.task-list-chronological .task-state{font-size:10px}.task-title-block h1{font-size:25px;line-height:1.45}}@media (prefers-reduced-motion:reduce){.task-list-chronological .task-row{transition:none}}.button{min-height:44px;font-size:13px}.page-heading{margin-bottom:24px}.page-heading h1{letter-spacing:-.6px;font-size:28px;line-height:1.25}.empty{background:0 0;border:0;padding:40px 24px}.empty h3{font-size:17px;font-weight:500}.empty-actions{margin-top:20px}.settings-tabs .tab{font-size:14px}.settings-grid .panel{padding:24px}.settings-grid .setting-row{font-size:13px}.settings-grid .settings-note{font-size:12px;line-height:1.7}.history-table th,.history-table td{font-size:13px}.history-table th{color:var(--muted);font-size:12px;font-weight:500}.history-overview{margin-top:24px}.calendar-heading h1{font-size:28px}.calendar-toolbar{gap:16px}.calendar-toolbar .button,.calendar-toolbar select{min-height:44px}@media (width<=767px){.page-heading h1{font-size:26px}.button{font-size:13px}.settings-grid .panel{padding:20px}.empty{padding:32px 16px}}.class-exercise-workspace{max-width:1100px;margin:0 auto}.class-exercise-fields{border:0;min-width:0;margin:0;padding:0}.class-exercise-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;display:flex}.class-exercise-heading>div{flex:1;min-width:0}.class-exercise-heading .eyebrow{margin-bottom:12px;display:block}.class-exercise-heading .field{margin:0}.class-exercise-heading .class-exercise-title{letter-spacing:-.6px;background:var(--shelf);width:100%;padding:12px 16px;font-size:28px;font-weight:600}.class-exercise-save-state{white-space:nowrap;color:var(--muted);align-items:center;gap:6px;padding-top:48px;font-size:11px;display:flex}.class-exercise-associations{color:var(--secondary);overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 24px;font-size:12px;display:flex}.class-exercise-associations svg{flex-shrink:0}.class-exercise-paper{color:#29313c;background:#f5f1e8;border-radius:4px;margin-top:24px;overflow:hidden}.class-question+.class-question{border-top:1px solid #dcdad3}.class-question-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.class-question h2{letter-spacing:0;margin:0;font-size:16px}.class-question .button.quiet{color:#6b6d71}.class-question .button.quiet:hover{color:#29313c;background:#eae7df}.class-question .field{margin-bottom:20px;display:block}.class-question .field:last-child{margin-bottom:0}.class-question .field-label{color:#6b6d71;margin-bottom:8px;font-size:11px;display:block}.class-question textarea{box-sizing:border-box;resize:vertical;color:#29313c;white-space:pre-wrap;background:#fbf8f2;border:1px solid #d7d5cd;border-radius:6px;width:100%;min-height:80px;padding:12px 16px;font:16px/1.8 Georgia,serif;display:block;overflow:hidden}.class-question textarea::placeholder{color:#7c7d7e}.class-question textarea:focus{outline-offset:2px;outline:2px solid #9a7d46}.class-exercise-add{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.class-exercise-save-dialog{width:min(580px,100vw - 24px)}.class-exercise-save-dialog summary{color:var(--secondary);padding:12px 0;font-size:13px}.class-exercise-materials{max-height:36vh;padding:8px 0;overflow:auto}.class-exercise-materials .check{align-items:center;min-height:44px}.class-exercise-materials span{overflow-wrap:anywhere}.class-exercise-glyph{color:var(--accent)}.class-exercise-date{color:var(--muted);font-size:11px}.class-exercise-list .task-row-meta>span{overflow-wrap:anywhere}.class-exercise-comparison{max-height:55vh;overflow:auto}.class-exercise-comparison section{margin-top:20px}.class-exercise-comparison p{white-space:pre-wrap;margin-top:8px}@media (width<=760px){.class-exercise-workspace .task-workspace-heading{flex-direction:column;align-items:flex-start;gap:12px}.class-exercise-workspace .task-actions{width:100%}.class-exercise-workspace .task-actions>.button{flex:1;padding:10px}.class-exercise-workspace .task-actions>.button.quiet{flex:0}.class-exercise-heading{flex-direction:column;gap:12px}.class-exercise-heading>div{width:100%}.class-exercise-heading .class-exercise-title{font-size:22px}.class-exercise-save-state{padding:0}.class-question{padding:20px 16px}.class-exercise-save-dialog .dialog-actions{flex-wrap:wrap}.class-exercise-save-dialog .dialog-actions>.button{flex:1}}@media (width<=767px){.mobile-navigation{grid-template-columns:repeat(6,minmax(0,1fr))}}.class-exercise-heading .class-exercise-title{font-family:var(--font-ui,sans-serif);border-radius:6px;min-height:58px;padding:13px 16px;font-size:27px;font-weight:500;line-height:1.5}.class-exercise-heading .eyebrow{letter-spacing:.7px;font-size:10px;line-height:1.7}.class-exercise-save-state{padding-top:52px;font-size:11px;line-height:1.7}.class-exercise-associations{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:8px 12px;padding:14px 0;font-size:12px;line-height:1.8}.class-exercise-associations>.button{min-height:42px;margin-left:auto;font-size:12px}.class-exercise-paper{border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);border-radius:6px;box-shadow:0 3px 20px #0001}.class-question{padding:30px 36px}.class-question h2{font-family:var(--font-ui,sans-serif);color:#29313c;font-size:16px;font-weight:500}.class-question .field-label{font-family:var(--font-ui,sans-serif);color:#616976;margin-bottom:10px;font-size:12px;line-height:1.7}.class-question textarea{border-radius:5px;padding:14px 17px;font-size:16px;line-height:1.9}.class-question textarea::selection{color:#29313c;background:#e6d5ae}.class-question textarea:focus-visible{outline-color:#9a7d46}.class-question-heading .button.quiet{border-radius:5px;min-width:44px;min-height:44px}.class-exercise-add{align-items:center;gap:10px;margin-top:24px}.class-exercise-date{font-family:var(--font-mono,monospace);font-size:10px;line-height:1.7}.class-exercise-list .task-row-meta{color:var(--muted);font-size:12px;line-height:1.7}.class-exercise-list .task-row-meta>span:last-child{-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;display:-webkit-box;overflow:hidden}.class-exercise-list .task-row:focus-visible{outline-offset:-2px}@media (width<=760px){.class-exercise-heading .class-exercise-title{min-height:54px;padding:12px;font-size:22px;line-height:1.6}.class-exercise-save-state{padding-top:0;font-size:11px}.class-question{padding:22px 17px}.class-question textarea{padding:12px 13px;font-size:16px;line-height:1.85}.class-exercise-associations{gap:10px;font-size:11px}.class-exercise-associations>.button{min-height:44px;margin-left:0}.class-exercise-add>.button{flex:1;font-size:12px}.class-exercise-list .task-row-meta{font-size:11px}.class-exercise-save-dialog input,.class-exercise-save-dialog select,.class-exercise-save-dialog textarea{font-size:16px}}:root{--danger:#e5a2a5;--danger-surface:#3a1f2b;--warning:#debe85}body{text-rendering:optimizelegibility}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent-hover);outline-offset:3px}.brand,.access-brand{font-family:var(--font-ui);letter-spacing:-.65px;font-weight:600}.sidebar-heading{margin-bottom:34px}.sidebar{background:var(--desk)}.sidebar .nav-link{border-radius:6px;min-height:46px;font-size:13px;transition:color .15s,background-color .15s,box-shadow .15s}.sidebar .nav-link.active{color:var(--accent);background:color-mix(in srgb, var(--accent) 7%, transparent);box-shadow:inset 2px 0 var(--accent)}.sidebar .subject-link{gap:11px;min-height:44px;font-size:13px}.sidebar .subject-link.active{color:var(--ink);background:var(--shelf)}.sidebar .nav-label{font:10px/1.5 var(--font-mono);color:var(--muted);letter-spacing:1.2px}.sidebar .nav-count{font-family:var(--font-mono);font-size:11px}.sidebar-bottom{border-top:1px solid var(--line);padding-top:20px}.account-avatar{color:var(--accent);border-color:var(--accent-line);background:0 0}.topbar{background:var(--desk);border-bottom-color:var(--line)}#breadcrumb{gap:0;font-size:12px}#breadcrumb>a:hover{color:var(--accent)}.tutor-trigger{border-color:var(--accent-line);background:0 0;gap:9px;min-height:42px;padding:9px 13px;font-size:12px}.tutor-trigger:hover,.tutor-trigger[aria-expanded=true]{border-color:color-mix(in srgb, var(--accent) 50%, transparent);background:color-mix(in srgb, var(--accent) 7%, transparent)}.page-heading{gap:20px;margin-bottom:28px}.page-heading h1,.subject-page-heading .subject-heading h1,.calendar-heading h1{font-family:var(--font-display);letter-spacing:-.75px;font-size:clamp(27px,2.2vw,34px);font-weight:500;line-height:1.3}.subject-page-heading .subject-heading h1{font-size:clamp(24px,2vw,30px)}.reader-page .reader-heading h1{font-family:var(--font-ui);font-size:25px;font-weight:600;line-height:1.4}.eyebrow{font-family:var(--font-mono);letter-spacing:1.4px;font-size:10px}.panel,.saved-guidance,.doubt-card{border-color:var(--line)}.panel-title,.section-heading h2{letter-spacing:-.35px;font-weight:600}.section-heading{gap:16px}.subject-navigation.compact-subject-navigation{border-bottom:1px solid var(--line);gap:25px}.subject-navigation.compact-subject-navigation a{font-family:var(--font-ui);color:var(--muted);padding-bottom:13px;font-size:13px}.subject-navigation.compact-subject-navigation a.active,.subject-navigation.compact-subject-navigation a[aria-current=page]{color:var(--accent);border-bottom-color:var(--accent)}.subject-navigation.compact-subject-navigation .count{font-family:var(--font-mono);font-size:11px}.button{border-radius:6px;gap:8px;min-height:44px;font-size:13px;font-weight:500;transition:color .15s,background-color .15s,border-color .15s,transform .1s}.button.primary{color:var(--desk);border-color:#0000;box-shadow:inset 0 1px #ffffff26}.button.primary:hover:not(:disabled){background:var(--accent-hover)}.button:active:not(:disabled){transform:translateY(1px)}.button[aria-busy=true]{cursor:progress}.button>.spin{flex:none}.field input:not([type=radio]):not([type=checkbox]):not([type=file]),.field select{border-color:var(--line-strong);border-radius:6px;min-height:44px;font-size:14px}.field textarea{border-color:var(--line-strong);border-radius:6px;font-size:14px;line-height:1.75}.field input::placeholder,.field textarea::placeholder{color:var(--muted);opacity:1}.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.field input[type=checkbox],.field input[type=radio]{accent-color:var(--accent)}.search{border-color:var(--line);background:var(--inset)}.search input{min-height:42px;font-size:13px}.search:focus-within{outline:1px solid var(--accent);outline-offset:2px}.tab,.settings-tabs .tab{color:var(--muted)}.tab.active,.settings-tabs .tab.active{color:var(--accent)}.app-modal{border-color:var(--accent-line);background:var(--shelf);border-radius:10px;box-shadow:0 20px 70px #0000004d}.app-modal::backdrop{background:#030611ad}.modal-heading h2{font-family:var(--font-ui);letter-spacing:-.5px;font-size:20px;font-weight:600}.dialog-actions{gap:10px;padding-top:8px}.action-menu-panel{background:var(--sheet);border-color:var(--line-strong);border-radius:8px}.action-menu-item.destructive{color:var(--danger)}.error-box{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 30%, transparent)}.loading-screen{min-height:220px;color:var(--muted);justify-content:center;align-items:center;gap:12px;font-size:14px;display:flex}.route-loading:before{content:"";border:1.5px solid var(--line-strong);border-top-color:var(--accent);border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}.empty h3{font-size:18px;font-weight:500;line-height:1.5}.empty-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}#toast{background:var(--sheet);color:var(--ink);border-color:var(--accent-line);font-size:13px;box-shadow:0 8px 30px #00000040}dialog.tutor-panel{border-color:var(--accent-line);background:#101a30;border-radius:10px}.tutor-header{gap:10px;padding:18px}.tutor-heading-icon{background:color-mix(in srgb, var(--accent) 8%, transparent);border-radius:8px}.tutor-heading-copy h2{font-family:var(--font-ui);font-size:15px;font-weight:600}.tutor-heading-copy>span{font-size:11px}.tutor-icon-button{min-width:40px;min-height:40px}.tutor-context{background:color-mix(in srgb, var(--inset) 30%, transparent)}.tutor-context-summary{font-size:12px}.tutor-context-fixed,.tutor-list-label,.tutor-answer-byline,.tutor-welcome-eyebrow{font-family:var(--font-mono)}.tutor-answer-copy,.tutor-messages{color:var(--secondary)}.tutor-input-shell{background:var(--inset);border-radius:8px}.tutor-input-shell>textarea{font-size:13px;line-height:1.8}.tutor-send:hover:not(:disabled){background:var(--accent-hover)}.tutor-citations>button{border-color:var(--accent-line);color:var(--accent);font-size:11px}.tutor-source-chip{border-color:var(--accent-line);font-size:11px}.tutor-keyline{background:color-mix(in srgb, var(--accent) 5%, transparent)}.tutor-keyline code,.tutor-citation-number,.tutor-answer-copy pre,.tutor-answer-copy code{font-family:var(--font-mono)}.tutor-composer-footer{font-size:10px;line-height:1.5}.reader-support-tab{font-family:var(--font-ui)}.tutor-starters>button{font-size:12px;line-height:1.6}.tutor-thread-item strong{font-size:13px}.tutor-thread-item small{font-size:11px}.reader-page .reader-content .document-toolbar{background:var(--shelf);border-color:var(--line)}.reader-page .pdf-stage{background:var(--shelf)}.pdf-viewer .pdf-toolbar .page-selector,.pdf-viewer .pdf-toolbar .pdf-scale-select,.pdf-search-status{font-family:var(--font-mono)}.reader-page .text-reader,.web-article{border-color:var(--line)}.context-modes label.selected,.context-option.selected{border-color:var(--accent-line);background:color-mix(in srgb, var(--accent) 8%, var(--shelf))}.note-state.pending{color:var(--accent);background:var(--accent-dark)}.note-state.resolved{color:var(--success);background:color-mix(in srgb, var(--success) 8%, transparent)}.access-page{background:var(--desk)}.access-card{border-color:var(--accent-line);border-radius:10px;padding:32px}.access-card h1{font-family:var(--font-display);font-size:25px;font-weight:500;line-height:1.4}.access-card input{min-height:46px;font-size:16px}.access-glyph{background:color-mix(in srgb, var(--accent) 8%, transparent);border:1px solid var(--accent-line);border-radius:10px}.settings-tabs .tab{min-height:48px;font-size:13px}.settings-grid .panel{background:var(--shelf);border-radius:8px}.settings-grid .panel-title{font-size:18px}.setting-row{gap:16px;line-height:1.7}.settings-grid .settings-note,.private-ai-provider .settings-note{font-size:13px;line-height:1.85}.settings-external{color:var(--secondary);font-size:12px}.settings-external:hover{color:var(--accent)}.storage-value,.admin-summary strong{font-variant-numeric:tabular-nums}@media (width>=1101px){.sidebar.is-collapsed .sidebar-heading .brand-symbol{width:34px;height:34px}.sidebar.is-collapsed .nav-link.active{box-shadow:inset 0 -2px var(--accent)}}@media (width<=1100px){.navigation-drawer{background:var(--desk);border-right-color:var(--gold-line,var(--accent-line))}.navigation-drawer .brand-symbol{width:34px;height:34px}.navigation-drawer .nav-link{font-size:14px}}@media (width<=767px){.page-heading h1,.calendar-heading h1{letter-spacing:-.6px;font-size:28px}.subject-page-heading .subject-heading h1{font-size:25px;line-height:1.4}.reader-page .reader-heading h1{font-size:22px;line-height:1.45}.page-heading{gap:14px}.topbar{min-height:68px}.field input:not([type=radio]):not([type=checkbox]):not([type=file]),.field select,.field textarea,.search input{font-size:16px}.button{min-height:44px;font-size:13px}.app-modal{border-radius:9px}.modal-heading h2{font-size:19px}.tutor-icon-button{min-width:44px;min-height:44px}.tutor-input-shell>textarea{font-size:16px;line-height:1.7}.tutor-input-shell>textarea::placeholder{font-size:14px}.tutor-context-summary{font-size:12px}.tutor-citations>button,.tutor-source-chip{min-height:44px}.mobile-navigation{background:var(--desk);border-top-color:var(--line-strong)}.mobile-navigation a.active,.mobile-navigation a[aria-current=page]{color:var(--accent)}.access-card{padding:26px 24px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.nav-link,.subject-link,.tutor-trigger,.action-menu-item{transition:none}.button:active:not(:disabled){transform:none}.route-loading:before{border-color:var(--accent);animation:none}}.route-error{border:1px solid var(--line);background:var(--shelf);border-radius:8px;max-width:620px;margin:48px auto;padding:32px}.route-error h2{font:600 22px/1.5 var(--font-ui);letter-spacing:-.5px}.route-error p{color:var(--secondary);margin:14px 0 24px;line-height:1.8}.route-error .inline-actions{flex-wrap:wrap;gap:10px}.learning-home{max-width:1120px;margin:0 auto}.learning-eyebrow{font:11px/1.7 var(--font-mono);letter-spacing:1px;color:var(--accent);text-transform:uppercase;overflow-wrap:anywhere;margin:0 0 12px}.learning-home-heading{align-items:center;margin-bottom:36px}.learning-home-heading h1{max-width:760px;margin:0}.page-heading .learning-intro{margin-top:17px;font-size:17px;line-height:1.8}.learning-home-heading>.button{flex:none}.learning-section-heading{justify-content:space-between;align-items:center;gap:16px;margin:28px 0 20px;display:flex}.learning-section-heading h2{letter-spacing:-.5px;font-size:22px;font-weight:600}.learning-section-heading>span{font:11px var(--font-mono);color:var(--muted);flex:none}.learning-course-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:18px;display:grid}.learning-course{border:1px solid var(--line);background:var(--shelf);border-radius:12px;flex-direction:column;min-width:0;padding:25px;transition:border-color .15s,background .15s;display:flex}.learning-course:hover{border-color:var(--accent-line);background:var(--accent-dark)}.learning-course-top{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.learning-course-number{font:25px var(--font-mono);color:var(--action)}.learning-course h3{letter-spacing:-.4px;overflow-wrap:anywhere;text-wrap:initial;font-size:21px;font-weight:600;line-height:1.5}.learning-course>p{font:11px/1.9 var(--font-mono);color:var(--muted);margin:13px 0 24px}.learning-course-action{color:var(--accent);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:17px;font-size:13px;display:flex}.learning-course-action svg{flex:none}.learning-resume{border:1px solid var(--accent-line);border-top:3px solid var(--action);background:var(--shelf);border-radius:12px;justify-content:space-between;align-items:center;gap:28px;margin:0 0 32px;padding:30px 32px;display:flex}.learning-resume>div{min-width:0}.learning-resume>svg{color:var(--action);flex:none;margin:0 18px}.learning-resume h2{font:400 28px/1.35 var(--font-display);letter-spacing:-.5px;overflow-wrap:anywhere}.learning-resume .button{margin-top:22px}.learning-last-resource{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;margin-top:40px;padding-top:24px;display:flex}.learning-last-resource>div{min-width:0}.learning-last-resource h2{overflow-wrap:anywhere;font-size:17px;line-height:1.6}.learning-last-resource .learning-eyebrow{margin-bottom:8px;font-size:10px;display:block}.learning-last-resource .button{flex:none}.learning-topic-list{max-width:1100px;margin:0 auto}.learning-list-intro{color:var(--muted);margin:0 0 24px;font-size:15px;line-height:1.8}.learning-topic-row{border-top:1px solid var(--line);align-items:center;gap:24px;min-height:100px;padding:25px 8px;transition:background .15s;display:flex}.learning-topic-row:hover{background:var(--shelf)}.learning-topic-number{font:21px var(--font-mono);color:var(--action);flex:none}.learning-topic-row>div{flex:1;min-width:0}.learning-topic-row h3{overflow-wrap:anywhere;text-wrap:initial;font-size:18px;font-weight:600;line-height:1.5}.learning-topic-row p{font:11px/1.8 var(--font-mono);color:var(--muted);margin-top:8px}.learning-topic-row>svg{color:var(--accent);flex:none}.learning-resources-entry{border-top:1px solid var(--line);align-items:center;gap:18px;margin-top:32px;padding:25px 0;display:flex}.learning-resources-entry>svg{color:var(--accent);flex:none}.learning-resources-entry>div{flex:1;min-width:0}.learning-resources-entry h3{font-size:17px;font-weight:600;line-height:1.5}.learning-resources-entry p{color:var(--muted);margin-top:6px;font-size:13px;line-height:1.7}.learning-topic-layout{grid-template-columns:minmax(0,1fr) 270px;gap:48px;max-width:1120px;margin:0 auto;padding-top:12px;display:grid}.learning-topic-content{min-width:0}.learning-back{min-height:44px;font:11px var(--font-mono);color:var(--muted);align-items:center;gap:8px;margin-bottom:20px;display:inline-flex}.learning-back:hover{color:var(--accent)}.learning-topic-title{font:400 34px/1.3 var(--font-display);letter-spacing:-.6px;overflow-wrap:anywhere}.learning-empty-lesson{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:20px 0 0;padding:30px 0}.learning-empty-lesson>svg{color:var(--action);margin-bottom:18px}.learning-empty-lesson h3{margin-bottom:12px;font-size:21px;font-weight:600;line-height:1.5}.learning-empty-lesson p{margin:0 0 24px;font-size:16px;line-height:1.8}.learning-empty-lesson .inline-actions{gap:12px}.learning-empty-lesson .button{white-space:normal;text-align:center}.learning-evaluation-link{color:var(--accent);align-items:center;gap:15px;padding:24px 0;display:flex}.learning-evaluation-link>span{flex:1;min-width:0}.learning-evaluation-link strong{font-size:14px;font-weight:600;display:block}.learning-evaluation-link small{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.7}.learning-evaluation-link>svg{flex:none}.learning-source-shelf{border-left:1px solid var(--line);align-self:start;min-width:0;margin-top:64px;padding-left:24px;position:sticky;top:100px}.learning-source-shelf>h3{color:var(--secondary);margin-bottom:14px;font-size:15px;font-weight:400;line-height:1.6}.learning-source-row{border-bottom:1px solid var(--line);align-items:flex-start;gap:10px;padding:16px 0;font-size:13px;line-height:1.7;display:flex}.learning-source-row>span{overflow-wrap:anywhere;flex:1;min-width:0}.learning-source-row>svg{color:var(--accent);flex:none;margin-top:3px}.learning-source-row small{font:10px var(--font-mono);margin-top:6px}.learning-source-row:hover{color:var(--accent)}.learning-source-shelf>.subtle-link{white-space:normal;justify-content:flex-start;align-items:center;gap:8px;min-height:44px;margin:8px 0 0;padding:14px 0;font-size:12px;display:flex}.learning-source-empty{color:var(--muted);font-size:13px;line-height:1.8}.subject-nav-bar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-width:0;margin-bottom:28px;display:flex}.subject-nav-bar>.subject-navigation.compact-subject-navigation{border-bottom:0;flex:1;min-width:0;margin:0}.subject-nav-tools{flex:none;align-items:center;gap:6px;display:flex}.subject-nav-tools>span{color:var(--muted);font-size:11px}.sidebar-section-heading{justify-content:space-between;align-items:center;margin:0 0 12px;display:flex}.sidebar-section-heading .nav-label{margin-bottom:0}.sidebar-manage-link{min-width:40px;min-height:40px;color:var(--muted);place-items:center;display:grid}.sidebar-manage-link:hover{color:var(--accent)}.sidebar-account-label{font:10px var(--font-mono);color:var(--muted);margin-left:12px}.course-return{min-height:44px;font:10px var(--font-mono);color:var(--muted);align-items:center;gap:8px;margin-bottom:12px;display:flex}.course-return:hover{color:var(--accent)}.course-sidebar>.nav-label{overflow-wrap:anywhere;margin:10px 0 18px;line-height:1.8}.course-topic-link{border-left:1px solid var(--line);min-height:48px;color:var(--secondary);font:11px/1.8 var(--font-mono);align-items:flex-start;gap:11px;padding:13px 12px;display:flex}.course-topic-link:hover{background:var(--shelf);color:var(--ink)}.course-topic-link.active{background:var(--accent-dark);border:1px solid var(--accent-line);border-left:2px solid var(--action);color:var(--accent);border-radius:0 7px 7px 0}.course-topic-number{color:var(--action);flex:none;padding-top:1px}.course-topic-title{overflow-wrap:anywhere;min-width:0}.course-sidebar-empty{color:var(--muted);font-size:12px;line-height:1.8}.course-resources-link{font:10px/1.8 var(--font-mono);color:var(--muted);border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:24px;padding:16px 0;display:flex}.course-resources-link>svg{flex:none}.course-resources-link:hover{color:var(--accent)}.subject-switcher{flex:1;min-width:0;max-width:420px;display:block}.subject-switcher select{width:100%;max-width:100%;min-height:44px;color:var(--ink);background:var(--desk);text-overflow:ellipsis;cursor:pointer;border:1px solid #0000;border-radius:5px;padding:8px 25px 8px 8px;font-size:13px}.subject-switcher select:hover{border-color:var(--line)}.access-theme{position:absolute;top:20px;right:24px}@media (width>=1101px){.sidebar.is-collapsed .course-topic-title,.sidebar.is-collapsed .course-sidebar>.nav-label,.sidebar.is-collapsed .course-return,.sidebar.is-collapsed .course-sidebar-empty,.sidebar.is-collapsed .sidebar-account-label,.sidebar.is-collapsed .course-resources-link>span,.sidebar.is-collapsed .sidebar-manage-link{display:none}.sidebar.is-collapsed .course-topic-link{justify-content:center;padding:12px 4px}.sidebar.is-collapsed .course-resources-link{justify-content:center}.sidebar.is-collapsed .course-sidebar{overflow-x:hidden}.sidebar.is-collapsed .sidebar-section-heading{display:none}}@media (width<=1350px){.learning-topic-layout{grid-template-columns:minmax(0,1fr);gap:24px}.learning-source-shelf{border-left:0;border-top:1px solid var(--line);margin:0;padding:24px 0 0;position:static}}body.tutor-open .learning-topic-layout{grid-template-columns:minmax(0,1fr);gap:24px}body.tutor-open .learning-source-shelf{border-left:0;border-top:1px solid var(--line);margin:0;padding:24px 0 0;position:static}@media (width<=767px){.learning-home-heading{align-items:flex-start;gap:20px}.learning-home-heading>.button{font-size:12px}.learning-intro{font-size:16px}.learning-home .learning-course-grid{gap:14px}.learning-course{padding:22px}.learning-course h3{font-size:20px}.learning-course-top{margin-bottom:18px}.learning-section-heading h2{font-size:20px}.learning-resume{padding:24px}.learning-resume>svg{display:none}.learning-resume h2{font-size:24px}.learning-last-resource{flex-direction:column;align-items:flex-start;gap:16px}.learning-resources-entry{flex-wrap:wrap;gap:14px}.learning-resources-entry>.button{margin-left:36px}.learning-resources-entry>div{flex-basis:calc(100% - 42px)}.learning-topic-row{gap:16px;padding:21px 2px}.learning-topic-row h3{font-size:16px}.learning-topic-number{font-size:18px}.learning-topic-row p{font-size:10px}.learning-topic-title{font-size:28px}.learning-empty-lesson h3{font-size:19px}.learning-empty-lesson .inline-actions{flex-direction:column;align-items:stretch}.learning-topic-layout{padding-top:0}.learning-topic-content .learning-eyebrow{font-size:10px}.subject-nav-bar{justify-content:flex-end;min-height:44px;margin-bottom:20px}.subject-nav-bar>.subject-navigation.compact-subject-navigation{display:none}.subject-nav-tools>span{font-size:11px}.subject-switcher{max-width:100%}.subject-switcher select{padding-left:0;font-size:12px}.course-sidebar>.nav-label{margin-top:18px}.navigation-drawer .course-sidebar{margin-top:24px}.navigation-drawer .course-sidebar nav{margin:0}.sidebar-account-label{display:inline}.access-theme{top:12px;right:16px}}.learning-lesson-layout{grid-template-columns:230px minmax(0,760px);align-items:start;gap:40px;max-width:1080px;margin:0 auto;scroll-margin-top:88px;display:grid}.lesson-reading{min-width:0;padding:0 0 40px;scroll-margin-top:88px}.lesson-outline{border-right:1px solid var(--line);scrollbar-width:thin;max-height:calc(100dvh - 112px);padding-right:16px;position:sticky;top:88px;overflow:auto}.lesson-outline>summary{font:12px/1.7 var(--font-mono);cursor:pointer;min-height:48px;color:var(--ink);justify-content:space-between;align-items:center;gap:8px;list-style:none;display:flex}.lesson-outline>summary::-webkit-details-marker{display:none}.lesson-outline>summary:after{content:"+";color:var(--accent);font-size:20px}.lesson-outline[open]>summary:after{content:"−"}.lesson-outline>summary>span{color:var(--muted);margin-left:auto;font-size:10px}.lesson-outline-group{margin:20px 0 24px}.lesson-outline-group h3{overflow-wrap:anywhere;text-wrap:initial;margin:0 8px 10px;font-size:13px;font-weight:600;line-height:1.7}.lesson-outline-group ol{margin:0;padding:0;list-style:none}.lesson-outline-group a{min-height:44px;font:11px/1.8 var(--font-mono);color:var(--secondary);overflow-wrap:anywhere;border-left:2px solid #0000;border-radius:0 5px 5px 0;align-items:baseline;gap:10px;padding:10px 8px;display:flex}.lesson-outline-group a>span:first-child{color:var(--accent);flex:none;font-size:10px}.lesson-outline-group a>span:nth-child(2){flex:1;min-width:0}.lesson-outline-group a>svg{color:var(--success);flex:none;align-self:center}.lesson-outline-group a:hover{background:var(--shelf);color:var(--ink)}.lesson-outline-group a[aria-current=page]{border-left-color:var(--action);background:var(--accent-dark);color:var(--accent)}.lesson-location{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.lesson-location .learning-back{margin:0}.lesson-location>.button{white-space:normal;text-align:left;font-size:12px}.lesson-progress{z-index:2;background:var(--desk);font:11px/1.7 var(--font-mono);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:36px;padding:12px 0;display:flex;position:sticky;top:76px}.lesson-progress progress{appearance:none;background:var(--raised);width:100%;height:4px;color:var(--action);border:0;border-radius:4px;display:block;overflow:hidden}.lesson-progress progress::-webkit-progress-bar{background:var(--raised)}.lesson-progress progress::-webkit-progress-value{background:var(--action)}.lesson-progress progress::-moz-progress-bar{background:var(--action)}.lesson-heading{margin-bottom:30px}.lesson-heading h1{font:400 44px/1.2 var(--font-display);letter-spacing:-.8px;overflow-wrap:anywhere;text-wrap:balance;scroll-margin-top:100px}.lesson-heading h1:focus{outline:none}.lesson-heading .learning-eyebrow{margin-bottom:16px;font-size:10px;line-height:1.9}.lesson-markdown{font:16px/1.85 var(--font-ui);color:var(--secondary);overflow-wrap:anywhere;min-width:0}.lesson-markdown p{font:inherit;color:inherit;max-width:none;margin:0 0 20px}.lesson-markdown h1,.lesson-markdown h2,.lesson-markdown h3,.lesson-markdown h4{font-family:var(--font-ui);color:var(--ink);letter-spacing:-.4px;text-wrap:initial;margin:32px 0 16px;font-weight:600;line-height:1.4}.lesson-markdown h1,.lesson-markdown h2{font-size:26px}.lesson-markdown h3{font-size:20px}.lesson-markdown h4{font-size:17px}.lesson-markdown strong{color:var(--ink)}.lesson-markdown ul,.lesson-markdown ol{font:inherit;margin:0 0 24px;padding-left:24px;list-style-position:outside}.lesson-markdown li{margin:6px 0;padding-left:4px}.lesson-markdown li p{margin:0 0 8px}.lesson-markdown a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.lesson-markdown blockquote{border-left:3px solid var(--action);margin:28px 0;padding:4px 0 4px 20px}.lesson-markdown blockquote p:last-child{margin:0}.lesson-markdown pre{font:13px/1.8 var(--font-mono);background:var(--sheet);border:1px solid var(--line);white-space:pre;border-radius:7px;max-width:100%;margin:24px 0;padding:20px;overflow:auto}.lesson-markdown code{font-family:var(--font-mono);background:var(--sheet);border-radius:3px;padding:2px 4px;font-size:.85em}.lesson-markdown pre code{font-size:inherit;background:0 0;padding:0}.lesson-markdown hr{border:0;border-top:1px solid var(--line);margin:30px 0}.lesson-table{overscroll-behavior-x:contain;width:100%;max-width:100%;margin:24px 0;overflow:auto}.lesson-table table{border-collapse:collapse;width:100%;min-width:360px;font-size:14px;line-height:1.7}.lesson-table th,.lesson-table td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:12px 14px}.lesson-table th{background:var(--shelf);color:var(--ink);font-weight:600}.lesson-reading details:not(.lesson-outline){border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:28px 0}.lesson-reading summary{cursor:pointer;min-height:48px;padding:14px 4px;font-size:14px;font-weight:600;line-height:1.7}.lesson-worked{border-left:3px solid var(--action);background:var(--shelf);margin:32px 0;padding:24px}.lesson-worked>h2{overflow-wrap:anywhere;margin-bottom:20px;font-size:22px;line-height:1.4}.lesson-step-controls{border-top:1px solid var(--line);font:11px var(--font-mono);color:var(--muted);justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding-top:16px;display:flex}.lesson-exercise{background:var(--shelf);border:1px solid var(--line);border-top:3px solid var(--action);border-radius:12px;min-width:0;margin:40px 0;padding:24px}.lesson-exercise>h2{letter-spacing:-.4px;overflow-wrap:anywhere;text-wrap:initial;margin-bottom:18px;font-size:22px;font-weight:600;line-height:1.4}.lesson-exercise .learning-eyebrow{margin-bottom:12px;font-size:10px}.lesson-choices{border:0;gap:10px;margin:20px 0;padding:0;display:grid}.lesson-choices>label{background:var(--desk);border:1px solid var(--line);cursor:pointer;border-radius:7px;align-items:flex-start;gap:12px;min-height:52px;padding:14px;display:flex}.lesson-choices>label:has(input:checked){border-color:var(--accent);background:var(--accent-dark)}.lesson-choices input{width:17px;height:17px;accent-color:var(--accent);flex:none;margin-top:6px}.lesson-choices .lesson-markdown{min-width:0;font-size:15px}.lesson-choices .lesson-markdown p:last-child{margin:0}.lesson-exercise-actions{flex-wrap:wrap;gap:12px;margin:20px 0 0;display:flex}.lesson-exercise .button{white-space:normal;text-align:center}.lesson-hint,.lesson-feedback{border-left:3px solid var(--accent);background:var(--sheet);overflow-wrap:anywhere;border-radius:4px;margin-top:20px;padding:16px}.lesson-feedback.is-correct{border-color:var(--success)}.lesson-feedback.is-incorrect{border-color:var(--danger)}.lesson-feedback>strong,.lesson-hint>strong{margin-bottom:8px;font-size:14px;display:block}.lesson-feedback.is-correct>strong{color:var(--success)}.lesson-feedback.is-incorrect>strong{color:var(--danger)}.lesson-feedback .lesson-markdown,.lesson-hint .lesson-markdown{font-size:15px}.lesson-feedback .lesson-markdown p:last-child,.lesson-hint .lesson-markdown p:last-child{margin:0}.lesson-answer-label{margin:20px 0 10px;font-size:14px;font-weight:600;display:block}.lesson-exercise textarea{border:1px solid var(--muted);background:var(--desk);width:100%;min-height:220px;color:var(--ink);font:16px/1.75 var(--font-ui);resize:vertical;border-radius:6px;padding:14px;display:block}.lesson-exercise textarea[readonly]{background:var(--sheet)}.lesson-written-tasks{margin:0 0 24px;padding-left:24px;list-style:decimal}.lesson-written-tasks>li{padding-left:4px}.lesson-written-tasks .lesson-markdown p{margin:0 0 8px}.lesson-solution-button{margin-top:16px;padding-left:0}.lesson-rubric{margin:24px 0 0}.lesson-rubric h3{margin:0 0 16px;font-size:18px}.lesson-rubric-point{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:18px 0;display:grid}.lesson-rubric-point>label{font-size:15px;line-height:1.7}.lesson-rubric-point>label>span{color:var(--muted);margin-top:4px;font-size:12px;display:block}.lesson-rubric-point>select{background:var(--desk);width:auto;max-width:150px;min-height:44px;color:var(--ink);border:1px solid var(--muted);border-radius:5px;padding:8px;font-size:14px}.lesson-rubric-guidance{grid-column:1/-1}.lesson-rubric-guidance .lesson-markdown{font-size:13px;line-height:1.8}.lesson-rubric-guidance .lesson-markdown p{margin:0}.lesson-attempt-detail{font:11px/1.9 var(--font-mono);color:var(--muted);margin-top:20px}.lesson-recovered-draft{white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;font-size:15px;line-height:1.8}.lesson-video{margin:32px 0}.lesson-video-stage{aspect-ratio:16/9;background:var(--sheet);border:1px solid var(--line);border-radius:8px;min-height:200px;overflow:hidden}.lesson-video-stage>iframe{border:0;width:100%;height:100%;min-height:200px;display:block}.lesson-video figcaption{margin-top:12px;font-size:14px;font-weight:600;line-height:1.7}.lesson-video figcaption>span{color:var(--muted);margin-top:4px;font-size:12px;font-weight:400;display:block}.lesson-video-error{margin-top:16px}.lesson-video-error .inline-actions{margin-top:12px}.lesson-sources{margin-top:40px!important}.lesson-source{border-top:1px solid var(--line);overflow-wrap:anywhere;padding:24px 4px;scroll-margin-top:100px}.lesson-source h3{margin-bottom:12px;font-size:17px;line-height:1.5}.lesson-source p{color:var(--secondary);margin-bottom:10px;font-size:13px;line-height:1.8}.lesson-source .lesson-markdown{font-size:13px}.lesson-source .inline-actions{gap:18px;margin-top:14px}.lesson-source .subtle-link{align-items:center;gap:8px;min-height:44px;font-size:13px;display:inline-flex}.lesson-pagination{border-top:1px solid var(--line);justify-content:space-between;gap:16px;margin:40px 0 20px;padding-top:24px;display:flex}.lesson-pagination .button{white-space:normal;text-align:center;min-width:120px}.lesson-tools{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:12px;display:flex}.lesson-tools a{align-items:center;min-height:44px;display:inline-flex}.lesson-tools a:hover{color:var(--accent)}.lesson-practice-summary{border-top:1px solid var(--line);margin-top:40px;padding:24px 0}.lesson-practice-summary h2{margin-bottom:20px;font-size:22px}.lesson-practice-summary dl>div{justify-content:space-between;gap:20px;padding:10px 0;font-size:14px;line-height:1.8;display:flex}.lesson-practice-summary dd{font-family:var(--font-mono);color:var(--accent);flex:none}.lesson-loading{padding:32px 0;line-height:1.8}.lesson-conflict{color:var(--danger);border-left:3px solid var(--danger);margin:24px 0;padding-left:16px;font-size:14px;line-height:1.8}.learning-resume-progress{font:12px/1.8 var(--font-mono);color:var(--muted);margin:16px 0 0}body.tutor-open .learning-lesson-layout{grid-template-columns:minmax(0,760px);justify-content:center}body.tutor-open .lesson-outline{border:1px solid var(--line);border-radius:6px;max-height:none;padding:0 16px;position:static}body.tutor-open .lesson-outline nav{max-height:420px;overflow:auto}@media (width<=1199px){.learning-lesson-layout{grid-template-columns:minmax(0,760px);justify-content:center;gap:24px}.lesson-outline{border:1px solid var(--line);border-radius:6px;max-height:none;padding:0 16px;position:static}.lesson-outline nav{max-height:420px;overflow:auto}}@media (width<=767px){.learning-lesson-layout{gap:20px}.lesson-heading h1{letter-spacing:-.6px;font-size:34px;line-height:1.25}.lesson-progress{margin-bottom:28px;font-size:10px}.lesson-location{gap:4px}.lesson-location .learning-back,.lesson-location>.button{font-size:11px}.lesson-markdown{font-size:16px;line-height:1.85}.lesson-markdown h2{font-size:24px}.lesson-exercise{margin:32px 0;padding:20px 16px}.lesson-exercise>h2{font-size:21px}.lesson-worked{padding:20px 16px}.lesson-rubric-point{grid-template-columns:1fr}.lesson-rubric-point>select{width:100%;max-width:100%;font-size:16px}.lesson-pagination{gap:10px}.lesson-pagination .button{min-width:0;padding:12px;font-size:13px}.lesson-practice-summary dl>div{font-size:13px}.lesson-markdown pre{padding:14px;font-size:12px}.lesson-source .inline-actions{gap:8px}.lesson-table table{font-size:13px}}:root{--font-ui:"Fira Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:"Alfa Slab One",Georgia,serif;--font-mono:"Fira Mono",ui-monospace,monospace;--desk:#fff;--shelf:#faf9f7;--sheet:#f5f2ef;--raised:#ede8e2;--inset:#fff;--ink:#1c1917;--secondary:#44403c;--muted:#70665e;--line:#e7e2dd;--line-strong:#a29486;--accent:#c2410c;--accent-hover:#9a3412;--accent-dark:#fff4ed;--accent-line:#fed7aa;--action:#f74c00;--action-hover:#ff8a4c;--on-action:#0d0b0a;--success:#246841;--danger:#a5362c;--danger-surface:#fff0eb;--warning:#825219;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--desk:#0d0b0a;--shelf:#141210;--sheet:#1a1714;--raised:#231e1a;--inset:#090807;--ink:#ece6e0;--secondary:#cfc6bd;--muted:#b0a69e;--line:#332d27;--line-strong:#6e5f52;--accent:#ff6a1f;--accent-hover:#ff8a4c;--accent-dark:#27150c;--accent-line:#7a3513;--action:#ff6a1f;--action-hover:#ff8a4c;--on-action:#0d0b0a;--success:#a2ddb7;--danger:#ffb8ab;--danger-surface:#331813;--warning:#e5bb81;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{font-family:var(--font-ui);color:var(--ink);background:var(--desk);font-size:15px}button,input,select,textarea{font-family:var(--font-ui)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}::selection{background:color-mix(in srgb,var(--action) 24%,transparent)}.sidebar{background:var(--desk);width:300px;padding:26px 22px 20px}.main-shell{margin-left:300px}.sidebar-heading{gap:6px;margin-bottom:30px}.sidebar-heading .brand,.brand,.access-brand{font-family:var(--font-display);letter-spacing:-.6px;font-weight:400}.sidebar-heading .brand{gap:6px;font-size:23px}.sidebar-heading .brand-symbol{width:32px;height:32px}.brand-wordmark>span{color:#f74c00;font-weight:400}.sidebar .nav-link{min-height:46px;font-family:var(--font-mono);color:var(--secondary);border:1px solid #0000;border-radius:7px;font-size:12px}.sidebar .nav-link>span:not(.nav-count){font-size:12px}.sidebar .nav-link.active{background:var(--accent-dark);border-color:var(--accent-line);color:var(--accent);box-shadow:inset 2px 0 var(--action)}.sidebar .nav-link:hover{background:var(--shelf)}.sidebar .nav-label{font:10px/1.8 var(--font-mono);letter-spacing:1px}.sidebar .subject-link{font-family:var(--font-mono);font-size:11px;line-height:1.75}.sidebar .subject-link.active{background:var(--accent-dark);color:var(--accent)}.sidebar-bottom{border-top:1px solid var(--line);gap:0;padding-top:18px}.sidebar-subjects{flex:1;margin-top:27px;overflow-y:auto}.account-avatar{background:var(--shelf);border-color:var(--line);color:var(--accent)}.account-avatar.active{background:var(--accent-dark)}.topbar{background:var(--desk);border-color:var(--line);gap:16px;min-width:0;height:72px;padding:0 36px}.topbar-actions{flex:none;align-items:center;gap:10px;display:flex}#breadcrumb{font-family:var(--font-mono);gap:0;min-width:0;font-size:11px}#breadcrumb>a{color:var(--muted)}#breadcrumb .breadcrumb-return{font-family:var(--font-ui);color:var(--accent);margin-left:12px;font-size:12px}#breadcrumb .subject-switcher{margin:0}#main{width:100%;max-width:1440px;padding:42px 38px 64px}.theme-toggle{border-color:var(--line);color:var(--secondary);background:0 0}.theme-toggle:hover{color:var(--accent);background:var(--accent-dark);border-color:var(--accent-line)}.tutor-trigger{border-color:var(--accent-line);background:var(--accent-dark);min-height:44px;color:var(--accent);font-size:12px}.page-heading h1,.subject-page-heading .subject-heading h1,.calendar-heading h1{font:400 34px/1.25 var(--font-display);letter-spacing:-.6px;overflow-wrap:anywhere}.learning-home-heading.page-heading h1{font-size:44px;line-height:1.15}.subject-page-heading .subject-heading h1{font-size:32px;line-height:1.3}.page-heading{gap:22px}.page-heading .eyebrow,.eyebrow{font-family:var(--font-mono)}.button{background:var(--shelf);min-height:44px;color:var(--ink);border-color:var(--line);border-radius:8px;font-size:14px;font-weight:600}.button:hover{background:var(--sheet);border-color:var(--line-strong)}.button.primary{background:var(--action);color:var(--on-action);border-color:var(--action);box-shadow:none}.button.primary:hover:not(:disabled){background:var(--action-hover);border-color:var(--action-hover);color:var(--on-action)}.button.quiet{background:0 0}button:focus-visible,a:focus-visible,summary:focus-visible{outline-color:var(--action)}.skip-link{background:var(--action);color:var(--on-action)}.icon-control{background:var(--shelf);border-color:var(--line);color:var(--secondary)}.icon-control:hover{background:var(--accent-dark);color:var(--accent);border-color:var(--accent-line)}.panel,.doubt-card,.app-modal{background:var(--shelf);border-color:var(--line);border-radius:12px}.error-box{color:var(--danger);background:var(--danger-surface);border-color:color-mix(in srgb,var(--danger) 28%,transparent)}.incorrect,.question-score.incorrect{color:var(--danger)}.field input:not([type=radio]):not([type=checkbox]):not([type=file]),.field select,.field textarea{border-color:var(--line-strong);background:var(--inset);color:var(--ink);font-size:14px}.field-label{color:var(--secondary);font-size:13px}.field input::placeholder,.field textarea::placeholder{color:var(--muted)}input[type=checkbox],input[type=radio]{accent-color:var(--action)}input,select,textarea{color-scheme:inherit}.settings-tabs .tab,.subject-tabs .tab{font-size:14px}.tab.active,.settings-tabs .tab.active{color:var(--accent);border-bottom-color:var(--action)}.subject-nav-bar>.subject-navigation.compact-subject-navigation{gap:28px}.subject-nav-bar>.subject-navigation.compact-subject-navigation a{font-family:var(--font-ui);color:var(--muted);border-bottom:2px solid #0000;min-height:48px;padding:13px 0;font-size:15px}.subject-nav-bar>.subject-navigation.compact-subject-navigation a[aria-current=page]{color:var(--accent);border-color:var(--action)}.subject-nav-tools .action-menu-trigger{color:var(--muted)}.action-menu-panel{background:var(--desk);color:var(--ink);border-color:var(--line-strong);box-shadow:0 8px 30px #0d0b0a18}.action-menu-item{font-size:14px}.action-menu-item:hover{background:var(--accent-dark);color:var(--accent)}.app-modal h2{font-family:var(--font-ui);font-size:23px;font-weight:600}.app-modal>p,.app-modal form>p{font-size:14px}.app-modal::backdrop,.navigation-drawer::backdrop{background:#0d0b0a80}.access-brand{font-size:30px}.access-card{background:var(--shelf);border-color:var(--line);border-top:3px solid var(--action)}.access-card h1{font:400 28px/1.3 var(--font-display);letter-spacing:-.4px}.access-glyph{background:var(--accent-dark);color:var(--action)}.cover{background:var(--sheet)}.cover-label{color:var(--ink);background:var(--desk);border-color:var(--line);font-family:var(--font-mono)}.card-body h2{font-family:var(--font-ui);font-size:20px;font-weight:600}.card-body p,.subject-card-meta{font-family:var(--font-mono)}.subject-card{border-color:var(--line);background:var(--shelf)}.subject-card:hover{border-color:var(--accent-line)}.material-resource-row{background:var(--desk)}.material-resource-copy h3{font-size:15px}.material-format-icon{background:var(--shelf);border-color:var(--line);color:var(--accent)}.material-resource-warning.failed{color:var(--danger)}.material-filters summary,.material-topic-select select,.material-search{background:var(--inset);border-color:var(--line-strong)}.material-filters .material-filter-panel{background:var(--desk);border-color:var(--line-strong)}.material-active-filters button{background:var(--accent-dark);color:var(--accent);border-color:var(--accent-line)}.reader-heading h1,.reader-page .reader-heading h1{font-family:var(--font-ui);color:var(--ink);font-weight:600}.document-stage{background:var(--sheet)}.document-toolbar{background:var(--shelf);border-color:var(--line)}.text-reader,.web-reader-article{color:var(--ink)}.text-reader p{font-size:17px;line-height:1.8}dialog.tutor-panel{background:var(--shelf);color:var(--ink);border-color:var(--line-strong)}.tutor-user-message{background:var(--accent-dark);border-color:var(--accent-line)}.tutor-send{background:var(--action);color:var(--on-action)}.tutor-send:hover{background:var(--action-hover)}.tutor-panel .tutor-answer-copy>p,.tutor-panel .tutor-user-message>p{font-size:15px;line-height:1.85}.tutor-panel .tutor-input-shell{background:var(--inset);border-color:var(--line-strong)}.tutor-welcome h3{font-family:var(--font-display);font-size:29px;font-weight:400;line-height:1.3}.tutor-panel .tutor-welcome h3{font-family:var(--font-display)}.question-panel,.question-solution{background:var(--shelf);border-color:var(--line)}.answer:has(input:checked){background:var(--accent-dark);border-color:var(--accent)}.result-score{color:var(--accent)}.practice-latest-grade{font-family:var(--font-mono)}.history-table{border-color:var(--line)}.calendar-sidebar,.calendar-shell{background:var(--shelf)}#toast{background:var(--desk);color:var(--ink);border-color:var(--line-strong);max-width:calc(100vw - 32px);box-shadow:0 4px 24px #0d0b0a24}@media (width>=1101px){.sidebar.is-collapsed{width:72px;padding:24px 14px 20px}.main-shell.is-sidebar-collapsed{margin-left:72px}.sidebar.is-collapsed .sidebar-account-label{display:none}.sidebar.is-collapsed .sidebar-subjects{flex:1}}@media (width<=1250px) and (width>=1101px){.sidebar:not(.is-collapsed){width:270px;padding:24px 16px}.main-shell:not(.is-sidebar-collapsed){margin-left:270px}.sidebar-heading .brand{font-size:21px}.sidebar-heading .brand-symbol{width:28px;height:28px}}@media (width<=1100px){.main-shell,.main-shell.is-sidebar-collapsed{margin-left:0}.topbar{height:72px;padding:10px 24px}#main{padding:32px 28px 54px}.navigation-drawer .brand{font:400 24px var(--font-display)}.navigation-drawer .nav-link>span:not(.nav-count){font-size:12px}.navigation-drawer .sidebar-bottom{flex-direction:row;display:flex}.navigation-drawer .subject-link{font-family:var(--font-mono);font-size:11px}.navigation-drawer .sidebar-account-label{display:block}}@media (width<=767px){.topbar{gap:8px;height:auto;min-height:68px;padding:10px 12px}.topbar-actions{gap:6px}#main{padding:28px 20px 44px}.topbar .icon-control{width:40px;min-width:40px;height:44px}.topbar .tutor-trigger{min-width:40px;padding:8px}#breadcrumb{flex-wrap:wrap;gap:0;line-height:1.5;display:flex}#breadcrumb>a:first-child{display:none}#breadcrumb>.subject-switcher{min-width:0;max-width:100%;display:block}#breadcrumb>.breadcrumb-section{font-family:var(--font-ui);font-size:13px;display:block}#breadcrumb .breadcrumb-return{flex-basis:100%;min-height:22px;margin:0;font-size:10px;display:block}.subject-switcher select{max-width:100%;min-height:40px;font-size:12px}.page-heading h1,.subject-page-heading .subject-heading h1,.calendar-heading h1{letter-spacing:-.4px;font-size:27px;line-height:1.3}.learning-home-heading.page-heading h1{font-size:34px}.page-heading .learning-intro{font-size:16px}.subject-page-heading .heading-actions{flex-wrap:wrap;max-width:44%}.subject-page-heading .heading-actions>.button{padding:10px;font-size:11px}.subject-page-heading .subject-heading{width:auto}.subject-nav-bar>.subject-navigation.compact-subject-navigation{display:none}.subject-nav-bar{border-color:var(--line);min-height:44px;margin-top:-8px;margin-bottom:20px}.mobile-navigation{background:var(--desk);border-color:var(--line);grid-template-columns:repeat(4,minmax(0,1fr))}.mobile-navigation>a{font-size:10px}.mobile-navigation>a[aria-current=page]{color:var(--accent);background:var(--accent-dark)}.has-mobile-navigation #main{padding-bottom:calc(var(--mobile-navigation-height) + 32px)}.button{white-space:normal;font-size:13px}.field input:not([type=radio]):not([type=checkbox]):not([type=file]),.field select,.field textarea,.tutor-panel .tutor-input-shell>textarea{font-size:16px}.access-card h1{font-size:26px}.subject-switcher select{font-size:12px}.material-resource-copy h3{font-size:14px}.tutor-panel .tutor-answer-copy>p{font-size:15px}}
