.heart[data-astro-cid-4zpm73wn]{fill:var(--bg)}:root{--bg:#eef5fb;--bg-raise:#fdfeff;--bg-sunk:#e4edf5;--ink:#1c1a23;--ink-2:#38405a;--ink-3:#414660;--line:#1c1a231a;--line-strong:#1c1a232e;--violet:#5e4691;--lavender:#8770b5;--petal:#eeebf8;--fill:#5e4691;--fill-hover:#4e3a7b;--on-fill:#fdfcff;--shade:60 90 130;--sky-1:#8fc8f0;--sky-2:#c1e1f7;--sky-3:#eef5fb;--sun:255 247 214;--grass-far:#b5da97;--grass-mid:#98ca78;--grass-near:#7db65f;--ground:#74ad57;--forest:#1f3a1c;--seed:142 158 182;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--gutter:clamp(1rem, 4vw, 3rem);--max:90rem;color-scheme:light;interpolate-size:allow-keywords}:root[data-theme=dark]{color-scheme:dark;--bg:#0d1120;--bg-raise:#161b2c;--bg-sunk:#080b16;--ink:#eeecf4;--ink-2:#a8a4b5;--ink-3:#9da4c4;--line:#eeecf417;--line-strong:#eeecf429;--violet:#c3aef0;--lavender:#a58fd6;--petal:#241e31;--fill:#b49be1;--fill-hover:#c7b3ee;--on-fill:#17131f;--shade:0 0 0;--sky-1:#04060e;--sky-2:#0a0f27;--sky-3:#161c3e;--sun:226 222 255;--grass-far:#1d3a2b;--grass-mid:#183324;--grass-near:#132a1d;--ground:#102419;--forest:#cfe6c6;--seed:220 224 240}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;overflow-x:clip}body{background:var(--bg);color:var(--ink);font:400 1.0625rem/1.6 var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;position:relative;overflow-x:clip}h1,h2,h3{font-family:var(--font-serif);letter-spacing:-.03em;text-wrap:balance;margin:0;font-weight:400;line-height:1.02}h2{font-size:clamp(2.5rem,1.5rem + 4vw,5.25rem)}h1 em,h2 em,h3 em{color:var(--violet);letter-spacing:-.035em;font-style:italic}p{text-wrap:pretty;margin:0}a{color:var(--violet);text-underline-offset:.18em}:focus-visible{outline:2px solid var(--violet);outline-offset:3px;border-radius:6px}::selection{background:var(--petal);color:var(--ink)}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.wrap{width:100%;max-width:var(--max);padding:0 var(--gutter);margin:0 auto}.lede{color:var(--ink-2);max-width:38rem;font-size:clamp(1.05rem,1rem + .35vw,1.25rem);line-height:1.55}.dot{background:var(--lavender);border-radius:50%;width:.17em;height:.17em;margin-left:.04em;display:inline-block}.sky{z-index:-2;background:linear-gradient(180deg, var(--sky-1) 0%, var(--sky-2) 42%, var(--sky-3) 92%);position:fixed;inset:0}[data-theme=dark] .sky:after{content:"";opacity:.8;background:radial-gradient(1px 1px at 12% 18%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 27% 8%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 41% 23%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 58% 12%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 69% 31%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 83% 9%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 92% 26%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 6% 37%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 35% 41%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 76% 47%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 19% 55%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 52% 58%,#fff 50%,#0000 51%);position:absolute;inset:0}.air{z-index:-1;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}main{position:relative}section[id]{scroll-margin-top:8rem}.top-sentinel{pointer-events:none;width:1px;height:24px;position:absolute;top:0;left:0}.skip{z-index:30;background:var(--ink);color:var(--bg);border-radius:10px;padding:.6rem 1rem;position:absolute;top:-4rem;left:1rem}.skip:focus{top:1rem}.nav{z-index:20;padding:.75rem var(--gutter);pointer-events:none;position:fixed;inset:0 0 auto}.nav-inner{pointer-events:auto;max-width:calc(var(--max) - 2 * var(--gutter));min-height:3.5rem;transition:background-color .4s var(--ease-out), border-color .4s var(--ease-out), box-shadow .4s var(--ease-out);border:1px solid #0000;border-radius:2rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.25rem .5rem;margin:0 auto;padding:.3rem .5rem .3rem .9rem;display:flex;position:relative}.nav.scrolled .nav-inner{background:color-mix(in oklab, var(--bg) 72%, transparent);border-color:var(--line);box-shadow:0 10px 30px -18px rgb(var(--shade) / .35);-webkit-backdrop-filter:blur(18px)saturate(160%)}@media (prefers-reduced-transparency:reduce){.nav.scrolled .nav-inner{background:var(--bg);backdrop-filter:none}}.wordmark{min-height:2.75rem;color:var(--ink);font:600 1.45rem/1 var(--font-sans);letter-spacing:-.04em;align-items:center;gap:.5rem;width:fit-content;text-decoration:none;display:inline-flex}.wordmark-flower{width:1.6rem;height:1.6rem;color:var(--lavender)}.nav-links{gap:.25rem;display:flex;position:absolute;left:50%;translate:-50%}.nav-links a{min-height:2.75rem;color:var(--ink-2);border-radius:999px;align-items:center;padding:.5rem .85rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .2s,background-color .2s;display:inline-flex}.nav-end{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;min-width:0;margin-inline-start:auto;display:flex}.nav-explore{display:none}.nav-explore summary{cursor:pointer;width:2.75rem;min-height:2.75rem;color:var(--ink-2);border-radius:50%;place-items:center;list-style:none;display:grid}.nav-explore summary::-webkit-details-marker{display:none}.nav-explore[open] summary{background:var(--petal);color:var(--violet)}.nav-explore nav{width:min(18rem, calc(100vw - 2 * var(--gutter)));background:var(--bg-raise);box-shadow:0 16px 36px -14px rgb(var(--shade) / .5);border-radius:16px;padding:.5rem;position:absolute;top:calc(100% + .5rem);right:0}.nav-explore a{min-height:2.75rem;color:var(--ink);border-radius:8px;align-items:center;padding:.5rem .75rem;text-decoration:none;display:flex}.nav-explore a:hover{background:var(--petal)}.nav-explore .source-link{border-top:1px solid var(--line);color:var(--violet);margin-top:.25rem}.theme-toggle{cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.theme-toggle span{transition:rotate .5s var(--ease-out), scale .3s var(--ease-out);display:grid}.theme-toggle .to-light,[data-theme=dark] .theme-toggle .to-dark{display:none}[data-theme=dark] .theme-toggle .to-light{display:grid}@media (hover:hover) and (pointer:fine){.theme-toggle:hover span{rotate:20deg}}.theme-toggle:active span{scale:.85}::view-transition-old(root),::view-transition-new(root){mix-blend-mode:normal;animation:none}.icon-link{width:2.75rem;height:2.75rem;color:var(--ink-2);border-radius:999px;flex:none;place-items:center;transition:color .2s,background-color .2s;display:grid}@media (hover:hover) and (pointer:fine){.nav-links a:hover,.icon-link:hover{color:var(--ink);background:var(--line)}}@media (width<=60rem){.nav-links,.github-link{display:none}.nav-explore{display:block}.nav-inner{padding-inline:.5rem}.nav-end{gap:.25rem}.wordmark{gap:.35rem;font-size:1.3rem}}.button{text-align:center;max-width:100%;min-height:3.25rem;font:500 1rem/1.2 var(--font-sans);cursor:pointer;transition:background-color .2s ease, border-color .2s ease, box-shadow .25s ease, transform .16s var(--ease-out);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.6rem;padding:.8rem 1.6rem;text-decoration:none;display:inline-flex}.button:active{transform:scale(.97)}.button.small{min-height:2.75rem;padding:.5rem 1rem;font-size:.92rem}.button.primary{background:var(--fill);color:var(--on-fill);box-shadow:0 1px 0 #fff3 inset, 0 10px 26px -12px rgb(var(--shade) / .7)}.button.ghost{color:var(--ink);border-color:var(--line-strong);background:color-mix(in oklab, var(--bg-raise) 60%, transparent)}@media (hover:hover) and (pointer:fine){.button.primary:hover{background:var(--fill-hover)}.button.ghost:hover{border-color:var(--ink-3);background:var(--bg-raise)}}[data-split]>div{margin:0 -.08em -.14em;padding:0 .08em .14em}.os:not(.os-other),[data-os] .os{display:none}[data-os=mac] .os-mac,[data-os=windows] .os-windows,[data-os=linux] .os-linux,[data-os=other] .os-other{display:inline-flex}.footer{background:var(--ground);color:var(--forest);margin-top:clamp(6rem,12vw,10rem);padding:2.5rem 0 0;position:relative}.footer-meadow{pointer-events:none;width:100%;height:clamp(6rem,14vw,11rem);position:absolute;bottom:100%;left:0;right:0}.footer-inner{max-width:var(--max);padding:0 var(--gutter);flex-wrap:wrap;justify-content:space-between;gap:1.5rem 3rem;margin:0 auto;display:flex;position:relative}.footer-line{max-width:30rem;font-size:.95rem}.footer a{color:var(--forest)}.footer ul{flex-wrap:wrap;gap:.5rem 1.75rem;margin:0;padding:0;list-style:none;display:flex}.footer li a{align-items:center;min-width:2.75rem;min-height:2.75rem;font-size:.95rem;font-weight:500;text-decoration:none;display:inline-flex}.footer :focus-visible{outline-color:var(--forest)}@media (hover:hover) and (pointer:fine){.footer li a:hover{text-decoration:underline}}.footer-mark{text-align:center;height:.62em;color:var(--forest);font:600 clamp(6rem, 29vw, 30rem)/.74 var(--font-sans);letter-spacing:-.07em;opacity:.92;margin:2rem 0 0;position:relative;overflow:hidden}.footer-mark .dot{background:var(--lavender)}
