@charset "UTF-8";.theme-switching *{transition:.2s!important}.svg-inline--fa{width:1em!important;width:var(--fa-width,1em)!important}*{box-sizing:border-box;margin:0;padding:0}.clearfix:after{clear:both;content:"";display:block}:root{scrollbar-color:#3d515c #141b1f;scrollbar-width:auto}:root::-webkit-scrollbar{width:12px}:root::-webkit-scrollbar-track{background:#141b1f;border-radius:6px}:root::-webkit-scrollbar-thumb{background:#33444d;border-radius:6px}:root::-webkit-scrollbar-thumb:hover{background:#3d515c}:root.theme-light{scrollbar-color:#abb5ba #e3e6e8;scrollbar-width:auto}:root.theme-light::-webkit-scrollbar{width:12px}:root.theme-light::-webkit-scrollbar-track{background:#e3e6e8;border-radius:6px}:root.theme-light::-webkit-scrollbar-thumb{background:#b9c1c6;border-radius:6px}:root.theme-light::-webkit-scrollbar-thumb:hover{background:#abb5ba}.background{opacity:.2;z-index:-10}.background,.clicks{height:100vh;inset:0;pointer-events:none;position:fixed;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100vw}@font-face{font-display:swap;font-family:JetBrains Mono;font-weight:400;src:url(./JetBrainsMono-Regular.Dh36KTnx.ttf)}@font-face{font-display:swap;font-family:JetBrains Mono;font-weight:700;src:url(./JetBrainsMono-Bold.DirYFTCx.ttf)}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{background-color:#141b1f;color:#fff;font-family:JetBrains Mono,SF Mono,Monaco,Cascadia Code,Roboto Mono,sans-serif;line-height:1.5;padding:10px;text-wrap:pretty}.theme-light body{background-color:#e3e6e8;color:#000}@keyframes blendIn{0%{filter:blur(30px);letter-spacing:5px}to{filter:blur(0);letter-spacing:1px}}.links{display:flex;gap:1em}.links,.return{padding-left:5px}.return:before{content:"◀ "}a{color:inherit;transition:.2s}a:hover{opacity:.8}.section-link{opacity:0;-webkit-text-decoration:none;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.section-heading:hover .section-link{opacity:.5}.section-heading .section-link:focus,.section-heading .section-link:hover{opacity:.8}.container .cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));grid-gap:20px;gap:20px;margin-top:1rem}.information{bottom:0;left:0;padding:5px;position:absolute}.information>a,.information>span{display:inline-block;opacity:.5;transition:.2s;vertical-align:bottom}.information>a:hover,.information>span:hover{opacity:.8}.information .tag{max-width:1em;overflow:hidden;text-wrap:nowrap;white-space:nowrap}.information .tag:hover{max-width:calc(100em + 2px);max-width:calc(var(--tag-width, 100)*1em + 2px)}.information .iconfont:before{margin-right:2px}.contents{margin:auto;width:90%}@keyframes jump{0%{filter:blur(1px);opacity:0;transform:translate(-50%,20px)}80%{filter:blur(0);opacity:1;transform:translate(-50%,-20px)}to{filter:blur(1px);opacity:0;transform:translate(-50%,-20px)}}.clicks .click{animation:jump .8s forwards;position:absolute}code,pre{background:#ffffff1a;border-radius:4px;font-family:inherit;font-size:14px;padding:2px 4px}.theme-light code,.theme-light pre{background:#5c69701a}pre{overflow:auto}pre code{background-color:transparent;background-color:initial;cursor:auto;padding:0}pre{scrollbar-color:#3d515c #253137;scrollbar-width:thin}pre::-webkit-scrollbar{height:6px}pre::-webkit-scrollbar-track{background:#253137;border-radius:3px}pre::-webkit-scrollbar-thumb{background:#314149;border-radius:3px}pre::-webkit-scrollbar-thumb:hover{background:#3d515c}.theme-light pre{scrollbar-color:#abb5ba #cdd2d6;scrollbar-width:thin}.theme-light pre::-webkit-scrollbar{height:6px}.theme-light pre::-webkit-scrollbar-track{background:#cdd2d6;border-radius:3px}.theme-light pre::-webkit-scrollbar-thumb{background:#bcc4c8;border-radius:3px}.theme-light pre::-webkit-scrollbar-thumb:hover{background:#abb5ba}.shiki span{color:var(--shiki-dark)!important}.theme-light .shiki span{color:var(--shiki-light)!important}li,ol,p,ul{margin-bottom:.5em;margin-left:1em;margin-top:.5em}.banner{height:60vh;min-height:250px;position:relative;text-align:center;transition:.2s}.banner .mask{background-color:#00000080;inset:0;position:absolute;transition:.2s}.banner:hover{text-shadow:0 0 10px rgba(0,0,0,.5)}.banner:hover .mask{background-color:transparent;border-bottom:8px solid #fff;border-top:8px solid #fff}.banner h2{font-size:2em;letter-spacing:2px;margin-bottom:20px}.banner .contents{align-items:center;display:flex;flex-direction:column;font-size:1.2em;justify-content:center;inset:0;position:absolute;z-index:1}@keyframes colorful{to{filter:hue-rotate(1turn)}}.banner:last-of-type{animation:colorful 10s infinite}img{max-width:100%}.search-description{font-style:italic;opacity:.8}.visually-hidden{display:none;visibility:hidden}:host,:root{--fa-font-solid:normal 900 1em/1 "Font Awesome 7 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 7 Free";--fa-font-light:normal 300 1em/1 "Font Awesome 7 Pro";--fa-font-thin:normal 100 1em/1 "Font Awesome 7 Pro";--fa-font-duotone:normal 900 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-regular:normal 400 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-light:normal 300 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-thin:normal 100 1em/1 "Font Awesome 7 Duotone";--fa-font-brands:normal 400 1em/1 "Font Awesome 7 Brands";--fa-font-sharp-solid:normal 900 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-regular:normal 400 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-light:normal 300 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-thin:normal 100 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-duotone-solid:normal 900 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-regular:normal 400 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-light:normal 300 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-thin:normal 100 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-slab-regular:normal 400 1em/1 "Font Awesome 7 Slab";--fa-font-slab-press-regular:normal 400 1em/1 "Font Awesome 7 Slab Press";--fa-font-whiteboard-semibold:normal 600 1em/1 "Font Awesome 7 Whiteboard";--fa-font-thumbprint-light:normal 300 1em/1 "Font Awesome 7 Thumbprint";--fa-font-notdog-solid:normal 900 1em/1 "Font Awesome 7 Notdog";--fa-font-notdog-duo-solid:normal 900 1em/1 "Font Awesome 7 Notdog Duo";--fa-font-etch-solid:normal 900 1em/1 "Font Awesome 7 Etch";--fa-font-graphite-thin:normal 100 1em/1 "Font Awesome 7 Graphite";--fa-font-jelly-regular:normal 400 1em/1 "Font Awesome 7 Jelly";--fa-font-jelly-fill-regular:normal 400 1em/1 "Font Awesome 7 Jelly Fill";--fa-font-jelly-duo-regular:normal 400 1em/1 "Font Awesome 7 Jelly Duo";--fa-font-chisel-regular:normal 400 1em/1 "Font Awesome 7 Chisel";--fa-font-utility-semibold:normal 600 1em/1 "Font Awesome 7 Utility";--fa-font-utility-duo-semibold:normal 600 1em/1 "Font Awesome 7 Utility Duo";--fa-font-utility-fill-semibold:normal 600 1em/1 "Font Awesome 7 Utility Fill"}.svg-inline--fa{box-sizing:content-box;display:inline-block;display:var(--fa-display,inline-block);height:1em;overflow:visible;vertical-align:-.125em;width:1.25em;width:var(--fa-width,1.25em)}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.0714285714em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa .fa-pull-start,.svg-inline--fa.fa-pull-left{float:left;margin-right:.3em;margin-right:var(--fa-pull-margin,.3em)}.svg-inline--fa .fa-pull-end,.svg-inline--fa.fa-pull-right{float:right;margin-left:.3em;margin-left:var(--fa-pull-margin,.3em)}.svg-inline--fa.fa-li{left:-2em;left:calc(var(--fa-li-width, 2em)*-1);top:.25em;width:2em;width:var(--fa-li-width,2em)}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1.25em;width:var(--fa-width,1.25em)}.fa-layers .svg-inline--fa{inset:0;margin:auto;position:absolute;transform-origin:center center}.fa-layers-text{left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:center center}.fa-layers-counter{background-color:#ff253a;background-color:var(--fa-counter-background-color,#ff253a);border-radius:1em;border-radius:var(--fa-counter-border-radius,1em);box-sizing:border-box;color:#fff;color:var(--fa-inverse,#fff);line-height:1;line-height:var(--fa-counter-line-height,1);max-width:5em;max-width:var(--fa-counter-max-width,5em);min-width:1.5em;min-width:var(--fa-counter-min-width,1.5em);overflow:hidden;padding:.25em .5em;padding:var(--fa-counter-padding,.25em .5em);right:0;right:var(--fa-right,0);text-overflow:ellipsis;top:0;top:var(--fa-top,0);transform:scale(.25);transform:scale(var(--fa-counter-scale,.25));transform-origin:top right}.fa-layers-bottom-right{bottom:0;bottom:var(--fa-bottom,0);right:0;right:var(--fa-right,0);top:auto;transform:scale(.25);transform:scale(var(--fa-layers-scale,.25));transform-origin:bottom right}.fa-layers-bottom-left{bottom:0;bottom:var(--fa-bottom,0);left:0;left:var(--fa-left,0);right:auto;top:auto;transform:scale(.25);transform:scale(var(--fa-layers-scale,.25));transform-origin:bottom left}.fa-layers-top-right{right:0;right:var(--fa-right,0);top:0;top:var(--fa-top,0);transform:scale(.25);transform:scale(var(--fa-layers-scale,.25));transform-origin:top right}.fa-layers-top-left{left:0;left:var(--fa-left,0);right:auto;top:0;top:var(--fa-top,0);transform:scale(.25);transform:scale(var(--fa-layers-scale,.25));transform-origin:top left}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;left:calc(var(--fa-li-width, 2em)*-1);line-height:inherit;position:absolute;text-align:center;width:2em;width:var(--fa-li-width,2em)}.fa-border{border-color:#eee;border-color:var(--fa-border-color,#eee);border-radius:.1em;border-radius:var(--fa-border-radius,.1em);border-style:solid;border-style:var(--fa-border-style,solid);border-width:.0625em;border-width:var(--fa-border-width,.0625em);box-sizing:content-box;box-sizing:var(--fa-border-box-sizing,content-box);padding:.1875em .25em;padding:var(--fa-border-padding,.1875em .25em)}.fa-pull-left,.fa-pull-start{float:left;margin-right:.3em;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-end,.fa-pull-right{float:right;margin-left:.3em;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{animation-delay:0s;animation-delay:var(--fa-animation-delay,0s);animation-direction:normal;animation-direction:var(--fa-animation-direction,normal);animation-duration:1s;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:infinite;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-name:fa-beat;animation-timing-function:ease-in-out;animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-delay:0s;animation-delay:var(--fa-animation-delay,0s);animation-direction:normal;animation-direction:var(--fa-animation-direction,normal);animation-duration:1s;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:infinite;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-name:fa-bounce;animation-timing-function:cubic-bezier(.28,.84,.42,1);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-iteration-count:infinite;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-name:fa-fade;animation-timing-function:cubic-bezier(.4,0,.6,1);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:0s;animation-delay:var(--fa-animation-delay,0s);animation-direction:normal;animation-direction:var(--fa-animation-direction,normal);animation-duration:1s;animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-iteration-count:infinite;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-name:fa-beat-fade;animation-timing-function:cubic-bezier(.4,0,.6,1);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-delay:0s;animation-delay:var(--fa-animation-delay,0s);animation-direction:normal;animation-direction:var(--fa-animation-direction,normal);animation-duration:1s;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:infinite;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-name:fa-flip;animation-timing-function:ease-in-out;animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-duration:1s;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:infinite;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-name:fa-shake;animation-timing-function:linear;animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:0s;animation-delay:var(--fa-animation-delay,0s);animation-direction:normal;animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-duration:2s;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:infinite;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-name:fa-spin;animation-timing-function:linear;animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-direction:normal;animation-direction:var(--fa-animation-direction,normal);animation-duration:1s;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:infinite;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-name:fa-spin;animation-timing-function:steps(8);animation-timing-function:var(--fa-animation-timing,steps(8))}@media(prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation:none!important;transition:none!important}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(1.25);transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(1.1,.9) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(.9,1.1) translateY(-.5em);transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(1.05,.95) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(-.125em);transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:.4;opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:.4;opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(1.125);transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotateY(-180deg);transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}24%,8%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(0);transform:rotate(var(--fa-rotate-angle,0))}.svg-inline--fa .fa-primary{fill:currentColor;fill:var(--fa-primary-color,currentColor);opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:currentColor;fill:var(--fa-secondary-color,currentColor)}.svg-inline--fa .fa-secondary,.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.svg-inline--fa.fa-inverse{fill:#fff;fill:var(--fa-inverse,#fff)}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-inverse{color:#fff;color:var(--fa-inverse,#fff)}.svg-inline--fa.fa-stack-1x{--fa-width:1.25em;height:1em;width:1.25em;width:var(--fa-width)}.svg-inline--fa.fa-stack-2x{--fa-width:2.5em;height:2em;width:2.5em;width:var(--fa-width)}.fa-stack-1x,.fa-stack-2x{inset:0;margin:auto;position:absolute;z-index:auto;z-index:var(--fa-stack-z-index,auto)}
