@font-face{font-family:Newsreader Variable;font-style:normal;font-display:optional;font-weight:200 800;src:url(./newsreader-latin-opsz-normal.s-izfB6B.woff2)format("woff2-variations");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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(./newsreader-latin-opsz-italic.kJKFiXvB.woff2)format("woff2-variations");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:Instrument Sans Variable;font-style:normal;font-display:optional;font-weight:400 700;src:url(./instrument-sans-latin-wght-normal.BbzFLZTg.woff2)format("woff2-variations");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}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a0f0d;--bg-raised:#101713;--bg-sunken:#060907;--text:#e6eee9;--text-dim:#8fa398;--text-faint:#74867c;--text-on-invert:#0a0f0d;--accent:#6fe3b0;--accent-strong:#8ff0c6;--accent-deep:#173b2d;--accent-line:#234a3a;--line:#1c2620;--line-strong:#2a3830;--warn:#e0b56f;--shadow-panel:0 1px 0 #6fe3b00a, 0 12px 32px -16px #0009;--r-sm:6px;--r-md:10px;--font-display:"Newsreader Variable", Georgia, serif;--font-body:"Instrument Sans Variable", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono Variable", ui-monospace, SFMono-Regular, monospace;--maxw:1000px;--gutter:clamp(1.25rem, 3vw, 2.5rem);--section-gap:clamp(5rem, 10vw, 8.5rem)}@media (prefers-color-scheme:light){:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f2f6f4;--bg-raised:#fff;--bg-sunken:#e6ece9;--text:#121a16;--text-dim:#4a5c52;--text-faint:#7a8c82;--text-on-invert:#f2f6f4;--accent:#0f7a4f;--accent-strong:#0a5c3b;--accent-deep:#d5efe3;--accent-line:#b0d4c2;--line:#d5e0da;--line-strong:#b8c9bf;--warn:#9a6b1c;--shadow-panel:0 1px 0 #0f7a4f0f, 0 12px 32px -16px #121a162e}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1.5rem}body{font:400 1rem/1.65 var(--font-body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0}h1{font-family:var(--font-display);letter-spacing:-.02em;font-variation-settings:"opsz" 72;color:var(--text);margin:0;padding-bottom:.08em;font-size:clamp(3rem,6vw,5rem);font-style:italic;font-weight:500;line-height:1.05}h2{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text);margin:0 0 1rem;font-size:clamp(1.75rem,3vw,2.5rem);font-weight:500;line-height:1.15}h2 em{color:var(--accent);font-style:italic}h3{font:600 1.0625rem/1.4 var(--font-body);color:var(--text);margin:0 0 .75rem}h3 code{font-family:var(--font-mono);color:var(--accent);font-size:.9375rem;font-weight:500}p{color:var(--text-dim);margin:0 0 1rem}p:last-child{margin-bottom:0}p strong,li strong{color:var(--text);font-weight:600}code,pre{font-family:var(--font-mono);font-size:.875rem;font-weight:400;line-height:1.7}p code,li code{color:var(--accent);background:var(--accent-deep);border-radius:4px;padding:.1em .35em;font-size:.8125rem}a{color:var(--accent);text-decoration:none;transition:color .12s}.prose a,.section-lede a{text-underline-offset:.14em;text-decoration:underline;text-decoration-thickness:from-font}a:hover{color:var(--accent-strong)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.shell{box-sizing:border-box;width:100%;max-width:var(--maxw);padding-inline:var(--gutter);margin-inline:auto}.eyebrow{font:500 .6875rem/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem;display:block}.caption{font:400 .75rem/1.5 var(--font-mono);color:var(--text-faint)}.btn{border-radius:var(--r-sm);height:40px;font:500 .875rem/1 var(--font-body);white-space:nowrap;align-items:center;padding-inline:1.125rem;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.btn--primary{background:var(--accent);color:var(--text-on-invert);border:1px solid var(--accent)}.btn--primary:hover{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--text-on-invert)}.btn--ghost{color:var(--text);border:1px solid var(--line-strong);background:0 0}.btn--ghost:hover{border-color:var(--accent-line);color:var(--accent)}.btn-row{flex-wrap:wrap;gap:.75rem;margin-top:1.75rem;display:flex}.docs-main{padding-block:2rem 4rem}.docs-main section{padding-block:calc(var(--section-gap) / 2)}.docs-main section+section{border-top:1px solid var(--line)}.section-header{max-width:none;margin-bottom:2.5rem}.section-header h2{margin-bottom:.75rem}.section-lede{max-width:none;color:var(--text-dim);margin:0 0 1.25rem}.section-stack{flex-direction:column;gap:3.5rem;display:flex}.demo-section .demo-block:nth-child(2n){transform:none}.prose{max-width:none}.prose p{color:var(--text-dim);max-width:none;margin:0 0 1rem}.prose p:last-child{margin-bottom:0}.prose strong{color:var(--text);font-weight:600}.prose ul{color:var(--text-dim);margin:0 0 1rem;padding-left:1.25rem}.prose ul:last-child{margin-bottom:0}.prose li{margin:.35rem 0}.prose li code{color:var(--accent)}.doc-subhead{font:600 1.125rem/1.35 var(--font-body);letter-spacing:-.01em;color:var(--text);margin:2rem 0 .75rem}.strategy{flex-direction:column;gap:1.25rem;display:flex}.strategy>.prose{margin-bottom:.15rem}.strategy>p{max-width:none;margin:0}.scroll-hint{border:1px dashed var(--line);border-radius:var(--r-md);height:55vh;color:var(--text-faint);font:400 .8125rem/1.5 var(--font-mono);text-align:center;place-items:center;margin-bottom:1.5rem;padding:2rem;display:grid}@media (width<=1099px){.docs-main{padding-top:.75rem;padding-bottom:2.5rem}.docs-main>section:first-child{padding-top:.75rem}}@media (width<=1200px){.demo-section .demo-block:nth-child(2n){transform:none}}@media (width<=1023px){.demo-section .demo-block:nth-child(2n){transform:none}}:root{--side-w:16.75rem;--side-gap:.85rem;--side-bar-h:calc(3.25rem + env(safe-area-inset-bottom,0px))}.side-backdrop.svelte-1il4ztj{display:none}.side.svelte-1il4ztj{z-index:50;width:var(--side-w);top:var(--side-gap);bottom:var(--side-gap);left:var(--side-gap);border:1px solid color-mix(in srgb, var(--accent-line) 55%, var(--line));background:linear-gradient(165deg, color-mix(in srgb, var(--accent-deep) 28%, transparent) 0%, transparent 42%), color-mix(in srgb, var(--bg-raised) 92%, transparent);box-shadow:var(--shadow-panel), inset 0 1px 0 color-mix(in srgb, var(--accent) 8%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.15);border-radius:14px;flex-direction:column;gap:.85rem;padding:.85rem .55rem .9rem .7rem;display:flex;position:fixed}.side-brand.svelte-1il4ztj{border-bottom:1px solid color-mix(in srgb, var(--accent-line) 40%, var(--line));flex-shrink:0;align-items:center;gap:.35rem;padding:.2rem .4rem .75rem;display:flex}.side-logo.svelte-1il4ztj{min-width:0;color:var(--accent);align-items:center;gap:.55rem;text-decoration:none;display:inline-flex}.side-logo-mark.svelte-1il4ztj{background:color-mix(in srgb, var(--accent-deep) 70%, transparent);width:1.75rem;height:1.75rem;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent-line) 70%, transparent);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.side-logo-word.svelte-1il4ztj{color:var(--text);font-family:var(--font-display);letter-spacing:-.02em;font-variation-settings:"opsz" 28;padding-bottom:.06em;font-size:1.2rem;font-style:italic;font-weight:500;line-height:1}.side-github.svelte-1il4ztj{width:2rem;height:2rem;color:var(--text-faint);border:1px solid #0000;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;transition:color .16s,background .16s,border-color .16s;display:inline-flex}.side-github.svelte-1il4ztj:hover{color:var(--text);background:color-mix(in srgb, var(--accent-deep) 45%, transparent);border-color:color-mix(in srgb, var(--accent-line) 55%, transparent)}.side-scroll.svelte-1il4ztj{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;flex-direction:column;flex:1;gap:1.15rem;min-height:0;padding:.1rem .2rem .35rem .05rem;display:flex;overflow:hidden auto}.side-cat.svelte-1il4ztj+.side-cat:where(.svelte-1il4ztj){border-top:1px solid color-mix(in srgb, var(--accent-line) 35%, var(--line));padding-top:.85rem}.side-cat-toggle.svelte-1il4ztj{width:100%;color:var(--text-dim);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .45rem;transition:color .16s,background .16s;display:flex}.side-cat-label.svelte-1il4ztj{font:600 .6875rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.side-cat-toggle.svelte-1il4ztj:hover{color:var(--text);background:color-mix(in srgb, var(--accent-deep) 32%, transparent)}.side-cat.is-current.svelte-1il4ztj .side-cat-toggle:where(.svelte-1il4ztj){color:var(--accent)}.side-chevron.svelte-1il4ztj{opacity:.85;flex-shrink:0;width:14px;height:14px;transition:transform .2s cubic-bezier(.23,1,.32,1);display:block;transform:rotate(-90deg)translateY(.5px)}.side-cat-toggle.svelte-1il4ztj:hover .side-chevron:where(.svelte-1il4ztj),.side-cat.is-current.svelte-1il4ztj .side-cat-toggle:where(.svelte-1il4ztj) .side-chevron:where(.svelte-1il4ztj){opacity:1}.side-chevron.is-open.svelte-1il4ztj{transform:rotate(0)}.side-cat-panel.svelte-1il4ztj{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .28s cubic-bezier(.23,1,.32,1),opacity .2s;display:grid}.side-cat-panel.is-open.svelte-1il4ztj{opacity:1;grid-template-rows:1fr}.side-cat-panel.is-instant.svelte-1il4ztj{transition:none}.side-cat-panel-inner.svelte-1il4ztj{min-height:0;overflow:hidden}@media (prefers-reduced-motion:reduce){.side-cat-panel.svelte-1il4ztj{transition:none}}.side-links.svelte-1il4ztj{margin-top:.35rem}.side-list.svelte-1il4ztj{flex-direction:column;gap:.1rem;margin:0;padding:0;list-style:none;display:flex}.side-list.svelte-1il4ztj>li:where(.svelte-1il4ztj):has(.side-link--sub:where(.svelte-1il4ztj))+li:where(.svelte-1il4ztj):has(.side-link:where(.svelte-1il4ztj):not(.side-link--sub)){margin-top:.55rem}.side-link.svelte-1il4ztj{min-height:1.85rem;font:500 .84375rem/1.25 var(--font-body);letter-spacing:-.014em;color:var(--text-dim);border-radius:8px;align-items:center;gap:.4rem;padding:.32rem .55rem .32rem .7rem;text-decoration:none;transition:color .14s,background .14s,box-shadow .14s;display:flex;position:relative}.side-link-text.svelte-1il4ztj{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.side-link--sub.svelte-1il4ztj{border-left:1px solid color-mix(in srgb, var(--accent-line) 85%, var(--text-dim));min-height:1.5rem;font:400 .6875rem/1.35 var(--font-mono);letter-spacing:-.01em;color:color-mix(in srgb, var(--text-dim) 78%, var(--text));border-radius:0 8px 8px 0;margin-left:.7rem;padding:.22rem .5rem .22rem .85rem}.side-link-tick.svelte-1il4ztj{background:0 0;border-radius:50%;width:5px;height:5px;transition:background .14s;position:absolute;top:50%;left:-1px;transform:translate(-50%,-50%)}.side-link.svelte-1il4ztj:hover{color:var(--text);background:color-mix(in srgb, var(--accent-deep) 42%, transparent)}.side-link--sub.svelte-1il4ztj:hover{color:var(--text);border-left-color:color-mix(in srgb, var(--accent) 55%, var(--accent-line))}.side-link.is-active.svelte-1il4ztj{color:var(--text);background:color-mix(in srgb, var(--accent-deep) 78%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent-line) 45%, transparent);font-weight:600}.side-link.is-active.svelte-1il4ztj:not(.side-link--sub):before{content:"";background:var(--accent);pointer-events:none;border-radius:1px;width:2px;position:absolute;top:.4rem;bottom:.4rem;left:.35rem}.side-link.is-active.svelte-1il4ztj:not(.side-link--sub){padding-left:.85rem}.side-link--sub.is-active.svelte-1il4ztj{color:var(--accent-strong);background:color-mix(in srgb, var(--accent-deep) 55%, transparent);border-left-color:var(--accent);box-shadow:none;font-weight:500}.side-link--sub.is-active.svelte-1il4ztj .side-link-tick:where(.svelte-1il4ztj){background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-deep) 80%, transparent)}.side-sheet-handle.svelte-1il4ztj,.side-bottombar.svelte-1il4ztj{display:none}@media (width>=1100px){body{padding-left:calc(var(--side-w) + var(--side-gap) * 2)}.side-bottombar.svelte-1il4ztj,.side-sheet-handle.svelte-1il4ztj,.side-backdrop.svelte-1il4ztj{display:none!important}}@media (width<=1099px){body{padding-bottom:var(--side-bar-h)}.side.svelte-1il4ztj{top:auto;left:0;right:0;bottom:var(--side-bar-h);width:100%;max-width:none;max-height:min(78dvh, calc(100dvh - var(--side-bar-h) - .35rem));pointer-events:none;visibility:hidden;border-bottom:0;border-left:0;border-right:0;border-radius:16px 16px 0 0;gap:.35rem;padding:.35rem .65rem .55rem;transition:transform .34s cubic-bezier(.23,1,.32,1),visibility .34s;transform:translateY(calc(100% + .75rem))}.side.is-open.svelte-1il4ztj{pointer-events:auto;visibility:visible;height:min(78dvh, calc(100dvh - var(--side-bar-h) - .35rem));transform:translate(0,0)}.side-brand.svelte-1il4ztj{display:none}.side-sheet-handle.svelte-1il4ztj{flex-shrink:0;justify-content:center;padding:.2rem 0 .35rem;display:flex}.side-sheet-handle.svelte-1il4ztj span:where(.svelte-1il4ztj){background:color-mix(in srgb, var(--text-faint) 55%, var(--line-strong));border-radius:999px;width:2.25rem;height:4px;display:block}.side-scroll--mobile.svelte-1il4ztj{flex-direction:column;flex:auto;gap:0;min-height:0;padding:0 .15rem .15rem;display:flex}.side-scroll--mobile.svelte-1il4ztj>.side-links--mobile-block:where(.svelte-1il4ztj):first-of-type{flex:1 0 auto;min-height:calc(100% - 5rem);margin-top:.2rem;padding-bottom:.35rem}.side-scroll--mobile.svelte-1il4ztj>.side-links--mobile-block:where(.svelte-1il4ztj):last-of-type{margin-top:.2rem;padding-bottom:.5rem}.side-cat-toggle--sticky-top.svelte-1il4ztj,.side-cat-toggle--sticky-both.svelte-1il4ztj{z-index:3;background:color-mix(in srgb, var(--bg-raised) 94%, transparent);-webkit-backdrop-filter:blur(12px)saturate(1.1);box-shadow:0 1px 0 color-mix(in srgb, var(--accent-line) 40%, var(--line));border-radius:0;flex-shrink:0;margin:0;position:sticky}.side-cat-toggle--sticky-top.svelte-1il4ztj{top:0}.side-cat-toggle--sticky-both.svelte-1il4ztj{box-shadow:0 -1px 0 color-mix(in srgb, var(--accent-line) 40%, var(--line)), 0 1px 0 color-mix(in srgb, var(--accent-line) 40%, var(--line));top:0;bottom:0}.side-cat-toggle--sticky-top.is-current.svelte-1il4ztj,.side-cat-toggle--sticky-both.is-current.svelte-1il4ztj,.side-cat-toggle--sticky-top.is-current.svelte-1il4ztj .side-cat-label:where(.svelte-1il4ztj),.side-cat-toggle--sticky-both.is-current.svelte-1il4ztj .side-cat-label:where(.svelte-1il4ztj){color:var(--accent)}.side-backdrop.svelte-1il4ztj{inset:0;bottom:var(--side-bar-h);z-index:40;opacity:0;pointer-events:none;background:#0000007a;transition:opacity .28s cubic-bezier(.23,1,.32,1);display:block;position:fixed}.side-backdrop.is-open.svelte-1il4ztj{opacity:1;pointer-events:auto}.side-bottombar.svelte-1il4ztj{z-index:60;height:var(--side-bar-h);padding:0 .85rem env(safe-area-inset-bottom,0px);border-top:1px solid color-mix(in srgb, var(--accent-line) 50%, var(--line));background:linear-gradient(180deg, color-mix(in srgb, var(--accent-deep) 18%, transparent) 0%, transparent 70%), color-mix(in srgb, var(--bg-raised) 94%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.15);justify-content:space-between;align-items:center;gap:.75rem;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 28px -18px #0000008c}.side-bottombar-brand.svelte-1il4ztj{min-width:0;color:var(--accent);align-items:center;gap:.55rem;text-decoration:none;display:inline-flex}.side-bottombar-mark.svelte-1il4ztj{background:color-mix(in srgb, var(--accent-deep) 70%, transparent);width:1.65rem;height:1.65rem;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent-line) 70%, transparent);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.side-bottombar-word.svelte-1il4ztj{color:var(--text);font-family:var(--font-display);letter-spacing:-.02em;font-variation-settings:"opsz" 28;padding-bottom:.05em;font-size:1.125rem;font-style:italic;font-weight:500;line-height:1}.side-bottombar-actions.svelte-1il4ztj{flex-shrink:0;align-items:center;gap:.35rem;display:inline-flex}.side-bottombar-github.svelte-1il4ztj{width:2.75rem;height:2.75rem;color:var(--text-dim);border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.side-bottombar-github.svelte-1il4ztj:hover{color:var(--text);background:color-mix(in srgb, var(--accent-deep) 40%, transparent);border-color:color-mix(in srgb, var(--accent-line) 40%, transparent)}.side-bottombar-menu.svelte-1il4ztj{border:1px solid color-mix(in srgb, var(--accent-line) 45%, var(--line));background:color-mix(in srgb, var(--accent-deep) 35%, transparent);width:2.75rem;height:2.75rem;color:var(--text);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.side-bottombar-menu.svelte-1il4ztj:hover{background:color-mix(in srgb, var(--accent-deep) 55%, transparent)}.side-root--open.svelte-1il4ztj .side-fab-bars:where(.svelte-1il4ztj) span:where(.svelte-1il4ztj):first-child{transform:translateY(5.5px)rotate(45deg)}.side-root--open.svelte-1il4ztj .side-fab-bars:where(.svelte-1il4ztj) span:where(.svelte-1il4ztj):nth-child(2){opacity:0}.side-root--open.svelte-1il4ztj .side-fab-bars:where(.svelte-1il4ztj) span:where(.svelte-1il4ztj):nth-child(3){transform:translateY(-5.5px)rotate(-45deg)}.side-fab-bars.svelte-1il4ztj{flex-direction:column;justify-content:space-between;width:18px;height:12px;display:flex}.side-fab-bars.svelte-1il4ztj span:where(.svelte-1il4ztj){transform-origin:50%;background:currentColor;width:100%;height:1.5px;transition:transform .2s cubic-bezier(.23,1,.32,1),opacity .12s;display:block}@media (prefers-reduced-motion:reduce){.side.svelte-1il4ztj{transition:none}}}
