*,:before,:after{box-sizing:border-box;border:0 solid}html{-webkit-text-size-adjust:100%;tab-size:4;font-family:sans-serif;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}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-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{appearance:button;background-color:#0000;background-image:none}button,[role=button]{cursor:pointer}:disabled{cursor:default}input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}ol,ul,menu{margin:0;padding:0;list-style:none}textarea{resize:vertical}img,svg,video,canvas,audio,iframe,embed,object{display:block}img,video{max-width:100%;height:auto}[hidden]{display:none}:root{--color-primary-light-default:#0f1729;--color-secondary-light-default:#fff;--color-background-light-default:#fafafa;--color-shadow-transparent-light-default:#0000001a;--color-primary-dark-default:#d2dae5;--color-secondary-dark-default:#000;--color-background-dark-default:var(--color-secondary-dark-default);--color-shadow-transparent-dark-default:#0000;--color-primary-light:var(--color-primary-light-override,var(--color-primary-light-theme,var(--color-primary-light-default)));--color-secondary-light:var(--color-secondary-light-override,var(--color-secondary-light-theme,var(--color-secondary-light-default)));--color-background-light:var(--color-background-light-override,var(--color-background-light-theme,var(--color-background-light-default)));--color-blue-light:#3b82f6;--color-checkbox-light:#0f172a;--color-green-light:#16a34a;--color-orange-light:#f97316;--color-pink-light:#d946ef;--color-warn-light:#dc2626;--color-yellow-light:#eab308;--color-medium:#64748b;--color-primary-dark:var(--color-primary-dark-override,var(--color-primary-dark-theme,var(--color-primary-dark-default)));--color-secondary-dark:var(--color-secondary-dark-override,var(--color-secondary-dark-theme,var(--color-secondary-dark-default)));--color-background-dark:var(--color-background-dark-override,var(--color-background-dark-theme,var(--color-background-dark-default)));--color-blue-dark:#93c5fd;--color-checkbox-dark:#e2e8f0;--color-green-dark:#86efac;--color-orange-dark:#fdba74;--color-pink-dark:#f0abfc;--color-warn-dark:#f87171;--color-yellow-dark:#fef08a;--color-theme-green-primary-light:#003800;--color-theme-green-secondary-light:var(--color-secondary-light-default);--color-theme-green-background-light:#fcfaff;--color-theme-green-primary-dark:#aef7ab;--color-theme-green-secondary-dark:var(--color-secondary-dark-default);--color-theme-green-background-dark:var(--color-secondary-dark-default);--color-theme-blue-primary-light:#050038;--color-theme-blue-secondary-light:var(--color-secondary-light-default);--color-theme-blue-background-light:#fffafe;--color-theme-blue-primary-dark:#c2c8ff;--color-theme-blue-secondary-dark:var(--color-secondary-dark-default);--color-theme-blue-background-dark:var(--color-secondary-dark-default);--color-theme-purple-primary-light:#380037;--color-theme-purple-secondary-light:var(--color-secondary-light-default);--color-theme-purple-background-light:#fffefa;--color-theme-purple-primary-dark:#ebb3ff;--color-theme-purple-secondary-dark:var(--color-secondary-dark-default);--color-theme-purple-background-dark:var(--color-secondary-dark-default);--color-theme-brown-primary-light:#382d00;--color-theme-brown-secondary-light:var(--color-secondary-light-default);--color-theme-brown-background-light:#fcfffa;--color-theme-brown-primary-dark:#f3df91;--color-theme-brown-secondary-dark:var(--color-secondary-dark-default);--color-theme-brown-background-dark:var(--color-secondary-dark-default);--color-primary:var(--color-primary-light);--color-secondary:var(--color-secondary-light);--color-background:var(--color-background-light);--color-shadow-transparent:var(--color-shadow-transparent-light-default);--color-blue:var(--color-blue-light);--color-checkbox:var(--color-checkbox-light);--color-green:var(--color-green-light);--color-highlight:var(--color-secondary);--color-orange:var(--color-orange-light);--color-pink:var(--color-pink-light);--color-shadow:var(--color-primary);--color-warn:var(--color-warn-light);--color-yellow:var(--color-yellow-light);--color-text:var(--color-primary-light-default)}@media (prefers-color-scheme:dark){:root{--color-primary:var(--color-primary-dark);--color-secondary:var(--color-secondary-dark);--color-background:var(--color-background-dark);--color-shadow-transparent:var(--color-shadow-transparent-dark-default);--color-blue:var(--color-blue-dark);--color-checkbox:var(--color-checkbox-dark);--color-green:var(--color-green-dark);--color-highlight:var(--color-primary);--color-orange:var(--color-orange-dark);--color-pink:var(--color-pink-dark);--color-shadow:var(--color-secondary);--color-warn:var(--color-warn-dark);--color-yellow:var(--color-yellow-dark);--color-text:var(--color-primary-dark-default)}}[data-theme=light]{--color-primary:var(--color-primary-light);--color-secondary:var(--color-secondary-light);--color-background:var(--color-background-light);--color-shadow-transparent:var(--color-shadow-transparent-light-default);--color-blue:var(--color-blue-light);--color-checkbox:var(--color-checkbox-light);--color-green:var(--color-green-light);--color-highlight:var(--color-secondary);--color-orange:var(--color-orange-light);--color-pink:var(--color-pink-light);--color-shadow:var(--color-primary);--color-warn:var(--color-warn-light);--color-yellow:var(--color-yellow-light);--color-text:var(--color-primary-light-default)}[data-theme=dark]{--color-primary:var(--color-primary-dark);--color-secondary:var(--color-secondary-dark);--color-background:var(--color-background-dark);--color-shadow-transparent:var(--color-shadow-transparent-dark-default);--color-blue:var(--color-blue-dark);--color-checkbox:var(--color-checkbox-dark);--color-green:var(--color-green-dark);--color-highlight:var(--color-primary);--color-orange:var(--color-orange-dark);--color-pink:var(--color-pink-dark);--color-shadow:var(--color-secondary);--color-warn:var(--color-warn-dark);--color-yellow:var(--color-yellow-dark);--color-text:var(--color-primary-dark-default)}@media print{:root,[data-theme=light],[data-theme=dark]{--color-primary:var(--color-primary-light-default);--color-secondary:white;--color-background:white;--color-shadow-transparent:transparent;--color-blue:var(--color-blue-light);--color-checkbox:var(--color-checkbox-light);--color-green:var(--color-green-light);--color-orange:var(--color-orange-light);--color-pink:var(--color-pink-light);--color-warn:var(--color-warn-light);--color-yellow:var(--color-yellow-light)}}.warn{--color-primary:var(--color-warn);--color-primary-dark-override:var(--color-warn);--color-primary-light-override:var(--color-warn)}.success{--color-primary:var(--color-green);--color-primary-dark-override:var(--color-green);--color-primary-light-override:var(--color-green)}.dev{--color-primary:var(--color-orange);--color-primary-dark-override:var(--color-orange);--color-primary-light-override:var(--color-orange)}@font-face{font-family:dr;font-display:swap;font-weight:300;src:url(/fonts/dr/light/dr-light.woff2)format("woff2"),url(/fonts/dr/light/dr-light.woff)format("woff")}@font-face{font-family:dr;font-display:swap;font-weight:400;src:url(/fonts/dr/regular/dr-regular.woff2)format("woff2"),url(/fonts/dr/regular/dr-regular.woff)format("woff")}@font-face{font-family:dr;font-display:swap;font-weight:500;src:url(/fonts/dr/medium/dr-medium.woff2)format("woff2"),url(/fonts/dr/medium/dr-medium.woff)format("woff")}@font-face{font-family:dr;font-display:swap;font-weight:700;src:url(/fonts/dr/bold/dr-bold.woff2)format("woff2"),url(/fonts/dr/bold/dr-bold.woff)format("woff")}@font-face{font-family:dr;font-display:swap;font-weight:900;src:url(/fonts/dr/black/dr-black.woff2)format("woff2"),url(/fonts/dr/black/dr-black.woff)format("woff")}@font-face{font-family:dm;font-display:swap;font-weight:300;src:url(/fonts/dm/light/dm-light.woff2)format("woff2"),url(/fonts/dm/light/dm-light.woff)format("woff")}@font-face{font-family:dm;font-display:swap;font-weight:400;src:url(/fonts/dm/regular/dm-regular.woff2)format("woff2"),url(/fonts/dm/regular/dm-regular.woff)format("woff")}@font-face{font-family:dm;font-display:swap;font-weight:400;src:url(/fonts/dm/regular/dm-regular-italic.woff2)format("woff2"),url(/fonts/dm/regular/dm-regular-italic.woff)format("woff")}@font-face{font-family:dm;font-display:swap;font-weight:500;src:url(/fonts/dm/medium/dm-medium.woff2)format("woff2"),url(/fonts/dm/medium/dm-medium.woff)format("woff")}@font-face{font-family:dm;font-display:swap;font-weight:500;src:url(/fonts/dm/bold/dm-bold.woff2)format("woff2"),url(/fonts/dm/bold/dm-bold.woff)format("woff")}@font-face{font-family:lilex;font-display:swap;font-weight:300;src:url(/fonts/lilex-light.woff2) format("woff2"),}@font-face{font-family:lilex;font-display:swap;font-weight:400;src:url(/fonts/lilex-reg.woff2) format("woff2"),}@font-face{font-family:lilex;font-display:swap;font-weight:500;src:url(/fonts/lilex-med.woff2) format("woff2"),}@font-face{font-family:lilex;font-display:swap;font-weight:700;src:url(/fonts/lilex-bold.woff2) format("woff2"),}:root{--button-height-large:3rem;--gap-large:2rem;--gap:.25rem;--line:.07rem;--radius:.09rem;--opacity:.06;--shadow-depth-large:.4rem;--shadow-depth:.25rem;--shadow-depth-recess:.25rem;--shadow-paper-depth:.15rem;--shadow-paper:0 var(--shadow-paper-depth) 0 0 var(--color-shadow-transparent);--logo-size:2.25rem;--transition-duration:.1s;--animation-duration:1.25s;--smooth-func:cubic-bezier(.4, 0, .2, 1)}.button-primary{--button-color-primary:var(--color-primary);--button-color-secondary:var(--color-secondary);--button-shadow-depth:var(--shadow-depth);--button-bottom-margin:var(--shadow-depth);background-color:var(--button-color-secondary);border-radius:var(--radius);border:var(--line) solid var(--button-color-primary);box-shadow:0 var(--button-shadow-depth) var(--button-color-primary);color:var(--button-color-primary);fill:var(--button-color-primary);margin-bottom:calc(var(--button-bottom-margin) + .5 * var(--line));gap:var(--gap);text-align:center;min-height:1.6rem;transition-duration:var(--transition-duration);transition-property:all;transition-timing-function:var(--smooth-func);white-space:nowrap;flex:1;padding:0 .4rem .1rem;font-family:lilex,monospace;font-size:1rem;font-weight:300;line-height:1;text-decoration:none}.button-primary.square{width:2rem;max-width:2rem}a.button-primary{justify-content:center;align-items:center;display:flex}a.button-primary p{font-family:lilex,monospace;font-weight:300}.button-primary:hover{background-color:var(--button-color-primary);box-shadow:0 var(--button-shadow-depth) var(--button-color-primary);color:var(--button-color-secondary);fill:var(--button-color-secondary)}.button-primary:active{background-color:var(--button-color-primary);box-shadow:none;color:var(--button-color-secondary);fill:var(--button-color-secondary);transform:translateY(var(--button-shadow-depth));outline:none}.button-primary:disabled{background-color:var(--button-color-secondary);box-shadow:none;color:var(--button-color-primary);fill:var(--button-color-primary);transform:translateY(var(--button-shadow-depth));outline:none}.button-primary:focus-visible{background-color:var(--button-color-primary);color:var(--button-color-secondary);fill:var(--button-color-secondary);outline:none}.button-warn{--button-color-primary:var(--color-warn)}.button-success{--button-color-primary:var(--color-green)}.button-large{--button-shadow-depth:var(--shadow-depth-large);margin-bottom:var(--shadow-depth-large);min-height:var(--button-height-large);width:100%;font-family:lilex,monospace;font-weight:300}.button-primary.button-large p{font-family:lilex,monospace;font-weight:300}.button-large:active{transform:translateY(var(--shadow-depth-large))}.button-primary:disabled{--button-color-primary:var(--color-primary);color:var(--button-color-primary);background-color:var(--color-background);transform:translateY(var(--button-shadow-depth));box-shadow:none}.button-box{gap:var(--gap);flex-direction:row;width:100%;display:flex}.button-box button{width:100%}@media print{.button-box{display:none}}.field{background-color:var(--color-secondary);border-radius:var(--radius);border:var(--line) solid var(--color-primary);color:var(--color-primary);font-family:lilex,monospace;font-weight:300;font-size:inherit;box-shadow:var(--shadow-paper) inset;transition-duration:var(--transition-duration);padding:.25rem .5rem;line-height:1;transition-property:all}.field:hover{outline:var(--line) solid var(--color-primary);border:var(--line) solid var(--color-primary);outline-offset:0}.field:focus{outline:var(--line) solid var(--color-warn);border:var(--line) solid var(--color-warn);outline-offset:0}.field:read-only{color:var(--color-primary);background:var(--color-background)}.field::placeholder{color:var(--color-primary)}input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield}input[type=checkbox]{accent-color:var(--color-primary)}input[type=checkbox]:hover,input[type=checkbox]:focus{outline:none}.task-list-item{align-items:center;gap:.5rem;margin-left:0;line-height:1.5;list-style-type:none}.task-list-item input[type=checkbox]{appearance:none;font:inherit;border:var(--line) solid var(--color-primary);border-radius:var(--radius);place-content:center;width:1em;height:1em;margin:0;display:inline-grid}.task-list-item .task-list-item input[type=checkbox]{margin-left:1rem}.task-list-item input[type=checkbox]:checked{background-color:var(--color-primary);border-color:var(--color-secondary);border:var(--line) solid var(--color-primary)}.task-list-item input[type=checkbox]:checked:before{content:"";background-color:var(--color-secondary);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%);width:.7em;height:.7em}input:-webkit-autofill{-webkit-box-shadow:0 0 0 30px var(--color-secondary) inset!important}input:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 30px var(--color-secondary) inset!important}input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 30px var(--color-secondary) inset!important}input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--color-secondary) inset!important}select{background-color:var(--color-secondary);border-radius:var(--radius);border:var(--line) solid var(--color-primary);color:var(--color-primary);padding:.25rem .5rem;font-family:lilex,monospace;font-size:1rem;font-weight:300;line-height:1}select:hover{background-color:var(--color-primary);color:var(--color-secondary);opacity:.75}textarea{background-color:var(--color-secondary);border-radius:var(--radius);border:var(--line) solid var(--color-primary);color:var(--color-primary);width:100%;box-shadow:var(--shadow-paper) inset;transition-duration:var(--transition-duration);padding:.5rem;font-family:lilex,monospace;font-size:1rem;font-weight:300;line-height:1.25;transition-property:all}textarea:hover{outline:var(--line) solid var(--color-primary);border:var(--line) solid var(--color-primary);outline-offset:0}textarea:focus{outline:var(--line) solid var(--color-warn);border:var(--line) solid var(--color-warn);outline-offset:0}textarea:read-only{background:var(--color-background)}textarea::placeholder{color:var(--color-primary)}.styled-scrollbars{scrollbar-color:var(--color-primary) transparent}.styled-scrollbars::-webkit-scrollbar{width:10px;height:10px}.styled-scrollbars::-webkit-scrollbar-thumb{background:var(--color-primary)}.styled-scrollbars::-webkit-scrollbar-track{background:0 0}label{justify-content:left;align-items:center;font-family:lilex,monospace;font-weight:300;display:flex}@media (width>=768px){.input-label{flex-wrap:nowrap}}h1{margin-top:0;margin-bottom:0;font-family:dr,sans-serif;font-size:3rem;font-weight:300;line-height:2.75rem}h2{margin-top:1.5rem;margin-bottom:.25rem;font-family:dr,sans-serif;font-size:1.5rem;font-weight:300;line-height:2rem}h3{margin-top:1rem;margin-bottom:0;font-family:dr,sans-serif;font-size:1.25rem;font-weight:300;line-height:1}h4{margin-top:1rem;margin-bottom:0;font-family:dr,sans-serif;font-size:1rem;font-weight:400;line-height:1rem}h2:first-child,h3:first-child,h4:first-child{margin-top:0}@media (width>=768px){h2{scroll-margin-top:5.25rem}}p{text-align:justify;word-break:break-word;font-family:dr,sans-serif;font-size:1rem;font-weight:300;line-height:1.65rem}a{color:inherit;text-decoration-thickness:calc(1.5 * var(--line));font-family:lilex,sans-serif;font-weight:300;text-decoration:underline}a:hover,a:active{color:var(--color-warn)}img{border-radius:var(--radius);border:var(--line) solid var(--color-primary)}html[data-theme=dark] img{filter:invert()}@media (prefers-color-scheme:dark){img{filter:invert()}html[data-theme=light] img{filter:invert(0%)}}li img{margin-top:.5rem;margin-bottom:.5rem}.svg-md{height:6rem;margin:1rem}strong{font-family:dr,sans-serif;font-weight:400}em{font-family:dr,sans-serif;font-style:italic;font-weight:300}ul{line-height:1.25}ul li{margin-bottom:var(--shadow-depth);text-align:left;margin-left:1.5rem;font-family:dr,sans-serif;font-size:1rem;font-weight:300;list-style-type:square}.page ul li:first-child{margin-top:.2rem}ol{margin-left:1rem;font-family:dr,sans-serif;font-weight:300;list-style-type:decimal}li{text-align:left}blockquote{background-color:var(--color-secondary);border-radius:var(--radius);border:var(--line) dashed var(--color-primary);padding:1rem}blockquote p{margin:0;font-family:dr,sans-serif;font-size:1rem;font-style:italic;font-weight:300;line-height:1.25rem}.footnotes{margin-top:1.5rem}.footnotes p{text-align:left}table{border-radius:var(--radius);border:var(--line) solid var(--color-primary);max-width:max-content;box-shadow:var(--shadow-paper);font-family:lilex,monospace;font-weight:300;display:block;overflow-x:auto}table a{font-family:inherit}table strong{font-family:lilex,monospace;font-weight:400}td,th{padding:0 .5rem}td:not(:last-child),th:not(:last-child){border-right:var(--line) solid var(--color-primary)}th{font-family:lilex,monospace;font-weight:500}thead tr,tr:not(:last-child){border-bottom:var(--line) solid var(--color-primary)}tr:hover,tr:hover a{background-color:var(--color-primary);color:var(--color-secondary)}tr:hover code{border-color:var(--color-secondary)}th,th a{background-color:var(--color-primary);color:var(--color-secondary)}mjx-container{justify-content:center;display:inline-flex}mjx-container svg{color:var(--color-primary)}tr:hover mjx-container svg{color:var(--color-secondary)}mjx-container[jax=SVG][display=true].MathJax{margin:var(--gap) 0;text-align:center;display:block}mjx-container[jax=SVG][display=true] svg{margin:0 auto;display:block}hr{border-top-width:var(--line)}.flex-row{gap:var(--gap);flex-direction:row;display:flex}.flex-col{gap:var(--gap);flex-direction:column;display:flex}pre{font-family:inherit}h2:target,h3:target,h4:target,li:target,a:target,th:has(sup>a:target),td:has(sup>a:target),p:has(sup>a:target){animation:fadeInTarget 1s var(--smooth-func)}h3:target,h4:target,li:target,a:target,th:has(sup>a:target),td:has(sup>a:target),p:has(sup>a:target){scroll-margin-top:3em}@keyframes fadeInTarget{0%{opacity:.5;color:currentColor}50%{opacity:1;color:var(--color-warn)}to{opacity:1}}@media print{:root{--color-primary:black;--color-secondary:white;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}h2,h3,h4{break-after:avoid;page-break-after:avoid}pre{break-before:avoid;break-inside:avoid}img{break-inside:avoid}}:root,[data-theme=dark],[data-theme=light]{--astro-code-background:var(--color-secondary);--astro-code-foreground:var(--color-primary);--astro-code-token-comment:var(--color-yellow);--astro-code-token-constant:var(--color-blue);--astro-code-token-function:var(--color-pink);--astro-code-token-keyword:var(--color-green);--astro-code-token-link:var(--color-primary);--astro-code-token-parameter:var(--color-primary);--astro-code-token-punctuation:var(--color-primary);--astro-code-token-string-expression:var(--color-orange);--astro-code-token-string:var(--color-orange)}code{border-radius:var(--radius);border:var(--line) solid var(--color-primary);background-color:var(--color-secondary);padding:.1rem .5rem;font-family:lilex,monospace;font-size:1rem;font-weight:300}code span{box-shadow:none}@media print{code{box-shadow:none}}p code,table code,li code{max-height:max-content;box-shadow:var(--shadow-paper);color:inherit;padding:0 .15rem;font-size:.9rem}td:has(code){padding-bottom:.07rem}tr:has(code):hover code{background-color:var(--color-primary)}pre code{border:none;padding:0}.astro-code{background-color:var(--color-secondary);border-radius:var(--radius);border:var(--line) solid var(--color-primary);box-shadow:var(--shadow-paper) inset;padding:.25rem .5rem;overflow-x:scroll}.astro-code code{background-color:inherit}.paper{outline-offset:calc(-4 * var(--line));box-shadow:var(--shadow-paper);margin-bottom:calc(var(--shadow-paper-depth) + .5 * var(--line))}@media print{.paper{box-shadow:none;outline:none}}.input-shadow{box-shadow:var(--shadow-paper) inset}.typed-out{width:0;animation:.5s steps(20,end) forwards typing;overflow:hidden}@keyframes typing{0%{width:0}to{width:100%;overflow:visible}}.round-border{border:var(--line) solid var(--color-primary);border-radius:var(--radius)}:root{--opacity-disabled:.25}@media (scripting:none){.no-js-hide{opacity:var(--opacity-disabled)}}.no-js .no-js-hide{opacity:var(--opacity-disabled)}.yes-js .no-js-hide{opacity:1}@media (scripting:enabled){.no-js-show{display:none}}.yes-js .no-js-show{display:none}.no-js .no-js-show{color:var(--color-warn);display:block}html{font-family:dr,sans-serif;font-weight:300}
