/*! normalize.css v3.0.2 | MIT License | git.io/normalize */@import url("https://fonts.googleapis.com/css2?family=Quicksand:wght@300;400&family=Roboto+Mono:wght@400&display=swap");@import url("https://cdn.jsdelivr.net/npm/@xz/fonts@1/serve/cascadia-code.min.css");html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}.highlight table td{padding:5px}.highlight table pre{margin:0}.highlight,.highlight .w{color:#fbf1c7;background-color:#282828}.highlight .err{color:#fb4934;background-color:#282828;font-weight:bold}.highlight .c,.highlight .ch,.highlight .cd,.highlight .cm,.highlight .cpf,.highlight .c1,.highlight .cs{color:#928374;font-style:italic}.highlight .cp{color:#8ec07c}.highlight .nt{color:#fb4934}.highlight .o,.highlight .ow{color:#fbf1c7}.highlight .p,.highlight .pi{color:#fbf1c7}.highlight .gi{color:#b8bb26;background-color:#282828}.highlight .gd{color:#fb4934;background-color:#282828}.highlight .gh{color:#b8bb26;font-weight:bold}.highlight .k,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kv{color:#fb4934}.highlight .kc{color:#d3869b}.highlight .kt{color:#fabd2f}.highlight .kd{color:#fe8019}.highlight .s,.highlight .sb,.highlight .sc,.highlight .dl,.highlight .sd,.highlight .s2,.highlight .sh,.highlight .sx,.highlight .s1{color:#b8bb26;font-style:italic}.highlight .si{color:#b8bb26;font-style:italic}.highlight .sr{color:#b8bb26;font-style:italic}.highlight .sa{color:#fb4934}.highlight .se{color:#fe8019}.highlight .nn{color:#8ec07c}.highlight .nc{color:#8ec07c}.highlight .no{color:#d3869b}.highlight .na{color:#b8bb26}.highlight .m,.highlight .mb,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .il,.highlight .mo,.highlight .mx{color:#d3869b}.highlight .ss{color:#83a598}/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */.hamburger{padding:15px 15px;display:inline-block;cursor:pointer;transition-property:opacity, filter;transition-duration:0.15s;transition-timing-function:linear;font:inherit;color:inherit;text-transform:none;background-color:transparent;border:0;margin:0;overflow:visible}.hamburger:hover{opacity:.7}.hamburger.is-active:hover{opacity:.7}.hamburger.is-active .hamburger-inner,.hamburger.is-active .hamburger-inner::before,.hamburger.is-active .hamburger-inner::after{background-color:var(--main-fg-color-bright)}.hamburger-box{width:25px;height:18px;display:inline-block;position:relative}.hamburger-inner{display:block;top:50%;margin-top:-1px}.hamburger-inner,.hamburger-inner::before,.hamburger-inner::after{width:25px;height:2px;background-color:var(--main-fg-color);border-radius:4px;position:absolute;transition-property:transform;transition-duration:0.15s;transition-timing-function:ease}.hamburger-inner::before,.hamburger-inner::after{content:"";display:block}.hamburger-inner::before{top:-8px}.hamburger-inner::after{bottom:-8px}.hamburger--collapse .hamburger-inner{top:auto;bottom:0;transition-duration:0.13s;transition-delay:0.13s;transition-timing-function:cubic-bezier(0.55, 0.055, 0.675, 0.19)}.hamburger--collapse .hamburger-inner::after{top:-16px;transition:top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),opacity 0.1s linear}.hamburger--collapse .hamburger-inner::before{transition:top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19)}.hamburger--collapse.is-active .hamburger-inner{transform:translate3d(0, -8px, 0) rotate(-45deg);transition-delay:0.22s;transition-timing-function:cubic-bezier(0.215, 0.61, 0.355, 1)}.hamburger--collapse.is-active .hamburger-inner::after{top:0;opacity:0;transition:top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333),opacity 0.1s 0.22s linear}.hamburger--collapse.is-active .hamburger-inner::before{top:0;transform:rotate(-90deg);transition:top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333),transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1)}.wasm-player{background:#282828;color:#ddd;width:100%;aspect-ratio:4/3;overflow:hidden;display:flex;position:relative}.wasm-player .play-button{position:absolute;width:100%;height:100%;background:transparent;transform:scale(1, 1) rotate(0.02deg);transition:color 0.3s, transform 0.2s ease-out;border:0;color:transparent;font-size:2rem;pointer-events:none}.wasm-player .wasm-player-preview{position:absolute;width:100%;height:100%;max-height:unset !important;opacity:0;transition:opacity 0.5s;pointer-events:none}.wasm-player iframe{width:100%;height:100%}.wasm-player .wasm-player-play-overlay{transition:opacity 0.5s;position:absolute;width:100%;height:100%;background:#000;opacity:0;pointer-events:none}.wasm-player.stopped iframe{display:none}.wasm-player.stopped .wasm-player-preview{opacity:1}.wasm-player.stopped:hover .play-button{pointer-events:inherit}.wasm-player.stopped:hover .wasm-player-play-overlay{opacity:0.4}.wasm-player.stopped:hover .play-button:hover{color:#fff;transform:scale(1.2, 1.2) rotate(0.02deg)}.hamburger,.hamburger-box{z-index:1000;position:inherit}@media screen and (min-width: 900px){.hamburger,.hamburger-box{display:none}}:root{--main-bg-color: white;--main-fg-color: black;--main-fg-color-bright: black;--top-bar-height: 4em;--quote-bar-color: #ccc;--info-bg-color: #f7f7f7}@media (prefers-color-scheme: dark){:root{--main-bg-color: #101010;--main-fg-color: #bbb;--main-fg-color-bright: white;--quote-bar-color: #333;--info-bg-color: #222}a{color:#6296ce}a:hover{color:#5381b3}}body{font-family:'Quicksand', serif;font-size:16px;font-weight:400;line-height:1.5;color:var(--main-fg-color);background:var(--main-bg-color);overflow-wrap:break-word}a{color:#2879d0}a:hover{color:#2268b2}.hamburger{float:right;margin-right:-0.8em;margin-top:0.2em;opacity:0.6}header{pointer-events:none;font-family:'Quicksand', serif;background:linear-gradient(to bottom, rgba(255,255,255,0.8) 70%, rgba(255,255,255,0.1) 74%, transparent);padding-bottom:1px;position:fixed;left:0;top:0;right:0;z-index:100;overflow:hidden;height:calc(var(--top-bar-height) + 1em)}@media (prefers-color-scheme: dark){header{background:linear-gradient(to bottom, rgba(16,16,16,0.8) 70%, rgba(16,16,16,0.1) 74%, transparent)}}header *{pointer-events:auto}header h1{font-size:24px;font-weight:normal;line-height:1;color:var(--main-fg-color);opacity:0.6;display:inline-block;text-transform:lowercase;transition:color 0.3s}header::before{position:absolute;width:100%;top:0;bottom:25px;content:"";backdrop-filter:blur(2px)}header>.inner{overflow:hidden}header h2{margin-top:0;margin-bottom:0;font-size:26px;font-weight:normal;line-height:1.3;letter-spacing:0}#main-menu{font-size:2rem;transition:opacity 0.5s, visibility 0s 0.5s;visibility:hidden;opacity:0;background:var(--main-bg-color);position:fixed;top:0;bottom:0;right:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center}@media screen and (min-width: 900px){#main-menu{position:unset;float:right;background:transparent;visibility:visible;opacity:1;transition:none;bottom:unset;left:unset;z-index:150;font-size:24px;margin:0.67em 0;line-height:22.5px}}#main-menu.is-active{visibility:visible;opacity:1;transition:opacity 0.5s, visibility 0s 0s}#main-menu ul{padding:0;margin:0}#main-menu li{list-style-type:none}@media screen and (min-width: 900px){#main-menu li{display:inline-block;margin-left:0.2em}#main-menu li a{color:var(--main-fg-color);opacity:0.6;transition:opacity 0.3s}#main-menu li a:hover{opacity:1}}.inner{position:relative;width:93%;max-width:45em;margin:0 auto}.inner.wide{width:100%}#content-wrapper{padding-top:var(--top-bar-height)}#main-content{float:left;width:100%}#main-content img{max-width:100%;max-height:70vmin;display:block;margin-left:auto;margin-right:auto;border-radius:6px}#main-content figure{margin:1em auto;width:fit-content}#main-content figure>figcaption{font-style:italic;margin:0 0.3em}#main-content .small-image{display:block;margin-left:auto;margin-right:auto;text-align:center;margin-top:16px}#main-content .small-image img{max-height:40vh;object-fit:contain;max-width:100%}.social-links{list-style:none;padding-left:0;margin:1.5em 0}.social-links li{margin:0.7em 0}#main-content .social-icon{vertical-align:middle;margin:0 0.3em;height:32px;display:inline-block}@media (prefers-color-scheme: dark){#main-content .social-icon{filter:invert(70%)}}#main-content .page-heading{font-size:32px;opacity:0.6;border:1px solid var(--main-fg-color);text-align:center;margin:0.5rem 0 1.5rem 0;padding:0.5em 0em;display:none}@media screen and (min-width: 600px){#main-content .page-heading{display:block}}aside#sidebar{float:right;display:none}a.button{width:134px;height:58px;padding-top:22px;padding-left:68px;font-family:'Architects Daughter', 'Helvetica Neue', Helvetica, Arial, serif;font-size:23px;line-height:1.2;color:#fff}a.button small{display:block;font-size:11px}header a.button{position:absolute;top:0;right:0;background:transparent url(../images/github-button.png) 0 0 no-repeat}aside a.button{display:block;width:138px;padding-left:64px;margin-bottom:20px;font-size:21px;background:transparent url(../images/download-button.png) 0 0 no-repeat}pre,.highlight,.wasm-player{border-radius:6px;border-width:0;box-shadow:black;box-shadow:1px 1px 5px #0005}code,pre{margin-bottom:30px;font-family:"Cascadia Code", "Roboto Mono", Monaco, "Bitstream Vera Sans Mono", "Lucida Console", Terminal, monospace;font-size:13px}code{border-radius:3px}p code,h2 code,h3 code,li code{padding:0.1em 0.35em}@media (prefers-color-scheme: dark){p code,h2 code,h3 code,li code{background:#050505}}pre{padding:20px;overflow:auto;text-shadow:none}pre code{padding:0;border:none}ul,ol,dl{margin-bottom:20px}hr{height:0;margin-top:1em;margin-bottom:1em;border:0;border-top:solid 1px #ddd}table{width:100%;border:1px solid #ebebeb}th{font-weight:500}td{font-weight:300;text-align:center;border:1px solid #ebebeb}form{padding:20px;background:#f2f2f2}#main-content h1{font-family:'Quicksand', 'Helvetica Neue', Helvetica, Arial, serif;font-weight:normal;letter-spacing:-1px;color:var(--main-fg-color);opacity:0.8;line-height:1.2}#main-content h1:first-child{margin-top:0.3em}@media screen and (min-width: 900px){#main-content h1:first-child{margin-top:0.5em}}#main-content h2{margin-bottom:8px;font-family:'Quicksand', 'Helvetica Neue', Helvetica, Arial, serif;font-size:22px;font-weight:400}#main-content h2 code{font-size:22px}#main-content h2>a{color:var(--main-fg-color)}#main-content h3{margin-top:24px;margin-bottom:8px;font-family:'Quicksand', 'Helvetica Neue', Helvetica, Arial, serif;font-size:18px;font-weight:600;color:var(--main-fg-color);opacity:1.0}#main-content h4{margin-bottom:8px;font-family:'Quicksand', 'Helvetica Neue', Helvetica, Arial, serif;font-size:15px;font-weight:bold;text-indent:3px}#main-content h5{margin-bottom:8px;font-family:'Quicksand', 'Helvetica Neue', Helvetica, Arial, serif;font-size:14px;text-indent:3px}#main-content h6{margin-bottom:8px;font-family:'Quicksand', 'Helvetica Neue', Helvetica, Arial, serif;font-size:.8em;text-indent:3px}a{text-decoration:none}p a{font-weight:400}blockquote{padding:0 0 0 1em;margin:0 0.1em 20px;font-size:15px;border-left:0.5em solid var(--quote-bar-color)}ul{list-style-position:inside;list-style:disc;padding-left:1em}ol{list-style-position:inside;list-style:decimal;padding-left:1em}dl dd{font-style:italic;font-weight:100}footer{padding-top:20px;padding-bottom:30px;margin-top:40px;font-size:13px}footer a{color:#666}footer a:hover{color:#444}.clearfix:after{display:block;height:0;clear:both;visibility:hidden;content:'.'}.clearfix{display:inline-block}* html .clearfix{height:1%}.clearfix{display:block}.windows-only,.mac-only,.linux-only,.android-only,.ios-only{display:none}.windows .windows-only,.mac .mac-only,.linux .linux-only,.android .android-only,.ios .ios-only{display:unset}#main-content .image-gallery{list-style-type:none;margin:0;padding:0;display:flex;align-items:center;justify-content:center;flex-direction:column}@media screen and (min-width: 900px){#main-content .image-gallery{margin-top:1rem}}#main-content .image-gallery-thumbnail{display:block;max-height:100%}#main-content .image-gallery li{margin-left:0;padding:0 0rem}#main-content .image-gallery img{max-height:calc(100vh - var(--top-bar-height) - 4rem);width:100%;object-fit:scale-down}#main-content .image-gallery h2::before{display:none}#main-content .image-gallery h2{font-size:1rem;text-align:center;margin-top:0.2em;margin-bottom:1.2em}header h1{color:#f39600}header h1:hover{color:#ff4800}@media (prefers-color-scheme: dark){header h1:hover{color:#aaa}}#paypal-button-container{position:relative;z-index:0}#receipt-container{position:fixed;top:0;left:0;width:100%;height:100%;backdrop-filter:blur(10px);color:black;background-color:rgba(255,255,255,0.5);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999;padding:20px;box-sizing:border-box}@media (prefers-color-scheme: dark){#receipt-container{background-color:rgba(0,0,0,0.5);color:white}}#receipt-container h2{text-align:center;font-size:2.5rem}#receipt-container p{font-size:1.2rem;text-align:center}.info-box{padding:0.5em 2em;background-color:var(--info-bg-color);border-radius:6px;box-shadow:black;box-shadow:1px 1px 5px #0005}.info-box>nav>ul{list-style-type:none;padding:0}
