@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations")}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-italic-DpCbqKDY.woff2) format("woff2-variations")}:root{--radius-control: .75rem;--radius-surface: 1rem;--radius-floating: 1.25rem;--radius-bubble: 1.15rem;--radius-bubble-tail: .35rem;--page-gutter: clamp(1.5rem, 5vw, 3.5rem);--page-width: 80rem;--ease-decisive: cubic-bezier(.2,.8,.2,1);--duration-feedback: .15s;--brand: #704ded;--font-interface: "Inter Variable", Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--theme-color: #f1f3f3;--background: #f1f3f3;--panel: #fcfdfd;--sidebar: #fcfdfd;--muted: #e7eaea;--user: #ffffff;--ink: #181b1b;--paper: #fcfdfd;--muted-foreground: #596565;--line: #d8dddd;--line-soft: #e4e7e7;--line-strong: #b8c1c1;--accent: #704ded;--accent-strong: #5538bd;--accent-soft: #eeeafd;--success: #337653;--danger: #aa4039;--danger-soft: #fae8e6;--warning: #7b590c;--warning-soft: #f8efd6;--code: #151818;--code-line: #303636;--code-text: #edf1f1;--code-muted: #a7b0b0;--shadow-floating: 0 10px 32px rgb(6 10 10 / .1), 0 2px 8px rgb(6 10 10 / .05)}.dark{--theme-color: #121515;--background: #121515;--panel: #1a1e1e;--sidebar: #161a1a;--muted: #252b2b;--user: #293030;--ink: #f0f3f3;--paper: #121515;--muted-foreground: #aab3b3;--line: #303737;--line-soft: #394141;--line-strong: #4b5656;--accent: #a68cff;--accent-strong: #c5b5ff;--accent-soft: #2d244e;--success: #70b58d;--danger: #ef8177;--danger-soft: #3b2423;--warning: #dfb85f;--warning-soft: #382f1e;--code: #0c0f0f;--code-line: #293030;--code-text: #edf1f1;--code-muted: #a7b0b0;--shadow-floating: 0 10px 32px rgb(0 0 0 / .34), 0 2px 8px rgb(0 0 0 / .22)}.entry{--accent: var(--ink);--accent-strong: #000000;--font-display: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--duration-rise: .42s;--duration-rise-step: 60ms;--duration-step-in: .32s;--duration-flip-out: .18s;--duration-flip-in: .26s;--duration-flip-resize: .36s;--duration-sweep: 1.8s;--duration-caret: 1.06s;--ease-flip: cubic-bezier(.33,1,.68,1);--qr-ground: #ffffff;--shadow-qr: 0 1px 2px rgb(24 27 27 / .06), 0 12px 32px rgb(24 27 27 / .08)}.entry{color-scheme:light;min-height:100svh;min-width:320px;background:var(--background);color:var(--ink);font-family:var(--font-interface);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased}.entry *{box-sizing:border-box}.entry [hidden]{display:none!important}.entry a{color:inherit;text-decoration:none}.entry button{font:inherit;color:inherit}.entry :focus-visible{outline:2px solid var(--ink);outline-offset:-1px}.entry header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:1rem max(var(--page-gutter),(100% - var(--page-width)) / 2)}.entry .brand{display:flex;align-items:center;gap:.6rem;min-height:calc(2.3rem + 2px);font-weight:600;font-size:1.0625rem;letter-spacing:-.01em}.entry .hero{min-height:calc(100svh - 8rem);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1rem 1.5rem 2rem}.entry .hero img{width:4.5rem;height:4.5rem;margin-bottom:1.75rem}@keyframes entry-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.entry .hero>*{animation:entry-rise var(--duration-rise) var(--ease-decisive) both}.entry .hero>:nth-child(2){animation-delay:var(--duration-rise-step)}.entry .hero>:nth-child(n+3){animation-delay:calc(2 * var(--duration-rise-step))}.entry h1{font-family:var(--font-display);width:100%;font-size:clamp(2rem,6vw,3rem);font-weight:500;letter-spacing:-.02em;line-height:1.1;margin:0 0 2.25rem}@media(max-width:40rem){.entry .hero h1{min-height:3.3em}}.entry .line{display:block;white-space:nowrap}.entry .phrase em{font-style:italic;color:var(--brand);display:inline-block;text-align:left;perspective:40rem;transition:width var(--duration-flip-resize) var(--ease-decisive)}.entry .phrase em.resizing{transition:none}.entry .phrase .flip{display:inline-block;transform-origin:50% 50%;backface-visibility:hidden;will-change:transform}.entry .phrase .flip.out{animation:entry-flip-out var(--duration-flip-out) ease-in forwards}.entry .phrase .flip.in{animation:entry-flip-in var(--duration-flip-in) ease-out both}@keyframes entry-flip-out{to{transform:rotateX(90deg)}}@keyframes entry-flip-in{0%{transform:rotateX(-90deg)}to{transform:none}}@media(prefers-reduced-motion:reduce){.entry .phrase em{transition:none}.entry .phrase .flip.out,.entry .phrase .flip.in{animation:none}}.entry .cta{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:0;cursor:pointer;background:var(--accent);color:var(--paper);font-weight:600;padding:.8rem 1.4rem;border-radius:var(--radius-control);text-decoration:none;transition:background var(--duration-feedback) ease-out,transform var(--duration-feedback) var(--ease-decisive),border-color var(--duration-feedback) ease-out}.entry .cta svg{width:1rem;height:1rem}.entry .cta:hover{background:var(--accent-strong)}.entry .cta:focus-visible{outline-color:var(--panel);outline-offset:-2px}.entry .cta:active{transform:scale(.97)}.entry .cta[disabled],.entry .cta[aria-disabled=true]{opacity:.5;cursor:default;transform:none;pointer-events:none}.entry .cta.quiet{background:var(--panel);color:var(--ink);border:1px solid var(--line)}.entry .cta.quiet:hover{background:var(--panel);border-color:var(--ink)}.entry .cta.quiet:focus-visible{outline-color:var(--ink);outline-offset:-1px}.entry .cta.small{padding:.45rem .9rem;font-size:.875rem;font-weight:500}.entry [aria-busy=true]{pointer-events:none}.entry .cta[aria-busy=true] svg{opacity:.45}.entry .cta[aria-busy=true] .t,.entry .busy-label{-webkit-text-fill-color:transparent;background-image:linear-gradient(100deg,color-mix(in srgb,currentColor 45%,transparent) 35%,currentColor 50%,color-mix(in srgb,currentColor 45%,transparent) 65%);background-size:200% 100%;background-clip:text;-webkit-background-clip:text;animation:entry-sweep var(--duration-sweep) linear infinite}@keyframes entry-sweep{0%{background-position:200% 0}to{background-position:0% 0}}.entry footer{display:flex;flex-wrap:wrap;gap:.4rem 1.25rem;justify-content:center;padding:1rem max(var(--page-gutter),(100% - var(--page-width)) / 2) 1.5rem;color:var(--muted-foreground);font-size:.8125rem;text-align:center}.entry footer a:hover{color:var(--ink)}@media(prefers-reduced-motion:reduce){.entry *,.entry .hero>*{transition:none!important;animation:none!important}.entry .cta[aria-busy=true] .t,.entry .busy-label{animation:none;background:none;-webkit-text-fill-color:currentColor;opacity:.55}}body.entry{margin:0}.entry .signin-link{color:var(--muted-foreground);font-size:.875rem;font-weight:500}.entry .signin-link:hover{color:var(--ink)}.entry.home .hero{min-height:calc(100svh - 17rem);padding-top:2.5rem}.entry.home .hero h1{margin-bottom:1.25rem}.entry.home .lede{margin:0 0 1.75rem;max-width:32rem;font-size:1.0625rem;line-height:1.55;color:var(--muted-foreground);text-wrap:pretty}.entry.home .hero .quiet{margin:1rem 0 0;font-size:.8125rem;color:var(--muted-foreground)}.entry .capabilities{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:2rem 3rem;width:min(100% - 3rem,52rem);margin:1rem auto 4rem;padding-top:2.5rem;border-top:1px solid var(--line)}.entry .capabilities h2{margin:0 0 .35rem;font-size:1rem;font-weight:600;letter-spacing:-.01em}.entry .capabilities p{margin:0;color:var(--muted-foreground);font-size:.9375rem;line-height:1.55}.entry .legacy{display:inline-flex;align-items:center;gap:.4rem;margin-bottom:2rem;max-width:100%;padding:.35rem .8rem .35rem .95rem;border:1px solid var(--line);border-radius:999px;background:var(--panel);font-size:.8125rem;font-weight:500;line-height:1.4;color:var(--muted-foreground);text-wrap:balance;transition:color var(--duration-feedback) ease-out,border-color var(--duration-feedback) ease-out}.entry .legacy svg{width:.85rem;height:.85rem;flex:none;transition:transform var(--duration-feedback) ease-out}.entry .legacy:hover{color:var(--ink);border-color:var(--line-strong)}.entry .legacy:hover svg{transform:translate(2px)}
