@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-latin-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-latin-ext-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:italic;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-latin-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:italic;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-latin-ext-italic.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--font-family: "JetBrains Mono", monospace;--line-height: 1.2rem;--border-thickness: 2px;--text-color: #000;--text-color-alt: #666;--background-color: #fff;--background-color-alt: #eee;--font-weight-normal: 500;--font-weight-medium: 600;--font-weight-bold: 800;font-family:var(--font-family);font-optical-sizing:auto;font-weight:var(--font-weight-normal);font-style:normal;font-variant-numeric:tabular-nums lining-nums;font-size:16px}@media(prefers-color-scheme:dark){:root{--text-color: #fff;--text-color-alt: #aaa;--background-color: #000;--background-color-alt: #111}}*{box-sizing:border-box}*+*{margin-top:var(--line-height)}html{display:flex;width:100%;margin:0;padding:0;flex-direction:column;align-items:center;background:var(--background-color);color:var(--text-color)}body{position:relative;width:100%;margin:0;padding:var(--line-height) 2ch;max-width:min(80ch,round(down,100%,1ch));line-height:var(--line-height);overflow-x:hidden}@media screen and (max-width:480px){:root{font-size:14px}body{padding:var(--line-height) 1ch}}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);margin:calc(var(--line-height) * 2) 0 var(--line-height);line-height:var(--line-height)}h1{font-size:2rem;line-height:calc(2 * var(--line-height));margin-bottom:calc(var(--line-height) * 2);text-transform:uppercase}h2{font-size:1rem;text-transform:uppercase}hr{position:relative;display:block;height:var(--line-height);margin:calc(var(--line-height) * 1.5) 0;border:none;color:var(--text-color)}hr:after{display:block;content:"";position:absolute;top:calc(var(--line-height) / 2 - var(--border-thickness));left:0;width:100%;border-top:calc(var(--border-thickness) * 3) double var(--text-color);height:0}a{text-decoration-thickness:var(--border-thickness)}a:link,a:visited{color:var(--text-color)}p{margin-bottom:var(--line-height)}strong{font-weight:var(--font-weight-bold)}em{font-style:italic}sub{position:relative;display:inline-block;margin:0;vertical-align:sub;line-height:0;width:calc(1ch / .75);font-size:.75rem}table{position:relative;top:calc(var(--line-height) / 2);width:round(down,100%,1ch);border-collapse:collapse;margin:0 0 calc(var(--line-height) * 2)}th,td{border:var(--border-thickness) solid var(--text-color);padding:.6rem 1ch;line-height:var(--line-height);vertical-align:top;text-align:left}table tbody tr:first-child>*{padding-top:calc((var(--line-height) / 2) - var(--border-thickness))}th{font-weight:700}.width-min{width:0%}.width-auto{width:100%}.header{margin-bottom:calc(var(--line-height) * 2)}.header h1{margin:0}.header tr td:last-child{text-align:right}p{word-break:break-word;word-wrap:break-word;hyphens:auto}img,video{display:block;width:100%;object-fit:contain;overflow:hidden}img{font-style:italic;color:var(--text-color-alt)}details{border:var(--border-thickness) solid var(--text-color);padding:calc(var(--line-height) - var(--border-thickness)) 1ch;margin-bottom:var(--line-height)}summary{font-weight:var(--font-weight-medium);cursor:pointer}details[open] summary{margin-bottom:var(--line-height)}details ::marker{display:inline-block;content:"▶";margin:0}details[open] ::marker{content:"▼"}details :last-child{margin-bottom:0}pre{white-space:pre;overflow-x:auto;margin:var(--line-height) 0;overflow-y:hidden}figure pre{margin:0}pre,code{font-family:var(--font-family)}code{font-weight:var(--font-weight-medium)}figure{margin:calc(var(--line-height) * 2) 3ch;overflow-x:auto;overflow-y:hidden}figcaption{display:block;font-style:italic;margin-top:var(--line-height)}ul,ol{padding:0;margin:0 0 var(--line-height)}ul{list-style-type:square;padding:0 0 0 2ch}ol{list-style-type:none;counter-reset:item;padding:0}ol ul,ol ol,ul ol,ul ul{padding:0 0 0 3ch;margin:0}ol li:before{content:counters(item,".") ". ";counter-increment:item;font-weight:var(--font-weight-medium)}li{margin:0;padding:0}li::marker{line-height:0}::-webkit-scrollbar{height:var(--line-height)}input,button,a.button,textarea{border:var(--border-thickness) solid var(--text-color);padding:calc(var(--line-height) / 2 - var(--border-thickness)) calc(1ch - var(--border-thickness));margin:0;font:inherit;font-weight:inherit;height:calc(var(--line-height) * 2);width:auto;overflow:visible;background:var(--background-color);color:var(--text-color);line-height:normal;-webkit-font-smoothing:inherit;-moz-osx-font-smoothing:inherit;-webkit-appearance:none}input[type=checkbox]{display:inline-grid;place-content:center;vertical-align:top;width:2ch;height:var(--line-height);cursor:pointer}input[type=checkbox]:checked:before{content:"";width:1ch;height:calc(var(--line-height) / 2);background:var(--text-color)}button:focus,a.button:focus,input:focus{--border-thickness: 3px;outline:none}input{width:round(down,100%,1ch)}::placeholder{color:var(--text-color-alt);opacity:1}::-ms-input-placeholder{color:var(--text-color-alt)}button::-moz-focus-inner{padding:0;border:0}button,a.button{text-transform:uppercase;font-weight:var(--font-weight-medium);cursor:pointer}button:hover,a.button:hover{background:var(--background-color-alt)}button:active,a.button:active{transform:translate(2px,2px)}a.button{display:inline-block}label{display:block;width:round(down,100%,1ch);height:auto;line-height:var(--line-height);font-weight:var(--font-weight-medium);margin:0}label input{width:100%}.tree,.tree ul{position:relative;padding-left:0;list-style-type:none;line-height:var(--line-height)}.tree ul{margin:0}.tree ul li{position:relative;padding-left:1.5ch;margin-left:1.5ch;border-left:var(--border-thickness) solid var(--text-color)}.tree ul li:before{position:absolute;display:block;top:calc(var(--line-height) / 2);left:0;content:"";width:1ch;border-bottom:var(--border-thickness) solid var(--text-color)}.tree ul li:last-child{border-left:none}.tree ul li:last-child:after{position:absolute;display:block;top:0;left:0;content:"";height:calc(var(--line-height) / 2);border-left:var(--border-thickness) solid var(--text-color)}.grid{display:grid;gap:1ch;margin-bottom:var(--line-height)}.grid:has(>:last-child:nth-child(1)){grid-template-columns:repeat(1,1fr)}.grid:has(>:last-child:nth-child(2)){grid-template-columns:repeat(2,1fr)}.grid:has(>:last-child:nth-child(3)){grid-template-columns:repeat(3,1fr)}.grid:has(>:last-child:nth-child(4)){grid-template-columns:repeat(4,1fr)}.grid:has(>:last-child:nth-child(5)){grid-template-columns:repeat(5,1fr)}.grid:has(>:last-child:nth-child(6)){grid-template-columns:repeat(6,1fr)}.grid:has(>:last-child:nth-child(7)){grid-template-columns:repeat(7,1fr)}.grid:has(>:last-child:nth-child(8)){grid-template-columns:repeat(8,1fr)}.grid:has(>:last-child:nth-child(9)){grid-template-columns:repeat(9,1fr)}.debug .debug-grid{--color: color-mix(in srgb, var(--text-color) 10%, var(--background-color) 90%);position:absolute;inset:0;z-index:-1;background-image:repeating-linear-gradient(var(--color) 0 1px,transparent 1px 100%),repeating-linear-gradient(90deg,var(--color) 0 1px,transparent 1px 100%);background-size:1ch var(--line-height);margin:0}.debug .off-grid{background:#ff00001a}.debug-toggle-label{text-align:right}.astro-code,.astro-code span{color:var(--shiki-light)}@media(prefers-color-scheme:dark){.astro-code,.astro-code span{color:var(--shiki-dark)}}pre.astro-code{background:var(--background-color);border:var(--border-thickness) solid var(--text-color);padding:calc(var(--line-height) - var(--border-thickness)) 1ch;margin:var(--line-height) 0}details pre.astro-code{border-width:0;padding-inline:0}.code-block{position:relative;margin:var(--line-height) 0}.code-block>pre{margin:0}.code-copy{position:absolute;top:var(--border-thickness);right:var(--border-thickness);width:4ch;height:calc(var(--line-height) - var(--border-thickness));margin:0;padding:0;border:none;border-left:var(--border-thickness) solid var(--text-color);border-bottom:var(--border-thickness) solid var(--text-color);background:var(--background-color);color:var(--text-color);display:grid;place-content:center;cursor:pointer;text-transform:none}details .code-copy{top:0;right:0;border:var(--border-thickness) solid var(--text-color)}.code-copy:hover,.code-copy:focus-visible{background:var(--text-color);color:var(--background-color)}.code-copy svg{display:block;width:1.75ch;height:1.75ch;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:square;stroke-linejoin:miter}
