:root{--haze:#e6ebe8;--page:#fafbf8;--ink:#22302c;--moss:#53695f;--lamp:#e9a93a;--lamp-ink:#2b2208;--lamp-text:#8f600c;--line:#c9d3ce;--wash:#dde4e0;--danger:#a3402f;--serif:"Literata",Georgia,serif;--sans:"Atkinson Hyperlegible",system-ui,sans-serif;--step--1:0.875rem;--step-0:1.0625rem;--step-1:1.375rem;--step-2:1.875rem;--step-3:clamp(2.25rem,4vw + 1rem,3.75rem);--radius-sm:6px;--radius:14px;--gutter:clamp(16px,4vw,48px);color-scheme:light}@media (prefers-color-scheme:dark){:root{--haze:#161d1b;--page:#1d2522;--ink:#e4ebe7;--moss:#9fb3aa;--lamp:#f0b955;--lamp-ink:#241b05;--lamp-text:#f0b955;--line:#34413c;--wash:#26302c;--danger:#e98a78;color-scheme:dark}}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#e6ebe8;background:var(--haze);color:#22302c;color:var(--ink);font-family:Atkinson Hyperlegible,system-ui,sans-serif;font-family:var(--sans);font-size:1.0625rem;font-size:var(--step-0);line-height:1.55}h1,h2,h3{text-wrap:balance;font-family:Literata,Georgia,serif;font-family:var(--serif);font-weight:500;line-height:1.15;margin:0}p{text-wrap:pretty;margin:0}button,input,textarea{color:inherit;font:inherit}:focus-visible{outline:2px solid #e9a93a;outline:2px solid var(--lamp);outline-offset:3px}::selection{background:#e9a93a;background:var(--lamp);color:#2b2208;color:var(--lamp-ink)}.site-header{align-items:center;display:flex;gap:16px;justify-content:space-between;padding:20px clamp(16px,4vw,48px);padding:20px var(--gutter)}.wordmark{color:#22302c;color:var(--ink);font-family:Literata,Georgia,serif;font-family:var(--serif);font-size:1.375rem;font-size:var(--step-1);font-weight:600;letter-spacing:-.01em;text-decoration:none}.site-nav{align-items:center;display:flex;gap:24px}.site-nav a{color:#53695f;color:var(--moss);font-size:.875rem;font-size:var(--step--1);text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:#22302c;color:var(--ink);text-decoration:underline;text-underline-offset:4px}.btn{align-items:center;border:1px solid #0000;border-radius:999px;cursor:pointer;display:inline-flex;font-size:.875rem;font-size:var(--step--1);font-weight:700;gap:8px;justify-content:center;min-height:46px;padding:0 22px;text-decoration:none;transition:background-color .15s ease,border-color .15s ease;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.45}.btn-primary{background:#22302c;background:var(--ink);color:#fafbf8;color:var(--page)}.btn-primary:hover:not(:disabled){background:#53695f;background:var(--moss)}.btn-quiet{background:#0000;border-color:#c9d3ce;border-color:var(--line);color:#22302c;color:var(--ink)}.btn-quiet:hover:not(:disabled){border-color:#22302c;border-color:var(--ink)}.visually-hidden{clip:rect(0 0 0 0);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-delay:0ms!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}.home{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.home-main{grid-gap:clamp(40px,7vw,120px);align-items:center;display:grid;flex:1 1;gap:clamp(40px,7vw,120px);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);margin:0 auto;max-width:1200px;padding:clamp(24px,6vh,80px) var(--gutter) clamp(48px,10vh,120px);width:100%}.home-title{font-size:var(--step-3);font-weight:400;letter-spacing:-.02em;line-height:1.05;max-width:16ch}.home-title .word{display:inline-block;white-space:nowrap}.letter-animate{animation:clearBlur .6s forwards;display:inline-block;filter:blur(8px);opacity:0}@keyframes clearBlur{to{filter:blur(0);opacity:1}}.home-lede{color:var(--moss);font-size:var(--step-1);line-height:1.45;margin-top:24px;max-width:34ch}.home-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}.contents{background:var(--page);border-radius:var(--radius-sm);box-shadow:0 1px 0 var(--line),0 24px 48px -32px #22302c73;padding:clamp(28px,4vw,48px)}.contents-heading{color:var(--moss);font-size:var(--step-1);font-style:italic;font-weight:400;margin-bottom:24px}.contents-list{font-family:var(--serif);font-size:var(--step-0);list-style:none;margin:0;padding:0}.contents-row{grid-gap:8px;align-items:last baseline;display:grid;gap:8px;grid-template-columns:2.5em minmax(0,max-content) minmax(24px,1fr) auto;padding:10px 0}.contents-num{font-feature-settings:"onum";color:var(--moss);font-size:var(--step--1);font-variant-numeric:oldstyle-nums}.contents-title{color:var(--ink)}.contents-leader{border-bottom:2px dotted var(--line);transform:translateY(-4px)}.contents-page{font-feature-settings:oldstyle-nums tabular-nums;color:var(--moss);font-variant-numeric:oldstyle-nums tabular-nums}.contents-next .contents-title{font-style:italic;text-decoration:underline;text-decoration-color:var(--lamp);text-decoration-thickness:2px;text-underline-offset:6px}.contents-next .contents-title:hover{color:var(--moss)}.contents-next .contents-page{color:var(--lamp-text);font-weight:600}.contents-note{border-top:1px solid var(--wash);color:var(--moss);font-size:var(--step--1);margin-top:28px;max-width:44ch;padding-top:20px}@media (max-width:860px){.home-main{align-items:start;grid-template-columns:1fr}.home-title{max-width:14ch}}@media (max-width:480px){.home-actions .btn{flex:1 1 100%}.contents-row{grid-template-columns:2em minmax(0,max-content) minmax(12px,1fr) auto}}.about-main{margin:0 auto;max-width:720px;padding:clamp(32px,8vh,96px) var(--gutter) 64px;width:100%}.about-hero h1{font-size:var(--step-3);font-weight:400;letter-spacing:-.02em;line-height:1.05}.about-lede{color:var(--moss);font-size:var(--step-1);line-height:1.45;margin-top:24px;max-width:36ch}.about-section{margin-top:clamp(56px,10vh,96px)}.about-section h2{font-size:var(--step-2);margin-bottom:24px}.steps{grid-gap:4px;display:grid;gap:4px;list-style:none;margin:0;padding:0}.step{grid-gap:16px;background:var(--page);border-radius:var(--radius-sm);display:grid;gap:16px;grid-template-columns:44px 1fr;padding:20px}.step-num{border:1px solid var(--line);border-radius:50%;color:var(--moss);display:grid;font-family:var(--serif);font-style:italic;height:36px;place-items:center;width:36px}.step:first-child{border-radius:var(--radius) var(--radius) var(--radius-sm) var(--radius-sm)}.step:last-child{border-radius:var(--radius-sm) var(--radius-sm) var(--radius) var(--radius)}.step:last-child .step-num{background:var(--lamp);border-color:var(--lamp);color:var(--lamp-ink)}.step h3{font-size:var(--step-1);margin:4px 0 6px}.step p{color:var(--moss);max-width:54ch}.prose p{font-family:var(--serif);font-size:1.125rem;line-height:1.75;max-width:62ch}.prose p+p{margin-top:1.1em}.founder .btn{margin-top:32px}.signup{background:var(--ink);border-radius:var(--radius);color:var(--page);margin-top:clamp(64px,12vh,120px);padding:clamp(28px,5vw,48px)}.signup h2{font-size:var(--step-2)}.signup>p{color:color-mix(in srgb,var(--page) 75%,#0000);margin-top:8px}.signup-form{background:var(--page);border-radius:999px;display:flex;gap:8px;margin-top:24px;padding:6px}.signup-input{background:#0000;border:none;color:var(--ink);flex:1 1;font-size:var(--step-0);min-width:0;padding:0 16px}.signup-input::placeholder{color:var(--moss)}.signup-input:focus-visible{outline:none}.signup-form:focus-within{outline:2px solid var(--lamp);outline-offset:3px}.signup .btn-primary{background:var(--lamp);color:var(--lamp-ink)}.signup .btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--lamp) 85%,var(--page))}.signup-status{font-size:var(--step--1);margin-top:12px;min-height:1.5em}.signup-status.error{color:#f2a796}.signup-status.success{color:var(--lamp)}@media (prefers-color-scheme:dark){.signup{background:var(--wash);color:var(--ink)}.signup>p{color:var(--moss)}.signup-form{background:var(--haze)}.signup-status.error{color:var(--danger)}}.about-footer{color:var(--moss);font-size:var(--step--1);margin:0 auto;max-width:720px;padding:24px var(--gutter) 48px}@media (max-width:520px){.signup-form{border-radius:var(--radius);flex-direction:column;padding:8px}.signup-input{min-height:46px}.step{gap:8px;grid-template-columns:1fr}}.chat{background:var(--page);display:flex;flex-direction:column;height:100vh;height:100dvh}.chat-header{grid-gap:12px;align-items:center;border-bottom:1px solid var(--wash);display:grid;gap:12px;grid-template-columns:1fr auto 1fr;padding:12px var(--gutter)}.chat-status{color:var(--moss);font-family:var(--serif);font-size:var(--step--1);font-style:italic}.chat-close{justify-self:end;min-height:40px}.chat-scroll{flex:1 1;overflow-y:auto;overscroll-behavior:contain}.chat-column{margin:0 auto;max-width:680px;padding:clamp(24px,6vh,56px) var(--gutter) 32px}.chat-empty{padding-top:clamp(0px,8vh,80px)}.chat-empty h1{font-size:var(--step-3);font-weight:400;letter-spacing:-.02em}.chat-empty p{color:var(--moss);margin-top:16px;max-width:46ch}.suggestions{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:32px 0 0;padding:0}.suggestion{background:#0000;border:1px solid var(--line);border-radius:999px;color:var(--ink);cursor:pointer;font-size:var(--step--1);padding:10px 16px;transition:border-color .15s ease,background-color .15s ease}.suggestion:hover{background:var(--haze);border-color:var(--moss)}.messages{display:flex;flex-direction:column;gap:28px;list-style:none;margin:0;padding:0}.message{overflow-wrap:anywhere;white-space:pre-wrap}.message-ai{font-family:var(--serif);font-size:1.125rem;line-height:1.7;max-width:62ch}.message-user{align-self:flex-end;background:var(--haze);border-radius:var(--radius) var(--radius) var(--radius-sm) var(--radius);max-width:min(85%,52ch);padding:12px 18px}.message-error{border-left:2px solid var(--danger);color:var(--danger);font-size:var(--step--1);padding-left:14px}.message-user+.message-ai,.message-user+.message-error{margin-top:4px}.typing{display:flex;gap:6px;padding:10px 0}.typing span{animation:typingPulse 1.2s ease-in-out infinite;background:var(--moss);border-radius:50%;height:7px;width:7px}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes typingPulse{0%,80%,to{opacity:.25}40%{opacity:1}}.chapter-summary{animation:summaryIn .4s ease-out;background:var(--haze);border-radius:0 0 var(--radius-sm) var(--radius-sm);border-top:3px solid var(--lamp);margin-top:48px;padding:clamp(24px,4vw,36px)}.chapter-summary h2{color:var(--moss);font-size:var(--step-1);font-style:italic;font-weight:400}.chapter-summary p{font-family:var(--serif);font-size:1.125rem;line-height:1.75;margin-top:16px;white-space:pre-wrap}.chapter-summary.is-error{border-top-color:var(--danger)}.chapter-summary.is-error p{font-family:var(--sans);font-size:var(--step-0)}.chapter-summary-footer{align-items:center;border-top:1px solid var(--line);color:var(--moss);display:flex;flex-wrap:wrap;font-size:var(--step--1);gap:16px;justify-content:space-between;margin-top:28px;padding-top:20px}@keyframes summaryIn{0%{opacity:0;transform:translateY(8px)}}.composer{background:var(--page);border-top:1px solid var(--wash);padding:12px var(--gutter) max(12px,env(safe-area-inset-bottom))}.composer-form{align-items:flex-end;background:var(--haze);border:1px solid #0000;border-radius:24px;display:flex;gap:8px;margin:0 auto;max-width:680px;padding:6px 6px 6px 18px;transition:border-color .15s ease}.composer-form:focus-within{border-color:var(--moss)}.composer-input{background:#0000;border:none;flex:1 1;font-size:1rem;line-height:1.5;max-height:200px;min-width:0;padding:9px 0;resize:none}.composer-input::placeholder{color:var(--moss)}.composer-input:focus-visible{outline:none}.composer-send{background:var(--lamp);border:none;border-radius:50%;color:var(--lamp-ink);cursor:pointer;display:grid;flex:none;height:42px;place-items:center;transition:opacity .15s ease;width:42px}.composer-send:disabled{background:var(--line);color:var(--moss);cursor:not-allowed}.composer-hint{color:var(--moss);font-size:.75rem;margin:8px auto 0;max-width:680px;text-align:center}@media (max-width:600px){.chat-header{grid-template-columns:1fr auto}.chat-status,.composer-hint{display:none}}
/*# sourceMappingURL=main.fe582102.css.map*/