.btn[data-astro-cid-vnzlvqnm]{display:inline-block;border:none;background-color:transparent;color:inherit}.btn[data-astro-cid-vnzlvqnm]:hover,.btn[data-astro-cid-vnzlvqnm]:focus{background-color:var(--grey-contrast-low)}.btn[data-astro-cid-vnzlvqnm]:active{background-color:var(--grey-contrast-high)}.btn--circle[data-astro-cid-vnzlvqnm]{border-radius:50%;padding:.25rem;line-height:0}.top-nav[data-astro-cid-dg7hutvt]{display:flex;padding-top:1rem;padding-bottom:1rem}.top-nav__logo[data-astro-cid-dg7hutvt]{font-size:1.25rem;text-decoration:none;padding-right:.5rem}.top-nav__nav[data-astro-cid-dg7hutvt]{display:flex;flex-wrap:wrap;margin:-.25rem!important}.top-nav__nav-item[data-astro-cid-dg7hutvt]{margin:.25rem;color:currentColor}#color-toggle[data-astro-cid-dg7hutvt]{margin-left:2rem;align-self:center}@media print{#color-toggle[data-astro-cid-dg7hutvt]{display:none}}*,*:before,*:after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul[role=list],ol[role=list]{list-style:none}html:focus-within{scroll-behavior:smooth}body{min-height:100vh;text-rendering:optimizeSpeed;line-height:1.5}a:not([class]){text-decoration-skip-ink:auto}img,picture{max-width:100%;display:block}input,button,textarea,select{font:inherit}@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%{opacity:0}25%{opacity:.5}to{opacity:0}}@font-face{font-family:Lobster;font-style:normal;font-weight:400;font-display:block;src:local("Lobster Regular"),local("Lobster-Regular"),local("Lobster"),url(/fonts/lobster-v22-latin-regular.woff2) format("woff2"),url(/fonts/lobster-v22-latin-regular.woff) format("woff")}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:110%}body{line-height:1.6}h1,h2,h3{font-family:Latin Modern Roman,"Noto Serif",Georgia,serif;hyphens:manual}h3{font-weight:700}.font-sans{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Cantarell,Open Sans,Helvetica Neue,sans-serif}.font-serif{font-family:Latin Modern Roman,"Noto Serif",Georgia,serif}.lobster h1,.lobster h2,.lobster h3{font-family:Lobster}.d-block{display:block}.d-flex{display:flex}.align-center{align-items:center}.ml-auto{margin-left:auto}.font-bold{font-weight:700}[class^=grid-],[class*=" grid-"]{display:grid}@media screen and (min-width:700px){.grid-md-two{grid-template-columns:1fr 1fr}}.rowgap-sm{row-gap:1rem}.rowgap-md{row-gap:2rem}.rowgap-lg{row-gap:4rem}.colgap-sm{column-gap:1rem}.colgap-md{column-gap:2rem}.colgap-lg{column-gap:4rem}code,pre{color:#403f53;color:var(--code-base);background:none;background-color:#fbfbfb;background-color:var(--code-bg);font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;hyphens:none}pre{--code-base: #403f53;--code-bg: rgb(251, 251, 251);--code-comment: #989fb1;--code-punctuation: #403f53;--code-operator: #994cc3;--code-tag: #994cc3;--code-attr-name: #4876d6;--code-boolean: #bc5454;--code-string: #c96765;--code-function: #4876d6;--code-keyword: #994cc3;--code-property: #0c969b;padding:1em;margin-left:-1em;margin-right:-1em;overflow:auto}@media(prefers-color-scheme:dark){pre{--code-base: #fff;--code-bg: rgb(50, 50, 50);--code-comment: #fff;--code-punctuation: #fff;--code-operator: #fff;--code-tag: #fff;--code-attr-name: #fff;--code-boolean: #fff;--code-string: #fff;--code-function: #fff;--code-keyword: #fff;--code-property: #fff}}body[data-theme=dark] pre{--code-base: #fff;--code-bg: rgb(50, 50, 50);--code-comment: #fff;--code-punctuation: #fff;--code-operator: #fff;--code-tag: #fff;--code-attr-name: #fff;--code-boolean: #fff;--code-string: #fff;--code-function: #fff;--code-keyword: #fff;--code-property: #fff}body[data-theme=light] pre{--code-base: #403f53;--code-bg: rgb(251, 251, 251);--code-comment: #989fb1;--code-punctuation: #403f53;--code-operator: #994cc3;--code-tag: #994cc3;--code-attr-name: #4876d6;--code-boolean: #bc5454;--code-string: #c96765;--code-function: #4876d6;--code-keyword: #994cc3;--code-property: #0c969b}:not(pre)>code{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#989fb1;color:var(--code-comment)}.token.punctuation{color:#403f53;color:var(--code-punctuation)}.token.tag,.token.namespace,.token.deleted,.token.attr-equals{color:#994cc3;color:var(--code-tag)}.token.attr-name{font-style:italic;color:#4876d6;color:var(--code-attr-name)}.token.function-name{color:#6196cc}.token.boolean,.token.number{color:#bc5454;color:var(--code-boolean)}.token.function{color:#4876d6;color:var(--code-function)}.token.property,.token.class-name,.token.constant,.token.symbol{color:var(--code-property)}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{font-style:italic;color:#994cc3;color:var(--code-keyword)}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#c96765;color:var(--code-string)}.token.parameter+.token.operator,.token.punctuation+.token.operator{color:#994cc3;color:var(--code-operator)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}*:focus{outline:.25rem solid var(--fg);outline-offset:.25rem}body:not(.setting-initial-color) *:focus{transition:outline 2s ease-in-out}html{--bg: rgb(245, 245, 245);--fg: rgb(20, 20, 20);--grey-contrast-low: rgb(200, 200, 200);--grey-contrast-high: rgb(100, 100, 100);background-color:#f5f5f5;color:#141414}@media(prefers-color-scheme:dark){html{--bg: rgb(20, 20, 20);--fg: rgb(245, 245, 245);--grey-contrast-low: rgb(100, 100, 100);--grey-contrast-high: rgb(200, 200, 200);background-color:#141414;color:#f5f5f5}}html:has(body[data-theme=dark]){--bg: rgb(20, 20, 20);--fg: rgb(245, 245, 245);--grey-contrast-low: rgb(100, 100, 100);--grey-contrast-high: rgb(200, 200, 200);background-color:#141414;color:#f5f5f5}html:has(body[data-theme=light]){--bg: rgb(245, 245, 245);--fg: rgb(20, 20, 20);--grey-contrast-low: rgb(200, 200, 200);--grey-contrast-high: rgb(100, 100, 100);background-color:#f5f5f5;color:#141414}html:has(body:not(.setting-initial-color)){transition:background-color 2s ease-in-out,color 2s ease-in-out}.dark{--bg: rgb(20, 20, 20);--fg: rgb(245, 245, 245);--grey-contrast-low: rgb(100, 100, 100);--grey-contrast-high: rgb(200, 200, 200);background-color:#141414;color:#f5f5f5}.color-contrast-low{color:var(--grey-contrast-low)}.color-contrast-high{color:var(--grey-contrast-high)}iframe,video{display:block;width:100%}video{height:auto}img{height:auto}body:not(.setting-initial-color) img{transition:filter 2s ease-in-out}@media(prefers-color-scheme:dark){img{filter:brightness(90%)}}body[data-theme=dark] img{filter:brightness(90%)}body[data-theme=light] img{filter:none}a{color:currentColor}a:not([class]){position:relative;text-decoration:none;box-shadow:0 .125rem var(--grey-contrast-high);transition:color .2s ease-in-out}a:not([class]):hover{box-shadow:.125rem .125rem var(--grey-contrast-high),-.125rem -.125rem var(--grey-contrast-high);background-color:var(--grey-contrast-high);color:var(--bg)}a:not([class]):focus{box-shadow:none}object{width:100%;max-height:90vh}svg{fill:currentColor}figure>svg{display:block;margin-left:auto;margin-right:auto}figcaption{color:var(--grey-contrast-high);font-style:italic}ul[role=list],ol[role=list]{padding-left:0}.container{margin-right:auto;margin-left:auto;max-width:60ch}@media screen{.container{padding-right:1rem;padding-left:1rem}}.container--big{max-width:180ch}.flow>*+*,.flow>*+ol,.flow>*+ul{margin-top:1em}.card{display:block}.card>a{display:block}.card__title{text-decoration:none}footer{padding-top:2rem;padding-bottom:4rem;text-align:right}header{padding-top:4rem;padding-bottom:4rem}main{padding-top:4rem;padding-bottom:8rem}section:not(:first-child){padding-top:4rem}section:not(:last-child){padding-bottom:4rem}.top-nav,footer{position:relative}.top-nav:before,footer:before{content:"";position:absolute;height:.25rem;top:0;left:-.25rem;width:5ch;background-color:var(--grey-contrast-high)}.top-nav:before{top:unset;bottom:0}
