@font-face{font-family:Geist;src:url(/fonts/Geist-latin-ext.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;src:url(/fonts/Geist-latin.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-latin-ext.woff2) format("woff2");font-weight:400 600;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-latin.woff2) format("woff2");font-weight:400 600;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-sans: "Geist", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Geist Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--t-display: clamp(2.75rem, 1.6rem + 5vw, 5.5rem);--t-title: clamp(1.9rem, 1.45rem + 2vw, 3.1rem);--t-sub: clamp(1.25rem, 1.15rem + .5vw, 1.6rem);--t-body: clamp(1.05rem, 1rem + .22vw, 1.18rem);--t-small: clamp(.95rem, .92rem + .15vw, 1.02rem);--gap-in: .75rem;--gap-out: clamp(2.5rem, 1.8rem + 2.6vw, 4rem);--section-y: clamp(5rem, 3rem + 6vw, 9rem);--gutter: clamp(1.5rem, .9rem + 2.6vw, 4rem);--container: 78rem;--measure: 60ch;--r-sm: .5rem;--r-md: .75rem;--r-lg: 1rem;--r-xl: 1.25rem;--r-2xl: 1.5rem;--ease: cubic-bezier(.33, 1, .68, 1);--dur: .26s;--dur-fast: .14s}:root{color-scheme:light;--bg: #f1f0ec;--surface: #faf9f6;--surface-2: #e9e8e3;--fg: #232320;--text: #4f4e47;--muted: #76756d;--accent: #c4502e;--accent-hover: #ab4325;--accent-text: #7a2e19;--accent-ink: #ffffff;--accent-wash: #f2d9d0;--hover: rgb(35 35 32 / 4%);--code: rgb(35 35 32 / 5%);--shadow-card: 0 1px 2px rgb(0 0 0 / 5%), 0 14px 34px -22px rgb(0 0 0 / 30%);--shadow-pop: 0 12px 32px -10px rgb(0 0 0 / 22%)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #1a1a18;--surface: #232320;--surface-2: #141412;--fg: #e6e4dc;--text: #c0bfb5;--muted: #87867e;--accent: #c4502e;--accent-hover: #d35c38;--accent-text: #e0a48f;--accent-ink: #ffffff;--accent-wash: #40241b;--hover: rgb(255 255 255 / 4%);--code: rgb(255 255 255 / 5%);--shadow-card: 0 1px 2px rgb(0 0 0 / 30%), 0 18px 40px -24px rgb(0 0 0 / 70%);--shadow-pop: 0 10px 34px -10px rgb(0 0 0 / 65%)}}:root[data-theme=dark]{color-scheme:dark;--bg: #1a1a18;--surface: #232320;--surface-2: #141412;--fg: #e6e4dc;--text: #c0bfb5;--muted: #87867e;--accent: #c4502e;--accent-hover: #d35c38;--accent-text: #e0a48f;--accent-ink: #ffffff;--accent-wash: #40241b;--hover: rgb(255 255 255 / 4%);--code: rgb(255 255 255 / 5%);--shadow-card: 0 1px 2px rgb(0 0 0 / 30%), 0 18px 40px -24px rgb(0 0 0 / 70%);--shadow-pop: 0 10px 34px -10px rgb(0 0 0 / 65%)}@media(prefers-contrast:more){:root{--text: #2c2c28;--muted: #4b4a44;--surface: #ffffff;--shadow-card: 0 1px 2px rgb(0 0 0 / 12%), 0 14px 34px -20px rgb(0 0 0 / 45%)}:root[data-theme=dark]{--text: #d8d6cb;--muted: #b0afa5;--surface: #2b2b28}}*,*:before,*:after{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--t-body);font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img,svg{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration-color:color-mix(in oklab,currentColor 28%,transparent);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{text-decoration-color:currentColor}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}ul,ol,dl,dd,figure{margin:0;padding:0}h1,h2,h3,h4,p{margin:0}.display{font-size:var(--t-display);font-weight:500;line-height:1.02;letter-spacing:-.035em;color:var(--fg);text-wrap:balance}.display em{font-style:normal;color:var(--accent)}.display--tool{font-size:clamp(2.1rem,1.55rem + 2.4vw,3.5rem);max-inline-size:18ch}.title{font-size:var(--t-title);font-weight:500;line-height:1.1;letter-spacing:-.025em;color:var(--fg);text-wrap:balance;max-inline-size:20ch}.sub{font-size:var(--t-sub);font-weight:500;line-height:1.25;letter-spacing:-.015em;color:var(--fg)}.lead{font-size:var(--t-sub);line-height:1.45;color:var(--text);max-inline-size:42ch;text-wrap:pretty}.body{color:var(--text);max-inline-size:var(--measure);text-wrap:pretty}.body+.body{margin-block-start:1.1em}.small{font-size:var(--t-small);color:var(--muted);max-inline-size:var(--measure);text-wrap:pretty}.mono{font-family:var(--font-mono);font-size:var(--t-small);color:var(--muted)}code,kbd,pre{font-family:var(--font-mono);font-size:.92em}:not(pre)>code{background:var(--code);border-radius:var(--r-sm);corner-shape:squircle;padding:.12em .4em;color:var(--fg)}pre{padding:1.4rem 1.5rem;background:var(--surface);box-shadow:var(--shadow-card);border-radius:var(--r-lg);corner-shape:squircle;overflow-x:auto;font-size:var(--t-small);line-height:1.8;color:var(--text);max-inline-size:100%}.wrap{inline-size:min(100% - var(--gutter) * 2,var(--container));margin-inline:auto}.section{padding-block-end:var(--section-y)}.section--first{padding-block-start:clamp(2.5rem,1.8rem + 3vw,4.5rem)}.head{margin-block-end:var(--gap-out)}.head .lead{margin-block-start:1.25rem}.group+.group{margin-block-start:var(--gap-out)}.group>:first-child{margin-block-end:1.25rem}.group__note{margin-block:-.9rem 1.5rem;max-inline-size:56ch}.after{margin-block-start:var(--gap-out)}.after--tight{margin-block-start:2rem}.cards{list-style:none;display:grid;gap:var(--gap-in);grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr))}.cards--wide{grid-template-columns:repeat(auto-fill,minmax(min(100%,21rem),1fr))}.card{display:flex;flex-direction:column;gap:.5rem;block-size:100%;padding:1.5rem 1.6rem 1.6rem;background:var(--surface);border-radius:var(--r-xl);corner-shape:squircle;box-shadow:var(--shadow-card)}.card__name{font-size:var(--t-body);font-weight:500;letter-spacing:-.01em;color:var(--fg)}.card p,.card__text{font-size:var(--t-small);color:var(--muted);text-wrap:pretty}a.card{text-decoration:none;color:inherit;transition:box-shadow var(--dur) var(--ease),transform var(--dur) var(--ease)}a.card:hover{box-shadow:var(--shadow-pop);transform:translateY(-2px);text-decoration:none}a.card:active{transform:translateY(-2px) scale(.99)}.stats{display:grid;gap:var(--gap-in);grid-template-columns:repeat(2,minmax(0,1fr))}@media(min-width:46rem){.stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.stats .card{gap:.35rem;padding:1.4rem 1.5rem 1.5rem}.stats dt{font-size:var(--t-sub);font-weight:500;letter-spacing:-.015em;color:var(--fg)}.stats dd{font-size:var(--t-small);color:var(--muted)}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.75rem}.btn{display:inline-flex;align-items:center;gap:.65rem;padding:.9rem 1.45rem;border:0;border-radius:var(--r-md);corner-shape:squircle;background:var(--accent);color:var(--accent-ink);font:inherit;font-size:var(--t-small);font-weight:500;line-height:1.2;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--dur) var(--ease),transform var(--dur) var(--ease)}.btn:hover{background:var(--accent-hover);text-decoration:none}.btn:active{transform:scale(.98)}.btn svg{inline-size:1em;block-size:1em;flex:none}.link{display:inline-flex;align-items:center;gap:.5rem;font-size:var(--t-small);font-weight:500;color:var(--fg);text-decoration:none;transition:color var(--dur) var(--ease)}.link:hover{color:var(--accent-text);text-decoration:none}.link svg{inline-size:.95em;block-size:.95em;flex:none;color:var(--muted);transition:transform var(--dur) var(--ease),color var(--dur) var(--ease)}.link:hover svg{color:var(--accent-text);transform:translate(3px)}.skip{position:absolute;inset-inline-start:1rem;inset-block-start:-4rem;z-index:100;padding:.7rem 1.1rem;border-radius:var(--r-md);corner-shape:squircle;background:var(--accent);color:var(--accent-ink);font-size:var(--t-small);text-decoration:none;transition:inset-block-start var(--dur-fast) var(--ease)}.skip:focus{inset-block-start:1rem}.header{position:sticky;inset-block-start:0;z-index:50;background:color-mix(in oklab,var(--bg) 82%,transparent)}@supports (backdrop-filter: blur(1px)){.header{backdrop-filter:blur(20px)}}.header__inner{display:flex;align-items:center;gap:2rem;block-size:4.75rem}.brand{display:inline-flex;align-items:center;gap:.65rem;font-size:1.15rem;font-weight:500;letter-spacing:-.02em;color:var(--fg);text-decoration:none;margin-inline-end:auto}.brand img{inline-size:1.6rem;block-size:1.6rem;border-radius:var(--r-sm);corner-shape:squircle;box-shadow:var(--shadow-card)}.nav{display:flex;align-items:center;gap:1.85rem}.nav a{font-size:var(--t-small);color:var(--muted);text-decoration:none;transition:color var(--dur) var(--ease)}.nav a:hover,.nav a[aria-current=page]{color:var(--fg)}.header__end{display:flex;align-items:center;gap:1.35rem}.header__end .btn{padding:.65rem 1.1rem}.plain-btn{padding:0;border:0;background:none;font:inherit;font-size:var(--t-small);color:var(--muted);text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;transition:color var(--dur) var(--ease)}.plain-btn:hover{color:var(--fg)}.plain-btn svg{inline-size:1.1rem;block-size:1.1rem}.theme-sun{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-sun{display:block}:root:not([data-theme=light]) .theme-moon{display:none}}:root[data-theme=dark] .theme-sun{display:block}:root[data-theme=dark] .theme-moon{display:none}:root[data-theme=light] .theme-sun{display:none}:root[data-theme=light] .theme-moon{display:block}@media(max-width:62rem){.nav{display:none}}@media(max-width:30rem){.header__inner,.header__end{gap:1rem}.header__end .btn__label{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.header__end .btn{padding-inline:.8rem}}.hero{padding-block:clamp(3.5rem,2.2rem + 5vw,7rem) var(--section-y)}.hero .display{max-inline-size:19ch}.hero .lead{margin-block-start:clamp(1.75rem,1.3rem + 1.6vw,2.5rem);max-inline-size:46ch}.hero .actions{margin-block-start:clamp(2rem,1.5rem + 1.6vw,2.75rem)}.hero__meta{margin-block-start:1.5rem;font-family:var(--font-mono);font-size:var(--t-small);color:var(--muted)}.hero .stats{margin-block-start:clamp(3.5rem,2.5rem + 4vw,5.5rem)}.qa{display:grid;gap:.25rem;margin-inline:-1.15rem;max-inline-size:52rem}.qa summary{display:flex;align-items:center;gap:1.5rem;padding:1.15rem;border-radius:var(--r-md);corner-shape:squircle;cursor:pointer;list-style:none;font-size:var(--t-body);font-weight:500;letter-spacing:-.01em;color:var(--fg);transition:background-color var(--dur) var(--ease)}.qa summary::-webkit-details-marker{display:none}.qa summary:hover{background:var(--hover)}.qa summary h3{font:inherit;letter-spacing:inherit}.qa summary svg{margin-inline-start:auto;inline-size:.95rem;block-size:.95rem;flex:none;color:var(--muted);transition:rotate var(--dur) var(--ease)}.qa details[open] summary svg{rotate:180deg}.qa__answer{padding:.25rem 1.15rem 1.75rem;max-inline-size:var(--measure);color:var(--text);font-size:var(--t-small);display:grid;gap:.9em}.spec{display:grid;gap:1.25rem}@media(min-width:34rem){.spec>div{display:grid;grid-template-columns:12rem minmax(0,1fr);gap:1.5rem;align-items:baseline}}.spec dt{color:var(--muted);font-size:var(--t-small)}.spec dd{color:var(--fg);font-size:var(--t-small)}@media(max-width:33.99rem){.spec dd{margin-block-start:.3rem}}.crumbs{margin-block-end:clamp(2rem,1.6rem + 1.6vw,3rem);font-size:var(--t-small);color:var(--muted)}.crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;list-style:none}.crumbs li{display:inline-flex;align-items:center;gap:.5rem}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--fg)}.crumbs svg{inline-size:.7rem;block-size:.7rem;opacity:.55;rotate:-90deg}.installers{display:grid;gap:var(--gap-in)}@media(min-width:46rem){.installers{grid-template-columns:repeat(2,minmax(0,1fr))}}.installer{gap:.65rem;padding:1.9rem 2rem 2rem}.installer__name{font-family:var(--font-mono);font-size:var(--t-title);font-weight:400;letter-spacing:-.02em;color:var(--fg)}.installer__size{margin-inline-start:.9rem;font-family:var(--font-mono);font-size:var(--t-small);color:var(--muted)}.installer .btn,.installer .link{margin-block-start:1.25rem;align-self:start}.installer__file{margin-block-start:auto;padding-block-start:1.5rem;font-family:var(--font-mono);font-size:var(--t-small);color:var(--muted);overflow-wrap:anywhere}.releases{display:grid;gap:var(--gap-in)}.release{display:grid;gap:1.25rem;padding:1.9rem 2rem}@media(min-width:52rem){.release{grid-template-columns:11rem minmax(0,1fr);gap:2.5rem}}.release__version{font-family:var(--font-mono);font-size:var(--t-body);color:var(--fg)}.release__date{margin-block-start:.35rem;font-size:var(--t-small);color:var(--muted)}.release__body{display:grid;gap:.8rem;color:var(--text);font-size:var(--t-small);max-inline-size:var(--measure)}.assets{display:flex;flex-wrap:wrap;gap:1.5rem;margin-block-start:1.5rem}.footer{padding-block:clamp(2rem,1.5rem + 2vw,3.5rem) 3rem}.footer__grid{display:grid;gap:2.5rem}@media(min-width:46rem){.footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:68rem){.footer__grid{grid-template-columns:1.1fr 1.7fr 1fr 1fr;gap:4rem}}.footer__brand p{margin-block-start:1rem;color:var(--muted);font-size:var(--t-small);max-inline-size:26ch}.footer__title{color:var(--fg);font-size:var(--t-small);font-weight:500}.footer ul{list-style:none;display:grid;gap:.85rem;margin-block-start:1.35rem}@media(min-width:34rem){.footer__tools ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.5rem}}.footer a{font-size:var(--t-small);color:var(--muted);text-decoration:none;transition:color var(--dur) var(--ease)}.footer a:hover{color:var(--fg)}.footer__bottom{display:flex;flex-wrap:wrap;gap:.75rem 2.5rem;align-items:center;margin-block-start:clamp(3rem,2.2rem + 2.6vw,4.5rem);font-size:var(--t-small);color:var(--muted)}.footer__author{margin-inline-start:auto;display:inline-flex;align-items:center;gap:.4rem}.footer__author svg{inline-size:.85em;block-size:.85em}@view-transition{navigation:auto}.header{view-transition-name:header}::view-transition-old(root),::view-transition-new(root){animation-duration:.16s;animation-timing-function:var(--ease)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.btn:active,a.card:hover,a.card:active{transform:none}@view-transition{navigation:none}}@media print{.header,.footer,.skip,.actions{display:none!important}body{background:#fff;color:#000}.card{box-shadow:none}.qa details{break-inside:avoid}}
