:root{font-size:16px;--blue:#009cec;--blue-alpha:#009cec88;--grey:#888;--dark-blue:#004e9e;--dark-wash:rgb(16, 15, 15);--light-wash:rgb(250, 251, 251);--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:"Source Serif Pro", ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bg-rgb:255, 255, 255;--fg-rgb:0, 0, 0;--primary-neutral:rgba(var(--fg-rgb), 1.0);--secondary-neutral:rgba(var(--fg-rgb), 0.4);--tertiary-neutral:rgba(var(--fg-rgb), 0.15);background-color:#fff;color:#000;background-color:rgba(var(--bg-rgb),1);color:rgba(var(--fg-rgb),1)}html.dark{--bg-rgb:16,15,15;--fg-rgb:255, 255, 255}@supports(color:color(display-p3 1 1 1)){:root{--blue:color(display-p3 0 0.6 0.9 / 1);--blue-alpha:color(display-p3 0 0.6 0.9 / 0.5);--green:color(display-p3 0.3 0.9 0.6 / 1);--dark-blue:color(display-p3 0 0.3 0.6 / 1)}}@supports(font-variation-settings:normal){:root{--font-sans:"Inter Variable", ui-sans-serif, system-ui, -apple-system,
           BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial,
           "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
           "Segoe UI Symbol", "Noto Color Emoji";--font-serif:"Source Serif Pro", ui-serif, Georgia, Cambria,
           "Times New Roman", Times, serif}}/*!normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css*/html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}button,input[type=button]{background:0 0;outline:none;border:none;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}:root{font-family:var(--font-sans);line-height:1.5}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}p:first-child{margin-top:0}p{margin:0 0 1.5em}a{color:inherit}a[href]:hover{opacity:.4}[id]{scroll-margin-top:50px}h1,h2,h3{font-weight:500;margin:1.8em 0 1em}h1{font-size:1.8rem}h2{font-size:1.5rem}h3{font-size:1.3rem}h4{font-size:1.1rem}hr{border:0;height:2px;margin:2rem 0;background-color:var(--tertiary-neutral)}.text-lg{font-size:1.3rem}.text-sm{font-size:.9rem}.text-figcaption{font-size:.9rem}.text-label{font-weight:600;color:rgba(var(--fg-rgb),.5)}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.font-serif{font-family:var(--font-serif)}.font-sans{font-family:var(--font-sans)}::selection{background:var(--blue-alpha)}::selection:window-inactive{background:#009cec44}@font-face{font-family:inter variable;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:'regular';src:url(/fonts/inter/inter-roman.var.woff2?v=3.19)format("woff2")}@font-face{font-family:inter variable;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:'italic';src:url(/fonts/inter/inter-italic.var.woff2?v=3.19)format("woff2")}@font-face{font-family:source serif pro;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:'regular';src:url(/fonts/source-serif-pro/source-serif-4-var-roman.woff2?v=4.0.0.5)format("woff2")}@font-face{font-family:source serif pro;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:'italic';src:url(/fonts/source-serif-pro/source-serif-4-var-italic.woff2?v=4.0.0.5)format("woff2")}@font-face{font-family:inter;font-style:normal;font-weight:100;font-display:swap;src:url(/fonts/inter/inter-thin.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-thin.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:italic;font-weight:100;font-display:swap;src:url(/fonts/inter/inter-thinitalic.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-thinitalic.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:normal;font-weight:200;font-display:swap;src:url(/fonts/inter/inter-extralight.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-extralight.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:italic;font-weight:200;font-display:swap;src:url(/fonts/inter/inter-extralightitalic.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-extralightitalic.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/inter/inter-light.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-light.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:italic;font-weight:300;font-display:swap;src:url(/fonts/inter/inter-lightitalic.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-lightitalic.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter/inter-regular.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-regular.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/inter/inter-italic.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-italic.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter/inter-medium.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-medium.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/inter/inter-mediumitalic.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-mediumitalic.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter/inter-semibold.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-semibold.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:italic;font-weight:600;font-display:swap;src:url(/fonts/inter/inter-semibolditalic.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-semibolditalic.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter/inter-bold.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-bold.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/inter/inter-bolditalic.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-bolditalic.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/inter/inter-extrabold.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-extrabold.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:italic;font-weight:800;font-display:swap;src:url(/fonts/inter/inter-extrabolditalic.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-extrabolditalic.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/inter/inter-black.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-black.woff?v=3.19)format("woff")}@font-face{font-family:inter;font-style:italic;font-weight:900;font-display:swap;src:url(/fonts/inter/inter-blackitalic.woff2?v=3.19)format("woff2"),url(/fonts/inter/inter-blackitalic.woff?v=3.19)format("woff")}.p-0{padding:0}.pt-0{padding-top:0}.pr-0{padding-right:0}.pb-0{padding-bottom:0}.pl-0{padding-left:0}.px-0{padding-left:0;padding-right:0}.py-0{padding-top:0;padding-bottom:0}.m-0{margin:0}.mt-0{margin-top:0}.mr-0{margin-right:0}.mb-0{margin-bottom:0}.ml-0{margin-left:0}.mx-0{margin-left:0;margin-right:0}.my-0{margin-top:0;margin-bottom:0}.p-0\.5{padding:.5rem}.pt-0\.5{padding-top:.5rem}.pr-0\.5{padding-right:.5rem}.pb-0\.5{padding-bottom:.5rem}.pl-0\.5{padding-left:.5rem}.px-0\.5{padding-left:.5rem;padding-right:.5rem}.py-0\.5{padding-top:.5rem;padding-bottom:.5rem}.m-0\.5{margin:.5rem}.mt-0\.5{margin-top:.5rem}.mr-0\.5{margin-right:.5rem}.mb-0\.5{margin-bottom:.5rem}.ml-0\.5{margin-left:.5rem}.mx-0\.5{margin-left:.5rem;margin-right:.5rem}.my-0\.5{margin-top:.5rem;margin-bottom:.5rem}.p-1{padding:1rem}.pt-1{padding-top:1rem}.pr-1{padding-right:1rem}.pb-1{padding-bottom:1rem}.pl-1{padding-left:1rem}.px-1{padding-left:1rem;padding-right:1rem}.py-1{padding-top:1rem;padding-bottom:1rem}.m-1{margin:1rem}.mt-1{margin-top:1rem}.mr-1{margin-right:1rem}.mb-1{margin-bottom:1rem}.ml-1{margin-left:1rem}.mx-1{margin-left:1rem;margin-right:1rem}.my-1{margin-top:1rem;margin-bottom:1rem}.p-1\.5{padding:1.5rem}.pt-1\.5{padding-top:1.5rem}.pr-1\.5{padding-right:1.5rem}.pb-1\.5{padding-bottom:1.5rem}.pl-1\.5{padding-left:1.5rem}.px-1\.5{padding-left:1.5rem;padding-right:1.5rem}.py-1\.5{padding-top:1.5rem;padding-bottom:1.5rem}.m-1\.5{margin:1.5rem}.mt-1\.5{margin-top:1.5rem}.mr-1\.5{margin-right:1.5rem}.mb-1\.5{margin-bottom:1.5rem}.ml-1\.5{margin-left:1.5rem}.mx-1\.5{margin-left:1.5rem;margin-right:1.5rem}.my-1\.5{margin-top:1.5rem;margin-bottom:1.5rem}.p-2{padding:2rem}.pt-2{padding-top:2rem}.pr-2{padding-right:2rem}.pb-2{padding-bottom:2rem}.pl-2{padding-left:2rem}.px-2{padding-left:2rem;padding-right:2rem}.py-2{padding-top:2rem;padding-bottom:2rem}.m-2{margin:2rem}.mt-2{margin-top:2rem}.mr-2{margin-right:2rem}.mb-2{margin-bottom:2rem}.ml-2{margin-left:2rem}.mx-2{margin-left:2rem;margin-right:2rem}.my-2{margin-top:2rem;margin-bottom:2rem}.p-2\.5{padding:2.5rem}.pt-2\.5{padding-top:2.5rem}.pr-2\.5{padding-right:2.5rem}.pb-2\.5{padding-bottom:2.5rem}.pl-2\.5{padding-left:2.5rem}.px-2\.5{padding-left:2.5rem;padding-right:2.5rem}.py-2\.5{padding-top:2.5rem;padding-bottom:2.5rem}.m-2\.5{margin:2.5rem}.mt-2\.5{margin-top:2.5rem}.mr-2\.5{margin-right:2.5rem}.mb-2\.5{margin-bottom:2.5rem}.ml-2\.5{margin-left:2.5rem}.mx-2\.5{margin-left:2.5rem;margin-right:2.5rem}.my-2\.5{margin-top:2.5rem;margin-bottom:2.5rem}.p-3{padding:3rem}.pt-3{padding-top:3rem}.pr-3{padding-right:3rem}.pb-3{padding-bottom:3rem}.pl-3{padding-left:3rem}.px-3{padding-left:3rem;padding-right:3rem}.py-3{padding-top:3rem;padding-bottom:3rem}.m-3{margin:3rem}.mt-3{margin-top:3rem}.mr-3{margin-right:3rem}.mb-3{margin-bottom:3rem}.ml-3{margin-left:3rem}.mx-3{margin-left:3rem;margin-right:3rem}.my-3{margin-top:3rem;margin-bottom:3rem}.max-w-100{max-width:100px}.max-w-200{max-width:200px}.max-w-300{max-width:300px}.max-w-400{max-width:400px}.max-w-500{max-width:500px}.w-full{width:100%}.h-full{height:100%}.grid-gallery{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.clickable{cursor:pointer}.flex{display:flex}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-grow{flex-grow:1}.items-center{align-items:center}.place-self-stretch{place-self:stretch}.self-start{align-self:start}.self-end{align-self:end}html.dark .dark-invert{filter:invert(100%)}.scale-75{transform:scale(.75)}.inline-block{display:inline-block}.relative{position:relative}.lined-caption,.index-caption{display:flex;margin:0 0 1rem}.lined-caption::after,.index-caption::after{content:"";display:block;flex-grow:1;align-self:center;height:2px;background-color:var(--tertiary-neutral);margin-left:1.5rem}.highlight{font-family:var(--font-mono);font-size:.8rem;border-radius:5px;margin:2rem 0;padding:.5rem;overflow-x:auto}.highlight pre{margin:0}.long-form p code,.long-form li code{font-family:var(--font-mono);font-size:.8em;border-radius:4px;padding:2px 3px}.highlight,.long-form p code,.long-form li code{background-color:#f5f5f5;border:1px solid #c2c2c2}.chroma .lnlinks{outline:none;text-decoration:none;color:inherit}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}.chroma .hl{background-color:#ffc}.chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .line{display:flex}.chroma .k{color:#007020;font-weight:700}.chroma .kc{color:#007020;font-weight:700}.chroma .kd{color:#007020;font-weight:700}.chroma .kn{color:#007020;font-weight:700}.chroma .kp{color:#007020}.chroma .kr{color:#007020;font-weight:700}.chroma .kt{color:#902000}.chroma .na{color:#4070a0}.chroma .nb{color:#007020}.chroma .nc{color:#0e84b5;font-weight:700}.chroma .no{color:#60add5}.chroma .nd{color:#555;font-weight:700}.chroma .ni{color:#d55537;font-weight:700}.chroma .ne{color:#007020}.chroma .nf{color:#06287e}.chroma .nl{color:#002070;font-weight:700}.chroma .nn{color:#0e84b5;font-weight:700}.chroma .nt{color:#062873;font-weight:700}.chroma .nv{color:#bb60d5}.chroma .s{color:#4070a0}.chroma .sa{color:#4070a0}.chroma .sb{color:#4070a0}.chroma .sc{color:#4070a0}.chroma .dl{color:#4070a0}.chroma .sd{color:#4070a0;font-style:italic}.chroma .s2{color:#4070a0}.chroma .se{color:#4070a0;font-weight:700}.chroma .sh{color:#4070a0}.chroma .si{color:#70a0d0}.chroma .sx{color:#c65d09}.chroma .sr{color:#235388}.chroma .s1{color:#4070a0}.chroma .ss{color:#517918}.chroma .m{color:#40a070}.chroma .mb{color:#40a070}.chroma .mf{color:#40a070}.chroma .mh{color:#40a070}.chroma .mi{color:#40a070}.chroma .il{color:#40a070}.chroma .mo{color:#40a070}.chroma .o{color:#666}.chroma .ow{color:#007020;font-weight:700}.chroma .c{color:#60a0b0;font-style:italic}.chroma .ch{color:#60a0b0;font-style:italic}.chroma .cm{color:#60a0b0;font-style:italic}.chroma .c1{color:#60a0b0;font-style:italic}.chroma .cs{color:#60a0b0;background-color:#fff0f0}.chroma .cp{color:#007020}.chroma .cpf{color:#007020}.chroma .gd{color:#a00000}.chroma .ge{font-style:italic}.chroma .gr{color:red}.chroma .gh{color:navy;font-weight:700}.chroma .gi{color:#00a000}.chroma .go{color:#888}.chroma .gp{color:#c65d09;font-weight:700}.chroma .gs{font-weight:700}.chroma .gu{color:purple;font-weight:700}.chroma .gt{color:#04d}.chroma .gl{text-decoration:underline}.chroma .w{color:#bbb}html.dark{}html.dark .highlight,html.dark .long-form p code,html.dark .long-form li code{background-color:#212125;border:1px solid #51515b}html.dark .chroma .x{color:inherit}html.dark .chroma .err{color:#960050;background-color:#1e0010}html.dark .chroma .cl{color:inherit}html.dark .chroma .lnlinks{outline:none;text-decoration:none;color:inherit}html.dark .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}html.dark .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}html.dark .chroma .hl{background-color:#555}html.dark .chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}html.dark .chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}html.dark .chroma .line{display:flex}html.dark .chroma .k{color:#66d9ef}html.dark .chroma .kc{color:#66d9ef}html.dark .chroma .kd{color:#66d9ef}html.dark .chroma .kn{color:#f92672}html.dark .chroma .kp{color:#66d9ef}html.dark .chroma .kr{color:#66d9ef}html.dark .chroma .kt{color:#66d9ef}html.dark .chroma .n{color:inherit}html.dark .chroma .na{color:#a6e22e}html.dark .chroma .nb{color:inherit}html.dark .chroma .bp{color:inherit}html.dark .chroma .nc{color:#a6e22e}html.dark .chroma .no{color:#66d9ef}html.dark .chroma .nd{color:#a6e22e}html.dark .chroma .ni{color:inherit}html.dark .chroma .ne{color:#a6e22e}html.dark .chroma .nf{color:#a6e22e}html.dark .chroma .fm{color:inherit}html.dark .chroma .nl{color:inherit}html.dark .chroma .nn{color:inherit}html.dark .chroma .nx{color:#a6e22e}html.dark .chroma .py{color:inherit}html.dark .chroma .nt{color:#f92672}html.dark .chroma .nv{color:inherit}html.dark .chroma .vc{color:inherit}html.dark .chroma .vg{color:inherit}html.dark .chroma .vi{color:inherit}html.dark .chroma .vm{color:inherit}html.dark .chroma .l{color:#ae81ff}html.dark .chroma .ld{color:#e6db74}html.dark .chroma .s{color:#e6db74}html.dark .chroma .sa{color:#e6db74}html.dark .chroma .sb{color:#e6db74}html.dark .chroma .sc{color:#e6db74}html.dark .chroma .dl{color:#e6db74}html.dark .chroma .sd{color:#e6db74}html.dark .chroma .s2{color:#e6db74}html.dark .chroma .se{color:#ae81ff}html.dark .chroma .sh{color:#e6db74}html.dark .chroma .si{color:#e6db74}html.dark .chroma .sx{color:#e6db74}html.dark .chroma .sr{color:#e6db74}html.dark .chroma .s1{color:#e6db74}html.dark .chroma .ss{color:#e6db74}html.dark .chroma .m{color:#ae81ff}html.dark .chroma .mb{color:#ae81ff}html.dark .chroma .mf{color:#ae81ff}html.dark .chroma .mh{color:#ae81ff}html.dark .chroma .mi{color:#ae81ff}html.dark .chroma .il{color:#ae81ff}html.dark .chroma .mo{color:#ae81ff}html.dark .chroma .o{color:#f92672}html.dark .chroma .ow{color:#f92672}html.dark .chroma .p{color:inherit}html.dark .chroma .c{color:#75715e}html.dark .chroma .ch{color:#75715e}html.dark .chroma .cm{color:#75715e}html.dark .chroma .c1{color:#75715e}html.dark .chroma .cs{color:#75715e}html.dark .chroma .cp{color:#75715e}html.dark .chroma .cpf{color:#75715e}html.dark .chroma .g{color:inherit}html.dark .chroma .gd{color:#f92672}html.dark .chroma .ge{font-style:italic}html.dark .chroma .gr{color:inherit}html.dark .chroma .gh{color:inherit}html.dark .chroma .gi{color:#a6e22e}html.dark .chroma .go{color:inherit}html.dark .chroma .gp{color:inherit}html.dark .chroma .gs{font-weight:700}html.dark .chroma .gu{color:#75715e}html.dark .chroma .gt{color:inherit}html.dark .chroma .gl{color:inherit}html.dark .chroma .w{color:inherit}.chroma .lntd{padding:0 .7em 0 0!important}figure{margin:3rem 0}figcaption:last-child{padding-top:1rem;color:var(--secondary-neutral)}.footnotes{font-size:14px;padding-top:2rem;margin-top:2rem;color:var(--secondary-neutral);border-top:2px solid var(--tertiary-neutral)}.footnotes::before{content:'Footnotes';display:block;font-weight:500}.footnotes ol{padding-left:1.2em}.footnotes hr{display:none}.full-content{width:calc(100vw - 4rem);max-width:900px}.grid{display:grid;grid-template-columns:repeat(16,6.25%);grid-auto-flow:dense}.grid>*{grid-column:span 16}@media(min-width:685px){.start-1{grid-column-start:1}.end-1{grid-column-end:1}.span-1{grid-column-end:span 1}.start-2{grid-column-start:2}.end-2{grid-column-end:2}.span-2{grid-column-end:span 2}.start-3{grid-column-start:3}.end-3{grid-column-end:3}.span-3{grid-column-end:span 3}.start-4{grid-column-start:4}.end-4{grid-column-end:4}.span-4{grid-column-end:span 4}.start-5{grid-column-start:5}.end-5{grid-column-end:5}.span-5{grid-column-end:span 5}.start-6{grid-column-start:6}.end-6{grid-column-end:6}.span-6{grid-column-end:span 6}.start-7{grid-column-start:7}.end-7{grid-column-end:7}.span-7{grid-column-end:span 7}.start-8{grid-column-start:8}.end-8{grid-column-end:8}.span-8{grid-column-end:span 8}.start-9{grid-column-start:9}.end-9{grid-column-end:9}.span-9{grid-column-end:span 9}.start-10{grid-column-start:10}.end-10{grid-column-end:10}.span-10{grid-column-end:span 10}.start-11{grid-column-start:11}.end-11{grid-column-end:11}.span-11{grid-column-end:span 11}.start-12{grid-column-start:12}.end-12{grid-column-end:12}.span-12{grid-column-end:span 12}.start-13{grid-column-start:13}.end-13{grid-column-end:13}.span-13{grid-column-end:span 13}.start-14{grid-column-start:14}.end-14{grid-column-end:14}.span-14{grid-column-end:span 14}.start-15{grid-column-start:15}.end-15{grid-column-end:15}.span-15{grid-column-end:span 15}.start-16{grid-column-start:16}.end-16{grid-column-end:16}.span-16{grid-column-end:span 16}.row-span-1{grid-row-end:span 1}.row-span-2{grid-row-end:span 2}.row-span-3{grid-row-end:span 3}.row-span-4{grid-row-end:span 4}}.content-start{align-content:start}.content-end{align-content:end}img{display:block;width:100%;height:auto}header{padding:1rem 0;position:sticky;top:-1rem;z-index:10;user-select:none;-webkit-user-select:none}.inner-header{display:flex;flex-direction:column;max-width:900px;margin:0 auto;padding:0 2rem}.nav-list{display:flex;flex-direction:row;list-style-type:none;padding:1rem 0;margin:0}.nav-item{margin:0 1rem 0 0;align-self:center}.nav-item.active .nav-link{color:rgba(var(--fg-rgb),1);opacity:1}.nav-link{color:inherit;text-decoration:none;color:var(--secondary-neutral);font-weight:500;font-weight:600}.nav-grow{flex-grow:1}.nav-dark-mode-item{align-self:center}.nav-dark-mode-button{vertical-align:middle;padding:.33rem;margin:0;border-radius:5px;cursor:pointer}.nav-dark-mode-button.sun{display:none;background-color:rgba(255,255,255,5%)}.nav-dark-mode-button.sun svg{filter:invert(1)}.nav-dark-mode-button.moon{background-color:rgba(0,0,0,5%)}html.dark .nav-dark-mode-button.moon{display:none}html.dark .nav-dark-mode-button.sun{display:block}.nav-dark-mode-button svg{display:block;width:1.15rem;height:1.15rem}html{height:100%;overflow-x:hidden}body{min-height:100%;box-sizing:border-box}body{position:relative}main{display:flex;flex-direction:column;max-width:900px;margin:0 auto;padding:0 2rem}nav#TableOfContents>ul{list-style-type:none;padding:0}.page-title{font-size:2rem;font-family:var(--font-serif);font-style:italic;font-weight:900;margin:1rem 0}.long-form{max-width:600px}.long-form .katex-display{display:block;margin:2.5rem 0;overflow-x:auto;overflow-y:hidden}.long-form a{color:var(--blue)}.long-form a:hover{color:rgba(var(--fg-rgb),1);opacity:1}footer{height:9rem;color:var(--secondary-neutral);display:flex;flex-direction:column;max-width:900px;margin:0 auto;padding:0 2rem}.footer-inner{position:absolute;bottom:0;padding:2rem 0}html.dark .dark-invert{filter:invert(1)}.index-caption{font-family:var(--font-serif)}.index-art{position:relative}.index-post{margin-bottom:1rem}.index-post-link{font-weight:500}.index-post-date{font-size:.9rem;margin-left:.5rem;color:var(--secondary-neutral)}.index-see-all{color:inherit;text-decoration:none;font-weight:500}.index-see-all .arrow{display:inline-block;transform:translateX(0);transition:transform 100ms}.index-see-all:hover .arrow{transform:translateX(.2rem)}.index-block{margin-bottom:3rem}@media(min-width:685px){.index-block{margin-bottom:0}}.blog-index{display:grid;width:100%;grid-template-columns:[full-start title-start list-start] 1fr [list-end title-end full-end]}@media(min-width:685px){.blog-index{grid-template-columns:[full-start title-start] 1fr [title-end] 20px [list-start] 5fr [list-end full-end]}}@media(max-width:685px){.blog-index hr{display:none}}.blog-category-title{flex-grow:1;font-size:1.1rem;font-family:var(--font-serif);font-weight:500;grid-column:title;margin:0 0 2rem}.blog-category-list{flex-grow:3;grid-column:list;list-style:none;padding:0;margin:0}@media(max-width:685px){.blog-category-list{margin-bottom:3rem}}.blog-category-list article{margin:0 0 1.5rem}.blog-category-list article:last-child{margin:0}.blog-link-title{text-decoration:underline;font-weight:500;color:inherit;font-size:1rem}.blog-link-subtitle{font-size:1rem;font-weight:500;color:var(--secondary-neutral);margin:.5rem 0 0}.blog-single{font-family:var(--font-serif);line-height:1.625}.post-meta{color:var(--secondary-neutral)}.art-generator{display:grid;grid-template-columns:1fr;outline:2px solid rgba(var(--fg-rgb),1);font-size:.9rem}@media(min-width:685px){.art-generator{grid-template-columns:10fr 4fr}}.art-generator .art-option{margin-bottom:.5rem}.art-generator input[type=range]{flex-grow:1}.art-generator input[type=text]{width:3rem;border:0;background-color:transparent;color:inherit;font-weight:500}.art-generator .art-backend{margin:1rem 0 0}.art-generator p{margin:0}