@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/space-grotesk-latin-400-normal.CJ-V5oYT.woff2)format("woff2"),url(/_astro/space-grotesk-latin-400-normal.BnQMeOim.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/space-grotesk-latin-500-normal.lFbtlQH6.woff2)format("woff2"),url(/_astro/space-grotesk-latin-500-normal.CNSSEhBt.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/space-grotesk-latin-600-normal.DjKNqYRj.woff2)format("woff2"),url(/_astro/space-grotesk-latin-600-normal.BflQw4A9.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/manrope-latin-400-normal.PaqtzbVb.woff2)format("woff2"),url(/_astro/manrope-latin-400-normal.8tf8FM3T.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/manrope-latin-500-normal.BYYD-dBL.woff2)format("woff2"),url(/_astro/manrope-latin-500-normal.DMZssgOp.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-latin-400-normal.V6pRDFza.woff2)format("woff2"),url(/_astro/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(/_astro/jetbrains-mono-latin-500-normal.BWZEU5yA.woff2)format("woff2"),url(/_astro/jetbrains-mono-latin-500-normal.CJOVTJB7.woff)format("woff")}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:optional;src:url(/_astro/fraunces-latin-500-normal.DnGCNyPD.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,[data-theme=dark]{--nx-ink-0:#090a0f;--nx-ink-1:#0d0f17;--nx-surface:#131620;--nx-paper-0:#090a0f;--nx-paper-1:#0d0f17;--nx-hairline:#1e2330;--nx-hairline-soft:#ffffff14;--nx-text-1:#fafafa;--nx-text-2:#9ba1ac;--nx-text-3:#5c6270;--nx-amber:#e8a33d;--nx-slate:#6b7a99;--nx-red:#e5484d;--nx-green:#30a46c;--nx-receipt-paper:#f4efe6;--nx-receipt-ink:#2b2620;--nx-font-ui:"Space Grotesk", sans-serif;--nx-font-body:"Manrope", sans-serif;--nx-font-mono:"JetBrains Mono", ui-monospace, monospace;--nx-font-numeral:"Fraunces", serif;--nx-radius-sm:4px;--nx-radius-md:6px;--nx-radius-lg:10px;--nx-motion-micro:.15s;--nx-motion:.25s;--nx-row:40px;--nx-data-row:44px;--nx-text-12:12px;--nx-text-13:13px;--nx-text-14:14px;--nx-text-16:16px;--nx-text-18:18px;--nx-text-22:22px;--nx-text-28:28px;--nx-text-40:40px;--nx-text-56:56px;--nx-leading-body:1.5;--nx-leading-heading:1.2;--nx-space-1:4px;--nx-space-2:8px;--nx-space-3:12px;--nx-space-4:16px;--nx-space-6:24px;--nx-space-8:32px;--nx-space-12:48px;--nx-bp-rail:768px}[data-theme=light]{--nx-ink-0:#fafafa;--nx-ink-1:#fff;--nx-surface:#f2f2f0;--nx-paper-0:#fafafa;--nx-paper-1:#fff;--nx-hairline:#0a0b0d1a;--nx-hairline-soft:#0a0b0d1a;--nx-text-1:#1a1d29;--nx-text-2:#5c6270;--nx-text-3:#8b93a1;--nx-amber:#b07818;--nx-slate:#4a5a78;--nx-red:#c93a3f;--nx-green:#1f7a4d}:root{--nx-control-h:36px;--nx-control-h-sm:28px;--nx-control-pad-x:var(--nx-space-3);--nx-focus-width:2px;--nx-focus-offset:2px;--nx-pick:16px}*,:before,:after{box-sizing:border-box}html,body{background:var(--nx-ink-0);min-height:100%;color:var(--nx-text-1);font-family:var(--nx-font-body);font-size:var(--nx-text-14);line-height:var(--nx-leading-body);margin:0}h1,h2,h3,h4,button,label,nav{font-family:var(--nx-font-ui);line-height:var(--nx-leading-heading)}button,input,select,textarea{font:inherit;color:inherit;border-radius:var(--nx-radius-sm);background:0 0}button,a,input,select,textarea,[tabindex]{outline:none}:focus-visible{outline:2px solid var(--nx-amber);outline-offset:2px}table{border-collapse:collapse;font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){:root{--nx-motion-micro:0s;--nx-motion:0s}}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{width:0;height:0;display:none}html,body{max-width:100%;overflow-x:hidden}code,kbd,samp,pre{overflow-wrap:anywhere}img,svg,video,canvas,iframe,table{max-width:100%}body{background-color:var(--nx-ink-0);color:var(--nx-text-1);font-family:var(--nx-font-body);line-height:var(--nx-leading-body);-webkit-font-smoothing:antialiased;margin:0;overflow-x:clip}html{scrollbar-width:none;-ms-overflow-style:none;--site-nav-height:64px;overflow-x:clip}html::-webkit-scrollbar,body::-webkit-scrollbar{width:0;height:0;display:none}.visual-code,.table-scroll{scrollbar-width:thin;scrollbar-color:var(--nx-hairline) transparent}.visual-code::-webkit-scrollbar,.table-scroll::-webkit-scrollbar{width:6px;height:6px}.visual-code::-webkit-scrollbar-thumb,.table-scroll::-webkit-scrollbar-thumb{background:var(--nx-hairline);border-radius:var(--nx-radius-sm)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}[id]{scroll-margin-top:calc(var(--site-nav-height) + var(--nx-space-6))}main:focus{outline:none}.skip-link{left:var(--nx-space-4);z-index:200;padding:var(--nx-space-2) var(--nx-space-3);background:var(--nx-text-1);color:var(--nx-ink-0);font-family:var(--nx-font-ui);font-size:var(--nx-text-13);border-radius:var(--nx-radius-sm);text-decoration:none;position:absolute;top:-100px}.skip-link:focus{top:var(--nx-space-4)}.site-nav{padding:0 var(--nx-space-8);height:var(--site-nav-height);border-bottom:1px solid var(--nx-hairline);font-family:var(--nx-font-ui);font-size:var(--nx-text-13);letter-spacing:.02em;z-index:100;background:var(--nx-ink-0);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.nav-left{align-items:center;gap:40px;display:flex}.nav-brand{color:var(--nx-text-1);font-weight:500;font-family:var(--nx-font-ui);align-items:center;gap:8px;text-decoration:none;display:flex}.brand-square{background:var(--nx-text-1);width:12px;height:12px;display:block}.nav-links{gap:var(--nx-space-6);display:flex}.nav-links a{color:var(--nx-text-2);transition:color var(--nx-motion-micro) ease;padding:var(--nx-space-1) 0;border-bottom:1px solid #0000;text-decoration:none}.site-nav a:hover:not(.nav-btn){color:var(--nx-text-1)}.nav-links a[aria-current=page]{color:var(--nx-text-1);border-bottom-color:var(--nx-text-1)}.nav-right{align-items:center;gap:var(--nx-space-4);display:flex}.nav-status{font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-text-3);text-transform:uppercase;letter-spacing:.1em}.nav-btn{background:var(--nx-ink-1);border:1px solid var(--nx-hairline);color:var(--nx-text-1);transition:all var(--nx-motion-micro) ease;border-radius:4px;align-items:center;gap:8px;padding:6px 12px;text-decoration:none;display:inline-flex}.nav-btn:hover{background:var(--nx-surface);border-color:var(--nx-text-3)}.nav-btn .arrow{color:var(--nx-text-3);transition:transform var(--nx-motion-micro) ease}.nav-btn:hover .arrow{color:var(--nx-text-1);transform:translate(2px)}.nav-menu{display:none}.nav-menu-toggle{width:var(--nx-row);height:var(--nx-row);border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-sm);background:var(--nx-ink-1);color:var(--nx-text-1);cursor:pointer;justify-content:center;align-items:center;margin:0;padding:0;list-style:none;display:flex}.nav-menu-toggle:hover,.nav-menu-toggle:focus-visible{border-color:var(--nx-amber)}.nav-menu-toggle:focus-visible{outline:1px solid var(--nx-amber);outline-offset:2px}.nav-menu-toggle::-webkit-details-marker,.nav-menu-toggle::marker{content:"";display:none}.nav-menu-bars,.nav-menu-bars:before,.nav-menu-bars:after{transform-origin:50%;width:14px;height:1.5px;transition:transform var(--nx-motion-micro) ease, background-color var(--nx-motion-micro) ease;background:currentColor;display:block}.nav-menu-bars{position:relative}.nav-menu-bars:before,.nav-menu-bars:after{content:"";position:absolute;left:0}.nav-menu-bars:before{top:-5px}.nav-menu-bars:after{top:5px}.nav-menu[open] .nav-menu-bars{background-color:#0000}.nav-menu[open] .nav-menu-bars:before{top:0;transform:rotate(45deg)}.nav-menu[open] .nav-menu-bars:after{top:0;transform:rotate(-45deg)}.nav-menu-panel{top:var(--site-nav-height);z-index:99;gap:var(--nx-space-6);padding:var(--nx-space-4);padding-bottom:max(var(--nx-space-6), env(safe-area-inset-bottom));overscroll-behavior:contain;background:var(--nx-ink-0);border-top:1px solid var(--nx-hairline);flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.nav-menu-links{flex-direction:column;display:flex}.nav-menu-links a{min-height:var(--nx-data-row);padding:0 var(--nx-space-1);border-bottom:1px solid var(--nx-hairline);color:var(--nx-text-1);font-size:var(--nx-text-16);align-items:center;text-decoration:none;display:flex}.nav-menu-links a[aria-current=page]{color:var(--nx-text-1);border-bottom-color:var(--nx-hairline)}.nav-menu-meta{gap:var(--nx-space-3);padding-top:var(--nx-space-4);flex-direction:column;display:flex}.wrap{max-width:1040px;padding:0 var(--nx-space-8);width:100%;min-width:0;margin:0 auto}.wrap-wide{max-width:1240px}.hero-section{flex-direction:column;align-items:stretch;padding:96px 0 64px;display:flex}.hero-badge{font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-text-3);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--nx-space-4);display:inline-block}.hero-badge:before{content:"■";color:var(--nx-text-1);margin-right:8px}.hero-title{font-size:var(--nx-text-56);font-family:var(--nx-font-ui);margin:0 0 var(--nx-space-4);letter-spacing:-.03em;color:var(--nx-text-1);overflow-wrap:break-word;max-width:820px;font-weight:400;line-height:1.1}.hero-subtitle{max-width:560px;font-size:var(--nx-text-18);color:var(--nx-text-2);margin:0 0 var(--nx-space-6)}.gradient-text{color:var(--nx-text-2)}.hero-actions{gap:var(--nx-space-3);margin:var(--nx-space-2) 0 var(--nx-space-4);flex-wrap:wrap;display:flex}.hero-home{gap:var(--nx-space-12);grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;display:grid}.hero-home .hero-title{max-width:none}.hero-home .hero-visual{margin-top:0}.hero-note{max-width:36ch;color:var(--nx-text-3);font-size:var(--nx-text-13);margin:0;line-height:1.55}.btn{font-family:var(--nx-font-ui);font-size:var(--nx-text-13);letter-spacing:.02em;border-radius:var(--nx-radius-sm);border:1px solid var(--nx-hairline);color:var(--nx-text-1);background:var(--nx-ink-1);transition:background var(--nx-motion-micro) ease, border-color var(--nx-motion-micro) ease;align-items:center;gap:8px;padding:10px 16px;text-decoration:none;display:inline-flex}.btn:hover{background:var(--nx-surface);border-color:var(--nx-text-3)}.btn-primary{background:var(--nx-text-1);color:var(--nx-ink-0);border-color:var(--nx-text-1)}.btn-primary:hover{background:var(--nx-text-2);border-color:var(--nx-text-2)}.btn .arrow{color:inherit;opacity:.6}.hero-visual{width:100%;min-width:0;margin:var(--nx-space-8) 0 0;border:1px solid var(--nx-hairline);background:var(--nx-ink-1);border-radius:var(--nx-radius-sm);overflow:hidden}figure.hero-visual{margin-left:0;margin-right:0}.visual-header{justify-content:space-between;align-items:center;gap:var(--nx-space-3);border-bottom:1px solid var(--nx-hairline);background:var(--nx-ink-0);font-family:var(--nx-font-mono);color:var(--nx-text-3);letter-spacing:.05em;text-transform:uppercase;min-height:36px;padding:8px 16px;font-size:11px;display:flex}.visual-header-right{align-items:center;gap:var(--nx-space-3);display:inline-flex}.copy-btn{font-family:var(--nx-font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--nx-text-2);border:1px solid var(--nx-hairline);background:var(--nx-ink-1);cursor:pointer;transition:color var(--nx-motion-micro) ease, border-color var(--nx-motion-micro) ease;padding:3px 8px;font-size:11px}.copy-btn:hover{color:var(--nx-text-1);border-color:var(--nx-text-3)}.visual-code{padding:var(--nx-space-6);overflow-x:auto}.visual-code pre{font-family:var(--nx-font-mono);font-size:var(--nx-text-13);min-width:0;margin:0;line-height:1.6}code{overflow-wrap:anywhere;font-family:var(--nx-font-mono);font-size:.92em}p code,li code,td code,dd code{color:var(--nx-text-1);background:var(--nx-ink-1);border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-sm);padding:1px 5px}.visual-code code{overflow-wrap:normal;font-size:inherit;background:0 0;border:0;padding:0;display:block}.keyword{color:var(--nx-text-2)}.func{color:var(--nx-text-1);font-weight:500}.type{color:var(--nx-text-3)}.string{color:var(--nx-text-1)}.comment{color:var(--nx-text-3)}.section{border-top:1px solid var(--nx-hairline);padding:72px 0}.section-head{margin-bottom:var(--nx-space-8);max-width:680px}.kicker{font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-text-3);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--nx-space-3);display:block}.section-title{font-family:var(--nx-font-ui);font-size:var(--nx-text-28);letter-spacing:-.02em;margin:0 0 var(--nx-space-3);color:var(--nx-text-1);font-weight:400}.section-lead{color:var(--nx-text-2);font-size:var(--nx-text-16);margin:0}.prose{color:var(--nx-text-2);font-size:var(--nx-text-14);max-width:720px;line-height:1.7}.prose p{margin:0 0 var(--nx-space-4)}.prose strong{color:var(--nx-text-1);font-weight:500}.prose a{color:var(--nx-text-1);text-underline-offset:3px;text-decoration:underline;text-decoration-color:var(--nx-text-3)}.prose a:hover{text-decoration-color:var(--nx-text-1)}.prose ul,.prose ol{margin:0 0 var(--nx-space-4);padding-left:20px}.prose li{margin-bottom:var(--nx-space-2)}.features-grid{gap:var(--nx-space-6);grid-template-columns:repeat(3,1fr);display:grid}.feature-card,.card{flex-direction:column;min-width:0;display:flex}.card{border:1px solid var(--nx-hairline);background:var(--nx-ink-1);border-radius:var(--nx-radius-sm);padding:var(--nx-space-6)}.card-link{color:inherit;transition:border-color var(--nx-motion-micro) ease;text-decoration:none}.card-link:hover{border-color:var(--nx-text-3)}.card-link .card-cta{padding-top:var(--nx-space-4);font-family:var(--nx-font-ui);font-size:var(--nx-text-13);color:var(--nx-text-1);margin-top:auto}.feature-card h3,.card h3{font-family:var(--nx-font-ui);font-size:var(--nx-text-14);margin:0 0 var(--nx-space-2);color:var(--nx-text-1);font-weight:500}.feature-card p,.card p{color:var(--nx-text-2);font-size:var(--nx-text-13);margin:0;line-height:1.6}.card p+p{margin-top:var(--nx-space-3)}.card-index{font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-text-3);letter-spacing:.1em;margin-bottom:var(--nx-space-3)}.tag{font-family:var(--nx-font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--nx-text-2);border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-sm);white-space:nowrap;padding:1px 6px;font-size:11px;display:inline-block}.tag-green{color:var(--nx-green);border-color:var(--nx-green)}.tag-amber{color:var(--nx-amber);border-color:var(--nx-amber)}.callout{border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-sm);background:var(--nx-ink-1);padding:var(--nx-space-4) var(--nx-space-6);margin:0 0 var(--nx-space-6);border-left-width:2px;max-width:820px}.callout-implemented{border-left-color:var(--nx-green)}.callout-planned{border-left-color:var(--nx-amber)}.callout-status{border-left-color:var(--nx-text-1)}.callout-note{border-left-color:var(--nx-slate)}.callout-warn{border-left-color:var(--nx-red)}.callout-label{font-family:var(--nx-font-mono);letter-spacing:.1em;text-transform:uppercase;margin:0 0 var(--nx-space-2);color:var(--nx-text-3);font-size:11px}.callout-implemented .callout-label{color:var(--nx-green)}.callout-planned .callout-label{color:var(--nx-amber)}.callout-status .callout-label{color:var(--nx-text-1)}.callout-warn .callout-label{color:var(--nx-red)}.callout-body{color:var(--nx-text-2);font-size:var(--nx-text-14);line-height:1.65}.callout-body p{margin:0}.callout-body p+p{margin-top:var(--nx-space-3)}.callout-body strong{color:var(--nx-text-1);font-weight:500}.callout-body a,.status-list a,.steps a{color:var(--nx-text-1);text-underline-offset:3px;text-decoration:underline;text-decoration-color:var(--nx-text-3)}.callout-body a:hover,.status-list a:hover,.steps a:hover{text-decoration-color:var(--nx-text-1)}.status-board{gap:var(--nx-space-6);grid-template-columns:1fr 1fr;display:grid}.status-list{margin:0;padding:0;list-style:none}.status-list li{gap:var(--nx-space-3);padding:var(--nx-space-3) 0;border-bottom:1px solid var(--nx-hairline);color:var(--nx-text-2);font-size:var(--nx-text-13);align-items:baseline;line-height:1.5;display:flex}.status-list li:last-child{border-bottom:0}.status-list .mark{font-family:var(--nx-font-mono);font-size:var(--nx-text-12);flex:none}.status-list .mark-built{color:var(--nx-green)}.status-list .mark-missing{color:var(--nx-amber)}.steps{counter-reset:step;margin:0;padding:0;list-style:none}.steps li{padding:0 0 var(--nx-space-6) 44px;border-left:1px solid var(--nx-hairline);margin-left:14px;position:relative}.steps li:last-child{padding-bottom:0}.steps li:before{counter-increment:step;content:counter(step, decimal-leading-zero);border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-sm);background:var(--nx-ink-0);width:28px;height:28px;font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-text-1);justify-content:center;align-items:center;display:inline-flex;position:absolute;top:0;left:-15px}.step-title{align-items:center;gap:var(--nx-space-2);font-family:var(--nx-font-ui);font-size:var(--nx-text-14);color:var(--nx-text-1);margin:4px 0 var(--nx-space-2);flex-wrap:wrap;font-weight:500;display:flex}.steps p{color:var(--nx-text-2);font-size:var(--nx-text-13);margin:0;line-height:1.6}.steps-split{column-gap:var(--nx-space-12);grid-template-rows:repeat(3,auto);grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-auto-flow:column;display:grid}.steps-split li:nth-child(3),.steps-split li:nth-child(6){padding-bottom:0}.table-scroll{border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-sm);background:var(--nx-ink-1);margin:0 0 var(--nx-space-6);min-width:0;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:640px;font-size:var(--nx-text-13)}.data-table caption{text-align:left;font-family:var(--nx-font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--nx-text-3);padding:var(--nx-space-3) var(--nx-space-4);border-bottom:1px solid var(--nx-hairline);background:var(--nx-ink-0);font-size:11px}.data-table th,.data-table td{text-align:left;vertical-align:top;padding:var(--nx-space-3) var(--nx-space-4);border-bottom:1px solid var(--nx-hairline);color:var(--nx-text-2);line-height:1.55}.data-table th{font-family:var(--nx-font-ui);color:var(--nx-text-1);font-weight:500;font-size:var(--nx-text-12);letter-spacing:.04em;text-transform:uppercase;background:var(--nx-ink-0);white-space:nowrap}.data-table tbody tr:last-child td{border-bottom:0}.data-table td.mono,.data-table th.mono{font-family:var(--nx-font-mono);font-size:var(--nx-text-12);min-width:120px}.empty-state{border:1px dashed var(--nx-hairline);border-radius:var(--nx-radius-sm);padding:var(--nx-space-12) var(--nx-space-6);text-align:center;color:var(--nx-text-2)}.empty-state .empty-count{font-family:var(--nx-font-numeral);font-size:var(--nx-text-56);color:var(--nx-text-1);margin-bottom:var(--nx-space-3);line-height:1;display:block}.empty-state .empty-label{font-family:var(--nx-font-mono);font-size:var(--nx-text-12);text-transform:uppercase;letter-spacing:.1em;color:var(--nx-text-3);margin-bottom:var(--nx-space-4);display:block}.empty-state p{max-width:520px;font-size:var(--nx-text-14);margin:0 auto}.docs-layout{gap:var(--nx-space-12);padding:var(--nx-space-12) 0 96px;grid-template-columns:240px minmax(0,1fr);align-items:start;display:grid}.docs-nav{font-family:var(--nx-font-ui);font-size:var(--nx-text-13)}.docs-layout>.docs-nav{top:calc(var(--site-nav-height) + var(--nx-space-6));position:sticky}.docs-nav-mobile{border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-sm);background:var(--nx-ink-1);margin:0 0 var(--nx-space-6);display:none}.docs-nav-mobile summary{cursor:pointer;min-height:var(--nx-data-row);padding:var(--nx-space-3) var(--nx-space-4);font-family:var(--nx-font-ui);font-size:var(--nx-text-13);color:var(--nx-text-1);align-items:center;list-style:none;display:flex}.docs-nav-mobile summary::-webkit-details-marker{display:none}.docs-nav-mobile summary:before{content:"+";font-family:var(--nx-font-mono);color:var(--nx-text-3);margin-right:var(--nx-space-2)}.docs-nav-mobile[open] summary:before{content:"−"}.docs-nav-mobile .docs-nav{max-height:none;padding:0 var(--nx-space-4) var(--nx-space-4);position:static}.docs-content{min-width:0}.docs-content>.prose{max-width:none}.doc-heading{font-family:var(--nx-font-ui);color:var(--nx-text-1);letter-spacing:-.01em;font-weight:400;position:relative}.doc-heading-2{font-size:var(--nx-text-28);margin:0 0 var(--nx-space-6)}.doc-heading-3{font-size:var(--nx-text-18);margin:var(--nx-space-8) 0 var(--nx-space-4);font-weight:500}.doc-kicker{font-family:var(--nx-font-mono);font-size:var(--nx-text-12);letter-spacing:.1em;text-transform:uppercase;color:var(--nx-text-3);margin-bottom:var(--nx-space-2);display:block}.heading-anchor{margin-left:var(--nx-space-2);color:var(--nx-text-3);font-family:var(--nx-font-mono);opacity:0;transition:opacity var(--nx-motion-micro) ease;text-decoration:none}.doc-heading:hover .heading-anchor,.heading-anchor:focus-visible{opacity:1}.docs-hero{padding:var(--nx-space-12) 0 0}.docs-hero .hero-title{font-size:var(--nx-text-40)}.site-footer{border-top:1px solid var(--nx-hairline);padding:var(--nx-space-12) 0 var(--nx-space-8);color:var(--nx-text-2);font-size:var(--nx-text-13);margin-top:var(--nx-space-12)}.footer-grid{gap:var(--nx-space-8);padding-bottom:var(--nx-space-8);border-bottom:1px solid var(--nx-hairline);margin-bottom:var(--nx-space-6);grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);display:grid}.footer-tagline{max-width:360px;margin:var(--nx-space-4) 0 var(--nx-space-3);color:var(--nx-text-2)}.footer-status{align-items:center;gap:var(--nx-space-2);font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-text-2);margin:0;display:flex}.status-dot{border:1px solid var(--nx-amber);border-radius:50%;width:8px;height:8px;display:inline-block}.footer-heading{font-family:var(--nx-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--nx-text-3);margin:0 0 var(--nx-space-3);font-size:11px;font-weight:400}.footer-links{margin:0;padding:0;list-style:none}.footer-links li+li{margin-top:var(--nx-space-2)}.footer-links a{color:var(--nx-text-2);transition:color var(--nx-motion-micro) ease;text-decoration:none}.footer-links a:hover{color:var(--nx-text-1);text-underline-offset:3px;text-decoration:underline}.footer-legal{justify-content:space-between;gap:var(--nx-space-3);font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-text-3);flex-wrap:wrap;display:flex}.legal-hero{padding-bottom:var(--nx-space-6)}.legal-contents{margin:var(--nx-space-6) 0 var(--nx-space-8);font-size:var(--nx-text-13)}.legal-contents ul{columns:2;column-gap:var(--nx-space-8);margin:0;padding:0;list-style:none}.legal-contents a{color:var(--nx-text-2)}.legal-prose{padding-bottom:96px}.legal-prose h3{font-family:var(--nx-font-ui);color:var(--nx-text-1);font-weight:400;font-size:var(--nx-text-18);margin:var(--nx-space-8) 0 var(--nx-space-4)}.legal-prose h4{font-family:var(--nx-font-ui);color:var(--nx-text-1);font-weight:500;font-size:var(--nx-text-14);margin:var(--nx-space-6) 0 var(--nx-space-3)}.legal-prose table{border-collapse:collapse;font-size:var(--nx-text-13);margin:0 0 var(--nx-space-6);display:block;overflow-x:auto}.legal-prose th,.legal-prose td{text-align:left;vertical-align:top;padding:var(--nx-space-3) var(--nx-space-4);border-bottom:1px solid var(--nx-hairline);line-height:1.55}.legal-prose th{color:var(--nx-text-1);font-weight:500}mark.legal-unresolved{color:var(--nx-amber);outline:1px dashed var(--nx-amber);outline-offset:1px;font-family:var(--nx-font-mono);background:0 0;font-size:.92em}@media print{html[data-theme]{--nx-ink-0:#fff;--nx-ink-1:#fff;--nx-hairline:#0a0b0d1a;--nx-text-1:#1a1d29;--nx-text-2:#1a1d29;--nx-text-3:#5c6270}html,body{background:#fff}.site-nav,.site-footer,.skip-link,.legal-contents,.search-trigger,.search-dialog{display:none}.prose{max-width:none;font-size:11pt}.legal-prose a:after{content:" (" attr(href) ")"}.legal-document-title,.legal-prose h3,.legal-prose h4{break-after:avoid}.legal-prose tr{break-inside:avoid}}@media (width<=1100px){.docs-layout{gap:var(--nx-space-8);grid-template-columns:220px minmax(0,1fr)}}@media (width<=900px){.docs-layout{grid-template-columns:minmax(0,1fr);gap:0}.docs-layout>.docs-nav{display:none}.docs-nav-mobile{display:block}.hero-home,.steps-split{grid-template-columns:minmax(0,1fr)}.steps-split{grid-template-rows:none;grid-auto-flow:row}.steps-split li:nth-child(3){padding-bottom:var(--nx-space-6)}.footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.footer-brand{grid-column:1/-1}}@media (width<=768px){.hero-title{font-size:40px}.docs-hero .hero-title{font-size:var(--nx-text-28)}.hero-home{gap:var(--nx-space-8)}.features-grid{gap:var(--nx-space-6);grid-template-columns:1fr}.status-board{grid-template-columns:1fr}.site-nav,.wrap{padding:0 var(--nx-space-4)}.section{padding:56px 0}.nav-left{gap:0}.nav-links,.nav-right>.nav-status,.nav-right>.nav-btn{display:none}.nav-menu,.nav-menu .nav-status{display:block}.nav-menu .nav-btn{justify-content:center;width:100%}.nav-right{gap:var(--nx-space-2)}body:has(.nav-menu[open]){overflow:hidden}.legal-contents ul{columns:1}}@media (width<=560px){.footer-grid{grid-template-columns:minmax(0,1fr)}.footer-legal{flex-direction:column}}.catalog-region{margin-top:var(--nx-space-8)}.tool-search{width:100%;max-width:420px;padding:var(--nx-space-3) var(--nx-space-4);font-family:var(--nx-font-ui);font-size:var(--nx-text-14);color:var(--nx-text-1);background:var(--nx-ink-1);border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-sm)}.tool-search:focus-visible{outline:2px solid var(--nx-text-3);outline-offset:2px}.tool-count{font-family:var(--nx-font-mono);font-size:var(--nx-text-12);text-transform:uppercase;letter-spacing:.1em;color:var(--nx-text-3);margin:var(--nx-space-4) 0 var(--nx-space-3)}.tool-grid{gap:var(--nx-space-6);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin:0;padding:0;list-style:none;display:grid}.tool-card{gap:var(--nx-space-2);min-width:0;padding:var(--nx-space-6);border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-sm);background:var(--nx-ink-1);transition:border-color var(--nx-motion-micro) ease;flex-direction:column;display:flex}.tool-card:hover{border-color:var(--nx-text-3)}.tool-card-head{justify-content:space-between;align-items:baseline;gap:var(--nx-space-4);display:flex}.tool-name{font-family:var(--nx-font-mono);font-size:var(--nx-text-13);color:var(--nx-text-1);overflow-wrap:break-word;min-width:0}.tool-price{font-family:var(--nx-font-numeral);font-size:var(--nx-text-14);color:var(--nx-text-1);white-space:nowrap}.tool-meta{font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-text-3);margin:0}.tool-meta strong{color:var(--nx-text-2);font-weight:500}.tool-description{font-size:var(--nx-text-13);color:var(--nx-text-2);margin:0;line-height:1.6}.tool-description-absent{color:var(--nx-text-3);font-style:italic}@media (width<=760px){.tool-grid{grid-template-columns:1fr}}.tool-schema{padding-top:var(--nx-space-3);border-top:1px solid var(--nx-hairline);font-size:var(--nx-text-13);margin-top:auto}.tool-schema>summary{cursor:pointer;font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-text-3);transition:color var(--nx-motion-micro) ease}.tool-schema>summary:hover{color:var(--nx-text-1)}.tool-schema[open]>summary{margin-bottom:var(--nx-space-3)}.tool-schema-note{font-size:var(--nx-text-12);color:var(--nx-text-3);margin:0}.tool-schema-label{margin:var(--nx-space-3) 0 var(--nx-space-1);font-family:var(--nx-font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--nx-text-3);font-size:11px}.tool-json{padding:var(--nx-space-3);max-height:220px;font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-text-2);background:var(--nx-ink-0,#0000004d);border-radius:var(--nx-radius-sm);white-space:pre;margin:0;line-height:1.5;overflow:auto}.tool-schema>summary{list-style:none}.tool-schema>summary::-webkit-details-marker{display:none}.tool-schema>summary:before{content:"+";width:1em;color:var(--nx-text-3);display:inline-block}.tool-schema[open]>summary:before{content:"−"}.site-nav a:not(.nav-brand):not(.nav-btn),.site-footer a,.nav-brand{align-items:center;min-height:24px;display:inline-flex}.doc-steps{margin:0 0 var(--nx-space-6);gap:var(--nx-space-3);padding:0;list-style:none;display:grid}.doc-steps>li{color:var(--nx-text-2);padding-left:34px;line-height:1.6;position:relative}.doc-steps>li>strong:first-child{width:22px;height:22px;font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-amber);border:1px solid var(--nx-hairline);background:var(--nx-ink-0);border-radius:999px;place-items:center;display:grid;position:absolute;top:0;left:0}.doc-index-group{margin:0 0 var(--nx-space-8)}.doc-index-group>h3{margin:0 0 var(--nx-space-3);font-family:var(--nx-font-mono);font-size:var(--nx-text-12);letter-spacing:.05em;text-transform:uppercase;color:var(--nx-text-3)}.doc-index{gap:var(--nx-space-2);margin:0;padding:0;list-style:none;display:grid}.doc-index>li{padding:var(--nx-space-3) var(--nx-space-4);border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-sm);background:var(--nx-ink-1);gap:2px;transition:border-color .12s;display:grid}.doc-index>li:hover,.doc-index>li:focus-within{border-color:var(--nx-amber)}.doc-index a{color:var(--nx-text-1);text-decoration:none}.doc-index a:hover,.doc-index a:focus-visible{text-decoration:underline}.doc-index-blurb{color:var(--nx-text-3);font-size:var(--nx-text-13);line-height:1.5}.docs-content>article{max-width:76ch;padding-bottom:96px}.docs-content>article>p,.docs-content>article>ul,.docs-content>article>ol{color:var(--nx-text-2);line-height:1.65}.docs-content>article>ul,.docs-content>article>ol{padding-left:var(--nx-space-6)}.docs-content>article>ul>li,.docs-content>article>ol>li{margin:0 0 var(--nx-space-2)}.docs-content>article h3{margin-top:var(--nx-space-8)}.docs-content>article>pre{margin:0 0 var(--nx-space-6);padding:var(--nx-space-4);border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-sm);background:var(--nx-ink-0);font-size:var(--nx-text-13);line-height:1.55;overflow-x:auto}.docs-nav .nav-group+.nav-group{margin-top:var(--nx-space-6)}.docs-nav .nav-group-title{margin:0 0 var(--nx-space-2);font-family:var(--nx-font-mono);font-size:var(--nx-text-12);letter-spacing:.05em;text-transform:uppercase;color:var(--nx-text-3)}.docs-nav ul{gap:2px;margin:0;padding:0;list-style:none;display:grid}.docs-nav ul a{border-radius:var(--nx-radius-sm);color:var(--nx-text-2);transition:color var(--nx-motion-micro) ease, background-color var(--nx-motion-micro) ease;margin-left:-10px;padding:5px 10px;line-height:1.45;text-decoration:none;display:block}.docs-nav ul a:hover,.docs-nav ul a:focus-visible{background:var(--nx-ink-1);color:var(--nx-text-1)}.docs-nav ul a[aria-current=page]{color:var(--nx-amber);background:var(--nx-ink-1);font-weight:500}.status-why{font-size:var(--nx-text-12);color:var(--nx-text-2);max-width:46ch;margin-top:6px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.area-grid{gap:var(--nx-space-4);margin:var(--nx-space-8) 0;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));display:grid}.area-card{gap:var(--nx-space-2);padding:var(--nx-space-6);border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-md);background:var(--nx-ink-1);color:inherit;transition:border-color var(--nx-motion-micro) ease;flex-direction:column;text-decoration:none;display:flex}a.area-card:hover,a.area-card:focus-visible,.area-card:focus-within{border-color:var(--nx-amber)}.area-card h2,.area-card h3{font-size:var(--nx-text-22);margin:0;font-weight:400}.area-card h3{font-size:var(--nx-text-18)}.area-card h2 a{color:var(--nx-text-1);text-decoration:none}.area-card>p{color:var(--nx-text-2);margin:0;line-height:1.6}.area-card .area-go{margin-top:auto}.area-links{margin:var(--nx-space-2) 0 0;gap:var(--nx-space-2);font-size:var(--nx-text-13);padding:0;list-style:none;display:grid}.area-links a{color:var(--nx-text-2);text-underline-offset:3px}.area-links a:hover{color:var(--nx-text-1)}.area-kicker{font-family:var(--nx-font-mono);font-size:var(--nx-text-12);letter-spacing:.05em;text-transform:uppercase;color:var(--nx-text-3);margin:0}.area-go{font-family:var(--nx-font-mono);font-size:var(--nx-text-13);color:var(--nx-amber);text-decoration:none}.hub{padding-bottom:96px}.hub .docs-hero .hero-title{font-size:var(--nx-text-56)}.hub .callout{max-width:none}.hub-primary{gap:var(--nx-space-4);margin:var(--nx-space-8) 0 var(--nx-space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.hub-also{margin:0 0 var(--nx-space-8);gap:var(--nx-space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:0;list-style:none;display:grid}.hub-also a{gap:var(--nx-space-1);padding:var(--nx-space-4) var(--nx-space-6);border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-md);color:inherit;transition:border-color var(--nx-motion-micro) ease;text-decoration:none;display:grid}.hub-also a:hover,.hub-also a:focus-visible{border-color:var(--nx-amber)}.hub-also strong{font-size:var(--nx-text-18);color:var(--nx-text-1);font-weight:400}.hub-also a>span:last-child{color:var(--nx-text-2);font-size:var(--nx-text-13);line-height:1.55}.hub-section{padding-top:var(--nx-space-12)}.hub-lead{max-width:720px;color:var(--nx-text-2);line-height:1.65}.hub-section .steps{max-width:720px;margin:var(--nx-space-6) 0}.hub-principles{margin:var(--nx-space-6) 0 0;gap:var(--nx-space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:0;list-style:none;display:grid}.hub-principles>li{padding:var(--nx-space-4) 0;border-top:1px solid var(--nx-hairline)}.hub-principles p{margin:var(--nx-space-2) 0 0;color:var(--nx-text-2);font-size:var(--nx-text-13);line-height:1.6}.hub-principles strong{color:var(--nx-text-1);font-weight:500}.hub-principles a{color:var(--nx-text-1)}@media (width<=900px){.hub .docs-hero .hero-title{font-size:var(--nx-text-40)}.hub-primary,.hub-also,.hub-principles{grid-template-columns:minmax(0,1fr)}}.docs-pager{gap:var(--nx-space-4);max-width:76ch;margin:0 0 var(--nx-space-12);padding-top:var(--nx-space-8);border-top:1px solid var(--nx-hairline);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.docs-pager-link{gap:var(--nx-space-1);padding:var(--nx-space-4);border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-md);color:inherit;transition:border-color var(--nx-motion-micro) ease;text-decoration:none;display:grid}.docs-pager-link:hover,.docs-pager-link:focus-visible{border-color:var(--nx-amber)}.docs-pager-next{text-align:right;grid-column:2}.docs-pager-dir{font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-text-3)}.docs-pager-title{color:var(--nx-text-1)}@media (width<=560px){.docs-pager{grid-template-columns:minmax(0,1fr)}.docs-pager-next{text-align:left;grid-column:auto}}.legal-document{max-width:720px;padding-top:var(--nx-space-8);border-top:1px solid var(--nx-hairline)}.legal-document-title{margin:0 0 var(--nx-space-4);font-size:var(--nx-text-28);color:var(--nx-text-1);font-weight:400}.legal-meta{margin:var(--nx-space-3) 0 0;font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-text-3)}.legal-report-line,.security-contact{max-width:720px;color:var(--nx-text-2);margin:0 0 var(--nx-space-8);line-height:1.65}mark.legal-placeholder{color:inherit;border-bottom:1px dashed var(--nx-amber);background:0 0}.faq{max-width:720px;padding:var(--nx-space-8) 0 96px;border-top:1px solid var(--nx-hairline)}.faq h2{margin:0 0 var(--nx-space-6);font-size:var(--nx-text-28);font-weight:400}.faq-item{border-bottom:1px solid var(--nx-hairline)}.faq-item>summary{justify-content:space-between;align-items:baseline;gap:var(--nx-space-4);cursor:pointer;padding:var(--nx-space-4) 0;color:var(--nx-text-1);font-size:var(--nx-text-16);transition:color var(--nx-motion-micro) ease;list-style:none;display:flex}.faq-item>summary::-webkit-details-marker{display:none}.faq-item>summary:after{content:"+";font-family:var(--nx-font-mono);color:var(--nx-text-3);transition:transform var(--nx-motion) ease;flex:none}.faq-item>summary:hover{color:var(--nx-amber)}.faq:not(.faq-scripted) .faq-item[open]>summary:after,.faq-item.is-open>summary:after{color:var(--nx-amber);transform:rotate(45deg)}.faq-item>summary:focus-visible{outline:1px solid var(--nx-amber);outline-offset:2px}.faq-answer{padding:0 0 var(--nx-space-4);color:var(--nx-text-2)}.faq-answer p{margin:0;line-height:1.65}.report-form,.report-success{gap:var(--nx-space-6);max-width:640px;margin:var(--nx-space-8) 0 96px;display:grid}.report-form[hidden],.report-success[hidden]{display:none}.form-field{gap:var(--nx-space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.form-field>label,.form-field>legend{margin-bottom:var(--nx-space-1);color:var(--nx-text-1);font-size:var(--nx-text-14);padding:0}.form-required{margin-left:var(--nx-space-2);font-family:var(--nx-font-mono);font-size:var(--nx-text-12);color:var(--nx-text-3)}.form-field input[type=text],.form-field input[type=email],.form-field select,.form-field textarea{width:100%;padding:var(--nx-space-3) var(--nx-space-4);border:1px solid var(--nx-hairline);border-radius:var(--nx-radius-sm);background:var(--nx-ink-1);color:var(--nx-text-1);font:inherit;font-size:var(--nx-text-14)}.form-field textarea{resize:vertical;line-height:1.55}.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible{outline:1px solid var(--nx-amber);outline-offset:1px}.form-field [aria-invalid=true]{border-color:var(--nx-red)}.form-choices{gap:var(--nx-space-2);display:grid}.form-choice{gap:var(--nx-space-3);color:var(--nx-text-2);font-size:var(--nx-text-14);align-items:baseline;display:flex}.form-hint{color:var(--nx-text-3);font-size:var(--nx-text-13);margin:0}.form-error{color:var(--nx-red);font-size:var(--nx-text-13);margin:0}.form-error:empty{display:none}.report-success{padding:var(--nx-space-6);border:1px solid var(--nx-green);border-radius:var(--nx-radius-md);background:var(--nx-ink-1);gap:var(--nx-space-3)}.report-success h2{font-size:var(--nx-text-22);margin:0;font-weight:400}.report-success p{color:var(--nx-text-2);margin:0;line-height:1.6}.report-success strong{font-family:var(--nx-font-mono);color:var(--nx-text-1)}.report-success:focus{outline:none}.form-group{gap:var(--nx-space-6);border:0;min-width:0;margin:0;padding:0;display:grid}.form-group-title{margin-bottom:var(--nx-space-2);font-family:var(--nx-font-ui);font-size:var(--nx-text-12);letter-spacing:.06em;text-transform:uppercase;color:var(--nx-text-3);padding:0}.form-group+.form-group{padding-top:var(--nx-space-6);border-top:1px solid var(--nx-hairline)}.form-summary{padding:var(--nx-space-4);border:1px solid color-mix(in srgb, var(--nx-red) 45%, transparent);border-radius:var(--nx-radius-md);background:color-mix(in srgb, var(--nx-red) 8%, transparent)}.form-summary[hidden]{display:none}.form-summary:focus-visible{outline:2px solid var(--nx-amber);outline-offset:2px}.form-summary-title{margin:0 0 var(--nx-space-2);font-size:var(--nx-text-14);color:var(--nx-text-1)}.form-summary ul{padding-left:var(--nx-space-6);gap:var(--nx-space-1);margin:0;display:grid}.form-summary a{color:var(--nx-red);font-size:var(--nx-text-13)}@media (width<=640px){.report-form,.report-success{gap:var(--nx-space-4);margin:var(--nx-space-6) 0 64px}.form-group{gap:var(--nx-space-4)}.form-group+.form-group{padding-top:var(--nx-space-4)}.form-field input[type=text],.form-field input[type=email],.form-field select,.form-field textarea{font-size:16px}.form-actions .btn{justify-content:center;width:100%}}@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}.search-trigger{view-transition-name:nav-search}.nav-status{view-transition-name:nav-status}.nav-btn{view-transition-name:nav-account}.docs-layout>.docs-nav{view-transition-name:docs-nav}::view-transition-group(*),::view-transition-old(root),::view-transition-new(root){animation-duration:var(--nx-motion)}::view-transition-new(nav-search):only-child,::view-transition-new(docs-nav):only-child{animation:nx-pop-in var(--nx-motion) ease-out both}::view-transition-old(nav-search):only-child,::view-transition-old(docs-nav):only-child{animation:nx-pop-out var(--nx-motion-micro) ease-in both}.docs-hero,.docs-content>article,.docs-pager,.hub-primary,.hub-also,.hub-section,.security-summary,.legal-contents,.legal-document,.faq{animation:nx-rise var(--nx-motion) ease-out both}}@keyframes nx-rise{0%{opacity:0;transform:translateY(6px)}}@keyframes nx-pop-in{0%{opacity:0;transform:scale(.94)}}@keyframes nx-pop-out{to{opacity:0;transform:scale(.94)}}
