:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--radius-full:999px;--font-size-xs:.75rem;--font-size-sm:.8125rem;--font-size-base:.9375rem;--font-size-md:1.0625rem;--font-size-lg:1.25rem;--font-size-xl:1.625rem;--font-size-2xl:2.125rem;--font-size-3xl:2.875rem;--font-size-read:1.125rem;--font-size-display:3.5rem;--font-size-display-phone:2.375rem;--line-height-tight:1.15;--line-height-snug:1.35;--line-height-base:1.6;--line-height-read:1.65;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-heading:600;--duration-fast:.12s;--duration-base:.16s;--duration-slow:.24s;--easing-standard:cubic-bezier(.4, 0, .2, 1);--easing-emphasized:cubic-bezier(.2, 0, 0, 1);--easing-exit:cubic-bezier(.4, 0, 1, 1);--font-serif:"Source Serif 4", "Iowan Old Style", "Georgia", serif;--font-sans:"Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Source Code Pro", ui-monospace, "SF Mono", "Menlo", monospace;--font-body:"Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;--size-measure:38rem;--size-control-min:44px;--size-topbar:56px;--bg:#f4f5f2;--surface:#fff;--surface-2:#eceeea;--ink:#1a211e;--ink-2:#3b4641;--muted:#57635d;--faint:#8a958f;--line:#dde2dd;--line-strong:#c5ccc7;--accent:#24594b;--accent-hover:#1a4438;--accent-weak:#e4efe9;--on-accent:#fff;--focus:#2b6e5c;--danger:#a3322a;--danger-weak:#f8e6e3;--warn:#7a5408;--warn-weak:#faf0d8;--positive:#1f6a4b;--positive-weak:#e2f1e9;--hl-paper:#f8e9a6;--hl-paper-ink:#6b5100;--hl-source:#f8dfcb;--hl-source-ink:#8a4318;--hl-code:#d9e9f7;--hl-code-ink:#23598c;--hl-data:#d5eedf;--hl-data-ink:#1f6a46;--hl-bibliography:#e8e0f5;--hl-bibliography-ink:#5b3d93;--hl-reference:#f5dde5;--hl-reference-ink:#8d3457;--shadow-raised:0 12px 32px #1a211e14;--transition:.16s cubic-bezier(.4, 0, .2, 1)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#111714;--surface:#171f1b;--surface-2:#1e2823;--ink:#e3e9e5;--ink-2:#c4cec8;--muted:#9aa8a1;--faint:#66736c;--line:#28322d;--line-strong:#36423c;--accent:#8fd0b4;--accent-hover:#a8ddc6;--accent-weak:#1b3129;--on-accent:#0d1a14;--focus:#8fd0b4;--danger:#f0998e;--danger-weak:#3b1f1b;--warn:#e7c06a;--warn-weak:#392d12;--positive:#86d3ac;--positive-weak:#17342a;--hl-paper:#4a3d0e;--hl-paper-ink:#f1d272;--hl-source:#4b2c19;--hl-source-ink:#f2b086;--hl-code:#18324a;--hl-code-ink:#98c6ef;--hl-data:#163b2a;--hl-data-ink:#8ad5ad;--hl-bibliography:#31274b;--hl-bibliography-ink:#c6b2ef;--hl-reference:#47212f;--hl-reference-ink:#f0a4bd;--shadow-raised:0 12px 32px #00000073}}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/source-serif-4-greek-DDFmpx32.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/source-serif-4-latin-ext-DOljB_7u.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/source-serif-4-latin-D9E6VzMG.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400 600;font-display:swap;src:url(/assets/source-serif-4-italic-greek-ByI495fG.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400 600;font-display:swap;src:url(/assets/source-serif-4-italic-latin-ext-CWE04aiP.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400 600;font-display:swap;src:url(/assets/source-serif-4-italic-latin-DTX-mNm_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/source-sans-3-latin-ext-CsdkVF6x.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/source-sans-3-latin-D9QZDMVu.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Sans 3";font-style:italic;font-weight:400 600;font-display:swap;src:url(/assets/source-sans-3-italic-latin-ext-BSNrLIiH.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3";font-style:italic;font-weight:400 600;font-display:swap;src:url(/assets/source-sans-3-italic-latin-B9eepD7H.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/source-code-pro-latin-ext-Cd_UJ3Ks.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/source-code-pro-latin-Blj2aNY4.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-base);font-kerning:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}h1,h2,h3{font-family:var(--font-serif);font-weight:500;line-height:var(--line-height-tight);letter-spacing:-.01em;text-wrap:balance}h1{margin:0 0 var(--space-3);font-size:2.25rem}h2{margin:0 0 var(--space-3);font-size:1.375rem}p{margin:0 0 var(--space-3)}strong{font-weight:var(--font-weight-semibold)}code,pre{font-family:var(--font-mono);font-size:.875em}a{color:var(--accent);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{color:var(--accent-hover);text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:2px}.muted{color:var(--muted)}.small{font-size:var(--font-size-sm)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--space-3);z-index:100;padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);position:absolute;top:-4rem}.skip-link:focus{top:var(--space-3)}.reading,.reading-text{font-family:var(--font-serif);font-size:var(--font-size-read);line-height:var(--line-height-read);max-width:var(--size-measure)}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--size-control-min);border-radius:var(--radius-sm);color:var(--ink);font:inherit;font-weight:var(--font-weight-semibold);white-space:nowrap;cursor:pointer;transition:background-color var(--duration-fast) var(--easing-standard), border-color var(--duration-fast) var(--easing-standard), color var(--duration-fast) var(--easing-standard);background:0 0;border:1px solid #0000;padding:0 1.1rem;text-decoration:none;display:inline-flex}.button--primary{background:var(--accent);color:var(--on-accent)}.button--primary:not(:disabled):hover{background:var(--accent-hover);color:var(--on-accent)}.button--quiet{border-color:var(--line-strong);color:var(--ink)}.button--quiet:not(:disabled):hover{background:var(--surface-2);border-color:var(--faint);color:var(--ink)}.button--large{min-height:3rem;padding:0 1.5rem;font-size:1rem}.button--small{font-size:var(--font-size-sm);padding:0 .85rem}.button:disabled{cursor:not-allowed;opacity:.55}.link{color:var(--muted);font:inherit;text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.link:hover{color:var(--ink)}.stack{gap:var(--space-4);margin-top:var(--space-5);display:grid}.field{gap:var(--space-1);font-weight:var(--font-weight-medium);display:grid}.field input{min-height:var(--size-control-min);padding:0 var(--space-3);background:var(--bg);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font:inherit;font-weight:var(--font-weight-regular)}.choices{gap:var(--space-2);border:0;margin:0;padding:0;display:grid}.choices legend{margin-bottom:var(--space-2);font-weight:var(--font-weight-medium)}.choices label{align-items:center;gap:var(--space-2);min-height:var(--size-control-min);display:flex}.stack .note{margin:0}.stack .button{justify-self:start}.actions{gap:var(--space-3);margin:var(--space-5) 0 0;flex-wrap:wrap;display:flex}.loading{padding:var(--space-7) var(--space-4);color:var(--muted);text-align:center;margin:0}.note{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm)}.note--danger{background:var(--danger-weak);color:var(--danger)}.banner{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--line);margin:0}.banner--danger{background:var(--danger-weak);color:var(--danger)}.tag{border-radius:var(--radius-xs);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:0 .45rem;line-height:1.6;display:inline-block}.tag--warn{background:var(--warn-weak);color:var(--warn)}.chip--paper,.hl--paper,.sweep--paper,.viewer__tab--paper{--k:var(--hl-paper);--k-ink:var(--hl-paper-ink)}.chip--source,.hl--source,.sweep--source,.viewer__tab--source{--k:var(--hl-source);--k-ink:var(--hl-source-ink)}.chip--code,.hl--code,.sweep--code,.viewer__tab--code{--k:var(--hl-code);--k-ink:var(--hl-code-ink)}.chip--data,.hl--data,.sweep--data,.viewer__tab--data{--k:var(--hl-data);--k-ink:var(--hl-data-ink)}.chip--bibliography,.hl--bibliography,.sweep--bibliography,.viewer__tab--bibliography{--k:var(--hl-bibliography);--k-ink:var(--hl-bibliography-ink)}.chip--reference,.hl--reference,.sweep--reference,.viewer__tab--reference{--k:var(--hl-reference);--k-ink:var(--hl-reference-ink)}.chip{border-radius:var(--radius-xs);background:var(--k);color:var(--k-ink);font-family:var(--font-body);font-size:.78em;font-weight:var(--font-weight-semibold);white-space:nowrap;vertical-align:.06em;align-items:center;gap:.35em;padding:.05em .5em .05em .2em;line-height:1.5;display:inline-flex}.chip__n{border-radius:var(--radius-full);background:var(--k-ink);min-width:1.4em;height:1.4em;color:var(--surface);font-variant-numeric:tabular-nums;place-items:center;padding:0 .3em;font-size:.85em;display:inline-grid}.hl{background:var(--k);color:var(--ink);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:2px;padding:.05em .2em}.wordmark{align-items:center;gap:.55rem;display:inline-flex}.mark{flex:none}.wordmark__name{font-family:var(--font-serif);font-size:1.3125rem;font-weight:var(--font-weight-semibold);letter-spacing:-.012em;color:var(--ink)}.frame{min-height:100vh;padding:var(--space-4) var(--space-4) var(--space-8);flex-direction:column;align-items:center;display:flex}.frame__head{width:100%;max-width:30rem;padding:var(--space-4) 0 var(--space-7)}.frame__home{text-decoration:none}.frame__card{width:100%;max-width:30rem;padding:var(--space-6);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-raised)}.frame__card h1{font-size:1.75rem}.frame__card .muted{line-height:1.55}.frame__actions{gap:var(--space-3);margin:var(--space-5) 0 0;flex-wrap:wrap;display:flex}.app{flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:10;align-items:center;gap:var(--space-5);height:var(--size-topbar);padding:0 max(var(--space-5), calc((100% - 82rem) / 2 + var(--space-5)));background:var(--surface);background:color-mix(in srgb, var(--surface) 90%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);display:flex;position:sticky;top:0}.topbar__home{text-decoration:none}.topbar__nav{gap:var(--space-1);flex:1;display:flex}.topbar__link{border-radius:var(--radius-sm);color:var(--ink-2);font-weight:var(--font-weight-medium);padding:.4rem .75rem;text-decoration:none}.topbar__link:hover{background:var(--surface-2);color:var(--ink)}.topbar__link.active{background:var(--accent-weak);color:var(--accent)}.topbar__account{align-items:center;gap:var(--space-3);min-width:0;display:flex}.topbar__who{text-overflow:ellipsis;white-space:nowrap;max-width:16rem;color:var(--muted);font-size:var(--font-size-sm);overflow:hidden}.app__main{width:100%;max-width:82rem;padding:var(--space-6) var(--space-5) var(--space-8);flex:1;margin:0 auto}.page__head{margin-bottom:var(--space-6)}.page__head h1{margin-bottom:var(--space-2);font-size:2.5rem}.empty{max-width:40rem;padding:var(--space-6);background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius-md)}.empty p{color:var(--ink-2);line-height:1.6}.empty p:last-child{margin-bottom:0}.project__head{margin-bottom:var(--space-6);border-bottom:1px solid var(--line)}.crumbs{font-size:var(--font-size-sm)}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--ink);text-decoration:underline}.project__title{margin:var(--space-2) 0 var(--space-4);overflow-wrap:anywhere;font-size:2.5rem}.project__nav{gap:var(--space-5);scrollbar-width:none;display:flex;overflow-x:auto}.project__link{padding:var(--space-2) 0 .7rem;color:var(--ink-2);font-weight:var(--font-weight-medium);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;text-decoration:none}.project__link:hover{color:var(--ink);border-bottom-color:var(--line-strong)}.project__link.active{color:var(--accent);border-bottom-color:var(--accent)}.version-banner{margin:calc(-1 * var(--space-4)) 0 var(--space-5);padding:var(--space-3) var(--space-4);background:var(--hl-paper);color:var(--hl-paper-ink);border-radius:var(--radius-sm)}.version-banner a{color:inherit;font-weight:var(--font-weight-semibold)}.version-banner--review{background:var(--accent-weak);color:var(--accent)}.page--reading .reading h2{font-size:1.75rem}.workspace{grid-template-columns:minmax(0, var(--chat-share,40%)) var(--space-3) minmax(0, 1fr);align-items:stretch;height:max(34rem,100vh - 17rem);display:grid}.workspace__chat,.viewer{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md)}.workspace__chat{gap:var(--space-3);min-height:0;padding:var(--space-4) var(--space-4) var(--space-4);flex-direction:column;display:flex}.pane-title{font-size:1.125rem;font-weight:var(--font-weight-semibold);margin:0}.chat-empty{color:var(--ink-2);font-family:var(--font-serif);font-size:1.0625rem;line-height:var(--line-height-read)}.ask-box{gap:var(--space-2);display:grid}.ask-box textarea{width:100%;padding:var(--space-3);background:var(--bg);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font:inherit;resize:vertical}.ask-box textarea::placeholder{color:var(--muted)}.ask-box .button{justify-self:end}.workspace__split{cursor:col-resize;touch-action:none;position:relative}.workspace__split:after{content:"";inset:var(--space-6) calc(50% - 1px);border-radius:var(--radius-full);background:var(--line);transition:background-color var(--duration-fast) var(--easing-standard);position:absolute}.workspace__split:hover:after,.workspace__split:focus-visible:after{background:var(--accent)}.workspace__switch{background:var(--surface-2);border-radius:var(--radius-sm);gap:2px;padding:2px;display:none}.workspace__switch button{min-height:var(--size-control-min);border-radius:calc(var(--radius-sm) - 2px);color:var(--ink-2);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer;background:0 0;border:0;flex:1}.workspace__switch button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #1a211e14}.viewer{flex-direction:column;min-width:0;display:flex;overflow:hidden}.viewer__tabs{padding:0 var(--space-2);border-bottom:1px solid var(--line);scrollbar-width:thin;display:flex;overflow-x:auto}.viewer__tab{min-height:var(--size-control-min);color:var(--ink-2);font:inherit;font-weight:var(--font-weight-medium);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:.45rem;margin-bottom:-1px;padding:0 .8rem;display:inline-flex}.viewer__tab:before{content:"";background:var(--k-ink);border-radius:2px;width:.5rem;height:.5rem}.viewer__tab:hover{background:var(--surface-2);color:var(--ink)}.viewer__tab[aria-selected=true]{color:var(--ink);font-weight:var(--font-weight-semibold);border-bottom-color:var(--k-ink)}.viewer__tab:focus-visible{outline-offset:-2px}.viewer__panel{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.viewer__panel>*{flex:1;min-height:0}.viewer__panel>.loading{flex:none}.calm{max-width:36rem;padding:var(--space-6) var(--space-5);color:var(--ink-2);flex:none}.calm__title{margin:0 0 var(--space-1);color:var(--ink);font-family:var(--font-serif);font-size:1.125rem;line-height:var(--line-height-snug)}.calm__text{margin:0}.files-view__main .calm,.pdf-cited .calm,.code .calm{padding:var(--space-4) var(--space-5)}.pdf{flex-direction:column;min-height:0;display:flex}.pdf-cited{align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.pdf-cited p{margin:0}.pdf-cited__list{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}button.chip{min-height:1.9rem;font-size:var(--font-size-sm);cursor:pointer;border:0;padding:0 .6rem}button.chip:hover{box-shadow:inset 0 0 0 1px var(--k-ink)}.pdf-cited__actions{gap:var(--space-2);flex-wrap:wrap;display:flex;margin-left:auto!important}.pdf-cited .button--small,.code__actions .button--small,.data__pager .button--small{min-height:2rem}.pdf-bar{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-bottom:1px solid var(--line);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.pdf-bar__button{border-radius:var(--radius-sm);width:2.25rem;height:2.25rem;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;padding:0;font-size:1.125rem;display:inline-grid}.pdf-bar__button:not(:disabled):hover{background:var(--surface-2)}.pdf-bar__button:disabled{color:var(--faint);cursor:default}.pdf-bar__page{align-items:center;gap:var(--space-2);display:inline-flex}.pdf-bar input,.pdf-bar select,.code__goto input,.files__find input,.bib__find input{min-height:2.25rem;padding:0 var(--space-2);background:var(--bg);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font:inherit}.pdf-bar__page input{text-align:center;font-variant-numeric:tabular-nums;width:3.25rem}.pdf-bar__gap{flex:1}.pdf-bar__download{margin-left:var(--space-2)}.pdf-status,.code__status{padding:0 var(--space-4);color:var(--positive);font-size:var(--font-size-sm);margin:0}.pdf-status:not(:empty),.code__status:not(:empty){padding-block:var(--space-1);border-bottom:1px solid var(--line)}.pdf-scroll{background:var(--surface-2);flex:1;min-height:0;position:relative;overflow:auto}.pdf-scroll:focus-visible{outline-offset:-2px}.pdf-pages{min-width:100%;position:relative}.pdf-page{background:var(--surface);box-shadow:0 0 0 1px var(--line), 0 2px 8px #0000000f;position:absolute}.pdf-hl{z-index:2;background:var(--k);mix-blend-mode:multiply;pointer-events:none;border-radius:2px;position:absolute}.pdf-hl:focus{outline:2px solid var(--k-ink);outline-offset:2px}.pdf-prov{z-index:3;background:var(--surface);border:1px solid var(--line-strong);border-left:3px solid var(--hl-paper-ink);border-radius:var(--radius-xs);color:var(--ink-2);font-size:var(--font-size-xs);margin:0;padding:.15rem .5rem;line-height:1.5;position:absolute;box-shadow:0 2px 6px #00000014}.pdf-prov a{font-family:var(--font-mono)}.pdf-prov--inline{box-shadow:none;flex-basis:100%;position:static}.pdf-note{z-index:4;box-shadow:var(--shadow-raised);position:absolute}.pdf-doc>.loading,.pdf-scroll>.calm{background:var(--surface)}.pdf-page .react-pdf__Page__textContent{z-index:1}.pdf-page .react-pdf__Page__annotations{z-index:3}.files-view{grid-template-columns:13.5rem minmax(0,1fr);min-height:0;display:grid}.files{min-height:0;padding:var(--space-3);border-right:1px solid var(--line);overflow:auto}.files__toggle{display:none}.files__find{margin-bottom:var(--space-2);display:block}.files__find input,.bib__find input{width:100%}.files__folder ul{margin:0;padding:0;list-style:none}.files__dir{margin:var(--space-3) 0 var(--space-1);color:var(--muted);font-family:var(--font-mono);font-size:var(--font-size-xs);overflow-wrap:anywhere}.files__file{border-radius:var(--radius-xs);color:var(--ink-2);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;padding:.2rem .5rem;font-size:.8125rem;text-decoration:none;display:block;overflow:hidden}.files__file:hover{background:var(--surface-2);color:var(--ink);text-decoration:none}.files__file[aria-current=page]{background:var(--accent-weak);color:var(--accent);font-weight:var(--font-weight-semibold)}.files-view__main{flex-direction:column;min-width:0;min-height:0;display:flex}.code{flex-direction:column;flex:1;min-height:0;display:flex}.code__bar{align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.code__path{min-width:0;font-family:var(--font-mono);font-size:var(--font-size-sm);overflow-wrap:anywhere;flex:14rem;margin:0}.data>.code__path{margin-bottom:var(--space-3)}.code__goto input{width:7.5rem}.code__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.code__chosen{color:var(--k-ink);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.copy-manual{min-width:14rem;min-height:2rem;padding:0 var(--space-2);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-xs)}.code__scroll{min-height:0;font-family:var(--font-mono);flex:1;font-size:13px;line-height:22px;position:relative;overflow:auto}.code__scroll:focus-visible{outline-offset:-2px}.code__body{min-width:100%;position:relative}.code__rows{min-width:100%;position:absolute;left:0}.code__line{white-space:pre;height:22px;display:flex}.code__num{z-index:1;background:var(--surface);width:4.25rem;color:var(--muted);font:inherit;text-align:right;cursor:pointer;-webkit-user-select:none;user-select:none;border:0;flex:none;padding:0 .75rem 0 0;position:sticky;left:0}.code__num:hover{color:var(--ink)}.code__text{padding:0 var(--space-5) 0 var(--space-2)}.code__line--cited,.code__line--cited .code__num{background:var(--k)}.code__line--cited .code__num{color:var(--k-ink)}.code__line--selected,.code__line--selected .code__num{background:var(--accent-weak)}.code__band{z-index:2;box-shadow:inset 3px 0 0 var(--k-ink);pointer-events:none;position:absolute;left:0;right:0}.code__band:focus{outline:2px solid var(--k-ink);outline-offset:-2px}.code__pending,.code__cut{color:var(--faint)}.tok-comment{color:var(--muted);font-style:italic}.tok-string{color:var(--hl-data-ink)}.tok-number{color:var(--hl-source-ink)}.tok-keyword{color:var(--hl-bibliography-ink);font-weight:var(--font-weight-semibold)}.tok-builtin,.tok-command{color:var(--hl-code-ink)}.tok-variable,.tok-math{color:var(--hl-reference-ink)}.tok-heading{color:var(--ink);font-weight:var(--font-weight-bold)}.tok-emphasis{font-style:italic}.tok-link{color:var(--accent);text-decoration:underline}.data{min-height:0;padding:var(--space-3) var(--space-4) var(--space-4);overflow:auto}.data__cited{margin:0 0 var(--space-3);font-size:var(--font-size-sm)}.data__scroll{margin-bottom:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);overflow-x:auto}.data__table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm);font-variant-numeric:tabular-nums}.data__table th,.data__table td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:.3rem .65rem}.data__table thead th{background:var(--surface-2);color:var(--ink-2);font-weight:var(--font-weight-semibold)}.data__table tbody th{font-weight:var(--font-weight-medium)}.data__table--rows{font-family:var(--font-mono);font-size:.8125rem}.data__table--rows tbody th{color:var(--muted)}.data__table .num{text-align:right}.data__cited-cell{background:color-mix(in srgb, var(--k) 55%, transparent)}.data__cited-row>th,.data__cited-row>td{background:var(--k)}.data__cited-row>.data__cited-cell{box-shadow:inset 0 0 0 2px var(--k-ink)}.data__pager{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.bib{min-height:0;padding:var(--space-4) var(--space-5) var(--space-5);overflow:auto}.bib__intro{max-width:40rem;color:var(--ink-2)}.bib__find{max-width:26rem;display:block}.bib__find+p{margin:var(--space-2) 0 0}.bib__list{gap:var(--space-2);margin:var(--space-3) 0 0;padding:0;list-style:none;display:grid}.bib__entry{padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm)}.bib__entry--cited{background:var(--k);border-color:var(--k-ink)}.bib__entry:focus{outline:2px solid var(--k-ink);outline-offset:2px}.bib__formatted{margin:0 0 var(--space-1);font-family:var(--font-serif);font-size:1.03rem;line-height:var(--line-height-snug)}.bib__meta,.bib__d5,.bib__cited-by{margin:var(--space-1) 0 0;color:var(--muted);font-size:var(--font-size-sm)}.bib__d5{color:var(--hl-reference-ink)}.quote{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);background:var(--k);border-left:3px solid var(--k-ink);border-radius:var(--radius-sm)}.quote__title{color:var(--k-ink);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:0;margin:0}.quote__text{margin:var(--space-2) 0;color:var(--ink);font-family:var(--font-serif);font-size:1.0625rem;line-height:var(--line-height-read)}.quote .muted{margin:0}@media (prefers-color-scheme:dark){.pdf-hl{background:color-mix(in srgb, var(--k-ink) 45%, transparent)}}.consent{inset:auto var(--space-4) var(--space-4);z-index:20;max-width:40rem;padding:var(--space-4);align-items:center;gap:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-raised);flex-wrap:wrap;margin:0 auto;display:flex;position:fixed}.consent p{flex:16rem;margin:0}.consent__actions{gap:var(--space-2);display:flex}.canvas{max-width:64rem;padding:var(--space-6) var(--space-5) var(--space-8);margin:0 auto}.canvas section{margin-top:var(--space-7)}.canvas .note,.canvas .banner,.canvas__head h1{margin-top:var(--space-4)}.swatches{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));padding:0;list-style:none;display:grid}.swatch{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);display:flex}.swatch__chip{border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:2.5rem;height:2.5rem}.canvas__highlights{gap:var(--space-4);padding:0;list-style:none;display:grid}.canvas__highlights .reading-text{margin:var(--space-2) 0 0}.canvas__display{font-family:var(--font-serif);font-size:var(--font-size-display);letter-spacing:-.018em;margin:0 0 var(--space-5);line-height:1.06}.canvas__code{padding:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);overflow-x:auto}@media (width<=900px){.workspace{gap:var(--space-3);grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:max(30rem,100vh - 14rem)}.workspace__split{display:none}.workspace__switch{display:flex}.workspace[data-pane=chat] .viewer,.workspace[data-pane=viewer] .workspace__chat{display:none}}@media (width<=600px){.topbar{gap:var(--space-3);padding:0 var(--space-4)}.topbar__who{display:none}.app__main{padding:var(--space-5) var(--space-4) var(--space-7)}.page__head h1,.project__title{font-size:2rem}.frame__card{padding:var(--space-5)}.files-view{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.files{border-right:0;border-bottom:1px solid var(--line);max-height:40vh}.files__toggle{display:inline-flex}.files--folded{padding-bottom:var(--space-2)}.files--folded .files__list{display:none}.code__num{width:3.25rem;padding-right:.5rem}.pdf-bar select{display:none}.pdf-bar{padding:var(--space-1) var(--space-2);gap:2px}.pdf-bar__page input{width:2.75rem}.pdf-bar__gap{display:none}.pdf-bar__download{margin-left:auto;padding:0 .65rem}.canvas__display{font-size:var(--font-size-display-phone)}}.landing{overflow-x:clip}.site-header,.hero,.chapters,.privacy__inner,.closing,.site-footer{width:100%;max-width:76rem;padding-left:var(--space-6);padding-right:var(--space-6);margin:0 auto}.site-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding-top:var(--space-5);padding-bottom:var(--space-5);display:flex}.site-header__home{text-decoration:none}.hero{gap:var(--space-8) 4.5rem;grid-template-columns:minmax(0,1fr) minmax(0,29rem);align-items:center;padding-top:4.5rem;padding-bottom:7rem;display:grid}.hero h1{max-width:12.5em;font-size:var(--font-size-display);letter-spacing:-.02em;margin:0 0 1.75rem;font-weight:500;line-height:1.05}.hero__lede{max-width:33rem;color:var(--ink-2);font-family:var(--font-serif);text-wrap:pretty;margin:0 0 2.25rem;font-size:1.25rem;line-height:1.55}.hero__actions{align-items:center;gap:var(--space-4) var(--space-5);flex-wrap:wrap;display:flex}.hero__note{max-width:19rem;color:var(--muted);font-size:var(--font-size-sm);margin:0;line-height:1.5}.specimen{margin:0;position:relative}.specimen__page{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-raised);border-radius:6px;padding:1.5rem 1.75rem 3.75rem .5rem}.specimen__head{color:var(--muted);font-family:var(--font-serif);justify-content:space-between;margin:0 0 1rem 2.5rem;font-size:.8125rem;display:flex}.specimen__section{letter-spacing:.01em}.specimen__folio{font-variant-numeric:oldstyle-nums}.lines{margin:0;padding:0;list-style:none}.lines li{grid-template-columns:2.5rem minmax(0,1fr);align-items:baseline;display:grid}.lines__n{color:var(--muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;-webkit-user-select:none;user-select:none;padding-right:.9rem;font-size:.6875rem}.lines__text{white-space:nowrap}.lines--serif{font-family:var(--font-serif);font-size:.9375rem;line-height:1.8}.lines--code{font-family:var(--font-mono);font-size:.78rem;line-height:1.85}.lines--code .lines__text{white-space:pre}.sweep{background-color:#0000;background-image:linear-gradient(var(--k), var(--k));color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;background-repeat:no-repeat;background-size:100% 100%;border-radius:2px;margin:0 -.15em;padding:.12em .15em}.specimen__answer{z-index:1;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);max-width:25rem;box-shadow:var(--shadow-raised);flex-direction:column;gap:.7rem;margin:-2.25rem 0 0 -3rem;padding:1.1rem 1.25rem 1.2rem;display:flex;position:relative}.specimen__question{background:var(--accent-weak);max-width:90%;color:var(--ink);border-radius:10px 10px 3px;align-self:flex-end;margin:0;padding:.45rem .75rem;font-size:.875rem}.specimen__reply{font-family:var(--font-serif);margin:0;font-size:.9375rem;line-height:1.65}.specimen__reply code{font-size:.8em}.chapters{padding-bottom:var(--space-7)}.chapter,.privacy__inner{gap:var(--space-6) 5rem;grid-template-columns:minmax(0,27rem) minmax(0,1fr);align-items:center;display:grid}.chapter{padding-top:var(--space-7);padding-bottom:var(--space-7)}.chapter__text h2,.closing h2{letter-spacing:-.015em;margin:0 0 1.1rem;font-size:2.125rem;line-height:1.12}.chapter__text p,.closing p{max-width:34rem;color:var(--ink-2);font-family:var(--font-serif);font-size:var(--font-size-read);line-height:var(--line-height-read);text-wrap:pretty;margin:0 0 1rem}.chapter__figure{justify-self:end;width:100%;max-width:33rem}.vignette{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-raised);padding:1.5rem}.vignette__title{font-family:var(--font-serif);font-size:1.1875rem;font-weight:var(--font-weight-semibold);margin:0}.vignette__meta{color:var(--muted);font-size:var(--font-size-sm);margin:.15rem 0 1rem}.vignette__prose{font-family:var(--font-serif);margin:0;font-size:1rem;line-height:1.75}.vignette__file{color:var(--muted);font-family:var(--font-mono);margin:0;font-size:.75rem}.vignette--viewer{padding:0;overflow:hidden}.vignette--viewer .vignette__file{padding:.95rem 1.25rem .45rem}.vignette--viewer .lines{padding:0 1.25rem 1.25rem 0;overflow-x:auto}.mini-tabs{border-bottom:1px solid var(--line);padding:0 .6rem;display:flex;overflow:hidden}.mini-tabs__tab{color:var(--muted);font-size:var(--font-size-sm);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.7rem .6rem .6rem}.mini-tabs__tab.is-current{border-bottom-color:var(--hl-code-ink);color:var(--ink);font-weight:var(--font-weight-semibold)}.vignette__quote{border-left:2px solid var(--hl-paper-ink);font-family:var(--font-serif);margin:0 0 1rem;padding:.2rem 0 .2rem 1rem;font-size:1.0625rem}.note-card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.85rem 1rem}.note-card p{margin:0}.note-card p.note-card__head{align-items:center;gap:.6rem;margin-bottom:.35rem;display:flex}.note-card__who{color:var(--muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.note-card--reply{background:var(--accent-weak);border-color:#0000;margin:.6rem 0 0 2rem}.note-card--reply .note-card__who{color:var(--ink)}.diff{border:1px solid var(--line);border-radius:var(--radius-sm);font-family:var(--font-mono);margin-top:.6rem;font-size:.8125rem;overflow:hidden}.diff__line{white-space:pre-wrap;margin:0;padding:.55rem .85rem}.diff__line--del{background:var(--danger-weak);color:var(--danger)}.diff__line--add{background:var(--positive-weak);color:var(--positive)}.vignette__foot{color:var(--ink-2);font-size:var(--font-size-sm);align-items:center;gap:.55rem;margin:1rem 0 0;display:flex}.vignette__foot:before{content:"";border:2px solid var(--positive);border-radius:var(--radius-full);width:.6rem;height:.6rem}.privacy{background:var(--accent-weak)}.privacy__inner{padding-top:6rem;padding-bottom:6rem}.privacy .chapter__text p{color:var(--ink)}.vignette--manifest{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.manifest__head{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin:0 0 .6rem}.manifest__list{font-family:var(--font-mono);margin:0;padding:0;font-size:.8125rem;list-style:none}.manifest__list li{border-bottom:1px solid var(--line);align-items:center;gap:.6rem;padding:.45rem 0;display:flex}.manifest__list li:before{content:"";border-radius:2px;flex:none;width:.55rem;height:.55rem}.manifest__list--in li:before{background:var(--positive)}.manifest__list--out li{color:var(--muted)}.manifest__list--out li:before{border:1.5px solid var(--faint)}.closing{padding-top:7rem;padding-bottom:7rem}.closing h2,.closing p{max-width:34rem}.closing .button{margin-top:1rem}.site-footer{justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-5);padding-top:var(--space-5);padding-bottom:var(--space-6);border-top:1px solid var(--line);color:var(--muted);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.site-footer p{margin:0}.site-footer a{color:var(--ink-2)}@media (prefers-reduced-motion:no-preference){.specimen__answer{animation:rise .65s var(--easing-emphasized) .15s both}.specimen .sweep{animation:sweep .6s var(--easing-emphasized) both;animation-delay:calc(.75s + var(--step) * .24s)}.reveal{opacity:0;transition:opacity .7s var(--easing-emphasized) var(--reveal-delay,0s), transform .7s var(--easing-emphasized) var(--reveal-delay,0s);transform:translateY(16px)}.reveal.is-visible{opacity:1;transform:none}.reveal .sweep{transition:background-size .65s var(--easing-emphasized);transition-delay:calc(.45s + var(--step) * .24s);background-size:0% 100%}.reveal.is-visible .sweep{background-size:100% 100%}}@keyframes sweep{0%{background-size:0% 100%}to{background-size:100% 100%}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (width<=960px){.hero{grid-template-columns:minmax(0,1fr);gap:3.5rem;padding-top:2.5rem;padding-bottom:5rem}.hero h1{font-size:clamp(var(--font-size-display-phone), 7.2vw, var(--font-size-display))}.specimen{max-width:32rem}.specimen__answer{margin:-2rem 0 0 1.5rem}.chapter,.privacy__inner{gap:var(--space-6);grid-template-columns:minmax(0,1fr)}.chapter__figure{justify-self:start}.privacy__inner{padding-top:4.5rem;padding-bottom:4.5rem}}@media (width<=560px){.site-header,.hero,.chapters,.privacy__inner,.closing,.site-footer{padding-left:var(--space-4);padding-right:var(--space-4)}.hero__lede{font-size:1.125rem}.specimen__page{padding:1.1rem 1rem 1.25rem 0}.specimen__head{margin-left:2rem}.lines li{grid-template-columns:2rem minmax(0,1fr)}.lines__n{padding-right:.65rem}.lines--serif{font-size:.8125rem}.lines--code{font-size:.6875rem}.specimen__answer{margin:-1.5rem 0 0 .75rem;padding:1rem}.chapter{padding-top:var(--space-6);padding-bottom:var(--space-6)}.chapter__text h2,.closing h2{font-size:1.75rem}.chapter__text p,.closing p{font-size:var(--font-size-md)}.vignette{padding:1.15rem}.vignette--viewer{padding:0}.mini-tabs{-webkit-mask-image:linear-gradient(90deg,#000 80%,#0000);mask-image:linear-gradient(90deg,#000 80%,#0000)}.vignette--manifest{grid-template-columns:minmax(0,1fr)}.note-card--reply{margin-left:1rem}.closing{padding-top:4.5rem;padding-bottom:5rem}}
