:root{--cream: #F5F0E8;--ivory: #FAF8F4;--frost: #E8E2D8;--fawn: #D4CAB8;--chocolate: #3D2B1F;--charcoal: #2A1F16;--mocha: #7A6555;--mocha-light: #9E8E7E;--sapphire: #4A7C9B;--sapphire-deep: #3A6580;--sapphire-light: #6BA3C2;--sapphire-glow: rgba(74, 124, 155, .12);--rose: #C4878A;--snow: #FFFFFF;--line: color-mix(in srgb, var(--fawn) 70%, var(--frost));--paper-raised: color-mix(in srgb, var(--ivory) 60%, var(--snow));--ink-soft: color-mix(in srgb, var(--chocolate) 78%, var(--mocha));--sapphire-tint: color-mix(in srgb, var(--sapphire) 10%, var(--ivory));--night-line: color-mix(in srgb, var(--fawn) 14%, var(--charcoal));--night-text: color-mix(in srgb, var(--fawn) 82%, var(--charcoal));--font-display: "DM Serif Display", "Hoefler Text", Georgia, serif;--font-body: "DM Sans", "Helvetica Neue", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", ui-monospace, monospace;--measure: 62ch;--gutter: clamp(1.25rem, 4vw, 3.5rem);--section-space: clamp(4.5rem, 9vw, 8rem);--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--shadow-sm: 0 1px 3px rgba(42, 31, 22, .06);--shadow-md: 0 4px 12px rgba(42, 31, 22, .08);--shadow-lg: 0 24px 60px -28px rgba(42, 31, 22, .35)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body,h1,h2,h3,h4,p,ul,ol,figure,blockquote,pre{margin:0}ul[role=list],ol[role=list]{list-style:none;padding:0}img,svg{display:block;max-width:100%;height:auto}button{font:inherit}html{background:var(--cream);color:var(--chocolate);scrollbar-gutter:stable}body{font-family:var(--font-body);font-size:1.0625rem;line-height:1.6;color:var(--chocolate);background:var(--cream);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;inset:0;opacity:.035;pointer-events:none;z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px;mix-blend-mode:multiply}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;color:var(--charcoal);letter-spacing:-.01em;line-height:1.08}a{color:var(--sapphire-deep);text-decoration:none;transition:color .2s ease}a:hover{color:var(--charcoal)}:focus-visible{outline:2px solid var(--sapphire-deep);outline-offset:3px;border-radius:4px}::selection{background:var(--sapphire-glow);color:var(--sapphire-deep)}code{font-family:var(--font-mono);font-size:.86em;background:var(--frost);color:var(--chocolate);padding:.1em .38em;border-radius:var(--radius-sm);overflow-wrap:anywhere}.page{width:100%;max-width:1200px;margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}.skip-link{position:absolute;left:1rem;top:-4rem;z-index:10000;background:var(--charcoal);color:var(--cream);padding:.6rem 1rem;border-radius:var(--radius-sm)}.skip-link:focus{top:1rem;color:var(--cream)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.anchor-alias{position:absolute;top:0}.ink-eye{color:var(--sapphire)}.nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.4rem 0}.nav__mark{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-display);font-size:1.5rem;line-height:1;letter-spacing:-.01em;color:var(--charcoal)}.nav__mark:hover{color:var(--charcoal)}.nav__mark img{width:34px;height:34px;border-radius:50%;object-fit:cover;background:var(--ivory);box-shadow:0 0 0 1px var(--line)}.nav__links{display:flex;align-items:center;gap:.25rem;font-size:.94rem}.nav__links a{display:block;padding:.45rem .8rem;border-radius:999px;color:var(--ink-soft);transition:background .2s ease,color .2s ease}.nav__links a:hover{background:var(--frost);color:var(--charcoal)}@media(max-width:720px){.nav{flex-direction:column;align-items:flex-start;gap:.75rem;padding-bottom:.5rem}.nav__links{flex-wrap:wrap;gap:0;margin-left:-.5rem;font-size:.88rem}.nav__links a{padding:.35rem .5rem}}.hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.85fr);gap:2.5rem clamp(2.5rem,6vw,6rem);align-items:start;padding-top:clamp(1rem,3vw,2.25rem);padding-bottom:clamp(2rem,4vw,3rem)}.hero>*{min-width:0}.hero>.release-note{grid-column:1 / -1;justify-self:start;margin-bottom:-.5rem}.release-note{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.35rem .75rem;padding:.35rem .95rem .35rem .35rem;border:1px solid var(--line);border-radius:999px;background:var(--paper-raised);color:var(--chocolate);font-size:.88rem;line-height:1.4;box-shadow:var(--shadow-sm);transition:border-color .2s ease,box-shadow .2s ease}.release-note:hover{color:var(--chocolate);border-color:var(--sapphire-light);box-shadow:var(--shadow-md)}.release-note__badge{border-radius:999px;background:var(--sapphire-deep);color:var(--snow);padding:.18rem .65rem;font-weight:600;font-size:.8rem;font-variant-numeric:tabular-nums;letter-spacing:.02em}.release-note__more{color:var(--sapphire-deep);font-weight:500;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--sapphire) 40%,transparent);text-underline-offset:3px}.hero__title{font-size:clamp(2.5rem,4.7vw,4.15rem);line-height:1.03;letter-spacing:-.025em;max-width:16ch;text-wrap:balance}.hero__lede{margin-top:1.5rem;font-size:clamp(1.08rem,1.35vw,1.22rem);line-height:1.6;color:var(--ink-soft);max-width:54ch}.hero__install{margin-top:2rem;max-width:36rem}.cmd{display:flex;align-items:center;gap:.75rem;background:var(--charcoal);border-radius:var(--radius-md);padding:.5rem .5rem .5rem 1.1rem;box-shadow:var(--shadow-md)}.cmd__text{flex:1;min-width:0;background:none;padding:.45rem 0;color:var(--cream);font-size:.92rem;white-space:nowrap;overflow-x:auto;overflow-wrap:normal;scrollbar-width:none}.cmd__prompt{color:var(--mocha-light);user-select:none}.cmd__copy{flex:none;border:1px solid var(--night-line);background:color-mix(in srgb,var(--snow) 6%,var(--charcoal));color:var(--cream);font-size:.82rem;font-weight:500;padding:.4rem .8rem;border-radius:8px;cursor:pointer;transition:background .2s ease}.cmd__copy:hover{background:color-mix(in srgb,var(--snow) 14%,var(--charcoal))}.cmd__copy:focus-visible{outline-color:var(--sapphire-light)}.hero__then{margin-top:.8rem;font-size:.92rem;color:var(--mocha)}.hero__then code{font-size:.84em;white-space:nowrap}.hero__actions{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.75rem}.btn{display:inline-flex;align-items:center;gap:.55rem;min-height:2.9rem;padding:.7rem 1.3rem;border-radius:10px;font-weight:500;font-size:.98rem;line-height:1.2;transition:background .2s ease,border-color .2s ease,color .2s ease}.btn--primary{background:var(--sapphire-deep);color:var(--snow)}.btn--primary:hover{background:var(--charcoal);color:var(--snow)}.btn--ghost{border:1px solid var(--line);color:var(--charcoal);background:var(--paper-raised)}.btn--ghost:hover{border-color:var(--mocha-light);color:var(--charcoal)}.hero__platform{margin-top:1.5rem;font-size:.88rem;color:var(--mocha);max-width:54ch}.hero__portrait{justify-self:end;align-self:center;width:100%;max-width:420px}.hero__frame{position:relative;aspect-ratio:1 / 1;border-radius:var(--radius-lg);background:radial-gradient(circle at 50% 42%,var(--sapphire-glow),transparent 62%),var(--paper-raised);border:1px solid var(--line);box-shadow:var(--shadow-lg);overflow:hidden}.hero__frame img{width:100%;height:100%;object-fit:cover;transform:scale(1.04) translateY(2%);animation:breathe 8s ease-in-out infinite}.hero__portrait .caption{margin-top:1rem;text-align:center;font-family:var(--font-display);font-style:italic;font-size:1.02rem;color:var(--mocha)}.hero__portrait .caption span{color:var(--rose)}@keyframes breathe{0%,to{transform:scale(1.04) translateY(2%)}50%{transform:scale(1.04) translateY(1%)}}@media(max-width:900px){.hero{grid-template-columns:minmax(0,1fr);gap:2.25rem}.hero>.release-note{margin-bottom:0;border-radius:16px;padding:.5rem .9rem .6rem .5rem}.hero__portrait{justify-self:start;max-width:260px}.hero__portrait .caption{text-align:left}}.section{position:relative;padding-top:var(--section-space);padding-bottom:var(--section-space)}.section+.section:before{content:"";position:absolute;top:0;left:var(--gutter);right:var(--gutter);height:1px;background:var(--line)}.section__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem 4rem;align-items:end;margin-bottom:clamp(2.5rem,5vw,4rem)}.section__title{font-size:clamp(2rem,3.8vw,3.1rem);line-height:1.06;letter-spacing:-.02em;text-wrap:balance}.section__intro{color:var(--ink-soft);font-size:1.08rem;max-width:44ch}@media(max-width:800px){.section__head{grid-template-columns:minmax(0,1fr)}}.flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,3.5vw,3.5rem);counter-reset:none}.flow__step{position:relative;display:flex;flex-direction:column}.flow__visual{position:relative;height:15.5rem;display:grid;place-items:center;padding:1.5rem;border-radius:var(--radius-lg);background:var(--frost)}.flow__step:not(:last-child) .flow__visual:after{content:"";position:absolute;top:50%;right:calc(-.5*clamp(1.5rem,3.5vw,3.5rem) - .55rem);width:1.1rem;height:1.1rem;border-top:2px solid var(--sapphire);border-right:2px solid var(--sapphire);transform:translateY(-50%) rotate(45deg) scale(.7);z-index:1}.flow__copy{padding-top:1.5rem}.flow__num{display:inline-grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:50%;border:1.5px solid var(--sapphire);color:var(--sapphire-deep);font-weight:600;font-size:.9rem;font-variant-numeric:tabular-nums;margin-bottom:.9rem}.flow__copy h3{font-size:1.55rem;margin-bottom:.6rem}.flow__copy p{color:var(--ink-soft);font-size:1rem;max-width:38ch}.sheet{position:relative;width:min(100%,15rem);display:flex;flex-direction:column;gap:.2rem;padding:1rem 1.15rem 1.1rem;background:var(--snow);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:.78rem;color:var(--chocolate);box-shadow:0 0 0 1px var(--line),7px 7px 0 -1px var(--ivory),7px 7px 0 0 var(--line),14px 14px 0 -1px var(--ivory),14px 14px 0 0 var(--line);transform:translate(-7px,-7px)}.sheet__name{font-family:var(--font-body);font-weight:600;font-size:.82rem;color:var(--charcoal);padding-bottom:.45rem;margin-bottom:.3rem;border-bottom:1px solid var(--frost)}.sheet__meta{margin-top:.35rem;font-family:var(--font-body);font-style:italic;color:var(--mocha)}.folder{position:relative;width:min(100%,16rem);margin-top:1rem;padding:1.1rem 1.15rem 1rem;background:var(--snow);border-radius:4px var(--radius-md) var(--radius-md) var(--radius-md);box-shadow:0 0 0 1px var(--line),var(--shadow-sm);display:flex;flex-direction:column;gap:.2rem;font-family:var(--font-mono);font-size:.78rem}.folder__tab{position:absolute;bottom:100%;left:0;padding:.3rem .8rem .2rem;background:var(--snow);border-radius:var(--radius-sm) var(--radius-sm) 0 0;box-shadow:0 0 0 1px var(--line);clip-path:inset(-2px -2px 0 -2px);font-family:var(--font-body);font-weight:600;font-size:.8rem;color:var(--charcoal)}.folder__line:before{content:"├ ";color:var(--mocha-light)}.folder__line--dim{color:var(--mocha);font-style:italic}.folder__line--dim:before{content:"└ "}.folder__members{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.75rem;padding-top:.7rem;border-top:1px solid var(--frost)}.member{display:inline-flex;align-items:center;gap:.35rem;padding:.15rem .55rem .15rem .2rem;border-radius:999px;background:var(--sapphire-tint);color:var(--sapphire-deep);font-family:var(--font-body);font-size:.78rem;font-weight:500}.member:before{content:"";width:1.05rem;height:1.05rem;border-radius:50%;background:var(--sapphire);box-shadow:inset 0 0 0 3px var(--sapphire-tint)}.flow__visual--surfaces{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:.6rem}.surface{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.75rem 1rem;background:var(--snow);border-radius:var(--radius-md);box-shadow:0 0 0 1px var(--line)}.surface b{font-weight:600;font-size:.92rem;color:var(--charcoal)}.surface i{font-style:normal;font-family:var(--font-mono);font-size:.74rem;color:var(--mocha);white-space:nowrap}@media(max-width:900px){.flow{grid-template-columns:minmax(0,1fr);gap:3rem}.flow__step{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem;align-items:center}.flow__copy{padding-top:0}.flow__step:not(:last-child) .flow__visual:after{top:auto;right:auto;left:50%;bottom:-2.2rem;transform:translate(-50%) rotate(135deg) scale(.7)}}@media(max-width:600px){.flow__step{grid-template-columns:minmax(0,1fr);gap:1.25rem}.flow__visual{height:auto;min-height:13rem}.flow__step:not(:last-child) .flow__visual:after{display:none}}.session{background:var(--chocolate);color:var(--frost);padding:var(--section-space) 0}.session__inner{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(2.5rem,5vw,4rem)}.session__intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.25rem 4rem;align-items:end}.session .section__title{color:var(--cream);max-width:15ch}.session__notes p{color:var(--night-text);max-width:46ch}.session__notes p+p{margin-top:.8rem}.text-link{display:inline-block;margin-top:1.1rem;font-weight:500;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.session .text-link{color:var(--sapphire-light)}.session .text-link:hover{color:var(--cream)}.session :focus-visible{outline-color:var(--sapphire-light)}.terminal{min-width:0;background:var(--charcoal);border-radius:var(--radius-lg);box-shadow:0 0 0 1px var(--night-line),0 40px 80px -40px #0009;overflow:hidden}.terminal__bar{display:flex;align-items:center;gap:.45rem;padding:.85rem 1.1rem;border-bottom:1px solid var(--night-line)}.terminal__bar span{width:.7rem;height:.7rem;border-radius:50%;background:var(--night-line)}.terminal__bar em{margin-left:auto;margin-right:auto;transform:translate(-1.2rem);font-family:var(--font-mono);font-style:normal;font-size:.75rem;color:var(--mocha-light)}.terminal__body{padding:1.4rem 1.5rem 1.6rem;font-family:var(--font-mono);font-size:.84rem;line-height:1.75;color:var(--night-text);white-space:pre;overflow-x:auto;tab-size:2}.terminal__body code,.code code{background:none;padding:0;border-radius:0;font-size:inherit;color:inherit;overflow-wrap:normal}.t-p{color:var(--mocha-light);user-select:none}.t-c{color:var(--snow);font-weight:500}.t-f{color:var(--sapphire-light)}.t-o{color:var(--night-text)}.t-n{color:var(--mocha-light);font-style:italic}.t-a{color:var(--cream)}.terminal .t-o{color:var(--mocha-light)}.terminal .t-a{color:var(--frost)}@media(max-width:800px){.session__intro{grid-template-columns:minmax(0,1fr)}}@media(max-width:640px){.terminal__body{font-size:.72rem;padding:1.1rem 1rem 1.25rem;white-space:pre-wrap;overflow-wrap:anywhere}}.library{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(2.5rem,4vw,3.5rem) clamp(1.75rem,3.5vw,3.5rem)}.library__item{display:flex;flex-direction:column;padding-top:1.4rem;border-top:1px solid var(--line)}.library__title{font-size:1.45rem;line-height:1.15;margin-bottom:.65rem}.library__desc{color:var(--ink-soft);font-size:.98rem;line-height:1.6;max-width:40ch}.library__tells{padding-top:1rem;display:flex;flex-wrap:wrap;gap:.4rem}.library__tells code{font-size:.76rem;background:var(--sapphire-tint);color:var(--sapphire-deep);padding:.22rem .55rem}@media(max-width:960px){.library{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.library{grid-template-columns:minmax(0,1fr);gap:2.25rem}}.install{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:clamp(2rem,5vw,5rem);align-items:start}.install__intro .section__title{margin-bottom:1.25rem}.install__intro p{color:var(--ink-soft);max-width:46ch}.install__intro p+p{margin-top:1rem}.install__note{font-size:.94rem;color:var(--mocha)}.install__note a{text-decoration:underline;text-underline-offset:3px}.install-tabs{position:relative;min-width:0}.install-tabs__input{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}.install-tabs__nav{display:inline-flex;gap:.25rem;padding:.3rem;margin-bottom:.9rem;background:var(--frost);border-radius:999px}.install-tabs__tab{padding:.45rem 1rem;border-radius:999px;color:var(--ink-soft);cursor:pointer;font-size:.9rem;font-weight:500;line-height:1.2;white-space:nowrap;transition:background .2s ease,color .2s ease}.install-tabs__tab:hover{color:var(--charcoal)}#install-macos:checked~.install-tabs__nav label[for=install-macos],#install-npm:checked~.install-tabs__nav label[for=install-npm],#install-hackable:checked~.install-tabs__nav label[for=install-hackable]{background:var(--snow);color:var(--charcoal);box-shadow:var(--shadow-sm)}#install-macos:focus-visible~.install-tabs__nav label[for=install-macos],#install-npm:focus-visible~.install-tabs__nav label[for=install-npm],#install-hackable:focus-visible~.install-tabs__nav label[for=install-hackable]{outline:2px solid var(--sapphire-deep);outline-offset:2px}.install-tabs__panel{display:none}#install-macos:checked~.install-tabs__panels .install-tabs__panel--macos,#install-npm:checked~.install-tabs__panels .install-tabs__panel--npm,#install-hackable:checked~.install-tabs__panels .install-tabs__panel--hackable{display:block}.code{background:var(--charcoal);color:var(--night-text);border-radius:var(--radius-md);padding:1.25rem 1.4rem;font-family:var(--font-mono);font-size:.84rem;line-height:1.75;white-space:pre;overflow-x:auto;box-shadow:var(--shadow-md)}.code:focus-visible,.terminal__body:focus-visible{outline-color:var(--sapphire-light);outline-offset:-3px}@media(max-width:900px){.install{grid-template-columns:minmax(0,1fr)}}@media(max-width:520px){.cmd{flex-direction:column;align-items:stretch;gap:.35rem;padding:.75rem .6rem .6rem 1rem}.cmd__text{white-space:normal;overflow-wrap:break-word;font-size:.84rem;line-height:1.55;padding:0}.cmd__copy{align-self:flex-end}.install-tabs__nav{display:flex}.install-tabs__tab{flex:1;text-align:center;padding:.45rem .5rem;font-size:.84rem}.code{font-size:.74rem;padding:1rem;white-space:pre-wrap;overflow-wrap:anywhere}}.manifesto{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:1.5rem clamp(2rem,6vw,6rem);align-items:start}.manifesto .section__title{max-width:16ch}.manifesto__body{font-size:clamp(1.06rem,1.3vw,1.16rem);line-height:1.7;max-width:var(--measure)}.manifesto__body p+p{margin-top:1.1em}.manifesto__credit{padding-left:1.1rem;border-left:2px solid var(--sapphire);color:var(--mocha);font-size:.94rem;line-height:1.6}@media(max-width:800px){.manifesto{grid-template-columns:minmax(0,1fr)}}.dedication-band{background:var(--frost)}.dedication{text-align:center;padding-top:clamp(5rem,11vw,8.5rem);padding-bottom:clamp(5rem,11vw,8.5rem);max-width:calc(58ch + 2 * var(--gutter))}.dedication .glyph{font-family:var(--font-display);font-size:2.4rem;color:var(--rose);line-height:1;margin-bottom:1.75rem}.dedication p{font-family:var(--font-display);font-style:italic;font-size:clamp(1.15rem,1.7vw,1.4rem);line-height:1.6;color:var(--mocha);text-wrap:pretty}.dedication p+p{margin-top:1.1rem}.dedication strong{font-style:normal;font-weight:400;color:var(--charcoal)}.dedication .sig{margin-top:2.25rem;font-size:.86rem;letter-spacing:.04em;color:var(--mocha)}.footer{padding-top:3rem;padding-bottom:3.5rem;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:end}.footer__mark{font-family:var(--font-display);font-size:2.4rem;color:var(--charcoal);letter-spacing:-.02em;line-height:1}.footer__meta{font-size:.86rem;color:var(--mocha);display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.footer__row{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem}.footer__row a{color:var(--ink-soft)}.footer__row a:hover{color:var(--sapphire-deep)}.footer .imo{color:var(--rose);font-family:var(--font-display);font-style:italic;font-size:1.05em}@media(max-width:640px){.footer{grid-template-columns:minmax(0,1fr);align-items:start}.footer__meta{align-items:flex-start}.footer__mark{font-size:2rem}}[data-reveal]{opacity:0;transform:translateY(8px);animation:reveal .8s cubic-bezier(.2,.7,.2,1) forwards}[data-reveal="1"]{animation-delay:.05s}[data-reveal="2"]{animation-delay:.12s}[data-reveal="3"]{animation-delay:.22s}[data-reveal="4"]{animation-delay:.32s}[data-reveal="5"]{animation-delay:.42s}@keyframes reveal{to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-reveal]{opacity:1;transform:none;animation:none}.hero__frame img{animation:none}*,*:before,*:after{transition-duration:.01ms!important}}
