@import"https://fonts.googleapis.com/css2?family=Source+Code+Pro:ital,wght@0,200..900;1,200..900";.canvas-container[data-v-feb38909]{align-items:flex-end;animation:canvas-appear-feb38909 1s forwards;bottom:0;display:flex;left:0;position:fixed}@keyframes canvas-appear-feb38909{0%{opacity:0}}.canvas-container canvas[data-v-feb38909]{height:50vh;width:100vw}.canvas-container .gradient[data-v-feb38909]{top:0;right:0;bottom:0;left:0;opacity:.9;position:absolute}.switch[data-v-bb188b4b]{background:var(--bg-color);border:1px solid var(--fg-color);border-radius:18px;height:18px;position:relative;width:32px}.circle[data-v-bb188b4b]{background:var(--fg-color);border-radius:50%;height:14px;left:1px;opacity:.4;position:absolute;top:1px;transition:transform .3s,opacity .3s;width:14px}.circle.active[data-v-bb188b4b]{opacity:1;transform:translate(14px)}.hamburger-menu[data-v-27a30c23]{box-sizing:content-box;cursor:pointer;display:flex;flex-direction:column;height:30px;justify-content:space-around;padding:22px;position:relative;width:30px}.hamburger-menu .line[data-v-27a30c23]{background-color:var(--fg-color);height:2px;transform-origin:right center;transition:all .3s;width:100%}.hamburger-menu .line.top[data-v-27a30c23]{transform-origin:left center}.hamburger-menu.active .top[data-v-27a30c23]{transform:translate(4px) rotate(45deg)}.hamburger-menu.active .middle[data-v-27a30c23]{opacity:0;transform:scale(0)}.hamburger-menu.active .bottom[data-v-27a30c23]{transform:translate(-26px,1px) rotate(135deg)}@media (hover:hover){.hamburger-menu[data-v-27a30c23]:not(.active):hover{overflow:hidden}.hamburger-menu:not(.active):hover .middle[data-v-27a30c23]{transform:scaleX(.6)}.hamburger-menu:not(.active):hover .bottom[data-v-27a30c23]{transform:scaleX(.8)}}.nuxt-icon{height:1em;margin-bottom:.125em;vertical-align:middle;width:1em}.nuxt-icon--fill,.nuxt-icon--fill *{fill:currentColor}.top-nav[data-v-55a38dcd]{display:flex;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:100}.top-nav .menu-button[data-v-55a38dcd]{align-items:center;background:none;border:none;cursor:pointer;margin-left:auto;pointer-events:all}.menu-screen[data-v-55a38dcd],.top-nav .menu-button[data-v-55a38dcd]{display:flex;justify-content:center}.menu-screen[data-v-55a38dcd]{top:0;right:0;bottom:0;left:0;padding:80px 32px 32px;position:fixed;width:100%;z-index:100}.menu-screen .menu-content[data-v-55a38dcd]{display:flex;flex-direction:column;height:100%;max-width:900px;width:100%}.menu-screen .menu-content a[data-v-55a38dcd]{align-items:center;display:flex;gap:8px;margin-right:auto;padding:.75em}.menu-screen .menu-content .dark-mode-container[data-v-55a38dcd]{margin-top:auto}.menu-screen .menu-content .switch-container[data-v-55a38dcd]{align-items:center;cursor:pointer;display:flex;gap:12px;margin-left:auto;padding:.75em;transition:opacity .4s}.menu-screen .menu-content .open-in-new[data-v-55a38dcd]{height:18px;min-width:18px}.menu-screen .menu-content .open-in-new[data-v-55a38dcd] path{fill:var(--fg-color)}.page-enter-active,.page-leave-active{left:0;position:absolute!important;top:0;transition:all .8s;width:100%}.page-enter-from,.page-leave-to{filter:blur(22px);opacity:0}.page-enter-from{transform:scale(.9)}.page-leave-to{transform:scale(1.1)}.fade-enter-active,.fade-leave-active{transition:all .6s}.fade-enter-from,.fade-leave-to{opacity:0}a{color:var(--fg-color);text-decoration:none}a .u{display:inline-block;position:relative}a .u:after{background-color:var(--fg-color);bottom:-.5em;content:"";display:block;height:2px;position:absolute;transition:width .3s;width:0}@media (hover:hover){a:hover .u:after{width:100%}}svg [stroke="#000"],svg [stroke="#000000"],svg [stroke=black]{stroke:var(--fg-color)}svg [fill="#000"],svg [fill="#000000"],svg [fill=black]{fill:var(--fg-color)}svg [stroke="#fff"],svg [stroke="#ffffff"],svg [stroke=white]{stroke:var(--bg-color)}svg [fill="#fff"],svg [fill="#ffffff"],svg [fill=white]{fill:var(--bg-color)}html{font-family:Source Code Pro,monospace;font-size:18px;word-spacing:-.25em}body{--bg-color:rgb(var(--bg-rgb));--fg-color:rgb(var(--fg-rgb));--bg-rgb:0,0,0;--fg-rgb:255,255,255;background:var(--bg-color);color:var(--fg-color);margin:0;overflow:hidden}body.light{--bg-rgb:255,255,255;--fg-rgb:0,0,0}*{box-sizing:border-box;scrollbar-color:var(--fg-color) var(--bg-color);scrollbar-width:thin}h1,h2,h3,h4{margin:0}.nowrap{white-space:nowrap}
