/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@import "https://fonts.googleapis.com/css2?family=Google+Sans:ital,opsz,wght@0,17..18,400..700;1,17..18,400..700&family=JetBrains+Mono:wght@400;500;600&display=swap";@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:"Google Sans",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--spacing:.25rem;--container-md:28rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-semibold:600;--tracking-tight:-.025em;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-font-feature-settings:var(--font-sans--font-feature-settings);--default-font-variation-settings:var(--font-sans--font-variation-settings);--default-mono-font-family:var(--font-mono);--default-mono-font-feature-settings:var(--font-mono--font-feature-settings);--default-mono-font-variation-settings:var(--font-mono--font-variation-settings)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1;color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentColor 50%,transparent)}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-561{margin:calc(var(--spacing) * 561)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-7{margin-top:calc(var(--spacing) * 7)}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-md{max-width:var(--container-md)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.ring,.shadow{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.invert{--tw-invert:invert(100%)}.filter,.invert{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:opacity-90:hover{opacity:.9}}}*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--fd-background:0 0% 96%;--fd-foreground:0 0% 3.9%;--fd-muted:0 0% 96.1%;--fd-muted-foreground:0 0% 45.1%;--fd-popover:0 0% 98%;--fd-popover-foreground:0 0% 15.1%;--fd-card:0 0% 94.7%;--fd-card-foreground:0 0% 3.9%;--fd-border:0 0% 89.8%;--fd-primary:0 0% 9%;--fd-primary-foreground:0 0% 98%;--fd-secondary:0 0% 93.1%;--fd-secondary-foreground:0 0% 9%;--fd-accent:0 0% 90.1%;--fd-accent-foreground:0 0% 9%;--fd-ring:0 0% 63.9%;--fd-sidebar-width:0px;--fd-toc-width:0px;--fd-layout-width:100vw;--fd-banner-height:0px;--fd-nav-height:0px;--fd-tocnav-height:0px;--fd-diff-remove-color:#c80a641f;--fd-diff-remove-symbol-color:#e60a64;--fd-diff-add-color:#0eb4641f;--fd-diff-add-symbol-color:#0ac864}.dark{--fd-background:0 0% 8.04%;--fd-foreground:0 0% 92%;--fd-muted:0 0% 12.9%;--fd-muted-foreground:0 0% 60.9%;--fd-popover:0 0% 9.8%;--fd-popover-foreground:0 0% 88%;--fd-card:0 0% 9.8%;--fd-card-foreground:0 0% 98%;--fd-border:0 0% 14%;--fd-primary:0 0% 98%;--fd-primary-foreground:0 0% 9%;--fd-secondary:0 0% 12.9%;--fd-secondary-foreground:0 0% 98%;--fd-accent:0 0% 16.9%;--fd-accent-foreground:0 0% 90%;--fd-ring:0 0% 14.9%}*{border-color:hsl(var(--fd-border)/1)}[data-rmiz-modal-overlay=visible],body{background-color:hsl(var(--fd-background)/1)}body{color:hsl(var(--fd-foreground)/1)}.shiki code span{color:var(--shiki-light)}.dark .shiki code span{color:var(--shiki-dark)}.fd-codeblock code{font-size:13px;display:grid}.shiki code .diff.remove{background-color:var(--fd-diff-remove-color);opacity:.7}.shiki code .diff:before{position:absolute;left:6px}.shiki code .diff.remove:before{content:"-";color:var(--fd-diff-remove-symbol-color)}.shiki code .diff.add{background-color:var(--fd-diff-add-color)}.shiki code .diff.add:before{content:"+";color:var(--fd-diff-add-symbol-color)}.shiki code .diff{margin:0 -16px;padding:0 16px;position:relative}.shiki .highlighted{background-color:hsl(var(--fd-primary)/10%);margin:0 -16px;padding:0 16px}.shiki .highlighted-word{border:1px solid;border-color:hsl(var(--fd-primary)/50%);background-color:hsl(var(--fd-primary)/10%);border-radius:2px;margin:-1px -3px;padding:1px 2px}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (min-width:1400px){.container{max-width:1400px}}.prose{color:var(--tw-prose-body);max-width:none;font-size:1rem;line-height:1.75}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1rem;list-style-type:disc}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:600;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.1875em;padding-inline-end:.375em;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){border:1px solid;border-color:hsl(var(--fd-border)/1);background:hsl(var(--fd-muted)/1);color:var(--tw-prose-code);border-radius:5px;padding:3px;font-size:13px;font-weight:400}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;border-collapse:separate;border-spacing:0;--tw-bg-opacity:1;background-color:hsl(var(--fd-card)/var(--tw-bg-opacity,1));border-width:1px;border-radius:.5rem;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429;overflow:hidden}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose :where(a:not([data-card])):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-underline-offset:2px;text-decoration:underline;-webkit-text-decoration-color:hsl(var(--fd-primary)/1);text-decoration-color:hsl(var(--fd-primary)/1);font-weight:400;transition:opacity .3s}.prose :where(a:not([data-card]):hover):not(:where([class~=not-prose],[class~=not-prose] *)){opacity:.8}.prose{--tw-prose-body:hsl(var(--fd-foreground)/90%);--tw-prose-headings:hsl(var(--fd-foreground)/1);--tw-prose-lead:hsl(var(--fd-foreground)/1);--tw-prose-links:hsl(var(--fd-foreground)/1);--tw-prose-bold:hsl(var(--fd-foreground)/1);--tw-prose-counters:hsl(var(--fd-muted-foreground)/1);--tw-prose-bullets:hsl(var(--fd-muted-foreground)/1);--tw-prose-hr:hsl(var(--fd-border)/1);--tw-prose-quotes:hsl(var(--fd-foreground)/1);--tw-prose-quote-borders:hsl(var(--fd-border)/1);--tw-prose-captions:hsl(var(--fd-foreground)/1);--tw-prose-code:hsl(var(--fd-foreground)/1);--tw-prose-th-borders:hsl(var(--fd-border)/1);--tw-prose-td-borders:hsl(var(--fd-border)/1);--tw-prose-kbd:hsl(var(--fd-foreground)/1);--tw-prose-kbd-shadows:hsl(var(--fd-primary)/50%)}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose :where(th):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start;--tw-bg-opacity:1;background-color:hsl(var(--fd-muted)/var(--tw-bg-opacity,1));border-inline-start-width:1px;padding:.625rem}.prose :where(th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-inline-start-width:0}.prose :where(th:not(tr:last-child *),td:not(tr:last-child *)):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px}.prose :where(td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start;border-inline-start-width:1px;padding:.625rem}.prose :where(td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-inline-start-width:0}.prose :where(tfoot th,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(thead th,thead td):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.dark #nd-sidebar{--muted:0deg 0% 16%;--secondary:0deg 0% 18%;--muted-foreground:0 0% 72%}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-top-1\.5{top:-.375rem}.bottom-1\.5{bottom:.375rem}.bottom-3{bottom:.75rem}.end-2{inset-inline-end:.5rem}.left-1\/2{left:50%}.right-2{right:.5rem}.start-0{inset-inline-start:0}.top-0{top:0}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-\[10vh\]{top:10vh}.top-\[var\(--fd-banner-height\)\]{top:var(--fd-banner-height)}.top-fd-layout-top{top:calc(var(--fd-banner-height) + var(--fd-nav-height))}.z-10{z-index:10}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[-1\]{z-index:-1}.z-\[2\]{z-index:2}.col-start-2{grid-column-start:2}.-mx-1\.5{margin-left:-.375rem;margin-right:-.375rem}.-mx-2{margin-left:-.5rem;margin-right:-.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-top:0;margin-bottom:0}.my-4{margin-top:1rem;margin-bottom:1rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.-mb-1{margin-bottom:-.25rem}.-mb-3{margin-bottom:-.75rem}.-me-1{margin-inline-end:-.25rem}.-me-1\.5{margin-inline-end:-.375rem}.-me-2{margin-inline-end:-.5rem}.-ms-0\.5{margin-inline-start:-.125rem}.-ms-1{margin-inline-start:-.25rem}.-ms-1\.5{margin-inline-start:-.375rem}.-ms-3{margin-inline-start:-.75rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.me-1\.5{margin-inline-end:.375rem}.me-2{margin-inline-end:.5rem}.ms-1{margin-inline-start:.25rem}.ms-2{margin-inline-start:.5rem}.ms-3{margin-inline-start:.75rem}.ms-auto{margin-inline-start:auto}.mt-8{margin-top:2rem}.mt-\[var\(--fd-nav-height\)\]{margin-top:var(--fd-nav-height)}.mt-\[var\(--fd-top\)\]{margin-top:var(--fd-top)}.mt-auto{margin-top:auto}.box-content{box-sizing:content-box}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.size-3{width:.75rem;height:.75rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-7{width:1.75rem;height:1.75rem}.size-full{width:100%;height:100%}.h-1\.5{height:.375rem}.h-14{height:3.5rem}.h-\[var\(--fd-height\)\]{height:var(--fd-height)}.h-\[var\(--fd-toc-height\)\]{height:var(--fd-toc-height)}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-full{height:100%}.max-h-\[400px\]{max-height:400px}.max-h-\[460px\]{max-height:460px}.max-h-\[600px\]{max-height:600px}.max-h-\[var\(--radix-popover-content-available-height\)\]{max-height:var(--radix-popover-content-available-height)}.min-h-0{min-height:0}.min-h-10{min-height:2.5rem}.w-0{width:0}.w-1\.5{width:.375rem}.w-1\/4{width:25%}.w-\[260px\]{width:260px}.w-\[30\%\]{width:30%}.w-\[45\%\]{width:45%}.w-\[98vw\]{width:98vw}.w-\[var\(--fd-toc-width\)\]{width:var(--fd-toc-width)}.w-\[var\(--radix-popover-trigger-width\)\]{width:var(--radix-popover-trigger-width)}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0}.min-w-\[220px\]{min-width:220px}.max-w-\[1120px\]{max-width:1120px}.max-w-\[240px\]{max-width:240px}.max-w-\[400px\]{max-width:400px}.max-w-\[860px\]{max-width:860px}.max-w-\[98vw\]{max-width:98vw}.max-w-fd-container{max-width:1400px}.max-w-full{max-width:100%}.max-w-screen-sm{max-width:640px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.origin-\[top_center\]{transform-origin:top}.origin-left{transform-origin:0}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.-rotate-90{--tw-rotate:-90deg}.-rotate-90,.scale-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-0{--tw-scale-x:0;--tw-scale-y:0}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.select-none{-webkit-user-select:none;user-select:none}.scroll-m-20{scroll-margin:5rem}.scroll-m-28{scroll-margin:7rem}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-fd-border>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:hsl(var(--fd-border)/var(--tw-divide-opacity,1))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{text-overflow:ellipsis;overflow:hidden}.truncate,.whitespace-nowrap{white-space:nowrap}.text-nowrap{text-wrap:nowrap}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-s{border-inline-start-width:1px}.border-s-0{border-inline-start-width:0}.border-t{border-top-width:1px}.border-fd-foreground\/10{border-color:hsl(var(--fd-foreground)/.1)}.border-transparent{border-color:#0000}.bg-\[var\(--shiki-light-bg\)\]{background-color:var(--shiki-light-bg)}.bg-black\/30{background-color:#0000004d}.bg-fd-accent{--tw-bg-opacity:1;background-color:hsl(var(--fd-accent)/var(--tw-bg-opacity,1))}.bg-fd-background{--tw-bg-opacity:1;background-color:hsl(var(--fd-background)/var(--tw-bg-opacity,1))}.bg-fd-background\/80{background-color:hsl(var(--fd-background)/.8)}.bg-fd-border{--tw-bg-opacity:1;background-color:hsl(var(--fd-border)/var(--tw-bg-opacity,1))}.bg-fd-card{--tw-bg-opacity:1;background-color:hsl(var(--fd-card)/var(--tw-bg-opacity,1))}.bg-fd-foreground\/10{background-color:hsl(var(--fd-foreground)/.1)}.bg-fd-muted{--tw-bg-opacity:1;background-color:hsl(var(--fd-muted)/var(--tw-bg-opacity,1))}.bg-fd-popover{--tw-bg-opacity:1;background-color:hsl(var(--fd-popover)/var(--tw-bg-opacity,1))}.bg-fd-primary{--tw-bg-opacity:1;background-color:hsl(var(--fd-primary)/var(--tw-bg-opacity,1))}.bg-fd-primary\/10{background-color:hsl(var(--fd-primary)/.1)}.bg-fd-secondary{--tw-bg-opacity:1;background-color:hsl(var(--fd-secondary)/var(--tw-bg-opacity,1))}.bg-fd-secondary\/50{background-color:hsl(var(--fd-secondary)/.5)}.bg-transparent{background-color:#0000}.fill-blue-500{fill:#3b82f6}.fill-orange-500{fill:#f97316}.fill-red-500{fill:#ef4444}.stroke-fd-foreground\/10{stroke:hsl(var(--fd-foreground)/.1)}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-\[3px\]{padding:3px}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pe-4{padding-inline-end:1rem}.pe-\[var\(--fd-layout-offset\)\]{padding-inline-end:var(--fd-layout-offset)}.ps-1\.5{padding-inline-start:.375rem}.ps-2{padding-inline-start:.5rem}.ps-3\.5{padding-inline-start:.875rem}.ps-6{padding-inline-start:1.5rem}.ps-8{padding-inline-start:2rem}.pt-0{padding-top:0}.pt-12{padding-top:3rem}.pt-14{padding-top:3.5rem}.pt-2{padding-top:.5rem}.pt-8{padding-top:2rem}.text-center{text-align:center}.text-start{text-align:start}.text-end{text-align:end}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[13px\]{font-size:13px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.italic{font-style:italic}.text-fd-accent-foreground{--tw-text-opacity:1;color:hsl(var(--fd-accent-foreground)/var(--tw-text-opacity,1))}.text-fd-card{--tw-text-opacity:1;color:hsl(var(--fd-card)/var(--tw-text-opacity,1))}.text-fd-card-foreground{--tw-text-opacity:1;color:hsl(var(--fd-card-foreground)/var(--tw-text-opacity,1))}.text-fd-foreground{--tw-text-opacity:1;color:hsl(var(--fd-foreground)/var(--tw-text-opacity,1))}.text-fd-muted-foreground{--tw-text-opacity:1;color:hsl(var(--fd-muted-foreground)/var(--tw-text-opacity,1))}.text-fd-popover-foreground{--tw-text-opacity:1;color:hsl(var(--fd-popover-foreground)/var(--tw-text-opacity,1))}.text-fd-primary{--tw-text-opacity:1;color:hsl(var(--fd-primary)/var(--tw-text-opacity,1))}.text-fd-secondary-foreground{--tw-text-opacity:1;color:hsl(var(--fd-secondary-foreground)/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-lg{--tw-backdrop-blur:blur(16px)}.backdrop-blur-lg,.backdrop-blur-md{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[width\,height\]{transition-property:width,height;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.steps{counter-reset:step;border-left-width:1px;margin-left:1rem;padding-left:1.75rem;position:relative}.step:before{background-color:hsl(var(--fd-secondary)/1);color:hsl(var(--fd-secondary-foreground)/1);content:counter(step);counter-increment:step;border-radius:9999px;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.875rem;line-height:1.25rem;display:flex;position:absolute;left:-1rem}.fd-steps{counter-reset:step;border-left-width:1px;margin-left:1rem;padding-left:1.75rem;position:relative}.fd-step:before{background-color:hsl(var(--fd-secondary)/1);color:hsl(var(--fd-secondary-foreground)/1);content:counter(step);counter-increment:step;border-radius:9999px;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.875rem;line-height:1.25rem;display:flex;position:absolute;left:-1rem}.prose-no-margin>:first-child{margin-top:0}.prose-no-margin>:last-child{margin-bottom:0}.\[--fd-nav-height\:3\.5rem\]{--fd-nav-height:3.5rem}.\[--fd-tocnav-height\:36px\]{--fd-tocnav-height:36px}.\[--radix-collapsible-content-height\:0px\]{--radix-collapsible-content-height:0px}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}body{flex-direction:column;min-height:100vh;display:flex}.placeholder\:text-fd-muted-foreground::placeholder{--tw-text-opacity:1;color:hsl(var(--fd-muted-foreground)/var(--tw-text-opacity,1))}.first\:pt-0:first-child{padding-top:0}.last\:pb-0:last-child{padding-bottom:0}.empty\:hidden:empty{display:none}.hover\:bg-fd-accent:hover{--tw-bg-opacity:1;background-color:hsl(var(--fd-accent)/var(--tw-bg-opacity,1))}.hover\:bg-fd-accent\/50:hover{background-color:hsl(var(--fd-accent)/.5)}.hover\:bg-fd-accent\/80:hover{background-color:hsl(var(--fd-accent)/.8)}.hover\:text-fd-accent-foreground:hover{--tw-text-opacity:1;color:hsl(var(--fd-accent-foreground)/var(--tw-text-opacity,1))}.hover\:text-fd-accent-foreground\/80:hover{color:hsl(var(--fd-accent-foreground)/.8)}.hover\:text-fd-popover-foreground\/50:hover{color:hsl(var(--fd-popover-foreground)/.5)}.hover\:transition-none:hover{transition-property:none}.focus-visible\:outline-none:focus-visible{outline-offset:2px;outline:2px solid #0000}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-fd-ring:focus-visible{--tw-ring-opacity:1;--tw-ring-color:hsl(var(--fd-ring)/var(--tw-ring-opacity,1))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:opacity-100,.peer:hover~.peer-hover\:opacity-100{opacity:1}.data-\[collapsed\=false\]\:hidden[data-collapsed=false]{display:none}@keyframes fd-enterFromRight{0%{opacity:0;transform:translate(200px)}to{opacity:1;transform:translate(0)}}.data-\[motion\=from-end\]\:animate-fd-enterFromRight[data-motion=from-end]{animation:fd-enterFromRight .25s}@keyframes fd-enterFromLeft{0%{opacity:0;transform:translate(-200px)}to{opacity:1;transform:translate(0)}}.data-\[motion\=from-start\]\:animate-fd-enterFromLeft[data-motion=from-start]{animation:fd-enterFromLeft .25s}@keyframes fd-exitToRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(200px)}}.data-\[motion\=to-end\]\:animate-fd-exitToRight[data-motion=to-end]{animation:fd-exitToRight .25s}@keyframes fd-exitToLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-200px)}}.data-\[motion\=to-start\]\:animate-fd-exitToLeft[data-motion=to-start]{animation:fd-exitToLeft .25s}@keyframes fd-accordion-up{0%{height:var(--radix-accordion-content-height)}to{opacity:.5;height:0}}.data-\[state\=closed\]\:animate-fd-accordion-up[data-state=closed]{animation:fd-accordion-up .2s ease-out}@keyframes fd-collapsible-up{0%{height:var(--radix-collapsible-content-height)}to{opacity:0;height:0}}.data-\[state\=closed\]\:animate-fd-collapsible-up[data-state=closed]{animation:fd-collapsible-up .15s ease-out}@keyframes fd-dialog-out{0%{transform:scale(1)translate(-50%)}to{transform:scale(.95) translateY(-50%,0);opacity:0}}.data-\[state\=closed\]\:animate-fd-dialog-out[data-state=closed]{animation:fd-dialog-out .3s cubic-bezier(.32,.72,0,1)}@keyframes fd-fade-out{to{opacity:0}}.data-\[state\=closed\]\:animate-fd-fade-out[data-state=closed]{animation:fd-fade-out .3s}@keyframes fd-nav-menu-out{0%{opacity:1;height:var(--radix-navigation-menu-viewport-height)}to{opacity:0;height:0}}.data-\[state\=closed\]\:animate-fd-nav-menu-out[data-state=closed]{animation:fd-nav-menu-out .2s}@keyframes fd-popover-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.data-\[state\=closed\]\:animate-fd-popover-out[data-state=closed]{animation:fd-popover-out .15s}.data-\[state\=hidden\]\:animate-fd-fade-out[data-state=hidden]{animation:fd-fade-out .3s}@keyframes fd-accordion-down{0%{opacity:.5;height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-fd-accordion-down[data-state=open]{animation:fd-accordion-down .2s ease-out}@keyframes fd-collapsible-down{0%{opacity:0;height:0}to{height:var(--radix-collapsible-content-height)}}.data-\[state\=open\]\:animate-fd-collapsible-down[data-state=open]{animation:fd-collapsible-down .15s ease-out}@keyframes fd-dialog-in{0%{opacity:0;transform:scale(.95)translate(-50%)}to{transform:scale(1)translate(-50%)}}.data-\[state\=open\]\:animate-fd-dialog-in[data-state=open]{animation:fd-dialog-in .2s cubic-bezier(.32,.72,0,1)}@keyframes fd-fade-in{0%{opacity:0}to{opacity:1}}.data-\[state\=open\]\:animate-fd-fade-in[data-state=open]{animation:fd-fade-in .3s}@keyframes fd-nav-menu-in{0%{opacity:0;height:0}to{opacity:1;height:var(--radix-navigation-menu-viewport-height)}}.data-\[state\=open\]\:animate-fd-nav-menu-in[data-state=open]{animation:fd-nav-menu-in .2s}@keyframes fd-popover-in{0%{opacity:0;transform:scale(.98)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}.data-\[state\=open\]\:animate-fd-popover-in[data-state=open]{animation:fd-popover-in .15s}.data-\[state\=active\]\:border-fd-primary[data-state=active]{--tw-border-opacity:1;border-color:hsl(var(--fd-primary)/var(--tw-border-opacity,1))}.data-\[state\=open\]\:bg-fd-accent\/50[data-state=open]{background-color:hsl(var(--fd-accent)/.5)}.data-\[active\=true\]\:font-medium[data-active=true]{font-weight:500}.data-\[active\=true\]\:text-fd-primary[data-active=true],.data-\[state\=active\]\:text-fd-primary[data-state=active]{--tw-text-opacity:1;color:hsl(var(--fd-primary)/var(--tw-text-opacity,1))}.group[data-state=closed] .group-data-\[state\=closed\]\:-rotate-90{--tw-rotate:-90deg}.group[data-state=closed] .group-data-\[state\=closed\]\:-rotate-90,.group\/accordion[data-state=open] .group-data-\[state\=open\]\/accordion\:rotate-90{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group\/accordion[data-state=open] .group-data-\[state\=open\]\/accordion\:rotate-90{--tw-rotate:90deg}.group[data-state=open] .group-data-\[state\=open\]\:rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:bg-\[var\(--shiki-dark-bg\)\]:is(.dark *){background-color:var(--shiki-dark-bg)}@media not all and (min-width:1280px){.max-xl\:hidden{display:none}}@media not all and (min-width:1024px){.max-lg\:hidden{display:none}}@media not all and (min-width:768px){.max-md\:inset-x-0{left:0;right:0}.max-md\:bottom-0{bottom:0}.max-md\:hidden{display:none}.max-md\:bg-fd-background\/80{background-color:hsl(var(--fd-background)/.8)}.max-md\:text-\[15px\]{font-size:15px}.max-md\:backdrop-blur-lg{--tw-backdrop-blur:blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.max-md\:data-\[open\=false\]\:invisible[data-open=false]{visibility:hidden}}@media not all and (min-width:640px){.max-sm\:mt-2{margin-top:.5rem}.max-sm\:hidden{display:none}}@media (min-width:640px){.sm\:hidden{display:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-end{justify-content:flex-end}}@media (min-width:768px){.md\:sticky{position:sticky}.md\:order-first{order:-9999}.md\:-me-\[var\(--fd-sidebar-width\)\]{margin-inline-end:calc(var(--fd-sidebar-width) * -1)}.md\:ms-2{margin-inline-start:.5rem}.md\:ms-auto{margin-inline-start:auto}.md\:hidden{display:none}.md\:h-\[var\(--fd-sidebar-height\)\]{height:var(--fd-sidebar-height)}.md\:w-\[var\(--fd-sidebar-width\)\]{width:var(--fd-sidebar-width)}.md\:translate-x-0{--tw-translate-x:0px}.md\:translate-x-0,.md\:translate-x-\[calc\(var\(--fd-sidebar-offset\)\*-1\)\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:translate-x-\[calc\(var\(--fd-sidebar-offset\)\*-1\)\]{--tw-translate-x:calc(var(--fd-sidebar-offset) * -1)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:gap-1\.5{gap:.375rem}.md\:border-e{border-inline-end-width:1px}.md\:px-2{padding-left:.5rem;padding-right:.5rem}.md\:py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.md\:ps-\[var\(--fd-layout-offset\)\]{padding-inline-start:var(--fd-layout-offset)}.md\:pt-12{padding-top:3rem}.md\:pt-4{padding-top:1rem}.md\:opacity-0{opacity:0}.md\:transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.md\:\[--fd-nav-height\:0px\]{--fd-nav-height:0px}.md\:\[--fd-sidebar-width\:268px\]{--fd-sidebar-width:268px}}@media (min-width:1024px){.lg\:mt-2{margin-top:.5rem}.lg\:hidden{display:none}.lg\:h-12{height:3rem}.lg\:w-\[calc\(100\%-1rem\)\]{width:calc(100% - 1rem)}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:gap-1\.5{gap:.375rem}.lg\:rounded-2xl{border-radius:1rem}.lg\:border{border-width:1px}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (min-width:1280px){.xl\:mx-auto{margin-left:auto;margin-right:auto}.xl\:hidden{display:none}.xl\:\[--fd-toc-width\:268px\]{--fd-toc-width:268px}.xl\:\[--fd-tocnav-height\:0px\]{--fd-tocnav-height:0px}}.rtl\:rotate-180:where([dir=rtl],[dir=rtl] *){--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rtl\:-scale-x-100:where([dir=rtl],[dir=rtl] *){--tw-scale-x:-1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (min-width:768px){.rtl\:md\:translate-x-\[var\(--fd-sidebar-offset\)\]:where([dir=rtl],[dir=rtl] *){--tw-translate-x:var(--fd-sidebar-offset);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}}.\[\&\>figure\:only-child\]\:-m-4>figure:only-child{margin:-1rem}.\[\&\>figure\:only-child\]\:rounded-none>figure:only-child{border-radius:0}.\[\&\>figure\:only-child\]\:border-none>figure:only-child{border-style:none}.\[\&_svg\]\:size-3\.5 svg{width:.875rem;height:.875rem}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:size-5 svg{width:1.25rem;height:1.25rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}:root{--font-sans:"Google Sans",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;color-scheme:light;--ts-bg:#fff6f6;--ts-surface:#fff;--ts-surface-2:#f0efe7;--ts-border-1:#eceae0;--ts-border-2:#dcd8ca;--ts-border-soft:#f3f1e8;--ts-text:#050100;--ts-muted:#63615a;--ts-muted-soft:#85837a;--ts-accent:#006900;--ts-accent-soft:#e3f1e4;--ts-accent-ink:#004a00;--ts-brand-ink:#101010;--ts-brand-red:#e90d10;--ts-brand-green:#029947;--ts-ai:#6a4bd6;--ts-ai-soft:#efeafc;--ts-ai-ink:#4a2fb0;--ts-ai-border:#dcd2f6;--ts-success:#006900;--ts-success-soft:#e3f1e4;--ts-danger:#860000;--ts-danger-soft:#f7e0e0;--ts-info:#3d6ee0;--ts-info-soft:#e5ecfb;--ts-warn:#b58900;--ts-warn-soft:#faf3d9;--ts-warn-ink:#7a5b00;--ts-gov-black:#050100;--ts-gov-red:#860000;--ts-gov-green:#006900;--ts-radius-sm:6px;--ts-radius-md:8px;--ts-radius-lg:14px;--color-fd-background:var(--ts-bg);--color-fd-foreground:var(--ts-text);--color-fd-card:var(--ts-surface);--color-fd-card-foreground:var(--ts-text);--color-fd-border:var(--ts-border-1);--color-fd-muted:var(--ts-surface-2);--color-fd-muted-foreground:var(--ts-muted);--color-fd-secondary:var(--ts-surface-2);--color-fd-secondary-foreground:var(--ts-text);--color-fd-popover:var(--ts-surface);--color-fd-popover-foreground:var(--ts-text);--color-fd-accent:var(--ts-border-soft);--color-fd-accent-foreground:var(--ts-text);--color-fd-primary:var(--ts-accent);--color-fd-primary-foreground:#fff;--color-fd-ring:var(--ts-accent);--fd-primary:120 100% 21%;--fd-primary-foreground:0 0% 100%;--ts-nav-bg:#fff6f6d6;--ts-sidebar-bg:#faf2f2;--ts-accent-bg:#0069001a;--ts-code-fg:#004a00}.dark{color-scheme:dark;--ts-bg:#050100;--ts-surface:#171412;--ts-surface-2:#23201d;--ts-border-1:#2f2c28;--ts-border-2:#3d3934;--ts-border-soft:#24211e;--ts-text:#f2f1ec;--ts-muted:#8e8b7e;--ts-muted-soft:#5a584f;--ts-accent:#1ea94e;--ts-accent-soft:#1ea94e24;--ts-accent-ink:#7fd6a4;--ts-brand-ink:#f2f1ec;--ts-brand-red:#ff5a4a;--ts-brand-green:#1ea94e;--ts-ai:#a78bfa;--ts-ai-soft:#241b3d;--ts-ai-ink:#c9b6ff;--ts-ai-border:#3a2d5e;--ts-success:#4caf7d;--ts-success-soft:#4caf7d24;--ts-danger:#ff7a5e;--ts-danger-soft:#d63f282e;--ts-info:#7aa3f3;--ts-info-soft:#7aa3f324;--ts-warn:#d9a514;--ts-warn-soft:#d9a51424;--ts-warn-ink:#e6c25c;--ts-gov-black:#0c0908;--color-fd-background:var(--ts-bg);--color-fd-foreground:var(--ts-text);--color-fd-card:var(--ts-surface);--color-fd-card-foreground:var(--ts-text);--color-fd-border:var(--ts-border-1);--color-fd-muted:var(--ts-surface-2);--color-fd-muted-foreground:var(--ts-muted);--color-fd-secondary:var(--ts-surface-2);--color-fd-secondary-foreground:var(--ts-text);--color-fd-popover:var(--ts-surface);--color-fd-popover-foreground:var(--ts-text);--color-fd-accent:var(--ts-surface-2);--color-fd-accent-foreground:var(--ts-text);--color-fd-primary:var(--ts-accent);--color-fd-primary-foreground:#fff;--color-fd-ring:var(--ts-accent);--fd-primary:143 70% 39%;--fd-primary-foreground:0 0% 100%;--ts-nav-bg:#050100db;--ts-sidebar-bg:#0c0908;--ts-accent-bg:#1ea94e1f;--ts-code-fg:#7fd6a4}html{scrollbar-gutter:stable}body,html{font-family:var(--font-sans)}body{background:var(--color-fd-background);color:var(--color-fd-foreground);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--ts-border-2);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--ts-muted-soft)}#nd-nav{-webkit-backdrop-filter:saturate(180%)blur(12px);backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--color-fd-border);background:var(--ts-nav-bg)!important}#nd-sidebar{font-family:var(--font-sans);font-size:13.5px;background:var(--ts-sidebar-bg)!important;border-right:1px solid var(--color-fd-border)!important}#nd-sidebar [data-radix-scroll-area-viewport] [data-type=separator]{text-transform:uppercase!important;letter-spacing:.12em!important;color:var(--ts-muted-soft)!important;margin-top:22px!important;margin-bottom:6px!important;padding-inline:14px!important;font-size:10.5px!important;font-weight:700!important}#nd-sidebar [data-radix-scroll-area-viewport] a[data-active],#nd-sidebar [data-radix-scroll-area-viewport] button[data-active]{border-radius:var(--ts-radius-md)!important;color:var(--ts-muted)!important;gap:10px!important;padding-block:7px!important;padding-inline:10px!important;font-size:13.5px!important;font-weight:500!important;transition:background .12s,color .12s!important}#nd-sidebar [data-radix-scroll-area-viewport] a[data-active=false]:hover,#nd-sidebar [data-radix-scroll-area-viewport] button[data-active=false]:hover{background:var(--color-fd-accent)!important;color:var(--color-fd-foreground)!important}#nd-sidebar [data-radix-scroll-area-viewport] a[data-active=true]{background:var(--ts-accent-bg)!important;color:var(--ts-accent)!important;font-weight:600!important}#nd-sidebar [data-radix-scroll-area-viewport] a[data-active=true] span[aria-hidden=true] svg,#nd-sidebar [data-radix-scroll-area-viewport] a[data-active=true] svg{color:var(--ts-accent)!important}#nd-sidebar [data-radix-scroll-area-viewport] a[data-active=true]:before{display:none!important}#nd-sidebar [data-radix-scroll-area-viewport] .relative:before{background:var(--color-fd-border)!important;border-radius:1px!important;width:1px!important;left:18px!important}#nd-sidebar [data-radix-scroll-area-viewport]>div>div{gap:2px}:not(pre)>code{background:var(--ts-accent-soft)!important;color:var(--ts-code-fg)!important;border:1px solid var(--ts-accent)!important}@supports (color:color-mix(in lab,red,red)){:not(pre)>code{border:1px solid color-mix(in srgb,var(--ts-accent) 22%,transparent)!important}}:not(pre)>code{font-size:.86em!important;font-family:var(--font-mono)!important;border-radius:5px!important;padding:1px 6px!important;font-weight:500!important}figure[data-rehype-pretty-code-figure] pre,pre{font-family:var(--font-mono)!important;background:#0a0a0a!important;border:1px solid #ffffff0f!important;border-radius:10px!important;font-size:13px!important;line-height:1.6!important}figure[data-rehype-pretty-code-figure]{background:#0a0a0a;border:1px solid #ffffff0f;overflow:hidden;border-radius:10px!important}figure[data-rehype-pretty-code-figure] pre{background:0 0!important;border:none!important;border-radius:0!important}figcaption[data-rehype-pretty-code-title]{color:#b0b0b0!important;font-family:var(--font-mono)!important;background:#141414!important;border-bottom:1px solid #ffffff0f!important;padding:9px 14px!important;font-size:12px!important;font-weight:500!important}button[aria-label=Copy]{background:#ffffff0a!important;border:1px solid #ffffff0f!important;border-radius:6px!important}button[aria-label=Copy]:hover{color:#1ea94e!important;background:#1ea94e24!important}article h1,article h2,article h3,article h4{font-family:var(--font-sans)!important;letter-spacing:-.01em!important}article h1{font-weight:700!important}article h2,article h3{font-weight:600!important}article li,article p{color:var(--color-fd-foreground);line-height:1.7}article a{border-bottom:1px solid var(--ts-accent);text-decoration:none;color:var(--ts-accent)!important}@supports (color:color-mix(in lab,red,red)){article a{border-bottom:1px solid color-mix(in srgb,var(--ts-accent) 35%,transparent)}}article a{transition:border-color .12s}article a:hover{border-bottom-color:var(--ts-accent)}article .ts-card a,article a.ts-plain,article a:has(>svg),article a:not(:has(*)):where([data-card]){border-bottom:none}article table{font-size:14px}article table th{color:var(--color-fd-foreground);font-weight:600}#nd-toc a{color:var(--ts-muted)!important;padding-block:4px!important;font-size:12.5px!important}#nd-toc a:hover{color:var(--color-fd-foreground)!important}#nd-toc a[data-active=true]{color:var(--ts-accent)!important;font-weight:500!important}.ts-note{border-radius:var(--ts-radius-md);background:var(--ts-note-bg,var(--color-fd-muted));border:1px solid var(--ts-note-border,var(--color-fd-border));border-left-width:3px;gap:12px;margin:20px 0;padding:14px 16px;display:flex}.ts-note__icon{background:var(--ts-note-solid,var(--color-fd-foreground));width:22px;height:22px;color:var(--ts-note-ink,#fff);border-radius:999px;flex:none;justify-content:center;align-items:center;margin-top:1px;font-size:12px;font-weight:700;line-height:1;display:flex}.ts-note__body{flex:1;min-width:0}.ts-note__title{letter-spacing:-.01em;color:var(--ts-note-title,var(--color-fd-foreground));margin:0 0 2px;font-size:13.5px;font-weight:650}.ts-note__body>ol,.ts-note__body>p,.ts-note__body>ul{color:var(--ts-note-text,var(--color-fd-foreground));margin:0;font-size:14px;line-height:1.65}.ts-note__body>*+*{margin-top:8px}.ts-note[data-tone=warn]{--ts-note-bg:var(--ts-warn-soft);--ts-note-border:var(--ts-warn)}@supports (color:color-mix(in lab,red,red)){.ts-note[data-tone=warn]{--ts-note-border:color-mix(in srgb,var(--ts-warn) 34%,transparent)}}.ts-note[data-tone=warn]{--ts-note-solid:var(--ts-warn);--ts-note-title:var(--ts-warn-ink);--ts-note-text:var(--ts-warn-ink)}.ts-note[data-tone=accent]{--ts-note-bg:var(--ts-accent-soft);--ts-note-border:var(--ts-accent)}@supports (color:color-mix(in lab,red,red)){.ts-note[data-tone=accent]{--ts-note-border:color-mix(in srgb,var(--ts-accent) 34%,transparent)}}.ts-note[data-tone=accent]{--ts-note-solid:var(--ts-accent);--ts-note-title:var(--color-fd-foreground);--ts-note-text:var(--ts-muted)}.ts-note[data-tone=danger]{--ts-note-bg:var(--ts-danger-soft);--ts-note-border:var(--ts-danger)}@supports (color:color-mix(in lab,red,red)){.ts-note[data-tone=danger]{--ts-note-border:color-mix(in srgb,var(--ts-danger) 34%,transparent)}}.ts-note[data-tone=danger]{--ts-note-solid:var(--ts-danger);--ts-note-title:var(--ts-danger);--ts-note-text:var(--color-fd-foreground)}.ts-note[data-tone=info]{--ts-note-bg:var(--ts-info-soft);--ts-note-border:var(--ts-info)}@supports (color:color-mix(in lab,red,red)){.ts-note[data-tone=info]{--ts-note-border:color-mix(in srgb,var(--ts-info) 34%,transparent)}}.ts-note[data-tone=info]{--ts-note-solid:var(--ts-info);--ts-note-title:var(--ts-info);--ts-note-text:var(--color-fd-foreground)}.ts-note[data-tone=success]{--ts-note-bg:var(--ts-success-soft);--ts-note-border:var(--ts-success)}@supports (color:color-mix(in lab,red,red)){.ts-note[data-tone=success]{--ts-note-border:color-mix(in srgb,var(--ts-success) 34%,transparent)}}.ts-note[data-tone=success]{--ts-note-solid:var(--ts-success);--ts-note-title:var(--ts-success);--ts-note-text:var(--color-fd-foreground)}.ts-note[data-tone=neutral]{--ts-note-bg:var(--ts-surface-2);--ts-note-border:var(--ts-border-2);--ts-note-solid:var(--ts-text);--ts-note-ink:var(--ts-bg);--ts-note-title:var(--color-fd-foreground);--ts-note-text:var(--ts-muted)}.ts-endpoint{border:1px solid var(--color-fd-border);border-radius:var(--ts-radius-lg);background:var(--color-fd-card);margin:24px 0;overflow:hidden}.ts-endpoint__head{background:var(--ts-surface-2);border-bottom:1px solid var(--color-fd-border);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;display:flex}.ts-endpoint__method{font-family:var(--font-mono);letter-spacing:.06em;color:#fff;background:var(--ts-method,var(--ts-muted));border-radius:999px;flex:none;padding:3px 9px;font-size:11px;font-weight:700}.ts-endpoint__method[data-method=GET]{--ts-method:#006900}.ts-endpoint__method[data-method=POST]{--ts-method:#3d6ee0}.ts-endpoint__method[data-method=PATCH],.ts-endpoint__method[data-method=PUT]{--ts-method:#b58900}.ts-endpoint__method[data-method=DELETE]{--ts-method:#860000}.ts-endpoint__method[data-method=WS]{--ts-method:#6a4bd6}.dark .ts-endpoint__method[data-method=GET]{--ts-method:#1ea94e}.dark .ts-endpoint__method[data-method=DELETE]{--ts-method:#d63f28}.ts-endpoint__path{min-width:0;font-family:var(--font-mono);color:var(--color-fd-foreground);overflow-wrap:anywhere;flex:auto;font-size:13.5px;font-weight:500}.ts-endpoint__auth{border:1px solid var(--ts-auth-border,var(--color-fd-border));background:var(--ts-auth-bg,transparent);color:var(--ts-auth-fg,var(--ts-muted));white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:5px;padding:3px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.ts-endpoint__auth[data-kind=public]{--ts-auth-bg:var(--ts-info-soft);--ts-auth-fg:var(--ts-info);--ts-auth-border:var(--ts-info)}@supports (color:color-mix(in lab,red,red)){.ts-endpoint__auth[data-kind=public]{--ts-auth-border:color-mix(in srgb,var(--ts-info) 30%,transparent)}}.ts-endpoint__auth[data-kind=role]{--ts-auth-bg:var(--ts-accent-soft);--ts-auth-fg:var(--ts-accent);--ts-auth-border:var(--ts-accent)}@supports (color:color-mix(in lab,red,red)){.ts-endpoint__auth[data-kind=role]{--ts-auth-border:color-mix(in srgb,var(--ts-accent) 30%,transparent)}}.ts-endpoint__body{padding:4px 14px 12px}.ts-endpoint__body>p:first-child{margin-top:10px}.ts-endpoint__body table{margin-block:10px}.ts-endpoint__body>:last-child{margin-bottom:0}.ts-ports{border:1px solid var(--color-fd-border);border-radius:var(--ts-radius-lg);background:var(--color-fd-card);width:100%;margin:22px 0;overflow:hidden}.ts-ports__row{border-top:1px solid var(--ts-border-soft);grid-template-columns:minmax(110px,.8fr) minmax(120px,.9fr) minmax(0,2fr);align-items:baseline;gap:12px;padding:11px 14px;font-size:13.5px;display:grid}.ts-ports__row:first-child{border-top:none}.ts-ports__head{background:var(--ts-surface-2);letter-spacing:.1em;text-transform:uppercase;color:var(--ts-muted-soft);border-top:none;font-size:11px;font-weight:700}.ts-ports__svc{color:var(--color-fd-foreground);font-weight:600}.ts-ports__bind,.ts-ports__svc{font-family:var(--font-mono);overflow-wrap:anywhere}.ts-ports__bind{color:var(--ts-muted);font-size:12.5px}.ts-ports__note{color:var(--ts-muted);line-height:1.55}.ts-ports__row[data-exposed=true] .ts-ports__bind{color:var(--ts-danger);font-weight:600}@media (max-width:640px){.ts-ports__row{grid-template-columns:1fr;gap:3px}.ts-ports__head{display:none}}.ts-visitor{border:1px solid var(--color-fd-border);border-radius:var(--ts-radius-lg);background:var(--color-fd-card);grid-template-columns:auto minmax(0,1.15fr) minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:8px 16px;padding:16px 18px;font-size:14px;display:grid}.ts-visitor__dot{background:var(--ts-accent);width:9px;height:9px;box-shadow:0 0 0 3px var(--ts-accent);border-radius:999px}@supports (color:color-mix(in lab,red,red)){.ts-visitor__dot{box-shadow:0 0 0 3px color-mix(in srgb,var(--ts-accent) 20%,transparent)}}.ts-visitor__name{color:var(--color-fd-foreground);letter-spacing:-.01em;font-weight:650}.ts-visitor__sub{color:var(--ts-muted);font-size:12.5px}.ts-visitor__flag{border:1px solid var(--color-fd-border);background:var(--ts-surface-2);font-family:var(--font-mono);color:var(--ts-muted);vertical-align:1px;border-radius:4px;margin-left:7px;padding:1px 6px;font-size:10.5px;font-weight:600;display:inline-block}.ts-visitor__path{font-family:var(--font-mono);color:var(--color-fd-foreground);overflow-wrap:anywhere;font-size:12.5px}.ts-visitor__meta{color:var(--ts-muted);font-size:12.5px}.ts-visitor__tickets{background:var(--ts-danger-soft);color:var(--ts-danger);border-radius:999px;align-items:center;padding:3px 9px;font-size:12px;font-weight:650;display:inline-flex}@media (max-width:720px){.ts-visitor{grid-template-columns:auto minmax(0,1fr)}.ts-visitor>:nth-child(n+3){grid-column:2}}.ts-chain{margin:26px 0}.ts-chain__track{flex-wrap:wrap;align-items:stretch;gap:8px;display:flex}.ts-chain__node{border:1px solid var(--color-fd-border);border-top:3px solid var(--ts-node,var(--ts-accent));border-radius:var(--ts-radius-md);background:var(--color-fd-card);flex:150px;min-width:0;padding:13px 14px}.ts-chain__label{color:var(--color-fd-foreground);font-size:13.5px;font-weight:650}.ts-chain__key{font-family:var(--font-mono);color:var(--ts-muted-soft);overflow-wrap:anywhere;margin-top:2px;font-size:11px}.ts-chain__desc{color:var(--ts-muted);margin-top:7px;font-size:12.5px;line-height:1.55}.ts-chain__arrow{color:var(--ts-muted-soft);flex:none;align-self:center;font-size:15px}@media (max-width:760px){.ts-chain__arrow{display:none}}.ts-home{background:var(--color-fd-background);min-height:100dvh;color:var(--color-fd-foreground)}.ts-home__inner{max-width:1080px;margin:0 auto;padding:0 24px}.ts-topbar{z-index:30;-webkit-backdrop-filter:saturate(180%)blur(12px);backdrop-filter:saturate(180%)blur(12px);background:var(--ts-nav-bg);border-bottom:1px solid var(--color-fd-border);position:sticky;top:0}.ts-topbar__inner{align-items:center;gap:16px;max-width:1080px;margin:0 auto;padding:12px 24px;display:flex}.ts-topbar__links{align-items:center;gap:6px;margin-left:auto;display:flex}.ts-topbar__link{border-radius:var(--ts-radius-md);color:var(--ts-muted);padding:7px 11px;font-size:13.5px;font-weight:550;text-decoration:none}.ts-topbar__link:hover{background:var(--color-fd-accent);color:var(--color-fd-foreground)}.ts-wordmark{letter-spacing:-.02em;color:var(--color-fd-foreground);align-items:center;gap:9px;font-size:16px;font-weight:700;text-decoration:none;display:inline-flex}.ts-wordmark em{color:var(--ts-accent);font-style:normal}.ts-hero{padding:76px 0 8px}.ts-eyebrow{border:1px solid var(--ts-accent);border-radius:999px;align-items:center;gap:8px;padding:5px 12px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.ts-eyebrow{border:1px solid color-mix(in srgb,var(--ts-accent) 28%,transparent)}}.ts-eyebrow{background:var(--ts-accent-soft);color:var(--ts-accent);letter-spacing:.02em;font-size:12px;font-weight:650}.ts-hero h1{letter-spacing:-.035em;max-width:17ch;margin:22px 0 0;font-size:clamp(34px,5.4vw,56px);font-weight:750;line-height:1.04}.ts-hero h1 em{color:var(--ts-accent);font-style:normal}.ts-hero p{max-width:62ch;color:var(--ts-muted);margin:20px 0 0;font-size:17px;line-height:1.62}.ts-cta-row{flex-wrap:wrap;gap:10px;margin-top:30px;display:flex}.ts-btn{border-radius:var(--ts-radius-md);border:1px solid #0000;align-items:center;gap:8px;padding:11px 18px;font-size:14px;font-weight:650;text-decoration:none;transition:opacity .12s,background .12s;display:inline-flex}.ts-btn--primary{background:var(--ts-accent);color:#fff}.ts-btn--primary:hover{opacity:.9}.ts-btn--ghost{border-color:var(--color-fd-border);color:var(--color-fd-foreground);background:var(--color-fd-card)}.ts-btn--ghost:hover{background:var(--ts-surface-2)}.ts-section{border-top:1px solid var(--color-fd-border);padding:60px 0}.ts-section__label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ts-muted-soft);font-size:11px;font-weight:600}.ts-section h2{letter-spacing:-.025em;margin:12px 0 0;font-size:clamp(24px,3.2vw,32px);font-weight:700}.ts-section>.ts-home__inner>p{max-width:68ch;color:var(--ts-muted);margin:14px 0 0;font-size:15.5px;line-height:1.65}.ts-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin-top:26px;display:grid}.ts-card{border:1px solid var(--color-fd-border);border-radius:var(--ts-radius-lg);background:var(--color-fd-card);color:inherit;padding:18px;text-decoration:none;transition:border-color .12s,background .12s;display:block}a.ts-card:hover{border-color:var(--ts-accent)}@supports (color:color-mix(in lab,red,red)){a.ts-card:hover{border-color:color-mix(in srgb,var(--ts-accent) 45%,transparent)}}a.ts-card:hover{background:var(--ts-surface-2)}.ts-card__icon{border-radius:var(--ts-radius-md);background:var(--ts-accent-soft);width:30px;height:30px;color:var(--ts-accent);justify-content:center;align-items:center;display:inline-flex}.ts-card h3{letter-spacing:-.015em;margin:13px 0 0;font-size:15px;font-weight:650}.ts-card p{color:var(--ts-muted);margin:6px 0 0;font-size:13.5px;line-height:1.6}.ts-editions{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-top:26px;display:grid}.ts-edition{border:1px solid var(--color-fd-border);border-radius:var(--ts-radius-lg);background:var(--color-fd-card);padding:20px}.ts-edition h3{letter-spacing:-.02em;margin:0;font-size:16px;font-weight:700}.ts-edition code{font-family:var(--font-mono);font-size:12px}.ts-edition ul{margin:14px 0 0;padding:0;list-style:none}.ts-edition li{color:var(--ts-muted);margin-top:9px;padding-left:20px;font-size:13.5px;line-height:1.55;position:relative}.ts-edition li:before{content:"";background:var(--ts-accent);border-radius:2px;width:7px;height:7px;position:absolute;top:7px;left:3px}.ts-flagline{border-radius:2px;height:4px;display:flex;overflow:hidden}.ts-flagline span{flex:1}.ts-foot{border-top:1px solid var(--color-fd-border);color:var(--ts-muted-soft);padding:40px 0 56px;font-size:13px}.ts-foot a{color:var(--ts-muted);text-decoration:none}.ts-foot a:hover{color:var(--color-fd-foreground)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}