:root{--bg-color--dark: #27282c;--bg-color--light: #fff;--text-color--dark: #fff;--text-color--light: #27282c;--link-color--dark: rgb(130 201 255);--link-color--light: hsl(206, 100%, 52%);--link-color-hover--dark: hsl(206, 100%, 52%);--link-color-hover--light: rgb(130 201 255);--link-color-visited--dark: rgb(180 130 255);--link-color-visited--light: hsl(270, 100%, 50%);--code-bg-color--dark: #353637;--code-bg-color--light: #f2f2f2}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Regular.woff2) format("woff2"),url(/fonts/JetBrainsMono-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}*{box-sizing:border-box}body{margin:0;padding:0;font-size:16px;font-weight:400;font-family:IBM Plex Sans,sans-serif;display:flex;flex-direction:column;min-height:100vh}.page{flex:1}html.dark body{background:var(--bg-color--dark);color:var(--text-color--dark)}html.dark a{color:var(--link-color--dark)}html.dark a:hover,html.dark a:active{color:var(--link-color-hover--dark)}html.dark a:visited{color:var(--link-color-visited--dark)}html.dark .ti-cursor{color:var(--text-color--dark)}html.dark code{background-color:var(--code-bg-color--dark)}html.dark dt{color:var(--text-color--dark)}html.dark pre{background-color:var(--code-bg-color--dark)!important}html.dark blockquote{border-left:2px solid var(--text-color--dark)}html.light body{background:var(--bg-color--light);color:var(--text-color--light)}html.light a{color:var(--link-color--light)}html.light a:hover,html.light a:active{color:var(--link-color-hover--light)}html.light a:visited{color:var(--link-color-visited--light)}html.light .ti-cursor{color:var(--text-color--light)}html.light code{background-color:var(--code-bg-color--light)}html.light dt{color:var(--text-color--light)}html.light pre{background-color:var(--code-bg-color--light)!important}html.light blockquote{border-left:2px solid var(--text-color--light)}html.dark code[class*=language-],html.dark pre[class*=language-]{color:#fff;text-shadow:0 1px rgba(0,0,0,.3);font-family:JetBrains Mono,monospace;font-weight:400;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:2;-o-tab-size:2;tab-size:2;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}html.dark code[class*=language-]::-moz-selection,html.dark code[class*=language-] *::-moz-selection,html.dark pre[class*=language-] *::-moz-selection{background:#3e4451;color:inherit;text-shadow:none}html.dark code[class*=language-]::selection,html.dark code[class*=language-] *::selection,html.dark pre[class*=language-] *::selection{background:#3e4451;color:inherit;text-shadow:none}html.dark pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}html.dark :not(pre)>code[class*=language-]{padding:.2em .3em;border-radius:.3em;white-space:normal}@media print{html.dark code[class*=language-],html.dark pre[class*=language-]{text-shadow:none}}html.dark .token.comment,html.dark .token.prolog,html.dark .token.cdata{color:#5c6370}html.dark .token.doctype,html.dark .token.punctuation,html.dark .token.entity{color:#fff}html.dark .token.attr-name,html.dark .token.class-name,html.dark .token.boolean,html.dark .token.constant,html.dark .token.number,html.dark .token.atrule{color:#ffab70}html.dark .token.keyword{color:#c678dd}html.dark .token.property,html.dark .token.tag,html.dark .token.symbol,html.dark .token.deleted,html.dark .token.important{color:#e06c75}html.dark .token.selector,html.dark .token.string,html.dark .token.char,html.dark .token.builtin,html.dark .token.inserted,html.dark .token.regex,html.dark .token.attr-value,html.dark .token.attr-value>.token.punctuation{color:#98c379}html.dark .token.variable,html.dark .token.operator,html.dark .token.function{color:#61afef}html.dark .token.url{color:#56b6c2}html.dark .token.attr-value>.token.punctuation.attr-equals,html.dark .token.special-attr>.token.attr-value>.token.value.css{color:#fff}html.dark .language-css .token.selector{color:#e06c75}html.dark .language-css .token.property{color:#fff}html.dark .language-css .token.function,html.dark .language-css .token.url>.token.function{color:#56b6c2}html.dark .language-css .token.url>.token.string.url{color:#98c379}html.dark .language-css .token.important,html.dark .language-css .token.atrule .token.rule,html.dark .language-javascript .token.operator{color:#c678dd}html.dark .language-javascript .token.template-string>.token.interpolation>.token.interpolation-punctuation.punctuation{color:#be5046}html.dark .language-json .token.operator{color:#fff}html.dark .language-json .token.null.keyword{color:#ffab70}html.dark .language-markdown .token.url,html.dark .language-markdown .token.url>.token.operator,html.dark .language-markdown .token.url-reference.url>.token.string{color:#fff}html.dark .language-markdown .token.url>.token.content{color:#61afef}html.dark .language-markdown .token.url>.token.url,html.dark .language-markdown .token.url-reference.url{color:#56b6c2}html.dark .language-markdown .token.blockquote.punctuation,html.dark .language-markdown .token.hr.punctuation{color:#5c6370;font-style:italic}html.dark .language-markdown .token.code-snippet{color:#98c379}html.dark .language-markdown .token.bold .token.content{color:#ffab70}html.dark .language-markdown .token.italic .token.content{color:#c678dd}html.dark .language-markdown .token.strike .token.content,html.dark .language-markdown .token.strike .token.punctuation,html.dark .language-markdown .token.list.punctuation,html.dark .language-markdown .token.title.important>.token.punctuation{color:#e06c75}html.dark .token.bold{font-weight:700}html.dark .token.comment,html.dark .token.italic{font-style:italic}html.dark .token.entity{cursor:help}html.dark .token.namespace{opacity:.8}html.dark .token.tab:not(:empty):before,html.dark .token.token.cr:before,html.dark .token.token.lf:before,html.dark .token.token.space:before{color:#abb2bf26;text-shadow:none}html.dark div.code-toolbar>.toolbar.toolbar>.toolbar-item{margin-right:.4em}html.dark div.code-toolbar>.toolbar.toolbar>.toolbar-item>button,html.dark div.code-toolbar>.toolbar.toolbar>.toolbar-item>a,html.dark div.code-toolbar>.toolbar.toolbar>.toolbar-item>span{background:#3a3f4b;color:#828997;padding:.1em .4em;border-radius:.3em}html.dark div.code-toolbar>.toolbar.toolbar>.toolbar-item>button:hover,html.dark div.code-toolbar>.toolbar.toolbar>.toolbar-item>button:focus,html.dark div.code-toolbar>.toolbar.toolbar>.toolbar-item>a:hover,html.dark div.code-toolbar>.toolbar.toolbar>.toolbar-item>a:focus,html.dark div.code-toolbar>.toolbar.toolbar>.toolbar-item>span:hover,html.dark div.code-toolbar>.toolbar.toolbar>.toolbar-item>span:focus{background:#3e4451;color:#fff}html.dark .line-highlight.line-highlight{background:#99bbff0a}html.dark .line-highlight.line-highlight:before,html.dark .line-highlight.line-highlight[data-end]:after{background:#3a3f4b;color:#fff;padding:.1em .6em;border-radius:.3em;box-shadow:0 2px #0003}html.dark pre[id].linkable-line-numbers.linkable-line-numbers span.line-numbers-rows>span:hover:before{background-color:#99bbff0a}html.dark .line-numbers.line-numbers .line-numbers-rows,html.dark .command-line .command-line-prompt{border-right-color:#abb2bf26}html.dark .line-numbers .line-numbers-rows>span:before,html.dark .command-line .command-line-prompt>span:before{color:#636d83}html.dark .rainbow-braces .token.token.punctuation.brace-level-1,html.dark .rainbow-braces .token.token.punctuation.brace-level-5,html.dark .rainbow-braces .token.token.punctuation.brace-level-9{color:#e06c75}html.dark .rainbow-braces .token.token.punctuation.brace-level-2,html.dark .rainbow-braces .token.token.punctuation.brace-level-6,html.dark .rainbow-braces .token.token.punctuation.brace-level-10{color:#98c379}html.dark .rainbow-braces .token.token.punctuation.brace-level-3,html.dark .rainbow-braces .token.token.punctuation.brace-level-7,html.dark .rainbow-braces .token.token.punctuation.brace-level-11{color:#61afef}html.dark .rainbow-braces .token.token.punctuation.brace-level-4,html.dark .rainbow-braces .token.token.punctuation.brace-level-8,html.dark .rainbow-braces .token.token.punctuation.brace-level-12{color:#c678dd}html.dark pre.diff-highlight>code .token.token.deleted:not(.prefix),html.dark pre>code.diff-highlight .token.token.deleted:not(.prefix){background-color:#ff526626}html.dark pre.diff-highlight>code .token.token.deleted:not(.prefix)::-moz-selection,html.dark pre.diff-highlight>code .token.token.deleted:not(.prefix) *::-moz-selection,html.dark pre>code.diff-highlight .token.token.deleted:not(.prefix)::-moz-selection,html.dark pre>code.diff-highlight .token.token.deleted:not(.prefix) *::-moz-selection{background-color:#fb566940}html.dark pre.diff-highlight>code .token.token.deleted:not(.prefix)::selection,html.dark pre.diff-highlight>code .token.token.deleted:not(.prefix) *::selection,html.dark pre>code.diff-highlight .token.token.deleted:not(.prefix)::selection,html.dark pre>code.diff-highlight .token.token.deleted:not(.prefix) *::selection{background-color:#fb566940}html.dark pre.diff-highlight>code .token.token.inserted:not(.prefix),html.dark pre>code.diff-highlight .token.token.inserted:not(.prefix){background-color:#1aff5b26}html.dark pre.diff-highlight>code .token.token.inserted:not(.prefix)::-moz-selection,html.dark pre.diff-highlight>code .token.token.inserted:not(.prefix) *::-moz-selection,html.dark pre>code.diff-highlight .token.token.inserted:not(.prefix)::-moz-selection,html.dark pre>code.diff-highlight .token.token.inserted:not(.prefix) *::-moz-selection{background-color:#38e06240}html.dark pre.diff-highlight>code .token.token.inserted:not(.prefix)::selection,html.dark pre.diff-highlight>code .token.token.inserted:not(.prefix) *::selection,html.dark pre>code.diff-highlight .token.token.inserted:not(.prefix)::selection,html.dark pre>code.diff-highlight .token.token.inserted:not(.prefix) *::selection{background-color:#38e06240}html.dark .prism-previewer.prism-previewer:before,html.dark .prism-previewer-gradient.prism-previewer-gradient div{border-color:#262931}html.dark .prism-previewer-color.prism-previewer-color:before,html.dark .prism-previewer-gradient.prism-previewer-gradient div,html.dark .prism-previewer-easing.prism-previewer-easing:before{border-radius:.3em}html.dark .prism-previewer.prism-previewer:after{border-top-color:#262931}html.dark .prism-previewer-flipped.prism-previewer-flipped.after{border-bottom-color:#262931}html.dark .prism-previewer-angle.prism-previewer-angle:before,html.dark .prism-previewer-time.prism-previewer-time:before,html.dark .prism-previewer-easing.prism-previewer-easing{background:#31363f}html.dark .prism-previewer-angle.prism-previewer-angle circle,html.dark .prism-previewer-time.prism-previewer-time circle{stroke:#fff;stroke-opacity:1}html.dark .prism-previewer-easing.prism-previewer-easing circle,html.dark .prism-previewer-easing.prism-previewer-easing path,html.dark .prism-previewer-easing.prism-previewer-easing line{stroke:#fff}html.dark .prism-previewer-easing.prism-previewer-easing circle{fill:transparent}html.light code[class*=language-],html.light pre[class*=language-]{color:#27282c;font-family:JetBrains Mono,monospace;font-weight:400;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:2;-o-tab-size:2;tab-size:2;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}html.light code[class*=language-]::-moz-selection,html.light code[class*=language-] *::-moz-selection,html.light pre[class*=language-] *::-moz-selection{background:#e5e5e6;color:inherit}html.light code[class*=language-]::selection,html.light code[class*=language-] *::selection,html.light pre[class*=language-] *::selection{background:#e5e5e6;color:inherit}html.light pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}html.light :not(pre)>code[class*=language-]{padding:.2em .3em;border-radius:.3em;white-space:normal}html.light .token.comment,html.light .token.prolog,html.light .token.cdata{color:#a0a1a7}html.light .token.doctype,html.light .token.punctuation,html.light .token.entity{color:#27282c}html.light .token.attr-name,html.light .token.class-name,html.light .token.boolean,html.light .token.constant,html.light .token.number,html.light .token.atrule{color:#ffab70}html.light .token.keyword{color:#a626a4}html.light .token.property,html.light .token.tag,html.light .token.symbol,html.light .token.deleted,html.light .token.important{color:#e45649}html.light .token.selector,html.light .token.string,html.light .token.char,html.light .token.builtin,html.light .token.inserted,html.light .token.regex,html.light .token.attr-value,html.light .token.attr-value>.token.punctuation{color:#50a14f}html.light .token.variable,html.light .token.operator,html.light .token.function{color:#4078f2}html.light .token.url{color:#0184bc}html.light .token.attr-value>.token.punctuation.attr-equals,html.light .token.special-attr>.token.attr-value>.token.value.css{color:#27282c}html.light .language-css .token.selector{color:#e45649}html.light .language-css .token.property{color:#27282c}html.light .language-css .token.function,html.light .language-css .token.url>.token.function{color:#0184bc}html.light .language-css .token.url>.token.string.url{color:#50a14f}html.light .language-css .token.important,html.light .language-css .token.atrule .token.rule,html.light .language-javascript .token.operator{color:#a626a4}html.light .language-javascript .token.template-string>.token.interpolation>.token.interpolation-punctuation.punctuation{color:#ca1243}html.light .language-json .token.operator{color:#27282c}html.light .language-json .token.null.keyword{color:#ffab70}html.light .language-markdown .token.url,html.light .language-markdown .token.url>.token.operator,html.light .language-markdown .token.url-reference.url>.token.string{color:#27282c}html.light .language-markdown .token.url>.token.content{color:#4078f2}html.light .language-markdown .token.url>.token.url,html.light .language-markdown .token.url-reference.url{color:#0184bc}html.light .language-markdown .token.blockquote.punctuation,html.light .language-markdown .token.hr.punctuation{color:#a0a1a7;font-style:italic}html.light .language-markdown .token.code-snippet{color:#50a14f}html.light .language-markdown .token.bold .token.content{color:#ffab70}html.light .language-markdown .token.italic .token.content{color:#a626a4}html.light .language-markdown .token.strike .token.content,html.light .language-markdown .token.strike .token.punctuation,html.light .language-markdown .token.list.punctuation,html.light .language-markdown .token.title.important>.token.punctuation{color:#e45649}html.light .token.bold{font-weight:700}html.light .token.comment,html.light .token.italic{font-style:italic}html.light .token.entity{cursor:help}html.light .token.namespace{opacity:.8}html.light .token.token.tab:not(:empty):before,html.light .token.token.cr:before,html.light .token.token.lf:before,html.light .token.token.space:before{color:#383a4233}html.light div.code-toolbar>.toolbar.toolbar>.toolbar-item{margin-right:.4em}html.light div.code-toolbar>.toolbar.toolbar>.toolbar-item>button,html.light div.code-toolbar>.toolbar.toolbar>.toolbar-item>a,html.light div.code-toolbar>.toolbar.toolbar>.toolbar-item>span{background:#e5e5e6;color:#696c77;padding:.1em .4em;border-radius:.3em}html.light div.code-toolbar>.toolbar.toolbar>.toolbar-item>button:hover,html.light div.code-toolbar>.toolbar.toolbar>.toolbar-item>button:focus,html.light div.code-toolbar>.toolbar.toolbar>.toolbar-item>a:hover,html.light div.code-toolbar>.toolbar.toolbar>.toolbar-item>a:focus,html.light div.code-toolbar>.toolbar.toolbar>.toolbar-item>span:hover,html.light div.code-toolbar>.toolbar.toolbar>.toolbar-item>span:focus{background:#c6c7c7;color:#27282c}html.light .line-highlight.line-highlight{background:#383a420d}html.light .line-highlight.line-highlight:before,html.light .line-highlight.line-highlight[data-end]:after{background:#e5e5e6;color:#27282c;padding:.1em .6em;border-radius:.3em;box-shadow:0 2px #0003}html.light pre[id].linkable-line-numbers.linkable-line-numbers span.line-numbers-rows>span:hover:before{background-color:#383a420d}html.light .line-numbers.line-numbers .line-numbers-rows,html.light .command-line .command-line-prompt{border-right-color:#383a4233}html.light .line-numbers .line-numbers-rows>span:before,html.light .command-line .command-line-prompt>span:before{color:#9d9d9f}html.light .rainbow-braces .token.token.punctuation.brace-level-1,html.light .rainbow-braces .token.token.punctuation.brace-level-5,html.light .rainbow-braces .token.token.punctuation.brace-level-9{color:#e45649}html.light .rainbow-braces .token.token.punctuation.brace-level-2,html.light .rainbow-braces .token.token.punctuation.brace-level-6,html.light .rainbow-braces .token.token.punctuation.brace-level-10{color:#50a14f}html.light .rainbow-braces .token.token.punctuation.brace-level-3,html.light .rainbow-braces .token.token.punctuation.brace-level-7,html.light .rainbow-braces .token.token.punctuation.brace-level-11{color:#4078f2}html.light .rainbow-braces .token.token.punctuation.brace-level-4,html.light .rainbow-braces .token.token.punctuation.brace-level-8,html.light .rainbow-braces .token.token.punctuation.brace-level-12{color:#a626a4}html.light pre.diff-highlight>code .token.token.deleted:not(.prefix),html.light pre>code.diff-highlight .token.token.deleted:not(.prefix){background-color:#ff526626}html.light pre.diff-highlight>code .token.token.deleted:not(.prefix)::-moz-selection,html.light pre.diff-highlight>code .token.token.deleted:not(.prefix) *::-moz-selection,html.light pre>code.diff-highlight .token.token.deleted:not(.prefix)::-moz-selection,html.light pre>code.diff-highlight .token.token.deleted:not(.prefix) *::-moz-selection{background-color:#fb566940}html.light pre.diff-highlight>code .token.token.deleted:not(.prefix)::selection,html.light pre.diff-highlight>code .token.token.deleted:not(.prefix) *::selection,html.light pre>code.diff-highlight .token.token.deleted:not(.prefix)::selection,html.light pre>code.diff-highlight .token.token.deleted:not(.prefix) *::selection{background-color:#fb566940}html.light pre.diff-highlight>code .token.token.inserted:not(.prefix),html.light pre>code.diff-highlight .token.token.inserted:not(.prefix){background-color:#1aff5b26}html.light pre.diff-highlight>code .token.token.inserted:not(.prefix)::-moz-selection,html.light pre.diff-highlight>code .token.token.inserted:not(.prefix) *::-moz-selection,html.light pre>code.diff-highlight .token.token.inserted:not(.prefix)::-moz-selection,html.light pre>code.diff-highlight .token.token.inserted:not(.prefix) *::-moz-selection{background-color:#38e06240}html.light pre.diff-highlight>code .token.token.inserted:not(.prefix)::selection,html.light pre.diff-highlight>code .token.token.inserted:not(.prefix) *::selection,html.light pre>code.diff-highlight .token.token.inserted:not(.prefix)::selection,html.light pre>code.diff-highlight .token.token.inserted:not(.prefix) *::selection{background-color:#38e06240}html.light .prism-previewer.prism-previewer:before,html.light .prism-previewer-gradient.prism-previewer-gradient div{border-color:hsl(0,0,95%)}html.light .prism-previewer-color.prism-previewer-color:before,html.light .prism-previewer-gradient.prism-previewer-gradient div,html.light .prism-previewer-easing.prism-previewer-easing:before{border-radius:.3em}html.light .prism-previewer.prism-previewer:after{border-top-color:hsl(0,0,95%)}html.light .prism-previewer-flipped.prism-previewer-flipped.after{border-bottom-color:hsl(0,0,95%)}html.light .prism-previewer-angle.prism-previewer-angle:before,html.light .prism-previewer-time.prism-previewer-time:before,html.light .prism-previewer-easing.prism-previewer-easing{background:#fff}html.light .prism-previewer-angle.prism-previewer-angle circle,html.light .prism-previewer-time.prism-previewer-time circle{stroke:#27282c;stroke-opacity:1}html.light .prism-previewer-easing.prism-previewer-easing circle,html.light .prism-previewer-easing.prism-previewer-easing path,html.light .prism-previewer-easing.prism-previewer-easing line{stroke:#27282c}html.light .prism-previewer-easing.prism-previewer-easing circle{fill:transparent}img{max-width:100%;max-height:60vh;width:auto;height:auto;border-radius:16px;box-shadow:0 0 5px #0000001a}pre{padding:1.5em;border-radius:16px}pre>code{all:unset}.ti-cursor{padding-left:4px}hr{border:none;background-color:transparent}hr:before{content:"***";display:flex;justify-content:center;align-items:center;font-size:2rem;line-height:1;margin:1rem 0}.prose p{margin:0 0 .7rem;font-family:IBM Plex Sans,sans-serif;font-weight:400;font-size:1rem;line-height:1.7}.prose li{font-family:IBM Plex Sans,sans-serif;font-weight:400;font-size:1rem;line-height:1.7}.prose h2{font-size:1.7rem}.prose h3{font-size:1.3rem}.prose h4{font-size:1.1rem}.prose ul,.prose ol{padding-left:1rem}.prose ul li,.prose ol li{margin:0 0 .7rem;font-size:1rem}code{font-family:JetBrains Mono,monospace;color:#e45649;border-radius:16px;padding:.1em .5em}dt{font-weight:600;color:var(--text-color--light)}dd{font-style:italic}blockquote{padding-left:1rem;margin-left:0;margin-right:0}main{width:100%;overflow:hidden;padding:0 1.5rem}@media screen and (min-width: 900px){.prose ul,.prose ol{padding-left:3rem}hr:before{font-size:3rem}}@media screen and (min-width: 1024px){main{width:1024px;margin:0 auto}.prose p{margin:0 0 .7rem;font-size:1rem;line-height:1.7}.prose li{font-size:1rem;line-height:1.7}.prose h2{font-size:2.2rem}.prose h3{font-size:1.6rem}.prose h4{font-size:1.2rem}.prose ul li,.prose ol li{margin:0 0 .7rem}}@media screen and (min-width: 1025px){main{padding:0}}
