@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--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}}}:root{--color-paper:#f8f5ee;--color-paper-2:#efeae2;--color-paper-3:#e3ddd4;--color-ink:#1a1510;--color-ink-2:#3c3731;--color-neutral:#5c5751;--color-muted:#67635d;--color-rule:#cfcac1;--color-rule-strong:#867f74;--color-accent:#895700;--color-accent-soft:#f7e2be;--color-accent-ink:#f8f5ee;--color-focus:#573000;--color-focus-on-accent:#f8f5ee;--color-error:#b71a18;--color-error-soft:#ffdfda;--color-success:#286f2f;--color-success-soft:#d7ebd7;--color-chart-grid:#d6d0c7;--color-overlay:#0805037a;--font-display:var(--font-geist), "Avenir Next", ui-sans-serif, sans-serif;--font-body:var(--font-plex), "Segoe UI", ui-sans-serif, sans-serif;--font-mono:var(--font-plex), "Segoe UI", ui-sans-serif, sans-serif;--font-code:var(--font-roboto-mono), "Roboto Mono", ui-monospace, monospace;--font-typing:var(--font-roboto-mono), "Roboto Mono", ui-monospace, monospace;--text-xs:.72rem;--text-sm:.84rem;--text-base:1rem;--text-md:1.25rem;--text-lg:1.56rem;--text-xl:1.95rem;--text-2xl:2.44rem;--text-3xl:3.05rem;--text-4xl:3.81rem;--text-display:clamp(2.8rem, 6vw, 5.25rem);--text-home-display:clamp(2.7rem, 7.5vw, 6rem);--text-typing:clamp(1.65rem, 2.65vw, 2.2rem);--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:9rem;--page-gutter:clamp(1rem, 4vw, 4rem);--page-max:82rem;--reading-max:68ch;--rule-hair:1px;--radius-sm:.35rem;--radius-md:.65rem;--radius-lg:1rem;--radius-pill:999px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-modal:400;--z-toast:500;--z-tooltip:600}@supports (color:lab(0% 0 0)){:root{--color-paper:lab(96.5459% .519395 3.39361);--color-paper-2:lab(93.0739% .704825 4.53292);--color-paper-3:lab(88.4389% .833631 5.29615);--color-ink:lab(7.22419% 1.46236 3.71451);--color-ink-2:lab(23.4419% 1.46286 4.38504);--color-neutral:lab(37.3691% 1.29969 4.41397);--color-muted:lab(42.0178% .839442 3.73825);--color-rule:lab(81.4787% .83819 5.29926);--color-rule-strong:lab(53.6458% 1.14694 6.86367);--color-accent:lab(41.6026% 24.412 85.1995);--color-accent-soft:lab(90.8306% 3.70166 20.1603);--color-accent-ink:lab(96.5459% .519395 3.39361);--color-focus:lab(24.154% 22.4452 52.8901);--color-focus-on-accent:lab(96.5459% .519395 3.39361);--color-error:lab(40.1143% 59.6761 45.0277);--color-error-soft:lab(91.5117% 12.5929 7.73852);--color-success:lab(41.1193% -33.7078 28.309);--color-success-soft:lab(91.1787% -9.78023 7.61453);--color-chart-grid:lab(83.7988% .836581 5.29816);--color-overlay:lab(1.55786% .574149 1.26648/.48)}}[data-theme=dark]{--color-paper:#0e0b06;--color-paper-2:#15110b;--color-paper-3:#1f1a12;--color-ink:#eeebe5;--color-ink-2:#c7c3bd;--color-neutral:#a29e98;--color-muted:#898680;--color-rule:#2d2820;--color-rule-strong:#6a6255;--color-accent:#ebaa1f;--color-accent-soft:#342304;--color-accent-ink:#140e07;--color-focus:#ffd793;--color-focus-on-accent:#140e07;--color-error:#f66e60;--color-error-soft:#371713;--color-success:#6cb26f;--color-success-soft:#122412;--color-chart-grid:#2d2820;--color-overlay:#030101b8}@supports (color:lab(0% 0 0)){[data-theme=dark]{--color-paper:lab(3.05976% .496671 2.12175);--color-paper-2:lab(5.2871% .827596 3.57561);--color-paper-3:lab(9.55001% 1.20998 5.97118);--color-ink:lab(93.0668% .36639 3.03117);--color-ink-2:lab(79.1483% .585675 3.77634);--color-neutral:lab(65.228% .591815 3.78042);--color-muted:lab(55.9477% .597149 3.78412);--color-rule:lab(16.5139% 1.14174 6.20578);--color-rule-strong:lab(42.0511% 1.48928 8.45981);--color-accent:lab(74.4889% 16.5682 72.286);--color-accent-soft:lab(15.305% 6.07225 20.9847);--color-accent-ink:lab(4.4278% 1.74922 3.78196);--color-focus:lab(88.5297% 8.57595 40.5639);--color-focus-on-accent:lab(4.4278% 1.74922 3.78196);--color-error:lab(63.591% 52.5925 34.6176);--color-error-soft:lab(12.5141% 16.0135 10.1869);--color-success:lab(66.6863% -33.5986 27.2525);--color-success-soft:lab(12.3594% -11.7608 9.45386);--color-chart-grid:lab(16.5139% 1.14174 6.20578);--color-overlay:lab(.460861% .223458 .453171/.72)}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--ease-in:cubic-bezier(.4, 0, 1, 1);--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-body);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{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}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.fixed{position:fixed}.isolate{isolation:isolate}.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}}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.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,)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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,)}.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))}}*,:before,:after{box-sizing:border-box}html,body{overflow-x:clip}html{background:var(--color-paper);scroll-behavior:smooth}body{background:var(--color-paper);min-height:100dvh;color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);text-rendering:optimizelegibility;margin:0;line-height:1.6}main{min-height:72dvh}button,input,select,textarea{color:inherit;font:inherit}button,a,select,label{-webkit-tap-highlight-color:transparent}button,a{white-space:nowrap}button{border:0}a{color:inherit;text-decoration:none}h1,h2,h3,p,dl,dd,blockquote{margin:0}h1,h2,h3{overflow-wrap:anywhere;min-width:0;font-family:var(--font-display);letter-spacing:-.03em;font-style:normal;line-height:1.08}::selection{background:var(--color-accent-soft);color:var(--color-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.page-shell{width:min(100%, var(--page-max));padding:var(--space-2xl) var(--page-gutter) var(--space-3xl);margin-inline:auto}.page-heading{gap:var(--space-md);max-width:52rem;padding-block:var(--space-xl) var(--space-2xl);display:grid}.page-heading h1{font-size:clamp(2.5rem, 6vw, var(--text-4xl));font-weight:700}.page-heading p{max-width:58ch;color:var(--color-neutral);font-size:var(--text-md)}.site-nav{z-index:var(--z-sticky);border-block-end:var(--rule-hair) solid var(--color-rule);background:var(--color-paper);position:sticky;inset-block-start:0}.site-nav__inner{width:min(100%, var(--page-max));min-height:4.5rem;padding-inline:var(--page-gutter);grid-template-columns:minmax(0,1fr) auto;align-items:center;margin-inline:auto;display:grid}.wordmark{align-items:center;gap:var(--space-xs);width:fit-content;font-family:var(--font-display);font-size:var(--text-md);letter-spacing:-.04em;font-weight:600;display:inline-flex}.wordmark__mark{color:var(--color-accent)}.site-nav__links{align-items:center;gap:var(--space-2xs);display:none}.site-nav__links a,.mobile-menu a{min-height:2.75rem;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:var(--color-neutral);font-size:var(--text-sm);white-space:nowrap;font-weight:600}.site-nav__links a.is-active,.mobile-menu a.is-active{color:var(--color-accent);background:var(--color-accent-soft)}.site-nav__actions{justify-content:flex-end;align-items:center;gap:var(--space-2xs);display:flex}.icon-button,.quiet-action,.primary-button,.secondary-button,.text-button,.profile-button,.article-card__action,.segmented button,.selector-row button{justify-content:center;align-items:center;gap:var(--space-xs);cursor:pointer;border-radius:var(--radius-sm);min-width:2.75rem;min-height:2.75rem;transition:transform var(--dur-micro) var(--ease-out), background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out), opacity var(--dur-short) var(--ease-out);display:inline-flex}.icon-button svg,.quiet-action svg,.primary-button svg,.secondary-button svg,.text-button svg,.profile-button svg,.article-card__action svg{stroke-width:1.8px;width:1rem;height:1rem}.icon-button{color:var(--color-neutral);background:0 0;padding:0}.profile-button{padding-inline:var(--space-sm);color:var(--color-neutral);font-size:var(--text-sm);background:0 0;display:none}.icon-button:active,.quiet-action:active,.primary-button:active,.secondary-button:active,.text-button:active,.article-card__action:active,.segmented button:active,.selector-row button:active{transform:translateY(1px)}button:disabled,[aria-disabled=true]{cursor:not-allowed;opacity:.5}[data-state=loading]{cursor:progress;opacity:.72}[data-state=error]{border-color:var(--color-error);color:var(--color-error)}[data-state=success]{border-color:var(--color-success);color:var(--color-success)}.mobile-menu-button{display:inline-flex}.mobile-menu{gap:var(--space-2xs);padding:var(--space-sm) var(--page-gutter) var(--space-md);border-block-start:var(--rule-hair) solid var(--color-rule);background:var(--color-paper);display:grid}.mobile-menu button{min-height:2.75rem;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:var(--color-neutral);font-size:var(--text-sm);text-align:start;background:0 0;font-weight:600}.account-dialog-backdrop{z-index:calc(var(--z-sticky) + 20);padding:var(--space-md);background:var(--color-overlay);place-items:center;display:grid;position:fixed;inset:0}.account-dialog{border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-lg);background:var(--color-paper-2);width:min(100%,31rem);max-height:calc(100dvh - 2rem);display:grid;overflow-y:auto;box-shadow:0 1.5rem 5rem #00000042}.account-dialog>header{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);padding:var(--space-lg);border-block-end:var(--rule-hair) solid var(--color-rule);display:flex}.account-dialog>header>div{gap:var(--space-2xs);display:grid}.account-dialog>header span,.account-dialog__signed-in span{color:var(--color-accent);font-family:var(--font-code);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:600}.account-dialog>header h2{font-size:var(--text-xl)}.account-dialog__form,.account-dialog__signed-in{gap:var(--space-md);padding:var(--space-xl) var(--space-lg) var(--space-lg);display:grid}.account-dialog__form>p,.account-dialog__signed-in>p{color:var(--color-neutral);font-size:var(--text-sm)}.account-dialog__form>label{color:var(--color-muted);font-size:var(--text-xs);margin-block-end:calc(0rem - var(--space-sm))}.account-dialog__form>input,.account-phone-field{border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-paper);width:100%;min-height:3.25rem}.account-dialog__form>input{padding-inline:var(--space-md)}.account-phone-field{grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.account-phone-field>span{padding-inline:var(--space-md);border-inline-end:var(--rule-hair) solid var(--color-rule);color:var(--color-neutral);font-family:var(--font-code)}.account-phone-field input{min-width:0;height:100%;padding-inline:var(--space-md);background:0 0;border:0;outline:0}.account-dialog__form>svg,.account-dialog__signed-in>svg{width:var(--text-2xl);height:var(--text-2xl);color:var(--color-accent);stroke-width:1.5px}.account-dialog__signed-in>div{gap:var(--space-2xs);display:grid}.account-dialog__signed-in strong{font-size:var(--text-lg)}.account-dialog__message{min-height:1lh;color:var(--color-accent)!important}.settings-dialog{width:min(100% - 2rem,42rem);height:fit-content;max-height:min(82dvh,46rem);padding:var(--space-lg);border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-lg);background:var(--color-paper-2);color:var(--color-ink);margin:auto;position:fixed;inset:0;overflow-y:auto}.settings-dialog::backdrop{background:var(--color-overlay)}.dialog-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);border-block-end:var(--rule-hair) solid var(--color-rule);padding-block-end:var(--space-lg);display:flex}.dialog-heading h2{font-size:var(--text-xl)}.dialog-heading p,.settings-dialog legend{color:var(--color-neutral);font-size:var(--text-sm)}.settings-grid{gap:var(--space-lg);padding-block-start:var(--space-lg);display:grid}.settings-dialog fieldset{gap:var(--space-xs);border:0;min-width:0;margin:0;padding:0;display:grid}.segmented{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.segmented--stretch{grid-template-columns:repeat(auto-fit,minmax(5.5rem,1fr));display:grid}.segmented label,.segmented button{min-height:2.75rem;padding-inline:var(--space-sm);cursor:pointer;border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-neutral);font-size:var(--text-sm);white-space:nowrap;justify-content:center;align-items:center;display:inline-flex;position:relative}.segmented input{opacity:0;block-size:1px;inline-size:1px;position:absolute}.segmented label:focus-within,.segmented button:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.segmented .is-active,.segmented button.is-active{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-ink)}.settings-toggles{border-block-start:var(--rule-hair) solid var(--color-rule);display:grid}.switch-row{justify-content:space-between;align-items:center;gap:var(--space-lg);border-block-end:var(--rule-hair) solid var(--color-rule);min-height:3.25rem;display:flex}.switch-row input{width:1.2rem;height:1.2rem;accent-color:var(--color-accent)}.primary-button,.secondary-button,.text-button,.quiet-action{width:fit-content;padding-inline:var(--space-md);font-size:var(--text-sm);font-weight:600}.primary-button{border:var(--rule-hair) solid var(--color-accent);background:var(--color-accent);color:var(--color-accent-ink)}.primary-button:focus-visible{outline-color:var(--color-focus);box-shadow:inset 0 0 0 2px var(--color-focus-on-accent)}.secondary-button{border:var(--rule-hair) solid var(--color-rule-strong);color:var(--color-ink);background:0 0}.quiet-action,.text-button{color:var(--color-neutral);background:0 0}.text-button{padding-inline:var(--space-xs)}.text-link{align-items:center;gap:var(--space-xs);width:fit-content;padding-block:var(--space-xs);border-block-end:var(--rule-hair) solid var(--color-rule-strong);font-weight:600;display:inline-flex}.text-link svg{width:1rem}.home-page.page-shell{min-height:calc(100dvh - var(--space-3xl));transition:opacity var(--dur-short) var(--ease-in), transform var(--dur-short) var(--ease-in);grid-template-rows:minmax(0,1fr) auto;padding-block-start:0;padding-block-end:calc(var(--space-3xl) + var(--space-lg));display:grid}.home-page.is-leaving{pointer-events:none;opacity:0;transform:translateY(calc(0rem - var(--space-xs)))}.home-hero{min-height:0;padding-block:var(--space-xl) var(--space-2xl);border-block-end:var(--space-2xs) solid var(--color-ink);align-content:center;display:grid}.home-hero__copy{gap:clamp(var(--space-xl), 7vh, var(--space-3xl));min-width:0;display:grid}.home-hero h1{row-gap:var(--space-md);overflow-wrap:anywhere;min-width:0;max-width:none;font-size:var(--text-home-display);letter-spacing:-.055em;font-weight:700;line-height:.92;display:grid}.home-hero h1 span{width:fit-content;display:block}.home-hero h1 span:last-child{margin-inline-start:clamp(var(--space-lg), 12vw, var(--space-4xl))}.home-hero__support{gap:var(--space-lg);border-block-start:var(--rule-hair) solid var(--color-rule-strong);min-width:0;align-items:center;padding-block-start:var(--space-lg);display:grid}.home-hero__support>p{max-width:52ch;color:var(--color-neutral);font-size:var(--text-md)}.home-hero__support>p strong{color:var(--color-ink);font-weight:700}.home-hero__cta{min-height:calc(var(--space-2xl) - var(--space-xs));padding-inline:var(--space-lg);border-radius:var(--radius-md);font-size:var(--text-md)}.home-hero__cta svg{width:var(--text-md);height:var(--text-md)}.home-writing-proof{gap:var(--space-md);border-block-start:var(--rule-hair) solid var(--color-rule-strong);min-width:0;align-content:end;padding-block-start:var(--space-lg);display:grid}.home-writing-proof.home-writing-proof--compact{gap:var(--space-lg);border-block-start:0;align-content:center;padding-block-start:0}.home-writing-proof__intro{gap:var(--space-sm);display:grid}.home-writing-proof__intro h2{max-width:19ch;font-size:var(--text-xl);font-weight:700}.home-writing-proof__intro p{max-width:46ch;color:var(--color-neutral)}.home-progress-proof{gap:var(--space-xs) var(--space-md);padding-block:var(--space-sm);border-block:var(--rule-hair) solid var(--color-rule-strong);grid-template-columns:minmax(7rem,.55fr) minmax(0,1.45fr);align-items:end;display:grid}.home-progress-proof>span{color:var(--color-accent);font-family:var(--font-code);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;grid-column:1/-1}.home-progress-proof>strong{color:var(--color-ink);font-family:var(--font-display);font-size:clamp(var(--text-xl), 4vw, var(--text-3xl));font-variant-numeric:tabular-nums;letter-spacing:-.04em;line-height:1}.home-progress-proof>div{gap:var(--space-2xs);min-width:0;display:grid}.home-progress-proof p{color:var(--color-ink);line-height:1.4}.home-progress-proof small{color:var(--color-muted);font-size:var(--text-sm);line-height:1.4}.home-writing-proof dl{border-block-start:var(--rule-hair) solid var(--color-rule);margin:0;display:grid}.home-writing-proof dl>div{grid-template-columns:minmax(var(--space-3xl), .4fr) minmax(0, 1.6fr);gap:var(--space-md);padding-block:var(--space-sm);border-block-end:var(--rule-hair) solid var(--color-rule);display:grid}.home-writing-proof dt{color:var(--color-accent);font-family:var(--font-code);font-size:var(--text-sm)}.home-writing-proof dd{gap:var(--space-2xs);min-width:0;display:grid}.home-writing-proof dd strong{color:var(--color-ink);font-weight:600}.home-scroll-cue{z-index:var(--z-sticky);width:min(100%, var(--page-max));min-height:calc(var(--space-2xl) + var(--space-md));padding-block-start:var(--space-md);padding-block-end:max(var(--space-md), env(safe-area-inset-bottom));padding-inline:var(--page-gutter);cursor:pointer;border-block-start:var(--rule-hair) solid var(--color-rule-strong);background:var(--color-paper-2);color:var(--color-ink);font-family:var(--font-display);font-size:clamp(var(--text-md), 1.5vw, var(--text-lg));text-align:start;justify-content:flex-start;align-items:center;margin-inline:auto;font-weight:700;display:flex;position:fixed;inset-block-end:0;inset-inline:0;overflow:clip}.home-scroll-cue:after{height:var(--space-3xs);background:var(--color-accent);content:"";transform-origin:0;transition:transform var(--dur-long) linear;position:absolute;inset-block-end:0;inset-inline:0;transform:scaleX(0)}.home-scroll-cue__label{align-items:center;gap:var(--space-sm);white-space:nowrap;min-width:0;transition:opacity var(--dur-micro) var(--ease-in);display:inline-flex}.home-scroll-cue__icon{width:var(--text-md);height:var(--text-md);color:var(--color-accent);animation:home-scroll-cue-arrow 1.6s var(--ease-in-out) 4;transition:transform var(--dur-micro) var(--ease-out);flex:none}@keyframes home-scroll-cue-arrow{0%,to{opacity:.64;transform:translateY(calc(0rem - var(--space-2xs)))}50%{opacity:1;transform:translateY(var(--space-2xs))}}.home-scroll-cue[data-leaving=true]:after{transform:scaleX(1)}.home-scroll-cue[data-leaving=true] .home-scroll-cue__label{opacity:.64}.home-scroll-cue[data-leaving=true] .home-scroll-cue__icon,.home-scroll-cue:active .home-scroll-cue__icon{transform:translateY(var(--space-2xs));animation:none}.home-scroll-cue:disabled{cursor:progress;opacity:1}.home-scroll-cue:focus-visible{outline-offset:calc(0rem - var(--space-2xs))}::view-transition-old(root){animation:route-leave var(--dur-short) var(--ease-in) both}::view-transition-new(root){animation:route-enter var(--dur-long) var(--ease-out) both}@keyframes route-leave{to{opacity:0;transform:translateY(calc(0rem - var(--space-xs)))}}@keyframes route-enter{0%{opacity:0;transform:translateY(var(--space-sm))}}.practice-heading{justify-content:space-between;align-items:end;gap:var(--space-lg);padding-block:var(--space-lg) var(--space-xl);flex-wrap:wrap;display:flex}.practice-page.page-shell{padding-block-start:var(--space-sm)}.practice-page .practice-heading{padding-block:var(--space-md) var(--space-lg)}.practice-page .article-selector{padding-block:var(--space-sm) var(--space-lg)}.practice-page .article-context{padding-block-start:var(--space-lg)}.practice-heading h1{font-size:clamp(2.5rem, 6vw, var(--text-4xl));letter-spacing:-.03em;font-weight:700;line-height:1.08}.practice-heading p{color:var(--color-neutral)}.practice-heading>div:first-child{flex:30rem;min-width:0;max-width:100%}.practice-heading__actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.practice-heading__actions .quiet-action{padding-inline:var(--space-sm)}.practice-heading__actions .practice-heading-action{min-height:3rem;padding-inline:var(--space-md);border:var(--rule-hair) solid var(--color-accent);border-radius:var(--radius-sm);white-space:nowrap;font-weight:700}.practice-heading__actions .practice-heading-action--primary{background:var(--color-accent);color:var(--color-accent-ink)}.practice-heading__actions .practice-heading-action--secondary{color:var(--color-accent);background:0 0}.practice-heading p{overflow-wrap:anywhere}.article-filter-panel__toggle{justify-content:space-between;align-items:center;gap:var(--space-md);border-block:var(--rule-hair) solid var(--color-rule);width:100%;min-height:2.75rem;color:var(--color-ink);cursor:pointer;font-size:var(--text-sm);background:0 0;border-radius:0;font-weight:600;display:flex}.article-filter-panel:not(.is-open)>div{display:none}.article-filter-panel__toggle span:last-child{color:var(--color-muted);font-weight:400}.article-filter-panel.is-open .article-filter-panel__toggle{border-block-end-color:#0000}.article-filter-panel .article-selector{border-block-start:0}.article-selector{gap:var(--space-sm);padding-block:var(--space-md) var(--space-xl);border-block:var(--rule-hair) solid var(--color-rule);display:grid}.selector-row{gap:var(--space-xs);align-items:center;display:grid}.selector-row>span{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.selector-row>div{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.selector-row button{padding-inline:var(--space-sm);color:var(--color-neutral);font-size:var(--text-sm);background:0 0}.selector-row button.is-active{background:var(--color-accent-soft);color:var(--color-ink)}.selector-split{gap:var(--space-sm);display:grid}.article-context{justify-content:space-between;align-items:center;gap:var(--space-sm) var(--space-lg);padding-block:var(--space-xl) var(--space-sm);color:var(--color-neutral);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.article-context>div{align-items:center;gap:var(--space-xs) var(--space-md);flex-wrap:wrap;display:flex}.article-context svg{width:1rem;color:var(--color-accent)}.article-context>div:first-child span{color:var(--color-ink);font-weight:600}.article-select{gap:var(--space-2xs);max-width:28rem;color:var(--color-muted);font-size:var(--text-xs);margin-block-end:var(--space-sm);display:grid}.article-select select,.library-tools select,.search-field input{border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-sm);outline-offset:1px;background:var(--color-paper);min-height:2.75rem;color:var(--color-ink);outline:2px solid #0000}.article-select select,.library-tools select{padding-inline:var(--space-sm) var(--space-xl)}.typing-stage{gap:var(--space-md);min-width:0;padding-block:var(--space-lg) var(--space-xl);cursor:text;outline:none;display:grid;position:relative}.typing-stage--compact{padding-block-end:var(--space-lg)}.typing-input{opacity:0;pointer-events:none;width:1px;height:1px;padding:0;position:absolute;inset:0 auto auto 0}.typing-stage__topline{justify-content:space-between;align-items:start;gap:var(--space-sm);flex-wrap:wrap;display:flex}.typing-stats{gap:var(--space-sm) var(--space-xl);flex-wrap:wrap;flex:20rem;align-items:center;min-width:0;min-height:2.75rem;display:flex}.typing-stats div{align-items:baseline;gap:var(--space-xs);font-variant-numeric:tabular-nums;display:flex}.typing-stats span{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em}.typing-stats strong{font-family:var(--font-mono);font-size:var(--text-md);font-weight:600}.typing-copy-wrap{min-width:0;position:relative}.typing-text{overscroll-behavior:contain;min-height:13rem;max-height:19rem;padding-block:var(--space-md);color:var(--color-muted);font-family:var(--font-typing);font-size:var(--text-typing);font-variant:no-common-ligatures;letter-spacing:0;scrollbar-width:thin;white-space:pre-wrap;font-weight:400;line-height:1;display:block;position:relative;overflow-y:auto}.typing-stage--small .typing-text{font-size:clamp(1.4rem,2.25vw,1.8rem)}.typing-stage--large .typing-text{font-size:clamp(1.9rem,3.1vw,2.6rem)}.typing-stage--mono .typing-text{font-family:var(--font-typing);letter-spacing:0}.typing-stage--sans .typing-text{font-family:var(--font-body);letter-spacing:.005em}.typing-stage--compact .typing-text{min-height:9rem;max-height:11rem}.typing-character{position:relative}.typing-words{flex-wrap:wrap;align-content:flex-start;display:flex}.typing-word{white-space:pre;margin-block:.25em;line-height:1em;display:block}.typing-character.is-correct{color:var(--color-ink)}.typing-character.is-placeholder{color:var(--color-muted)}.typing-character.is-entered{color:var(--color-ink)}.typing-character.is-incorrect{border-radius:var(--radius-sm);background:var(--color-error-soft);color:var(--color-error);text-decoration:underline;text-decoration-thickness:var(--rule-hair)}.typing-caret{--caret-x:0px;--caret-y:0px;z-index:var(--z-base);pointer-events:none;width:.1em;min-width:2px;height:1.2em;transform:translate3d(var(--caret-x), calc(var(--caret-y) - .6em), 0);will-change:transform;position:absolute;inset-block-start:0;inset-inline-start:0}.typing-caret.is-ready.is-smooth{transition:transform .1s var(--ease-in-out)}.typing-caret:after{border-radius:var(--radius-pill);background:var(--color-accent);content:"";animation:1s linear infinite caret-blink-smooth;position:absolute;inset:0}.typing-caret:not(.is-smooth):after{animation-name:caret-blink-hard;animation-timing-function:steps(2,end)}.typing-end{min-height:1em;display:inline-block}@keyframes caret-blink-smooth{0%,to{opacity:0}50%{opacity:1}}@keyframes caret-blink-hard{0%,50%{opacity:1}51%,to{opacity:0}}.pause-overlay{place-content:center;justify-items:center;gap:var(--space-xs);width:100%;padding:var(--space-lg);border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-md);background:var(--color-paper-2);color:var(--color-ink);text-align:center;cursor:pointer;display:grid;position:absolute;inset:0}.pause-overlay svg{width:1.4rem;color:var(--color-accent)}.pause-overlay span{color:var(--color-neutral);white-space:normal}.typing-progress,.goal-track{background:var(--color-rule);height:2px;overflow:clip}.typing-progress span,.goal-track span{transform-origin:0;background:var(--color-accent);width:100%;height:100%;transition:transform var(--dur-micro) var(--ease-out);display:block;transform:scaleX(0)}.shortcut-hints{gap:var(--space-sm) var(--space-lg);color:var(--color-muted);font-size:var(--text-xs);flex-wrap:wrap;display:flex}kbd,code{font-family:var(--font-code)}.shortcut-hints kbd{padding:var(--space-2xs) var(--space-xs);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-sm);color:var(--color-neutral)}.typing-persistence-note{align-items:center;gap:var(--space-2xs);color:var(--color-accent);display:inline-flex}.typing-persistence-note svg{width:.9rem;height:.9rem}.empty-filter,.chart-empty{gap:var(--space-xs);border-block:var(--rule-hair) solid var(--color-rule);min-height:12rem;color:var(--color-neutral);text-align:center;place-content:center;display:grid}.empty-filter strong{color:var(--color-ink)}.results-view{gap:var(--space-3xl);padding-block-start:var(--space-xl);display:grid}.result-hero{gap:var(--space-xl);display:grid}.result-score{font-variant-numeric:tabular-nums;width:fit-content;display:grid}.result-score span,.result-score small{color:var(--color-muted);font-family:var(--font-mono)}.result-score strong{font-family:var(--font-display);letter-spacing:-.08em;font-size:clamp(5rem,18vw,10rem);font-weight:700;line-height:.9}.result-metrics{border-block:var(--rule-hair) solid var(--color-rule);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.result-metrics div{gap:var(--space-2xs);padding-block:var(--space-md);font-variant-numeric:tabular-nums;display:grid}.result-metrics dt{color:var(--color-muted);font-size:var(--text-sm)}.result-metrics dd{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:600}.chart{width:100%;height:18rem}.chart--compact{height:12rem}.personal-best{justify-content:space-between;align-items:center;gap:var(--space-lg);padding:var(--space-lg);border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-md);background:var(--color-paper-2);display:flex}.personal-best div{gap:var(--space-2xs);display:grid}.personal-best span{color:var(--color-neutral);font-size:var(--text-sm)}.personal-best svg{color:var(--color-accent)}.result-actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.result-section{gap:var(--space-xl);border-block-start:var(--rule-hair) solid var(--color-rule-strong);scroll-margin-top:var(--space-3xl);padding-block-start:var(--space-2xl);display:grid}.result-section__heading{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);display:flex}.result-section__heading h2{font-size:var(--text-2xl)}.result-section__heading p{max-width:56ch;color:var(--color-neutral)}.result-section__heading>svg{color:var(--color-accent)}.perfect-run{align-items:center;gap:var(--space-md);padding-block:var(--space-lg);border-block:var(--rule-hair) solid var(--color-rule);display:flex}.perfect-run svg{color:var(--color-success)}.perfect-run div{display:grid}.perfect-run span{color:var(--color-neutral)}.mistake-layout{gap:var(--space-2xl);display:grid}.mistake-words{border-block-start:var(--rule-hair) solid var(--color-rule);align-content:start;display:grid}.mistake-row{align-items:baseline;gap:var(--space-sm);padding-block:var(--space-sm);border-block-end:var(--rule-hair) solid var(--color-rule);font-family:var(--font-mono);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;display:grid}.mistake-row del{color:var(--color-error)}.mistake-row small{color:var(--color-muted)}.mistake-rankings{gap:var(--space-xl);display:grid}.mistake-rankings h3{align-items:center;gap:var(--space-xs);font-family:var(--font-body);font-size:var(--text-base);letter-spacing:0;margin-block-end:var(--space-sm);display:flex}.mistake-rankings h3 svg{width:1rem;color:var(--color-accent)}.mistake-rankings p{border-block-end:var(--rule-hair) solid var(--color-rule);min-height:2.5rem;color:var(--color-neutral);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;display:flex}.mistake-rankings kbd{color:var(--color-ink)}.learning-vocabulary{display:grid}.learning-panel h3{font-family:var(--font-body);font-size:var(--text-base);letter-spacing:0;margin-block-end:var(--space-sm)}.learning-vocabulary article{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);padding-block:var(--space-lg);border-block-start:var(--rule-hair) solid var(--color-rule);display:flex}.learning-vocabulary article>div{gap:var(--space-xs);display:grid}.learning-vocabulary strong{font-family:var(--font-display);font-size:var(--text-lg)}.learning-vocabulary p,.learning-vocabulary blockquote,.sentence-pattern p{color:var(--color-neutral)}.learning-vocabulary blockquote,.sentence-pattern blockquote{max-width:66ch}.learning-columns{gap:var(--space-2xl);display:grid}.learning-columns ul{gap:var(--space-sm);margin:0;padding:0;list-style:none;display:grid}.learning-columns li{border-block-end:var(--rule-hair) solid var(--color-rule);font-family:var(--font-mono);padding-block-end:var(--space-sm)}.sentence-pattern{gap:var(--space-sm);display:grid}.sentence-pattern blockquote{font-size:var(--text-md)}.sentence-pattern code{width:fit-content;max-width:100%;padding:var(--space-sm);overflow-wrap:anywhere;border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper-2);color:var(--color-accent);white-space:normal}.library-tools{gap:var(--space-md);padding-block-end:var(--space-xl);display:grid}.library-tools label,.search-field{gap:var(--space-2xs);color:var(--color-muted);font-size:var(--text-xs);display:grid}.search-field div{position:relative}.search-field svg{width:1rem;color:var(--color-muted);position:absolute;inset-block-start:50%;inset-inline-start:var(--space-sm);transform:translateY(-50%)}.search-field input{width:100%;padding-inline:var(--space-xl) var(--space-sm)}.search-field input::placeholder{color:var(--color-muted)}.search-field input:focus-visible,.article-select select:focus-visible,.library-tools select:focus-visible{outline-color:var(--color-focus)}.library-count{justify-content:space-between;gap:var(--space-sm);padding-block:var(--space-sm);border-block:var(--rule-hair) solid var(--color-rule-strong);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.article-list{display:grid}.article-card{gap:var(--space-lg);padding-block:var(--space-xl);border-block-end:var(--rule-hair) solid var(--color-rule);display:grid}.article-card__main{gap:var(--space-sm);min-width:0;display:grid}.article-card__meta{gap:var(--space-xs) var(--space-md);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.article-card h2{font-size:var(--text-xl)}.article-card__main>p{max-width:64ch;color:var(--color-neutral)}.article-card__stats{gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;display:grid}.article-card__stats div{gap:var(--space-2xs);display:grid}.article-card__stats dt{color:var(--color-muted);font-size:var(--text-xs)}.article-card__stats dd{font-size:var(--text-sm);font-variant-numeric:tabular-nums}.article-card__action{width:fit-content;color:var(--color-ink);place-self:center start;font-weight:600}.progress-page.page-shell,.words-page.page-shell,.library-page.page-shell,.vocabulary-page.page-shell{padding-block-start:var(--space-xl)}.progress-page .page-heading,.words-page .page-heading,.library-page .page-heading,.vocabulary-page .page-heading{gap:var(--space-xs);padding-block:var(--space-sm) var(--space-xl)}.words-page .page-heading{padding-block-end:var(--space-lg)}.progress-wpm-note{color:var(--color-muted);font-size:var(--text-sm);margin-block-start:var(--space-xs);display:block}.progress-wpm-note abbr{color:var(--color-ink);font-weight:600;text-decoration:none}.progress-dashboard{gap:var(--space-2xl);display:grid}.progress-view-switch{width:fit-content}.progress-view-switch small{color:var(--color-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.progress-summary{gap:var(--space-lg);padding-block:var(--space-lg);border-block:var(--rule-hair) solid var(--color-rule-strong);display:grid}.progress-primary{display:grid}.progress-primary span,.progress-primary small,.progress-summary dt{color:var(--color-muted);font-size:var(--text-sm)}.progress-primary strong{font-family:var(--font-display);font-size:clamp(var(--text-3xl), 10vw, 5.5rem);letter-spacing:-.08em;line-height:.95}.progress-summary dl{gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.progress-summary dl div{display:grid}.progress-summary dd{font-family:var(--font-mono);font-size:var(--text-md);font-variant-numeric:tabular-nums}.progress-chart-section,.goal-section{gap:var(--space-lg);display:grid}.section-title-row,.goal-section{align-items:start}.section-title-row{justify-content:space-between;gap:var(--space-lg);flex-wrap:wrap;display:flex}.section-title-row h2,.goal-section h2{font-size:var(--text-xl);font-weight:700}.section-title-row p,.goal-section p{color:var(--color-neutral)}.progress-chart{height:18rem}.goal-section{border-block-start:var(--rule-hair) solid var(--color-rule-strong);padding-block-start:var(--space-2xl)}.goal-control{gap:var(--space-lg);display:grid}.goal-control>p{align-items:baseline;gap:var(--space-md);font-family:var(--font-mono);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.goal-control>p strong{color:var(--color-ink);font-size:var(--text-lg)}.goal-control>p small{color:var(--color-accent);margin-inline-start:auto}.progress-detail-section{gap:var(--space-lg);border-block-start:var(--rule-hair) solid var(--color-rule-strong);padding-block-start:var(--space-xl);display:grid}.progress-draft-list,.progress-session-list{border-block-start:var(--rule-hair) solid var(--color-rule);display:grid}.progress-draft-row,.progress-session-row{gap:var(--space-md);min-width:0;padding-block:var(--space-md);border-block-end:var(--rule-hair) solid var(--color-rule);display:grid}.progress-draft-row>div:first-child,.progress-session-row>div:first-child,.word-category-card>div:first-child{min-width:0}.progress-draft-row h3,.progress-session-row h3,.word-category-card h3{font-size:var(--text-md)}.progress-draft-row>div:first-child>span,.progress-session-row>div:first-child>span,.word-category-card>div:first-child>span{color:var(--color-muted);font-size:var(--text-xs)}.progress-draft-metrics{gap:var(--space-xs) var(--space-lg);color:var(--color-neutral);font-family:var(--font-mono);font-size:var(--text-sm);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.progress-draft-track,.progress-session-track,.word-accuracy-track{height:var(--space-2xs);background:var(--color-paper-3);overflow:hidden}.progress-draft-track span,.progress-session-track span,.word-accuracy-track span{transform-origin:0;background:var(--color-accent);width:100%;height:100%;display:block}.progress-session-completion{gap:var(--space-xs);min-width:0;display:grid}.progress-session-completion p{color:var(--color-muted);font-family:var(--font-code);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.progress-session-row dl{gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.progress-session-row dl div,.word-category-card dl div{gap:var(--space-3xs);display:grid}.progress-session-row dt,.word-category-card dt{color:var(--color-muted);font-size:var(--text-xs)}.progress-session-row dd,.word-category-card dd{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.word-category-grid{gap:var(--space-md);display:grid}.word-category-card{gap:var(--space-lg);padding:var(--space-lg);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-2);display:grid}.word-category-card dl{gap:var(--space-sm);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.vocabulary-empty{gap:var(--space-md);max-width:34rem;padding-block:var(--space-3xl);justify-items:start;display:grid}.vocabulary-empty>svg{width:2rem;height:2rem;color:var(--color-accent)}.vocabulary-empty p{color:var(--color-neutral)}.vocabulary-empty__actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.vocabulary-manager{gap:var(--space-xl);display:grid}.mistake-practice-workspace{min-width:0;scroll-margin-block-start:calc(4.5rem + var(--space-lg));display:grid}.mistake-drill-entry{align-items:end;gap:var(--space-lg);padding-block:var(--space-lg);border-block:var(--rule-hair) solid var(--color-rule-strong);display:grid}.mistake-drill-entry__copy{gap:var(--space-xs);max-width:62ch;display:grid}.mistake-drill-entry h2{font-size:var(--text-xl);font-weight:700}.mistake-drill-entry p{color:var(--color-neutral)}.mistake-drill-entry__copy>span{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.mistake-drill-workspace{border-block-end:var(--rule-hair) solid var(--color-rule-strong);min-width:0;padding-block-end:var(--space-xl)}.mistake-drill-workspace .word-practice__controls{border-block-start:0}.mistake-drill-workspace .word-drill{scroll-margin-block-start:calc(4.5rem + var(--space-md))}.vocabulary-list{border-block-start:var(--rule-hair) solid var(--color-rule-strong);display:grid}.vocabulary-list article{gap:var(--space-lg);padding-block:var(--space-xl);border-block-end:var(--rule-hair) solid var(--color-rule);display:grid}.vocabulary-list article.is-learned{color:var(--color-neutral)}.vocabulary-word{justify-content:space-between;align-items:baseline;gap:var(--space-md);display:flex}.vocabulary-word strong{font-family:var(--font-display);font-size:var(--text-xl)}.vocabulary-word span,.vocabulary-source span{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs)}.vocabulary-status{justify-content:flex-end;gap:var(--space-xs);flex-wrap:wrap;display:flex}.vocabulary-status .is-mistake{color:var(--color-error)}.vocabulary-meaning-zh{color:var(--color-ink);font-size:var(--text-md);margin-block-end:var(--space-2xs);font-weight:600}.vocabulary-list blockquote{color:var(--color-neutral);margin-block-start:var(--space-sm)}.vocabulary-source{align-content:start;display:grid}.vocabulary-actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.word-practice{gap:var(--space-xl);min-width:0;display:grid}.words-page .word-practice{gap:var(--space-sm)}.word-practice__controls{gap:var(--space-md);min-width:0;padding-block:var(--space-md);border-block:var(--rule-hair) solid var(--color-rule-strong);align-items:end;display:grid}.words-page .word-practice__controls{gap:var(--space-sm);padding-block:var(--space-sm)}.word-practice__control{gap:var(--space-xs);min-width:0;display:grid}.words-page .word-practice__control{gap:var(--space-2xs)}.word-practice__control>span,.word-drill__target>span:not(.typing-text),.word-drill__prompt>span{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.word-practice__mistake-context{justify-content:space-between;align-items:center;gap:var(--space-md);padding-block:var(--space-md);border-block:var(--rule-hair) solid var(--color-rule-strong);flex-wrap:wrap;display:flex}.word-practice__mistake-context>div:first-child{gap:var(--space-2xs);display:grid}.word-practice__mistake-context span{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.word-practice__mistake-context strong{font-size:var(--text-md)}.word-practice__mistake-actions{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.word-practice__control select{width:100%;min-width:0;min-height:2.75rem;padding-inline:var(--space-sm) var(--space-xl);border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-sm);outline-offset:1px;background:var(--color-paper);color:var(--color-ink);outline:2px solid #0000}.words-page .word-practice__control select{min-height:2.5rem}.word-practice__control select:focus-visible{outline-color:var(--color-focus)}.word-practice__control select:active{background:var(--color-paper-2)}.word-practice__control select:disabled{cursor:not-allowed;opacity:.55}.word-practice__shuffle{margin-block-start:var(--space-sm)}.word-drill{gap:var(--space-lg);min-width:0;padding-block:var(--space-lg) var(--space-xl);cursor:text;display:grid;position:relative}.words-page .word-drill{gap:var(--space-sm);padding-block:var(--space-sm) var(--space-lg)}.word-drill__topline{justify-content:space-between;gap:var(--space-sm) var(--space-lg);color:var(--color-muted);font-family:var(--font-code);font-size:var(--text-xs);font-variant-numeric:tabular-nums;letter-spacing:.04em;text-transform:uppercase;flex-wrap:wrap;display:flex}.word-drill__topline div{gap:var(--space-md);flex-wrap:wrap;display:flex}.word-drill__topline .word-drill__pass{color:var(--color-accent);font-weight:700}.word-drill__content{gap:var(--space-lg);min-width:0;display:grid}.words-page .word-drill__content{gap:var(--space-sm)}.word-drill__content.is-leaving{pointer-events:none;animation:word-step-out var(--dur-micro) var(--ease-in) forwards}.word-drill__content.is-entering{animation:word-step-in var(--dur-short) var(--ease-out) both}.word-drill__content.is-instant{animation:none}@keyframes word-step-out{to{opacity:0;transform:translateY(calc(var(--space-2xs) * -1))}}@keyframes word-step-in{0%{opacity:0;transform:translateY(var(--space-2xs))}}@keyframes word-step-out-reduced{to{opacity:0}}@keyframes word-step-in-reduced{0%{opacity:0}}.word-drill__prompt{gap:var(--space-sm);max-width:56rem;padding-block-end:var(--space-lg);display:grid}.words-page .word-drill__prompt{gap:var(--space-xs);padding-block-end:var(--space-md)}.word-drill__prompt h2{font-family:var(--font-body);font-size:clamp(2rem, 5vw, var(--text-2xl));letter-spacing:-.03em;font-weight:600}.word-drill__target{gap:var(--space-sm);min-width:0;padding-block:var(--space-lg);border-block-end:var(--rule-hair) solid var(--color-rule);display:grid}.words-page .word-drill__target{gap:var(--space-xs);padding-block:var(--space-md)}.word-drill__target .typing-text{min-width:0;min-height:4.75rem;max-height:none;padding-block:var(--space-sm);font-size:clamp(1.7rem,9vw,4.4rem);line-height:1.05;overflow:visible}.words-page .word-drill__target .typing-text{min-height:4rem;padding-block:var(--space-xs)}.word-drill.typing-stage--small .typing-text{font-size:clamp(1.55rem,8.2vw,3.8rem)}.word-drill.typing-stage--large .typing-text{font-size:clamp(1.85rem,9.5vw,5rem)}.word-drill__target .typing-word{margin-block:0}.word-drill__content>blockquote{border-inline-start:2px solid var(--color-accent);max-width:64ch;color:var(--color-neutral);padding-inline-start:var(--space-md)}.word-drill__context-recall{gap:var(--space-xl);min-width:0;padding-block:var(--space-md);display:grid}.word-drill__context-heading{gap:var(--space-xs);max-width:48rem;display:grid}.word-drill__context-meta{justify-content:space-between;align-items:baseline;gap:var(--space-xs) var(--space-md);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;display:flex}.word-drill__context-meta small{color:var(--color-neutral);font:inherit;font-variant-numeric:tabular-nums;letter-spacing:0;text-transform:none}.word-drill__context-heading h2{font-family:var(--font-body);font-size:clamp(var(--text-lg), 4vw, var(--text-xl));letter-spacing:-.025em;font-weight:700;line-height:1.15}.word-drill__context-sentence{max-width:54ch;padding-block:var(--space-lg);color:var(--color-ink);font-size:clamp(1.35rem, 3.5vw, var(--text-lg));line-height:1.5}.word-drill__context-sentence .typing-text.is-inline{min-height:0;max-height:none;margin-inline:var(--space-2xs);font-size:1em;line-height:inherit;vertical-align:baseline;white-space:nowrap;padding-block:0;display:inline-block;overflow:visible}.word-drill__context-sentence .typing-words{flex-wrap:nowrap;align-items:baseline;display:inline-flex}.word-drill__context-sentence .typing-word{line-height:inherit;margin-block:0;display:inline-flex}.word-drill__context-sentence .typing-caret{height:1.25em}.word-drill__context-blank{color:var(--color-accent);font-family:var(--font-code);letter-spacing:.04em;white-space:nowrap;font-weight:700}.word-drill__context-feedback{gap:var(--space-sm);max-width:54ch;padding:var(--space-sm) 0 var(--space-sm) var(--space-md);border-inline-start:2px solid var(--color-error);display:grid}.word-drill__context-feedback>div{gap:var(--space-2xs);min-width:0;display:grid}.word-drill__context-feedback span{color:var(--color-error);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.word-drill__context-feedback strong{overflow-wrap:anywhere;min-width:0;color:var(--color-ink);font-size:var(--text-md);line-height:1.35}.word-drill__footer{justify-content:space-between;align-items:center;gap:var(--space-md) var(--space-xl);border-block-start:var(--rule-hair) solid var(--color-rule);flex-wrap:wrap;padding-block-start:var(--space-lg);display:flex}.word-drill__footer>p{color:var(--color-neutral);font-size:var(--text-sm);flex:24rem}.word-drill__footer>p.is-error{color:var(--color-error)}.word-drill__footer>p.is-success{color:var(--color-success)}.word-drill__footer>div{gap:var(--space-xs);flex-wrap:wrap;display:flex}.word-practice__empty,.word-practice__complete{gap:var(--space-md);max-width:48rem;padding-block:var(--space-3xl);justify-items:start;display:grid}.word-practice__empty>svg{width:2rem;height:2rem;color:var(--color-accent)}.word-practice__empty p,.word-practice__complete>span{color:var(--color-neutral)}.word-practice__empty p{max-width:58ch}.word-practice__complete h2,.word-practice__empty h2{font-size:var(--text-2xl)}.word-practice__complete dl{width:100%;padding-block:var(--space-lg);border-block:var(--rule-hair) solid var(--color-rule);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.word-practice__complete dl div{gap:var(--space-2xs);display:grid}.word-practice__complete dt{color:var(--color-muted);font-size:var(--text-xs)}.word-practice__complete dd{font-family:var(--font-code);font-size:var(--text-lg);font-variant-numeric:tabular-nums}.word-practice__complete-actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}@media (max-width:39.999rem){.home-page.page-shell{padding-block-start:0}.home-hero{padding-block:var(--space-lg) var(--space-xl)}.home-hero__copy{gap:var(--space-xl)}.home-hero h1 span:last-child{margin-inline-start:var(--space-md)}.home-hero__support{gap:var(--space-md);padding-block-start:var(--space-md)}.home-hero__support>p{font-size:var(--text-base)}.home-writing-proof{gap:var(--space-sm);padding-block-start:var(--space-md)}.home-writing-proof__intro{gap:var(--space-xs)}.home-writing-proof__intro h2{max-width:24ch;font-size:var(--text-lg)}.home-writing-proof__intro p{display:none}.home-progress-proof{padding-block:var(--space-xs);grid-template-columns:minmax(5.25rem,auto) minmax(0,1fr)}.home-progress-proof>strong{font-size:var(--text-xl)}.home-progress-proof p{font-size:var(--text-sm)}.home-progress-proof small{display:none}.home-writing-proof dl{grid-template-columns:repeat(3,minmax(0,1fr))}.home-writing-proof dl>div{padding:var(--space-xs);border-inline-end:var(--rule-hair) solid var(--color-rule);display:block}.home-writing-proof dl>div:last-child{border-inline-end:0}.home-writing-proof dt{margin-block-end:var(--space-2xs);font-size:.7rem}.home-writing-proof dd{font-size:var(--text-sm);line-height:1.35}.home-writing-proof .text-link{padding-block:var(--space-2xs);font-size:var(--text-sm)}.words-page.page-shell{padding-block-start:var(--space-lg)}.words-page .page-heading{gap:var(--space-xs);padding-block:var(--space-md) var(--space-lg)}.words-page .page-heading h1{font-size:2.25rem}.word-practice{gap:var(--space-lg)}.word-practice__controls{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr))}.words-page .word-practice__control select{min-height:2.75rem}.word-practice__shuffle{grid-column:1/-1;justify-self:start;margin-block-start:0}.word-drill{gap:var(--space-md);padding-block-start:var(--space-md)}}@media (max-width:21.999rem){.home-writing-proof .text-link{display:none}}@media (min-width:40rem) and (max-width:59.999rem){.home-hero{padding-block:var(--space-xl) var(--space-2xl)}.home-writing-proof{gap:var(--space-sm);padding-block-start:var(--space-md)}.home-writing-proof__intro{gap:var(--space-xs)}.home-writing-proof__intro h2{max-width:24ch;font-size:var(--text-lg)}.home-writing-proof__intro p,.home-progress-proof small{display:none}.home-progress-proof{padding-block:var(--space-xs);grid-template-columns:minmax(8rem,auto) minmax(0,1fr)}.home-progress-proof>strong{font-size:var(--text-xl)}.home-writing-proof dl{grid-template-columns:repeat(3,minmax(0,1fr))}.home-writing-proof dl>div{padding:var(--space-xs) var(--space-sm);border-inline-end:var(--rule-hair) solid var(--color-rule);display:block}.home-writing-proof dl>div:last-child{border-inline-end:0}.home-writing-proof dt{margin-block-end:var(--space-2xs)}}.about-page.page-shell{padding-block-start:0;padding-block-end:var(--space-4xl)}.about-marquee{min-height:clamp(15rem,34dvh,22rem);padding-block:var(--space-md) var(--space-lg);border-block-end:var(--space-2xs) solid var(--color-ink);align-content:end;display:grid}.about-marquee h1{gap:var(--space-md);min-width:0;font-family:var(--font-display);letter-spacing:-.045em;font-style:normal;font-weight:700;line-height:.98;display:grid}.about-marquee__title{width:fit-content;color:var(--color-accent);font-family:var(--font-body);font-size:var(--text-md);letter-spacing:-.02em;font-weight:600;line-height:1.2}.about-marquee__statement{overflow-wrap:anywhere;min-width:0;max-width:16ch;font-size:var(--text-display)}.about-intro{gap:var(--space-xl);min-width:0;padding-block:var(--space-xl);border-block-end:var(--rule-hair) solid var(--color-rule-strong);display:grid}.about-intro__copy{align-content:start;gap:var(--space-xl);max-width:62ch;color:var(--color-neutral);font-size:var(--text-md);display:grid}.about-intro__copy p{line-height:1.68}.about-intro__copy .about-intro__lede{color:var(--color-ink);font-size:var(--text-lg);line-height:1.45}.about-visual{min-width:0;padding:var(--space-md);border-block:var(--rule-hair) solid var(--color-rule);background:var(--color-paper-2);align-self:start}.about-visual__svg{width:100%;height:auto;color:var(--color-ink);display:block}.about-visual__page{fill:var(--color-paper);stroke:var(--color-rule-strong);stroke-width:2px}.about-visual__fold{fill:none;stroke:var(--color-rule-strong);stroke-width:2px}.about-visual__prose path{fill:none;stroke:var(--color-ink-2);stroke-linecap:round;stroke-width:9px}.about-visual__caret{fill:none;stroke:var(--color-accent);stroke-linecap:round;stroke-width:9px}.about-visual__thread{fill:none;stroke:var(--color-accent);stroke-linecap:round;stroke-width:3px}.about-visual__keys rect{fill:var(--color-paper-3);stroke:var(--color-rule-strong);stroke-width:2px}.about-visual__marks circle{fill:var(--color-ink-2)}.about-visual__marks path{fill:none;stroke:var(--color-ink-2);stroke-linecap:round;stroke-width:5px}.about-visual__page,.about-visual__fold,.about-visual__prose path,.about-visual__caret,.about-visual__thread,.about-visual__keys rect,.about-visual__marks path{vector-effect:non-scaling-stroke}.about-thesis{max-width:28ch;padding-block:var(--space-3xl);color:var(--color-ink);font-family:var(--font-display);font-size:clamp(var(--text-xl), 4.4vw, var(--text-3xl));letter-spacing:-.035em;line-height:1.08}.about-story{gap:var(--space-xl);border-block-start:var(--rule-hair) solid var(--color-rule-strong);padding-block-start:var(--space-2xl);display:grid}.about-story__heading{padding-block:var(--space-xl) var(--space-md)}.about-story__heading h2{max-width:18ch;font-size:var(--text-2xl);letter-spacing:-.035em;font-weight:700;line-height:1.1}.about-story__body{gap:var(--space-xl);max-width:65ch;color:var(--color-neutral);font-size:var(--text-md);display:grid}.about-story__body p{line-height:1.68}.about-story__body .about-story__closing{border-block-start:var(--rule-hair) solid var(--color-rule);color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.025em;padding-block-start:var(--space-xl);line-height:1.2}.about-story .text-link{white-space:nowrap;width:fit-content}.legal-page{padding-block-end:var(--space-4xl)}.legal-prose{gap:var(--space-2xl);max-width:68ch;color:var(--color-neutral);display:grid}.legal-prose section{gap:var(--space-sm);display:grid}.legal-prose h2{color:var(--color-ink);font-size:var(--text-lg)}.legal-prose a{color:var(--color-ink);border-block-end:var(--rule-hair) solid var(--color-rule-strong)}.site-footer{gap:var(--space-2xl);width:min(100%, var(--page-max));padding:var(--space-3xl) var(--page-gutter) var(--space-xl);border-block-start:var(--rule-hair) solid var(--color-rule-strong);margin-inline:auto;display:grid}.site-footer__statement{max-width:28ch;font-family:var(--font-display);font-size:clamp(2rem, 6vw, var(--text-3xl));letter-spacing:-.04em;font-weight:700;line-height:1.06}.site-footer__meta{justify-content:space-between;gap:var(--space-md);border-block-start:var(--rule-hair) solid var(--color-rule);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);flex-wrap:wrap;padding-block-start:var(--space-sm);display:flex}.site-footer__meta div{gap:var(--space-md);flex-wrap:wrap;display:flex}.practice-passage{border-block:var(--rule-hair) solid var(--color-rule-strong)}.practice-passage__summary{gap:var(--space-md);padding-block:var(--space-md);align-items:center;display:grid}.practice-passage__current{gap:var(--space-xs);min-width:0;display:grid}.practice-passage__label,.passage-chooser__heading,.passage-chooser__select>span{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.practice-passage__title{align-items:center;gap:var(--space-xs);min-width:0;display:flex}.practice-passage__title svg{width:1rem;color:var(--color-accent);flex:none}.practice-passage__title strong{overflow-wrap:anywhere;min-width:0;font-size:var(--text-md);line-height:1.25}.practice-passage__meta{gap:var(--space-2xs) var(--space-sm);color:var(--color-neutral);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.practice-passage__meta span+span:before{color:var(--color-rule-strong);content:"/";margin-inline-end:var(--space-sm)}.passage-chooser__toggle{width:fit-content;padding-inline:var(--space-sm);border:var(--rule-hair) solid var(--color-accent);background:var(--color-accent);color:var(--color-accent-ink);justify-self:start;font-weight:700}.passage-chooser__toggle svg{color:currentColor;transition:transform var(--dur-micro) var(--ease-in-out)}.passage-chooser__toggle[aria-expanded=true] svg{transform:rotate(180deg)}.passage-chooser{gap:var(--space-md);padding-block:var(--space-sm);border-block-start:var(--rule-hair) solid var(--color-rule);display:grid}.passage-chooser .article-selector{gap:var(--space-2xs);border:0;padding:0}.passage-chooser .selector-row{gap:var(--space-2xs)}.passage-chooser .selector-row button{min-height:2.25rem;padding-inline:var(--space-xs)}.passage-chooser .selector-split{gap:var(--space-xs)}.passage-chooser__picker{gap:var(--space-xs);border-block-start:var(--rule-hair) solid var(--color-rule);padding-block-start:var(--space-sm);display:grid}.passage-chooser__heading{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.passage-chooser__heading span:last-child{color:var(--color-neutral);letter-spacing:0;text-transform:none}.passage-chooser__select.article-select{width:100%;max-width:none;margin:0}.passage-chooser__select select{width:100%}.passage-chooser__empty{max-width:46ch;color:var(--color-neutral);font-size:var(--text-sm)}.custom-practice-page.page-shell{gap:var(--space-xl);padding-block-start:var(--space-xl);display:grid}.custom-practice-heading{gap:var(--space-md);padding-block:var(--space-sm) var(--space-lg);align-items:end;display:grid}.custom-practice-heading>div{gap:var(--space-xs);display:grid}.custom-practice-heading span,.custom-practice-section-heading span,.custom-practice-ready>div>span,.custom-passage-row>div:first-child>span,.practice-missing-passage>span{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.custom-practice-heading h1{font-size:clamp(2.5rem, 6vw, var(--text-4xl));font-weight:700}.custom-practice-heading>p{max-width:58ch;color:var(--color-neutral);font-size:var(--text-md)}.custom-practice-loading{min-height:18rem;padding-block:var(--space-2xl);border-block:var(--rule-hair) solid var(--color-rule-strong);color:var(--color-muted)}.custom-practice-preview{border-block:var(--rule-hair) solid var(--color-rule-strong);display:grid}.custom-practice-preview>div{gap:var(--space-xs);padding-block:var(--space-lg);border-block-end:var(--rule-hair) solid var(--color-rule);display:grid}.custom-practice-preview>div:last-child{border-block-end:0}.custom-practice-preview span{color:var(--color-accent);font-family:var(--font-code);font-size:var(--text-xs)}.custom-practice-preview strong{font-family:var(--font-display);font-size:var(--text-md)}.custom-practice-preview p{max-width:36ch;color:var(--color-neutral)}.custom-practice-workbench{border-block:var(--rule-hair) solid var(--color-rule-strong);display:grid}.custom-practice-editor,.custom-practice-ready{align-content:start;gap:var(--space-md);min-width:0;padding-block:var(--space-lg);display:grid}.custom-practice-ready{border-block-start:var(--rule-hair) solid var(--color-rule)}.custom-practice-section-heading{justify-content:space-between;align-items:end;gap:var(--space-sm);flex-wrap:wrap;display:flex}.custom-practice-section-heading>div,.custom-practice-ready>div:first-child{gap:var(--space-xs);display:grid}.custom-practice-section-heading h2,.custom-practice-ready h2{font-size:clamp(var(--text-lg), 4vw, var(--text-xl))}.custom-file-action{align-items:center;gap:var(--space-xs);min-height:2.75rem;padding-inline:var(--space-sm);cursor:pointer;border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-sm);color:var(--color-ink);font-size:var(--text-sm);transition:background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);font-weight:600;display:inline-flex}.custom-file-action svg{width:1rem}.custom-file-action:active{transform:translateY(1px)}.custom-field{gap:var(--space-xs);display:grid}.custom-field>span{justify-content:space-between;gap:var(--space-sm);color:var(--color-ink);font-size:var(--text-sm);font-weight:600;display:flex}.custom-field>span small{color:var(--color-muted);font-weight:400}.custom-field input,.custom-field textarea{border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-sm);width:100%;color:var(--color-ink);transition:border-color var(--dur-short) var(--ease-out), background-color var(--dur-short) var(--ease-out);background:0 0;outline:0}.custom-field input{min-height:3.25rem;padding-inline:var(--space-md)}.custom-field textarea{resize:vertical;min-height:18rem;padding:var(--space-md);font-family:var(--font-body);line-height:1.65}.custom-field input:focus,.custom-field textarea:focus{border-color:var(--color-accent);background:var(--color-paper-2)}.custom-field input:focus-visible,.custom-field textarea:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.custom-file-action:has(+.visually-hidden:focus-visible){outline:2px solid var(--color-focus);outline-offset:2px}.custom-field textarea[aria-invalid=true]:not(:placeholder-shown){border-color:var(--color-error)}.custom-field-help,.custom-form-error{max-width:68ch;font-size:var(--text-sm)}.custom-field-help{color:var(--color-muted)}.custom-form-error{color:var(--color-error);min-height:1.5em}.custom-practice-ready dl{border-block-start:var(--rule-hair) solid var(--color-rule);display:grid}.custom-practice-ready dl>div{justify-content:space-between;gap:var(--space-lg);padding-block:var(--space-sm);border-block-end:var(--rule-hair) solid var(--color-rule);display:flex}.custom-practice-ready dt{color:var(--color-muted);font-size:var(--text-sm)}.custom-practice-ready dd{text-align:end;font-family:var(--font-mono);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.custom-readiness{background:var(--color-rule);height:2px;overflow:hidden}.custom-readiness span{transform-origin:0;background:var(--color-accent);width:100%;height:100%;transition:transform var(--dur-short) var(--ease-out);display:block}.custom-practice-note{gap:var(--space-sm);color:var(--color-neutral);grid-template-columns:auto minmax(0,1fr);display:grid}.custom-practice-note svg{width:1.1rem;color:var(--color-accent)}.custom-start-button{width:100%}.custom-practice-ready>small{align-items:flex-start;gap:var(--space-xs);color:var(--color-muted);line-height:1.5;display:flex}.custom-practice-ready>small svg{width:.95rem;flex:none;margin-block-start:var(--space-3xs)}.custom-passage-library{gap:var(--space-md);display:grid}.custom-passage-list{border-block-start:var(--rule-hair) solid var(--color-rule-strong)}.custom-delete-notice{justify-content:space-between;align-items:center;gap:var(--space-md);padding-block:var(--space-md);border-block:var(--rule-hair) solid var(--color-rule);flex-wrap:wrap;display:flex}.custom-delete-notice>div{gap:var(--space-2xs);min-width:0;display:grid}.custom-delete-notice strong{overflow-wrap:anywhere}.custom-delete-notice span{color:var(--color-neutral);font-size:var(--text-sm)}.custom-delete-error{color:var(--color-error);font-size:var(--text-sm)}.custom-delete-button{color:var(--color-neutral)}.custom-delete-button svg{color:var(--color-error)}.custom-passage-row{gap:var(--space-md);padding-block:var(--space-lg);border-block-end:var(--rule-hair) solid var(--color-rule);display:grid}.custom-passage-row>div:first-child{gap:var(--space-2xs);min-width:0;display:grid}.custom-passage-row>div:first-child>span{color:var(--color-muted);letter-spacing:0;text-transform:none}.custom-passage-row h3{font-size:var(--text-md)}.custom-passage-row>div:last-child{gap:var(--space-xs);flex-wrap:wrap;display:flex}.practice-loading{padding-block:var(--space-2xl);color:var(--color-muted)}.practice-missing-passage{justify-items:start;gap:var(--space-md);border-block:var(--rule-hair) solid var(--color-rule-strong);align-content:center;min-height:50dvh;display:grid}.practice-missing-passage h1{font-size:clamp(var(--text-2xl), 7vw, var(--text-4xl))}.practice-missing-passage p{max-width:56ch;color:var(--color-neutral)}@media (hover:hover) and (pointer:fine){.icon-button:hover,.quiet-action:hover,.text-button:hover,.profile-button:hover,.site-nav__links a:hover,.mobile-menu a:hover{background:var(--color-paper-2);color:var(--color-ink)}.primary-button:hover,.secondary-button:hover,.article-card__action:hover{transform:translateY(-1px)}.secondary-button:hover{border-color:var(--color-accent)}.selector-row button:hover,.segmented button:hover,.segmented label:hover{background:var(--color-paper-2);color:var(--color-ink)}.word-practice__control select:not(:disabled):hover{border-color:var(--color-accent)}.text-link:hover,.article-card__action:hover{color:var(--color-accent)}.home-scroll-cue:hover .home-scroll-cue__icon,.home-scroll-cue:focus-visible .home-scroll-cue__icon{transform:translateY(var(--space-2xs));animation:none}.passage-chooser__toggle:hover{background:var(--color-accent);color:var(--color-accent-ink);transform:translateY(-1px)}.passage-chooser__toggle:hover svg{color:currentColor}.practice-heading__actions .practice-heading-action--primary:hover{background:var(--color-accent);color:var(--color-accent-ink);transform:translateY(-1px)}.practice-heading__actions .practice-heading-action--secondary:hover{background:var(--color-accent-soft);color:var(--color-accent);transform:translateY(-1px)}.custom-delete-button:hover{background:var(--color-error-soft);color:var(--color-error)}.custom-file-action:hover{border-color:var(--color-accent);background:var(--color-paper-2)}.custom-field input:hover,.custom-field textarea:hover{border-color:var(--color-accent)}}@media (min-width:40rem){.page-shell{padding-block-start:var(--space-3xl)}.article-filter-panel__toggle{display:none}.article-filter-panel:not(.is-open)>div{display:block}.settings-dialog{padding:var(--space-xl)}.home-page.page-shell{padding-block-start:0}.selector-row{grid-template-columns:6rem minmax(0,1fr)}.passage-chooser .selector-row{grid-template-columns:5rem minmax(0,1fr)}.selector-split{grid-template-columns:repeat(2,minmax(0,1fr))}.result-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.mistake-rankings,.learning-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.library-tools{grid-template-columns:minmax(0,1.8fr) minmax(8rem,.7fr) minmax(8rem,.7fr);align-items:end}.word-practice__controls{grid-template-columns:repeat(2,minmax(0,1fr))}.mistake-drill-entry{grid-template-columns:minmax(0,1fr) auto}.word-drill__context-feedback{gap:var(--space-xl);grid-template-columns:minmax(8rem,.7fr) minmax(0,1.3fr)}.article-card__stats{grid-template-columns:repeat(4,minmax(0,1fr))}.progress-summary dl{grid-template-columns:repeat(3,minmax(0,1fr))}.word-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-draft-row{grid-template-columns:minmax(0,1.4fr) minmax(15rem,.8fr) auto;align-items:center}.progress-draft-track{grid-column:1/3}.progress-draft-row .text-button{grid-area:1/3/3;align-self:center}.progress-session-row{grid-template-columns:minmax(0,1.2fr) minmax(22rem,1fr);align-items:center}.progress-session-completion{grid-column:1/-1}.progress-session-row dl{grid-template-columns:repeat(4,minmax(0,1fr))}.goal-section{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr)}.practice-passage__summary{grid-template-columns:minmax(0,1fr) auto}.passage-chooser__toggle{justify-self:end}.about-intro{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:start}.about-visual{margin-block-start:var(--space-xl)}.about-thesis{margin-inline-start:18%}.custom-practice-preview{grid-template-columns:repeat(3,minmax(0,1fr))}.custom-practice-preview>div{padding-inline:var(--space-lg);border-block-end:0;border-inline-end:var(--rule-hair) solid var(--color-rule)}.custom-practice-preview>div:first-child{padding-inline-start:0}.custom-practice-preview>div:last-child{border-inline-end:0;padding-inline-end:0}.custom-passage-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}}@media (min-width:56rem){.site-nav__inner{column-gap:var(--space-xs);grid-template-columns:auto minmax(0,1fr) auto}.site-nav__links{justify-self:center;gap:0;min-width:0;display:flex}.site-nav__links a{min-height:2.5rem;padding-inline:var(--space-xs);font-size:var(--text-xs)}.mobile-menu-button,.mobile-menu{display:none}}@media (min-width:60rem){.word-practice__controls{grid-template-columns:minmax(17rem,1.5fr) minmax(8rem,.55fr) auto}.word-practice__controls.is-mistakes{grid-template-columns:minmax(8rem,12rem) auto;justify-content:start}.word-practice__shuffle{margin-block-start:0}.home-hero{min-height:calc(100dvh - 4.5rem - var(--space-3xl) - var(--space-md))}.home-hero__support{grid-template-columns:minmax(0,1fr) auto}.home-hero__cta{justify-self:end}.mistake-layout{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr)}.article-card{align-items:center;gap:var(--space-2xl);grid-template-columns:minmax(0,1.6fr) minmax(18rem,.9fr) auto}.article-card__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.article-card__action{justify-self:end}.progress-summary{grid-template-columns:minmax(0,.8fr) minmax(0,1.8fr);align-items:end}.progress-summary dl{grid-template-columns:repeat(5,minmax(0,1fr))}.progress-summary--words dl{grid-template-columns:repeat(6,minmax(0,1fr))}.vocabulary-list article{grid-template-columns:minmax(8rem,.6fr) minmax(0,1.4fr) minmax(10rem,.7fr)}.vocabulary-actions{grid-column:2/-1}.about-intro{gap:var(--space-3xl);grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)}.about-story__body{margin-inline-start:34%}.passage-chooser{grid-template-columns:minmax(0,1.5fr) minmax(16rem,.7fr);align-items:stretch}.passage-chooser__picker{border-block-start:0;border-inline-start:var(--rule-hair) solid var(--color-rule);align-content:end;padding-block-start:0;padding-inline-start:var(--space-lg)}.custom-practice-workbench{grid-template-columns:minmax(0,1.55fr) minmax(19rem,.72fr)}.custom-practice-editor{padding-inline-end:var(--space-2xl)}.custom-practice-ready{border-block-start:0;border-inline-start:var(--rule-hair) solid var(--color-rule);padding-inline-start:var(--space-2xl)}}@media (min-width:72rem){.site-nav__inner{grid-template-columns:1fr auto 1fr}.site-nav__links{justify-self:center;gap:var(--space-2xs)}.site-nav__links a{min-height:2.75rem;padding-inline:var(--space-md);font-size:var(--text-sm)}.profile-button{display:inline-flex}}@media (pointer:coarse){.primary-button,.secondary-button,.quiet-action,.text-button,.article-card__action,.selector-row button,.segmented button,.segmented label{min-height:3rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}.typing-caret{transition:none!important}.typing-caret:after{opacity:1;animation:none}.word-drill__content.is-leaving{animation-name:word-step-out-reduced}.word-drill__content.is-entering{animation-name:word-step-in-reduced}.passage-chooser__toggle svg{transition:none!important;transform:none!important}.home-scroll-cue__icon,.home-scroll-cue[data-leaving=true] .home-scroll-cue__icon{animation:none;transform:none}.home-page.is-leaving{transform:none}::view-transition-old(root){animation:none!important}::view-transition-new(root){animation:none!important}}.membership-nav-button{justify-content:center;align-items:center;gap:var(--space-xs);min-width:2.75rem;min-height:2.75rem;padding-inline:var(--space-sm);border:var(--rule-hair) solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-accent-ink);font-size:var(--text-xs);transition:transform var(--dur-micro) var(--ease-out), background-color var(--dur-short) var(--ease-out), opacity var(--dur-short) var(--ease-out);font-weight:700;display:none}.membership-nav-button svg{width:.95rem;height:.95rem}.membership-nav-button:active{transform:translateY(1px)}.membership-nav-button.is-active{background:var(--color-accent-soft);color:var(--color-accent)}.article-card__meta .is-free-access,.article-card__meta .is-member-access{align-items:center;gap:var(--space-2xs);display:inline-flex}.article-card__meta .is-free-access{color:var(--color-success)}.article-card__meta .is-member-access{color:var(--color-neutral)}.article-card__meta svg{width:.8rem;height:.8rem}.member-gate{gap:var(--space-lg);padding-block:var(--space-xl);border-block:var(--rule-hair) solid var(--color-rule-strong);align-items:start;margin-block-start:var(--space-xl);display:grid}.member-gate>svg{width:var(--text-xl);height:var(--text-xl);color:var(--color-accent)}.member-gate>div{gap:var(--space-xs);display:grid}.member-gate span,.membership-section-heading+span{color:var(--color-accent);font-family:var(--font-code);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.member-gate h2{font-size:var(--text-xl)}.member-gate p{max-width:60ch;color:var(--color-neutral)}.membership-limit-note{align-items:center;gap:var(--space-xs);min-height:2.75rem;color:var(--color-accent);font-size:var(--text-sm);font-weight:600;display:inline-flex}.membership-limit-note svg{width:1rem}.progress-membership-note{justify-content:space-between;gap:var(--space-lg);padding-block:var(--space-lg);border-block:var(--rule-hair) solid var(--color-rule-strong);flex-wrap:wrap;display:flex}.progress-membership-note div{gap:var(--space-2xs);display:grid}.progress-membership-note p{color:var(--color-neutral)}.membership-page,.checkout-page,.payment-result-page{padding-block-start:var(--space-xl)}.membership-page{gap:var(--space-3xl);display:grid}.membership-hero{gap:var(--space-xl);min-width:0;padding-block:var(--space-xl) var(--space-2xl);border-block-end:var(--space-2xs) solid var(--color-ink);display:grid}.membership-hero__price,.membership-hero__copy{align-content:end;min-width:0;display:grid}.membership-hero__price{gap:var(--space-xs)}.membership-hero__price>span,.checkout-kicker,.checkout-payment__heading>span,.membership-merchant span,.checkout-merchant span,.payment-result>span{color:var(--color-accent);font-family:var(--font-code);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.membership-hero__price>p{overflow-wrap:anywhere;font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.085em;font-size:clamp(6.5rem,32vw,12rem);font-weight:700;line-height:.78}.membership-hero__price>p small{color:var(--color-accent);letter-spacing:0;margin-inline-end:var(--space-xs);font-size:.25em}.membership-hero__price>s,.membership-plan__price s{width:fit-content;color:var(--color-muted);font-family:var(--font-code);font-size:var(--text-sm)}.membership-hero__copy{gap:var(--space-lg);border-block-start:var(--rule-hair) solid var(--color-rule-strong);padding-block-start:var(--space-lg)}.membership-hero__copy h1{max-width:12ch;font-size:clamp(var(--text-2xl), 7vw, var(--text-4xl));font-weight:700}.membership-hero__copy>p{max-width:48ch;color:var(--color-neutral);font-size:var(--text-md)}.membership-hero__copy>small,.membership-lifetime-note{color:var(--color-muted);font-size:var(--text-sm)}.membership-preview-note{gap:var(--space-xs);padding:var(--space-lg);border:var(--rule-hair) solid var(--color-accent);background:var(--color-accent-soft);color:var(--color-ink);display:grid}.membership-preview-note span{color:var(--color-accent);font-family:var(--font-code);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:600}.membership-preview-note p{max-width:74ch}.membership-status-card{gap:var(--space-sm) var(--space-md);padding-block:var(--space-lg);border-block:var(--rule-hair) solid var(--color-rule-strong);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.membership-status-card>svg{width:1.4rem;height:1.4rem;color:var(--color-accent);stroke-width:1.75px}.membership-status-card>div:not(.membership-status-actions){gap:var(--space-2xs);display:grid}.membership-status-card span,.checkout-unlocks>span{color:var(--color-accent);font-family:var(--font-code);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:600}.membership-status-card strong{font-size:var(--text-md)}.membership-status-card p{max-width:68ch;color:var(--color-neutral);font-size:var(--text-sm)}.membership-status-card.is-member{border-color:var(--color-success)}.membership-status-card.is-member>svg{color:var(--color-success)}.membership-status-card>.text-button,.membership-status-card>.primary-button{grid-column:2;justify-self:start}.membership-renewal-reminder{gap:var(--space-xs);padding:var(--space-sm);border-inline-start:var(--space-3xs) solid var(--color-accent);background:var(--color-accent-soft);align-items:flex-start;margin-block-start:var(--space-xs);display:flex}.membership-renewal-reminder svg{width:1rem;color:var(--color-accent);flex:none}.membership-renewal-reminder>span{color:var(--color-neutral);font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:0;text-transform:none;font-weight:400}.membership-renewal-reminder.is-1-day{border-inline-start-color:var(--color-error)}.membership-status-actions{gap:var(--space-sm);flex-wrap:wrap;grid-column:2;align-items:center;display:flex}.membership-plans,.membership-access,.membership-process,.membership-faq{gap:var(--space-xl);display:grid}.membership-section-heading{gap:var(--space-sm);max-width:60rem;display:grid}.membership-section-heading h2{max-width:20ch;font-size:clamp(var(--text-xl), 5vw, var(--text-3xl))}.membership-section-heading p{max-width:58ch;color:var(--color-neutral);font-size:var(--text-md)}.membership-plan{gap:var(--space-lg);min-width:0;padding-block:var(--space-xl);border-block-start:var(--rule-hair) solid var(--color-rule-strong);align-items:center;display:grid}.membership-plan:last-of-type{border-block-end:var(--rule-hair) solid var(--color-rule-strong)}.membership-plan.is-featured{padding-inline:var(--space-md);background:var(--color-accent-soft);color:var(--color-ink)}.membership-plan__name{gap:var(--space-2xs);min-width:0;display:grid}.membership-plan__name>span{color:var(--color-accent);font-family:var(--font-code);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.membership-plan__name h3{font-size:var(--text-xl)}.membership-plan__name p{color:var(--color-neutral)}.membership-plan__price{gap:var(--space-xs);flex-wrap:wrap;align-items:baseline;display:flex}.membership-plan__price strong{font-family:var(--font-display);font-size:var(--text-2xl);font-variant-numeric:tabular-nums;letter-spacing:-.04em}.membership-comparison{border-block-start:var(--rule-hair) solid var(--color-rule-strong)}.membership-comparison__head{display:none}.membership-comparison__row{gap:var(--space-sm);padding-block:var(--space-lg);border-block-end:var(--rule-hair) solid var(--color-rule);display:grid}.membership-comparison__row>strong{font-family:var(--font-display);font-size:var(--text-md)}.membership-comparison__row>span{gap:var(--space-xs);color:var(--color-neutral);display:flex}.membership-comparison__row>span:before{min-width:4.5rem;color:var(--color-muted);font-family:var(--font-code);font-size:var(--text-xs);content:"Free"}.membership-comparison__row>span:last-child:before{content:"Member"}.membership-comparison__row svg{width:1rem;color:var(--color-accent);flex:none}.membership-feature-notes{gap:var(--space-xl);display:grid}.membership-feature-notes>div{padding-block:var(--space-lg);border-block-start:var(--rule-hair) solid var(--color-rule-strong)}.membership-feature-notes h3{font-size:var(--text-md);margin-block-end:var(--space-md)}.membership-feature-notes ul{gap:var(--space-sm);color:var(--color-neutral);margin:0;padding:0;list-style:none;display:grid}.membership-feature-notes li:before{color:var(--color-accent);content:"—";margin-inline-end:var(--space-sm)}.membership-process ol{border-block-start:var(--rule-hair) solid var(--color-rule-strong);margin:0;padding:0;list-style:none;display:grid}.membership-process li{gap:var(--space-md);padding-block:var(--space-lg);border-block-end:var(--rule-hair) solid var(--color-rule);grid-template-columns:3rem minmax(0,1fr);display:grid}.membership-process li>span{color:var(--color-accent);font-family:var(--font-code);font-size:var(--text-sm)}.membership-process li>div{gap:var(--space-xs);display:grid}.membership-process li h3{font-size:var(--text-md)}.membership-process li p{max-width:58ch;color:var(--color-neutral)}.membership-faq>div:last-child{border-block-start:var(--rule-hair) solid var(--color-rule-strong)}.membership-faq details{border-block-end:var(--rule-hair) solid var(--color-rule)}.membership-faq summary{min-height:3.5rem;padding-block:var(--space-md);cursor:pointer;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-md);font-weight:600}.membership-faq summary:active,.membership-limit-note:active{color:var(--color-accent);transform:translateY(1px)}.membership-faq details p{max-width:64ch;color:var(--color-neutral);padding-block-end:var(--space-lg)}.membership-faq details a{color:var(--color-ink);border-block-end:var(--rule-hair) solid var(--color-rule-strong)}.membership-merchant{align-items:center;gap:var(--space-md) var(--space-lg);padding-block:var(--space-xl);border-block:var(--rule-hair) solid var(--color-rule-strong);flex-wrap:wrap;display:flex}.membership-merchant>svg{width:var(--text-lg);color:var(--color-accent)}.membership-merchant>div{display:grid}.membership-merchant>div:last-child{gap:var(--space-md);color:var(--color-neutral);font-size:var(--text-sm);flex-wrap:wrap;margin-inline-start:auto;display:flex}.checkout-layout{gap:var(--space-2xl);padding-block:var(--space-xl) var(--space-3xl);display:grid}.checkout-order,.checkout-payment{align-content:start;gap:var(--space-xl);min-width:0;display:grid}.checkout-order>div:first-of-type,.checkout-payment__heading{gap:var(--space-xs);display:grid}.checkout-order h1,.checkout-payment h2{font-size:clamp(var(--text-xl), 5vw, var(--text-2xl))}.checkout-order>div p,.checkout-payment__heading p{max-width:52ch;color:var(--color-neutral)}.checkout-order dl{border-block-start:var(--rule-hair) solid var(--color-rule-strong)}.checkout-order dl>div{justify-content:space-between;gap:var(--space-lg);padding-block:var(--space-sm);border-block-end:var(--rule-hair) solid var(--color-rule);display:flex}.checkout-order dt{color:var(--color-neutral)}.checkout-order dd{font-family:var(--font-code);font-variant-numeric:tabular-nums}.checkout-order dl>.checkout-order__total{padding-block:var(--space-lg);color:var(--color-ink);font-weight:700}.checkout-order__total dd{font-family:var(--font-display);font-size:var(--text-xl)}.checkout-assurances{gap:var(--space-sm);color:var(--color-neutral);font-size:var(--text-sm);display:grid}.checkout-assurances p{gap:var(--space-xs);display:flex}.checkout-assurances svg{width:1rem;color:var(--color-success);flex:none}.checkout-unlocks{gap:var(--space-sm);padding-block:var(--space-lg);border-block:var(--rule-hair) solid var(--color-rule-strong);display:grid}.checkout-unlocks ul{gap:var(--space-xs);color:var(--color-neutral);font-size:var(--text-sm);margin:0;padding:0;list-style:none;display:grid}.checkout-unlocks li{gap:var(--space-xs);align-items:flex-start;display:flex}.checkout-unlocks li svg{width:1rem;color:var(--color-success);flex:none}.checkout-unlocks small{color:var(--color-muted)}.checkout-payment{border-block-start:var(--rule-hair) solid var(--color-rule-strong);padding-block-start:var(--space-xl)}.payment-review-notice{gap:var(--space-xs);padding:var(--space-md);border-inline-start:var(--space-2xs) solid var(--color-accent);background:var(--color-accent-soft);color:var(--color-ink);display:grid}.payment-review-notice span{color:var(--color-accent);font-family:var(--font-code);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:600}.checkout-form{gap:var(--space-xs);display:grid}.checkout-account,.checkout-device-note{gap:var(--space-sm);padding:var(--space-md);border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-paper);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.checkout-account>svg,.checkout-device-note>svg{width:1.2rem;color:var(--color-accent)}.checkout-account>div,.checkout-device-note p{gap:var(--space-3xs);display:grid}.checkout-account span,.checkout-device-note span{color:var(--color-muted);font-size:var(--text-xs)}.checkout-account.is-signed-in{border-color:var(--color-accent)}.checkout-device-note{border-style:dashed;grid-template-columns:auto minmax(0,1fr);margin-block-start:var(--space-xs)}.checkout-device-note strong{font-size:var(--text-sm)}.checkout-renewal-note{gap:var(--space-sm);padding:var(--space-md);border:var(--rule-hair) solid var(--color-success);border-radius:var(--radius-sm);grid-template-columns:auto minmax(0,1fr);align-items:start;margin-block-start:var(--space-xs);display:grid}.checkout-renewal-note>svg{width:1.2rem;color:var(--color-success)}.checkout-renewal-note p{gap:var(--space-3xs);display:grid}.checkout-renewal-note span{color:var(--color-neutral);font-size:var(--text-xs)}.checkout-final-sale{gap:var(--space-sm);padding:var(--space-md);border:var(--rule-hair) solid var(--color-accent);grid-template-columns:auto minmax(0,1fr);align-items:start;margin-block-start:var(--space-sm);display:grid}@supports (color:color-mix(in lab, red, red)){.checkout-final-sale{border:var(--rule-hair) solid color-mix(in srgb, var(--color-accent) 64%, var(--color-rule-strong))}}.checkout-final-sale{border-radius:var(--radius-sm);background:var(--color-accent-soft)}.checkout-final-sale>svg{width:1.15rem;color:var(--color-accent)}.checkout-final-sale p{gap:var(--space-2xs);display:grid}.checkout-final-sale strong{color:var(--color-ink);font-size:var(--text-sm)}.checkout-final-sale span{color:var(--color-neutral);font-size:var(--text-xs);line-height:1.65}.checkout-consent{gap:var(--space-sm);margin-block:var(--space-md);color:var(--color-neutral);font-size:var(--text-sm);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.checkout-consent input{width:1.1rem;height:1.1rem;accent-color:var(--color-accent);margin-block-start:var(--space-2xs)}.checkout-consent a{color:var(--color-ink);border-block-end:var(--rule-hair) solid var(--color-rule-strong);white-space:normal}.checkout-submit{width:100%;min-height:3.25rem}.checkout-submit[data-state=error]{border-color:var(--color-error);background:var(--color-error-soft);color:var(--color-error)}.checkout-form__message{min-height:3lh}.checkout-form__message p{gap:var(--space-xs);font-size:var(--text-sm);padding-block-start:var(--space-xs);display:flex}.checkout-form__message .is-error{color:var(--color-error)}.checkout-form__message svg{flex:none;width:1rem}.checkout-merchant{gap:var(--space-2xs);border-block-start:var(--rule-hair) solid var(--color-rule);padding-block-start:var(--space-lg);display:grid}.checkout-merchant a{width:fit-content;color:var(--color-neutral);font-size:var(--text-sm)}.checkout-loading,.payment-result{min-height:60dvh}.checkout-loading{color:var(--color-muted);place-items:center;display:grid}.payment-result{align-content:center;gap:var(--space-lg);max-width:58rem;padding-block:var(--space-2xl);display:grid}.payment-result>svg{width:var(--text-3xl);height:var(--text-3xl);color:var(--color-accent)}.payment-result h1{max-width:14ch;font-size:clamp(var(--text-2xl), 7vw, var(--text-4xl))}.payment-result>p{max-width:60ch;color:var(--color-neutral);font-size:var(--text-md)}.payment-result>small{color:var(--color-muted);font-family:var(--font-code);overflow-wrap:anywhere}.payment-result__actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}@media (hover:hover) and (pointer:fine){.membership-nav-button:hover{transform:translateY(calc(0rem - var(--space-3xs)))}.membership-faq summary:hover,.membership-limit-note:hover{color:var(--color-accent)}.checkout-form input[type=tel]:hover{background:var(--color-paper-2)}}@media (min-width:40rem){.membership-nav-button{display:inline-flex}.member-gate{grid-template-columns:auto minmax(0,1fr) auto}.membership-status-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.membership-status-card>.text-button,.membership-status-card>.primary-button,.membership-status-actions{grid-column:auto;justify-self:end}.membership-plan{grid-template-columns:minmax(0,1.4fr) minmax(8rem,.55fr) auto}.membership-comparison__head,.membership-comparison__row{gap:var(--space-lg);grid-template-columns:minmax(9rem,.7fr) repeat(2,minmax(0,1fr));display:grid}.membership-comparison__head{padding-block:var(--space-sm);border-block-end:var(--rule-hair) solid var(--color-rule-strong);color:var(--color-muted);font-family:var(--font-code);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.membership-comparison__row>span:before{display:none}.membership-feature-notes{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:60rem){.membership-hero{gap:var(--space-3xl);grid-template-columns:minmax(0,1.25fr) minmax(20rem,.75fr);min-height:34rem}.membership-hero__copy{padding-block:var(--space-xl);border-block-start:0;border-inline-start:var(--rule-hair) solid var(--color-rule-strong);padding-inline-start:var(--space-2xl)}.membership-section-heading{grid-template-columns:minmax(0,.9fr) minmax(22rem,1.1fr);align-items:end}.membership-feature-notes,.membership-process ol,.membership-faq>div:last-child{margin-inline-start:25%}.checkout-layout{gap:var(--space-3xl);grid-template-columns:minmax(0,.9fr) minmax(24rem,.72fr);min-height:72dvh}.checkout-payment{border-block-start:0;border-inline-start:var(--rule-hair) solid var(--color-rule-strong);padding-block-start:0;padding-inline-start:var(--space-2xl)}}@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-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}
