*,*:before,*:after{box-sizing:border-box}html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul[role=list],ol[role=list]{list-style:none}body{min-height:100vh;line-height:1.5}h1,h2,h3,h4,button,input,label{line-height:1.1}h1,h2,h3,h4{text-wrap:balance}a:not([class]){text-decoration-skip-ink:auto;color:currentColor}a{color:currentColor;text-decoration-skip-ink:auto}img,picture{max-width:100%;display:block}input,button,textarea,select{font-family:inherit;font-size:inherit}textarea:not([rows]){height:10em}:target{scroll-margin-block:5ex}@font-face{font-family:Anonymous Pro;font-style:normal;src:url(/fonts/AnonymousPro-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Anonymous Pro;font-style:italic;src:url(/fonts/AnonymousPro-Italic.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Anonymous Pro;font-style:normal;src:url(/fonts/AnonymousPro-Bold.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Anonymous Pro;font-style:italic;src:url(/fonts/AnonymousPro-BoldItalic.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Martian Mono;font-style:normal;src:url(/fonts/MartianMono-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Martian Mono;font-style:normal;src:url(/fonts/MartianMono-Bold.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Open Sans;font-style:normal;src:url(/fonts/OpenSans-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Open Sans;font-style:italic;src:url(/fonts/OpenSans-Italic.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Open Sans;font-style:normal;src:url(/fonts/OpenSans-Bold.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Open Sans;font-style:italic;src:url(/fonts/OpenSans-BoldItalic.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:"Libertinus Serif";font-style:normal;src:url(/fonts/LibertinusSerifDisplay-Regular.ttf) format("truetype");font-weight:700;font-display:swap}:root{--color-yale-blue: #0f408a;--color-yale-blue-light: #c8dcf9;--color-primary-dark: #1e3266;--color-mid: #065a82;--color-light: #fafafa;--color-dark: #2b2b2b;--color-grey-1: #7f7f7f;--color-primary-green: #5be584;--color-primary-green-dark: #199f41;--color-primary-green-light: #ebffee;--color-focus-outline: #1e90ff}:root{--size-step--2: clamp(.434rem, .3902rem + .2191vw, .56rem);--size-step--1: clamp(.5208rem, .4585rem + .3116vw, .7rem);--size-step-0: clamp(.625rem, .538rem + .4348vw, .875rem);--size-step-1: clamp(.75rem, .6304rem + .5978vw, 1.0938rem);--size-step-2: clamp(.9rem, .7375rem + .8125vw, 1.3672rem);--size-step-3: clamp(1.08rem, .8612rem + 1.0939vw, 1.709rem);--size-step-4: clamp(1.296rem, 1.0037rem + 1.4613vw, 2.1362rem);--size-step-5: clamp(1.5552rem, 1.1673rem + 1.9393vw, 2.6703rem);--size-step-6: clamp(1.8662rem, 1.3544rem + 2.5593vw, 3.3379rem);--space-3xs: clamp(.1875rem, .1658rem + .1087vw, .25rem);--space-2xs: clamp(.3125rem, .269rem + .2174vw, .4375rem);--space-xs: clamp(.5rem, .4348rem + .3261vw, .6875rem);--space-s: clamp(.625rem, .538rem + .4348vw, .875rem);--space-m: clamp(.9375rem, .8071rem + .6522vw, 1.3125rem);--space-l: clamp(1.25rem, 1.0761rem + .8696vw, 1.75rem);--space-xl: clamp(1.875rem, 1.6141rem + 1.3043vw, 2.625rem);--space-2xl: clamp(2.5rem, 2.1522rem + 1.7391vw, 3.5rem);--space-3xl: clamp(3.75rem, 3.2283rem + 2.6087vw, 5.25rem);--space-3xs-2xs: clamp(.1875rem, .1005rem + .4348vw, .4375rem);--space-2xs-xs: clamp(.3125rem, .1821rem + .6522vw, .6875rem);--space-xs-s: clamp(.5rem, .3696rem + .6522vw, .875rem);--space-s-m: clamp(.625rem, .3859rem + 1.1957vw, 1.3125rem);--space-m-l: clamp(.9375rem, .6549rem + 1.413vw, 1.75rem);--space-l-xl: clamp(1.25rem, .7717rem + 2.3913vw, 2.625rem);--space-xl-2xl: clamp(1.875rem, 1.3098rem + 2.8261vw, 3.5rem);--space-2xl-3xl: clamp(2.5rem, 1.5435rem + 4.7826vw, 5.25rem);--space-s-l: clamp(.625rem, .2337rem + 1.9565vw, 1.75rem);--gutter: var(--space-xl);--transition-base: .25s ease;--transition-movement: .2s linear;--transition-fade: .3s ease;--transition-bounce: .5s cubic-bezier(.5, .05, .2, 1.5);--stroke: 1px dashed var(--color-mid);--stroke-solid: 1px solid var(--color-mid);--radius-s: .2rem;--radius-m: .75rem;--radius-l: 2.5rem;--uppercase-kerning: .04ch;--font-base: "Martian Mono";--font-mono: "Martian Mono";--font-bold: 700;--font-medium: 400}body{color:var(--color-dark);font-size:var(--size-step-1);font-family:var(--font-base);line-height:var(--leading-standard);margin:0}@media print{@page{size:A4}*{box-sizing:border-box}html{height:auto;width:auto}body{height:auto;margin:0;padding:0;overflow:visible;scale:1}}:is(textarea){resize:vertical}button{border:2px solid black;min-height:2.5cap;border-radius:var(--radius-s);cursor:pointer;padding:var(--space-2xs) var(--space-xs);border:solid transparent;transition:border .2s,filter .2s,background .2s}button:hover{filter:brightness(.95)}button.dark:hover{filter:brightness(1.1)}button:active{border:solid black}.center{box-sizing:content-box;margin-inline:auto;max-inline-size:80ch;padding-inline-start:var(--spacing-s);padding-inline-end:var(--spacing-s);display:flex;flex-direction:column}.wrapper{margin-inline:auto;width:var(--wrapper-max-width, 1360px);padding-left:var(--gutter);padding-right:var(--gutter);position:relative}.repel{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:var(--repel-vertical-alignment, center);gap:var(--gutter, var(--space-m))}.repel[data-nowrap]{flex-wrap:nowrap}.flow>*+*{margin-block-start:var(--flow-space, 1em)}.region{padding-block:var(--region-space, var(--space-m));position:relative}.prose{--flow-space: var(--space-s);line-height:1.6;max-width:50rem}code[class*=language-],pre[class*=language-]{color:#000;background:none;text-shadow:0 1px white;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{text-shadow:none;background:#b3d4fc}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color:#905}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#690}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string{color:#9a6e3a;background:#ffffff80}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.function,.token.class-name{color:#dd4a68}.token.regex,.token.important,.token.variable{color:#e90}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}code-input{display:block;overflow-y:auto;overflow-x:auto;position:relative;top:0;left:0;color:#000;background-color:#fff;margin:8px;--padding: 16px;--padding-left: var(--padding, 16px);--padding-right: var(--padding, 16px);--padding-top: var(--padding, 16px);--padding-bottom: var(--padding, 16px);height:250px;font-size:inherit;font-family:monospace;text-align:start;line-height:1.5;tab-size:2;caret-color:#a9a9a9;white-space:pre;padding:0!important;display:grid;grid-template-columns:100%;grid-template-rows:100%}code-input *{box-sizing:content-box}code-input textarea,code-input:not(.code-input_pre-element-styled) pre code,code-input.code-input_pre-element-styled pre{margin:0!important;padding-left:var(--padding-left, 16px)!important;padding-right:var(--padding-right, 16px)!important;padding-top:var(--padding-top, 16px)!important;padding-bottom:var(--padding-bottom, 16px)!important;border:0;min-width:calc(100% - var(--padding-left, 16px) - var(--padding-right, 16px));min-height:calc(100% - var(--padding-top, 16px) - var(--padding-bottom, 16px));overflow:hidden;resize:none;grid-row:1;grid-column:1;display:block}code-input:not(.code-input_pre-element-styled) pre code,code-input.code-input_pre-element-styled pre{height:max-content;width:max-content}code-input:not(.code-input_pre-element-styled) pre,code-input.code-input_pre-element-styled pre code{margin:0!important;padding:0!important;border:0!important}code-input textarea,code-input pre,code-input pre *{font-size:inherit!important;font-family:inherit!important;line-height:inherit!important;tab-size:inherit!important;text-align:inherit!important}code-input textarea[dir=auto]+pre{unicode-bidi:plaintext}code-input textarea[dir=ltr]+pre{direction:ltr}code-input textarea[dir=rtl]+pre{direction:rtl}code-input textarea,code-input pre{grid-column:1;grid-row:1}code-input textarea:not([data-code-input-fallback]){z-index:1}code-input pre{z-index:0}code-input textarea:not([data-code-input-fallback]){color:transparent;background:transparent;caret-color:inherit!important}code-input textarea::placeholder{color:#d3d3d3}code-input textarea,code-input pre{white-space:inherit;word-spacing:normal;word-break:normal;word-wrap:normal}code-input textarea{resize:none;outline:none!important}code-input:has(textarea:focus):not(.code-input_mouse-focused){outline:2px solid currentColor}code-input .code-input_dialog-container{z-index:2;position:sticky;grid-row:1;grid-column:1;top:0;left:0;margin:0;padding:0;height:0;width:100%;text-align:inherit}[dir=rtl] code-input .code-input_dialog-container,code-input[dir=rtl] .code-input_dialog-container{left:unset;right:0}code-input .code-input_dialog-container .code-input_keyboard-navigation-instructions{display:block;position:absolute;top:0;left:0;background-color:#000;color:#fff;padding:2px;padding-left:var(--padding-left, 16px);padding-right:var(--padding-right, 16px);margin:0;text-wrap:balance;overflow-x:hidden;overflow-y:auto;width:100%;box-sizing:border-box;height:3em}code-input:not(:has(textarea:not([data-code-input-fallback]):focus)) .code-input_dialog-container .code-input_keyboard-navigation-instructions,code-input.code-input_mouse-focused .code-input_dialog-container .code-input_keyboard-navigation-instructions,code-input .code-input_dialog-container .code-input_keyboard-navigation-instructions:empty{display:none}code-input:not(:has(.code-input_keyboard-navigation-instructions:empty)):has(textarea:not([data-code-input-fallback]):focus):not(.code-input_mouse-focused) textarea,code-input:not(:has(.code-input_keyboard-navigation-instructions:empty)):has(textarea:not([data-code-input-fallback]):focus):not(.code-input_mouse-focused):not(.code-input_pre-element-styled) pre code,code-input:not(:has(.code-input_keyboard-navigation-instructions:empty)):has(textarea:not([data-code-input-fallback]):focus):not(.code-input_mouse-focused).code-input_pre-element-styled pre{padding-top:calc(var(--padding-top, 16px) + 3em)!important;min-height:calc(100% - var(--padding-top, 16px) - 3em - var(--padding-bottom, 16px))}code-input:not(.code-input_loaded){padding-left:var(--padding-left, 16px)!important;padding-right:var(--padding-right, 16px)!important;padding:var(--padding-top, 16px)!important;padding:var(--padding-bottom, 16px)!important;overflow:hidden;display:block;box-sizing:border-box}code-input:not(.code-input_loaded):after{content:"No highlighting. JavaScript support is disabled or insufficient, or codeInput.registerTemplate has not been called.";display:block;position:absolute;bottom:0;left:var(--padding-left, 16px);width:calc(100% - var(--padding-left, 1.6px) - var(--padding-right, 1.6px));overflow-x:auto;border-top:1px solid currentColor;outline-top:0;background-color:inherit;color:inherit;margin:0;padding:0;height:2em}code-input:not(.code-input_loaded) pre,code-input:not(.code-input_loaded) textarea:not([data-code-input-fallback]){opacity:0}code-input:has(textarea[data-code-input-fallback]){padding:0!important;box-sizing:content-box}code-input textarea[data-code-input-fallback]{overflow:auto;background-color:inherit;color:inherit;min-height:calc(100% - var(--padding-top, 16px) - 2em - var(--padding-bottom, 16px))}
