:root{--ff-sans:ui-sans-serif,sans-serif;--ff-serif:ui-serif,serif;--ff-mono:ui-monospace,monospace;--ff:var(--ff-sans);--fs:100%;--lh:calc(1em + 0.5rem);--t-scale:1.25;--h1:calc(var(--h2)*var(--t-scale));--h2:calc(var(--h3)*var(--t-scale));--h3:calc(var(--h4)*var(--t-scale));--h4:calc(var(--h5)*var(--t-scale));--h5:calc(var(--fs)*var(--t-scale));--h6:var(--fs);--line:1px solid light-dark(#ddd,#444);--h-input:2.5rem;--r-input:0.25rem;--p-cell:0.5em 1em;--bg-code:light-dark(#eee,#333);--t-input:CanvasText;--bg-input:light-dark(#f5f5f5,#252525);--t-button:#fff;--bg-button:light-dark(#ccc,#333)}html{color-scheme:light dark;text-size-adjust:none}*,:after,:before{box-sizing:border-box}body{font-family:var(--ff);font-optical-sizing:auto;font-size:var(--fs);margin:0;min-height:100dvh;-webkit-font-smoothing:antialiased;line-height:var(--lh);text-rendering:optimizeLegibility}canvas,img,picture,svg,video{display:block;max-width:100%}iframe{border:0}summary{cursor:pointer}:target{scroll-margin-block:5ex}:focus-visible{outline-offset:2px;outline-style:solid;outline-width:2px}.sr-only:not(:focus):not(:active){clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}blockquote,dl,fieldset,figcaption,figure,h1,h2,h3,h4,h5,h6,ol,p,pre,table,ul{line-height:var(--lh);margin-block:0 1rem}h1{font-size:var(--h1)}h2{font-size:var(--h2)}h3{font-size:var(--h3)}h4{font-size:var(--h4)}h5{font-size:var(--h5)}h6{font-size:var(--h6)}ol ol{list-style-type:lower-alpha}ol ol ol{list-style-type:lower-roman}li ol,li ul{margin-bottom:0}hr{border:0;border-top:var(--line);height:0;margin-block:var(--lh);width:100%}code,kbd,samp{font-family:var(--ff-mono);font-style:normal;font-weight:400}code{background-color:var(--bg-code);color:var(--t-code);display:inline-block;padding-inline:.25em}pre{font-style:normal;font-weight:400;white-space:pre}pre,pre code{overflow-x:auto}pre code{background-color:var(--bg-code);display:block;padding:1em}fieldset{border:var(--line)}fieldset,label,legend{font-family:var(--ff-sans)}::placeholder{color:var(--t-input);opacity:.8}input,select,textarea{background-color:var(--bg-input);border:var(--line);border-radius:var(--r-input);color:var(--t-input);font-family:inherit;font-size:inherit;min-height:var(--h-input);outline:0 none;padding:var(--p-cell);text-align:start}[type=color],select:not([multiple]){height:var(--h-input)}[type=color]{padding:.25em;width:var(--h-input)}[type=checkbox],[type=radio]{display:inline;height:1em;min-height:unset;width:1.05em}[type=search]{-webkit-appearance:textfield;appearance:textfield}:disabled:hover{cursor:not-allowed}textarea:not([rows]){min-height:6em}.btn,button,input:is([type=button],[type=submit],[type=reset]){align-items:center;background-color:var(--bg-button);border:1px solid transparent;border-radius:var(--r-input);color:contrast-color(var(--bg-button));cursor:pointer;display:inline-flex;font-family:var(--ff-sans);font-size:inherit;height:var(--h-input);line-height:1;padding:var(--p-cell);text-align:center;text-decoration:none}input[type=file]::file-selector-button{background-color:var(--bg-button);border:1px solid transparent;border-radius:var(--r-input);color:contrast-color(var(--bg-button))}table{border-collapse:collapse;width:100%}td,th{border:var(--line)}caption,figcaption,td,th{padding:var(--p-cell)}body{display:grid;grid-template-rows:auto auto 1fr auto;&>nav{align-items:center;background-color:Canvas;border-bottom:var(--line);display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;padding:1rem;position:sticky;top:0}&>header{margin-inline:auto;width:min(calc(100% - 2rem),1280px);h1{text-wrap:balance}}&>main{margin:0 auto 2rem;width:min(calc(100% - 2rem),60ch)}&>header{margin-block:clamp(2rem,-4rem + 15vw,5rem);text-align:center}&>main{flex:1}&>footer{padding:1rem;text-align:center}}#nav-skipper{background-color:AccentColor;color:AccentColorText;padding:var(--p-cell)}#site-title{color:canvastext;font-size:1.5rem;font-weight:700;text-decoration:none}#nav-links a{padding:var(--p-cell);&:not(:hover){text-decoration:none}}nav button{flex-direction:column;gap:.125rem;padding:.25rem .5rem;span:last-child{font-size:.625rem;text-transform:uppercase}}