@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:local(JetBrains Mono Regular),local(JetBrains Mono),url(/assets/DCal6a5J.woff2)format("woff2");unicode-range:U+20-7E}@font-face{font-family:JetBrains Mono;font-style:italic;font-weight:400;font-display:swap;src:local(JetBrains Mono Regular),local(JetBrains Mono),url(/assets/BqGi4VJw.woff2)format("woff2");unicode-range:U+20-7E}:root{--font-fallback:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;--font-body:system-ui,var(--font-fallback);--font-mono:"JetBrains Mono",Consolas,"Andale Mono WT","Andale Mono","Lucida Console","Lucida Sans Typewriter","DejaVu Sans Mono","Bitstream Vera Sans Mono","Liberation Mono","Nimbus Mono L",Monaco,"Courier New",Courier,monospace;--font-feat-mono:"calt" 0,"zero" 1,"tnum" 1;--color-base-gray:215,14%;--color-base-blue:212,100%;--color-base-blue-dark:212,72%;--color-base-yellow:41,100%;--color-gray-10:var(--color-base-gray),10%;--color-gray-90:var(--color-base-gray),90%;--color-blue:var(--color-base-blue),61%;--color-blue-dark:var(--color-base-blue-dark),39%;--color-yellow:var(--color-base-yellow),59%;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--theme-text-accent:#f78902;--theme-text-accent-hover:#c07a26;--theme-divider:hsla(var(--color-gray-10),.25);--theme-text:#13161e;--theme-text-light:#253242;--theme-bg:#fcfaf8;--theme-bg-accent:hsla(var(--color-yellow),.35);--theme-code-inline-bg:#dcbb7622;--theme-code-inline-bg-link:#edba0924;--theme-code-inline-text:#040913;--theme-navbar-bg:#febc18;--theme-selection-color:black;--theme-selection-bg:hsla(var(--color-blue),.5)}:root.theme-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--theme-text-accent:hsla(var(--color-yellow),1);--theme-text-accent-hover:hsla(var(--color-yellow),.7);--theme-divider:hsla(var(--color-gray-90),.2);--theme-text:#f8fafe;--theme-text-light:#e1e2ea;--theme-bg:#1b1813;--theme-bg-accent:#f9933541;--theme-code-inline-bg:#fc7a0627;--theme-code-inline-bg-link:#fed62b1f;--theme-code-inline-text:#fdfdfd;--theme-navbar-bg:#3e3123;--theme-selection-color:white;--theme-selection-bg:hsla(var(--color-blue-dark),.5)}body{background:var(--theme-bg);color:var(--theme-text)}::selection{color:var(--theme-selection-color);background-color:var(--theme-selection-bg)}:focus:not(:focus-visible){outline-offset:2px!important;outline:2px solid #0000!important}html{width:100%;height:100%}body{font-family:var(--font-body);flex-direction:column;width:100%;min-height:100%;display:flex;overflow:hidden auto}html.fixed-height,html.fixed-height body{height:100%;overflow:hidden}html.stable-scrollbar-gutter,html.stable-scrollbar-gutter body{scrollbar-gutter:stable}body.no-scroll{overflow:hidden!important}article h2,article h3,article h4,article h5,article h6{scroll-margin:6rem 0 2rem}article h1,#article{scroll-margin-top:50rem}main :not(nav) h1,main :not(nav) h2,main :not(nav) h3,main :not(nav) h4,main :not(nav) h5,main :not(nav) h6{font-weight:700;line-height:1}main :not(nav) h1,main :not(nav) h2{max-width:40ch;margin-bottom:1.5rem}main :not(nav) h3,main :not(nav) h4,main :not(nav) h5,main :not(nav) h6{margin-bottom:1rem}main :not(nav) h1{font-size:3rem;font-weight:800;line-height:1}main :not(nav) h2{font-size:1.875rem;line-height:2.25rem}main :not(nav) h3{font-size:1.5rem;line-height:2rem}main :not(nav) h4{font-size:1.25rem;line-height:1.75rem}main :not(nav) h2:not(:first-child),main :not(nav) h3:not(:first-child){margin-top:4rem}main :not(nav) :is(h4,h5,h6):not(:first-child){margin-top:3rem}kbd,.code,.rendered code{font-family:var(--font-mono);font-feature-settings:var(--font-feat-mono)}.link,.rendered a{color:var(--theme-text-accent);font-weight:400;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.link>code,.rendered a>code{background-color:var(--theme-code-inline-bg-link)!important}.link:hover,.link:focus,.rendered a:hover,.rendered a:focus{color:var(--theme-text-accent-hover)}.link:focus-visible,.rendered a:focus-visible{outline-offset:.25em;outline:2px solid}.code,.rendered :not(.code-block,pre)>code{background-color:var(--theme-code-inline-bg);overflow-wrap:break-word;border-radius:.25rem;margin-top:-.125rem;margin-bottom:-.125rem;padding:.125rem .25rem;font-size:.875em}.rendered p{margin-top:1rem;margin-bottom:1rem;line-height:1.625}.rendered p,.rendered ul,.rendered ol,.rendered summary{color:var(--theme-text-light)}.rendered ul:not(.plain-list){list-style-type:disc}.rendered ol:not(.plain-list){list-style-type:decimal}.rendered ul:not(.plain-list),.rendered ol:not(.plain-list){flex-direction:column;row-gap:.5rem;padding-left:1.5rem;line-height:1.25;display:flex}.rendered ::marker{color:var(--theme-text-light)}.rendered details>summary{margin-top:1rem;margin-bottom:1rem}.rendered details.narrow>summary{margin-top:.5rem;margin-bottom:.5rem}.rendered details.narrowest>summary{margin-top:0;margin-bottom:0}.rendered details.narrowest[open]>summary{margin-bottom:.5rem}.rendered details p{margin-top:0}.rendered strong{font-weight:600}.rendered em{font-style:italic}.rendered del{text-decoration-line:line-through}nav.toc h2.heading{text-transform:uppercase;margin-bottom:.75rem;font-size:1rem;font-weight:700;line-height:1.5rem}aside>nav.toc h2.heading{padding-left:1rem}:not(aside)>nav.toc h2.heading{opacity:.8}nav.toc li.header-link{border-left-width:4px;border-color:var(--theme-divider);padding-inline-start:1rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}nav.toc li.header-link a{align-items:center;column-gap:.25rem;padding-top:.25rem;padding-bottom:.25rem;line-height:1.25;display:flex}nav.toc li.header-link.depth-3{padding-inline-start:2rem}nav.toc li.header-link.depth-4{padding-inline-start:3rem}nav.toc li.header-link:hover,nav.toc li.header-link:focus,nav.toc li.header-link:focus-within{border-color:var(--theme-text)}nav.toc li.header-link:hover a,nav.toc li.header-link a:focus{color:var(--theme-text-accent)!important}nav.toc li.header-link.current-header-link{background-color:var(--theme-bg-accent);outline:1px solid #0000}@media (forced-colors:active){nav.toc li.header-link.current-header-link{border:1px solid canvastext}}nav.toc li.header-link.current-header-link a{color:var(--theme-text)}