code[class*=language-],pre[class*=language-]{color:#f8f8f2;background:none;font-family:Fira Code,Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2e3440}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#636f88}.token.punctuation{color:#81a1c1}.namespace{opacity:.7}.token.property,.token.tag,.token.constant,.token.symbol,.token.deleted{color:#81a1c1}.token.number{color:#b48ead}.token.boolean{color:#81a1c1}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#a3be8c}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string,.token.variable{color:#81a1c1}.token.atrule,.token.attr-value,.token.function,.token.class-name{color:#88c0d0}.token.keyword{color:#81a1c1}.token.regex,.token.important{color:#ebcb8b}.token.important,.token.bold{font-weight:700}code[class*=language-],pre[class*=language-]{color:rgb(var(--color-text-body));background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:rgb(var(--color-text-muted) / .2)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:rgb(var(--color-text-muted) / .2)}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.375rem}.rounded-t-none pre[class*=language-]{border-top-left-radius:0;border-top-right-radius:0;margin-top:0}:not(pre)>code[class*=language-],pre[class*=language-]{background:rgb(var(--color-text-body) / .03);border:1px solid rgb(var(--color-text-muted) / .15)}html.dark pre[class*=language-],html.dark :not(pre)>code[class*=language-]{background:rgb(var(--color-text-body) / .05);border-color:rgb(var(--color-text-muted) / .2)}:not(pre)>code[class*=language-]{padding:.1em .3em;border-radius:.3em;white-space:normal}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:rgb(var(--color-text-muted));font-style:italic}.token.punctuation{color:rgb(var(--color-text-body) / .7)}.token.delimiter.important,.token.selector .parent,.token.tag,.token.tag .token.punctuation{color:rgb(var(--color-primary-main))}.token.attr-name,.token.boolean,.token.boolean.important,.token.number,.token.constant,.token.selector .token.attribute{color:rgb(var(--color-primary-main) / .8)}.token.class-name,.token.key,.token.parameter,.token.property,.token.property-access,.token.variable{color:rgb(var(--color-text-bold))}.token.attr-value,.token.inserted,.token.color,.token.selector .token.value,.token.string,.token.string .token.url-link{color:rgb(var(--color-primary-main) / .9)}.token.builtin,.token.keyword-array,.token.package,.token.regex{color:rgb(var(--color-text-link))}.token.function,.token.selector .token.class,.token.selector .token.id{color:rgb(var(--color-text-bold));font-weight:500}.token.atrule .token.rule,.token.combinator,.token.keyword,.token.operator,.token.pseudo-class,.token.pseudo-element,.token.selector,.token.unit{color:rgb(var(--color-primary-main));font-weight:500}.token.deleted,.token.important{color:rgb(var(--color-primary-main) / .7)}.token.keyword-this,.token.this{color:rgb(var(--color-text-bold))}.token.important,.token.keyword-this,.token.this,.token.bold{font-weight:700}.token.delimiter.important{font-weight:inherit}.token.italic{font-style:italic}.token.entity{cursor:help}.language-markdown .token.title,.language-markdown .token.title .token.punctuation{color:rgb(var(--color-text-bold));font-weight:700}.language-markdown .token.blockquote.punctuation,.language-markdown .token.list.punctuation,.language-markdown .token.code{color:rgb(var(--color-primary-main))}.language-markdown .token.hr.punctuation{color:rgb(var(--color-text-muted))}.language-markdown .token.url .token.content{color:rgb(var(--color-text-link))}.language-markdown .token.url-link{color:rgb(var(--color-primary-main) / .8)}.language-markdown .token.table-header{color:rgb(var(--color-text-bold))}.language-json .token.operator{color:rgb(var(--color-text-body))}.language-scss .token.variable{color:rgb(var(--color-primary-main))}.line-highlight.line-highlight{background:rgb(var(--color-primary-main) / .1)}.line-highlight.line-highlight:before,.line-highlight.line-highlight[data-end]:after{background-color:rgb(var(--color-primary-main));color:rgb(var(--color-bg-body))}.line-numbers.line-numbers .line-numbers-rows{border-right:1px solid rgb(var(--color-text-muted) / .2);background:rgb(var(--color-text-body) / .03)}.line-numbers .line-numbers-rows>span:before{color:rgb(var(--color-text-muted))}pre[id].linkable-line-numbers.linkable-line-numbers span.line-numbers-rows>span:hover:before{background-color:rgb(var(--color-primary-main) / .1)}pre.diff-highlight>code .token.token.deleted:not(.prefix),pre>code.diff-highlight .token.token.deleted:not(.prefix){background-color:rgb(var(--color-primary-main) / .1);text-decoration:line-through}pre.diff-highlight>code .token.token.inserted:not(.prefix),pre>code.diff-highlight .token.token.inserted:not(.prefix){background-color:rgb(var(--color-primary-main) / .15)}.code-title[data-astro-cid-jgrc2lfe]{background-color:rgb(var(--color-text-body) / .05);color:rgb(var(--color-text-body));padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-top-left-radius:.375rem;border-top-right-radius:.375rem;border-bottom:1px solid rgb(var(--color-text-muted) / .2);display:flex;justify-content:space-between;align-items:center}.copy-path-btn[data-astro-cid-jgrc2lfe],.copy-code-btn[data-astro-cid-jgrc2lfe]{padding:.25rem .5rem;font-size:.75rem;background-color:rgb(var(--color-bg-body));color:rgb(var(--color-text-muted));border:1px solid rgb(var(--color-text-muted) / .3);border-radius:.25rem;transition:all .2s ease;cursor:pointer;box-shadow:0 1px 3px #0000001a}.copy-path-btn[data-astro-cid-jgrc2lfe]:hover,.copy-code-btn[data-astro-cid-jgrc2lfe]:hover{background-color:rgb(var(--color-primary-main) / .15);color:rgb(var(--color-primary-main));border-color:rgb(var(--color-primary-main) / .4)}.copy-code-btn-absolute[data-astro-cid-jgrc2lfe]{position:absolute;top:.5rem;right:.5rem}.blog-image-wrapper[data-astro-cid-26h3mjrb]{display:flex;flex-direction:column;align-items:center}.blog-image-button[data-astro-cid-26h3mjrb]{border:none;background:none;padding:0}.toc-sidebar[data-astro-cid-sdnxb7lk]{display:block;width:240px;flex-shrink:0;position:sticky;top:6rem;align-self:flex-start;max-height:calc(100vh - 8rem)}.toc-sidebar-sticky[data-astro-cid-sdnxb7lk]{padding:0rem;display:flex;flex-direction:column;height:100%;max-height:calc(100vh - 8rem)}.toc-header[data-astro-cid-sdnxb7lk]{flex-shrink:0}.toc-scroll-container[data-astro-cid-sdnxb7lk]{overflow-y:auto;flex:1;min-height:0}.toc-scroll-container[data-astro-cid-sdnxb7lk]::-webkit-scrollbar{display:none}.toc-scroll-container[data-astro-cid-sdnxb7lk]{scrollbar-width:none;-ms-overflow-style:none}@media (max-width: 1023px){.toc-sidebar[data-astro-cid-sdnxb7lk]{display:none}}.toc-list[data-astro-cid-sdnxb7lk]{list-style:none!important;padding:0!important;margin:0!important}.toc-item[data-astro-cid-sdnxb7lk]{margin:0!important;padding:0!important;list-style:none!important;list-style-type:none!important}.toc-item[data-astro-cid-sdnxb7lk]:before,.toc-item[data-astro-cid-sdnxb7lk]:after,.toc-item[data-astro-cid-sdnxb7lk]::marker{display:none!important;content:none!important}.toc-level-1[data-astro-cid-sdnxb7lk],.toc-level-2[data-astro-cid-sdnxb7lk],.toc-level-3[data-astro-cid-sdnxb7lk]{margin-left:0!important;padding-left:0!important}.toc-link[data-astro-cid-sdnxb7lk]{display:block;padding:.375rem 0;font-size:.875rem;line-height:1.5;color:rgb(var(--color-text-muted));text-decoration:none!important;border:none!important;border-bottom:none!important;box-shadow:none!important;background:none!important;outline:none!important;transition:color .2s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.toc-link[data-astro-cid-sdnxb7lk]:before,.toc-link[data-astro-cid-sdnxb7lk]:after{display:none!important;content:none!important}.toc-level-1[data-astro-cid-sdnxb7lk] .toc-link[data-astro-cid-sdnxb7lk]{padding-left:0!important}.toc-level-2[data-astro-cid-sdnxb7lk] .toc-link[data-astro-cid-sdnxb7lk]{padding-left:1rem!important}.toc-level-3[data-astro-cid-sdnxb7lk] .toc-link[data-astro-cid-sdnxb7lk]{padding-left:2rem!important}.toc-link[data-astro-cid-sdnxb7lk]:hover{color:rgb(var(--color-text-link));text-decoration:none!important;border:none!important;border-bottom:none!important;box-shadow:none!important;background:none!important}.toc-link[data-astro-cid-sdnxb7lk].active{color:rgb(var(--color-primary-main));font-weight:600;text-decoration:none!important;border:none!important;border-bottom:none!important;box-shadow:none!important;background:none!important}.toc-list[data-astro-cid-sdnxb7lk] a[data-astro-cid-sdnxb7lk],.toc-list[data-astro-cid-sdnxb7lk] a[data-astro-cid-sdnxb7lk]:hover,.toc-list[data-astro-cid-sdnxb7lk] a[data-astro-cid-sdnxb7lk]:active,.toc-list[data-astro-cid-sdnxb7lk] a[data-astro-cid-sdnxb7lk]:focus,.toc-list[data-astro-cid-sdnxb7lk] a[data-astro-cid-sdnxb7lk]:visited{text-decoration:none!important;border:none!important;border-bottom:none!important;box-shadow:none!important;background:none!important}#image-modal[data-astro-cid-qj24g3rp]{animation:fadeIn .2s ease-in-out}#image-modal-img[data-astro-cid-qj24g3rp]{animation:scaleIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}html{scroll-padding-top:6rem}body{display:grid;grid-template-areas:"header" "main" "footer";grid-template-rows:4rem minmax(0,1fr) 5rem;grid-template-columns:minmax(0,1fr)}main[data-astro-cid-scuu7fyy]{grid-area:main}.content-with-sidebar[data-astro-cid-scuu7fyy]{max-width:100%;display:flex;gap:3rem;align-items:flex-start}.content-wrapper[data-astro-cid-scuu7fyy]{flex:1;min-width:0;max-width:48rem}@media (max-width: 768px){.content-with-sidebar[data-astro-cid-scuu7fyy]{width:100%}.content-wrapper[data-astro-cid-scuu7fyy]{max-width:100%}}@media (max-width: 1023px){.content-with-sidebar[data-astro-cid-scuu7fyy]{max-width:48rem}.content-wrapper[data-astro-cid-scuu7fyy]{max-width:100%}}.blog-post[data-astro-cid-scuu7fyy].prose{line-height:1.75}.blog-post[data-astro-cid-scuu7fyy].prose p[data-astro-cid-scuu7fyy]{margin-bottom:1.5rem}.blog-post[data-astro-cid-scuu7fyy].prose ul[data-astro-cid-scuu7fyy],.blog-post[data-astro-cid-scuu7fyy].prose ol[data-astro-cid-scuu7fyy]{margin-bottom:1.5rem;margin-top:1rem}.blog-post[data-astro-cid-scuu7fyy].prose li[data-astro-cid-scuu7fyy]{margin-bottom:.5rem}.blog-post[data-astro-cid-scuu7fyy].prose pre[data-astro-cid-scuu7fyy]{margin-top:1.5rem;margin-bottom:1.5rem}.share-button[data-astro-cid-scuu7fyy]:hover,.share-button[data-astro-cid-scuu7fyy]:hover i[data-astro-cid-scuu7fyy]{color:#fff!important}.edit-page-link[data-astro-cid-scuu7fyy],.edit-page-link[data-astro-cid-scuu7fyy]:hover,.edit-page-link[data-astro-cid-scuu7fyy]:active,.edit-page-link[data-astro-cid-scuu7fyy]:focus,.edit-page-link[data-astro-cid-scuu7fyy]:visited{text-decoration:none!important;border-bottom:none!important;box-shadow:none!important;background-image:none!important;text-decoration-line:none!important;text-decoration-color:transparent!important}.edit-page-link[data-astro-cid-scuu7fyy] span[data-astro-cid-scuu7fyy],.edit-page-link[data-astro-cid-scuu7fyy]:hover span[data-astro-cid-scuu7fyy]{text-decoration:none!important;border-bottom:none!important;box-shadow:none!important;background-image:none!important}.blog-post[data-astro-cid-scuu7fyy].prose .edit-page-link[data-astro-cid-scuu7fyy]{text-decoration:none!important;border-bottom:none!important}.continue-reading-link[data-astro-cid-scuu7fyy],.continue-reading-link[data-astro-cid-scuu7fyy]:hover,.continue-reading-link[data-astro-cid-scuu7fyy]:active,.continue-reading-link[data-astro-cid-scuu7fyy]:focus,.continue-reading-link[data-astro-cid-scuu7fyy]:visited{text-decoration:none!important;border-bottom:none!important;box-shadow:none!important;background-image:none!important;text-decoration-line:none!important;text-decoration-color:transparent!important}.blog-post[data-astro-cid-scuu7fyy].prose .continue-reading-link[data-astro-cid-scuu7fyy]{text-decoration:none!important;border-bottom:none!important;background-image:none!important}
