@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-400-normal-4GdczIuU.woff2)format("woff2"),url(/assets/dm-mono-latin-400-normal--0xN8mdc.woff)format("woff")}:root{--green:#38d430;--paper:#f2f2ee;--ink:#0d0d0c;--muted:#6e6e68;--rule:#dcdcd5;--font-display:"Archivo", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono:"DM Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-serif:"Newsreader", Georgia, "Times New Roman", serif;--text-label:11px;--tracking-label:.1em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--gutter-x:max(var(--space-4), env(safe-area-inset-left,0px));--gutter-y:var(--space-5);--mark-size:min(50vw, 50svh);--soon-logo-height:30px;--soon-bg:#000;--soon-smoke:#171a1c;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-display);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}.lbl{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink);line-height:1.55}.lbl .dim{color:var(--muted)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}body.soon{background:var(--soon-bg);min-height:100svh;color:var(--paper);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;margin:0}.soon-fluid{--fluid-blur:0px;inset:calc(var(--fluid-blur) * -2);width:calc(100% + var(--fluid-blur) * 4);height:calc(100% + var(--fluid-blur) * 4);filter:blur(var(--fluid-blur));opacity:0;transition:opacity .6s;display:block;position:fixed}.has-fluid .soon-fluid{opacity:var(--fluid-opacity,1)}.soon-stage{justify-content:center;align-items:center;gap:var(--space-5);pointer-events:none;flex-direction:column;display:flex;position:fixed;inset:0}.soon-logo{height:var(--soon-logo-height);margin:0}.soon-logo svg{width:auto;height:100%;display:block}.soon-logo .lockup-word{fill:var(--paper)}.soon-logo .lockup-mark{fill:var(--green)}.soon-email{left:50%;bottom:calc(var(--gutter-y) + env(safe-area-inset-bottom,0px));text-transform:none;letter-spacing:.02em;pointer-events:auto;color:var(--paper);font-size:12px;text-decoration:none;transition:color .3s;position:absolute;transform:translate(-50%)}.soon-email:hover,.soon-email:focus-visible{color:var(--green)}.soon-email:focus-visible{outline:1px solid var(--green);outline-offset:4px}.soon-note{pointer-events:auto;font-family:var(--font-mono);color:color-mix(in srgb, var(--paper) 60%, transparent);margin:0;font-size:12px}.soon-note a{color:var(--paper);text-decoration:none;transition:color .3s}.soon-note a:hover,.soon-note a:focus-visible{color:var(--green)}.consent{left:var(--gutter-x);bottom:calc(var(--gutter-y) + env(safe-area-inset-bottom,0px));z-index:2;max-width:300px;padding:var(--space-4);background:var(--soon-bg);border:1px solid color-mix(in srgb, var(--paper) 18%, transparent);font-family:var(--font-mono);color:color-mix(in srgb, var(--paper) 70%, transparent);font-size:12px;line-height:1.55;position:fixed}.consent-text{margin:0 0 var(--space-3)}.consent-actions{gap:var(--space-4);display:flex}.consent-btn,.consent-settings{font:inherit;font-family:var(--font-mono);letter-spacing:.02em;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;transition:color .3s}.consent-btn{color:var(--paper)}.consent-corner{right:var(--gutter-x);bottom:calc(var(--gutter-y) + env(safe-area-inset-bottom,0px));z-index:1;gap:var(--space-4);line-height:1.55;display:flex;position:fixed}.consent-settings,.consent-link{color:color-mix(in srgb, var(--paper) 45%, transparent)}.consent-link{font-family:var(--font-mono);letter-spacing:.02em;font-size:12px;text-decoration:none;transition:color .3s}.consent-text a{color:var(--paper);transition:color .3s}.consent-btn:hover,.consent-btn:focus-visible,.consent-settings:hover,.consent-settings:focus-visible,.consent-link:hover,.consent-link:focus-visible,.consent-text a:hover,.consent-text a:focus-visible{color:var(--green)}.consent-btn:focus-visible,.consent-settings:focus-visible,.consent-link:focus-visible,.consent-text a:focus-visible{outline:1px solid var(--green);outline-offset:4px}@media (width<=640px){.consent-corner{flex-direction:column;align-items:flex-end;gap:0}}@media (width<=900px){.consent{left:50%;bottom:calc(var(--gutter-y) + var(--space-8) + env(safe-area-inset-bottom,0px));width:calc(100% - var(--gutter-x) * 2);box-sizing:border-box;max-width:360px;transform:translate(-50%)}}body.soon-doc{min-height:auto}.doc-head{padding:calc(var(--gutter-y) + env(safe-area-inset-top,0px)) var(--gutter-x) 0}.doc-logo{height:22px;display:inline-block}.doc-logo svg{width:auto;height:100%;display:block}.doc-logo .lockup-word{fill:var(--paper);transition:fill .3s}.doc-logo .lockup-mark,.doc-logo:hover .lockup-word,.doc-logo:focus-visible .lockup-word{fill:var(--green)}.doc-logo:focus-visible{outline:1px solid var(--green);outline-offset:6px}.doc{max-width:62ch;padding:var(--space-16) var(--gutter-x) calc(var(--space-16) * 2);font-family:var(--font-mono);color:color-mix(in srgb, var(--paper) 78%, transparent);margin:0 auto;font-size:14px;line-height:1.7}.doc h1{font-family:var(--font-mono);color:var(--paper);margin:0;font-size:22px;font-weight:400}.doc h2{margin:var(--space-12) 0 var(--space-3);font-family:var(--font-mono);color:var(--green);font-size:14px;font-weight:400}.doc p{margin:0 0 var(--space-4)}.doc .doc-meta{margin:var(--space-2) 0 var(--space-12);color:color-mix(in srgb, var(--paper) 45%, transparent);font-size:12px}.doc code{color:var(--paper);font-family:inherit}.doc a{color:var(--paper);transition:color .3s}.doc a:hover,.doc a:focus-visible{color:var(--green)}.doc a:focus-visible{outline:1px solid var(--green);outline-offset:4px}.doc .doc-back{margin-top:var(--space-12)}.soon-doc .consent-corner{padding:0 var(--gutter-x) calc(var(--gutter-y) + env(safe-area-inset-bottom,0px));flex-direction:row;justify-content:flex-end;position:static}
