@font-face{font-family:recvar;font-style:oblique 0 15deg;font-weight:300 1000;font-display:swap;src:url(./fonts/Recursive_VF_1.085--subset_range_english_basic.woff2)format('woff2');unicode-range:U+20-7F,U+A9,U+2018-2019,U+201C-201D,U+2022,U+2190-2193}@font-face{font-family:recvar;font-style:oblique 0 15deg;font-weight:300 1000;font-display:swap;src:url(./fonts/Recursive_VF_1.085--subset_range_latin_1.woff2)format('woff2');unicode-range:U+C0-FF}@font-face{font-family:recvar;font-style:oblique 0 15deg;font-weight:300 1000;font-display:swap;src:url(./fonts/Recursive_VF_1.085--subset_range_latin_1_punc.woff2)format('woff2');unicode-range:U+A0-A8,U+AA-BF,U+2194-2199}@font-face{font-family:recvar;font-style:oblique 0 15deg;font-weight:300 1000;font-display:swap;src:url(./fonts/Recursive_VF_1.085--subset_range_latin_ext.woff2)format('woff2');unicode-range:U+100-17F}@font-face{font-family:recvar;font-style:oblique 0 15deg;font-weight:300 1000;font-display:swap;src:url(./fonts/Recursive_VF_1.085--subset_range_vietnamese.woff2)format('woff2');unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:recvar;font-style:oblique 0 15deg;font-weight:300 1000;font-display:swap;src:url(./fonts/Recursive_VF_1.085--subset_range_remaining.woff2)format('woff2');unicode-range:U+2007,U+2008,U+2009,U+200A,U+200B,U+D,U+2010,U+2012,U+2013,U+2014,U+2015,U+201A,U+201E,U+2020,U+2021,U+2026,U+2030,U+2032,U+2033,U+2039,U+203A,U+203E,U+2044,U+2052,U+2070,U+2074,U+2075,U+2076,U+2077,U+2078,U+2079,U+207B,U+2080,U+2081,U+2082,U+2083,U+2084,U+2085,U+2086,U+2087,U+2088,U+2089,U+20A1,U+20A6,U+20A8,U+20A9,U+20AA,U+20AC,U+20AD,U+20B1,U+20B2,U+20B4,U+20B5,U+20B8,U+20B9,U+20BA,U+20BC,U+20BD,U+20BF,U+F8FF,U+2113,U+2116,U+2122,U+2126,U+212E,U+E132,U+E133,U+2153,U+2154,U+215B,U+215C,U+215D,U+215E,U+18F,U+192,U+19D,U+1C4,U+1C5,U+1C6,U+1C7,U+1C8,U+1C9,U+1CA,U+1CB,U+1CC,U+1E6,U+1E7,U+1EA,U+1EB,U+1F1,U+1F2,U+1F3,U+1FA,U+1FB,U+1FC,U+1FD,U+1FE,U+1FF,U+200,U+201,U+202,U+203,U+204,U+205,U+206,U+207,U+208,U+209,U+20A,U+20B,U+20C,U+20D,U+20E,U+20F,U+210,U+211,U+212,U+213,U+214,U+215,U+216,U+217,U+218,U+219,U+21A,U+21B,U+2215,U+2219,U+221E,U+221A,U+22A,U+22B,U+22C,U+22D,U+222B,U+230,U+231,U+232,U+233,U+2236,U+237,U+2248,U+259,U+2260,U+2261,U+2264,U+2265,U+272,U+2B9,U+2BA,U+2BB,U+2BC,U+2BE,U+2BF,U+2C6,U+2C7,U+2C8,U+2C9,U+2CA,U+2CB,U+2D8,U+2D9,U+2DA,U+2DB,U+2DC,U+2DD,U+300,U+301,U+FB02,U+FB03,U+302,U+303,U+304,U+FB01,U+306,U+307,U+308,U+309,U+30A,U+30B,U+30C,U+30F,U+311,U+312,U+315,U+31B,U+2202,U+323,U+324,U+325,U+326,U+327,U+328,U+329,U+2205,U+32E,U+2206,U+331,U+335,U+220F,U+2211,U+2212,U+391,U+392,U+393,U+394,U+398,U+39B,U+39C,U+39D,U+3A0,U+3A6,U+3B1,U+3B2,U+3B3,U+3B4,U+3B8,U+3BB,U+3BC,U+3BD,U+3C0,U+3C6,U+25A0,U+25A1,U+25B2,U+25B3,U+25B6,U+25B7,U+25BC,U+25BD,U+25C0,U+25C1,U+25C6,U+25C7,U+25CA,U+1E08,U+1E09,U+1E0C,U+1E0D,U+1E0E,U+1E0F,U+2610,U+2611,U+1E14,U+1E15,U+1E16,U+1E17,U+1E1C,U+1E1D,U+1E20,U+1E21,U+1E24,U+1E25,U+1E2A,U+1E2B,U+1E2E,U+1E2F,U+1E36,U+1E37,U+1E3A,U+1E3B,U+E3F,U+1E42,U+1E43,U+1E44,U+1E45,U+1E46,U+1E47,U+1E48,U+1E49,U+1E4C,U+1E4D,U+1E4E,U+1E4F,U+1E50,U+1E51,U+1E52,U+1E53,U+1E5A,U+1E5B,U+1E5E,U+1E5F,U+1E60,U+2661,U+1E61,U+1E62,U+1E63,U+1E64,U+1E65,U+1E66,U+1E67,U+1E68,U+1E69,U+2665,U+1E6C,U+1E6D,U+1E6E,U+1E6F,U+1E78,U+1E79,U+1E7A,U+1E7B,U+1E80,U+1E81,U+1E82,U+1E83,U+1E84,U+1E85,U+1E8E,U+1E8F,U+1E92,U+1E93,U+1E97,U+1E9E,U+2713,U+27E8,U+27E9}:root{--bg:#eee;--text:#111;--footer:#555;--shadow:#555;--tag:grey;--mono:0;--casl:0;--wght:400;--slnt:0;--CRSV:0.5;--block-bottom:1.5rem}@media(prefers-color-scheme:dark){:root{--bg:#2a2a2a;--text:#ccc;--footer:#999;--shadow:#bbb}}@import "./fonts.css";*{margin:0;box-sizing:border-box}body{background-color:var(--bg);font-family:recvar;color:var(--text);font-variation-settings:"MONO" var(--mono),"CASL" var(--casl),"wght" var(--wght),"slnt" var(--slnt),"CRSV" var(--CRSV)}h1,h2,h3,h4,h5,h6{--wght:600;--mono:1;font-variation-settings:"MONO" var(--mono),"CASL" var(--casl),"wght" var(--wght),"slnt" var(--slnt),"CRSV" var(--CRSV);margin-bottom:.7rem}h1{font-size:2.1rem}h2{font-size:1.8rem}h2:not(:first-child){margin-top:calc(1.5 * var(--block-bottom))}h3{font-size:1.5rem}h3:not(:first-child){margin-top:calc(1.6 * var(--block-bottom))}h4{font-size:1.3rem}h4:not(:first-child){margin-top:calc(1.7 * var(--block-bottom))}h5{font-size:1.2rem}h5:not(:first-child){margin-top:calc(1.7 * var(--block-bottom))}h6{font-size:1.1rem}h6:not(:first-child){margin-top:calc(1.7 * var(--block-bottom))}main :is(hr,p,ol,ul,figure,pre,summary):not(:last-child){margin-bottom:var(--block-bottom)}li:not(last-child){margin-bottom:.5rem}.highlight,pre{overflow-x:auto}pre:not(.chroma),figure{margin-left:1rem;margin-right:1rem}a{color:var(--text);text-decoration:underline dashed .01em}a:hover{text-decoration:underline .1em}a:visited{color:var(--a-visited)}strong{--wght:800;font-variation-settings:"MONO" var(--mono),"CASL" var(--casl),"wght" var(--wght),"slnt" var(--slnt),"CRSV" var(--CRSV)}em{--slnt:-14;font-variation-settings:"MONO" var(--mono),"CASL" var(--casl),"wght" var(--wght),"slnt" var(--slnt),"CRSV" var(--CRSV)}img{display:block;max-width:100%}hr{overflow:visible;border:none;border-top:.1rem solid;text-align:center;height:.1rem;margin-top:1rem;margin-bottom:1rem}hr:after{content:"△";display:inline-block;position:relative;top:-.8em;padding:0 .5em;background:var(--bg);font-size:1rem}blockquote{padding-left:1rem;border-left:.3rem solid;--slnt:-18;font-variation-settings:"MONO" var(--mono),"CASL" var(--casl),"wght" var(--wght),"slnt" var(--slnt),"CRSV" var(--CRSV)}.container{max-width:48rem;margin:0 auto;padding:.5rem 1rem 0;display:flex;flex-direction:column;min-height:100vh}.content{flex:1}.banner{align-items:center;display:flex;column-gap:.75rem;margin-bottom:1rem;--mono:1;font-variation-settings:"MONO" var(--mono),"CASL" var(--casl),"wght" var(--wght),"slnt" var(--slnt),"CRSV" var(--CRSV)}.banner .logo{display:inherit;width:5rem}.banner .title{font-size:1.7rem}.banner nav ul{margin:0;text-transform:lowercase}footer{font-size:.8rem;color:var(--footer);text-align:center;margin-top:2rem;margin-bottom:2rem}header{margin-bottom:1rem}header *{margin-bottom:.5rem!important}.footnotes p{margin-bottom:.5rem}.footnote-ref::before{content:"["}.footnote-ref::after{content:"]"}.hoverfootnote{background-color:var(--bg);padding:.5rem}.hoverfootnote .footnote-backref{display:none}.hoverfootnote p:last-child{margin-bottom:0}.nextprev{display:flex;justify-content:space-between}.flatlist{list-style:none;padding:0}.flatlist>li{display:inline-block;margin-bottom:0}.flatlist>li:not(:first-child):before{content:" | ";filter:opacity(50%)}.tag{background-color:var(--tag);border-radius:50vh}.embed{border:2px solid;box-shadow:3px 3px 1px var(--shadow)}.embed-compact{width:fit-content;margin-left:auto;margin-right:auto}.embedtab{font-family:monospace;font-size:14px;padding:1px 5px;overflow:hidden}.embedtab:not(:first-child){border-top:2px solid}.embedtab:not(:last-child){border-bottom:2px solid}.embedcontent{padding:10px}.embedcontent img{margin:0}.gitearepo{display:flex;flex-direction:column;position:relative}.repohead{display:flex}.repodescription{display:block}.repoavatar{display:inline-block;align-self:center;width:2.5rem;margin-right:.5rem;border:.1rem solid}.repoavatar>img{margin:0}.repolangs{margin-top:.4rem}.languagelabels{display:flex;padding:0;margin:0}.languagelabels>li{margin-bottom:0;list-style:none}.languagelabels>li>div{display:inline-block;height:.75rem;width:.75rem;border-radius:100%;background-color:#fff}.languages{height:.75rem;display:flex;border-radius:.375rem;overflow:hidden;border:2px solid}.languages>div:not(:last-child){border-right:2px solid}.link-icon{height:1rem;padding-bottom:.2rem;display:inline;margin-left:-.2rem}@media(prefers-color-scheme:light){.bg{color:#272822;background-color:#fafafa}.chroma{color:#272822;background-color:#fafafa}.chroma .x{}.chroma .err{color:#960050;background-color:#1e0010}.chroma .cl{}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}.chroma .hl{background-color:#ffc}.chroma .lnt{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .ln{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .line{display:flex}.chroma .k{color:#00a8c8}.chroma .kc{color:#00a8c8}.chroma .kd{color:#00a8c8}.chroma .kn{color:#f92672}.chroma .kp{color:#00a8c8}.chroma .kr{color:#00a8c8}.chroma .kt{color:#00a8c8}.chroma .n{color:#111}.chroma .na{color:#75af00}.chroma .nb{color:#111}.chroma .bp{color:#111}.chroma .nc{color:#75af00}.chroma .no{color:#00a8c8}.chroma .nd{color:#75af00}.chroma .ni{color:#111}.chroma .ne{color:#75af00}.chroma .nf{color:#75af00}.chroma .fm{color:#111}.chroma .nl{color:#111}.chroma .nn{color:#111}.chroma .nx{color:#75af00}.chroma .py{color:#111}.chroma .nt{color:#f92672}.chroma .nv{color:#111}.chroma .vc{color:#111}.chroma .vg{color:#111}.chroma .vi{color:#111}.chroma .vm{color:#111}.chroma .l{color:#ae81ff}.chroma .ld{color:#d88200}.chroma .s{color:#d88200}.chroma .sa{color:#d88200}.chroma .sb{color:#d88200}.chroma .sc{color:#d88200}.chroma .dl{color:#d88200}.chroma .sd{color:#d88200}.chroma .s2{color:#d88200}.chroma .se{color:#8045ff}.chroma .sh{color:#d88200}.chroma .si{color:#d88200}.chroma .sx{color:#d88200}.chroma .sr{color:#d88200}.chroma .s1{color:#d88200}.chroma .ss{color:#d88200}.chroma .m{color:#ae81ff}.chroma .mb{color:#ae81ff}.chroma .mf{color:#ae81ff}.chroma .mh{color:#ae81ff}.chroma .mi{color:#ae81ff}.chroma .il{color:#ae81ff}.chroma .mo{color:#ae81ff}.chroma .o{color:#f92672}.chroma .ow{color:#f92672}.chroma .p{color:#111}.chroma .c{color:#75715e}.chroma .ch{color:#75715e}.chroma .cm{color:#75715e}.chroma .c1{color:#75715e}.chroma .cs{color:#75715e}.chroma .cp{color:#75715e}.chroma .cpf{color:#75715e}.chroma .g{}.chroma .gd{}.chroma .ge{font-style:italic}.chroma .gr{}.chroma .gh{}.chroma .gi{}.chroma .go{}.chroma .gp{}.chroma .gs{font-weight:700}.chroma .gu{}.chroma .gt{}.chroma .gl{}.chroma .w{}}@media(prefers-color-scheme:dark){.bg{color:#f8f8f2;background-color:#272822}.chroma{color:#f8f8f2;background-color:#272822}.chroma .x{}.chroma .err{color:#960050;background-color:#1e0010}.chroma .cl{}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}.chroma .hl{background-color:#ffc}.chroma .lnt{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .ln{white-space:pre;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .line{display:flex}.chroma .k{color:#66d9ef}.chroma .kc{color:#66d9ef}.chroma .kd{color:#66d9ef}.chroma .kn{color:#f92672}.chroma .kp{color:#66d9ef}.chroma .kr{color:#66d9ef}.chroma .kt{color:#66d9ef}.chroma .n{}.chroma .na{color:#a6e22e}.chroma .nb{}.chroma .bp{}.chroma .nc{color:#a6e22e}.chroma .no{color:#66d9ef}.chroma .nd{color:#a6e22e}.chroma .ni{}.chroma .ne{color:#a6e22e}.chroma .nf{color:#a6e22e}.chroma .fm{}.chroma .nl{}.chroma .nn{}.chroma .nx{color:#a6e22e}.chroma .py{}.chroma .nt{color:#f92672}.chroma .nv{}.chroma .vc{}.chroma .vg{}.chroma .vi{}.chroma .vm{}.chroma .l{color:#ae81ff}.chroma .ld{color:#e6db74}.chroma .s{color:#e6db74}.chroma .sa{color:#e6db74}.chroma .sb{color:#e6db74}.chroma .sc{color:#e6db74}.chroma .dl{color:#e6db74}.chroma .sd{color:#e6db74}.chroma .s2{color:#e6db74}.chroma .se{color:#ae81ff}.chroma .sh{color:#e6db74}.chroma .si{color:#e6db74}.chroma .sx{color:#e6db74}.chroma .sr{color:#e6db74}.chroma .s1{color:#e6db74}.chroma .ss{color:#e6db74}.chroma .m{color:#ae81ff}.chroma .mb{color:#ae81ff}.chroma .mf{color:#ae81ff}.chroma .mh{color:#ae81ff}.chroma .mi{color:#ae81ff}.chroma .il{color:#ae81ff}.chroma .mo{color:#ae81ff}.chroma .o{color:#f92672}.chroma .ow{color:#f92672}.chroma .p{}.chroma .c{color:#75715e}.chroma .ch{color:#75715e}.chroma .cm{color:#75715e}.chroma .c1{color:#75715e}.chroma .cs{color:#75715e}.chroma .cp{color:#75715e}.chroma .cpf{color:#75715e}.chroma .g{}.chroma .gd{color:#f92672}.chroma .ge{font-style:italic}.chroma .gr{}.chroma .gh{}.chroma .gi{color:#a6e22e}.chroma .go{}.chroma .gp{}.chroma .gs{font-weight:700}.chroma .gu{color:#75715e}.chroma .gt{}.chroma .gl{}.chroma .w{}}