@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-sans-latin-400-normal-DRC__1Mx.woff2)format("woff2"),url(/assets/instrument-sans-latin-400-normal-D1W7dsQl.woff)format("woff")}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/instrument-sans-latin-500-normal-Dk9ku72i.woff2)format("woff2"),url(/assets/instrument-sans-latin-500-normal-Z6ESRlEs.woff)format("woff")}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/instrument-sans-latin-600-normal-B7fBEWYG.woff2)format("woff2"),url(/assets/instrument-sans-latin-600-normal-B9e8oLYv.woff)format("woff")}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/instrument-sans-latin-700-normal-CYfAanHo.woff2)format("woff2"),url(/assets/instrument-sans-latin-700-normal-DfAjL1vF.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-700-normal-D3wTyLJW.woff)format("woff")}@font-face{font-family:Asimovian;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/asimovian-latin-400-normal-4N8dBKSO.woff2)format("woff2"),url(/assets/asimovian-latin-400-normal-D1TN-Z7N.woff)format("woff")}:root{--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-fast:.12s;--dur-base:.2s;--dur-slow:.32s}.site-header{view-transition-name:site-header}@media (width>=761px){.docs-layout .sidebar{view-transition-name:var(--sidebar-vt,docs-sidebar);view-transition-class:sidebar}}@media (width<=760px){.docs-bar{view-transition-name:docs-bar}.docs-layout .sidebar.is-open,.docs-layout .sidebar.is-closing{view-transition-name:docs-drawer}}::view-transition-group(root){animation:none}::view-transition-old(root){mix-blend-mode:normal}::view-transition-new(root){mix-blend-mode:normal}::view-transition-old(root){animation:var(--dur-fast) linear both vt-out-up}::view-transition-new(root){animation:.26s var(--ease-out) 40ms both vt-in-up}html[data-nav=back]::view-transition-old(root){animation-name:vt-out-down}html:active-view-transition-type(back)::view-transition-old(root){animation-name:vt-out-down}html[data-nav=back]::view-transition-new(root){animation-name:vt-in-down}html:active-view-transition-type(back)::view-transition-new(root){animation-name:vt-in-down}::view-transition-group(site-header){animation:none}::view-transition-group(docs-bar){animation:none}::view-transition-group(docs-drawer){animation:none}::view-transition-group(*.sidebar){animation:none}::view-transition-old(site-header){display:none}::view-transition-old(docs-bar){display:none}::view-transition-new(site-header){animation:none}::view-transition-new(docs-bar){animation:none}::view-transition-old(*.sidebar){display:none}::view-transition-new(*.sidebar){animation:none}::view-transition-group(site-header){background:var(--bg)}::view-transition-old(docs-bar):only-child{animation:var(--dur-fast) linear both vt-out-up;display:block}::view-transition-new(docs-bar):only-child{animation:.26s var(--ease-out) 40ms both vt-in-up}::view-transition-old(*.sidebar):only-child{animation:var(--dur-fast) linear both vt-out-up;display:block}::view-transition-new(*.sidebar):only-child{animation:.26s var(--ease-out) 40ms both vt-in-up}::view-transition-old(docs-drawer){display:none}::view-transition-new(docs-drawer){animation:none}:is(html:has(.search-dialog) .site-header,html:has(.search-dialog) .sidebar,html:has(.search-dialog) .docs-bar){view-transition-name:none}html:has(.search-dialog)::view-transition-old(root){animation:var(--dur-base) linear both fade-out;mix-blend-mode:plus-lighter}html:has(.search-dialog)::view-transition-new(root){animation:var(--dur-base) linear both fade-in;mix-blend-mode:plus-lighter}html[data-nav=same]::view-transition-group(*){animation:none!important}html[data-nav=same]::view-transition-old(*){animation:none!important}html[data-nav=same]::view-transition-new(*){animation:none!important}@keyframes vt-out-up{to{opacity:0;transform:translateY(-6px)}}@keyframes vt-in-up{0%{opacity:0;transform:translateY(8px)}}@keyframes vt-out-down{to{opacity:0;transform:translateY(6px)}}@keyframes vt-in-down{0%{opacity:0;transform:translateY(-8px)}}html.theme-switching .site-header,html.theme-switching .sidebar,html.theme-switching .docs-bar{view-transition-name:none}html.theme-switching::view-transition-old(root){animation:none}html.theme-switching::view-transition-new(root){animation:theme-reveal var(--dur-slow) var(--ease-in-out) both}@keyframes theme-reveal{0%{clip-path:circle(0 at var(--theme-x) var(--theme-y))}to{clip-path:circle(150% at var(--theme-x) var(--theme-y))}}.theme-icon,.icon-swap,.icon-still{display:inline-flex}html[data-theme=dark] .theme-icon-moon,html:not([data-theme=dark]) .theme-icon-sun{display:none}html.theme-swapped .theme-icon,.icon-swap{animation:icon-in .18s var(--ease-out) both}@keyframes icon-in{0%{opacity:0;transform:rotate(-90deg)scale(.7)}}.search-dialog{opacity:1;transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);transform:none}@starting-style{.search-dialog{opacity:0;transform:translateY(-8px)scale(.97)}}.search-dialog[data-closing]{opacity:0;transition-duration:.14s;transition-timing-function:var(--ease-in);transform:translateY(-4px)scale(.98)}.search-dialog::backdrop{opacity:1;transition:opacity var(--dur-base) var(--ease-out)}@starting-style{.search-dialog::backdrop{opacity:0}}@media (hover:none){.search-dialog,.search-dialog[data-closing]{transform:none}@starting-style{.search-dialog{transform:none}}}.search-dialog[data-closing]::backdrop{opacity:0;transition-duration:.14s;transition-timing-function:var(--ease-in)}.search-result{transition:background-color var(--dur-fast)}.nav-menu{opacity:1;will-change:transform, opacity;transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-base) var(--ease-out);transform:none}@starting-style{.nav-menu{opacity:0;transform:translateY(-8px)}}.nav-menu[data-closing]{opacity:0;transition:opacity .11s linear, transform .14s var(--ease-in);transform:translateY(-6px)}.nav-menu a{animation:nav-link-in .18s var(--ease-out) both;animation-delay:calc(40ms + 25ms * var(--i,0))}.nav-menu[data-closing] a{animation:none}@keyframes nav-link-in{0%{opacity:0;transform:translateY(-6px)}}.nav-menu[data-closing],.sidebar.is-closing{pointer-events:none}@media (width<=760px){.docs-layout .sidebar.is-open,.docs-layout .sidebar.is-closing{will-change:transform}.docs-layout .sidebar.is-open{animation:drawer-in .3s var(--ease-out) both}.docs-layout .sidebar.is-closing{animation:drawer-out .22s var(--ease-in) both}.sidebar.is-open>:not(.drawer-head){animation:fade-in var(--dur-base) var(--ease-out) 80ms both}}@keyframes drawer-in{0%{transform:translate(-100%)}}@keyframes drawer-out{to{transform:translate(-100%)}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}.reveal{opacity:1;grid-template-rows:1fr;display:grid}.reveal-inner{min-height:0;margin:-4px;padding:4px;overflow:hidden}.reveal[data-animate]{transition:grid-template-rows var(--dur-base) var(--ease-out), opacity var(--dur-base) var(--ease-out)}@starting-style{.reveal[data-animate]{opacity:0;grid-template-rows:0fr}}.reveal[data-closing]{opacity:0;transition:grid-template-rows var(--dur-base) var(--ease-in-out), opacity var(--dur-fast) linear;grid-template-rows:0fr}.button,.icon-button,.search-button,.filter,.command-tab,.terminal-tab,.kit-chip,.cta-button,.footer-col a,.sidebar a{transition:background-color var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast), transform var(--dur-fast)}.nav-links a{transition:color var(--dur-fast), box-shadow var(--dur-fast)}.command-copy{transition:background-color var(--dur-fast), color var(--dur-fast), transform var(--dur-fast)}.sidebar .sidebar-sections a,.toc li a{transition:color var(--dur-fast), border-color var(--dur-fast), background-color var(--dur-fast)}.button:active,.search-button:active,.command-copy:active,.filter:active,.terminal-tab:active,.builder-chip:active{transform:scale(.97)}.icon-button:active{transform:scale(.94)}a.dcard,a.guide-card,a.platform-tile{transition:transform var(--dur-base) var(--ease-out), border-color var(--dur-fast), box-shadow var(--dur-base) var(--ease-out)}.platform-tile .platform-tile-marks{transition:opacity var(--dur-base) var(--ease-out)}.link-cards a,a.learn-link{transition:transform var(--dur-base) var(--ease-out), border-color var(--dur-fast)}@media (hover:hover){.link-cards a:hover,a.learn-link:hover{transform:translateY(-2px)}}button.builder-chip{transition:background-color var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast), transform var(--dur-fast)}.builder-chip .builder-chip-dot{transition:filter var(--dur-fast), opacity var(--dur-fast), transform var(--dur-base) cubic-bezier(.34, 1.56, .64, 1);transform:scale(.86)}.builder-chip[aria-pressed=true] .builder-chip-dot{transform:none}.command-copy[data-copied] svg{animation:pop .18s var(--ease-out) both}@keyframes pop{0%{opacity:0;transform:scale(.6)}}.swap-in{animation:swap-in .16s var(--ease-out) both}@keyframes swap-in{0%{opacity:0;transform:translateY(2px)}}.skip-link{transition:top var(--dur-fast)}@supports (animation-timeline:scroll()){.site-header{animation:linear both header-shade;animation-timeline:scroll();animation-range:0 64px}@keyframes header-shade{to{box-shadow:0 1px 0 var(--line), 0 8px 24px #0f1b2b0f}}}html:not([data-navigated]) .hero-copy>*{animation:rise .42s var(--ease-out) both}html:not([data-navigated]) .hero-copy>:nth-child(-n+2){animation-name:rise-slide}html:not([data-navigated]) .hero-copy>:nth-child(2){animation-delay:40ms}html:not([data-navigated]) .hero-copy>:nth-child(3){animation-delay:80ms}html:not([data-navigated]) .hero-copy>:nth-child(4){animation-delay:.12s}html:not([data-navigated]) .hero-copy>:nth-child(5){animation-delay:.16s}html:not([data-navigated]) .hero-copy>:nth-child(6){animation-delay:.2s}html:not([data-navigated]) .hero-copy>:nth-child(7){animation-delay:.24s}html:not([data-navigated]) .hero-platforms{animation:rise .48s var(--ease-out) .12s both}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}@keyframes rise-slide{0%{transform:translateY(10px)}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@media (prefers-reduced-motion:reduce){*,:before,:after,::backdrop{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff;--raised:#f4f6f9;--line:#dce2ea;--ink:#0f1b2b;--muted:#556273;--link:#2457cc;--ok:#157a3e;--warn:#c42626;--brand-blue:#2368ee;--brand-green:#208046;--brand-red:#d62d2c;--on-brand:#fff;--blue:var(--brand-blue);--code-bg:#f4f6f9;--shadow:0 1px 2px #0f1b2b0f, 0 8px 24px #0f1b2b14;--client-bg:#e6ecff;--client-ink:#2f45b5;--server-bg:#fbeedd;--server-ink:#8a4a0c}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b121c;--raised:#131d2a;--line:#243244;--ink:#eef2f7;--muted:#9aa7b8;--link:#7fa6ff;--ok:#5fd58c;--warn:#ff8080;--code-bg:#131d2a;--shadow:0 1px 2px #0000004d, 0 8px 24px #00000059;--client-bg:#1d2a52;--client-ink:#b3c3ff;--server-bg:#3a2a16;--server-ink:#f4c88a}*,:before,:after{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;scroll-padding-top:88px}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Instrument Sans,Helvetica Neue,system-ui,sans-serif;font-size:17px;line-height:28px}a{color:var(--link);text-underline-offset:3px}@media (hover:hover){a:hover{color:var(--ink)}}:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:4px}h1,h2,h3{letter-spacing:-.01em;line-height:1.2}code,kbd,pre,.mono{font-family:JetBrains Mono,ui-monospace,Menlo,monospace}.display{letter-spacing:0;font-family:Asimovian,Avenir Next,system-ui,sans-serif;font-weight:400}.label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:500;line-height:16px}.muted{color:var(--muted)}.lede{color:var(--muted);margin:0;font-size:20px;line-height:32px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:20;background:var(--ink);color:var(--bg);border-radius:6px;padding:8px 12px;position:absolute;top:-48px;left:16px}.skip-link:focus{top:12px}:root{--section-gap:clamp(80px, 8vw, 120px)}.container{max-width:1280px;margin:0 auto;padding-left:24px;padding-right:24px}.site-header{z-index:10;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}.nav{align-items:center;gap:24px;min-height:64px;display:flex}.nav-logo{color:var(--ink);display:flex}.logo{display:inline-block}.logo svg{width:100%;height:100%;display:block}.nav-links{scrollbar-width:none;gap:24px;min-width:0;display:flex;overflow-x:auto}.nav-links::-webkit-scrollbar{display:none}.nav-links a{white-space:nowrap;color:var(--ink);flex:none;padding:4px 0;font-weight:500;text-decoration:none}.nav-links a[aria-current=page]{color:var(--link);box-shadow:inset 0 -2px 0 var(--blue)}.nav-spacer{flex:1 1 0}.nav .nav-menu-button{display:none}.nav-menu{background:var(--bg);border-bottom:1px solid var(--line);position:absolute;top:100%;left:0;right:0;box-shadow:0 16px 32px #0000002e}.nav-menu .container{flex-direction:column;padding-top:8px;padding-bottom:12px;display:flex}.nav-menu a{border-bottom:1px solid var(--line);min-height:52px;color:var(--ink);justify-content:space-between;align-items:center;font-size:18px;font-weight:500;text-decoration:none;display:flex}.nav-menu a:last-child{border-bottom:0}.nav-menu a svg{color:var(--muted)}.nav-menu a[aria-current=page]{color:var(--link)}.icon-button{border:1px solid var(--line);background:var(--bg);width:40px;height:40px;color:var(--ink);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}@media (hover:hover){.icon-button:hover{background:var(--raised);color:var(--ink)}}.search-button{border:1px solid var(--line);background:var(--raised);min-width:220px;min-height:40px;color:var(--muted);font:inherit;cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:0 12px;font-size:14px;display:flex}.search-label{text-align:left;flex:1 1 0}kbd{color:var(--muted);font-size:12px}.site-footer{border-top:1px solid var(--line);margin-top:var(--section-gap)}.footer{color:var(--muted);grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:32px;padding-top:48px;padding-bottom:56px;font-size:15px;display:grid}.footer-brand{flex-direction:column;gap:14px;max-width:320px;display:flex}.footer-brand p{margin:0;line-height:24px}.footer-logo{color:var(--ink);display:inline-flex}.maker-badge{--plate-grid:#ffffff24;color:#fff;background-color:#002fa7;background-image:linear-gradient(var(--plate-grid) 1px, transparent 1px), linear-gradient(90deg, var(--plate-grid) 1px, transparent 1px);letter-spacing:.02em;height:24px;transition:transform var(--dur-fast);background-position:-1px -1px;background-size:6px 6px;border-radius:6px;align-self:flex-start;align-items:center;gap:6px;padding:0 9px 0 7px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;line-height:1;text-decoration:none;display:inline-flex;box-shadow:inset 0 0 0 1px #fff3}@media (hover:hover){.maker-badge:hover{color:#fff;transform:translateY(-1px)}}.footer-col{flex-direction:column;gap:10px;display:flex}.footer-col .label{margin-bottom:4px}.footer-col a{color:var(--ink);text-decoration:none}@media (hover:hover){.footer-col a:hover{color:var(--link);text-decoration:underline}}@media (width<=760px){.footer{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand{grid-column:1/-1}}.button{border:1px solid var(--line);background:var(--bg);min-height:44px;color:var(--ink);border-radius:10px;justify-content:center;align-items:center;padding:0 20px;font-weight:600;text-decoration:none;display:inline-flex}@media (hover:hover){.button:hover{background:var(--raised);color:var(--ink)}}.button.primary{background:var(--blue);border-color:var(--blue);color:var(--on-brand)}@media (hover:hover){.button.primary:hover{color:var(--on-brand);background:#2457cc}}.actions{flex-wrap:wrap;gap:12px;display:flex}.badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.badge{color:#0b121c;white-space:nowrap;border-radius:999px;align-items:center;gap:5px;height:24px;padding:0 9px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.badge-runs{font-weight:500}.runs-client{background:var(--client-bg);color:var(--client-ink)}.runs-server{background:var(--server-bg);color:var(--server-ink)}.badge-both{gap:0;padding:0;overflow:hidden}.badge-both .runs-client,.badge-both .runs-server{align-items:center;height:100%;display:inline-flex}.badge-both .runs-client{padding:0 11px 0 9px}.badge-both .runs-server{clip-path:polygon(7px 0,100% 0,100% 100%,0 100%);margin-left:-7px;padding:0 9px 0 12px}.tile{border-radius:34%;flex:none;justify-content:center;align-items:center;display:inline-flex}.command{border:1px solid var(--line);background:var(--code-bg);border-radius:10px;margin:16px 0;overflow:hidden}.command-bar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:6px 6px 0 8px;display:flex}.command-tabs{gap:2px;display:flex;overflow-x:auto}.command-tab{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:6px 10px 8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px}.command-tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--blue)}.command-copy{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;margin-bottom:6px;display:inline-flex}@media (hover:hover){.command-copy:hover{background:var(--line);color:var(--ink)}}.command-text{margin:0;padding:14px 16px;font-size:14px;line-height:22px;overflow-x:auto}.command-note{color:var(--muted);margin:0;padding:0 16px 12px;font-size:13px;line-height:20px}.command-note code{font-size:12px}.home{gap:var(--section-gap);flex-direction:column;padding-top:64px;display:flex}.hero{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:64px;display:grid}.hero-copy{flex-direction:column;gap:18px;min-width:0;display:flex}.hero-copy .command{max-width:520px;margin:4px 0}.hero-title{margin:0;font-size:clamp(40px,4.6vw,64px);line-height:1.08}@media (width<=1100px){.hero{gap:40px}.hero .platform-board{gap:10px}.hero .platform-tile{border-radius:20px;padding:14px}.hero .platform-tile-shell{font-size:10.5px}}@media (width<=880px){.hero{grid-template-columns:minmax(0,1fr);gap:48px}}.built-on{flex-wrap:wrap;align-items:center;gap:6px;padding-left:4px;font-size:13px;display:inline-flex}.built-on-link{border:1px solid var(--line);min-height:26px;color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-weight:500;text-decoration:none;transition:border-color .15s;display:inline-flex}@media (hover:hover){a.built-on-link:hover{color:var(--ink);border-color:var(--ink)}}.terminal{color:#eef2f7;background:#0b121c;border:1px solid #243244;border-radius:14px;overflow:hidden}.terminal-bar{border-bottom:1px solid #243244;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;display:flex}.terminal-tab{color:#9aa7b8;cursor:pointer;background:0 0;border:1px solid #243244;border-radius:6px;min-height:32px;padding:0 12px;font-size:13px}.terminal-tab[aria-pressed=true]{background:var(--brand-blue);border-color:var(--brand-blue);color:var(--on-brand)}.terminal-note{color:#9aa7b8;margin-left:auto;font-size:12px}.terminal-body{min-height:170px;margin:0;padding:24px;font-size:15px;line-height:26px;overflow-x:auto}.t-ok{color:#5fd58c}.t-dim{color:#9aa7b8}.t-info{color:#7fa6ff}.t-warn{color:#ff8080}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:24px;display:flex}.section-head h2{margin:0 0 4px;font-size:32px}.section-head p{margin:0}.kit-chips{flex-wrap:wrap;gap:6px;margin:6px 0 0;padding:0;list-style:none;display:flex}.kit-chip{border:1px solid var(--line);min-height:28px;color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12.5px;text-decoration:none;display:inline-flex}@media (hover:hover){.kit-chip:hover{border-color:var(--ink);color:var(--ink)}}.kit-chip-dot{border-radius:50%;width:9px;height:9px}.feature-code{min-width:0}.feature-code .shiki{border-radius:18px;padding:22px 24px;font-size:14px;line-height:23px;overflow-x:auto}.cta{background:var(--brand-blue);color:var(--on-brand);border-radius:28px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:40px;padding:48px;display:grid}.cta h2{margin:0 0 10px;font-size:44px;line-height:48px}.cta p:not(.command-note){color:var(--on-brand);margin:0;font-size:18px}.cta .command{background:var(--bg);color:var(--ink)}.cta-actions{color:var(--ink);flex-direction:column;gap:14px;display:flex}.cta-button{color:#0b121c;background:#fff;border-color:#fff;align-self:flex-start}@media (hover:hover){.cta-button:hover{color:#0b121c;background:#e3ebff}}.not-found{flex-direction:column;align-items:flex-start;gap:16px;max-width:720px;padding:120px 24px 140px;display:flex}.not-found h1{margin:0;font-size:56px;line-height:60px}.not-found p{margin:0;font-size:19px;line-height:30px}.not-found-links{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.table-wrap{border-radius:10px;margin:20px 0;overflow-x:auto}.prose .table-wrap>table,.table-wrap>table{margin:0;display:table;overflow:visible}.table-wrap:focus-visible{outline:2px solid var(--link);outline-offset:2px}.packages-page{padding-top:48px;padding-bottom:48px}.page-head{margin-bottom:28px}.page-head h1{margin:0 0 8px;font-size:44px}.page-head p{max-width:640px;margin:0}.dir{grid-template:"cats search""cats results"1fr/228px minmax(0,1fr);align-items:start;column-gap:40px;display:grid}.dir-search{z-index:5;background:var(--bg);grid-area:search;padding:12px 0;position:sticky;top:64px}.dir-search-box{border:1px solid var(--line);background:var(--bg);min-height:48px;color:var(--muted);border-radius:10px;align-items:center;gap:10px;padding:0 12px 0 14px;transition:border-color .15s,box-shadow .15s;display:flex}.dir-search-box:focus-within{border-color:var(--link);box-shadow:0 0 0 3px color-mix(in srgb, var(--link) 18%, transparent)}.dir-search-box input{min-width:0;height:46px;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;flex:auto;font-size:16px}.dir-kbd{border:1px solid var(--line);width:22px;height:22px;color:var(--muted);border-radius:5px;flex:none;place-items:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;line-height:1;display:inline-grid}.dir-search-box:focus-within .dir-kbd{display:none}.dir-cats{scrollbar-width:thin;flex-direction:column;grid-area:cats;gap:24px;max-height:calc(100vh - 96px);padding:12px 0 24px;display:flex;position:sticky;top:77px;overflow-y:auto}.dir-cats-label{margin:0 0 8px 12px;display:block}.dir-cats-list{flex-direction:column;gap:2px;display:flex}.filter{min-height:36px;color:var(--ink);font:inherit;cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:0 12px;font-size:15px;line-height:20px;display:flex}@media (hover:hover){.filter:hover{background:var(--raised)}}.filter[aria-pressed=true]{background:var(--raised);font-weight:600}.filter:disabled{cursor:default;opacity:.4}@media (hover:hover){.filter:disabled:hover{background:0 0}}.filter-label{flex:1 1 0}.filter-count{color:var(--muted);font-size:13px}.filter-dot{border-radius:3px;flex:none;width:12px;height:12px;display:inline-block}.build-card{background:var(--raised);color:var(--ink);border-radius:10px;flex-direction:column;gap:4px;padding:16px;font-size:14px;line-height:21px;text-decoration:none;display:flex}.dir-results{grid-area:results;min-width:0}.build-card.dir-build{margin-top:40px;display:none}.dir-status{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin:4px 0 20px;display:flex}.dir-count{color:var(--muted);margin:0;font-size:15px;line-height:22px}.dir-count strong{color:var(--ink)}.dir-clear{color:var(--link);font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin-left:10px;padding:0;text-decoration:underline}.dir-empty .dir-clear{margin:0}.dir-runs{border:1px solid var(--line);border-radius:8px;gap:2px;margin:0;padding:3px;display:inline-flex}.dir-runs button{min-height:30px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:6px;padding:0 10px;font-size:14px;line-height:1;display:inline-flex}.dir-runs button .mono{font-size:12px}@media (hover:hover){.dir-runs button:hover{color:var(--ink)}}.dir-runs button[aria-pressed=true]{background:var(--raised);color:var(--ink);font-weight:600}.dir-group+.dir-group{margin-top:40px}.dir-group-head{align-items:center;gap:10px;margin:0 0 14px;scroll-margin-top:150px;font-size:18px;font-weight:600;line-height:24px;display:flex}.dir-group-head .mono{font-size:13px;font-weight:400}.dir-group-note{margin:-8px 0 16px;font-size:15px;line-height:22px}.dir-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;display:grid}.dcard{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:12px;align-items:flex-start;gap:14px;padding:16px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}a.dcard:focus-visible{color:var(--ink);border-color:color-mix(in srgb, var(--ink) 30%, var(--line));box-shadow:var(--shadow);transform:translateY(-1px)}@media (hover:hover){a.dcard:hover{color:var(--ink);border-color:color-mix(in srgb, var(--ink) 30%, var(--line));box-shadow:var(--shadow);transform:translateY(-1px)}}.dcard-body{flex-direction:column;flex:auto;gap:6px;min-width:0;display:flex}.dcard-top{align-items:center;gap:8px;min-height:24px;display:flex}.dcard-name{text-overflow:ellipsis;flex:auto;min-width:0;font-size:16px;font-weight:600;line-height:22px;overflow:hidden}.dcard-credit{color:var(--ink);opacity:.55;flex:none;gap:6px;display:inline-flex}.dcard-summary{-webkit-line-clamp:3;line-clamp:3;color:var(--muted);-webkit-box-orient:vertical;font-size:14.5px;line-height:21px;display:-webkit-box;overflow:hidden}.dcard .badges{margin-top:4px}.dcard .badge{height:22px;font-size:11.5px}.dcard-note{font-size:13.5px;line-height:20px}.dcard-planned{background:var(--raised);border-style:dashed;scroll-margin-top:150px}.dcard-planned .tile{opacity:.75}.badge-status{border:1px solid var(--line);color:var(--muted);background:0 0}.status-building{border-color:var(--link);color:var(--link)}.dir-empty{border:1px dashed var(--line);text-align:center;border-radius:12px;padding:32px 24px}.dir-empty p{margin:0}.dir-empty p+p{margin-top:6px;font-size:15px;line-height:22px}.guides-page{padding-top:48px;padding-bottom:64px}.guide-group{margin-top:40px}.guide-group h2{margin:0 0 4px;font-size:22px;line-height:28px}.guide-group>p{max-width:640px;margin:0 0 20px}.guide-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.guide-card{border:1px solid var(--line);background:var(--bg);min-height:180px;color:var(--ink);border-radius:12px;flex-direction:column;gap:8px;padding:18px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.guide-card:focus-visible{color:var(--ink);border-color:color-mix(in srgb, var(--ink) 30%, var(--line));box-shadow:var(--shadow);transform:translateY(-1px)}@media (hover:hover){.guide-card:hover{color:var(--ink);border-color:color-mix(in srgb, var(--ink) 30%, var(--line));box-shadow:var(--shadow);transform:translateY(-1px)}}.guide-card-title{font-size:17px;font-weight:600;line-height:24px;display:block}.guide-card-summary{color:var(--muted);flex:auto;font-size:14.5px;line-height:21px}.guide-card-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:6px;display:flex}.guide-tiles{align-items:center;gap:4px;display:flex}.guide-more,.guide-time{white-space:nowrap;font-size:13px}.guide-meta{flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;display:flex}.guide-meta .kit-chips{margin:0}.guide-meta .kit-chip{gap:6px;padding-left:5px}.sidebar a.sidebar-home{color:var(--muted)}.docs-layout{grid-template-columns:220px minmax(0,1fr) 220px;align-items:start;gap:48px;display:grid}.sidebar,.toc{max-height:calc(100vh - 64px);padding:32px 0;position:sticky;top:64px;overflow:hidden auto}.sidebar{flex-direction:column;gap:22px;display:flex}.sidebar-group{flex-direction:column;display:flex}.sidebar-title{align-items:center;gap:8px;margin-bottom:6px;display:flex}.sidebar a{color:var(--ink);border-radius:6px;margin-left:-10px;padding:3px 10px;font-size:15px;line-height:26px;text-decoration:none}.sidebar a.mono{font-size:14px}@media (hover:hover){.sidebar a:hover{background:var(--raised)}}.sidebar a[aria-current=page]{background:var(--raised);color:var(--link);font-weight:600}.docs-layout-package{grid-template-columns:240px minmax(0,1fr)}.sidebar .sidebar-back{color:var(--muted);align-self:flex-start;align-items:center;gap:6px;font-size:14px;display:inline-flex}.sidebar .sidebar-back[aria-current]{color:var(--muted);background:0 0;font-weight:400}@media (hover:hover){.sidebar .sidebar-back:hover{color:var(--ink);background:0 0}}.sidebar .sidebar-package{align-items:center;gap:10px;margin-top:-8px;font-size:17px;font-weight:600;display:flex}.sidebar .sidebar-package[aria-current]{color:var(--ink);background:0 0}.sidebar-package .tile{border-radius:8px;flex:none}.sidebar-page{flex-direction:column;display:flex}.sidebar .sidebar-page>a{font-weight:500}.sidebar-sections,.sidebar-sections ul{margin:0;padding:0;list-style:none}.sidebar-sections{border-left:1px solid var(--line);margin:4px 0 8px}.sidebar-sections ul{margin:2px 0 4px}.sidebar .sidebar-sections a{color:var(--muted);border-left:2px solid #0000;border-radius:0;margin:0 0 0 -1px;padding:3px 10px 3px 13px;font-size:14px;line-height:21px;display:block}.sidebar .sidebar-sections ul a{padding-left:25px;font-size:13.5px}@media (hover:hover){.sidebar .sidebar-sections a:hover{color:var(--ink);background:0 0}}.sidebar .sidebar-sections a[aria-current=location]{color:var(--link);border-left-color:var(--blue);font-weight:500}.sidebar .sidebar-sections ul a[aria-current=location]{border-left-color:#0000}.sidebar-foot{border-top:1px solid var(--line);flex-direction:column;gap:2px;padding-top:14px;display:flex}.sidebar .sidebar-foot a{color:var(--muted);align-items:center;gap:6px;font-size:14px;display:inline-flex}.sidebar .sidebar-browse{align-items:center;gap:6px;display:inline-flex}.docs-bar,.drawer-head,.narrow-only{display:none}.toc ul{border-left:1px solid var(--line);margin:10px 0 20px;padding:0;list-style:none}.toc li a{color:var(--muted);padding:3px 12px;font-size:14px;line-height:21px;text-decoration:none;display:block}.toc li[data-depth="3"] a{padding-left:24px}@media (hover:hover){.toc li a:hover{color:var(--ink)}}.toc-edit{color:var(--muted);align-items:center;gap:6px;margin-bottom:6px;font-size:14px;text-decoration:none;display:flex}.docs-main{min-width:0;padding:40px 0}.doc-head{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.doc-head h1{margin:0;font-size:44px}.package-head{flex-wrap:wrap;align-items:center;gap:24px;margin-bottom:28px;display:flex}@media (width<=760px){.package-head{gap:16px}.package-head>.tile{width:56px!important;height:56px!important}.package-head>.tile svg{width:30px;height:30px}}.package-head-compact{gap:16px;margin-bottom:20px}.package-head-compact .package-head-text{gap:2px}.package-head-compact .package-title{font-size:32px;line-height:38px}.package-head-text{flex-direction:column;flex:360px;gap:6px;display:flex}.package-title{margin:0;font-size:44px;font-weight:500;line-height:50px}.package-summary{margin:0;font-size:19px;line-height:29px}.tabs{border-bottom:1px solid var(--line);gap:4px;margin-bottom:28px;display:flex}.tabs a{color:var(--muted);border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:500;text-decoration:none}.tabs a[aria-current=page]{color:var(--ink);border-bottom-color:var(--blue)}.pager{border-top:1px solid var(--line);justify-content:space-between;gap:16px;margin-top:56px;padding-top:24px;display:flex}.pager-link{border:1px solid var(--line);color:var(--ink);overflow-wrap:anywhere;border-radius:10px;flex-direction:column;flex:0 280px;gap:2px;min-width:0;padding:14px 18px;font-weight:600;text-decoration:none;display:flex}.pager-link.next{text-align:right;margin-left:auto}.prose{max-width:760px}.prose h2{margin:48px 0 12px;font-size:28px}.prose h3{margin:32px 0 8px;font-size:20px}.prose p,.prose ul,.prose ol{margin:0 0 16px}.prose li{margin:4px 0}.prose :not(pre)>code{background:var(--raised);border:1px solid var(--line);border-radius:5px;padding:2px 5px;font-size:.88em}.prose blockquote{--accent:var(--link);border:1px solid var(--line);background:linear-gradient(var(--accent), var(--accent)) top / 100% 3px no-repeat border-box, var(--raised);border-top-color:#0000;border-radius:12px;margin:20px 0;padding:16px 20px}.prose blockquote>:first-child{margin-top:0}.prose blockquote>:last-child{margin-bottom:0}.prose blockquote pre{background:var(--bg)}.prose kbd{color:var(--ink);background:var(--raised);border:1px solid var(--line);white-space:nowrap;border-bottom-width:2px;border-radius:6px;padding:1px 6px;font-size:.8em}.prose table{border-collapse:collapse;width:100%;margin:8px 0 24px;font-size:15px;line-height:23px;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:10px 14px}.prose th{background:var(--raised);font-weight:600}.prose td code{white-space:nowrap}.code{margin:16px 0 24px;position:relative}.shiki{border:1px solid var(--line);border-radius:10px;margin:0;padding:16px 18px;font-size:14px;line-height:22px;overflow-x:auto;background:var(--code-bg)!important}.shiki span{color:var(--shiki-light)}[data-theme=dark] .shiki span{color:var(--shiki-dark)}.code-copy{border:1px solid var(--line);background:var(--bg);color:var(--muted);font:inherit;cursor:pointer;opacity:0;border-radius:6px;padding:4px 10px;font-size:12px;transition:opacity .15s;position:absolute;top:8px;right:8px}.code-copy:focus-visible{opacity:1}@media (hover:hover){.code:hover .code-copy{opacity:1}}@media (hover:none){.code-copy{opacity:1}}.example{border:1px solid var(--line);background:var(--raised);border-radius:14px;margin:0 0 32px;overflow:hidden}.example-bar{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:8px 10px 8px 14px;display:flex}.example-dots{gap:6px;display:flex}.example-dots span{background:var(--line);border-radius:50%;width:10px;height:10px}.example-url{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:12px;overflow:hidden}.example-button{border:1px solid var(--line);background:var(--bg);min-height:32px;color:var(--ink);font:inherit;cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:0 10px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.example-button:disabled{opacity:.5;cursor:default}.example-body{grid-template-columns:minmax(0,1fr) 260px;min-height:300px;display:grid}.example-body-wide{grid-template-columns:minmax(0,1fr)}.example-body-narrow{justify-items:center}.example-body-narrow .example-frame{border-inline:1px solid var(--line);max-width:100%}.example-frame{background:var(--bg);border:0;width:100%;height:100%;min-height:300px}.example-storage{border-left:1px solid var(--line);flex-direction:column;gap:10px;min-width:0;padding:12px 14px;display:flex}.example-storage-head{justify-content:space-between;align-items:center;display:flex}.example-key{color:var(--link);font-size:12px}.example-value{white-space:pre-wrap;word-break:break-all;max-height:200px;margin:4px 0 0;font-size:12px;line-height:18px;overflow:auto}.example-empty{color:var(--muted);margin:0;font-size:13px;line-height:20px}.example figcaption{border-top:1px solid var(--line);color:var(--muted);padding:10px 14px;font-size:14px;line-height:21px}.play{background:var(--bg);min-height:100vh;padding:20px}.play-loading{color:var(--muted)}.demo{flex-direction:column;gap:12px;font-size:15px;display:flex}.demo-row{flex-wrap:wrap;gap:8px;display:flex}.demo-button{border:1px solid var(--line);background:var(--bg);min-height:38px;color:var(--ink);font:inherit;cursor:pointer;border-radius:8px;padding:0 14px;font-weight:600}.demo-button.primary{background:var(--blue);border-color:var(--blue);color:var(--on-brand)}.demo-button:disabled{opacity:.5;cursor:default}.demo-muted{color:var(--muted);margin:0}.demo-list{border:1px solid var(--line);border-radius:10px;margin:0;padding:0;list-style:none}.demo-list:empty{display:none}.demo-list li{border-bottom:1px solid var(--line);justify-content:space-between;padding:8px 12px;display:flex}.demo-list li:last-child{border-bottom:0}.demo-link{color:var(--link);font:inherit;cursor:pointer;background:0 0;border:0}.demo-toast{border:1px solid var(--line);background:var(--raised);box-shadow:var(--shadow);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.demo-form{flex-direction:column;gap:12px;max-width:360px;display:flex}.demo-form [data-kitr=field]{flex-direction:column;gap:4px;display:flex}.demo-form [data-kitr=label]{font-size:14px;font-weight:600}.demo-form input{border:1px solid var(--line);background:var(--bg);min-height:38px;color:var(--ink);font:inherit;border-radius:8px;padding:0 10px}.demo-form [data-invalid] input{border-color:var(--warn)}.demo-form [data-kitr=field-error],.demo-form [role=alert]{color:var(--warn);margin:0;font-size:14px}.demo-form .demo-button{align-self:flex-start}.demo-table{border-collapse:collapse;border:1px solid var(--line);border-radius:10px;width:100%;overflow:hidden}.demo-table th,.demo-table td{border-bottom:1px solid var(--line);text-align:left;padding:8px 12px}.demo-table th{background:var(--raised);font-weight:600}.demo-table tr:last-child td{border-bottom:0}.demo-code{background:var(--code-bg);border-radius:10px;margin:0;padding:10px 12px;font-size:13px;overflow:auto}.search-dialog{border:1px solid var(--line);background:var(--bg);width:min(640px,100vw - 32px);color:var(--ink);box-shadow:var(--shadow);border-radius:14px;margin:10vh auto auto;padding:0}.search-dialog::backdrop{background:#0b121c80}.search-close{border:1px solid var(--line);min-width:44px;min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;flex:none;padding:4px 8px;font-size:12px}.search-close:focus-visible{color:var(--ink);border-color:var(--ink)}@media (hover:hover){.search-close:hover{color:var(--ink);border-color:var(--ink)}}@media (pointer:coarse){.search-close{font-size:0}.search-close:before{content:"Close";font-size:13px}}.search-input{border-bottom:1px solid var(--line);color:var(--muted);align-items:center;gap:10px;padding:0 16px;display:flex}.search-input input{min-height:56px;color:var(--ink);font:inherit;background:0 0;border:0;outline:none;flex:auto;font-size:18px}.search-results{max-height:60vh;margin:0;padding:8px;list-style:none;overflow-y:auto}.search-result{color:var(--ink);border-radius:10px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;display:grid}@media (hover:hover){.search-result:hover{color:var(--ink)}}.search-result[aria-current=true]{background:var(--raised)}.search-result .tile{border-radius:9px}.search-icon{width:32px;height:32px;box-shadow:inset 0 0 0 1px var(--line);color:var(--muted);border-radius:9px;place-items:center;display:grid}.search-body{flex-direction:column;gap:1px;min-width:0;display:flex}.search-title,.search-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.search-title{font-size:15px;line-height:22px}.search-title strong{font-weight:600}.search-heading{color:var(--muted)}.search-heading:before{content:" › "}.search-text{color:var(--muted);font-size:13.5px;line-height:20px}.search-kind{letter-spacing:.04em;color:var(--muted);font-size:11px}@media (width<=560px){.search-result{grid-template-columns:32px minmax(0,1fr);padding:10px}.search-kind{display:none}}.search-empty{color:var(--muted);padding:16px 12px}.about{gap:var(--section-gap);flex-direction:column;padding-top:64px;display:flex}.about-hero{flex-wrap:wrap;align-items:center;gap:56px;display:flex}.about-hero>div{flex-direction:column;flex:460px;gap:18px;display:flex}.about-hero h1{margin:0;font-size:60px;line-height:64px}.idea-tiles{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.idea-tile{color:var(--on-brand);border-radius:18px;flex-direction:column;gap:10px;min-height:220px;padding:32px;display:flex}.idea-tile p{margin:0}.idea-title{font-size:30px;line-height:34px}.about-row{flex-wrap:wrap;gap:24px;display:flex}.maker,.brand{border-radius:18px;flex-direction:column;flex:400px;align-items:flex-start;gap:10px;padding:32px;display:flex}.maker{background:var(--raised)}.maker-plate{--plate-grid:#ffffff1f;color:#fff;background-color:#002fa7;background-image:linear-gradient(var(--plate-grid) 1px, transparent 1px), linear-gradient(90deg, var(--plate-grid) 1px, transparent 1px);background-position:-1px -1px;background-size:11px 11px;border-radius:18px;place-items:center;width:88px;height:88px;margin-bottom:14px;transition:transform .16s;display:grid;box-shadow:inset 0 0 0 1px #fff3}@media (hover:hover){.maker-plate:hover{color:#fff;transform:translateY(-2px)}}.maker-links{flex-wrap:wrap;gap:4px 20px;display:flex}.brand{border:1px solid var(--line)}.maker h2,.brand h2{margin:0;font-size:26px}.maker p,.brand p{margin:0}.swatches{gap:10px;display:flex}.swatches span{border:1px solid var(--line);border-radius:10px;width:44px;height:44px}.link-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.link-cards a{border:1px solid var(--line);color:var(--ink);border-radius:10px;flex-direction:column;padding:24px;text-decoration:none;display:flex}.link-cards h3{margin:0 0 4px;font-size:18px}@media (width<=900px){.dir{grid-template:"search""cats""results"/minmax(0,1fr)}.dir-search{padding:8px 0}.dir-kbd{display:none}.dir-cats{max-height:none;padding:4px 0 14px;position:static;overflow:visible}.dir-cats-label,.dir-cats .build-card{display:none}.dir-cats-list{overscroll-behavior-x:contain;scrollbar-width:none;flex-direction:row;gap:8px;margin:0 -24px;padding:2px 24px;overflow-x:auto}.dir-cats-list::-webkit-scrollbar{display:none}.filter{border:1px solid var(--line);border-radius:999px;flex:none;gap:8px;min-height:36px;padding:0 12px;font-size:14px}.filter:hover{background:0 0}.filter[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.filter[aria-pressed=true] .filter-count{color:inherit}.filter:disabled{display:none}.filter-dot{width:10px;height:10px}.dir-group-head{scroll-margin-top:130px}.dir-results{min-height:100vh}.build-card.dir-build{display:flex}}@media (width<=1100px){.platforms-layout,.cta{grid-template-columns:minmax(0,1fr);gap:28px}.docs-layout{grid-template-columns:200px minmax(0,1fr)}.toc{display:none}.narrow-only{display:block}}@media (width<=760px){.cta{border-radius:22px;padding:28px 22px}.cta h2{font-size:32px;line-height:36px}.not-found{padding:72px 16px 96px}.not-found h1{font-size:40px;line-height:44px}body{font-size:16px}.container{padding-left:16px;padding-right:16px}.nav{gap:10px}.nav-links{gap:14px;font-size:15px}.nav-logo .logo{width:57px!important;height:22px!important}.nav .github-link,.nav-links{display:none}.nav .nav-menu-button{display:inline-flex}.search-button{min-width:0}.search-button kbd{display:none}.search-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hero-title{font-size:38px;line-height:44px}.about-hero h1{font-size:40px;line-height:46px}.about-hero{gap:24px}.about-hero img{width:88px;height:88px}.docs-layout{display:block}html:has(.docs-bar){scroll-padding-top:128px}.site-header{transition:transform .2s}html.header-hidden .site-header{transform:translateY(-100%)}.docs-bar{z-index:9;background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);margin:0 -16px;padding:8px 16px;transition:top .2s;display:block;position:sticky;top:64px}html.header-hidden .docs-bar{top:0}.docs-bar-menu{border:1px solid var(--line);background:var(--raised);width:100%;min-height:40px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:0 12px;font-size:15px;display:flex}.docs-bar-menu[aria-expanded=true]{border-color:var(--blue)}.docs-bar-where{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;font-weight:600;display:block;overflow:hidden}.docs-bar-page{color:var(--muted);margin-left:6px;font-weight:500}.docs-layout .sidebar{display:none}.docs-layout .sidebar.is-open,.docs-layout .sidebar.is-closing{z-index:30;background:var(--bg);overscroll-behavior:contain;max-height:none;padding:0 20px 40px;display:flex;position:fixed;inset:0}.sidebar.is-open .drawer-head,.sidebar.is-closing .drawer-head{z-index:1;background:var(--bg);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:60px;margin:0 -20px;padding:0 12px 0 20px;display:flex;position:sticky;top:0}.sidebar.is-open a,.sidebar.is-closing a{line-height:30px}.sidebar.is-open .sidebar-sections a,.sidebar.is-closing .sidebar-sections a{padding-top:6px;padding-bottom:6px}html.drawer-open{overflow:hidden}.packages-page{padding-top:28px}.page-head{margin-bottom:12px}.page-head p{font-size:15px;line-height:23px}.dir-cats-list{margin:0 -16px;padding:2px 16px}.dir-grid{grid-template-columns:minmax(0,1fr);gap:10px}.dcard{padding:14px}.dir-status{margin-bottom:14px}.example-body{grid-template-columns:1fr}.example-storage{border-left:0;border-top:1px solid var(--line)}.terminal-note{display:none}.terminal-bar{grid-template-columns:1fr 1fr;gap:8px;padding:12px;display:grid}.terminal-bar .example-dots{display:none}.terminal-tab{padding:0 8px}.terminal-body{padding:20px 16px;font-size:13.5px;line-height:24px}.doc-head h1,.package-title,.page-head h1{font-size:34px;line-height:40px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.platform-board{flex:380px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:480px;display:grid}.platform-tile{color:#0b121c;border-radius:24px;flex-direction:column;justify-content:space-between;gap:12px;padding:16px;text-decoration:none;transition:transform .18s,box-shadow .18s;display:flex;position:relative;box-shadow:inset 0 0 0 1px #0b121c0f,inset 0 1px #ffffff59}.platform-tile-lg{aspect-ratio:1/1.08}.platform-tile:focus-visible{color:#0b121c;transform:translateY(-3px);box-shadow:inset 0 0 0 1px #0b121c14,0 14px 28px -16px #0b121c8c}@media (hover:hover){.platform-tile:hover{color:#0b121c;transform:translateY(-3px);box-shadow:inset 0 0 0 1px #0b121c14,0 14px 28px -16px #0b121c8c}}.platform-tile-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.platform-tile-icon{background:#ffffff6b;border-radius:34%;place-items:center;width:56px;height:56px;display:grid}.platform-tile-marks{opacity:.45;flex-direction:column;gap:8px;transition:opacity .18s;display:flex}@media (hover:hover){.platform-tile:hover .platform-tile-marks{opacity:.75}}.platform-tile-text{flex-direction:column;gap:2px;min-width:0;display:flex}.platform-tile-name{letter-spacing:-.01em;font-size:19px;font-weight:600;line-height:24px}.platform-tile-shell{opacity:.9;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;line-height:16px;overflow:hidden}.platform-tile-own{color:var(--muted);box-shadow:inset 0 0 0 1.5px var(--line);background:0 0;background-image:repeating-linear-gradient(135deg, transparent 0 10px, color-mix(in srgb, var(--raised) 70%, transparent) 10px 20px);border:0}.platform-tile-own:focus-visible{color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink), 0 14px 28px -18px #0b121c66}@media (hover:hover){.platform-tile-own:hover{color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink), 0 14px 28px -18px #0b121c66}}.platform-tile-own .platform-tile-icon{background:var(--bg);box-shadow:inset 0 0 0 1px var(--line)}.platform-tile-own .platform-tile-shell{opacity:1}.platform-tile-sm{border-radius:20px;flex:170px;min-height:132px;padding:14px}.platform-tile-sm .platform-tile-icon{width:42px;height:42px}.platform-tile-sm .platform-tile-name{font-size:17px}.builder{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:56px;scroll-margin-top:96px;display:grid}.builder-copy{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.builder-title{margin:0;font-size:36px;line-height:42px}.builder-copy>p{margin:0;font-size:18px;line-height:30px}.builder-choices{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;max-width:520px;margin:6px 0 0;padding:0;display:grid}.builder-chip{border:1px solid var(--line);background:var(--bg);min-height:44px;color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 14px 0 6px;font-size:14px;transition:border-color .15s,background .15s,color .15s;display:inline-flex}@media (hover:hover){.builder-chip:hover{border-color:var(--muted);color:var(--ink)}}.builder-chip[aria-pressed=true]{border-color:var(--ink);background:var(--raised);color:var(--ink)}.builder-chip-dot{filter:grayscale();opacity:.45;border-radius:50%;place-items:center;width:28px;height:28px;transition:filter .15s,opacity .15s;display:grid}.builder-chip[aria-pressed=true] .builder-chip-dot{filter:none;opacity:1}.builder-chip-type{color:var(--muted)}@media (width<=560px){.builder-choices{grid-template-columns:minmax(0,1fr);gap:6px}.builder-chip{min-height:44px}}.builder-out{flex-direction:column;gap:12px;min-width:0;display:flex}.builder-code .shiki{min-height:0;line-height:21px}.builder-term{color:#eef2f7;white-space:pre;background:#0b121c;border:1px solid #243244;border-radius:14px;padding:16px 20px;font-size:13.5px;line-height:21px;overflow-x:auto}.builder-term-gap{margin-top:10px}.platforms-page,.platform-page{gap:var(--section-gap);flex-direction:column;padding-top:40px;display:flex}.platforms-intro{flex-wrap:wrap;align-items:center;gap:56px;display:flex}.platforms-intro-copy{flex-direction:column;flex:480px;gap:16px;min-width:0;display:flex}.platform-title{margin:0;font-size:60px;line-height:64px}.platform-table table,.shell-compare table{border-collapse:collapse;width:100%;font-size:15px;line-height:23px}.platform-table th,.platform-table td,.shell-compare th,.shell-compare td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:12px 16px}.platform-table thead th,.shell-compare thead th{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:500}.platform-table td code{white-space:nowrap;font-size:13px}.platform-row-name{color:var(--ink);white-space:nowrap;align-items:center;gap:12px;font-weight:600;text-decoration:none;display:inline-flex}@media (hover:hover){.platform-row-name:hover{color:var(--link)}}.platform-table-note{margin:0;font-size:15px}@media (width<=760px){.platform-table thead,.platform-table td.platform-table-shell{display:none}.platform-table tr{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr);gap:6px;padding:14px 0;display:grid}.platform-table th,.platform-table td{border:0;padding:0;display:block}.platform-table td.platform-table-targets{color:var(--muted);padding-left:44px;font-size:14px}.platform-table td code{white-space:normal;margin-left:44px}}.crumbs{color:var(--muted);gap:8px;margin-bottom:-48px;font-size:13px;display:flex}.crumbs a{color:var(--muted)}@media (hover:hover){.crumbs a:hover{color:var(--ink)}}.platform-hero{grid-template-columns:minmax(0,6fr) minmax(0,5fr);align-items:center;gap:56px;display:grid}.platform-hero-copy{flex-direction:column;align-items:flex-start;gap:18px;min-width:0;display:flex}.platform-hero-copy .command{width:100%;max-width:560px;margin:0}.platform-hero-head{align-items:center;gap:14px;display:flex}.platform-hero-tile{width:64px;height:64px}.target-chips{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.target-chips li{border:1px solid var(--line);border-radius:999px;padding:2px 12px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;line-height:24px}.platform-hero-code .shiki{font-size:13.5px;line-height:22px}.platform-highlights{border-top:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;padding-top:32px;display:grid}.platform-highlight h2{margin:0 0 8px;font-size:18px;line-height:24px}.platform-highlight p{margin:0;font-size:15px;line-height:24px}.platform-highlight code,.platform-hero code,.learn-link code{font-size:.9em}.platform-run,.shell-compare,.platform-kits{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:48px;display:grid}.platform-run h2,.shell-compare h2,.platform-kits h2,.platform-learn h2,.platform-packages h2,.platform-combine h2{margin:0 0 8px;font-size:28px;line-height:34px}.platform-run p,.shell-compare p,.platform-kits p{margin:0 0 12px}.run-list{color:#eef2f7;background:#0b121c;border:1px solid #243244;border-radius:14px;margin:0;padding:8px 0;font-size:13.5px;line-height:22px}.run-list>div{grid-template-columns:minmax(150px,auto) minmax(0,1fr);gap:20px;padding:8px 22px;display:grid}.run-list dt:before{content:"$ ";color:#9aa7b8}.run-list dd{color:#9aa7b8;margin:0}.shell-compare .table-wrap{margin:0}.shell-compare .is-current{background:var(--raised);color:var(--ink)}.shell-compare thead .is-current{color:var(--ink)}.shell-compare tbody th{color:var(--muted);white-space:nowrap;font-weight:500}.platform-packages .section-head{margin-bottom:8px}.package-group{margin-top:32px}.package-group h3{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0 0 14px;font-size:18px;line-height:24px;display:flex}.package-group h3 .kit-chip-dot{align-self:center;width:10px;height:10px}.package-group h3 .muted{font-size:15px;font-weight:400}.package-group-native{background:var(--raised);box-shadow:inset 4px 0 0 var(--platform,var(--line));border-radius:22px;padding:24px}.package-group-native .card,.platform-packages .card{min-height:0}.learn-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:16px;display:grid}.learn-col{flex-direction:column;gap:10px;min-width:0;display:flex}.learn-link{border:1px solid var(--line);color:var(--ink);border-radius:14px;flex-direction:column;gap:2px;padding:14px 16px;text-decoration:none;transition:border-color .15s;display:flex}@media (hover:hover){.learn-link:hover{color:var(--ink);border-color:var(--ink)}}.learn-link strong{align-items:center;gap:6px;font-size:16px;font-weight:600;line-height:24px;display:inline-flex}.learn-link span{font-size:14px;line-height:21px}.learn-more{align-self:flex-start;margin-top:4px;font-size:14px}.learn-empty{border:1px dashed var(--line);border-radius:14px;margin:0;padding:14px 16px;font-size:14px;line-height:21px}.platform-kits{background:var(--raised);border-radius:22px;padding:32px}.platform-kits .command{background:var(--bg);margin:0}.combine-row{flex-wrap:wrap;gap:12px;display:flex}@media (width<=1100px){.builder,.platform-hero,.platform-run,.shell-compare,.platform-kits{grid-template-columns:minmax(0,1fr);gap:28px}.platform-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.platform-board{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:none}.platform-tile{border-radius:20px;padding:12px}.platform-tile-lg{aspect-ratio:4/3}.platform-tile-icon{width:40px;height:40px}.platform-tile-icon svg{width:24px;height:24px}.platform-tile-marks svg{width:14px;height:14px}.platform-tile-name{font-size:17px;line-height:22px}.platform-tile-shell{font-size:11px;line-height:15px}.platform-tile-sm{flex-basis:140px}.builder-title,.platform-title{font-size:38px;line-height:44px}.builder-copy>p{font-size:16px;line-height:26px}.platforms-page,.platform-page{padding-top:24px}.crumbs{margin-bottom:-32px}.platform-highlights,.learn-grid{grid-template-columns:minmax(0,1fr)}.run-list>div{grid-template-columns:minmax(0,1fr);gap:0;padding:8px 16px}.platform-kits{padding:22px 18px}.package-group-native{padding:18px 14px}}.hero-platforms{flex-direction:column;gap:12px;min-width:0;display:flex}.hero-platforms .platform-board{flex:none;max-width:none}.hero-platforms-note{align-self:flex-end;font-size:14px;line-height:20px}@media (width<=760px){.hero-platforms-note{align-self:flex-start}}.package-columns{columns:3 300px;column-gap:40px;margin-top:36px}.package-column{break-inside:avoid;margin-bottom:28px}.package-column h3{align-items:center;gap:8px;margin:0 0 8px;display:flex}.package-column ul{margin:0;padding:0;list-style:none}.package-row{color:var(--ink);border-radius:12px;align-items:flex-start;gap:12px;margin:0 -10px;padding:8px 10px;text-decoration:none;display:flex}@media (hover:hover){.package-row:hover{color:var(--ink);background:var(--raised)}}.package-row-text{flex-direction:column;min-width:0;font-size:14px;line-height:20px;display:flex}.package-row-name{font-size:15px;font-weight:500;line-height:22px}@media (width<=760px){.nav-links a[href=\/about]{display:none}}@media (width<=480px){.nav-links a[href=\/platforms]{display:none}}@media (width<=400px){.nav{gap:8px}.nav-links{gap:10px;font-size:14px}}.platform-tile-own{grid-column:span 2}.platform-tile-lg.platform-tile-own{aspect-ratio:auto}.home-title{margin:0;font-size:32px;line-height:38px}.gets{flex-direction:column;gap:24px;display:flex}.gets-head p{max-width:640px;margin:8px 0 0;font-size:17px;line-height:26px}.get-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.get-grid>li{display:flex}.get-card{border:1px solid var(--line);color:var(--ink);border-radius:12px;flex:1;align-items:flex-start;gap:14px;padding:18px;text-decoration:none;transition:border-color .15s,transform .18s;display:flex}@media (hover:hover){.get-card:hover{color:var(--ink);border-color:var(--ink);transform:translateY(-2px)}}.get-icon{background:var(--raised);width:40px;height:40px;color:var(--ink);border-radius:10px;flex:none;place-items:center;display:grid}.get-text{flex-direction:column;gap:2px;min-width:0;font-size:15px;line-height:23px;display:flex}.get-text strong{font-size:17px;font-weight:600;line-height:24px}.home-packages{flex-direction:column;align-items:flex-start;gap:20px;display:flex}.home-packages .section-head{align-items:baseline;width:100%;margin:0}.home-pkgs-all{font-weight:500}.cta .command-note{display:none}.home-cats{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.home-cat{border:1px solid var(--line);min-height:40px;color:var(--ink);border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:14px;text-decoration:none;transition:border-color .15s;display:inline-flex}@media (hover:hover){.home-cat:hover{color:var(--ink);border-color:var(--ink)}}.home-cat-count{color:var(--muted);font-size:12px}.home-pkgs{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:100%;margin:0;padding:0;list-style:none;display:grid}.home-pkg{border:1px solid var(--line);height:100%;color:var(--ink);border-radius:12px;align-items:flex-start;gap:14px;padding:18px;text-decoration:none;transition:border-color .15s,transform .18s;display:flex}@media (hover:hover){.home-pkg:hover{color:var(--ink);border-color:var(--ink);transform:translateY(-2px)}}.home-pkg .tile{flex:none}.home-pkg-text{flex-direction:column;gap:4px;min-width:0;font-size:15px;line-height:23px;display:flex}.home-pkg-cmd{font-size:14px;font-weight:600}.coming{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 40px;display:flex}.coming p{margin:4px 0 0}.coming-chips{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.coming-chip{border:1px solid var(--line);min-height:44px;color:var(--ink);border-radius:999px;align-items:center;gap:8px;padding:0 18px;font-weight:500;text-decoration:none;transition:border-color .15s;display:inline-flex}@media (hover:hover){.coming-chip:hover{color:var(--ink);border-color:var(--ink)}}@media (width<=1100px){.get-grid,.home-pkgs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.home{padding-top:32px}.home-title{font-size:28px;line-height:34px}.get-grid,.home-pkgs{grid-template-columns:minmax(0,1fr);gap:10px}.get-card{padding:14px}.home-cats{overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;width:calc(100% + 32px);margin:0 -16px;padding:2px 16px;overflow-x:auto}.home-cats::-webkit-scrollbar{display:none}.home-cats>li{flex:none}.builder-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-chip{gap:6px;padding-right:8px;font-size:12.5px}.home-pkg{padding:14px}.home-cat{min-height:44px}.coming-chips{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.coming-chip{justify-content:center;width:100%;padding:0 12px}}.about h2{margin:0 0 20px;font-size:32px;line-height:38px}.why-grid{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;display:grid}.why-grid>div{padding-top:20px}.why-grid h3{margin:0 0 6px;font-size:18px}.why-grid p{margin:0}.built-table{border-collapse:collapse;width:100%;font-size:16px;line-height:24px}.built-table th,.built-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:12px 16px 12px 0}.built-table thead th{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:500}.built-table tbody th{white-space:nowrap;font-weight:500}.built-table code{font-size:14px}.about-built>p{margin:14px 0 0}.box-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.box-stat{border:1px solid var(--line);color:var(--ink);border-radius:12px;flex-direction:column;gap:2px;padding:20px 24px;text-decoration:none;transition:border-color .15s,transform .18s;display:flex}@media (hover:hover){.box-stat:hover{color:var(--ink);border-color:var(--ink);transform:translateY(-2px)}}.box-number{font-size:48px;line-height:52px}.box-stat>span:last-child{color:var(--muted)}@media (width<=1100px){.box-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.about{padding-top:40px}.about h2{font-size:28px;line-height:34px}.why-grid{grid-template-columns:minmax(0,1fr);gap:0}.why-grid>div{border-bottom:1px solid var(--line);padding:16px 0}.why-grid>div:last-child{border-bottom:0}.built-table thead{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.built-table tr{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr);column-gap:10px;padding:12px 0;display:grid}.built-table th,.built-table td{border:0;padding:0}.built-table td:last-child{grid-column:1/-1;font-size:15px;line-height:23px}.built-table tbody td:nth-child(2){color:var(--muted)}.box-stat{padding:16px 18px}.box-number{font-size:40px;line-height:44px}.idea-tile{min-height:0;padding:24px}.idea-tiles{grid-template-columns:minmax(0,1fr)}.maker,.brand{flex-basis:100%;padding:24px}}.callout{--accent:var(--link);border:1px solid var(--line);background:linear-gradient(var(--accent), var(--accent)) top / 100% 3px no-repeat border-box, var(--raised);color:var(--ink);border-top-color:#0000;border-radius:12px;margin:24px 0;padding:18px 20px 16px}.callout-note,.callout-summary{--accent:var(--brand-blue)}.callout-tip{--accent:var(--brand-green)}.callout-warning{--accent:var(--brand-red)}[data-theme=dark] .callout-note,[data-theme=dark] .callout-summary{--accent:var(--link)}[data-theme=dark] .callout-tip{--accent:var(--ok)}[data-theme=dark] .callout-warning{--accent:var(--warn)}.callout>*{margin:0 0 10px}.callout>:last-child{margin-bottom:0}.prose .callout-title,.callout-title{color:var(--accent);align-items:center;gap:8px;margin-bottom:6px;font-size:15px;font-weight:600;line-height:22px;display:flex}.callout-title:before{background:var(--accent);width:20px;height:20px;color:var(--on-brand);content:"i";border-radius:50%;flex:none;place-items:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:700;line-height:1;display:grid}[data-theme=dark] .callout-title:before{color:var(--bg)}.callout-tip .callout-title:before{content:"✓"}.callout-warning .callout-title:before{content:"!"}.callout-summary .callout-title:before{content:"≡"}.callout .code,.callout .command{margin:10px 0}.callout .shiki,.callout .command{background:var(--bg)!important}.callout-summary .shiki,.callout-summary .command{background:var(--raised)!important}.prose .callout :not(pre)>code{background:var(--bg)}.prose .callout-summary :not(pre)>code{background:var(--raised)}.prose details{border:1px solid var(--line);background:var(--bg);border-radius:12px;margin:20px 0}.prose summary{cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:48px;padding:10px 16px;font-weight:600;list-style:none;display:flex}.prose summary::-webkit-details-marker{display:none}.prose summary:before{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);flex:none;width:8px;height:8px;margin:0 4px 0 2px;transition:transform .18s;transform:rotate(-45deg)}.prose details[open]>summary:before{transform:rotate(45deg)translate(-2px,-2px)}.prose details[open]>summary{border-bottom:1px solid var(--line);border-radius:12px 12px 0 0}@media (hover:hover){.prose summary:hover{background:var(--raised)}}.prose details>:not(summary){margin-left:16px;margin-right:16px}.prose details>summary+*{margin-top:14px}.prose details>:last-child:not(summary){margin-bottom:16px}.step-marker{background:var(--brand-blue);width:32px;height:32px;color:var(--on-brand);z-index:1;border-radius:50%;flex:none;place-items:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:15px;font-weight:700;line-height:1;display:inline-grid;position:relative}.prose .step-heading{align-items:center;gap:14px;display:flex}@media (width>=761px){.prose.steps .step-heading{margin-left:-46px;position:relative}.prose.steps .step-heading~:not(h2){position:relative;overflow:visible}.prose.steps>:has(.step-heading)~div:not(.command)>:not(h2){position:relative;overflow:visible}.prose.steps>:has(.step-heading)~.command{position:relative;overflow:visible}.prose.steps .step-heading~:not(h2):after{content:"";left:calc(-31px - var(--step-rule-shift,0px));background:var(--line);pointer-events:none;width:2px;position:absolute;top:-26px;bottom:0}.prose.steps>:has(.step-heading)~div:not(.command)>:not(h2):after{content:"";left:calc(-31px - var(--step-rule-shift,0px));background:var(--line);pointer-events:none;width:2px;position:absolute;top:-26px;bottom:0}.prose.steps>:has(.step-heading)~.command:after{content:"";left:calc(-31px - var(--step-rule-shift,0px));background:var(--line);pointer-events:none;width:2px;position:absolute;top:-26px;bottom:0}.prose.steps .command:after,.prose.steps pre.shiki:after,.prose.steps .callout:after,.prose.steps blockquote:after,.prose.steps details:after{--step-rule-shift:1px}.prose.steps .step-heading~.step-heading:before{content:"";background:var(--line);width:2px;height:52px;position:absolute;top:-52px;left:15px}.prose.steps>:has(.step-heading)~div .step-heading:before{content:"";background:var(--line);width:2px;height:52px;position:absolute;top:-52px;left:15px}.prose.steps .step-heading~.table-wrap:after{content:none}.prose.steps>:has(.step-heading)~div>.table-wrap:after{content:none}.prose.steps .step-heading~.table-wrap{border-left:2px solid #0000;border-image:linear-gradient(var(--line), var(--line)) 0 0 0 1 / 0 0 0 2px / 26px 0 0 31px;margin-left:-2px}.prose.steps>:has(.step-heading)~div>.table-wrap{border-left:2px solid #0000;border-image:linear-gradient(var(--line), var(--line)) 0 0 0 1 / 0 0 0 2px / 26px 0 0 31px;margin-left:-2px}.prose.steps .step-heading~h2:not(.step-heading)~:after{content:none}.prose.steps>:has(.step-heading)~div>h2:not(.step-heading)~:after{content:none}.prose.steps .step-heading~h2:not(.step-heading)~.table-wrap{border:0;border-image:;margin-left:0}.prose.steps>:has(.step-heading)~div>h2:not(.step-heading)~.table-wrap{border:0;border-image:;margin-left:0}}.next-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:16px 0 8px;display:grid}.prose a.next-card,.next-card{border:1px solid var(--line);min-height:44px;color:var(--ink);border-radius:12px;flex-direction:column;gap:4px;padding:16px 18px;text-decoration:none;transition:border-color .15s,transform .18s;display:flex}@media (hover:hover){.prose a.next-card:hover,.next-card:hover{color:var(--ink);border-color:var(--ink);transform:translateY(-2px)}}.next-card strong,.next-card-title{color:var(--link);font-size:16px;font-weight:600;line-height:23px}.next-card strong:after,.next-card-title:after{content:" →"}.next-card>span{color:var(--muted);font-size:15px;line-height:22px}.next-card code{font-size:.88em}.prose>div>p,.prose>div>ul,.prose>div>ol,.prose .callout>p,.prose details>p{max-width:72ch}.prose p,.prose li{line-height:1.65}@media (width<=760px){.prose{overflow-wrap:break-word;font-size:16px;line-height:1.6}.prose p,.prose li{line-height:1.6}.prose h2{margin:40px 0 10px;font-size:24px;line-height:30px}.prose h3{margin:28px 0 8px;font-size:19px;line-height:26px}.prose ul,.prose ol{padding-left:22px}.prose .shiki,.prose pre{-webkit-overflow-scrolling:touch;max-width:100%;padding:14px;font-size:14px;line-height:22px;overflow-x:auto}.prose .code,.prose .command,.prose .table-wrap,.prose table{max-width:100%}.prose .table-wrap{margin-left:0;margin-right:0}.prose table{font-size:14px;line-height:21px}.prose th,.prose td{padding:8px 10px}.prose :not(pre)>code{overflow-wrap:anywhere}.prose td code{white-space:nowrap;overflow-wrap:normal}.callout{margin:20px 0;padding:16px 16px 14px}.prose summary{min-height:48px;padding:10px 12px}.prose details>:not(summary){margin-left:12px;margin-right:12px}.prose .step-heading{gap:12px}.step-marker{width:28px;height:28px;font-size:14px}.next-cards{grid-template-columns:minmax(0,1fr);gap:10px}.prose a.next-card,.next-card{padding:14px 16px}}
