/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-serif:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-normal:0em;--tracking-wide:.025em;--tracking-widest:.1em;--radius-md:.375rem;--radius-lg:.5rem;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\@container{container-type:inline-size}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.z-1{z-index:1}.z-6{z-index:6}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-7{order:7}.order-8{order:8}.order-16{order:16}.row-2{grid-row:2}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-1{margin:calc(var(--spacing) * 1)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-25{width:calc(var(--spacing) * 25);height:calc(var(--spacing) * 25)}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.p-1{padding:calc(var(--spacing) * 1)}.p-2{padding:calc(var(--spacing) * 2)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal}.ordinal,.tabular-nums{font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.ring,.shadow{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.invert{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#0d1526;--ink-2:#1b2740;--paper:#fff;--white:#fff;--muted:#5a6779;--line:#e3e8ef;--line-strong:#c7d0dd;--wash:#eef3fc;--paper-2:var(--wash)}@supports (color:color-mix(in lab,red,red)){:root{--paper-2:color-mix(in srgb,var(--wash) 46%,var(--white))}}:root{--paper-3:var(--wash)}@supports (color:color-mix(in lab,red,red)){:root{--paper-3:color-mix(in srgb,var(--wash) 78%,var(--white))}}:root{--accent:#2b4bb3;--accent-dark:#1e3685;--brand-accent-light:#8ea6f5;--tier-bronze:#9a5b2a;--tier-silver:#6b7686;--tier-gold:#8f6c0c;--tier-platinum:#3d7780;--tier-diamond:#2f63ad;--tier-master:#7a3f99;--accent-soft:var(--accent)}@supports (color:color-mix(in lab,red,red)){:root{--accent-soft:color-mix(in srgb,var(--accent) 12%,var(--paper))}}:root{--accent-bright:#4d6df0;--danger:#bf3a2e;--danger-dark:#8c271e;--danger-soft:var(--danger)}@supports (color:color-mix(in lab,red,red)){:root{--danger-soft:color-mix(in srgb,var(--danger) 14%,var(--paper))}}:root{--danger-icon:var(--danger)}@supports (color:color-mix(in lab,red,red)){:root{--danger-icon:color-mix(in srgb,var(--danger) 24%,var(--paper))}}:root{--danger-mid:var(--danger)}@supports (color:color-mix(in lab,red,red)){:root{--danger-mid:color-mix(in srgb,var(--danger) 45%,var(--paper))}}:root{--success:#1e7a50;--success-dark:#15583a;--success-soft:var(--success)}@supports (color:color-mix(in lab,red,red)){:root{--success-soft:color-mix(in srgb,var(--success) 16%,var(--paper))}}:root{--success-mid:var(--success)}@supports (color:color-mix(in lab,red,red)){:root{--success-mid:color-mix(in srgb,var(--success) 55%,var(--paper))}}:root{--attention:#e0962e;--attention-soft:var(--attention)}@supports (color:color-mix(in lab,red,red)){:root{--attention-soft:color-mix(in srgb,var(--attention) 18%,var(--paper))}}:root{--attention-mid:var(--attention)}@supports (color:color-mix(in lab,red,red)){:root{--attention-mid:color-mix(in srgb,var(--attention) 60%,var(--attention-dark))}}:root{--attention-dark:#4f2708;--accent-tint:#b1c3f4;--secondary:#0e7490;--font-sans:var(--font-sans-loaded,"Helvetica Neue",Helvetica,Arial,sans-serif);--font-math:var(--font-math-loaded,"Latin Modern Roman","CMU Serif","Times New Roman",serif);--font-display:var(--font-sans);--font-serif:var(--font-math);--font-mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;--step--2:11px;--step--1:13px;--step-0:16px;--step-1:20px;--step-2:25px;--step-3:clamp(28px,3vw,39px);--step-4:clamp(36px,5vw,61px);--step-5:clamp(44px,7vw,95px);--step-numeral-sm:34px;--step-numeral-md:42px;--step-numeral-lg:56px;--measure-solve:60ch;--section-gap:clamp(32px,3.2vw,48px);--measure-page:1180px;--stack-gap:clamp(20px,2vw,28px);--panel-pad:clamp(22px,2.4vw,34px);--tracking-tightest:-.035em;--tracking-tighter:-.03em;--tracking-tight:-.026em;--tracking-snug:-.02em;--tracking-normal:-.01em;--tracking-wide:.05em;--tracking-widest:.12em;--control-h:44px;--focus-ring:2px solid var(--accent);--focus-offset:2px;--space-1:4px;--space-2:8px;--space-2-5:12px;--space-3:16px;--space-4:24px;--space-4-5:32px;--space-5:40px;--space-6:64px;--space-7:104px;--space-8:clamp(90px,11vw,150px);--sidebar-width:248px;--sidebar-width-collapsed:72px;--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--ease:var(--ease-out);--spring-smooth:cubic-bezier(.22,1,.36,1);--spring-bounce:cubic-bezier(.34,1.56,.64,1);--spring-snappy:cubic-bezier(.32,.72,0,1);--radius:4px;--radius-md:6px;--radius-lg:10px;--elevation-1:none;--elevation-2:none;--elevation-3:0 2px 6px #0d152614,0 12px 32px -8px #0d152633;--elevation-4:0 4px 12px #0d15261a,0 24px 56px -12px #0d152647;--elevation-dark-2:inset 0 1px 0 #c8dcff0a,0 20px 44px -26px #0009;--elevation-dark-3:inset 0 1px 0 #c8dcff0d,0 34px 80px -40px #000000a6;--elevation-dark-4:inset 0 1px 0 #c8dcff0f,0 55px 120px -45px #000000b3;--glass-blur:14px;--glass-saturate:1.6;--glass-border-light:var(--ink)}@supports (color:color-mix(in lab,red,red)){:root{--glass-border-light:color-mix(in srgb,var(--ink) 10%,transparent)}}:root{--glass-border-dark:#ffffff14;--chrome-1:#0a101c;--chrome-2:#0f172a;--chrome-3:#16203a;--chrome-4:#1c2942;--chrome-5:#2b3a58;--chrome-text-dim:#46536b;--chrome-ink:#fff;--chrome-text-muted:#7c8ba6;--chrome-text-soft:#9aa7bf;--chrome-text-faint:#b6c2d6;--chrome-hairline:#c8dcff14;--chrome-hairline-strong:#c8dcff21;--chrome-inset-highlight:inset 0 1px 0 #c8dcff12}*{box-sizing:border-box}html:not([data-instant]){scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--step-0);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.55}dd,li,p{text-wrap:pretty}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a{text-decoration:none}a,button{color:inherit}::selection{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){::selection{background:color-mix(in srgb,var(--accent) 22%,var(--paper))}}::selection{color:var(--ink)}:where(a,button,input,textarea,select,[tabindex]):focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}h1,h2{font-family:var(--font-display);font-weight:650;line-height:1.08}h1,h2,h3,h4{letter-spacing:var(--tracking-normal);text-wrap:balance}h3,h4{font-family:var(--font-sans);font-weight:600;line-height:1.2}a:not([class]){text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){a:not([class]){-webkit-text-decoration-color:color-mix(in srgb,var(--accent) 45%,transparent);text-decoration-color:color-mix(in srgb,var(--accent) 45%,transparent)}}a:not([class]){text-underline-offset:.2em;transition:text-decoration-color .15s var(--ease-out);text-decoration-thickness:1px}@media (hover:hover){a:not([class]):hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.math{font-size:1.05em}.math .katex{font-size:inherit}.math-display{text-align:center;margin:1.1em 0;display:block}.math-display .katex-display{margin:0}.math-prose{font-family:var(--font-serif);font-style:italic}.answer-choice,.math-pending,.math-prose{font-variant-numeric:lining-nums proportional-nums}.math-fallback{font-family:var(--font-mono);font-size:.95em}.problem-statement{font-family:var(--font-math);letter-spacing:0;font-style:normal;font-weight:400}.equation{align-items:center;gap:var(--space-4);margin:var(--space-4) 0;padding:var(--space-3) 0;grid-template-columns:1fr auto;display:grid}.equation .katex-display{margin:0}.lemma{background:var(--white);border:1px solid var(--line);box-shadow:var(--elevation-1);padding:var(--space-4) var(--space-5);position:relative}.qed{border:1.5px solid var(--ink);height:11px;transition:background .25s var(--ease);width:9px;display:inline-block}.qed[data-closed=true]{background:var(--ink)}.mark-correct{color:var(--success)}.mark-wrong{color:var(--danger)}.mark-due{background:var(--attention);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .25em}.skip-link{background:var(--accent);color:var(--white);font:700 var(--step--2) var(--font-sans);z-index:200;align-items:center;min-height:44px;padding:13px 16px;display:inline-flex;position:fixed;top:-80px;left:14px}.skip-link:focus{top:14px}.field-label{color:var(--muted);font:500 var(--step--1)/1.2 var(--font-sans);display:block}.section-title{font:650 var(--step-1)/1.2 var(--font-sans);margin:0 0 var(--space-3)}.card-title,.section-title{letter-spacing:var(--tracking-snug)}.card-title{font:600 var(--step-1)/1.2 var(--font-sans);margin:0}.tab-bar{border-bottom:1px solid var(--line);gap:var(--space-5);scrollbar-width:none;display:flex;overflow-x:auto}.tab-bar::-webkit-scrollbar{display:none}.tab-bar [role=tab]{color:var(--muted);cursor:pointer;font:500 var(--step-0)/1 var(--font-sans);min-height:var(--control-h);transition:color .18s var(--ease),border-color .18s var(--ease);background:0 0;border:0;border-bottom:2px solid #0000;flex:none;margin-bottom:-1px;padding:0}@media (hover:hover){.tab-bar [role=tab]:hover{color:var(--ink)}}.tab-bar [role=tab]:focus-visible{outline-offset:-2px}.tab-bar [role=tab][aria-selected=true]{border-bottom-color:var(--accent);color:var(--accent-dark)}@media (max-width:620px){.tab-bar{gap:var(--space-3)}}.stat-label{color:var(--muted);font:500 var(--step--1)/1.3 var(--font-sans);display:block}.stat-figure{font:600 var(--step-numeral-sm)/1.1 var(--font-sans);margin:var(--space-2) 0;display:block}.stat-note{color:var(--muted);font:400 var(--step--1)/1.4 var(--font-sans);display:block}.button{border-radius:var(--radius);cursor:pointer;font:500 var(--step--1)/1 var(--font-sans);letter-spacing:.01em;min-height:var(--control-h);padding:0 var(--space-4);transition:background .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease),transform .18s var(--ease),box-shadow .18s var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:12px;display:inline-flex}.button:disabled{cursor:not-allowed;opacity:.45}.button[aria-busy=true]{min-width:142px}.button:active:not(:disabled){transform:scale(.97)}.button-dark{background:var(--ink);color:var(--paper)}@media (hover:hover){.button-dark:hover:not(:disabled){background:var(--ink-2)}}.button-light{background:var(--white);border-color:var(--line);color:var(--ink)}.button-primary{background:var(--accent);color:#fff}@media (hover:hover){.button-primary:hover:not(:disabled){background:var(--accent-dark)}}.button-ghost{border-color:var(--line-strong);background:0 0}@media (hover:hover){.button-ghost:hover:not(:disabled){background:var(--white);border-color:var(--ink)}}.text-link{font:600 var(--step--1) var(--font-sans)}.brand{--logo-size:26px;align-items:center;gap:calc(var(--logo-size) * .268);width:fit-content;min-width:44px;min-height:44px;display:inline-flex}.logo-mark{width:var(--logo-size)}.brand-word,.logo-mark{height:var(--logo-size);flex:none;display:block;overflow:visible}.brand-word{aspect-ratio:748.5/188.8}.app-shell{grid-template-columns:var(--sidebar-width) 1fr;min-height:100vh;display:grid}@media (min-width:901px){html[data-sidebar-collapsed=true] .app-shell{grid-template-columns:var(--sidebar-width-collapsed) 1fr}}.sidebar{background:var(--chrome-1);color:var(--chrome-ink);height:100vh;padding:var(--space-4) var(--space-3) var(--space-3);scrollbar-width:none;z-index:20;flex-direction:column;justify-content:space-between;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar::-webkit-scrollbar{display:none}.sidebar .brand{padding:0 var(--space-1)}.sidebar-top{flex-direction:column;display:flex}.sidebar-head{justify-content:space-between;gap:8px}.sidebar-head,.sidebar-toggle{align-items:center;display:flex}.sidebar-toggle{border-radius:var(--radius);color:var(--chrome-text-soft);cursor:pointer;height:var(--control-h);transition:background .16s var(--ease),border-color .16s var(--ease),color .16s var(--ease),transform .16s var(--ease);width:var(--control-h);background:0 0;border:1px solid #0000;flex:none;justify-content:center}@media (hover:hover){.sidebar-toggle:hover{background:var(--chrome-2);border-color:var(--chrome-hairline-strong);color:var(--chrome-ink)}}.sidebar-toggle:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent)}@supports (color:color-mix(in lab,red,red)){.sidebar-toggle:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 40%,transparent)}}.sidebar-toggle:focus-visible{outline:none}.sidebar-toggle svg{height:13px;transition:transform .16s var(--ease-out);width:13px}html[data-sidebar-collapsed=true] .sidebar-toggle svg{transform:rotate(180deg)}.side-nav{flex-direction:column;gap:2px;display:flex}.side-nav a{border-radius:var(--radius-md);color:var(--chrome-text-soft);font:500 var(--step--1) var(--font-sans);align-items:center;gap:var(--space-2-5);padding:var(--space-2-5);transition:background .16s var(--ease),border-color .16s var(--ease),box-shadow .16s var(--ease),color .16s var(--ease),transform .16s var(--ease);border:1px solid #0000;display:flex}@media (hover:hover){.side-nav a:hover{background:var(--chrome-2);color:var(--chrome-ink)}}.side-nav a:focus-visible{background:var(--chrome-2);color:var(--chrome-ink);outline:var(--focus-ring);outline-offset:-2px}.side-nav a{position:relative}.side-nav a:after{border:1.5px solid var(--line-strong);content:"";opacity:0;height:9px;transition:background .16s var(--ease-out),border-color .16s var(--ease-out),opacity .16s var(--ease-out);border-radius:50%;flex:none;width:9px;margin-left:auto}@media (hover:hover){.side-nav a:not(.active):hover:after{opacity:1}}.side-nav a.active:after{background:var(--accent);border-color:var(--accent);opacity:1}.side-nav a:not(.active):hover .nav-glyph{color:var(--chrome-ink)}.side-nav a:active{transform:scale(.98)}.side-nav a.active{color:var(--chrome-ink);background:0 0;border-color:#0000;font-weight:600}.side-nav a.active:focus-visible{box-shadow:0 0 0 3px var(--accent)}@supports (color:color-mix(in lab,red,red)){.side-nav a.active:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 40%,transparent)}}.nav-count{color:var(--chrome-ink);font:600 var(--step--2)/1 var(--font-sans);border:1.5px solid;border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 4px;display:inline-flex}.side-nav a.active:has(>.nav-count):after{display:none}.side-nav a:has(>.nav-count):after{margin-left:var(--space-2)}.mobile-inbox{color:var(--chrome-ink);height:var(--control-h);width:var(--control-h);justify-content:center;align-items:center;display:inline-flex;position:relative}.mobile-inbox[aria-current]{box-shadow:inset 0 -2px 0 var(--accent)}.mobile-inbox .nav-count{background:var(--chrome-1);min-width:16px;height:16px;margin:0;position:absolute;top:2px;right:0}.nav-glyph{color:var(--chrome-text-muted);font-size:var(--step-0);flex:none;place-items:center;width:22px;height:22px;display:inline-grid}.side-nav a.active .nav-glyph{color:var(--accent-tint)}.nav-label{text-overflow:ellipsis;transition:opacity .16s var(--ease);white-space:nowrap;display:inline-block;overflow:hidden}.rail-tip{animation:railTipIn .14s var(--ease) .1s both;background:var(--chrome-4);border:1px solid var(--chrome-hairline-strong);border-radius:var(--radius);box-shadow:var(--elevation-dark-2);color:var(--chrome-ink);font:500 var(--step--1) var(--font-sans);left:calc(var(--sidebar-width-collapsed) + 8px);pointer-events:none;white-space:nowrap;z-index:60;align-items:center;gap:10px;padding:7px 10px;display:none;position:fixed;transform:translateY(-50%)}@keyframes railTipIn{0%{opacity:0;transform:translate(-4px,-50%)}to{opacity:1;transform:translateY(-50%)}}.sidebar-bottom{gap:var(--space-2);flex-direction:column;display:flex}.account-dock{border:1px solid var(--chrome-hairline);border-radius:var(--radius-md);align-items:center;gap:var(--space-1);padding:var(--space-1);transition:background .16s var(--ease),border-color .16s var(--ease),box-shadow .16s var(--ease);display:flex}.account-dock:focus-within,.account-dock:hover{background:var(--chrome-2);border-color:var(--chrome-hairline-strong);box-shadow:var(--chrome-inset-highlight)}button.avatar{cursor:pointer;border:0}.user-chip{font:inherit;border-radius:var(--radius);color:inherit;cursor:pointer;align-items:center;gap:var(--space-2-5);text-align:left;background:0 0;border:0;flex:1;min-width:0;min-height:44px;padding:4px;display:flex}.avatar{background:var(--ink);border-radius:var(--radius-md);color:var(--paper);font:600 var(--step--2) var(--font-sans);justify-content:center;align-items:center;width:35px;height:35px}.avatar,.user-chip-badges{flex:none;display:inline-flex}.user-chip-badges{color:var(--chrome-ink);gap:4px;margin-left:4px}.user-chip-identity{flex-direction:column;gap:3px;display:flex;overflow:hidden}.user-chip small{color:var(--chrome-ink);font:500 var(--step--2) var(--font-sans);align-items:center;gap:4px;display:inline-flex}.user-chip strong{color:var(--chrome-ink);font:600 var(--step--1) var(--font-sans);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (min-width:901px){html[data-sidebar-collapsed=true] .sidebar{padding:22px 10px 16px}html[data-sidebar-collapsed=true] .rail-tip{display:flex}html[data-sidebar-collapsed=true] .sidebar-head{align-items:center;gap:var(--space-2);flex-direction:column}html[data-sidebar-collapsed=true] .sidebar .brand{justify-content:center;width:100%;padding:0}html[data-sidebar-collapsed=true] .sidebar-toggle{border-color:#0000;width:100%;height:44px}html[data-sidebar-collapsed=true] .nav-label,html[data-sidebar-collapsed=true] .side-nav a:after,html[data-sidebar-collapsed=true] .sidebar .brand-word,html[data-sidebar-collapsed=true] .user-chip-badges,html[data-sidebar-collapsed=true] .user-chip-identity{display:none}html[data-sidebar-collapsed=true] .side-nav{margin-top:var(--space-4)}html[data-sidebar-collapsed=true] .side-nav a.active{background:var(--paper-3)}html[data-sidebar-collapsed=true] .side-nav{gap:6px}html[data-sidebar-collapsed=true] .side-nav a{justify-content:center;gap:0;min-height:44px;padding:0}html[data-sidebar-collapsed=true] .nav-glyph{width:24px;height:24px}html[data-sidebar-collapsed=true] .sidebar-bottom{align-items:stretch;gap:var(--space-3)}html[data-sidebar-collapsed=true] .account-dock{background:0 0;border-color:#0000;justify-content:center;padding:0}html[data-sidebar-collapsed=true] .user-chip{justify-content:center;gap:0;padding:4px 0}html[data-sidebar-collapsed=true] .avatar{width:36px;height:36px}}.app-main{min-width:0}.app-main main{min-height:100vh}.mobile-bar,.sidebar,nav[aria-label="Primary mobile navigation"]{--chrome-1:var(--paper);--chrome-2:var(--paper-2);--chrome-3:var(--accent)}@supports (color:color-mix(in lab,red,red)){.mobile-bar,.sidebar,nav[aria-label="Primary mobile navigation"]{--chrome-3:color-mix(in srgb,var(--accent) 8%,var(--paper))}}.mobile-bar,.sidebar,nav[aria-label="Primary mobile navigation"]{--chrome-4:var(--white);--chrome-5:var(--line-strong);--chrome-ink:var(--ink);--chrome-text-dim:var(--muted);--chrome-text-muted:var(--muted);--chrome-text-soft:var(--ink-2);--chrome-text-faint:var(--muted);--chrome-hairline:var(--line);--chrome-hairline-strong:var(--line-strong);--chrome-inset-highlight:none;--elevation-dark-2:none;--accent-tint:var(--accent)}.sidebar{border-right:1px solid var(--line)}.mobile-bar{border-bottom:1px solid var(--line)}html[data-exam=true] .app-shell{grid-template-columns:1fr}.mobile-bar,html[data-exam=true] .mobile-bar,html[data-exam=true] .sidebar,html[data-exam=true] nav[aria-label="Primary mobile navigation"]{display:none}.mobile-bar-actions{align-items:center;gap:10px;display:flex}.page{max-width:1540px;margin:0 auto 0 0;padding:clamp(40px,5vw,72px) clamp(24px,5vw,72px) 120px;overflow-x:hidden}.page-header{align-items:flex-end;gap:var(--space-4);justify-content:space-between;display:flex}.page-header h1{font-size:var(--step-3);letter-spacing:var(--tracking-snug);margin:0;font-weight:650;line-height:1.1}.page-header p{color:var(--muted);font-size:var(--step-0);margin:10px 0 0;line-height:1.5}.compact-header{align-items:center}.stack{gap:var(--section-gap);max-width:var(--measure-page);flex-direction:column;display:flex}.panel,.surface-1,.surface-2{border:0;border-top:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0}.surface-1,.surface-2{padding:var(--space-4) 0 0}.page>.surface-1:first-child,.page>.surface-2:first-child{border-top:0;padding-top:0}.sheet,.surface-3{background:var(--white);border:1px solid var(--line-strong);border-radius:var(--radius-md);box-shadow:none;padding:var(--panel-pad)}.panel-topline{color:var(--muted);font:500 var(--step--2) var(--font-sans);justify-content:space-between;display:flex}@keyframes activityDevelop{0%{filter:blur(6px);opacity:0}to{filter:blur();opacity:1}}@keyframes metricRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.practice-search{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.practice-search input{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);font:550 var(--step--1) var(--font-sans);min-height:var(--control-h);padding:0 var(--space-2-5);transition:background .15s var(--ease),border-color .15s var(--ease),box-shadow .15s var(--ease);outline:0;width:100%}.practice-search input::placeholder{color:var(--muted);font-weight:400}@media (hover:hover){.practice-search input:hover{background:var(--white);border-color:var(--line-strong)}}.practice-search input:focus-visible{background:var(--white);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent)}@supports (color:color-mix(in lab,red,red)){.practice-search input:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}}.practice-search input:focus-visible{outline:none}@keyframes controlSettle{0%{transform:scale(.94)}to{transform:scale(1)}}.practice-layout{align-items:start;gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.problem-workspace{flex-direction:column;min-height:640px;display:flex}.answer-choice{background:var(--white);border:1px solid var(--line);cursor:pointer;align-items:center;gap:var(--space-3);min-height:62px;padding:var(--space-2) var(--space-3);text-align:left;transition:border-color .15s var(--ease),background .15s var(--ease),transform .12s var(--spring-snappy);grid-template-columns:36px 1fr;display:grid}@media (hover:hover){.answer-choice:hover:not(:disabled){background:var(--paper-2);border-color:var(--line-strong)}}.answer-choice:active:not(:disabled){transform:scale(.96)}.answer-choice>span{background:var(--paper-3);font:600 var(--step--1) var(--font-sans);height:32px;transition:background .15s var(--ease),color .15s var(--ease);border-radius:50%;justify-content:center;align-items:center;width:32px;display:flex}.answer-choice strong{font:400 1em var(--font-serif);line-height:1.45}.answer-choice strong .katex{font-size:1em}.answer-choice.selected{animation:controlSettle .26s var(--spring-bounce);background:var(--accent-soft);border-color:var(--accent)}.answer-choice.selected>span{background:var(--accent);color:var(--white)}.answer-choice.correct{animation:controlSettle .3s var(--spring-bounce);background:var(--success-soft);border-color:var(--success)}.answer-choice.correct>span{background:var(--success);color:var(--white);font-size:var(--step-0)}.answer-choice.incorrect{animation:controlSettle .3s var(--spring-bounce);background:var(--danger-soft);border-color:var(--danger)}.answer-choice.incorrect>span{background:var(--danger);color:var(--white)}.answer-choice.correct:focus-visible{outline-color:var(--success-dark)}.answer-choice.incorrect:focus-visible{outline-color:var(--danger-dark)}.practice-notes{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.practice-notes .panel{padding:var(--space-4)}.practice-notes .panel>span{color:var(--muted);font:600 var(--step--2) var(--font-sans);display:block}.scratch-card textarea{background:var(--paper-2);border:1px solid var(--line);font:400 var(--step--1)/1.6 var(--font-sans);height:132px;margin-top:var(--space-2);padding:var(--space-2);resize:vertical;outline:0;width:100%}.scratch-card textarea:focus{border-color:var(--accent)}.scratch-card small{font:400 var(--step--2) var(--font-sans);margin-top:4px}kbd{background:var(--paper-3);border:1px solid var(--line);color:var(--ink);font:500 var(--step--2) var(--font-mono);min-width:42px;padding:4px 6px;display:inline-block}.empty-state,kbd{text-align:center}.empty-state{border:1px dashed var(--line-strong);border-radius:var(--radius-lg);align-items:center;gap:var(--space-2);padding:var(--space-6) var(--panel-pad);flex-direction:column;display:flex}.empty-state>strong{font-size:var(--step-1);font-weight:550}.empty-state>.button{margin-top:var(--space-2)}.empty-state span{color:var(--muted)}.result-good{background:var(--success-soft);color:var(--success-dark)}.result-bad{background:var(--danger-icon);color:var(--danger-dark)}.share-status{color:var(--muted);font:500 var(--step--2) var(--font-sans);flex-basis:100%;min-height:0}.share-status:empty{display:none}.workspace-loading{background:var(--paper);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100vh;padding:30px;display:flex}.scratch-card small,.workspace-loading>span{color:var(--muted);font:500 var(--step--2) var(--font-sans)}.scratch-card small{margin:9px 0;display:block}@media (max-width:900px){html{scroll-padding-bottom:90px}.app-shell{grid-template-columns:1fr}.sidebar{display:none}.mobile-bar{background:var(--chrome-1);color:var(--chrome-ink);z-index:30;justify-content:space-between;align-items:center;height:64px;padding:0 18px;display:flex;position:sticky;top:0}.avatar.small{font-size:var(--step--1);height:var(--control-h);width:var(--control-h)}.page{padding-bottom:110px}.practice-layout{grid-template-columns:1fr}}@media (max-width:620px){.page{padding-top:30px;padding-left:16px;padding-right:16px}.page-header{flex-direction:column;align-items:flex-start;gap:20px}.page-header .button{width:100%}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.recovery-codes-warning{color:var(--ink);font:500 var(--step--1)/1.6 var(--font-sans);margin:0 0 var(--space-3);max-width:62ch}.recovery-codes-grid{border-bottom:1px solid var(--line);margin:0 0 var(--space-3);max-width:26rem;padding:0;list-style:none}.recovery-codes-grid li{border-top:1px solid var(--line);padding:var(--space-2) 0}.recovery-codes-grid code{font:600 var(--step-0)/1.4 var(--font-mono);letter-spacing:0;-webkit-user-select:all;user-select:all}.recovery-codes-actions{gap:var(--space-2-5);margin-bottom:var(--space-2-5);flex-wrap:wrap;display:flex}.recovery-codes-status:empty{display:none}.recovery-codes-status{color:var(--ink-2);font:500 var(--step--1)/1.5 var(--font-sans);margin:0 0 var(--space-2-5)}.recovery-codes-note{color:var(--muted);font-size:var(--step--1);margin:0 0 var(--space-4);max-width:62ch;line-height:1.6}.math-pending{font-family:var(--font-serif);font-size:1.02em}.tex .katex{font-size:1.08em}.tex-block{scrollbar-width:thin;max-width:100%;padding:.3em 0;display:block;overflow:auto hidden}.tex-inline .katex{font-size:1.04em}.tex-statement-prose{font-family:var(--font-serif);line-height:1.5}.tex-nowrap{white-space:nowrap}.problem-figure{background:0 0;min-width:min(100%,13rem);max-width:min(100%,26rem);height:auto;margin:1rem auto;padding:0;display:block}.answer-choice .problem-figure,.problem-table .problem-figure{max-width:11rem;margin:.15rem 0;display:inline-block}.statement-break{height:.7em;display:block}.problem-table-wrap{margin:1rem 0;display:block;overflow-x:auto}.problem-table{border-collapse:collapse;margin:0 auto;font-size:.95em}.problem-table td,.problem-table th{border:1px solid;padding:.3rem .8rem}@supports (color:color-mix(in lab,red,red)){.problem-table td,.problem-table th{border:1px solid color-mix(in srgb,currentColor 22%,transparent)}}.problem-table td,.problem-table th{text-align:center}.problem-table th{background:currentColor;font-weight:600}@supports (color:color-mix(in lab,red,red)){.problem-table th{background:color-mix(in srgb,currentColor 6%,transparent)}}html[data-instant] *,html[data-instant] :after,html[data-instant] :before{transition-duration:0s!important;transition-delay:0s!important;animation-duration:0s!important;animation-delay:0s!important}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}