@font-face{font-family:Yekan Bakh;src:url(/fonts/YekanBakh-VF.woff2) format("woff2");font-weight:100 950;font-stretch:62.5% 150%;font-style:normal;font-display:swap}:root{--font-sans:"Yekan Bakh",system-ui,-apple-system,sans-serif;--font-heading:var(--font-sans);font-family:Yekan Bakh,system-ui,-apple-system,sans-serif;--nextra-navbar-height:52px;--gerdoo-orange:#ea6d0c;--gerdoo-fg:#1c1917;--gerdoo-muted:#78716c;--gerdoo-canvas:#f3efe4;--gerdoo-hairline:rgb(120 76 30/0.1);--gerdoo-hairline-strong:rgb(120 76 30/0.14);--gerdoo-tile:0.75rem;--gerdoo-shadow:0 1px 2px rgb(66 40 14/0.04),0 8px 24px -12px rgb(66 40 14/0.1);--gerdoo-shadow-lift:0 2px 4px rgb(66 40 14/0.05),0 18px 40px -18px rgb(196 90 12/0.28);--gerdoo-spring:cubic-bezier(0.32,0.72,0,1)}.dark{--gerdoo-fg:#f5f5f7;--gerdoo-muted:#a1a1aa;--gerdoo-canvas:#1c1c1e;--gerdoo-hairline:rgb(255 255 255/0.08);--gerdoo-hairline-strong:rgb(255 255 255/0.12);--gerdoo-shadow:none;--gerdoo-shadow-lift:none}body{font-family:Yekan Bakh,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:rgb(246 130 31/.25)}code,pre,samp{direction:ltr;unicode-bidi:embed}:where(main,article,.nextra-content) kbd{direction:ltr;unicode-bidi:embed}.nextra-navbar{color:var(--gerdoo-fg)}.nextra-navbar-blur{background:rgb(251 249 244/.8)!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;border-bottom:1px solid rgb(0 0 0/.06)!important}.dark .nextra-navbar-blur{background:rgb(0 0 0/.72)!important;border-bottom-color:rgb(255 255 255/.08)!important}.nextra-navbar nav{padding-inline:max(2rem,env(safe-area-inset-left)) max(2rem,env(safe-area-inset-right))!important;max-width:64rem!important;gap:.75rem!important}.nextra-navbar a:not(.gerdoo-docs-cta),.nextra-navbar button{color:#44403c}.dark .nextra-navbar a:not(.gerdoo-docs-cta),.dark .nextra-navbar button{color:rgb(255 255 255/.8)}.nextra-navbar a:not(.gerdoo-docs-cta):hover,.nextra-navbar button:hover{color:var(--gerdoo-fg);opacity:1}.gerdoo-docs-logo{display:inline-flex;align-items:center;gap:.5rem;color:var(--gerdoo-fg)}.gerdoo-docs-logo-mark{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:6px;background:var(--gerdoo-orange);color:#fff;flex-shrink:0}.gerdoo-docs-logo-mark svg{width:.875rem;height:.75rem}.gerdoo-docs-logo-text{display:inline-flex;align-items:baseline;gap:.4rem;font-size:13.5px;font-weight:700;letter-spacing:-.01em;color:var(--gerdoo-fg)}.gerdoo-docs-logo-text span{font-weight:500;color:var(--gerdoo-muted)}.gerdoo-docs-cta{display:inline-flex;align-items:center;justify-content:center;height:2.25rem;padding:0 1rem;border-radius:.375rem;background:#0c0a09;color:#fff!important;font-size:12.5px;font-weight:600;line-height:1;white-space:nowrap;box-shadow:2px 2px 0 #f6821f;transition:background-color .15s,transform .15s,box-shadow .15s}.gerdoo-docs-cta:hover{background:#0c0a09;color:#fff!important;transform:translate(1px,1px);box-shadow:1px 1px 0 #f6821f}.dark .gerdoo-docs-cta{background:#ffffff;color:#0c0a09!important}.dark .gerdoo-docs-cta:hover{background:#e7e5e4;color:#0c0a09!important}@media (max-width:640px){.gerdoo-docs-cta{display:none}}.nextra-navbar .nextra-search input[type=search]{background:#ffffff!important;border:1px solid var(--gerdoo-hairline)!important;color:var(--gerdoo-fg)!important;border-radius:.5rem!important;padding-inline-end:4.25rem!important;padding-inline-start:.85rem!important}.nextra-navbar .nextra-search input[type=search]:focus{border-color:rgb(246 130 31/.4)!important;outline:none!important}.nextra-navbar .nextra-search input[type=search]::placeholder{color:#a8a29e}.dark .nextra-navbar .nextra-search input[type=search]{background:rgb(255 255 255/.06)!important;border-color:rgb(255 255 255/.1)!important;color:#f5f5f7!important}.dark .nextra-navbar .nextra-search input[type=search]::placeholder{color:rgb(255 255 255/.45)}.nextra-navbar .nextra-search kbd{direction:ltr;inset-inline:auto!important;right:auto!important;left:.375rem!important;background:#ffffff!important;color:#a8a29e!important;border:1px solid var(--gerdoo-hairline)!important}.dark .nextra-navbar .nextra-search kbd{background:rgb(255 255 255/.12)!important;color:rgb(255 255 255/.55)!important;border-color:transparent!important}.nextra-navbar svg{color:#57534e}.dark .nextra-navbar svg{color:rgb(255 255 255/.8)}.nextra-cards{gap:1rem!important;margin-top:1.5rem!important}.nextra-card{border:1px solid var(--gerdoo-hairline)!important;border-radius:var(--gerdoo-tile)!important;background:#ffffff!important;box-shadow:var(--gerdoo-shadow)!important;overflow:visible!important;padding:1.25rem 1.35rem 1.1rem!important;gap:.65rem;min-height:0;font-size:.9375rem;line-height:1.8;color:var(--gerdoo-muted);transition:transform .35s var(--gerdoo-spring),box-shadow .35s var(--gerdoo-spring),border-color .35s var(--gerdoo-spring)}.nextra-card:hover{opacity:1;transform:translateY(-3px);border-color:rgb(246 130 31/.35)!important;box-shadow:var(--gerdoo-shadow-lift)!important}.dark .nextra-card{background:#1c1c1e!important;color:#c7c7cc}.dark .nextra-card:hover{background:#2c2c2e!important}.nextra-card>p{margin:0!important;padding:.1em 0!important;font-size:.9375rem!important;line-height:1.8!important;color:inherit!important;flex:1 1 auto}.nextra-card>span{padding:.35rem 0 0!important;margin-top:auto!important;font-size:.9375rem!important;font-weight:700!important;gap:.4rem!important;line-height:1.4!important}.nextra-card>span,.nextra-card>span:hover{color:var(--gerdoo-fg)!important}.nextra-card>span>span{overflow:visible!important;text-overflow:unset!important;white-space:normal!important}.nextra-card>span:after{margin-inline-start:.15rem}html[dir=rtl] .nextra-card>span:after{content:"←"!important;transform:none}html[dir=rtl] .nextra-card:focus>span:after,html[dir=rtl] .nextra-card:hover>span:after{transform:translateX(-2px)}.nextra-sidebar,aside.nextra-sidebar-container{border-color:transparent!important}.nextra-sidebar a{border-radius:.5rem!important;font-size:.875rem}.nextra-sidebar a:hover{background:#f3efe4!important}.dark .nextra-sidebar a:hover{background:rgb(255 255 255/.04)!important}.nextra-sidebar a.active,.nextra-sidebar a[aria-current=page],aside a[aria-current=page]{color:#c2570b!important;background:#fff7ed!important;font-weight:700}.dark .nextra-sidebar a[aria-current=page],.dark aside a[aria-current=page]{color:#fb9a3c!important;background:rgb(246 130 31/.12)!important}article h1{letter-spacing:-.03em;line-height:1.35!important;text-wrap:balance}article h1,article h2,article h3{font-weight:900!important;color:var(--gerdoo-fg)}article h2,article h3{letter-spacing:-.02em;line-height:1.4!important}article h2,article h2.nextra-border{border-bottom:1px dashed rgb(34 34 34/.18)!important;padding-bottom:.5rem!important}.dark article h2,.dark article h2.nextra-border{border-bottom-color:rgb(255 255 255/.14)!important}article ol>li::marker,article ul>li::marker{color:#f6821f;font-weight:800}article li,article p{line-height:1.9;color:#44403c}.dark article li,.dark article p{color:#d4d4d8}article :not(pre)>code{background:#fff7ed!important;border:1px solid rgb(246 130 31/.18)!important;border-radius:.375rem!important;color:#9a4510!important;font-size:.875em!important;padding:.1rem .35rem!important}.dark article :not(pre)>code{background:rgb(246 130 31/.12)!important;border-color:rgb(246 130 31/.22)!important;color:#fdba74!important}article a:not(.nextra-card){color:#c2570b;text-decoration-color:rgb(246 130 31/.55);text-decoration-thickness:1px;text-underline-offset:4px}article a:not(.nextra-card):hover{text-decoration-thickness:2px;color:#9a4510}.dark article a:not(.nextra-card){color:#fb9a3c}.nextra-border{border-color:var(--gerdoo-hairline)!important}.dark .nextra-border{border-color:rgb(255 255 255/.08)!important}pre{border-radius:.5rem!important;border:2px solid #222222!important;box-shadow:4px 4px 0 #222222!important}.dark pre{border-color:#3a362d!important;box-shadow:4px 4px 0 rgb(246 130 31/.6)!important}.nextra-callout{border-radius:var(--gerdoo-tile)!important;border-color:var(--gerdoo-hairline)!important}.nextra-steps{border-color:var(--gerdoo-hairline)}.dark .nextra-steps{border-color:rgb(255 255 255/.08)}div:has(>footer){background:var(--gerdoo-canvas)!important;border-top:1px solid var(--gerdoo-hairline)}div:has(>footer)>hr{display:none}.gerdoo-docs-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;width:100%;max-width:64rem;margin:0 auto;padding:1.5rem 2rem 2rem;font-size:12px;color:var(--gerdoo-muted)}.gerdoo-docs-footer a{color:var(--gerdoo-muted);transition:opacity .15s}.gerdoo-docs-footer a:hover{opacity:.7;color:var(--gerdoo-fg)}.gerdoo-docs-footer-links{display:flex;flex-wrap:wrap;gap:1.25rem}nav.nextra-toc a{font-size:.8125rem}.gerdoo-figure{margin:1.5rem 0}.gerdoo-figure-frame{display:block;width:100%;padding:0;overflow:hidden;border:1px solid var(--gerdoo-hairline-strong);border-radius:var(--gerdoo-tile);background:var(--gerdoo-canvas);box-shadow:var(--gerdoo-shadow);cursor:zoom-in}.gerdoo-figure-frame--video{cursor:default}.gerdoo-figure-frame img,.gerdoo-figure-frame video{display:block;width:100%;height:auto}.gerdoo-figure--narrow .gerdoo-figure-frame{width:auto;max-width:min(100%,420px);margin-inline:auto}.gerdoo-figure figcaption{margin-top:.5rem;font-size:.8125rem;color:var(--gerdoo-muted);text-align:center}.gerdoo-figure-missing{display:grid;place-items:center;min-height:8rem;padding:1rem;border:1px dashed var(--gerdoo-hairline-strong);border-radius:var(--gerdoo-tile);color:var(--gerdoo-muted);font-size:.875rem;text-align:center}.gerdoo-lightbox{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:1rem;background:rgb(12 10 9/.82);cursor:zoom-out}.gerdoo-lightbox img{max-width:100%;max-height:100%;border-radius:.5rem}.hero-flow{--hf-cycle:7s;display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;gap:.75rem;padding:1.25rem;border:1px solid var(--gerdoo-hairline-strong);border-radius:var(--gerdoo-tile);background:var(--gerdoo-canvas);box-shadow:var(--gerdoo-shadow);font-size:.8125rem}.hero-flow__stage{display:flex;flex-direction:column;gap:.6rem;min-width:0;padding:.9rem;border:1px solid var(--gerdoo-hairline-strong);border-radius:.6rem;background:rgb(255 255 255/.7)}.dark .hero-flow__stage{background:rgb(255 255 255/.03)}.hero-flow__label{font-weight:800;color:var(--gerdoo-fg)}.hero-flow__terminal{padding:.5rem .6rem;border-radius:.4rem;background:#1c1917;color:#f5f5f4;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;white-space:nowrap;overflow:hidden;animation:hf-type var(--hf-cycle) steps(20) infinite}.hero-flow__prompt{color:var(--gerdoo-orange)}.hero-flow__sources{display:flex;flex-wrap:wrap;gap:.3rem}.hero-flow__sources span{padding:.1rem .45rem;border:1px solid var(--gerdoo-hairline-strong);border-radius:999px;color:var(--gerdoo-muted);font-size:.6875rem}.hero-flow__arrow{position:relative;align-self:center;width:2.25rem;height:2px;background:var(--gerdoo-hairline-strong);overflow:hidden}.hero-flow__arrow span{position:absolute;inset-block:0;inset-inline-start:0;width:40%;background:var(--gerdoo-orange);animation:hf-pulse var(--hf-cycle) ease-in-out infinite}.hero-flow__arrow:last-of-type span{animation-delay:calc(var(--hf-cycle) * .35)}.hero-flow__steps{display:grid;gap:.35rem;margin:0;padding:0;list-style:none;color:var(--gerdoo-muted)}.hero-flow__steps li{display:flex;align-items:center;gap:.4rem;opacity:.35;animation:hf-step var(--hf-cycle) infinite}.hero-flow__steps li:nth-child(2){animation-delay:calc(var(--hf-cycle) * .08)}.hero-flow__steps li:nth-child(3){animation-delay:calc(var(--hf-cycle) * .16)}.hero-flow__steps li:nth-child(4){animation-delay:calc(var(--hf-cycle) * .24)}.hero-flow__steps i{width:.5rem;height:.5rem;border-radius:999px;background:#16a34a;flex:none}.hero-flow__bar{height:4px;border-radius:999px;background:var(--gerdoo-hairline-strong);overflow:hidden;margin-top:auto}.hero-flow__bar span{display:block;height:100%;width:100%;background:var(--gerdoo-orange);transform-origin:right;animation:hf-bar var(--hf-cycle) ease-out infinite}.hero-flow__url{display:flex;align-items:center;gap:.35rem;padding:.45rem .6rem;border:1px solid var(--gerdoo-hairline-strong);border-radius:.4rem;background:rgb(255 255 255/.9);color:var(--gerdoo-fg);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:hf-live var(--hf-cycle) infinite}.dark .hero-flow__url{background:rgb(255 255 255/.06)}.hero-flow__url svg{width:.8rem;height:.8rem;color:#16a34a;flex:none}.hero-flow__status{display:flex;align-items:center;gap:.4rem;color:#16a34a;font-weight:700;animation:hf-live var(--hf-cycle) infinite}.hero-flow__status i{width:.5rem;height:.5rem;border-radius:999px;background:#16a34a;box-shadow:0 0 0 0 rgb(22 163 74/.5);animation:hf-ping 1.6s ease-out infinite}@keyframes hf-type{0%{clip-path:inset(0 100% 0 0)}15%,to{clip-path:inset(0 0 0 0)}}@keyframes hf-pulse{0%,15%{transform:translateX(260%);opacity:0}20%{opacity:1}35%{transform:translateX(-120%);opacity:1}36%,to{opacity:0}}@keyframes hf-step{0%,25%{opacity:.35}30%,92%{opacity:1}to{opacity:.35}}@keyframes hf-bar{0%,22%{transform:scaleX(0)}58%,92%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes hf-live{0%,58%{opacity:.25;filter:grayscale(1)}64%,94%{opacity:1;filter:none}to{opacity:.25;filter:grayscale(1)}}@keyframes hf-ping{0%{box-shadow:0 0 0 0 rgb(22 163 74/.5)}to{box-shadow:0 0 0 8px rgb(22 163 74/0)}}@media (max-width:720px){.hero-flow{grid-template-columns:1fr}.hero-flow__arrow{justify-self:center;width:2px;height:1.25rem}.hero-flow__arrow span{display:none}}@media (prefers-reduced-motion:reduce){.hero-flow *,.hero-flow :before{animation:none!important;opacity:1!important;filter:none!important;clip-path:none!important;transform:none!important}}.gerdoo-landing-link{display:flex;flex-direction:column;gap:.15rem;margin-top:3rem;padding:1rem 1.25rem;border:1px solid var(--gerdoo-hairline-strong);border-radius:var(--gerdoo-tile);background:var(--gerdoo-canvas);color:var(--gerdoo-fg);text-decoration:none;transition:border-color .15s,box-shadow .15s}.gerdoo-landing-link:hover{border-color:var(--gerdoo-orange);box-shadow:var(--gerdoo-shadow-lift)}.gerdoo-landing-link__kicker{font-size:.75rem;color:var(--gerdoo-muted)}.gerdoo-landing-link__title{font-weight:800}.gerdoo-landing-link__title:after{content:" ←";color:var(--gerdoo-orange)}