@import"https://fonts.googleapis.com/css2?family=Chakra+Petch:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=Rubik:ital,wght@0,300..900;1,300..900&display=swap";@import"https://fonts.googleapis.com/css2?family=Jersey+10&display=swap";.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}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:theme("borderColor.DEFAULT",currentColor)}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:theme("fontFamily.sans",ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:theme("fontFamily.sans[1].fontFeatureSettings",normal);font-variation-settings:theme("fontFamily.sans[1].fontVariationSettings",normal);-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:theme("fontFamily.mono",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:theme("fontFamily.mono[1].fontFeatureSettings",normal);font-variation-settings:theme("fontFamily.mono[1].fontVariationSettings",normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,li,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:theme("colors.gray.400",#9ca3af)}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}@font-face{font-family:"Pixel Operator Mono 8 Bold";src:url(/_astro/PixelOperatorMono8-Bold.BAP-q8Jw.ttf)}@font-face{font-family:"Pixel Operator Mono 8";src:url(/_astro/PixelOperatorMono8.DJKneIbl.ttf)}@font-face{font-family:Pixel Operator Mono;src:url(/_astro/PixelOperatorMono-Bold.Bfijsedc.ttf)}@font-face{font-family:Pixel Operator Mono;src:url(/_astro/PixelOperatorMono-Bold.Bfijsedc.ttf)}@font-face{font-family:Pixel Operator;src:url(/_astro/PixelOperator.C4gCAeI2.ttf)}@font-face{font-family:Pixel Operator;src:url(/_astro/PixelOperator.C4gCAeI2.ttf)}@font-face{font-family:Pixel Operator;font-weight:700;src:url(/_astro/PixelOperator-Bold.CLeLR2Kg.ttf)}@font-face{font-family:"8bitoperator";src:url(/_astro/8bitoperator-JVE.B493tbT3.woff)}@font-face{font-family:old-school;src:url(/_astro/HP_100LX_6x8.CEtODXVf.woff) format("woff")}:root{--ease-jiggle: cubic-bezier(0, 1.12, .218, 1);--ease-smooth: cubic-bezier(.78, 0, .22, 1)}@supports (animation-timing-function: linear(0,1)){:root{--ease-jiggle: linear( 0, .115 2.2%, .877 9.4%, 1.016 11.9%, 1.081 14.7%, 1.088 16%, 1.084 17.5%, 1.013 25.3%, .993 30.8%, 1.001 46.8%, 1 );--ease-smooth: linear( 0, .013 .9%, .053 2%, .416 8.9%, .617 14.1%, .701 17.1%, .773 20.4%, .831 24%, .879 28%, .915 32.3%, .943 37.2%, .98 49.6%, .995 67%, 1 )}}.text-content p,p.semantic,.semantic-p{margin:calc(var(--rem-spacing) * 6) 0;line-height:1.5}.text-content.text-content-compact p,p.text-content.text-content-compact{margin:0}.text-content a,a.semantic,.semantic-a{text-decoration:underline}.text-content a:hover,a.semantic:hover,.semantic-a:hover{background-color:var(--c-inv-sur);color:var(--c-on-inv-sur);box-shadow:var(--c-inv-sur) calc(var(--px-spacing) * -1) 0 0,var(--c-inv-sur) calc(var(--px-spacing) * 1) 0 0}.text-content a:active,a.semantic:active,.semantic-a:active{opacity:.5}.text-content h1,h1.semantic,.semantic-h1{font-family:var(--font-brand);font-weight:700;font-size:calc(var(--rem-spacing) * 10);margin:calc(var(--rem-spacing) * 2) 0;line-height:1.2}.text-content h2,h2.semantic,.semantic-h2{font-family:var(--font-brand);font-weight:700;font-size:calc(var(--rem-spacing) * 8);margin:calc(var(--rem-spacing) * 6) 0;line-height:1.2;border-bottom:var(--c-out) 1px solid}.text-content h3,h3.semantic,.semantic-h3{font-weight:600;font-size:calc(var(--rem-spacing) * 6);margin:calc(var(--rem-spacing) * 6) 0}.text-content h4,h4.semantic,.semantic-h4{font-weight:600;font-size:calc(var(--rem-spacing) * 4);margin:calc(var(--rem-spacing) * 6) 0}.text-content h5,h5.semantic,.semantic-h5{font-weight:600;font-size:calc(var(--rem-spacing) * 3);margin:calc(var(--rem-spacing) * 6) 0}.text-content h6,h6.semantic,.semantic-h6{font-weight:450;font-size:calc(var(--rem-spacing) * 3);font-style:italic;margin:calc(var(--rem-spacing) * 6) 0}.text-content ol,ol.semantic,.semantic-ol{list-style-type:decimal;display:flex;flex-direction:column;margin:calc(var(--rem-spacing) * 6) 0;margin-left:calc(var(--rem-spacing) * 6)}.text-content li,li.semantic,.semantic-li{list-style-type:unset;margin:calc(var(--rem-spacing) * 1) 0}.text-content li::marker,li.semantic::marker,.semantic-li::marker{color:var(--c-on-sur-var)}.text-content li ol,.text-content li ul,li.semantic ol,li.semantic ul,.semantic-li ol,.semantic-li ul{margin-top:calc(var(--rem-spacing) * 1);margin-bottom:0}.text-content li ol li:last-child,.text-content li ul li:last-child,li.semantic ol li:last-child,li.semantic ul li:last-child,.semantic-li ol li:last-child,.semantic-li ul li:last-child{margin-bottom:0}.text-content ul,ul.semantic,.semantic-ul{list-style:disc;display:flex;flex-direction:column;counter-reset:list 0;margin-left:calc(var(--rem-spacing) * 6)}.text-content b,strong,b,strong.semantic,.semantic-b{color:var(--c-yellow)}.text-content i,em,i,em.semantic,.semantic-i{color:var(--c-mauve)}.text-content mark,mark.semantic,.semantic-mark{background-color:var(--c-yellow-ctr);color:var(--c-on-yellow-ctr);padding:0 calc(var(--px-spacing) * 1);margin:0 calc(var(--px-spacing) * -1)}.text-content hr,hr.semantic,.semantic-hr{border-color:var(--c-out);margin:calc(var(--rem-spacing) * 12) 0}.text-content figure,figure.semantic,.semantic-figure{margin:calc(var(--rem-spacing) * 4) auto}.text-content figure img,figure.semantic img,.semantic-figure img{margin:0 auto;max-height:calc(var(--px-spacing) * 200);width:auto;object-fit:contain}.text-content figure figcaption,figure.semantic figcaption,.semantic-figure figcaption{text-align:center;color:var(--c-on-sur-var);margin:calc(var(--rem-spacing) * 2) 0}.text-content img,img.semantic,.semantic-img{margin:calc(var(--rem-spacing) * 4) auto;max-height:calc(var(--px-spacing) * 200);object-fit:contain}.text-content blockquote,blockquote.semantic,.semantic-blockquote{border-left:var(--c-on-sur) calc(var(--px-spacing) * 2) solid;padding-left:calc(var(--px-spacing) * 8)}.text-content code,code.semantic,.semantic-code{background-color:var(--c-sur-ctr-low);padding:calc(var(--px-spacing) * .5) calc(var(--px-spacing) * 1)}:root{--cur-default: var(--set-cursor-default, default);--cur-none: var(--set-cursor-none, none);--cur-context-menu: var(--set-cursor-context-menu, context-menu);--cur-help: var(--set-cursor-help, help);--cur-pointer: var(--set-cursor-pointer, pointer);--cur-progress: var(--set-cursor-progress, progress);--cur-wait: var(--set-cursor-wait, wait);--cur-cell: var(--set-cursor-cell, cell);--cur-crosshair: var(--set-cursor-crosshair, crosshair);--cur-text: var(--set-cursor-text, text);--cur-vertical-text: var(--set-cursor-vertical-text, vertical-text);--cur-alias: var(--set-cursor-alias, alias);--cur-copy: var(--set-cursor-copy, copy);--cur-move: var(--set-cursor-move, move);--cur-no-drop: var(--set-cursor-no-drop, no-drop);--cur-not-allowed: var(--set-cursor-not-allowed, not-allowed);--cur-grab: var(--set-cursor-grab, grab);--cur-grabbing: var(--set-cursor-grabbing, grabbing);--cur-e-resize: var(--set-cursor-e-resize, e-resize);--cur-n-resize: var(--set-cursor-n-resize, n-resize);--cur-ne-resize: var(--set-cursor-ne-resize, ne-resize);--cur-nw-resize: var(--set-cursor-nw-resize, nw-resize);--cur-s-resize: var(--set-cursor-s-resize, s-resize);--cur-se-resize: var(--set-cursor-se-resize, se-resize);--cur-sw-resize: var(--set-cursor-sw-resize, sw-resize);--cur-w-resize: var(--set-cursor-w-resize, w-resize);--cur-ew-resize: var(--set-cursor-ew-resize, ew-resize);--cur-ns-resize: var(--set-cursor-ns-resize, ns-resize);--cur-nesw-resize: var(--set-cursor-nesw-resize, nesw-resize);--cur-nwse-resize: var(--set-cursor-nwse-resize, nwse-resize);--cur-col-resize: var(--set-cursor-col-resize, col-resize);--cur-row-resize: var(--set-cursor-row-resize, row-resize);--cur-all-scroll: var(--set-cursor-all-scroll, all-scroll);--cur-zoom-in: var(--set-cursor-zoom-in, zoom-in);--cur-zoom-out: var(--set-cursor-zoom-out, zoom-out);--cur-auto: var(--cur-default)}:root{--size-unit: 3px;--rem-spacing: .25rem;--px-spacing: var(--size-unit);--font-size: calc(var(--size-unit) * 8);--font-sans: "Rubik", sans-serif;--font-brand: "Chakra Petch", sans-serif;--content-width: calc(var(--px-spacing) * 350);--textual-width: calc(var(--px-spacing) * 300);--program-width: calc(var(--px-spacing) * 600);--navigation-height: calc(var(--rem-spacing) * 12);--layout-x-padding: calc(var(--px-spacing) * 16);--border-width: calc(var(--px-spacing) * 1);font-size:var(--font-size);accent-color:var(--c-pri);--font-size-sm: calc(var(--rem-spacing) * 3);scroll-padding-top:calc(var(--navigation-height) + calc(var(--px-spacing) * 4))}:root{--c-baseplate: hsl(108, 20%, 5%);--c-dark: hsl(0, 0%, 5%);--c-light: hsl(0, 0%, 80%);--c-sur: var(--c-dark);--c-sur-ctr: hsl(0, 0%, 22.5%);--c-sur-ctr-low: hsl(0, 0%, 15%);--c-on-sur: var(--c-light);--c-on-sur-ctr: var(--c-on-sur);--c-on-sur-ctr-low: var(--c-on-sur);--c-on-sur-var: hsl(0, 0%, 50%);--c-out: var(--c-on-sur);--c-out-var: hsl(0, 0%, 40%);--c-inv-sur: var(--c-on-sur);--c-on-inv-sur: var(--c-sur);--c-inv-sur-bright: #ffffff;--c-on-inv-sur-bright: #10140f;--c-sur-ctr-hover: #323630;--c-on-sur-ctr-hover: var(--c-on-sur-ctr);--c-sur-ctr-active: var(--c-sur-ctr);--c-on-sur-ctr-active: var(--c-on-sur-ctr);--c-pri: #a0d49b;--c-on-pri: #083910;--c-pri-hover: #bbf0b5;--c-on-pri-hover: #083910;--c-pri-active: var(--c-pri);--c-on-pri-active: var(--c-on-pri);--c-pri-ctr: #225025;--c-on-pri-ctr: #bbf0b5;--c-sec: #b9ccb4;--c-yellow: #e0c46d;--c-on-yellow: #3c2f00;--c-yellow-ctr: #564500;--c-on-yellow-ctr: #fee086;--c-mauve: #d9bafa;--c-on-mauve: #3d2459;--c-mauve-ctr: #543b71;--c-on-mauve-ctr: #efdbff}@media (prefers-color-scheme: light){:root{--c-dark: hsl(0, 0%, 5%);--c-light: hsl(0, 0%, 85%);--c-sur: var(--c-light);--c-on-sur: var(--c-dark);--c-on-sur-var: hsl(0, 0%, 22%);--c-out-var: hsl(0, 0%, 50%);--c-sur-ctr: hsl(0, 0%, 70%);--c-sur-ctr-low: hsl(0, 0%, 75%);--c-yellow: #493a00;--c-on-yellow: #ffffff;--c-yellow-ctr: #fee086;--c-on-yellow-ctr: #564500;--c-mauve: #502084;--c-on-mauve: #ffffff;--c-mauve-ctr: #efdbff;--c-on-mauve-ctr: #543b71}}@media print{:root{--c-light: #fff;--c-dark: #000;--c-inv-sur: #969696;--c-on-inv-sur: #000;--c-dark: hsl(0, 0%, 5%);--c-light: hsl(0, 0%, 85%);--c-sur: var(--c-light);--c-on-sur: var(--c-dark);--c-on-sur-var: hsl(0, 0%, 22%);--c-out-var: hsl(0, 0%, 50%);--c-sur-ctr: hsl(0, 0%, 70%);--c-sur-ctr-low: hsl(0, 0%, 75%);--c-yellow: #493a00;--c-on-yellow: #ffffff;--c-yellow-ctr: #fee086;--c-on-yellow-ctr: #564500;--c-mauve: #502084;--c-on-mauve: #ffffff;--c-mauve-ctr: #efdbff;--c-on-mauve-ctr: #543b71}}body{background-color:var(--c-sur);color:var(--c-on-sur);font-family:var(--font-sans);margin:0;min-height:100vh;font-size:calc(var(--rem-spacing) * 4);position:relative;overflow-wrap:break-word}body.pretentious-style body::selection{background-color:var(--c-inv-sur);color:var(--c-on-inv-sur)}@media (max-width: 560px){:root{--layout-x-padding: calc(var(--px-spacing) * 8)}}@media (max-width: 400px){:root{--rem-spacing: .225rem;--font-size-sm: calc(var(--rem-spacing) * 3.5)}}.spinner[data-astro-cid-kgtgtqij]>svg[data-astro-cid-kgtgtqij]{--fill: var(--c-on-sur);animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner[data-astro-cid-cufku5iq]{position:fixed;top:calc(var(--px-spacing) * 2);left:calc(var(--px-spacing) * 2);z-index:99999;pointer-events:none;user-select:none;opacity:0}.spinner[data-astro-cid-cufku5iq].show{opacity:1;transition:opacity .2s .2s}@use "@/styles/std.scss" as *;@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}}
