*,*:before,*:after{box-sizing:border-box}*{margin:0}button,input,optgroup,select,textarea{font:inherit;color:inherit}ul,ol{list-style:none;padding:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--brand: #005bff;--brand-hover: #0049cc;--brand-active: #003dad;--brand-text: #ffffff;--brand-tint-08: color-mix(in srgb, var(--brand) 8%, transparent);--brand-tint-12: color-mix(in srgb, var(--brand) 12%, transparent);--brand-tint-16: color-mix(in srgb, var(--brand) 16%, transparent);--background: #ffffff;--background-light: #fafafa;--background-dark: #f5f6f8;--background-very-dark: #eef0f3;--surface-1: #ffffff;--surface-2: #fafafa;--surface-3: #f2f3f5;--text-primary: #282a2f;--text-secondary: #5a5e66;--text-tertiary: #8a8d94;--text-on-color: #ffffff;--separator: rgba(0, 0, 0, .08);--border: rgba(0, 0, 0, .12);--hairline: rgba(0, 0, 0, .06);--positive: #009e66;--negative: #d84848;--modified: #005bff;--untracked: #8e5ae8;--addition-highlight: #00cd83;--deletion-highlight: #fd5555;--positive-text: #087a52;--negative-text: #c13f3f;--diff-add-bg: color-mix(in srgb, var(--addition-highlight) 20%, transparent);--diff-del-bg: color-mix(in srgb, var(--deletion-highlight) 15%, transparent);--list-highlight: #ececec;--mock-background: #fbfbfc;--mock-sidebar: #f5f6f8;--mock-footer: #fafafa;--mock-surface: rgba(255, 255, 255, .96);--mock-control: rgba(255, 255, 255, .78);--mock-control-subtle: rgba(255, 255, 255, .38);--mock-text-primary: #282a2f;--mock-text-secondary: #4a4d53;--mock-text-tertiary: #888b91;--mock-separator: rgba(0, 0, 0, .08);--mock-border: rgba(0, 0, 0, .12);--mock-list-highlight: #ececec;--mock-active-control: #e8e9eb;--mock-diff-add: #d5f3e6;--mock-code-keyword: #f03aa1;--mock-code-symbol: #1477f2;--mock-shadow: 18, 22, 30;--shadow-rgb: 16, 22, 38;--hover-overlay: rgba(0, 0, 0, .04);--focus-ring: color-mix(in srgb, var(--brand) 55%, transparent);--shadow-xs: 0 1px 2px rgba(var(--shadow-rgb), .05);--shadow-sm: 0 2px 6px rgba(var(--shadow-rgb), .06), 0 1px 2px rgba(var(--shadow-rgb), .04);--shadow-md: 0 8px 24px rgba(var(--shadow-rgb), .08), 0 2px 6px rgba(var(--shadow-rgb), .05);--shadow-lg: 0 24px 60px rgba(var(--shadow-rgb), .12), 0 6px 16px rgba(var(--shadow-rgb), .06);--shadow-xl: 0 40px 90px rgba(var(--shadow-rgb), .16), 0 12px 28px rgba(var(--shadow-rgb), .08);--shadow-mockup: var(--shadow-xl);--shadow-brand: 0 16px 40px color-mix(in srgb, var(--brand) 24%, transparent);--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display: var(--font-body);--font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--text-display-xl: clamp(2.75rem, 2rem + 3vw, 4rem);--text-display-lg: clamp(2.25rem, 1.75rem + 2vw, 3rem);--text-display: clamp(2rem, 1.6rem + 1.6vw, 3rem);--text-title-xl: clamp(1.5rem, 1.2rem + 1vw, 2rem);--text-title: 1.5rem;--text-title-sm: 1.25rem;--text-body-lg: 1.1875rem;--text-body: 1rem;--text-body-sm: .875rem;--text-body-xs: .8125rem;--text-caption: .75rem;--text-mono: .78125rem;--text-mono-sm: .71875rem;--weight-regular: 400;--weight-medium: 460;--weight-semibold: 540;--weight-display: 560;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--space-32: 128px;--container-max: 1120px;--container-wide: 1320px;--container-prose: 680px;--gutter: clamp(20px, 5vw, 40px);--nav-height: 60px;--radius-button: 12px;--radius-card: 16px;--radius-large: 24px;--radius-pill: 999px;--radius-input: 12px}@supports (color: color(display-p3 0 0 0)){:root{--brand: color(display-p3 0 .357 1);--untracked: color(display-p3 .557 .353 .91)}}:root[data-theme=dark]{color-scheme:dark;--background: #0b0d12;--background-light: #10131a;--background-dark: #151820;--background-very-dark: #1b1f29;--surface-1: #141820;--surface-2: #191d26;--surface-3: #202530;--text-primary: #f7f8fb;--text-secondary: #b8bdc8;--text-tertiary: #858c99;--separator: rgba(255, 255, 255, .1);--border: rgba(255, 255, 255, .14);--hairline: rgba(255, 255, 255, .07);--positive-text: #5fe0ab;--negative-text: #ff8d8d;--diff-add-bg: color-mix(in srgb, var(--addition-highlight) 24%, transparent);--diff-del-bg: color-mix(in srgb, var(--deletion-highlight) 20%, transparent);--list-highlight: rgba(255, 255, 255, .08);--shadow-rgb: 0, 0, 0;--hover-overlay: rgba(255, 255, 255, .06);--mock-background: #202124;--mock-sidebar: #191a1d;--mock-footer: #191a1d;--mock-surface: rgba(31, 32, 36, .96);--mock-control: rgba(255, 255, 255, .08);--mock-control-subtle: rgba(255, 255, 255, .06);--mock-text-primary: #ffffff;--mock-text-secondary: rgba(255, 255, 255, .7);--mock-text-tertiary: rgba(255, 255, 255, .55);--mock-separator: rgba(0, 0, 0, .7);--mock-border: rgba(255, 255, 255, .12);--mock-list-highlight: rgba(0, 0, 0, .2);--mock-active-control: rgba(255, 255, 255, .1);--mock-diff-add: color-mix(in srgb, var(--addition-highlight) 22%, transparent);--mock-code-keyword: #ff72be;--mock-code-symbol: #5aa2ff;--mock-shadow: 0, 0, 0}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--background: #0b0d12;--background-light: #10131a;--background-dark: #151820;--background-very-dark: #1b1f29;--surface-1: #141820;--surface-2: #191d26;--surface-3: #202530;--text-primary: #f7f8fb;--text-secondary: #b8bdc8;--text-tertiary: #858c99;--separator: rgba(255, 255, 255, .1);--border: rgba(255, 255, 255, .14);--hairline: rgba(255, 255, 255, .07);--positive-text: #5fe0ab;--negative-text: #ff8d8d;--diff-add-bg: color-mix(in srgb, var(--addition-highlight) 24%, transparent);--diff-del-bg: color-mix(in srgb, var(--deletion-highlight) 20%, transparent);--list-highlight: rgba(255, 255, 255, .08);--shadow-rgb: 0, 0, 0;--hover-overlay: rgba(255, 255, 255, .06);--mock-background: #202124;--mock-sidebar: #191a1d;--mock-footer: #191a1d;--mock-surface: rgba(31, 32, 36, .96);--mock-control: rgba(255, 255, 255, .08);--mock-control-subtle: rgba(255, 255, 255, .06);--mock-text-primary: #ffffff;--mock-text-secondary: rgba(255, 255, 255, .7);--mock-text-tertiary: rgba(255, 255, 255, .55);--mock-separator: rgba(0, 0, 0, .7);--mock-border: rgba(255, 255, 255, .12);--mock-list-highlight: rgba(0, 0, 0, .2);--mock-active-control: rgba(255, 255, 255, .1);--mock-diff-add: color-mix(in srgb, var(--addition-highlight) 22%, transparent);--mock-code-keyword: #ff72be;--mock-code-symbol: #5aa2ff;--mock-shadow: 0, 0, 0}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-height) + 16px)}body{margin:0;background:var(--background);color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-body);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-primary);margin:0;text-wrap:balance}p{margin:0;text-wrap:pretty}a{color:inherit;text-decoration:none}img,svg,video{display:block;max-width:100%}:focus-visible{outline:none;box-shadow:0 0 0 3px var(--focus-ring);border-radius:var(--radius-button)}::selection{background:var(--brand-tint-16)}.container{width:min(100% - 2 * var(--gutter),var(--container-max));margin-inline:auto}.container-wide{width:min(100% - 2 * var(--gutter),var(--container-wide));margin-inline:auto}.container-prose{width:min(100% - 2 * var(--gutter),var(--container-prose));margin-inline:auto}.section{padding-block:clamp(72px,12vh,160px)}.section-sm{padding-block:clamp(48px,8vh,96px)}.band{background:var(--background-light)}.eyebrow{display:inline-block;font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:.04em;color:var(--brand);margin-bottom:var(--space-4)}.display-xl{font-size:var(--text-display-xl);line-height:1.04;font-weight:var(--weight-display);letter-spacing:-.04em}.display-lg{font-size:var(--text-display-lg);line-height:1.06;font-weight:var(--weight-display);letter-spacing:-.035em}.display{font-size:var(--text-display);line-height:1.08;font-weight:var(--weight-display);letter-spacing:-.03em}.lede{font-size:var(--text-body-lg);line-height:1.55;color:var(--text-secondary)}@supports (corner-shape: squircle){.squircle{corner-shape:squircle}}.prose{color:var(--text-secondary);font-size:var(--text-body);line-height:1.7}.prose>*+*{margin-top:var(--space-4)}.prose h2{margin-top:var(--space-10);font-size:var(--text-title);font-weight:var(--weight-semibold);letter-spacing:-.01em;color:var(--text-primary)}.prose h3{margin-top:var(--space-8);font-size:var(--text-title-sm);font-weight:var(--weight-semibold);color:var(--text-primary)}.prose ul,.prose ol{padding-left:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2)}.prose ul{list-style:disc}.prose ol{list-style:decimal}.prose li::marker{color:var(--text-tertiary)}.prose a{color:var(--brand);text-decoration:underline;text-underline-offset:2px}.prose strong{color:var(--text-primary);font-weight:var(--weight-semibold)}.prose code{font-family:var(--font-mono);font-size:.9em;background:var(--surface-3);padding:1px 5px;border-radius:5px}.prose hr{border:none;border-top:1px solid var(--separator);margin-block:var(--space-8)}[data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--i, 0) * 70ms)}[data-reveal].is-in{opacity:1;transform:none}@media(max-width:600px){:root{--text-display-xl: 2.5rem;--text-display-lg: 2rem;--text-display: 1.875rem;--text-title-xl: 1.5rem;--text-title: 1.375rem;--text-title-sm: 1.125rem;--text-body-lg: 1.0625rem}.section{padding-block:64px}.section-sm{padding-block:48px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}[data-reveal]{opacity:1!important;transform:none!important}html{scroll-behavior:auto}}
