*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}:before,:after{--tw-content: ""}html{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,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",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)}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}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-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;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;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;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,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,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)}button,[role=button]{cursor:pointer}:disabled{cursor:default}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: hsl(222, 47%, 11%);--color-secondary-light-default: hsl(0, 0%, 100%);--color-background-light-default: hsl(0, 0%, 98%);--color-shadow-transparent-light-default: hsla(0, 0%, 0%, .1);--color-primary-dark-default: hsl(213, 27%, 84%);--color-secondary-dark-default: hsl(0, 0%, 3%);--color-background-dark-default: var(--color-secondary-dark-default);--color-shadow-transparent-dark-default: hsla(0, 0, 0, 0)}:root{--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}:root{--color-theme-green-primary-light: hsl(120, 100%, 11%);--color-theme-green-secondary-light: var(--color-secondary-light-default);--color-theme-green-background-light: hsl(264, 100%, 98%);--color-theme-green-primary-dark: hsl(118, 82%, 82%);--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: hsl(245, 100%, 11%);--color-theme-blue-secondary-light: var(--color-secondary-light-default);--color-theme-blue-background-light: hsl(306, 100%, 98%);--color-theme-blue-primary-dark: hsl(234, 100%, 88%);--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: hsl(301, 100%, 11%);--color-theme-purple-secondary-light: var(--color-secondary-light-default);--color-theme-purple-background-light: hsl(54, 100%, 98%);--color-theme-purple-primary-dark: hsl(284.2, 100%, 85%);--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: hsl(48, 100%, 11%);--color-theme-brown-secondary-light: var(--color-secondary-light-default);--color-theme-brown-background-light: hsl(90, 100%, 98%);--color-theme-brown-primary-dark: hsl(48, 80%, 76%);--color-theme-brown-secondary-dark: var(--color-secondary-dark-default);--color-theme-brown-background-dark: var(--color-secondary-dark-default)}:root{--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)}@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)}}[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)}[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)}@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-light;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-regular;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-medium;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-bold;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-black;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-regular;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-regular-italic;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-medium;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-bold;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")}:root{--button-height-large: 3rem;--gap-large: 2rem;--gap: .25rem;--line: .07rem;--radius: .15rem;--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);flex:1 1 0%;font-family:dm-regular,monospace;font-size:1rem;line-height:1;margin-bottom:calc(var(--button-bottom-margin) + .5 * var(--line));min-height:2rem;padding:0 .4rem;gap:var(--gap);text-align:center;text-decoration:none;transition-duration:var(--transition-duration);transition-property:all;transition-timing-function:var(--smooth-func);white-space:nowrap}.htmx-indicator{display:block;opacity:1;visibility:visible}.button-primary.square{width:2rem;max-width:2rem;font-family:dm-bold,monospace}a.button-primary{align-items:center;display:flex;justify-content:center}a.button-primary p{font-family:dm-regular,monospace}.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);outline:none;transform:translateY(var(--button-shadow-depth))}.button-primary:disabled{background-color:var(--button-color-secondary);box-shadow:none;color:var(--button-color-primary);fill:var(--button-color-primary);outline:none;transform:translateY(var(--button-shadow-depth))}.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);font-family:dm-medium,monospace;width:100%}.button-primary.button-large p{font-family:dm-medium,monospace}nav .button-primary{min-height:1.75rem}.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{display:flex;flex-direction:row;gap:var(--gap);width:100%}.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:dm-regular,monospace;font-size:inherit;line-height:1;padding:.25rem .5rem;box-shadow:var(--shadow-paper) inset;transition-duration:var(--transition-duration);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,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;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;list-style-type:none;margin-left:0;font-size:1rem;line-height:1.5}.task-list-item input[type=checkbox]{appearance:none;-webkit-appearance:none;margin:0;font:inherit;width:1em;height:1em;border:var(--line) solid var(--color-primary);border-radius:var(--radius);display:grid;place-content:center;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:"";width:.7em;height:.7em;background-color:var(--color-secondary);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%)}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,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);font-family:dm-regular,monospace;font-size:1rem;line-height:1;padding:.25rem .5rem}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);font-family:dm-regular,monospace;font-size:1rem;line-height:1.25;padding:.5rem;width:100%;box-shadow:var(--shadow-paper) inset;transition-duration:var(--transition-duration);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:transparent}label{align-items:center;display:flex;font-family:dm-regular,sans-serif;justify-content:left}@media (min-width: 768px){.input-label{flex-wrap:nowrap}}h1{font-family:dr-bold,sans-serif;font-size:3rem;line-height:2.75rem;margin-bottom:0;margin-top:0rem}h2{font-family:dr-bold,sans-serif;font-size:2rem;line-height:2rem;margin-bottom:.25rem;margin-top:1.5rem}h3{font-family:dr-medium,sans-serif;font-size:1.25rem;line-height:1;margin-bottom:0;margin-top:1rem}h4{font-family:dr-medium,sans-serif;font-size:1rem;line-height:1rem;margin-bottom:0;margin-top:1rem}h2:first-child,h3:first-child,h4:first-child{margin-top:0}@media (min-width: 768px){h2{scroll-margin-top:5.25rem}}p{font-family:dr-regular,sans-serif;font-size:1rem;line-height:1.65rem;text-align:justify;word-break:break-word}a{color:inherit;font-family:dm-regular,sans-serif;text-decoration-thickness:calc(1.5 * var(--line));text-decoration:underline}img{border-radius:var(--radius);border:var(--line) solid var(--color-primary)}li img{margin-bottom:.5rem;margin-top:.5rem}.svg-md{height:6rem;margin:1rem}strong{font-family:dr-bold,sans-serif}em{font-family:dm-regular,sans-serif;font-style:italic}ul{line-height:1.5}ul li{font-family:dr-regular,sans-serif;font-size:1rem;list-style-type:square;margin-bottom:var(--shadow-depth);margin-left:1.5rem;text-align:left}.page ul li:first-child{margin-top:.2rem}ol{font-family:dr-regular,sans-serif;list-style-type:decimal;margin-left:1rem}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{font-family:dr-regular,sans-serif;font-size:1rem;font-style:italic;line-height:1.25rem;margin:0}.footnotes{margin-top:1.5rem}.footnotes p{text-align:left}table{border-radius:var(--radius);border:var(--line) solid var(--color-primary);display:block;font-family:dm-regular,monospace;max-width:max-content;overflow-x:auto;box-shadow:var(--shadow-paper)}table a{font-family:inherit}table strong{font-family:dm-medium,monospace}td,th{padding:0 .5rem}td:not(:last-child),th:not(:last-child){border-right:var(--line) solid var(--color-primary)}thead tr{border-bottom:var(--line) solid var(--color-primary)}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{display:inline-flex;justify-content:center}mjx-container svg{color:var(--color-primary)}tr:hover mjx-container svg{color:var(--color-secondary)}mjx-container[jax=SVG][display=true].MathJax{display:block;margin:var(--gap) 0;text-align:center}mjx-container[jax=SVG][display=true] svg{display:block;margin:0 auto}hr{border-top-width:var(--line)}.flex-row{display:flex;flex-direction:row;gap:var(--gap)}.flex-col{display:flex;flex-direction:column;gap:var(--gap)}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-color-background: var(--color-secondary);--astro-code-color-text: 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);font-family:dm-regular,monospace;font-size:1rem;padding:.1rem .5rem}code span{box-shadow:none}@media print{code{box-shadow:none}}p code,table code,li code{padding:0 .15rem;font-size:.9rem;max-height:max-content;box-shadow:var(--shadow-paper)}td:has(code){padding-bottom:.07rem}pre code{border:none;padding:0}.astro-code{background-color:var(--color-secondary);border-radius:var(--radius);border:var(--line) solid var(--color-primary);padding:.25rem .5rem;box-shadow:var(--shadow-paper) inset}.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{outline:none;box-shadow:none}}.input-shadow{box-shadow:var(--shadow-paper) inset}.typed-out{overflow:hidden;animation:typing .5s steps(20,end) forwards;width:0}@keyframes typing{0%{width:0}to{width:100%;overflow:visible}}.round-border{border:var(--line) solid var(--color-primary);border-radius:var(--radius)}@media (scripting: none){.no-js-hide{opacity:.25}}.no-js-show{color:var(--color-warn)}@media (scripting: enabled){.no-js-show{display:none!important}}
