@layer reset{*{box-sizing:border-box;margin:0}img,svg,object,embed,iframe{block-size:auto;max-inline-size:100%}button,input,select,textarea{font:inherit}}@layer tokens{:root{color-scheme:light dark;--measure:65ch;--sidebar:14rem;--font-body:system-ui, sans-serif;--font-mono:consolas, monaco, monospace;--font-size-small:.875rem;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--brand-hue:150;--brand-sat:65%;--brand-sat-muted:55%;--brand-sat-tint:30%;--color-brand-12:hsl(var(--brand-hue) var(--brand-sat) 12%);--color-brand-17:hsl(var(--brand-hue) var(--brand-sat) 17%);--color-brand-tint-14:hsl(var(--brand-hue) var(--brand-sat-tint) 14%);--color-brand-62:hsl(var(--brand-hue) var(--brand-sat-muted) 62%);--color-brand-72:hsl(var(--brand-hue) var(--brand-sat-muted) 72%);--color-brand-tint-94:hsl(var(--brand-hue) var(--brand-sat-tint) 94%);--slate-hue:218;--color-slate-14:hsl(var(--slate-hue) 40% 14%);--color-slate-20:hsl(var(--slate-hue) 40% 20%);--color-slate-57:hsl(var(--slate-hue) 20% 57%);--color-slate-85:hsl(var(--slate-hue) 20% 85%);--color-slate-98:hsl(var(--slate-hue) 20% 98%);--color-red-27:#761313;--color-red-82:#f6acac;--color-neutral-9:#171717;--color-neutral-14:#242424;--color-neutral-20:#333;--color-neutral-24:#3d3d3d;--color-neutral-50:gray;--color-white:#fff;--color-black:#000;--theme-accent:light-dark(var(--color-brand-17),var(--color-brand-62));--theme-accent-hover:light-dark(var(--color-brand-12),var(--color-brand-72));--theme-accent-light:light-dark(var(--color-brand-tint-94),var(--color-brand-tint-14));--theme-on-accent:light-dark(var(--color-white),var(--color-neutral-14));--theme-text:light-dark(var(--color-slate-14),var(--color-slate-98));--theme-bg:light-dark(var(--color-white),var(--color-neutral-14));--theme-bg-offset:light-dark(var(--color-slate-85),var(--color-neutral-20));--theme-field-bg:light-dark(var(--color-white),var(--color-neutral-24));--theme-panel-bg:light-dark(var(--color-slate-20),var(--color-neutral-9));--theme-panel-text:var(--color-white);--theme-border:light-dark(var(--color-slate-57),var(--color-neutral-50));--theme-error:light-dark(var(--color-red-27),var(--color-red-82));--theme-border-subtle:light-dark(var(--color-slate-85),var(--color-neutral-24));--theme-border-width:1px;--theme-active-bar-width:.1875rem;--border-radius:.5rem;--transition-fast:.15s ease;--font-weight-normal:400;--font-weight-strong:700;--step-1:clamp(1.2rem, 1.128rem + .3587vw, 1.406rem);--step-2:clamp(1.44rem, 1.329rem + .5527vw, 1.758rem);--step-3:clamp(1.728rem, 1.565rem + .8161vw, 2.197rem);--step-4:clamp(2.074rem, 1.84rem + 1.1704vw, 2.747rem);--step-5:clamp(2.488rem, 2.16rem + 1.6433vw, 3.433rem);--z-header:9}}@layer base{body{font-family:var(--font-body);overflow-wrap:break-word;color:var(--theme-text);background-color:var(--theme-bg);line-height:1.5}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-strong);text-wrap:balance;line-height:1.2}h1{font-size:var(--step-5)}h2{font-size:var(--step-4)}h3{font-size:var(--step-3)}small{font-size:var(--font-size-small)}a{color:var(--theme-accent);text-underline-offset:.2em;text-decoration:underline}:is(h2,h3)>a{color:inherit;font-weight:inherit}:focus-visible{outline:.125rem solid var(--focus-color,currentcolor);outline-offset:.25em}:is(button,select,textarea){--focus-color:var(--theme-accent)}strong{font-weight:var(--font-weight-strong)}code{font-family:var(--font-mono)}pre>code{font-size:1em}table{border-collapse:collapse;inline-size:100%}th{font-weight:var(--font-weight-strong)}td,th{padding:var(--space-sm);text-align:start;border:var(--theme-border-width) solid var(--theme-border)}pre{inline-size:100%;line-height:1.5;font-family:var(--font-mono);border:var(--theme-border-width) solid light-dark(var(--theme-border),transparent);border-radius:var(--border-radius);padding:var(--space-md) var(--space-xl);font-size:.875em;overflow:auto hidden}select,textarea{padding:var(--space-sm);color:var(--theme-text);background-color:var(--theme-field-bg);border:var(--theme-border-width) solid var(--theme-border);border-radius:var(--border-radius)}blockquote{margin:var(--space-xl) 0;padding:var(--space-md) var(--space-lg);background-color:var(--theme-bg-offset);border-radius:0 var(--border-radius) var(--border-radius) 0;line-height:1.7}:target{scroll-margin-block:var(--space-xl)}}@layer layout{body{--gutter:var(--space-lg);--content:calc(var(--sidebar) + var(--space-xl) + var(--measure));grid-template-columns:[full-start] minmax(var(--gutter), 1fr) [content-start] min(var(--content), 100% - 2 * var(--gutter)) [content-end] minmax(var(--gutter), 1fr) [full-end];grid-template-rows:auto 1fr auto;min-block-size:100dvh;display:grid}.full-bleed{grid-column:full;grid-template-columns:subgrid;display:grid}:where(.full-bleed)>*{grid-column:content}.page-body{align-content:start}.layout{gap:var(--space-xl);padding-block:var(--space-xl);grid-template-columns:minmax(0,1fr);min-inline-size:0;display:grid}.layout.wide{padding-inline:var(--gutter);grid-column:full}.layout>:is(main,.main-column){--stack-space:var(--space-xl);min-inline-size:0}.prose>:is(p,ul,ol,blockquote,h3,h4,h5,h6){max-inline-size:var(--measure)}.prose>:is(h1,h2){max-inline-size:40ch}.stack>*+:is(h2,h3,h4,h5,h6){margin-block-start:var(--heading-space)}.prose>p+p{margin-block-start:var(--paragraph-space)}@media (width>48rem){.layout:has(>.sidebar){grid-template-columns:var(--sidebar) minmax(0, 1fr)}}.stack{--heading-space:calc(1lh - var(--stack-space,var(--space-md)));--paragraph-space:calc(1.5lh - var(--stack-space,var(--space-md)));gap:var(--stack-space,var(--space-md));flex-direction:column;display:flex}.grid{grid-template-columns:repeat(auto-fit, minmax(min(var(--card-min,15rem), 100%), 1fr));gap:var(--grid-gap,var(--space-lg));inline-size:100%;display:grid}.cluster{gap:var(--cluster-gap,var(--space-xl));flex-wrap:wrap;align-items:flex-start;display:flex}}@layer components{.annotation{font-style:italic;font-size:var(--font-size-small)}.dark-panel{--focus-color:var(--theme-panel-text);background-color:var(--theme-panel-bg);color:var(--theme-panel-text)}.external-link:after{content:"↗︎" / "";margin-inline-start:.25em}.navbar[data-astro-cid-nen7h5rs]{--cluster-gap:var(--space-md);padding-block:var(--space-xl);border-block-end:var(--theme-border-width) solid var(--theme-border)}.navbar[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{color:inherit;padding-block:.625rem;text-decoration:none}.navbar[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.navbar[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:active{color:var(--theme-accent);text-decoration:underline}.navbar[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:focus-visible{text-decoration:underline}.navbar[data-astro-cid-nen7h5rs] .cluster[data-astro-cid-nen7h5rs]{align-items:center}.navbar[data-astro-cid-nen7h5rs]>.cluster[data-astro-cid-nen7h5rs]{justify-content:space-between}.navbar[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--theme-accent);text-underline-offset:.3em;text-decoration:underline .125rem}.skiplink[data-astro-cid-nen7h5rs]:focus{z-index:var(--z-header);padding:var(--space-xs);text-align:center;background-color:var(--theme-accent);color:var(--theme-on-accent);--focus-color:var(--theme-text);font-size:larger;display:block;position:absolute;inset-block-start:0;inset-inline:0}footer[data-astro-cid-jo6i4kqk]{padding-block:var(--space-xl);row-gap:var(--space-md)}footer[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:inherit;padding-block:.625rem;text-decoration:none;display:inline-block}footer[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover,footer[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:focus-visible{text-decoration:underline}.footer-links[data-astro-cid-jo6i4kqk]{--stack-space:var(--space-sm)}}@layer utilities{.text-lead{font-size:var(--step-2);line-height:1.6}.text-large{font-size:var(--step-1)}.list-reset{padding:0;list-style:none}.sr-only:not(:focus){clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-center{text-align:center}}@property --stack-space{syntax:"*";inherits:false}
