@layer components{.typeset{--typeset-font-body: inherit;--typeset-font-heading: var(--font-heading);--typeset-font-mono: var(--font-mono);--typeset-size: 15px;--typeset-leading: 1.55;--typeset-flow: 1.25em}}@layer components{.typeset{font-family:var(--typeset-font-body);font-size:calc(var(--typeset-size) * 1.125);line-height:var(--typeset-leading);color:var(--color-foreground, currentColor);overflow-wrap:break-word;margin-trim:block-start;@media(min-width:48rem),print{font-size:var(--typeset-size)}--typeset-muted: var( --color-muted-foreground, color-mix(in oklab, currentColor 60%, transparent) );--typeset-rule: var( --color-border, color-mix(in oklab, currentColor 20%, transparent) )}.typeset *:not(:where(.not-typeset,[data-not-typeset],.not-typeset *,[data-not-typeset] *)){&:where(p){margin-block-start:var(--typeset-flow);margin-block-end:0}&:where(h1,h2,h3,h4,h5,h6){color:var(--color-foreground, currentColor);font-family:var(--typeset-font-heading);font-weight:600;margin-block-end:0}&:where(h1){font-size:1.75em;line-height:1.2;margin-block-start:var(--typeset-flow)}&:where(h2){font-size:1.25em;line-height:1.4;margin-block-start:calc(var(--typeset-flow) * 1.4)}&:where(h3){font-size:1.125em;line-height:1.45;margin-block-start:var(--typeset-flow)}&:where(h4){font-size:1em;line-height:1.5;margin-block-start:var(--typeset-flow)}&:where(h5){font-size:.875em;line-height:1.5;font-weight:500;color:var(--typeset-muted);margin-block-start:calc(var(--typeset-flow) / .875)}&:where(h6){font-size:.8125em;line-height:1.5;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--typeset-muted);margin-block-start:calc(var(--typeset-flow) / .8125)}&:where([id]){scroll-margin-block-start:var(--typeset-flow)}&:where(h1+*,h2+*,h3+*,h4+*,h5+*,h6+*){margin-block-start:1em}&:where(:is(h1,h2,h3,h4) :is(code)){font-size:.9em}&:where(a){color:inherit;font-weight:500;text-decoration-line:underline;text-decoration-color:color-mix(in oklab,currentColor 30%,transparent)}&:where(a:hover){text-decoration-color:currentColor}&:where(a:focus-visible){outline:2px solid var(--color-ring, currentColor);outline-offset:2px;border-radius:.125em}&:where(:is(h1,h2,h3,h4,h5,h6) :is(a)){font-weight:inherit}&:where(strong,b){font-weight:600}&:where(:is(h1,h2,h3,h4) :is(strong,b)){font-weight:600}&:where(mark){background-color:color-mix(in oklab,oklch(.86 .17 95) 40%,transparent);color:inherit;padding:.05em .15em;border-radius:.2em}&:where(abbr[title]){text-decoration-line:underline;text-decoration-style:dotted;text-underline-offset:.2em;cursor:help}&:where(del,s){color:var(--typeset-muted);text-decoration-line:line-through}&:where(sup,sub){font-size:.75em;line-height:0;position:relative;vertical-align:baseline}&:where(sup){top:-.5em}&:where(sub){bottom:-.25em}&:where(sup a){text-decoration-line:none;font-weight:500}&:where(ul){list-style-type:disc}&:where(ol){list-style-type:decimal}&:where(ul ul){list-style-type:circle}&:where(ul ul ul){list-style-type:square}&:where(ol[type=a i]){list-style-type:lower-alpha}&:where(ol[type=i i]){list-style-type:lower-roman}&:where(ol[type=A s]){list-style-type:upper-alpha}&:where(ol[type=I s]){list-style-type:upper-roman}&:where(ul,ol){margin-block-start:var(--typeset-flow);margin-block-end:0;padding-inline-start:1.5em}&:where(li){margin-block-start:.5em;padding-inline-start:.4em}&:where(li>p,li>ul,li>ol){margin-block-start:.5em}&:where(ul>li)::marker{color:var(--typeset-muted)}&:where(ol>li)::marker{color:var(--typeset-muted)}&:where(ul.contains-task-list){list-style-type:none;padding-inline-start:.25em}&:where(li.task-list-item>input[type=checkbox]){margin-inline-end:.5em;vertical-align:-.1em;accent-color:var(--color-primary, currentColor)}&:where(details){margin-block-start:var(--typeset-flow);margin-block-end:0}&:where(summary){cursor:pointer;font-weight:500}&:where(summary)::marker{color:var(--typeset-muted)}&:where(kbd){font-family:inherit;font-size:.85em;font-weight:500;border:1px solid var(--typeset-rule);border-block-end-width:2px;border-radius:min(calc(var(--radius, .5em) * .6),.35em);padding:.0625em .35em}&:where(dl){margin-block-start:var(--typeset-flow);margin-block-end:0}&:where(dt){font-weight:500;margin-block-start:1em}&:where(dt+dt){margin-block-start:.25em}&:where(dd){margin-block-start:.25em;margin-inline-start:0;padding-inline-start:1em;color:var(--typeset-muted)}&:where(:not(pre)>code){background-color:var( --color-muted, color-mix(in oklab, currentColor 8%, transparent) );font-family:var(--typeset-font-mono);font-size:.85em;border-radius:min(calc(var(--radius, .5em) * .6),.35em);padding:.125em .3em}&:where(pre){background-color:var( --color-muted, color-mix(in oklab, currentColor 8%, transparent) );font-family:var(--typeset-font-mono);font-size:.875em;line-height:1.5;tab-size:2;direction:ltr;border-radius:var(--radius, .5em);padding:.75em 1em;overflow-x:auto;margin-block-start:calc(var(--typeset-flow) / .875);margin-block-end:0}&:where(pre code){background-color:transparent;font-family:inherit;font-size:inherit;padding:0;border-radius:0}&:where(blockquote){border-inline-start:2px solid var(--typeset-rule);padding-inline-start:1em;margin-block-start:var(--typeset-flow);margin-block-end:0;margin-inline:0}&:where(hr){border:0;border-block-start:1px solid var(--typeset-rule);margin-block-start:calc(var(--typeset-flow) * 2.4);margin-block-end:0}&:where(hr+h1,hr+h2,hr+h3,hr+h4){margin-block-start:var(--typeset-flow)}&:where(.footnotes,[data-footnotes]){margin-block-start:calc(var(--typeset-flow) * 2);border-block-start:1px solid var(--typeset-rule);padding-block-start:var(--typeset-flow);font-size:.875em;color:var(--typeset-muted)}&:where(math[display=block]){margin-block-start:var(--typeset-flow);margin-block-end:0;overflow-x:auto;overflow-y:hidden;padding-block:.25em}&:where(img,video){border-radius:var(--radius, .5em);max-width:100%;height:auto;margin-block-start:var(--typeset-flow);margin-block-end:0}&:where(p img){margin-block-start:0}&:where(figure){margin-block-start:var(--typeset-flow);margin-block-end:0;margin-inline:0}&:where(figcaption,caption){color:var(--typeset-muted);font-size:.875em;text-align:center;margin-block-start:calc(.75em / .875)}&:where(caption){caption-side:bottom}&:where(table){max-width:100%;font-size:1em;line-height:1.5;font-variant-numeric:tabular-nums;border-collapse:separate;border-spacing:0;border-block-end:1px solid var(--typeset-rule);margin-block-start:var(--typeset-flow);margin-block-end:0}&:where(.typeset-scroll){overflow-x:auto;margin-block-start:var(--typeset-flow)}&:where(.typeset-scroll>*){margin-block-start:0}&:where(.typeset-scroll table){width:max-content;max-width:none}&:where(thead th){font-weight:500;text-align:start;white-space:nowrap;padding:.65em 1em}&:where(:is(tbody,tfoot) :is(td,th)){padding:.75em 1em;text-align:start;vertical-align:top;border-block-start:1px solid var(--typeset-rule)}&:where(tbody th,tfoot th){font-weight:500}&:where(th:first-child,td:first-child){padding-inline-start:0}&:where(th[align=center],td[align=center]){text-align:center}&:where(th[align=right],td[align=right]){text-align:end}&:where(li>blockquote,li>table,li>figure){margin-block-start:.5em}&:where(li>pre){margin-block-start:calc(.5em / .875)}@media print{&:where(pre,table,blockquote,figure){break-inside:avoid}&:where(h1,h2,h3,h4){break-after:avoid}}@media(forced-colors:active){&:where(:not(pre)>code){border:1px solid}}}.typeset>:where(:first-child):not(:where(.not-typeset,[data-not-typeset],.not-typeset *,[data-not-typeset] *)),.typeset>:where(:first-child)>:where(:first-child):not(:where(.not-typeset,[data-not-typeset],.not-typeset *,[data-not-typeset] *)),.typeset :where(li>:first-child,blockquote>:first-child,td>:first-child,th>:first-child,dd>:first-child,figure>:first-child,figure>picture>img):not(:where(.not-typeset,[data-not-typeset],.not-typeset *,[data-not-typeset] *)){margin-block-start:0}}.typeset-docs{--typeset-font-body: var(--font-system);--typeset-font-heading: var(--font-system);--typeset-font-mono: var(--font-system);--typeset-size: 15px;--color-foreground: #3d3d3d}:root{--color-black: #252525;--color-bg: #ffffff;--color-surface: #ffffff;--color-text: #555555;--color-text-muted: #6b6b6b;--color-accent: #2563eb;--color-accent-hover: #1d4ed8;--color-border: #e5e5e5;--color-success: #16803c;--color-success-bg: rgba(34, 160, 80, .14);--color-link-underline: rgba(85, 85, 85, .35);--font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-system: var(--font-sans);--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--content-max-width: 72ch;--content-narrow: 800px;--content-wide: 1000px;--page-gutter: 24px;--page-gutter-lg: 48px;--topbar-pill-height: 24px;--radius-image: 8px;--ease-default: cubic-bezier(.2, 0, .38, .9);--ease-copy-email: cubic-bezier(.22, 1, .36, 1);--ease-copy-email-spring: cubic-bezier(.34, 1.38, .52, 1);--copy-email-width-duration: .28s;--copy-email-face-duration: .2s}*,*:before,*:after{box-sizing:border-box;transition-timing-function:var(--ease-default)}html{scroll-behavior:smooth;font-size:15px}body{margin:0;font-family:var(--font-sans);font-size:var(--font-size-md);line-height:1.5;color:var(--color-text);background-color:var(--color-bg);text-wrap:pretty;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1:not(.typeset *),h2:not(.typeset *),h3:not(.typeset *),h4:not(.typeset *),h5:not(.typeset *),h6:not(.typeset *){font-weight:500;color:var(--color-black)}main{--gutter: var(--page-gutter);width:100%;max-width:calc(var(--content-wide) + 2 * var(--gutter));margin:0 auto;min-height:100vh;padding-top:calc(var(--space-3xl) + var(--space-lg) + var(--space-xl));padding-right:var(--gutter);padding-bottom:8rem;padding-left:var(--gutter)}@media(min-width:768px){main{--gutter: var(--page-gutter-lg);padding-top:calc(var(--space-3xl) + var(--space-2xl) + var(--space-xl));padding-bottom:8rem}}a{position:relative;color:var(--color-black);text-decoration:underline;text-decoration-color:var(--color-link-underline);text-decoration-thickness:1px;text-underline-offset:3px;transition:text-decoration-color .2s var(--ease-default)}a:hover{color:var(--color-black);text-decoration-color:var(--color-black)}:where(img,video){border-radius:var(--radius-image);outline:.5px solid rgba(0,0,0,.15);outline-offset:-.5px}img{max-width:100%;height:auto;display:block}.source-link{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-muted);background:transparent;font-size:12px;font-weight:500;line-height:1.5;white-space:nowrap;text-decoration:none;transition:color .16s var(--ease-default),background-color .16s var(--ease-default)}.source-link:hover{color:var(--color-black);background:#00000008;text-decoration:none}.source-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}button.source-link{cursor:pointer;font-family:inherit;font-size:12px;font-weight:500;line-height:1.5}.copy-email-source-link{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;transition:width var(--copy-email-width-duration) var(--ease-copy-email)}.copy-email-source-link[data-copied=true],.copy-email-source-link[data-copied=true]:hover{color:var(--color-success);background-color:var(--color-success-bg)}.copy-email-source-link__face{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;transform:scale(1);transition:opacity var(--copy-email-face-duration) var(--ease-copy-email),filter var(--copy-email-face-duration) var(--ease-copy-email),transform calc(var(--copy-email-face-duration) + 40ms) var(--ease-copy-email)}.copy-email-source-link__face--copied{position:absolute;top:50%;left:50%;translate:-50% -50%}.copy-email-source-link__content{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.copy-email-source-link__face[aria-hidden=true]{opacity:0;filter:blur(3px);transform:scale(.9);pointer-events:none}.copy-email-source-link__icon{display:block;width:12px;height:12px;flex-shrink:0}@media(prefers-reduced-motion:reduce){.source-link,.copy-email-source-link,.copy-email-source-link__face{transition:none}}
