@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/manrope-latin-400-normal-PaqtzbVb.woff2)format("woff2"),url(/assets/manrope-latin-400-normal-8tf8FM3T.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-latin-500-normal-BYYD-dBL.woff2)format("woff2"),url(/assets/manrope-latin-500-normal-DMZssgOp.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/manrope-latin-600-normal-4f0koTD-.woff2)format("woff2"),url(/assets/manrope-latin-600-normal-BqgrALkZ.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-latin-700-normal-BZp_XxE4.woff2)format("woff2"),url(/assets/manrope-latin-700-normal-DGRFkw-m.woff)format("woff")}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-latin-400-normal-DnxXpLNu.woff2)format("woff2"),url(/assets/lora-latin-400-normal-DBJS-Hc6.woff)format("woff")}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lora-latin-500-normal-Dh16O2IA.woff2)format("woff2"),url(/assets/lora-latin-500-normal-Dbc_1yrl.woff)format("woff")}:root{color:#1d1d1b;font-synthesis:none;--bg:#f4f0e8;--surface:#fbf9f4;--surface-alt:#ebe5d9;--text:#1d1d1b;--muted:#5f5a52;--line:#d8d0c4;--line-strong:#b6aa99;--control:#7d756b;--accent:#a52c39;--accent-dark:#76212b;--accent-soft:#f3dfe1;--btn-primary-bg:#a52c39;--btn-primary-hover:#76212b;--btn-primary-ink:#fbf9f4;--green:#2f765a;--green-ink:#215842;--green-soft:#e2eee6;--focus:#1b5e78;--radius:3px;--radius-sm:2px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f4f0e8;font-family:Manrope,sans-serif}:root[data-theme=dark]{--bg:#151616;--surface:#1e1f1d;--surface-alt:#282926;--text:#f3efe7;--muted:#bdb5a9;--line:#3c3a35;--line-strong:#625c53;--control:#8b8378;--accent:#e6949c;--accent-dark:#f2b5bb;--accent-soft:#3d2428;--btn-primary-bg:#a52c39;--btn-primary-hover:#76212b;--btn-primary-ink:#fbf9f4;--green:#8cc4a3;--green-ink:#a6d8ba;--green-soft:#20372b;--focus:#8ed0e8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--font-ui:"Manrope", sans-serif;--font-reading:"Lora", Georgia, serif}*,:before,:after{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{min-width:320px;color:var(--text);background:var(--bg);font-family:var(--font-ui);margin:0;font-size:1rem;line-height:1.6}button,input,select,textarea{font:inherit;color:inherit}:is(button,a,select,summary,label:has(input)){cursor:pointer}button,a,label,select{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{appearance:none}button:disabled,fieldset:disabled label{cursor:not-allowed}button:disabled{opacity:.52}a{color:inherit;text-underline-offset:4px}svg{flex-shrink:0}h1,h2,h3,p,ul,ol{margin:0}h1,h2,h3{font-family:var(--font-reading);overflow-wrap:break-word;font-weight:500;line-height:1.2}h1{font-size:clamp(2.2rem,5vw,4.8rem)}h2{font-size:clamp(1.35rem,2.6vw,2rem)}h3{font-size:1.08rem}p{line-height:1.7}small{font-size:.8125rem}input{accent-color:var(--accent)}fieldset{border:0;min-width:0;margin:0;padding:0}table{border-collapse:collapse}.num{font-variant-numeric:tabular-nums}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:100;color:var(--text);background:var(--surface);border:2px solid var(--focus);border-radius:var(--radius);padding:10px 16px;font-size:.875rem;font-weight:700;text-decoration:none;position:fixed;top:12px;left:16px;transform:translateY(-220%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}main:focus{outline:none}.boot-status{color:var(--muted);padding:44px 28px}.page{width:min(100%, var(--content-max));min-width:0;margin:0 auto;padding:56px clamp(20px,5vw,80px) 96px}.page>h1{max-width:16ch}.page>p{max-width:68ch}.label,.page-marker,.eyebrow{color:var(--muted);font-family:var(--font-ui);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:700;line-height:1.3}.label{margin-bottom:10px}.muted,.fine-print{color:var(--muted)}.fine-print{font-size:.8125rem;line-height:1.65}.success-text{color:var(--green-ink)}.error-text{color:var(--accent)}.page-actions{flex-wrap:wrap;gap:12px;display:flex}@media (width<=900px){h1{font-size:clamp(2rem,8vw,3.25rem)}.page{padding-top:36px;padding-bottom:calc(76px + env(safe-area-inset-bottom))}}@media (width<=520px){.page{padding-left:18px;padding-right:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root{--rail-width:0px;--content-max:1480px;--measure:74ch;--space-section:clamp(48px, 8vw, 120px)}.app-main{min-height:calc(100svh - 74px)}.topbar{z-index:30;background:var(--surface);border-bottom:1px solid var(--line-strong);width:100%;position:sticky;top:0}.topbar-inner{align-items:center;gap:clamp(18px,4vw,64px);width:100%;min-height:74px;margin:0 auto;padding:12px clamp(20px,5vw,80px);display:flex}.wordmark{min-height:52px;color:var(--text);flex:none;align-items:center;gap:11px;text-decoration:none;display:flex}.wordmark-mark{width:44px;height:44px;color:var(--btn-primary-ink);background:var(--btn-primary-bg);border-radius:var(--radius);font-family:var(--font-reading);place-items:center;font-size:1.1rem;display:grid}.wordmark-copy{gap:1px;line-height:1.1;display:grid}.wordmark-copy strong{font-family:var(--font-ui);letter-spacing:.01em;font-size:.82rem;font-weight:700}.wordmark-copy strong span{color:var(--accent)}.wordmark-copy small{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem}.topbar nav{flex:auto;align-items:center;gap:4px;display:flex}.topbar nav a,.topbar nav button{min-width:44px;min-height:44px;color:var(--muted);font-family:var(--font-ui);background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:8px;padding:8px 12px;font-size:.7rem;font-weight:700;text-decoration:none;display:inline-flex}.topbar nav a:hover,.topbar nav button:hover,.topbar nav a[aria-current=page]{color:var(--accent);background:var(--surface-alt);border-bottom-color:var(--accent)}.topbar nav a:before{content:none}.rail-index{color:currentColor;font-variant-numeric:tabular-nums;font-size:.65rem}.topbar nav a span{display:block}.topbar .text-button{width:100%;min-height:44px}.rail-link{position:relative}.rail-glyph{place-items:center;width:22px;height:22px;line-height:1;display:inline-grid}.rail-glyph svg,.mobile-navigation svg{width:20px;height:20px}.rail-label{margin-top:0;display:inline}.account-area{flex:none;align-items:center;gap:8px;display:flex}.account-area .auth-user{max-width:180px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;overflow:hidden}.account-area .icon-button{width:44px;min-width:44px}.account-login{min-height:44px;color:var(--btn-primary-ink);background:var(--btn-primary-bg);border:1px solid var(--btn-primary-bg);border-radius:var(--radius);font-family:var(--font-ui);align-items:center;padding:8px 14px;font-size:.72rem;font-weight:700;text-decoration:none;display:inline-flex}.account-login:hover,.account-login[aria-current=page]{color:var(--btn-primary-ink);background:var(--btn-primary-hover);border-color:var(--btn-primary-hover)}.colophon{border-top:1px solid var(--line-strong)}.progress-global-notice{width:min(100% - 40px, calc(var(--content-max) - 160px));margin:24px auto 0}.colophon-inner{max-width:var(--content-max);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px 28px;margin:0 auto;padding:20px clamp(20px,5vw,80px) 26px;font-size:.78rem;display:flex}.mobile-navigation{display:none}.landing-page{width:100%;max-width:none;padding:0 clamp(20px,5vw,80px) 80px}.landing-spread{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,1fr) minmax(280px,.56fr);min-height:min(720px,100svh - 24px);display:grid}.landing-intro{border-right:1px solid var(--line);flex-direction:column;justify-content:center;min-width:0;padding:clamp(56px,7vw,104px) clamp(0px,5vw,100px) clamp(56px,7vw,104px) 0;display:flex}.landing-intro:before{content:"00";color:var(--accent);font-family:var(--font-reading);margin-bottom:14px;font-size:clamp(2.75rem,7vw,5.5rem);line-height:.8}.landing-lede{max-width:52ch;color:var(--muted);margin-top:22px;font-size:clamp(1rem,1.5vw,1.2rem)}.landing-actions{gap:16px;max-width:420px;margin-top:36px;display:grid}.landing-buttons{display:grid}.landing-buttons a{border-top:1px solid var(--line-strong);justify-content:flex-start;min-height:52px;padding-inline:16px}.landing-buttons a:last-child{border-bottom:1px solid var(--line-strong)}.landing-actions>.quiet-link{border:0;width:fit-content;min-height:0;padding:0}.landing-note{width:100%;max-width:420px;color:var(--muted);border-top:1px solid var(--line-strong);margin-top:18px;padding-top:18px;font-size:.8rem}.workbook-folio{background:0 0;border:0;place-self:center end;width:min(100%,620px);padding:28px 0 0 clamp(24px,4vw,64px)}.folio-head{border-bottom:1px solid var(--line-strong);padding-bottom:18px}.folio-total{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.folio-total strong{color:var(--accent);font-family:var(--font-reading);font-size:clamp(3.5rem,8vw,6.25rem);font-weight:500;line-height:.9}.folio-total span,.folio-component small{color:var(--muted);font-size:.78rem}.folio-table{table-layout:fixed;width:100%}.folio-table th,.folio-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:15px 0}.folio-table thead th{color:var(--muted);font-family:var(--font-ui);letter-spacing:.1em;text-align:right;text-transform:uppercase;padding:11px 0 9px;font-size:.64rem;font-weight:700}.folio-table thead th:first-child{text-align:left}.folio-table thead th:nth-child(2){width:46px}.folio-table thead th:nth-child(3){width:72px}.folio-table tbody th{text-align:left;font-weight:400}.folio-table td{color:var(--text);font-family:var(--font-ui);text-align:right;white-space:nowrap;font-size:.78rem}.folio-component{grid-template-columns:36px minmax(0,1fr);gap:12px;display:grid}.folio-component strong,.folio-component small{display:block}.folio-component strong{font-family:var(--font-ui);font-weight:700}.folio-component small{margin-top:4px}.folio-num{color:var(--accent)}.folio-table tfoot th,.folio-table tfoot td{border-top:1px solid var(--line-strong);border-bottom:0;padding-top:17px;font-weight:700}.folio-table tfoot th{text-align:left}.landing-guide{padding:var(--space-section) 0 44px;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:clamp(24px,7vw,120px);display:grid}.guide-heading{align-self:start;position:sticky;top:28px}.guide-heading h2{max-width:18ch;margin-top:12px}.guide-rows{border-top:1px solid var(--line-strong)}.guide-row{border-bottom:1px solid var(--line);grid-template-columns:160px minmax(0,1fr);gap:20px;padding:18px 0;display:grid}.guide-tag{color:var(--accent);font-weight:700}.landing-footer-note{border-top:1px solid var(--line-strong);color:var(--muted);justify-content:space-between;gap:24px;padding-top:20px;font-size:.8rem;display:flex}.auth-page{grid-template-columns:minmax(0,.8fr) minmax(360px,1fr);align-items:center;gap:clamp(40px,10vw,160px);min-height:calc(100svh - 40px);padding-top:clamp(48px,8vw,120px);display:grid}.auth-context{max-width:48ch}.auth-context:before{content:"ENTRY";color:var(--accent);font-family:var(--font-ui);letter-spacing:.16em;margin-bottom:22px;font-size:.7rem;font-weight:700;display:block}.auth-chapter{max-width:12ch;font-size:clamp(2.6rem,6vw,5.5rem)}.auth-context-copy{color:var(--muted);margin-top:22px;font-size:1.05rem}.auth-index-preview{border-top:1px solid var(--line-strong);gap:0;margin:44px 0 0;padding:0;list-style:none;display:grid}.auth-index-preview li{border-bottom:1px solid var(--line);grid-template-columns:34px minmax(0,1fr);gap:12px;padding:13px 0;font-size:.87rem;display:grid}.auth-index-preview span{color:var(--accent);font-variant-numeric:tabular-nums;font-weight:700}.auth-card{border-left:1px solid var(--line-strong);min-width:0;padding:32px 0 32px clamp(24px,5vw,72px)}.auth-card>h1{font-size:clamp(2rem,4vw,3.5rem)}.home-heading{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;padding-bottom:28px;display:grid}.home-heading>div>p:last-child{max-width:58ch;color:var(--muted);margin-top:14px}.resume-strip{border-top:3px solid var(--accent);border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:center;gap:24px;margin:28px 0;padding:18px 0;display:flex}.resume-strip strong{font-family:var(--font-reading);font-size:1.4rem;font-weight:500}.chapter-list{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:34px 0 0;display:grid}.section-choice{min-width:0;min-height:78px;color:var(--muted);text-align:left;border:0;border-right:1px solid var(--line);background:0 0;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:16px 14px;display:grid}.section-choice:last-child{border-right:0}.section-choice:hover,.section-choice.active{color:var(--text);background:var(--surface-alt)}.section-choice.active{box-shadow:inset 0 -3px 0 var(--accent)}.section-number{color:var(--accent);font-family:var(--font-reading);font-size:1.05rem}.section-copy{gap:4px;display:grid}.section-copy strong{color:currentColor;font-family:var(--font-ui);font-size:.88rem}.section-copy small{color:var(--muted);font-size:.72rem}.home-layout{grid-template-columns:236px minmax(0,1fr) 252px;gap:clamp(24px,3.5vw,56px);min-width:0;margin-top:44px;display:grid}.session-sheet{min-width:0}.session-sheet>h2{max-width:18ch;margin:8px 0 14px}.setup-lede{max-width:58ch;color:var(--muted)}.study-margin{border-left:1px solid var(--line-strong);align-self:start;padding:18px 0 0 24px}.section-rail{min-width:0}.section-rail>.label{margin-bottom:18px}.section-rail .chapter-list{grid-template-columns:1fr;margin:0;display:grid}.section-rail .section-choice{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:36px minmax(0,1fr);min-height:72px;padding:15px 0}.section-rail .section-choice:first-child{border-top:1px solid var(--line-strong)}.section-rail .section-choice:last-child{border-bottom:1px solid var(--line-strong)}.study-margin p:last-child{color:var(--muted);font-size:.86rem}.exercise-page{max-width:1500px}.exercise-heading{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:end;gap:24px;padding-bottom:22px;display:flex}.exercise-heading h1{max-width:22ch;font-size:clamp(1.9rem,4vw,3.6rem)}.exercise-component{color:var(--muted);margin-top:12px;font-size:.8rem}.exercise-tools{align-items:center;gap:12px;display:flex}.timer{color:var(--text);font-family:var(--font-reading);font-size:clamp(1.8rem,4vw,3rem);line-height:1}.timer.is-urgent{color:var(--accent)}.exercise-layout{grid-template-columns:minmax(0,1fr) 240px;align-items:start;gap:clamp(32px,6vw,110px);margin-top:44px;display:grid}.question-panel{min-width:0;max-width:78ch}.question-index{border-left:1px solid var(--line-strong);min-width:0;padding-left:22px;position:sticky;top:28px}.question-index>summary{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.74rem;font-weight:700}.number-grid{grid-template-columns:repeat(5,minmax(34px,1fr));gap:5px;margin-top:16px;display:grid}.number{min-width:44px;min-height:44px;color:var(--muted);border:1px solid var(--line);background:0 0;padding:0;font-size:.76rem;font-weight:700}.number:hover,.number.current{color:var(--text);border-color:var(--accent)}.number.current{box-shadow:inset 0 -3px 0 var(--accent)}.number.answered{color:var(--text);background:var(--surface-alt)}.number.checked{color:var(--green-ink);border-color:var(--green)}.number.flagged{color:var(--accent);border-color:var(--accent)}.result-page,.mistakes-page,.progress-page,.reference-page{max-width:1280px}.result-summary{border-top:3px solid var(--accent);border-bottom:1px solid var(--line-strong);grid-template-columns:auto 1fr;align-items:end;gap:0 28px;margin:48px 0;padding:28px 0;display:grid}.result-summary .label{grid-column:1/-1}.accuracy{color:var(--accent);font-family:var(--font-reading);font-size:clamp(4rem,12vw,9rem);font-weight:500;line-height:.85}.result-summary>span{color:var(--muted)}.result-summary>.notice{grid-column:1/-1;margin-bottom:0}.score-estimate{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(240px,.5fr);gap:24px;padding:24px 0;display:grid}.score-estimate-heading{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.estimated-score{font-family:var(--font-reading);font-size:1.25rem}.review-section{margin-top:52px}.review-heading{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:end;gap:20px;padding-bottom:16px;display:flex}.review-list{margin-top:12px}.review-item{border-bottom:1px solid var(--line)}.review-item summary{min-height:56px;font-family:var(--font-reading);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.review-content{max-width:var(--measure);color:var(--muted);padding:4px 0 24px 28px}.mistake-groups{margin-top:42px}.mistake-group{border-top:1px solid var(--line-strong);padding:24px 0}.mistake-group-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.analytics-panel,.latest-session,.progress-layout>section{min-width:0}.progress-layout{grid-template-columns:minmax(0,1fr) minmax(220px,.4fr);gap:48px clamp(32px,6vw,100px);margin-top:44px;display:grid}.analytics-panel{border-top:3px solid var(--accent);border-bottom:1px solid var(--line-strong);grid-column:1/-1;padding:20px 0}.section-list,.history-list{gap:0;margin-top:18px;display:grid}.section-row,.history-row{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;gap:20px;width:100%;padding:14px 0;display:grid}.history-row:hover{color:var(--accent)}.topic-table>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 64px;gap:16px;padding:12px 0;display:grid}.storage-actions{flex-wrap:wrap;gap:12px;margin-top:40px;display:flex}.reference-intro{max-width:var(--measure);border-bottom:1px solid var(--line-strong);padding-bottom:28px}.reference-intro>p:last-child{color:var(--muted);margin-top:16px}.table-scroll{max-width:100%;margin-top:36px;overflow-x:auto}.reference-page table,.breakdown-table{width:100%;min-width:560px}.reference-page th,.reference-page td,.breakdown-table th,.breakdown-table td{text-align:left;border-bottom:1px solid var(--line);padding:16px 14px}.reference-page thead,.breakdown-table thead{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}.reference-page caption{color:var(--muted);text-align:left;margin-bottom:12px}.reference-page tfoot th,.reference-page tfoot td{border-top:2px solid var(--line-strong);font-weight:700}.reference-columns{border-top:1px solid var(--line-strong);grid-template-columns:1fr .7fr;gap:64px;margin-top:54px;padding-top:24px;display:grid}.reference-links{gap:12px;margin-top:14px;display:grid}.reference-row-meta{color:var(--muted);margin-top:4px;font-size:.78rem;font-weight:400;display:block}@media (width<=900px){:root{--rail-width:0px}.app-main,.colophon{margin-left:0}.topbar{border-right:0;border-bottom:1px solid var(--line-strong);width:100%;height:auto;position:sticky}.topbar-inner{flex-direction:row;align-items:center;height:68px;padding:10px 18px;display:flex}.wordmark{justify-content:flex-start;min-height:44px;display:flex}.wordmark-mark{width:38px;height:38px;font-size:.95rem}.topbar nav{flex:1;justify-content:flex-end;gap:4px;margin:0;display:flex}.topbar nav a,.topbar nav button{border:0;border-bottom:3px solid #0000;min-height:44px;padding:8px 10px;font-size:.72rem}.account-area{align-items:center;gap:6px;display:flex}.account-area .auth-user{display:none}.rail-label{margin-top:0}.topbar nav a:before{display:none}.landing-spread,.auth-page{grid-template-columns:1fr;min-height:0}.landing-intro{border-right:0;padding-top:72px;padding-bottom:64px;padding-right:0}.workbook-folio{padding:40px 0 0}.landing-guide,.reference-columns,.progress-layout{grid-template-columns:1fr}.guide-heading{position:static}.auth-page{gap:48px;padding-top:60px}.auth-card{border-top:1px solid var(--line-strong);border-left:0;padding:28px 0 0}.chapter-list{scrollbar-width:thin;min-width:0;display:flex;overflow-x:auto}.section-choice{border-right:1px solid var(--line);flex:0 0 160px}.section-rail .chapter-list{margin:0;display:flex}.section-rail .section-choice,.section-rail .section-choice:first-child,.section-rail .section-choice:last-child{border-top:0;border-bottom:0;border-right:1px solid var(--line);min-height:78px;padding:16px 14px}.home-layout,.exercise-layout{grid-template-columns:1fr}.study-margin{border-top:1px solid var(--line-strong);border-left:0;padding:20px 0 0}.question-index{border-right:0;border-bottom:1px solid var(--line-strong);border-left:0;order:-1;padding:0 0 18px;position:static}}@media (width<=600px){.exercise-actions{grid-template-columns:1fr;display:grid}.exercise-actions>*{width:100%}.home-heading,.resume-strip,.landing-footer-note,.mistake-group-heading,.review-heading{flex-direction:column;grid-template-columns:1fr;align-items:flex-start}.home-heading,.resume-strip{display:grid}.resume-strip .primary{width:100%}.chapter-list{display:flex}.guide-row{grid-template-columns:1fr;gap:6px}.folio-table thead th:nth-child(2){width:42px}.folio-table thead th:nth-child(3){width:68px}.folio-table th,.folio-table td{padding:13px 0}.folio-component{grid-template-columns:28px minmax(0,1fr);gap:9px}.exercise-heading{flex-direction:column;align-items:flex-start}.exercise-tools{justify-content:space-between;width:100%}.score-estimate{grid-template-columns:1fr}.reference-page th,.reference-page td,.breakdown-table th,.breakdown-table td{padding:12px 10px}}@media (width<=720px){.wordmark-copy,.topbar.is-authenticated nav,.topbar.is-public .public-reference-link{display:none}.mobile-navigation{z-index:40;min-height:58px;padding-bottom:env(safe-area-inset-bottom);background:var(--surface);border-top:1px solid var(--line-strong);grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-navigation a{min-height:58px;color:var(--muted);place-items:center;font-size:.72rem;font-weight:700;text-decoration:none;display:grid}.mobile-navigation a[aria-current=page]{color:var(--accent);box-shadow:inset 0 3px 0 var(--accent)}.colophon{padding-bottom:calc(58px + env(safe-area-inset-bottom))}}button,.primary,.secondary{border-radius:var(--radius);min-height:44px;font-family:var(--font-ui);justify-content:center;align-items:center;gap:8px;font-size:.82rem;font-weight:700;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.primary{color:var(--btn-primary-ink);background:var(--btn-primary-bg);border:1px solid var(--btn-primary-bg);padding:11px 18px}.primary:not(:disabled):hover{background:var(--btn-primary-hover);border-color:var(--btn-primary-hover)}.secondary{color:var(--text);border:1px solid var(--line-strong);background:0 0;padding:10px 16px}.secondary:not(:disabled):hover{color:var(--accent);background:var(--surface-alt);border-color:var(--accent)}.text-button{min-height:44px;color:var(--text);text-underline-offset:4px;background:0 0;border:0;padding:8px;text-decoration:underline}.text-button:hover,.quiet-link:hover{color:var(--accent)}.quiet-link{min-height:44px;color:var(--accent);text-underline-offset:4px;align-items:center;font-size:.82rem;font-weight:700;text-decoration:underline;display:inline-flex}.icon-button{width:44px;min-width:44px;height:44px;color:var(--text);border:1px solid var(--line-strong);background:0 0;padding:0}.icon-button:hover,.icon-button[aria-pressed=true]{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.icon-button svg{width:20px;height:20px}.notice{color:var(--text);background:var(--surface-alt);border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);align-items:flex-start;gap:12px;margin:24px 0;padding:14px 16px;font-size:.84rem;display:flex}.notice.warning,.notice.error{color:var(--accent-dark);border-left:3px solid var(--accent)}.storage-actions{flex-wrap:wrap;gap:12px;display:flex}.field,.auth-field{min-width:0;color:var(--text);gap:7px;font-size:.82rem;font-weight:700;display:grid}.field input,.field select,.auth-field input,.auth-field select{width:100%;min-height:48px;color:var(--text);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);padding:10px 12px}.field input:focus,.field select:focus,.auth-field input:focus,.auth-field select:focus{border-color:var(--focus);outline:3px solid var(--focus);outline-offset:1px}.auth-form{gap:18px;max-width:460px;margin-top:28px;display:grid}.auth-form .primary{width:100%}.auth-copy,.auth-links,.auth-message{color:var(--muted);font-size:.86rem}.auth-links{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding-top:16px;display:flex}.auth-links a{color:var(--accent)}.password-control{position:relative}.password-control input{padding-right:54px}.password-toggle{width:44px;min-width:44px;height:44px;min-height:44px;color:var(--muted);border-radius:var(--radius-sm);background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:2px;right:2px}.password-toggle:hover{color:var(--text);background:var(--surface-alt)}.password-toggle svg{width:20px;height:20px}.turnstile-wrap{background:var(--surface-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px}.session-filters{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px;padding:20px 0;display:grid}.type-breakdown{border-bottom:1px solid var(--line);gap:0;margin-top:18px;display:grid}.type-breakdown>div,.full-details p{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:16px;padding:10px 0;font-size:.82rem;display:flex}.full-blueprint{color:var(--muted);align-items:baseline;gap:16px;margin-top:30px;display:flex}.full-blueprint strong{color:var(--accent);font-family:var(--font-reading);font-size:clamp(3.5rem,8vw,6rem);font-weight:500;line-height:.9}.full-details{margin-top:26px}.session-summary{border-top:2px solid var(--line-strong);border-bottom:1px solid var(--line-strong);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;margin-top:32px;padding:18px 0;display:grid}.session-summary>span{font-family:var(--font-reading);font-size:1.2rem}.segmented{flex-wrap:wrap;gap:8px;display:flex}.mode-choice{min-height:44px;color:var(--muted);border:1px solid var(--line);align-items:center;gap:8px;padding:8px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.mode-choice:has(input:checked){color:var(--text);background:var(--accent-soft);border-color:var(--accent)}.mode-choice input{margin:0}@media (width<=1100px){.session-summary{grid-template-columns:1fr;align-items:start}}.audio-panel{border-top:2px solid var(--line-strong);border-bottom:1px solid var(--line);margin:0 0 34px;padding:14px 0}.audio-heading{justify-content:space-between;align-items:baseline;gap:18px;display:flex}.audio-title{gap:3px;display:grid}.audio-title span,.audio-status,.audio-time{color:var(--muted);font-size:.76rem}.audio-controls{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;margin-top:12px;display:grid}.audio-controls audio{width:100%;min-width:0;height:36px}.passage-column{border-left:2px solid var(--accent);max-width:74ch;margin-bottom:40px;padding-left:24px}.passage-column h2{margin:10px 0 20px}.passage-body{font-family:var(--font-reading);gap:18px;line-height:1.85;display:grid}.passage-body p{grid-template-columns:26px minmax(0,1fr);gap:12px;display:grid}.paragraph-number{color:var(--accent);font-family:var(--font-ui);font-size:.75rem}.question-sentence{max-width:72ch;font-family:var(--font-reading);margin:0 0 28px;font-size:clamp(1.3rem,2vw,1.75rem);line-height:1.65}.error-part{flex-direction:column;margin-right:12px;display:inline-flex}.error-part>span{color:var(--accent);font-family:var(--font-ui);text-align:center;font-size:.68rem;text-decoration:none}.options{border-top:1px solid var(--line-strong);gap:0;max-width:760px;margin-bottom:24px;display:grid}.option{border-bottom:1px solid var(--line);grid-template-columns:38px minmax(0,1fr);align-items:start;gap:12px;min-height:58px;padding:14px 0;display:grid}.option input{opacity:0;position:absolute}.option-letter{width:30px;height:30px;color:var(--muted);border:1px solid var(--line-strong);place-items:center;font-size:.78rem;font-weight:700;display:grid}.option:hover .option-letter,.option.selected .option-letter{color:var(--accent);border-color:var(--accent)}.option.selected{color:var(--text);background:var(--accent-soft)}.option.correct .option-letter{color:var(--green-ink);border-color:var(--green)}.option.incorrect .option-letter{color:var(--accent-dark);border-color:var(--accent)}.explanation{border-top:2px solid var(--green);border-bottom:1px solid var(--line);max-width:760px;margin:28px 0;padding:20px 0}.explanation.is-incorrect{border-top-color:var(--accent)}.explanation h2{margin-bottom:10px}.answer-key{color:var(--muted);font-size:.86rem}.explanation details{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}.explanation details ul{color:var(--muted);gap:10px;padding:12px 0 0 20px;display:grid}.transcript{border-bottom:1px solid var(--line);max-width:760px;padding:14px 0}.transcript>div{color:var(--muted);font-family:var(--font-reading);gap:10px;margin-top:14px;display:grid}.exercise-actions,.result-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.review-tabs{flex-wrap:wrap;gap:6px;margin:18px 0 4px;display:flex}.review-tabs button{min-height:44px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 12px}.review-tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.empty-notebook{border-top:2px solid var(--line-strong);border-bottom:1px solid var(--line);margin-top:48px;padding:28px 0}.empty-notebook p{max-width:56ch;color:var(--muted);margin-top:10px}.import-confirm{border-top:2px solid var(--accent);border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:center;gap:20px;margin:28px 0;padding:18px 0;display:flex}.import-confirm-actions{flex-wrap:wrap;gap:10px;display:flex}.dialog-backdrop{z-index:50;background:#1516168c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog{background:var(--surface);border:1px solid var(--line-strong);width:min(100%,480px);padding:28px}@media (width<=900px){.session-summary{grid-template-columns:1fr;align-items:start}.audio-controls{grid-template-columns:1fr auto}.audio-controls audio{grid-column:1/-1}}@media (width<=600px){.session-filters{grid-template-columns:1fr}.audio-heading,.import-confirm{flex-direction:column;align-items:flex-start}.option{grid-template-columns:34px minmax(0,1fr)}.exercise-actions>*{flex:150px}.exercise-actions .text-button{justify-content:flex-start}}.page-folio{color:var(--accent);font-family:var(--font-reading);align-self:start;font-size:clamp(2.8rem,5vw,5rem);line-height:.9}.progress-heading,.mistakes-heading{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;padding-bottom:28px;display:grid}.progress-heading>div>p:last-child,.mistakes-heading>div>p:last-child{max-width:62ch;color:var(--muted);margin-top:14px}.home-focus,.result-next-step{border-top:2px solid var(--accent);border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:center;gap:24px;margin:28px 0;padding:18px 0;display:flex}.home-focus h2,.result-next-step h2{margin-bottom:4px;font-size:clamp(1.35rem,2.4vw,2rem)}.home-focus p:last-child,.result-next-step p:last-child{color:var(--muted);font-size:.86rem}.result-next-step>strong{color:var(--accent);font-family:var(--font-reading);font-size:clamp(2.8rem,5vw,4.5rem);font-weight:500;line-height:.9}.progress-page .progress-layout{gap:44px clamp(32px,6vw,96px)}.progress-panel-heading{justify-content:space-between;align-items:end;gap:24px;display:flex}.progress-panel-heading h2{max-width:28ch;margin-top:6px;font-size:clamp(1.35rem,2.4vw,2rem)}.coverage-number{color:var(--accent);font-family:var(--font-reading);font-size:clamp(2.8rem,6vw,5rem);font-weight:500;line-height:.9}.coverage-meter{background:var(--surface-alt);border:1px solid var(--line);height:8px;margin:26px 0 6px}.coverage-meter span{background:var(--accent);min-width:0;height:100%;display:block}.section-row{grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:14px}.section-row-number,.mistake-number{color:var(--accent);font-size:.78rem;font-weight:700}.section-row h2{font-family:var(--font-ui);font-size:.95rem;font-weight:700}.section-row p{color:var(--muted);font-size:.78rem}.progress-recommendation,.latest-session,.topic-log,.session-log{min-width:0}.progress-recommendation{border-top:2px solid var(--accent);border-bottom:1px solid var(--line);align-self:start;padding:18px 0 22px}.progress-recommendation h2{margin:6px 0 10px;font-size:1.45rem}.progress-recommendation p:not(.label){color:var(--muted);margin-bottom:18px;font-size:.86rem}.section-heading{border-bottom:1px solid var(--line-strong);padding-bottom:12px}.section-heading h2{margin-top:4px;font-size:1.45rem}.history-row{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;min-height:58px}.history-row-featured{border-top:1px solid var(--line);border-bottom:2px solid var(--accent)}.history-section{color:var(--text);font-weight:700}.history-date,.topic-table small{color:var(--muted);font-size:.74rem;display:block}.topic-table>div{align-items:center}.topic-table>div>span{gap:3px;display:grid}.mistakes-page .notebook-summary{color:var(--muted);align-items:baseline;gap:12px;margin-top:34px;display:flex}.notebook-summary strong{color:var(--accent);font-family:var(--font-reading);font-size:clamp(2.8rem,6vw,5rem);font-weight:500;line-height:.9}.mistake-item{grid-template-columns:34px minmax(0,1fr);gap:12px;padding:18px 0;display:grid}.mistake-item h3{max-width:70ch;font-size:1.05rem}.mistake-item p{color:var(--muted);margin-top:7px;font-size:.82rem}.mistake-item time{color:var(--muted);margin-top:5px;font-size:.74rem;display:block}.mistake-item .text-button{justify-content:flex-start;margin-top:8px;padding-left:0}.timer-readout{justify-items:end;gap:3px;display:grid}.timer-label,.index-progress{color:var(--muted);font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:700}.exercise-progress{color:var(--muted);margin-top:8px;font-size:.78rem}.question-index>summary{justify-content:space-between;gap:12px;display:flex}.empty-review{border-bottom:1px solid var(--line);margin-top:18px;padding:22px 0}.empty-review h3{font-family:var(--font-reading);font-size:1.2rem}.empty-review p{color:var(--muted);margin-top:6px}@media (width<=900px){.progress-heading,.mistakes-heading{grid-template-columns:minmax(0,1fr) auto}.progress-page .progress-layout{gap:34px}}@media (width<=600px){.progress-heading,.mistakes-heading{grid-template-columns:1fr;gap:14px}.page-folio{display:none}.home-focus,.result-next-step{flex-direction:column;align-items:flex-start}.home-focus .secondary,.result-next-step .secondary{width:100%}.progress-panel-heading{flex-direction:column;align-items:start;gap:16px}.coverage-number{font-size:3rem}.history-row{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px}.history-row>:nth-child(2){grid-column:1}.history-row>:nth-child(3),.history-row>:nth-child(4){grid-row:1/span 2}.history-row>:nth-child(4){grid-column:2}.history-row>:nth-child(3){color:var(--muted);grid-column:2;margin-right:52px;font-size:.75rem}.mistake-item{grid-template-columns:28px minmax(0,1fr)}}
