@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--scroll-fade-top:0px;--scroll-fade-bottom:0px;--scroll-fade-left:0px;--scroll-fade-right:0px}}}:root{--ui-scale:1}html,body{overscroll-behavior:auto;height:auto;overflow:visible}body{-webkit-font-smoothing:auto;text-rendering:auto;font-size:medium}::selection{background-color:revert;color:revert}prose-content .sr-only{position:revert;width:revert;height:revert;overflow:revert;clip:revert;clip-path:revert;white-space:revert}*,:after,:before,::backdrop{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}html,:host{-webkit-text-size-adjust:100%;tab-size:4;-webkit-tap-highlight-color:transparent;line-height:1.5}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}:where(b,strong,th){font-weight:400}:where(code,kbd,samp,pre){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}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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:400}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-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{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--motion-duration-feedback:.12s;--motion-duration-exit:.18s;--motion-duration-state:.24s;--motion-duration-enter:.32s;--motion-duration-layout:.42s;--motion-duration-caret:.8s;--motion-duration-pulse:1.4s;--motion-ease-out-quart:cubic-bezier(.25, 1, .5, 1);--motion-ease-out-quint:cubic-bezier(.22, 1, .36, 1);--motion-ease-pulse:cubic-bezier(.45, 0, .55, 1)}@font-face{font-family:IBM Plex Mono Fallback;src:local(Courier New);font-weight:400;font-style:normal;size-adjust:99.9837%;ascent-override:102.517%;descent-override:27.5045%}@font-face{font-family:IBM Plex Mono Fallback;src:local(Courier New);font-weight:400;font-style:italic;size-adjust:99.9837%;ascent-override:102.517%;descent-override:27.5045%}@font-face{font-family:STIX Two Math;src:url(../media/STIXTwoMath-Regular.0nfcs0yqd16tc.woff2?dpl=4a4d1487b32f86ca1adadbb4dd9714d71e34b1f0)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--font-sans:"Söhne", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback", monospace;--font-math:"STIX Two Math", math;--font-display:var(--font-sans);--font-v12-sans:var(--font-sans)}@layer theme{:root{--color-canvas:#0d0c0e;--color-page:#121113;--color-sunken:#161517;--color-surface:#19181a;--color-raised:#211f22;--color-selected:#28262a;--color-selected-hover:#2e2c31;--color-line-quiet:#262429;--color-line:#37343a;--color-line-strong:#454249;--color-line-loud:#595660;--color-line-danger:#5a2521;--color-ink-4:#706d76;--color-ink-3:#95929c;--color-ink-2:#c2bfc7;--color-ink:#eeeef0;--hue-open:52;--color-st-open:oklch(.755 .165 var(--hue-open));--color-st-investigating:#edce47;--color-st-fixed:#3b9d5e;--color-st-closed:#e75b54;--color-st-duplicate:#706d76;--color-st-false:#8f8c96;--color-accent:#6662b8;--color-accent-hover:#5d59ad;--color-accent-ring:#9b97dc;--color-intent:#b59979;--color-sev-c:#da534d;--color-sev-h:#f18336;--color-sev-m:#e5c14a;--color-sev-l:#8f8c96;--color-sev-i:#74717c;--color-code-keyword:#a794f0;--color-code-type:#70ccd3;--color-code-string:#7fc088;--color-code-value:#e4b97a;--color-diff-add:#0a2110;--color-diff-remove:#31100e;--color-diff-add-strong:#063b19;--color-diff-remove-strong:#581414;--color-white:#fff;--color-black:#000;--font-sans:"Söhne", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-micro:11px;--text-micro--line-height:16px;--text-mini:12px;--text-mini--line-height:16px;--text-ui:13px;--text-ui--line-height:16px;--text-ui--letter-spacing:-.02em;--text-page-title:18px;--text-page-title--line-height:24px;--text-page-title--font-weight:500;--text-page-title--letter-spacing:-.02em;--text-document-title:28px;--text-document-title--line-height:1.18;--text-document-title--font-weight:500;--text-document-title--letter-spacing:-.02em;--text-stat:22px;--text-stat--line-height:28px;--text-stat--font-weight:500;--text-stat--letter-spacing:-.02em;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:500;--radius-xs:2px;--radius-sm:4px;--radius:var(--radius-sm);--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--z-index-sticky:5;--z-index-reopen:10;--z-index-inline:20;--z-index-peek:30;--z-index-shield:40;--z-index-overlay:50;--z-index-nested:60;--opacity-dim:.55;--shadow-float:0 12px 32px #0000008c;--shadow-overlay:0 24px 64px #0009;--shadow-island:0 0 0 1px var(--color-line), 0 1px 2px #0006;--hover-fill:var(--color-raised);--refused-line:var(--color-line-quiet);--code-ground:var(--color-raised);--row-h:40px;--band-h:30px;--ui-scale:1}@supports (color:lab(0% 0 0)){:root{--color-line-danger:lab(22.6642% 24.9798 15.0409);--color-st-investigating:lab(83.7629% .835329 67.6937);--color-st-fixed:lab(57.8399% -40.785 24.3956);--color-st-closed:lab(57.9068% 55.1443 33.8897);--color-intent:lab(65.1749% 7.32651 20.6849);--color-sev-c:lab(54.2515% 53.2859 32.839);--color-sev-h:lab(66.6058% 39.0464 58.692);--color-sev-m:lab(79.5486% 4.03392 62.1391);--color-code-keyword:lab(65.8531% 22.216 -44.2174);--color-code-type:lab(76.4672% -27.1629 -12.476);--color-code-string:lab(72.3428% -30.607 21.6355);--color-code-value:lab(77.9908% 10.4553 38.2076);--color-diff-add:lab(10.6709% -13.5025 8.45247);--color-diff-remove:lab(9.55818% 17.2687 8.7826);--color-diff-add-strong:lab(20.9571% -24.272 16.1402);--color-diff-remove-strong:lab(18.9531% 31.5977 19.274)}}}@layer utilities{.relative{position:relative}.touch-hit:after{content:"";width:max(100%,24px);height:max(100%,24px);position:absolute;top:50%;left:50%;translate:-50% -50%}}:root{--mauve-1:var(--lightningcss-light,#fdfcfd)var(--lightningcss-dark,#121113);--mauve-2:var(--lightningcss-light,#faf9fb)var(--lightningcss-dark,#1a191b);--mauve-3:var(--lightningcss-light,#f2eff3)var(--lightningcss-dark,#232225);--mauve-4:var(--lightningcss-light,#eae7ec)var(--lightningcss-dark,#2b292d);--mauve-5:var(--lightningcss-light,#e3dfe6)var(--lightningcss-dark,#323035);--mauve-6:var(--lightningcss-light,#dbd8e0)var(--lightningcss-dark,#3c393f);--mauve-7:var(--lightningcss-light,#d0cdd7)var(--lightningcss-dark,#49474e);--mauve-8:var(--lightningcss-light,#bcbac7)var(--lightningcss-dark,#625f69);--mauve-9:var(--lightningcss-light,#8e8c99)var(--lightningcss-dark,#6f6d78);--mauve-11:var(--lightningcss-light,#65636d)var(--lightningcss-dark,#b5b2bc);--mauve-12:var(--lightningcss-light,#211f26)var(--lightningcss-dark,#eeeef0);--page:var(--lightningcss-light,var(--mauve-3))var(--lightningcss-dark,var(--color-canvas));--raised:var(--lightningcss-light,var(--mauve-4))var(--lightningcss-dark,var(--color-raised));--inset:var(--lightningcss-light,var(--mauve-5))var(--lightningcss-dark,var(--color-selected));--background:var(--lightningcss-light,var(--mauve-2))var(--lightningcss-dark,var(--color-surface));--foreground:var(--lightningcss-light,var(--mauve-12))var(--lightningcss-dark,var(--color-ink));--muted:var(--lightningcss-light,var(--mauve-3))var(--lightningcss-dark,var(--color-page));--muted-foreground:var(--lightningcss-light,var(--mauve-11))var(--lightningcss-dark,var(--color-ink-3));--border:var(--lightningcss-light,var(--mauve-6))var(--lightningcss-dark,var(--color-line-quiet));--border-strong:var(--lightningcss-light,var(--mauve-7))var(--lightningcss-dark,var(--color-line));--accent:var(--lightningcss-light,#6550b9)var(--lightningcss-dark,var(--color-accent-ring));--ring:var(--accent);--tone-red:var(--lightningcss-light,#ce2c31)var(--lightningcss-dark,#ff9592);--tone-orange:var(--lightningcss-light,#cc4e00)var(--lightningcss-dark,#ffa057);--tone-yellow:var(--lightningcss-light,#9e6c00)var(--lightningcss-dark,#f5e147);--tone-green:var(--lightningcss-light,#218358)var(--lightningcss-dark,#3dd68c);--tone-cyan:var(--lightningcss-light,#107d98)var(--lightningcss-dark,#4ccce6);--tone-blue:var(--lightningcss-light,#0d74ce)var(--lightningcss-dark,#70b8ff);--tone-magenta:var(--lightningcss-light,#953ea3)var(--lightningcss-dark,#e796f3);--callout-note:#0090ff;--callout-tip:#30a46c;--callout-warning:#ffc53d;--callout-caution:#e5484d;--callout-important:#8e4ec6;--callout-definition:#5b5bd6;--callout-notation:#3e63dd;--callout-theorem:#6e56cf;--callout-proposition:#ab4aba;--callout-lemma:#d6409f;--callout-corollary:#e93d82;--callout-axiom:#e54666;--callout-conjecture:#e54d2e;--callout-proof:#00a2c7;--callout-recall:#7ce2fe;--callout-remark:#12a594;--callout-explanation:#29a383;--callout-intuition:#ffe629;--callout-example:#46a758;--callout-exercise:#f76b15;--callout-solution:var(--callout-tip);--content-diff-remove:#c80a641f;--content-diff-remove-symbol:#e60a64;--content-diff-add:#0eb4641a;--content-diff-add-symbol:#0ac864;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root.light,:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root.dark,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--page:var(--mauve-3);--raised:var(--mauve-4);--inset:var(--mauve-5);--background:var(--mauve-2);--foreground:var(--mauve-12);--muted:var(--mauve-3);--muted-foreground:var(--mauve-11);--border:var(--mauve-6);--ring:var(--mauve-11)}*,:before,:after,::backdrop{border-color:var(--border)}::file-selector-button{border-color:var(--border)}::file-selector-button:focus-visible{outline:2px solid var(--ring);outline-offset:.25rem;border-radius:var(--radius-sm)}:is(*):focus-visible{outline:2px solid var(--ring);outline-offset:.25rem;border-radius:var(--radius-sm)}body{background-color:var(--page);color:var(--foreground)}:root{--step--1:clamp(.8889rem, .8709rem + .0877vw, .9375rem);--step-0:clamp(1rem, .9538rem + .2255vw, 1.125rem);--step-1:clamp(1.125rem, 1.0418rem + .4059vw, 1.35rem);--step-2:clamp(1.2656rem, 1.1346rem + .6392vw, 1.62rem);--step-3:clamp(1.4238rem, 1.2315rem + .9383vw, 1.944rem);--step-4:clamp(1.6018rem, 1.3315rem + 1.3186vw, 2.3328rem);--font-weight-normal:400;--font-weight-medium:400;--font-weight-bold:500;--leading-offset:.5625rem;--prose-foreground:var(--foreground)}@supports (color:color-mix(in lab, red, red)){:root{--prose-foreground:color-mix(in oklab, var(--foreground) 80%, transparent)}}:root{--prose-marker:var(--muted-foreground);--measure:40rem}body{font-family:var(--font-sans);font-synthesis:none;text-wrap:pretty}:where(h1,h2,h3,h4,h5,h6){text-wrap:balance}a{text-decoration:underline;-webkit-text-decoration-color:var(--underline,transparent);-webkit-text-decoration-color:var(--underline,transparent);-webkit-text-decoration-color:var(--underline,transparent);text-decoration-color:var(--underline,transparent);text-decoration-skip-ink:none;text-underline-position:under;text-underline-offset:-.06em;text-decoration-thickness:max(1px,.0625em)}a:hover{text-decoration-color:currentColor}img[data-scheme=dark]{display:none}@media (prefers-color-scheme:dark){img[data-scheme=light]{display:none}img[data-scheme=dark]{display:block}}:root[data-theme=light] img[data-scheme=light],:root[data-theme=dark] img[data-scheme=dark]{display:block}:root[data-theme=light] img[data-scheme=dark],:root[data-theme=dark] img[data-scheme=light]{display:none}prose-content{font-size:var(--step-0);line-height:calc(var(--leading-offset) + 1em);color:var(--foreground);text-wrap:pretty;overflow-wrap:break-word;display:block}prose-content :where(p,ul,ol,blockquote,pre,table,table-scroll,figure,hr,details,[data-callout],math-display,.expressive-code){margin-block:0 1.125em}prose-content>:first-child{margin-block-start:0}prose-content>:last-child{margin-block-end:0}prose-content :is(p,li){color:var(--prose-foreground)}prose-content{--heading-2:clamp(1.4238rem, 1.3143rem + .5343vw, 1.72rem);--heading-3:clamp(1.2656rem, 1.1715rem + .4589vw, 1.52rem)}prose-content :is(h1,h2,h3,h4,h5,h6){font-weight:var(--font-weight-medium);line-height:calc(var(--leading-offset) + 1em);color:var(--foreground);text-wrap:balance;margin-block:1.6em .6em}prose-content :is(h2,h3,h4,h5,h6) .heading-anchor{color:var(--muted-foreground);opacity:0;margin-inline-start:.5ch;text-decoration-line:none;display:inline-block}prose-content :is(h2,h3,h4,h5,h6) .heading-anchor:before{content:"#"}prose-content :is(h2,h3,h4,h5,h6) .heading-anchor:hover{color:var(--foreground)}prose-content :is(h2,h3,h4,h5,h6):is(:hover,:target) .heading-anchor{opacity:1}@media (hover:none){prose-content :is(h2,h3,h4,h5,h6) .heading-anchor{opacity:1}}prose-content h1{font-size:var(--step-4)}prose-content h2{border-block-end:1.5px solid var(--border);font-size:var(--heading-2);margin-block:2em .75em;padding-block-end:.3em}prose-content h3{font-size:var(--heading-3);margin-block:1.8em .5em}prose-content h4{font-size:var(--step-1);margin-block:1.6em .4em}prose-content :is(h5,h6){font-size:var(--step-0);letter-spacing:.06em;color:var(--muted-foreground);text-transform:uppercase;margin-block:1.5em .4em}prose-content>h2{counter-increment:chapter;counter-reset:section}prose-content>h3{counter-increment:section;counter-reset:subsection}prose-content>h4{counter-increment:subsection}prose-content>:is(h2,h3,h4):before{color:var(--muted-foreground);font-variant-numeric:tabular-nums;white-space:nowrap;margin-inline-end:.6ch}prose-content>h2:before{content:counter(chapter) ".";font-size:var(--step-1)}prose-content>h3:before{content:counter(chapter) "." counter(section) ".";font-size:var(--step-0)}prose-content>h4:before{content:counter(chapter) "." counter(section) "." counter(subsection) ".";font-size:var(--step--1)}@media (min-width:56rem){page-grid:not([data-sidebar]) prose-content>:is(h2,h3,h4):before{--heading-number-rail:4.5rem;inline-size:var(--heading-number-rail);margin-inline:calc(-1 * var(--heading-number-rail)) 0;text-align:end;padding-inline-end:.75rem;display:inline-block}}@media not all and (min-width:56rem){page-grid:not([data-sidebar]) prose-content>:is(h2,h3){--heading-number-rail:2.75rem;text-indent:calc(-1 * var(--heading-number-rail));padding-inline-start:var(--heading-number-rail)}page-grid:not([data-sidebar]) prose-content>:is(h2,h3):before{inline-size:var(--heading-number-rail);text-indent:0;margin-inline-end:0;display:inline-block}page-grid:not([data-sidebar]) prose-content>:is(h2,h3) *{text-indent:0}}:where(code){font-family:var(--font-mono);border-radius:var(--radius-sm);background-color:var(--mauve-4);padding:.1em .3em;font-size:.9em}.expressive-code .frame .header [data-rich-title] code{font-family:var(--font-mono);font-size:inherit;line-height:inherit;background-color:#0000;border-radius:0;padding:0}.code-tone{color:var(--tone,inherit)}.code-tone:is(.is-dim,.is-dimmed){opacity:.5}.expressive-code :where(span[style^=--]:not([class])),code[data-ec] :where(span[style^=--]:not([class])){color:var(--lightningcss-light,var(--0,inherit))var(--lightningcss-dark,var(--1,inherit));background-color:var(--lightningcss-light,var(--0bg,transparent))var(--lightningcss-dark,var(--1bg,transparent));font-style:var(--lightningcss-light,var(--0fs,inherit))var(--lightningcss-dark,var(--1fs,inherit));-webkit-text-decoration:var(--lightningcss-light,var(--0td,inherit))var(--lightningcss-dark,var(--1td,inherit));-webkit-text-decoration:var(--lightningcss-light,var(--0td,inherit))var(--lightningcss-dark,var(--1td,inherit));-webkit-text-decoration:var(--lightningcss-light,var(--0td,inherit))var(--lightningcss-dark,var(--1td,inherit));text-decoration:var(--lightningcss-light,var(--0td,inherit))var(--lightningcss-dark,var(--1td,inherit));font-weight:400!important}.expressive-code .frame.is-terminal .header{font-weight:400!important}code[data-code-path] [data-code-path-glue]{white-space:nowrap}code[data-code-path] svg{vertical-align:-.125em;block-size:1em;inline-size:1em;color:var(--muted-foreground);margin-inline-end:.5ch;display:inline-block}.code-placeholder{opacity:.6}prose-content a{--underline:var(--muted-foreground);color:var(--foreground)}prose-content :is(strong,b){color:var(--foreground);font-weight:var(--font-weight-bold)}prose-content :is(em,i){font-style:italic}@media (min-width:48rem){prose-content :is(p,li)>code{white-space:nowrap}}prose-content kbd{font-family:var(--font-mono);font-size:var(--step--1);vertical-align:middle;color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:inset 0 -1px 0 var(--border);margin-block-end:.2em;padding:.25em .4em;line-height:1;display:inline-block}prose-content copy-command{cursor:pointer}prose-content copy-command .shell-prompt{color:var(--muted-foreground);font-weight:var(--font-weight-medium);margin-inline-end:1ch}prose-content copy-command .shell-prompt:before{content:"$"}prose-content copy-command:hover code{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){prose-content copy-command:hover code{background-color:color-mix(in oklab, var(--muted) 90%, transparent)}}prose-content copy-command[data-copied] .shell-prompt{color:var(--tone-green)}prose-content copy-command[data-copied] .shell-prompt:before{content:"✓"}prose-content ol>li::marker{color:var(--muted-foreground)}prose-content :is(ul,ol){padding-inline-start:1.5rem}prose-content :is(ul,ol) :is(ul,ol){margin-block:.5em 0}prose-content ul{list-style-type:disc}prose-content ul.contains-task-list{padding-inline-start:0;list-style-type:none}prose-content ol{list-style-type:decimal}prose-content ol[type=A]{list-style-type:upper-alpha}prose-content ol[type=a]{list-style-type:lower-alpha}prose-content ol[type=I]{list-style-type:upper-roman}prose-content ol[type=i]{list-style-type:lower-roman}prose-content li{margin-block-start:.5em;padding-inline-start:.5rem}prose-content li::marker{color:var(--prose-marker)}prose-content li>blockquote,prose-content li .expressive-code,prose-content li file-tree{margin-block-start:1em}prose-content li>p{margin-block:0}prose-content li.task-list-item{padding-inline-start:0}prose-content li.task-list-item input[type=checkbox]{vertical-align:middle;accent-color:var(--foreground);margin-inline-end:.5em}prose-content blockquote{border-inline-start:2px solid var(--border);color:var(--muted-foreground);padding-inline-start:1.25em}prose-content blockquote :is(p,li){color:inherit}prose-content hr{margin-block:var(--space-l);border-block-start:1.5px solid var(--border)}prose-content :is(img,video){border-radius:var(--radius-sm);margin-inline:auto}prose-content [data-media-size=half]{width:50%}prose-content summary{cursor:pointer;font-weight:var(--font-weight-medium)}prose-content details[open] summary{margin-block-end:.5em}prose-content .footnotes{border-block-start:1.5px solid var(--border);margin-block-start:var(--space-l);padding-block-start:var(--space-s)}prose-content math{font-family:var(--font-math)}prose-content .expressive-code{content-visibility:auto;contain-intrinsic-block-size:auto 20rem}prose-content .expressive-code .frame:has(>.copy){background:var(--code-background);grid-template-columns:minmax(0,1fr) auto;display:grid}prose-content .expressive-code .frame:has(>.copy)>.header{grid-area:1/1;min-inline-size:0}prose-content .expressive-code .frame:has(>.copy)>.copy{padding:var(--space-3xs);grid-area:1/2;justify-self:end;position:relative;inset:auto}prose-content .expressive-code .frame:has(>.copy)>pre{grid-area:2/1/auto/-1;min-inline-size:0}prose-content .expressive-code [data-scroll-cue]{grid-area:3/1/auto/-1;margin-block-end:0}prose-content .expressive-code .ec-line:first-child .code{padding-inline-end:var(--ec-codePadInl)}prose-content .expressive-code pre{max-block-size:min(68vh,1000px);overflow:auto}prose-content .expressive-code pre::-webkit-scrollbar-corner{display:none}@media not all and (min-width:40rem){prose-content .expressive-code pre.wrap .ec-line .code{min-width:min(12ch, var(--ecMaxLine,12ch))}}prose-content .expressive-code pre.wrap .ec-line .code{overflow-wrap:normal;word-break:normal}prose-content .expressive-code .tm-label .code:before{font-family:var(--font-sans)}prose-content .expressive-code .frame.is-terminal .header{font-weight:var(--font-weight-normal)}prose-content .expressive-code .expand{margin-block-end:.1em}prose-content .expressive-code .ec-section summary{list-style:none}prose-content .expressive-code .ec-section summary .gutter{font-family:var(--font-mono)}prose-content .expressive-code .collapsible-start summary{margin-block:var(--space-3xs)}@media not all and (min-width:40rem){prose-content .expressive-code .ec-line{--ecIndent:2ch!important}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) prose-content img:not([data-scheme]){filter:brightness(.85)}}:root[data-theme=dark] prose-content img:not([data-scheme]){filter:brightness(.85)}prose-content table-scroll{max-inline-size:100%;display:block;overflow-x:auto}prose-content table{--table-border:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){prose-content table{--table-border:color-mix(in oklab, var(--muted-foreground) 30%, transparent)}}prose-content table{inline-size:100%;min-inline-size:34rem;font-size:var(--step--1);line-height:calc(var(--leading-offset) + 1em);margin-block:0}prose-content table thead{border-block-end:1.5px solid var(--table-border)}prose-content table tr{border-block:1.5px solid var(--table-border)}prose-content table tr:first-child{border-block-start:0}prose-content table tr:last-child{border-block-end:0}prose-content table :is(th,td){overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none}@media not all and (min-width:40rem){prose-content table:has(th:nth-child(5)) :is(th,td):last-child{min-inline-size:12rem}}prose-content table td:first-child{text-wrap:balance}prose-content table :is(th,td):first-child:has(code){white-space:nowrap;inline-size:1%}prose-content table :is(th,td)[data-col=nowrap]{white-space:nowrap}prose-content table :is(th,td)[data-col=wrap]{white-space:normal;min-inline-size:16rem}prose-content table :is(th,td)[data-col=fixed]{white-space:normal}prose-content table th{font-weight:var(--font-weight-medium);color:var(--foreground);text-align:start;padding:.5em 1em}prose-content table td{color:var(--prose-foreground);text-align:start;vertical-align:top;padding:.5em 1em}prose-content table td>:first-child{margin-block-start:0}prose-content table td>:last-child{margin-block-end:0}prose-content{counter-reset:tmlEqnNo}prose-content :is(math,math *){letter-spacing:normal}prose-content math{font-family:var(--font-math);font-size-adjust:none;text-indent:0;text-transform:none;word-wrap:normal;font-feature-settings:"dtls" off;direction:ltr;flex-wrap:wrap;align-items:baseline;font-style:normal;font-weight:400;line-height:normal;display:inline-flex}prose-content math *{border-color:currentColor}prose-content math.tml-display{display:block}prose-content math>mrow{padding-block:.5ex}prose-content math.tml-display>mrow{padding-block:0}prose-content math .tml-right{text-align:right;text-align:-webkit-right}prose-content math .tml-left{text-align:left;text-align:-webkit-left}prose-content math mtd{padding-block:.5ex}prose-content math mtable.tml-jot mtd{padding-block:.7ex}prose-content math mtable.tml-small mtd{padding-block:.35ex}prose-content math .mathscr{font-feature-settings:"ss01"}prose-content math mo.tml-prime{font-feature-settings:"ss04"}prose-content math mfrac>:nth-child(2),prose-content math msqrt,prose-content math mover>:first-child{math-shift:compact}prose-content math .menclose,prose-content math menclose{padding:.5ex 0;display:inline-block;position:relative}prose-content math menclose{-webkit-print-color-adjust:exact;print-color-adjust:exact}prose-content math .tml-cancelto{background-color:currentColor;padding:.5ex 0;display:inline-block;position:absolute;top:0;left:0;-webkit-mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'><defs><marker id='a' markerHeight='5' markerUnits='strokeWidth' markerWidth='7' orient='auto' refX='7' refY='2.5'><path fill='black' d='m0 0 7 2.5L0 5z'/></marker></defs><line x2='100%25' y1='100%25' stroke='black' stroke-width='.06em' marker-end='url(%23a)' vector-effect='non-scaling-stroke'/></svg>");mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'><defs><marker id='a' markerHeight='5' markerUnits='strokeWidth' markerWidth='7' orient='auto' refX='7' refY='2.5'><path fill='black' d='m0 0 7 2.5L0 5z'/></marker></defs><line x2='100%25' y1='100%25' stroke='black' stroke-width='.06em' marker-end='url(%23a)' vector-effect='non-scaling-stroke'/></svg>");-webkit-mask-position:0 0;mask-position:0 0;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}prose-content math .tml-shift-left{margin-left:-200%}prose-content math .tml-eqn:before{counter-increment:tmlEqnNo;content:"(" counter(tmlEqnNo) ")"}@supports ((-moz-appearance:none)){prose-content math{display:inline}prose-content math.tml-display{display:block}prose-content math>mrow,prose-content math mtd,prose-content math mtable.tml-small mtd{padding-block:0}prose-content math mtable.tml-jot mtd{padding-block:.2ex 0}prose-content math .tml-vec{transform:scale(.75)}prose-content math .ff-narrow{width:0}prose-content math .ff-nudge-left{margin-left:-.2em}prose-content math .ff-squash mtd{height:0;display:block}}@supports not ((-moz-appearance:none)){prose-content math .tml-sml-pad{padding-left:.05em}prose-content math .tml-med-pad{padding-left:.1em}prose-content math .tml-lrg-pad{padding-left:.15em}}@supports ((-webkit-backdrop-filter:blur(1px))){prose-content math .wbk-acc{transform:translateY(.431em)}prose-content math .wbk-sml{transform:translate(.07em)}prose-content math .wbk-sml-acc{transform:translate(.07em,.431em)}prose-content math .wbk-sml-vec{transform:scale(.75)translate(.07em)}prose-content math .wbk-med{transform:translate(.14em)}prose-content math .wbk-med-acc{transform:translate(.14em,.431em)}prose-content math .wbk-med-vec{transform:scale(.75)translate(.14em)}prose-content math .wbk-lrg{transform:translate(.21em)}prose-content math .wbk-lrg-acc{transform:translate(.21em,.431em)}prose-content math .wbk-lrg-vec{transform:scale(.75)translate(.21em)}}@supports (not ((-webkit-backdrop-filter:blur(1px)))) and (not ((-moz-appearance:none))){prose-content math .chr-sml{transform:translate(.07em)}prose-content math .chr-sml-vec{transform:scale(.75)translate(.07em)}prose-content math .chr-med{transform:translate(.14em)}prose-content math .chr-med-vec{transform:scale(.75)translate(.14em)}prose-content math .chr-lrg{transform:translate(.21em)}prose-content math .chr-lrg-vec{transform:scale(.75)translate(.21em)}prose-content math .tml-shift-left{margin-left:-100%}prose-content math .tml-right{text-align:-webkit-right}prose-content math .tml-left{text-align:-webkit-left}prose-content math .menclose,prose-content math menclose{text-align:left;padding:.5ex 0;position:relative}prose-content math .tml-overline{border-top:.065em solid;padding:.1em 0 0}prose-content math .tml-underline{border-bottom:.065em solid;padding:0 0 .1em}prose-content math .tml-cancel{background-color:currentColor;width:100%;height:100%;display:inline-block;position:absolute;bottom:0;left:.5px}prose-content math .upstrike{clip-path:polygon(.05em 100%,0 calc(100% - .05em),calc(100% - .05em) 0,100% .05em)}prose-content math .downstrike{clip-path:polygon(0 .05em,.05em 0,100% calc(100% - .05em),calc(100% - .05em) 100%)}prose-content math .sout{clip-path:polygon(0 calc(55% + .0333em),0 calc(55% - .0333em),100% calc(55% - .0333em),100% calc(55% + .0333em))}prose-content math .tml-xcancel{clip-path:polygon(.05em 0,0 .05em,calc(50% - .05em) 50%,0 calc(100% - .05em),.05em 100%,50% calc(50% + .05em),calc(100% - .05em) 100%,100% calc(100% - .05em),calc(50% + .05em) 50%,100% .05em,calc(100% - .05em) 0,50% calc(50% - .05em))}prose-content math .longdiv-top{border-top:.067em solid;padding:.1em .2em .2em .433em}prose-content math .longdiv-arc{clip-path:inset(0 0 0 .4em);box-sizing:border-box;border:.067em solid;border-radius:70%;width:.7em;position:absolute;top:0;bottom:.1em;left:-.4em;transform:translateY(-.067em)}prose-content math .phasor-bottom{border-bottom:.067em solid;padding:.2em .2em .1em .6em}prose-content math .phasor-angle{aspect-ratio:.5;clip-path:polygon(.05em 100%,0 calc(100% - .05em),calc(100% - .05em) 0,100% .05em);background-color:currentColor;height:100%;display:inline-block;position:absolute;bottom:-.04em;left:.5px}prose-content math .tml-fbox{border:1px solid;padding:3pt}prose-content math .circle-pad{padding:.267em}prose-content math .textcircle{border:.067em solid;border-radius:50%;position:absolute;inset:0}prose-content math .actuarial{border-style:solid;border-width:.08em .08em 0 0;margin-right:.03889em;padding:.03889em .03889em 0}prose-content math .tml-crooked-2{transform:scale(2,1.1)}prose-content math .tml-crooked-3{transform:scale(3,1.3)}prose-content math .tml-crooked-4{transform:scale(4,1.4)}}prose-content math-display{justify-content:safe center;display:flex;overflow:auto hidden}prose-content [data-callout]{--accent:var(--muted-foreground);--callout-text:var(--lightningcss-light,oklch(from var(--accent) .48 calc(c * 1.05) h))var(--lightningcss-dark,oklch(from var(--accent) .83 calc(c * .5) h));border-inline-start:2px solid var(--callout-text);font-size:var(--step--1);line-height:calc(var(--leading-offset) + 1em);padding-inline-start:1.25em}prose-content [data-callout]>[data-callout-title]{color:var(--callout-text);margin-block-end:.375em}prose-content [data-callout]>[data-callout-title] :is(strong,b){color:inherit}prose-content [data-callout]>[data-callout-title]>span>span{opacity:.7}prose-content [data-callout]>:last-child{margin-block-end:0}prose-content [data-callout][data-callout=note]{--accent:var(--callout-note)}prose-content [data-callout][data-callout=tip]{--accent:var(--callout-tip)}prose-content [data-callout][data-callout=warning]{--accent:var(--callout-warning)}prose-content [data-callout][data-callout=caution]{--accent:var(--callout-caution)}prose-content [data-callout][data-callout=important]{--accent:var(--callout-important)}prose-content [data-callout][data-callout=definition]{--accent:var(--callout-definition)}prose-content [data-callout][data-callout=notation]{--accent:var(--callout-notation)}prose-content [data-callout][data-callout=theorem]{--accent:var(--callout-theorem)}prose-content [data-callout][data-callout=proposition]{--accent:var(--callout-proposition)}prose-content [data-callout][data-callout=lemma]{--accent:var(--callout-lemma)}prose-content [data-callout][data-callout=corollary]{--accent:var(--callout-corollary)}prose-content [data-callout][data-callout=axiom]{--accent:var(--callout-axiom)}prose-content [data-callout][data-callout=conjecture]{--accent:var(--callout-conjecture)}prose-content [data-callout][data-callout=proof]{--accent:var(--callout-proof)}prose-content [data-callout][data-callout=recall]{--accent:var(--callout-recall)}prose-content [data-callout][data-callout=remark]{--accent:var(--callout-remark)}prose-content [data-callout][data-callout=explanation]{--accent:var(--callout-explanation)}prose-content [data-callout][data-callout=intuition]{--accent:var(--callout-intuition)}prose-content [data-callout][data-callout=example]{--accent:var(--callout-example)}prose-content [data-callout][data-callout=exercise]{--accent:var(--callout-exercise)}prose-content [data-callout][data-callout=solution]{--accent:var(--callout-solution)}prose-content step-list{margin-block:0 1em;display:block}prose-content step-list>ol{counter-reset:steps;padding-inline-start:0;list-style:none}prose-content step-list>ol>li{--step-circle-top:calc((var(--leading-offset) + 1em - 1.75rem) / 2);counter-increment:steps;margin-block-start:0;padding-block-end:var(--space-m);padding-inline-start:calc(1.75rem + var(--space-xs));position:relative}prose-content step-list>ol>li:before{content:counter(steps);block-size:1.75rem;inline-size:1.75rem;font-size:var(--step--1);font-weight:var(--font-weight-medium);color:var(--foreground);background-color:var(--muted);justify-content:center;align-items:center;display:flex;position:absolute;inset-block-start:var(--step-circle-top);inset-inline-start:0}@supports (color:color-mix(in lab, red, red)){prose-content step-list>ol>li:before{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}prose-content step-list>ol>li:before{border:2px solid var(--border);border-radius:var(--radius-full)}prose-content step-list>ol>li:after{content:"";background-color:var(--border);inline-size:2px;position:absolute;inset-block-start:calc(var(--step-circle-top) + 1.75rem + .25em);inset-block-end:.25em;inset-inline-start:calc(.875rem - 1px)}prose-content step-list>ol>li:last-child{padding-block-end:0}prose-content step-list>ol>li:last-child:after{display:none}prose-content step-list>ol>li>:is(p,ul,ol,blockquote,pre,table-scroll,figure,details,[data-callout],math-display,.expressive-code){margin-block:0 var(--space-xs)}prose-content step-list>ol>li>:first-child{margin-block-end:var(--space-2xs)}prose-content step-list>ol>li>:last-child{margin-block-end:0}prose-content card-grid{gap:var(--space-xs);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));margin-block:0 1em;display:grid}prose-content card-grid>[data-card]{margin-block:0}prose-content card-grid>[data-card]:last-child:nth-child(odd){grid-column:1/-1}prose-content [data-card]{padding:var(--space-s);border-radius:var(--radius-sm);background:var(--raised);color:var(--prose-foreground);margin-block:0 1em;display:block}prose-content [data-card] [data-card-title]{margin-block:0 var(--space-3xs);font-weight:var(--font-weight-medium);color:var(--foreground)}prose-content [data-card]>:last-child{margin-block-end:0}prose-content a[data-card]{--underline:transparent;transition:background-color var(--motion-duration-feedback) var(--motion-ease-out-quart);text-decoration-line:none}prose-content a[data-card]:hover{background:var(--inset)}prose-content file-tree{padding:var(--space-xs) var(--space-m);font-family:var(--font-sans);font-size:var(--step--1);line-height:calc(var(--leading-offset) + 1em);background-color:var(--muted);margin-block:0 1em;display:block}@supports (color:color-mix(in lab, red, red)){prose-content file-tree{background-color:color-mix(in oklab, var(--muted) 25%, transparent)}}prose-content file-tree{border:2px solid var(--border);overflow-x:auto}prose-content file-tree ul{margin-block:0;padding-inline-start:0;list-style:none}prose-content file-tree ul ul{margin-block:0;padding-inline-start:1.25rem;position:relative}prose-content file-tree ul ul:before{content:"";background-color:var(--muted-foreground);inline-size:2px;position:absolute;inset-block:0;inset-inline-start:calc(.5em - 1px)}@supports (color:color-mix(in lab, red, red)){prose-content file-tree ul ul:before{background-color:color-mix(in oklab, var(--muted-foreground) 40%, transparent)}}prose-content file-tree li{margin-block:0;padding-inline-start:0}prose-content file-tree details{margin-block:0}prose-content file-tree details[open] summary{margin-block-end:0}prose-content file-tree svg{block-size:1em;inline-size:1em;color:var(--muted-foreground);flex-shrink:0;display:inline-block}prose-content file-tree .tree-entry,prose-content file-tree summary{align-items:center;gap:.75ch;display:flex}prose-content file-tree summary{cursor:pointer;width:fit-content;list-style:none}prose-content file-tree summary::-webkit-details-marker{display:none}prose-content file-tree .tree-name{color:var(--prose-foreground)}prose-content file-tree .tree-name.is-highlighted{color:var(--foreground);font-weight:var(--font-weight-medium)}prose-content file-tree .tree-comment,prose-content file-tree .tree-placeholder{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){prose-content file-tree .tree-comment,prose-content file-tree .tree-placeholder{color:color-mix(in oklab, var(--muted-foreground) 75%, transparent)}}prose-content tab-group{margin-block:0 1em;display:block}prose-content tab-group>[role=tablist]{column-gap:var(--space-xs);border-block-end:2px solid var(--border);flex-wrap:wrap;display:flex}prose-content tab-group>[role=tablist]>[role=tab]{font-size:var(--step--1);line-height:calc(var(--leading-offset) + 1em);font-weight:var(--font-weight-medium);color:var(--muted-foreground);cursor:pointer;border-block-end:2px solid #0000;margin-block-end:-2px;padding-block:.35em}prose-content tab-group>[role=tablist]>[role=tab]:hover{color:var(--foreground)}prose-content tab-group>[role=tablist]>[role=tab][aria-selected=true]{color:var(--foreground);border-color:var(--foreground)}prose-content tab-group>[role=tabpanel]{padding:var(--space-s);border-inline-start:2px solid var(--border)}prose-content tab-group>[role=tabpanel]>:last-child{margin-block-end:0}prose-content tab-group[data-code-tabs]>[role=tablist]{border:2px solid var(--border);background:0 0;column-gap:0}prose-content tab-group[data-code-tabs]>[role=tablist]>[role=tab]{padding:.45rem var(--space-xs);font-size:var(--step--1);font-weight:var(--font-weight-medium);background:0 0;border:0;margin-block-end:0;line-height:1.45}prose-content tab-group[data-code-tabs]>[role=tablist]>[role=tab]:hover{background:var(--muted)}@supports (color:color-mix(in lab, red, red)){prose-content tab-group[data-code-tabs]>[role=tablist]>[role=tab]:hover{background:color-mix(in oklab, var(--muted) 60%, transparent)}}prose-content tab-group[data-code-tabs]>[role=tablist]>[role=tab][aria-selected=true]{background:var(--muted)}prose-content tab-group[data-code-tabs]>[role=tablist]>[role=tab] code{background:0 0;border-radius:0;padding:0}prose-content tab-group[data-code-tabs]>[role=tabpanel]{border-inline-start:0;padding:0}prose-content tab-group[data-code-tabs]>[role=tabpanel] .expressive-code{margin-block-start:0}prose-content tab-group[data-code-tabs]>[role=tabpanel] .frame pre{border-block-start:0;border-start-start-radius:0;border-start-end-radius:0}:root{--space-3xs:clamp(.25rem, .2269rem + .1127vw, .3125rem);--space-2xs:clamp(.5rem, .4769rem + .1127vw, .5625rem);--space-xs:clamp(.75rem, .7038rem + .2255vw, .875rem);--space-s:clamp(1rem, .9538rem + .2255vw, 1.125rem);--space-m:clamp(1.5rem, 1.4307rem + .3382vw, 1.6875rem);--space-l:clamp(2rem, 1.9076rem + .451vw, 2.25rem);--space-xl:clamp(3rem, 2.8613rem + .6764vw, 3.375rem);--space-s-m:clamp(1rem, .7458rem + 1.2401vw, 1.6875rem);--frame-max-width:90rem;--grid-max-width:75.94rem;--grid-gutter:var(--space-s-m);--grid-columns:12;--grid-edge:max(var(--grid-gutter), (100% - var(--grid-max-width)) / 2 + var(--grid-gutter));--grid-column-width:calc(( min(100%, var(--grid-max-width)) - (var(--grid-columns) + 1) * var(--grid-gutter) ) / var(--grid-columns));--bar-gutter:var(--grid-edge);--page-start-offset:calc(var(--space-xl) - var(--grid-gutter));--page-offset-top:calc(var(--bar-nav-height) + var(--bar-toc-height) + var(--grid-gutter) + var(--page-start-offset));--page-offset-bottom:var(--space-m)}html{--bar-nav-height:calc(2rem + 2 * var(--space-2xs) + 2px);--bar-toc-height:0px;scrollbar-gutter:stable;scroll-padding-block-start:var(--page-offset-top);overflow-x:clip}@media (min-width:48rem){html{overscroll-behavior-y:none}}@media not all and (min-width:64rem){html:has(page-toc){--bar-toc-height:calc(1.5 * var(--step--1) + 2 * var(--space-2xs) + 2px)}}[data-skip-link]{z-index:100;padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-full);background:var(--foreground);color:var(--page);transform:translateY(calc(-100% - var(--space-m)));text-decoration:none;position:fixed;inset-block-start:var(--space-2xs);inset-inline-start:var(--grid-gutter)}[data-skip-link]:focus-visible{transform:translateY(0)}@property --scroll-fade-top{syntax:"<length>";inherits:false;initial-value:0}@property --scroll-fade-bottom{syntax:"<length>";inherits:false;initial-value:0}@property --scroll-fade-left{syntax:"<length>";inherits:false;initial-value:0}@property --scroll-fade-right{syntax:"<length>";inherits:false;initial-value:0}[data-scroll-fade]:not([data-scroll-fade=horizontal]){--scroll-fade-size:.75rem;--scroll-fade-top:0px;--scroll-fade-bottom:0px;-webkit-mask-image:linear-gradient(to bottom, transparent, black var(--scroll-fade-top), black calc(100% - var(--scroll-fade-bottom)), transparent);-webkit-mask-image:linear-gradient(to bottom, transparent, black var(--scroll-fade-top), black calc(100% - var(--scroll-fade-bottom)), transparent);-webkit-mask-image:linear-gradient(to bottom, transparent, black var(--scroll-fade-top), black calc(100% - var(--scroll-fade-bottom)), transparent);mask-image:linear-gradient(to bottom, transparent, black var(--scroll-fade-top), black calc(100% - var(--scroll-fade-bottom)), transparent);transition:--scroll-fade-top var(--motion-duration-feedback) var(--motion-ease-out-quart), --scroll-fade-bottom var(--motion-duration-feedback) var(--motion-ease-out-quart)}[data-scroll-fade]:not([data-scroll-fade=horizontal])[data-fade-top]{--scroll-fade-top:var(--scroll-fade-size)}[data-scroll-fade]:not([data-scroll-fade=horizontal])[data-fade-bottom]{--scroll-fade-bottom:var(--scroll-fade-size)}[data-scroll-fade=horizontal]{border-inline:2px solid #0000}[data-scroll-fade=horizontal][data-fade-left]{border-inline-start-color:var(--muted-foreground)}[data-scroll-fade=horizontal][data-fade-right]{border-inline-end-color:var(--muted-foreground)}[data-scroll-cue]:not([hidden]){justify-content:space-between;align-items:center;gap:var(--space-2xs);padding:var(--space-3xs) var(--space-2xs);color:var(--muted-foreground);font-family:var(--font-sans);font-size:var(--text-mini);line-height:var(--text-mini--line-height);margin-block-end:1.125em;display:flex}[data-scroll-cue]:not([hidden]):before,[data-scroll-cue]:not([hidden]):after{visibility:hidden}[data-scroll-cue]:not([hidden]):before{content:"←"}[data-scroll-cue]:not([hidden]):after{content:"→"}[data-scroll-cue]:not([hidden])[data-fade-left]:before,[data-scroll-cue]:not([hidden])[data-fade-right]:after{visibility:visible}table-scroll:has(+[data-scroll-cue]:not([hidden])){margin-block-end:0}[data-icon-button]{border-radius:var(--radius-md);cursor:pointer;width:2rem;height:2rem;transition:background-color var(--motion-duration-feedback) var(--motion-ease-out-quart);justify-content:center;align-items:center;display:inline-flex}[data-icon-button]:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){[data-icon-button]:hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}[data-icon-button] svg{width:1rem;height:1rem}@media not all and (min-width:64rem){[data-bar]{padding-block:var(--space-2xs);padding-inline:var(--bar-gutter);background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){[data-bar]{background-color:color-mix(in oklab, var(--background) 90%, transparent)}}[data-bar]{-webkit-backdrop-filter:blur(var(--blur-sm));backdrop-filter:blur(var(--blur-sm));border-block-end:2px solid var(--border)}[data-bar][data-mobile-bar]{background-color:var(--mauve-4);-webkit-backdrop-filter:none;backdrop-filter:none;border-block-end:0}}[data-bar][data-header]{padding-block:var(--space-2xs);padding-inline:var(--bar-gutter);background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){[data-bar][data-header]{background-color:color-mix(in oklab, var(--background) 90%, transparent)}}[data-bar][data-header]{-webkit-backdrop-filter:blur(var(--blur-sm));backdrop-filter:blur(var(--blur-sm));border-block-end:2px solid var(--border)}:root{--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-full:9999px;--blur-sm:8px}[data-svg-mask]{inline-size:var(--svg-mask-size,1em);block-size:var(--svg-mask-size,1em);-webkit-mask:var(--svg-mask) center / contain no-repeat;-webkit-mask:var(--svg-mask) center / contain no-repeat;-webkit-mask:var(--svg-mask) center / contain no-repeat;-webkit-mask:var(--svg-mask) center / contain no-repeat;mask:var(--svg-mask) center / contain no-repeat;background-color:currentColor;flex:none;display:inline-block}page-grid{--frame-edge:max(var(--grid-gutter), calc((100vw - var(--frame-max-width)) / 2 + var(--grid-gutter)));--side-rail-width:calc((min(100vw, var(--frame-max-width)) - var(--measure)) / 2 - 2 * var(--grid-gutter));--page-actions-reserve:0px;isolation:isolate;grid-template-columns:repeat(var(--grid-columns), minmax(0, 1fr));grid-template-rows:calc(var(--bar-nav-height) + var(--bar-toc-height) + var(--page-start-offset)) 1fr auto;gap:var(--grid-gutter);max-width:var(--frame-max-width);min-height:100svh;padding-inline:var(--grid-gutter);margin-inline:auto;display:grid;position:relative}@media not all and (min-width:48rem){page-grid{grid-template-columns:1fr}}page-grid page-header{display:contents}@media not all and (min-width:64rem){page-grid page-header{z-index:10;display:block;position:fixed;inset-block-start:0;inset-inline:0}}page-grid page-nav{min-width:0;display:block}@media (min-width:64rem){page-grid page-nav{z-index:10;position:fixed;inset-block-start:0;inset-inline:0}}@media not all and (min-width:64rem){page-grid:has(page-toc) page-nav{background-color:var(--mauve-4)}}page-grid page-toc{min-width:0;display:block}@media (min-width:64rem){page-grid page-toc{z-index:6;inline-size:var(--side-rail-width);inset-block-start:var(--page-offset-top);inset-inline-end:var(--frame-edge);bottom:max(calc(var(--page-offset-bottom) + var(--page-actions-reserve)), var(--footer-cover,0px));position:fixed;container-type:size}}page-grid page-content{min-width:0;inline-size:100%;max-inline-size:var(--measure);grid-area:2/1/auto/-1;margin-inline:auto;display:block}page-grid page-content[data-wide]{max-inline-size:none}[data-site-status]{align-items:center;gap:var(--space-2xs) var(--space-xs);min-block-size:40px;font-size:var(--step--1);color:var(--muted-foreground);flex-wrap:wrap;display:flex}[data-site-status] button{color:var(--foreground);cursor:pointer;text-decoration:underline}html:has([data-site-header]){--bar-nav-height:calc(2.45rem + 2 * var(--space-xs))}header[data-site-header]{--header-fade-color:var(--page);z-index:30;max-inline-size:var(--frame-max-width);padding-block:var(--space-xs);padding-inline:var(--grid-gutter);font-family:var(--font-v12-sans);justify-content:space-between;align-items:center;margin-inline:auto;display:flex;position:sticky;inset-block-start:0}header[data-site-header] header-backdrop{z-index:-2;pointer-events:none;background:var(--header-fade-color);block-size:100%;inline-size:100vw;display:block;position:absolute;inset-block-start:0;inset-inline-start:calc(50% - 50vw)}header[data-site-header] header-backdrop:after{content:"";block-size:var(--space-xl);background:linear-gradient(to bottom, var(--header-fade-color), transparent);position:absolute;inset-block-start:100%;inset-inline:0}@media not all and (min-width:64rem){page-grid:has(page-toc) :is(header[data-site-header]){--header-fade-color:var(--mauve-4)}page-grid:has(page-toc) :is(header[data-site-header]) header-backdrop:after{inset-block-start:calc(100% + var(--bar-toc-height))}page-grid:has(page-toc input:checked) :is(header[data-site-header]) header-backdrop:after{display:none}}header[data-site-header] [data-site-brand]{color:var(--foreground);flex-shrink:0;align-items:center;text-decoration-line:none;display:inline-flex}header[data-site-header] [data-site-brand] [data-svg-mask]{aspect-ratio:816/336;block-size:2.25rem;inline-size:auto}@media not all and (min-width:24rem){header[data-site-header] [data-site-brand] [data-svg-mask]{block-size:1.875rem}}header[data-site-header] header-actions{align-items:center;gap:var(--space-3xs);flex-shrink:0;display:flex}header[data-site-header] header-actions search-control{display:inline-flex;position:relative}header[data-site-header] header-actions search-control [data-header-tip]{z-index:var(--z-index-overlay);gap:var(--space-3xs);padding:var(--space-3xs) var(--space-2xs);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--background);color:var(--foreground);font-size:var(--step--1);white-space:nowrap;align-items:center;display:none;position:absolute;inset-block-start:100%;inset-inline-end:0}header[data-site-header] header-actions search-control [data-header-tip] kbd{font-family:var(--font-mono);font-size:.75em}header[data-site-header] header-actions search-control:not([data-dismissed]):is(:hover,:has(:focus-visible)) [data-header-tip]{display:flex}header[data-site-header] header-actions [data-header-search]{border-radius:var(--radius-md);block-size:1.5rem;inline-size:1.5rem;color:var(--muted-foreground);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}header[data-site-header] header-actions [data-header-search]:hover{background:var(--raised);color:var(--foreground)}header[data-site-header] header-actions [data-header-search] svg{block-size:1rem;inline-size:1rem}header[data-site-header] header-actions [data-header-pill]{justify-content:center;align-items:center;gap:var(--space-3xs);padding:var(--space-3xs) var(--space-xs);border-radius:var(--radius-full);background-color:var(--raised);display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){header[data-site-header] header-actions [data-header-pill]{background-color:color-mix(in oklab, var(--raised) 55%, transparent)}}header[data-site-header] header-actions [data-header-pill]{color:var(--foreground);font-size:var(--step--1);transition:background-color var(--motion-duration-feedback) var(--motion-ease-out-quart);text-decoration-line:none}header[data-site-header] header-actions [data-header-pill]:hover{background-color:var(--raised)}header[data-site-header] header-actions [data-header-pill][data-solid]{background-color:var(--foreground);color:var(--page,var(--background))}header[data-site-header] header-actions [data-header-pill][data-solid]:hover{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){header[data-site-header] header-actions [data-header-pill][data-solid]:hover{background-color:color-mix(in oklab, var(--foreground) 85%, var(--page,var(--background)))}}header[data-site-header] header-actions [data-header-pill]:before{content:"";block-size:2.75rem;position:absolute;inset-block-start:50%;inset-inline:0;transform:translateY(-50%)}dialog#search-dialog{inline-size:min(38rem, calc(100vw - 2 * var(--grid-gutter)));background-color:var(--background);color:var(--foreground);border:2px solid var(--border);border-radius:var(--radius-xl);margin-block-start:12svh;margin-inline:auto;padding:0}dialog#search-dialog::backdrop{background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){dialog#search-dialog::backdrop{background-color:color-mix(in oklab, var(--background) 60%, transparent)}}dialog#search-dialog::backdrop{-webkit-backdrop-filter:blur(var(--blur-sm));backdrop-filter:blur(var(--blur-sm))}dialog#search-dialog search{display:block}dialog#search-dialog search form{align-items:center;gap:var(--space-2xs);padding-inline:var(--space-s);display:flex}dialog#search-dialog search form svg{block-size:1em;inline-size:1em;color:var(--muted-foreground);flex-shrink:0}dialog#search-dialog search form input{min-width:0;padding-block:var(--space-xs);font-size:var(--step-0);color:var(--foreground);background:0 0;flex:1}dialog#search-dialog search form input:focus-visible{outline:none}dialog#search-dialog search form input::-webkit-search-cancel-button{display:none}dialog#search-dialog search search-results{border-block-start:2px solid var(--border);display:block}dialog#search-dialog search search-results [data-hint]{padding:var(--space-xs) var(--space-s);font-size:var(--step--1);color:var(--muted-foreground)}dialog#search-dialog search search-results [data-hint][hidden]{display:none}dialog#search-dialog search search-results ul{overscroll-behavior:contain;max-block-size:min(24rem,50svh);overflow-y:auto}dialog#search-dialog search search-results ul li+li{border-block-start:2px solid var(--border)}@supports (color:color-mix(in lab, red, red)){dialog#search-dialog search search-results ul li+li{border-block-start:2px solid color-mix(in oklab, var(--border) 50%, transparent)}}dialog#search-dialog search search-results ul a{padding:var(--space-2xs) var(--space-s);display:block}dialog#search-dialog search search-results ul a:is(:hover,:focus-visible){background-color:var(--raised);outline:none}dialog#search-dialog search search-results ul a strong{font-weight:var(--font-weight-medium);color:var(--foreground);display:block}dialog#search-dialog search search-results ul a p{font-size:var(--step--1);color:var(--muted-foreground);margin-block-start:.1em}dialog#search-dialog search search-results ul a p mark{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){dialog#search-dialog search search-results ul a p mark{background-color:color-mix(in oklab, var(--foreground) 15%, transparent)}}dialog#search-dialog search search-results ul a p mark{color:var(--foreground)}dialog#search-dialog search :is([data-recovery],[data-retry],[data-clear]){margin:0 var(--space-s) var(--space-xs);color:var(--foreground);cursor:pointer;text-decoration:underline;display:inline-block}dialog#search-dialog search :is([data-recovery],[data-retry],[data-clear])[hidden]{display:none}page-grid>footer[data-site-footer]{margin-block-start:var(--space-xl)}footer[data-site-footer]{--footer-surface:var(--mauve-4);z-index:5;background:var(--footer-surface);font-family:var(--font-v12-sans);grid-area:3/1/auto/-1;margin-inline:calc(50% - 50vw);position:relative}footer[data-site-footer] footer-shell{max-inline-size:var(--frame-max-width);padding-block-start:var(--space-m);padding-inline:var(--grid-gutter);margin-inline:auto;display:block}footer[data-site-footer] footer-shell footer-columns{gap:var(--space-m) var(--grid-gutter);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (min-width:64rem){footer[data-site-footer] footer-shell footer-columns{grid-template-columns:repeat(var(--grid-columns), minmax(0, 1fr))}}footer[data-site-footer] footer-shell footer-columns nav{font-size:var(--step--1)}@media (min-width:64rem){footer[data-site-footer] footer-shell footer-columns nav{grid-column:span 2}footer[data-site-footer] footer-shell footer-columns nav:first-of-type{grid-column:5/7}}footer[data-site-footer] footer-shell footer-columns nav>p{color:var(--foreground)}footer[data-site-footer] footer-shell footer-columns nav ul{flex-direction:column;gap:2px;margin-block-start:2px;display:flex}footer[data-site-footer] footer-shell footer-columns nav a{min-block-size:24px;color:var(--muted-foreground);align-items:center;text-decoration-line:none;display:inline-flex}footer[data-site-footer] footer-shell footer-columns nav a:hover{color:var(--foreground)}footer[data-site-footer] footer-shell footer-columns footer-meta{align-items:flex-start;gap:var(--space-2xs);flex-direction:column;grid-column:1/-1;display:flex}@media (min-width:64rem){footer[data-site-footer] footer-shell footer-columns footer-meta{grid-column:1/3}}footer[data-site-footer] footer-shell footer-columns footer-meta>p{font-size:var(--step--1);color:var(--muted-foreground)}footer[data-site-footer] footer-shell footer-columns footer-legal{font-size:var(--step--1);flex-direction:column;gap:2px;display:flex}footer[data-site-footer] footer-shell footer-columns footer-legal a{min-block-size:24px;color:var(--muted-foreground);align-items:center;text-decoration-line:none;display:inline-flex}footer[data-site-footer] footer-shell footer-columns footer-legal a:hover{color:var(--foreground)}footer[data-site-footer] footer-shell footer-columns theme-switch{border-radius:var(--radius-full);background:var(--mauve-5);align-items:center;inline-size:100%;max-inline-size:13rem;padding:2px;display:flex}footer[data-site-footer] footer-shell footer-columns theme-switch label{border-radius:var(--radius-full);min-inline-size:0;color:var(--muted-foreground);cursor:pointer;flex:1;justify-content:center;align-items:center;padding-block:2px;display:flex;position:relative}footer[data-site-footer] footer-shell footer-columns theme-switch label:before{content:"";position:absolute;inset:-.75rem 0}footer[data-site-footer] footer-shell footer-columns theme-switch label:has(input:checked){background:var(--lightningcss-light,var(--mauve-1))var(--lightningcss-dark,var(--mauve-7));color:var(--foreground)}footer[data-site-footer] footer-shell footer-columns theme-switch label:not(:has(input:checked)):hover{color:var(--foreground)}footer[data-site-footer] footer-shell footer-columns theme-switch label:has(input:focus-visible){outline:2px solid var(--ring);outline-offset:.25rem}footer[data-site-footer] footer-shell footer-columns theme-switch label [data-svg-mask]{block-size:1rem;inline-size:1rem}footer[data-site-footer] footer-shell footer-columns theme-switch label input{opacity:0;pointer-events:none;position:absolute}footer[data-site-footer] footer-shell footer-wordmark{--wordmark-start:var(--mauve-6);--wordmark-end:var(--footer-surface);margin-block-start:var(--space-m);margin-inline:calc(50% - 50vw);display:block}footer[data-site-footer] footer-shell footer-wordmark [data-svg-mask]{aspect-ratio:1445.35/327;background:linear-gradient(to right, var(--wordmark-start), var(--wordmark-end));block-size:auto;inline-size:100%;display:block}page-toc>nav{--toc-inset-background:var(--lightningcss-light,var(--mauve-3))var(--lightningcss-dark,var(--mauve-5));max-height:100cqb;font-size:var(--step--1);flex-direction:column;align-items:flex-end;display:flex;position:relative}@media not all and (min-width:64rem){page-toc>nav{align-items:stretch;max-height:none;position:relative;top:auto}}page-toc>nav [data-mobile-bar]{display:none}@media not all and (min-width:64rem){page-toc>nav [data-mobile-bar]{align-items:center;gap:var(--space-2xs);cursor:pointer;display:flex}page-toc>nav [data-mobile-bar] input{opacity:0;pointer-events:none;position:absolute}page-toc>nav [data-mobile-bar]>svg:first-of-type{flex-shrink:0;block-size:1em;inline-size:1em}page-toc>nav [data-mobile-bar]>svg:first-of-type circle{fill:none;stroke:var(--border);stroke-width:2px}page-toc>nav [data-mobile-bar]>svg:first-of-type circle:last-child{--circumference:calc(2 * pi * 6.5px);stroke:var(--muted-foreground);stroke-dasharray:var(--circumference);stroke-dashoffset:calc(var(--circumference) * (1 - var(--progress,0)))}page-toc>nav [data-mobile-bar] toc-current{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted-foreground);flex:1;overflow:hidden}page-toc>nav [data-mobile-bar]>svg:last-of-type{block-size:1em;inline-size:1em;color:var(--muted-foreground);flex-shrink:0}page-toc>nav:has(input:focus-visible) [data-mobile-bar]{outline:2px solid var(--ring);outline-offset:-2px}page-toc>nav:has(input:checked) [data-mobile-bar]>svg:last-of-type{rotate:180deg}}page-toc>nav [data-desktop-toc]{--toc-panel-gap:var(--space-2xs);justify-content:flex-end;min-block-size:2.75rem;inline-size:2.75rem;display:flex;position:relative}page-toc>nav [data-desktop-toc]:before{content:"";inline-size:var(--toc-panel-gap);block-size:var(--toc-panel-block-size,100%);clip-path:polygon(100% 0, 100% var(--toc-trigger-block-size,100%), 0 100%, 0 0);position:absolute;inset-block-start:0;inset-inline-end:100%}@media not all and (min-width:64rem){page-toc>nav [data-desktop-toc]{display:contents}page-toc>nav [data-desktop-toc]:before{display:none}}page-toc>nav [data-ruler-trigger]{cursor:pointer;justify-content:flex-end;align-items:flex-end;min-block-size:2.75rem;inline-size:2.75rem;padding:.5rem 0;display:flex}@media not all and (min-width:64rem){page-toc>nav [data-ruler-trigger]{display:none}}page-toc>nav [data-ruler]{overscroll-behavior:none;scrollbar-width:none;flex-direction:column;align-items:flex-end;gap:.3rem;max-block-size:max(0px,100cqb - 1rem);inline-size:2.25rem;display:flex;overflow-y:auto}page-toc>nav [data-ruler]::-webkit-scrollbar{display:none}page-toc>nav [data-ruler-tick]{background-color:var(--muted-foreground);flex:none;block-size:2px;inline-size:2.25rem}@supports (color:color-mix(in lab, red, red)){page-toc>nav [data-ruler-tick]{background-color:color-mix(in oklab, var(--muted-foreground) 55%, var(--border))}}page-toc>nav [data-ruler-tick]{transform-origin:100%;transition:background-color var(--motion-duration-feedback) var(--motion-ease-out-quart);transform:scaleX(.5)}page-toc>nav [data-ruler-tick][data-depth="2"]{transform:scaleX(.875)}page-toc>nav [data-ruler-tick][data-depth="3"]{transform:scaleX(.6875)}page-toc>nav [data-ruler-tick][data-group]{margin-block-start:.25rem;transform:scaleX(1)}page-toc>nav [data-ruler-tick][data-active]{background-color:var(--foreground)}page-toc>nav [data-toc-panel]{z-index:1;inline-size:min(20rem, calc(100vw - 2 * var(--grid-gutter)));max-block-size:calc(100svh - var(--page-offset-top) - var(--page-offset-bottom));border-radius:var(--radius-lg);background:var(--mauve-4);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--motion-duration-exit) var(--motion-ease-out-quart), translate var(--motion-duration-exit) var(--motion-ease-out-quart), visibility 0s linear var(--motion-duration-exit);flex-direction:column;display:flex;position:absolute;inset-block-start:0;inset-inline-end:calc(100% + var(--toc-panel-gap));overflow:hidden;translate:.375rem}@media not all and (min-width:64rem){page-toc>nav [data-toc-panel]{--toc-inset-background:var(--lightningcss-light,var(--mauve-4))var(--lightningcss-dark,var(--mauve-6));background:var(--mauve-5);opacity:1;visibility:visible;pointer-events:auto;border:0;border-radius:0;max-block-size:30svh;inline-size:auto;transition:none;display:none;inset-block-start:100%;inset-inline:0;translate:none}}page-toc>nav [data-mobile-bar] code,page-toc>nav [data-toc-panel] code{background-color:var(--toc-inset-background)}page-toc>nav [data-desktop-toc]:is(:hover,:focus-within) [data-toc-panel]{opacity:1;visibility:visible;pointer-events:auto;transition:opacity var(--motion-duration-enter) var(--motion-ease-out-quint), translate var(--motion-duration-enter) var(--motion-ease-out-quint), visibility 0s;translate:0}@media not all and (min-width:64rem){page-toc>nav:has(input:checked) [data-toc-panel]{display:flex}}page-toc>nav [data-panel-heading]{padding:var(--space-xs);flex-shrink:0;display:block}page-toc>nav [data-panel-heading] toc-title{font-size:var(--step-0);color:var(--foreground);line-height:1.2;display:block}@media not all and (min-width:64rem){page-toc>nav [data-panel-heading]{display:none}}page-toc>nav [data-toc-list]{gap:var(--space-3xs);min-height:0;padding:var(--space-xs);overscroll-behavior:none;scrollbar-width:none;flex-direction:column;padding-block-start:0;display:flex;overflow:hidden auto}page-toc>nav [data-toc-list]::-webkit-scrollbar{display:none}@media not all and (min-width:64rem){page-toc>nav [data-toc-list]{padding:var(--space-2xs) var(--grid-gutter)}}page-toc>nav [data-toc-list] a{color:var(--muted-foreground)}page-toc>nav [data-toc-list] a:hover,page-toc>nav [data-toc-list] a[data-active]{color:var(--foreground)}page-toc>nav [data-toc-list] li[data-group]{font-weight:var(--font-weight-medium)}page-toc>nav [data-toc-list] li[data-group]:not(:first-child){margin-block-start:var(--space-2xs)}page-toc>nav [data-toc-list] li[data-group] summary{cursor:pointer;align-items:center;gap:.375rem;list-style:none;display:flex}page-toc>nav [data-toc-list] li[data-group] summary::-webkit-details-marker{display:none}page-toc>nav [data-toc-list] li[data-group] summary a{min-inline-size:0}page-toc>nav [data-toc-list] li[data-group] summary svg{block-size:1em;inline-size:1em;color:var(--muted-foreground);flex-shrink:0;margin-inline-start:auto}page-toc>nav [data-toc-list] li[data-group] summary:hover svg{color:var(--foreground)}page-toc>nav [data-toc-list] li[data-group] details[open]>summary svg{rotate:180deg}page-toc>nav [data-toc-list] li[data-group] details>ul{--shift:1;font-weight:var(--font-weight-normal);margin-block-start:var(--space-3xs)}page-toc>nav [data-toc-list] li[data-group] details:not([open]):has(a[data-active]) summary a{color:var(--foreground)}page-toc>nav [data-toc-list] li[data-depth]{padding-inline-start:calc((var(--shift,0) + var(--indent,0)) * var(--space-xs))}page-toc>nav [data-toc-list] li[data-depth="3"]{--indent:1}page-toc>nav [data-toc-list] li[data-depth="4"]{--indent:2}page-toc>nav [data-toc-list],page-toc>nav [data-toc-list] li[data-group] details>ul{counter-reset:toc-chapter}page-toc>nav [data-toc-list] li[data-depth="2"]:not([data-nested]){counter-increment:toc-chapter;counter-reset:toc-section}page-toc>nav [data-toc-list] li[data-depth="3"]:not([data-nested]){counter-increment:toc-section;counter-reset:toc-subsection}page-toc>nav [data-toc-list] li[data-depth="4"]:not([data-nested]){counter-increment:toc-subsection}page-toc>nav [data-toc-list] li[data-depth]:not([data-nested])>a:before{color:inherit;font-variant-numeric:tabular-nums;margin-inline-end:.5ch}page-toc>nav [data-toc-list] li[data-depth="2"]:not([data-nested])>a:before{content:counter(toc-chapter) "."}page-toc>nav [data-toc-list] li[data-depth="3"]:not([data-nested])>a:before{content:counter(toc-chapter) "." counter(toc-section) "."}page-toc>nav [data-toc-list] li[data-depth="4"]:not([data-nested])>a:before{content:counter(toc-chapter) "." counter(toc-section) "." counter(toc-subsection) "."}@media (prefers-reduced-motion:reduce){page-toc>nav [data-ruler-tick],page-toc>nav [data-toc-panel]{transition:none}}page-hero{align-items:flex-start;gap:var(--space-3xs);text-align:start;inline-size:100%;max-inline-size:52rem;flex-direction:column;margin-block-end:calc(var(--space-l) + var(--space-xs));display:flex}page-hero h1,page-hero [data-skeleton-title]{font-family:var(--font-display);font-size:var(--step-3);font-weight:var(--font-weight-normal);line-height:calc(var(--leading-offset) + 1em);color:var(--foreground);text-wrap:balance}:is(page-hero h1,page-hero [data-skeleton-title]) [data-muted]{color:var(--muted-foreground)}:is(page-hero h1,page-hero [data-skeleton-title]) [data-no-wrap]{white-space:nowrap}[data-v12-avatar]{border-radius:inherit;background:-webkit-image-set(url(/v12-avatar-light-96.png) 1x,url(/v12-avatar-light-192.png) 2x,url(/v12-avatar-light.png) 3x) 50%/cover no-repeat;background:image-set("/v12-avatar-light-96.png" 1x,"/v12-avatar-light-192.png" 2x,"/v12-avatar-light.png" 3x) 50%/cover no-repeat;block-size:100%;inline-size:100%;display:block}:root[data-theme=dark] [data-v12-avatar]{background-image:-webkit-image-set(url(/v12-avatar-dark-96.png) 1x,url(/v12-avatar-dark-192.png) 2x,url(/v12-avatar-dark.png) 3x);background-image:image-set("/v12-avatar-dark-96.png" 1x,"/v12-avatar-dark-192.png" 2x,"/v12-avatar-dark.png" 3x)}@media (prefers-color-scheme:dark){:root:not([data-theme]) [data-v12-avatar]{background-image:-webkit-image-set(url(/v12-avatar-dark-96.png) 1x,url(/v12-avatar-dark-192.png) 2x,url(/v12-avatar-dark.png) 3x);background-image:image-set("/v12-avatar-dark-96.png" 1x,"/v12-avatar-dark-192.png" 2x,"/v12-avatar-dark.png" 3x)}}li[data-blog-card]{min-inline-size:0}li[data-blog-card] article,li[data-blog-card] [data-skeleton-card]{border-radius:var(--radius-sm);background:var(--mauve-4);flex-direction:column;gap:0;min-block-size:100%;display:flex;overflow:hidden}li[data-blog-card] [data-card-media]{aspect-ratio:1200/630;background:var(--raised);min-inline-size:0;text-decoration-line:none;display:block;overflow:hidden}li[data-blog-card] [data-card-media] img{object-fit:cover;block-size:100%;inline-size:100%}li[data-blog-card] entry-info{padding:var(--space-s);flex-direction:column;flex:1;display:flex}li[data-blog-card] entry-meta{align-items:center;gap:var(--space-2xs) var(--space-s);font-size:var(--step--1);color:var(--muted-foreground);flex-wrap:wrap;margin-block-end:var(--space-2xs);display:flex}li[data-blog-card] entry-meta entry-authors{align-items:center;gap:var(--space-2xs);display:flex}li[data-blog-card] entry-meta entry-authors author-avatars{display:flex}li[data-blog-card] entry-meta entry-authors author-avatars :is(img,author-avatar){border-radius:var(--radius-full);block-size:20px;inline-size:20px;box-shadow:0 0 0 1.5px var(--page);outline:1px solid var(--foreground);display:block}@supports (color:color-mix(in lab, red, red)){li[data-blog-card] entry-meta entry-authors author-avatars :is(img,author-avatar){outline:1px solid color-mix(in oklab, var(--foreground) 10%, transparent)}}li[data-blog-card] entry-meta entry-authors author-avatars :is(img,author-avatar){outline-offset:-1px}li[data-blog-card] entry-meta entry-authors author-avatars :is(img,author-avatar):not(:first-child){margin-inline-start:-.3125rem}li[data-blog-card] entry-meta entry-tags{gap:var(--space-2xs);flex-wrap:wrap;display:flex}li[data-blog-card] h2,li[data-blog-card] [data-skeleton-title]{font-size:var(--step-1);font-weight:var(--font-weight-medium);text-wrap:balance;line-height:1.18}:is(li[data-blog-card] h2,li[data-blog-card] [data-skeleton-title]) a{text-decoration-line:none}li[data-blog-card] entry-info>p,li[data-blog-card] entry-info>[data-skeleton-text]{color:var(--muted-foreground);font-size:var(--step--1);line-height:calc(var(--leading-offset) + 1em);margin-block-start:var(--space-2xs)}@media (min-width:64rem){li[data-blog-card][data-lead] h2{font-size:var(--step-3)}li[data-blog-card][data-lead] entry-info>p{font-size:var(--step-0);margin-block-start:var(--space-xs)}li[data-blog-card][data-lead] entry-info{padding:var(--space-m)}}li[data-author-card]{align-items:flex-start;gap:var(--space-s);display:flex}li[data-author-card]>a{flex-shrink:0}li[data-author-card]>:is(img,author-avatar),li[data-author-card]>a>:is(img,author-avatar){border-radius:var(--radius-full);outline:1px solid var(--foreground);flex-shrink:0;block-size:64px;inline-size:64px;display:block}@supports (color:color-mix(in lab, red, red)){li[data-author-card]>:is(img,author-avatar),li[data-author-card]>a>:is(img,author-avatar){outline:1px solid color-mix(in oklab, var(--foreground) 10%, transparent)}}li[data-author-card]>:is(img,author-avatar),li[data-author-card]>a>:is(img,author-avatar){outline-offset:-1px}li[data-author-card] author-info{flex-direction:column;display:flex}li[data-author-card] author-info author-name{font-size:var(--step-1);line-height:calc(var(--leading-offset) + 1em);font-weight:var(--font-weight-medium);margin-block-start:-.2em}li[data-author-card] author-info author-name author-pronouns{font-size:var(--step--1);font-weight:var(--font-weight-normal);color:var(--muted-foreground);margin-inline-start:var(--space-3xs)}li[data-author-card] author-info>p{color:var(--muted-foreground);margin-block-end:var(--space-3xs)}@media not all and (min-width:40rem){li[data-author-card]{flex-direction:column}}ul[data-social-icons]{margin-inline:-.5rem;display:flex}ul[data-social-icons] li a{color:var(--muted-foreground);text-decoration:none}ul[data-social-icons] li a:hover{color:var(--foreground)}ul[data-social-icons] li a svg{width:1.125rem;height:1.125rem}ol[data-post-list]{border-block-end:2px solid var(--border);list-style:none}ol[data-post-list] li{border-block-start:2px solid var(--border)}ol[data-post-list] a,ol[data-post-list] [data-skeleton-row]{align-items:baseline;gap:var(--space-2xs) var(--grid-gutter);padding-block:var(--space-s);font-size:var(--step--1);line-height:calc(var(--leading-offset) + 1em);color:var(--muted-foreground);grid-template-columns:11rem minmax(0,1fr) minmax(0,14rem) 3rem;text-decoration-line:none;display:grid}:is(ol[data-post-list] a,ol[data-post-list] [data-skeleton-row]):is(:hover,:focus-visible) post-title{text-decoration-line:underline}@media not all and (min-width:48rem){ol[data-post-list] a,ol[data-post-list] [data-skeleton-row]{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"meta time""title title""authors authors"}:is(ol[data-post-list] a,ol[data-post-list] [data-skeleton-row]) post-meta{grid-area:meta}:is(ol[data-post-list] a,ol[data-post-list] [data-skeleton-row]) post-title{grid-area:title}:is(ol[data-post-list] a,ol[data-post-list] [data-skeleton-row]) post-authors{grid-area:authors}:is(ol[data-post-list] a,ol[data-post-list] [data-skeleton-row]) post-time{grid-area:time}}ol[data-post-list] post-meta{flex-wrap:wrap;column-gap:1em;display:flex}ol[data-post-list] post-title{font-size:var(--step-0);color:var(--foreground);text-wrap:pretty}ol[data-post-list] post-time{font-variant-numeric:tabular-nums;text-align:end}:is(article[data-url],[data-site-skeleton=post]) header{margin-block-end:var(--space-m)}:is(article[data-url],[data-site-skeleton=post]) header h1,:is(article[data-url],[data-site-skeleton=post]) header [data-skeleton-title]{font-size:var(--step-4);line-height:1.18;font-weight:var(--font-weight-medium)}:is(article[data-url],[data-site-skeleton=post]) header post-meta{--underline:var(--muted-foreground);justify-content:space-between;align-items:center;gap:var(--space-2xs);font-size:var(--step--1);color:var(--muted-foreground);flex-wrap:wrap;margin-block-end:var(--space-xs);display:flex}:is(article[data-url],[data-site-skeleton=post]) header post-meta post-tags{--underline:transparent;gap:var(--space-3xs);flex-wrap:wrap;display:flex}:is(article[data-url],[data-site-skeleton=post]) header post-meta post-tags a{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){:is(article[data-url],[data-site-skeleton=post]) header post-meta post-tags a{color:color-mix(in oklab, var(--muted-foreground) 50%, transparent)}}:is(article[data-url],[data-site-skeleton=post]) header post-meta post-tags a{text-decoration-line:none}:is(article[data-url],[data-site-skeleton=post]) header post-meta post-tags a:hover,:is(article[data-url],[data-site-skeleton=post]) header post-meta a{color:var(--foreground)}:is(article[data-url],[data-site-skeleton=post]) header>p,:is(article[data-url],[data-site-skeleton=post]) header>[data-skeleton-text]{font-size:var(--step--1);color:var(--muted-foreground);margin-block-start:var(--space-xs)}:is(article[data-url],[data-site-skeleton=post]) header post-authors{align-items:center;gap:var(--space-3xs);font-size:var(--step--1);color:var(--muted-foreground);margin-block-start:var(--space-s);display:flex}:is(article[data-url],[data-site-skeleton=post]) header post-authors author-avatars{margin-block-end:-.1em;display:flex}:is(article[data-url],[data-site-skeleton=post]) header post-authors author-avatars :is(img,author-avatar){border-radius:var(--radius-full);block-size:18px;inline-size:18px;box-shadow:0 0 0 1.5px var(--page);outline:1px solid var(--foreground);display:block}@supports (color:color-mix(in lab, red, red)){:is(article[data-url],[data-site-skeleton=post]) header post-authors author-avatars :is(img,author-avatar){outline:1px solid color-mix(in oklab, var(--foreground) 10%, transparent)}}:is(article[data-url],[data-site-skeleton=post]) header post-authors author-avatars :is(img,author-avatar){outline-offset:-1px}:is(article[data-url],[data-site-skeleton=post]) header post-authors author-avatars :is(img,author-avatar):not(:first-child){margin-inline-start:-.375rem}:is(article[data-url],[data-site-skeleton=post]) header post-banner{margin-block-start:var(--space-m);display:block}ul[data-tag-list]{gap:var(--space-2xs);flex-wrap:wrap;display:flex}ul[data-tag-list] a{padding-inline:var(--space-2xs);font-size:var(--step--1);color:var(--muted-foreground);background-color:var(--muted);display:inline-block}@supports (color:color-mix(in lab, red, red)){ul[data-tag-list] a{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}ul[data-tag-list] a{border-radius:var(--radius-full);text-decoration-line:none}ul[data-tag-list] a:hover{color:var(--foreground)}ul[data-tag-list] a tag-count{opacity:.6;margin-inline-start:var(--space-3xs)}ul[data-card-list]{gap:var(--space-m);flex-direction:column;display:flex}[data-empty]{align-items:center;gap:var(--space-2xs) var(--space-xs);min-block-size:40px;font-size:var(--step--1);color:var(--muted-foreground);flex-wrap:wrap;display:flex}author-page{display:block}author-page header{margin-block-end:var(--space-l)}author-page section :is(h2,[data-blog-card] h2),author-page section [data-blog-card] [data-skeleton-title]{font-size:var(--step-1);line-height:calc(var(--leading-offset) + 1em);font-weight:var(--font-weight-medium);margin-block-end:var(--space-s)}article[data-not-found] header{margin-block-end:var(--space-m)}article[data-not-found] header h1{font-size:var(--step-4);line-height:calc(var(--leading-offset) + 1em);font-weight:var(--font-weight-medium)}article[data-not-found] header p{font-size:var(--step--1);color:var(--muted-foreground);margin-block-start:var(--space-3xs)}article[data-not-found] nav{gap:var(--space-s);font-size:var(--step--1);display:flex}[data-site-skeleton]{--skeleton-rung:var(--raised);--skeleton-highlight:var(--inset)}[data-site-skeleton] [data-slot=skeleton-bar]{block-size:.6em}[data-site-skeleton] author-avatar{overflow:hidden}[data-skeleton-card],page-toc[data-site-skeleton] [data-mobile-bar]{--skeleton-rung:var(--inset);--skeleton-highlight:var(--border)}[data-skeleton-lines]{grid-auto-rows:1lh;align-items:center;display:grid}[data-site-skeleton=post]{min-block-size:100svh}@media (min-width:40rem){[data-site-skeleton=post] header>[data-skeleton-text]>:nth-child(3){display:none}}[data-site-skeleton=post] [data-skeleton-prose]{font-size:var(--step-0);line-height:calc(var(--leading-offset) + 1em)}[data-site-skeleton=post] [data-skeleton-prose]>*+*{margin-block-start:1.125em}page-toc[data-site-skeleton] [data-skeleton-lines]{flex:1}ol[data-post-list] [data-skeleton-row]{align-items:start}@media (min-width:48rem){ol[data-post-list] [data-skeleton-row] post-title [data-slot=skeleton-bar]:nth-child(2){display:none}}ol[data-post-list] [data-skeleton-row] post-time [data-skeleton-lines]{justify-items:end}[data-site-skeleton=tags] [data-tag-list]{font-size:var(--step--1)}[data-site-skeleton=tags] [data-tag-list] [data-slot=skeleton-bar]{vertical-align:middle;border-radius:var(--radius-full);block-size:1lh;display:inline-block}[data-skeleton-cards]{container-type:inline-size}@container (min-width:30rem){[data-skeleton-card] [data-skeleton-text]>:nth-child(3){display:none}}@container (min-width:56rem){[data-skeleton-card] :is([data-skeleton-title],[data-skeleton-text])>:nth-child(2){display:none}}[data-skeleton-socials]{margin-inline:-.5rem;display:flex}[data-skeleton-socials]>span{justify-content:center;align-items:center;block-size:2rem;inline-size:2rem;display:inline-flex}