.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}:root{--font-fallback: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;--font-body: "IBM Plex Sans", var(--font-fallback);--font-mono: "IBM Plex 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;--color-white: #fff;--color-black: #000014;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--color-blue: #008bf5;--color-blue-rgb: 0, 139, 245;--color-green: #17c083;--color-green-rgb: 23, 192, 131;--color-orange: #ff5d01;--color-orange-rgb: 255, 93, 1;--color-purple: #882de7;--color-purple-rgb: 136, 45, 231;--color-red: #ff1639;--color-red-rgb: 255, 22, 57;--color-yellow: #ffbe2d;--color-yellow-rgb: 255, 190, 45}:root{color-scheme:light;--theme-accent: var(--color-blue);--theme-accent-rgb: var(--color-blue-rgb);--theme-accent-opacity: .1;--theme-divider: var(--color-gray-100);--theme-text: var(--color-gray-800);--theme-text-light: var(--color-gray-600);--theme-text-lighter: var(--color-gray-400);--theme-bg: var(--color-white);--theme-bg-offset: var(--color-gray-100);--theme-bg-accent: rgba(var(--theme-accent-rgb), var(--theme-accent-opacity));--theme-code-inline-bg: var(--color-gray-100);--theme-code-text: var(--color-gray-100);--theme-code-bg: var(--color-gray-700)}body{background:var(--theme-bg);color:var(--theme-text)}:root.theme-dark{color-scheme:dark;--theme-accent-opacity: .3;--theme-divider: var(--color-gray-900);--theme-text: var(--color-gray-200);--theme-text-light: var(--color-gray-400);--theme-text-lighter: var(--color-gray-600);--theme-bg: var(--color-black);--theme-bg-offset: var(--color-gray-900);--theme-code-inline-bg: var(--color-gray-800);--theme-code-text: var(--color-gray-200);--theme-code-bg: var(--color-gray-900)}::selection{color:var(--theme-accent);background-color:rgba(var(--theme-accent-rgb),var(--theme-accent-opacity))}*{box-sizing:border-box;margin:0}:root{--user-font-scale: 1rem - 16px;--max-width: calc(100% - 2rem) }@media(min-width:50em){:root{--max-width: 40em}}body{font-family:var(--font-body);font-size:1rem;font-size:clamp(.875rem,.4626rem + 1.0309vw + var(--user-font-scale),1.125rem);line-height:1.625}.wrapper{margin-left:auto;margin-right:auto;max-width:45em;padding-left:2rem;padding-right:2rem;width:100%}nav ul{list-style:none;padding:0}:is(h1,h2,h3,h4,h5,h6){margin-bottom:1.38rem;font-weight:400;line-height:1.3}:is(h1,h2){max-width:50ch}:is(h2,h3):not(:first-child){margin-top:3rem}h1{font-size:clamp(2.488rem,1.924rem + 1.41vw,3.052rem)}h2{font-size:clamp(2.074rem,1.707rem + .9175vw,2.441rem)}h3{font-size:clamp(1.728rem,1.503rem + .5625vw,1.953rem)}h4{font-size:clamp(1.44rem,1.317rem + .3075vw,1.563rem)}h5{font-size:clamp(1.2rem,1.15rem + .125vw,1.25rem)}p{color:var(--theme-text-light)}small,.text_small{font-size:.833rem}a{color:var(--theme-accent);font-weight:400;text-underline-offset:.08em;text-decoration:none;align-items:center;gap:.5rem}a>code:not([class*=language]){position:relative;color:var(--theme-accent);background:transparent;text-underline-offset:var(--padding-block)}a>code:not([class*=language]):before{content:"";position:absolute;inset:0;display:block;background:var(--theme-accent);opacity:var(--theme-accent-opacity);border-radius:var(--border-radius)}a:hover,a:focus{text-decoration:underline}a:focus{outline:2px solid currentColor;outline-offset:.25em}strong{font-weight:600;color:inherit}code:not([class*=language]){--border-radius: 3px;--padding-block: .2rem;--padding-inline: .33rem;font-family:var(--font-mono);font-size:.85em;color:inherit;background-color:var(--theme-code-inline-bg);padding:var(--padding-block) var(--padding-inline);margin:calc(var(--padding-block) * -1) -.125em;border-radius:var(--border-radius);word-break:break-word}pre>code:not([class*=language]){background-color:transparent;padding:0;margin:0;border-radius:0;color:inherit}pre{position:relative;background-color:var(--theme-code-bg);color:var(--theme-code-text);--padding-block: 1rem;--padding-inline: 2rem;padding:var(--padding-block) var(--padding-inline);padding-right:calc(var(--padding-inline) * 2);margin-left:calc(50vw - var(--padding-inline));transform:translate(-50vw);line-height:1.414;width:calc(100vw + (var(--padding-inline) * 2));max-width:calc(100% + (var(--padding-inline) * 2));overflow-y:hidden;overflow-x:auto}@media(min-width:37.75em){pre{--padding-inline: 1.25rem;border-radius:8px}}.flex{display:flex;align-items:center}img.cover{width:100%;max-height:50vh;object-fit:cover}blockquote{font-size:1.5rem;--padding-block: 1rem;--padding-inline: 1.25rem;--color: var(--theme-divider);display:flex;flex-direction:column;padding:var(--padding-block) var(--padding-inline);margin-left:calc(var(--padding-inline) * -1);margin-right:calc(var(--padding-inline) * -1);background:transparent;border-left:calc(var(--padding-inline) / 2) solid var(--color);border-radius:0}blockquote .source{font-weight:500;color:var(--color);font-size:1rem}pre[class*=language-],code[class*=language-]{color:#d4d4d4;font-size:13px;text-shadow:none;font-family:Menlo,Monaco,Consolas,Andale Mono,Ubuntu Mono,Courier New,monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;tab-size:4;hyphens:none}@media(max-width:32em){pre[class*=language-],code[class*=language-]{font-size:12px;tab-size:2}pre[class*=language-]{line-height:1;padding:.5em}}pre[class*=language-]::selection,code[class*=language-]::selection,pre[class*=language-] *::selection,code[class*=language-] *::selection{text-shadow:none;background:#264f78}@media print{pre[class*=language-],code[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;overflow:auto;background:#1e1e1e}:not(pre)>code[class*=language-]{padding:.1em .3em;border-radius:.3em;color:#db4c69;background:#1e1e1e}.namespace{opacity:.7}.token.doctype .token.doctype-tag{color:#569cd6}.token.doctype .token.name{color:#9cdcfe}.token.comment,.token.prolog{color:#6a9955}.token.punctuation,.language-html .language-css .token.punctuation,.language-html .language-javascript .token.punctuation{color:#d4d4d4}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.inserted,.token.unit{color:#b5cea8}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.deleted{color:#ce9178}.language-css .token.string.url{text-decoration:underline}.token.operator,.token.entity{color:#d4d4d4}.token.operator.arrow{color:#569cd6}.token.atrule{color:#ce9178}.token.atrule .token.rule{color:#c586c0}.token.atrule .token.url{color:#9cdcfe}.token.atrule .token.url .token.function{color:#dcdcaa}.token.atrule .token.url .token.punctuation{color:#d4d4d4}.token.keyword{color:#569cd6}.token.keyword.module,.token.keyword.control-flow{color:#c586c0}.token.function,.token.function .token.maybe-class-name{color:#dcdcaa}.token.regex{color:#d16969}.token.important{color:#569cd6}.token.italic{font-style:italic}.token.constant{color:#9cdcfe}.token.class-name,.token.maybe-class-name{color:#4ec9b0}.token.console,.token.parameter,.token.interpolation{color:#9cdcfe}.token.punctuation.interpolation-punctuation,.token.boolean{color:#569cd6}.token.property,.token.variable,.token.imports .token.maybe-class-name,.token.exports .token.maybe-class-name{color:#9cdcfe}.token.selector,.token.escape{color:#d7ba7d}.token.tag{color:#569cd6}.token.tag .token.punctuation,.token.cdata{color:gray}.token.attr-name{color:#9cdcfe}.token.attr-value,.token.attr-value .token.punctuation{color:#ce9178}.token.attr-value .token.punctuation.attr-equals{color:#d4d4d4}.token.entity{color:#569cd6}.token.namespace{color:#4ec9b0}pre[class*=language-javascript],code[class*=language-javascript],pre[class*=language-jsx],code[class*=language-jsx],pre[class*=language-typescript],code[class*=language-typescript],pre[class*=language-tsx],code[class*=language-tsx]{color:#9cdcfe}pre[class*=language-css],code[class*=language-css]{color:#ce9178}pre[class*=language-html],code[class*=language-html]{color:#d4d4d4}.language-regex .token.anchor{color:#dcdcaa}.language-html .token.punctuation{color:gray}pre[class*=language-]>code[class*=language-]{position:relative;z-index:1}.line-highlight.line-highlight{background:#f7ebc6;box-shadow:inset 5px 0 #f7d87c;z-index:0}header[data-astro-cid-itmxxahk]{padding-top:1rem;padding-bottom:1rem;height:5rem}article[data-astro-cid-itmxxahk]{display:flex;align-items:center;justify-content:space-between}.header-subitem[data-astro-cid-itmxxahk]{display:flex;flex-grow:0;gap:.5em;align-items:center;justify-content:center;color:var(--theme-text-lighter);font-size:initial;padding:.5rem}.header-subitem[data-astro-cid-itmxxahk]:hover{color:var(--theme-accent)}.header-subitem[data-astro-cid-itmxxahk] svg[data-astro-cid-itmxxahk]{width:1.5rem;height:1.5rem}@media(max-width:32em){.header-subitem[data-astro-cid-itmxxahk]{display:none}}h1[data-astro-cid-itmxxahk]{margin:0;font-size:1.5rem;max-width:100%;display:flex;flex-grow:1}.logo[data-astro-cid-itmxxahk]{transform:translateY(.25rem)}svg[data-astro-cid-itmxxahk]{width:2.5rem;height:2.5rem}h1[data-astro-cid-itmxxahk] a[data-astro-cid-itmxxahk]{text-decoration:none;display:inline-flex}.change-lang[data-astro-cid-itmxxahk]{color:var(--theme-text-lighter);font-size:1rem;text-decoration:none}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
