@font-face{font-family:cmu serif;src:url(/fonts/cmunrm-webfont.woff)format("woff");font-weight:400;font-style:normal}@font-face{font-family:cmu serif;src:url(/fonts/cmunti-webfont.woff)format("woff");font-weight:400;font-style:italic}@font-face{font-family:cmu serif;src:url(/fonts/cmunbx-webfont.woff)format("woff");font-weight:700;font-style:normal}@font-face{font-family:cmu serif;src:url(/fonts/cmunbi-webfont.woff)format("woff");font-weight:700;font-style:italic}@font-face{font-family:cmu sans serif;src:url(/fonts/cmunss-webfont.woff)format("woff");font-weight:400;font-style:normal}@font-face{font-family:cmu sans serif;src:url(/fonts/cmunsx-webfont.woff)format("woff");font-weight:700;font-style:normal}@font-face{font-family:cmu typewriter;src:url(/fonts/cmuntt-webfont.woff)format("woff");font-weight:400;font-style:normal}@font-face{font-family:cmu typewriter;src:url(/fonts/cmunit-webfont.woff)format("woff");font-weight:400;font-style:italic}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}html{font-size:20px;line-height:1.5em}body{font-family:cmu serif}main>*{text-align:justify}p{margin-top:0;margin-bottom:0}p+p{text-indent:2em}p:empty+p{text-indent:0}dt{margin:0}dd{margin:0;margin-left:2em}ul,ol{padding:0}ul li,ol li{padding:0;margin:0;margin-left:2em}code,pre{font-family:cmu typewriter}pre,blockquote{max-width:calc(100vw - 6em);overflow:auto}a{text-decoration:none;color:#667;fill:#667}a:hover,a:focus{color:#1f1f25;fill:#667;text-decoration:underline}h1,h2,h3,h4,h5,h6{text-align:left;font-family:cmu sans serif;text-transform:lowercase;letter-spacing:-.025em}main>*{max-width:100%}main img{max-width:100%;border:1px solid #ddd;box-shadow:0 8px 20px rgba(0,0,0,.2)}main figure figcaption{text-align:center}main figure figcaption h4{font-weight:400;margin:0}.chroma{background-color:#fff}.chroma .err{background-color:#a848a8}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block}.chroma .hl{display:block;width:100%;background-color:#ffc}.chroma .lnt{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .ln{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .k{color:#2838b0}.chroma .kc{color:#444;font-style:italic}.chroma .kd{color:#2838b0;font-style:italic}.chroma .kn{color:#2838b0}.chroma .kp{color:#2838b0}.chroma .kr{color:#2838b0}.chroma .kt{color:#2838b0;font-style:italic}.chroma .na{color:#388038}.chroma .nb{color:#388038}.chroma .bp{font-style:italic}.chroma .nc{color:#287088}.chroma .no{color:#b85820}.chroma .nd{color:#287088}.chroma .ni{color:#709030}.chroma .ne{color:#908828}.chroma .nf{color:#785840}.chroma .fm{color:#b85820}.chroma .nl{color:#289870}.chroma .nn{color:#289870}.chroma .nt{color:#2838b0}.chroma .nv{color:#b04040}.chroma .vg{color:#908828}.chroma .vm{color:#b85820}.chroma .s{color:#b83838}.chroma .sa{color:#444}.chroma .sb{color:#b83838}.chroma .sc{color:#a848a8}.chroma .dl{color:#b85820}.chroma .sd{color:#b85820;font-style:italic}.chroma .s2{color:#b83838}.chroma .se{color:#709030}.chroma .sh{color:#b83838}.chroma .si{color:#b83838;text-decoration:underline}.chroma .sx{color:#a848a8}.chroma .sr{color:#a848a8}.chroma .s1{color:#b83838}.chroma .ss{color:#b83838}.chroma .m{color:#444}.chroma .mb{color:#444}.chroma .mf{color:#444}.chroma .mh{color:#444}.chroma .mi{color:#444}.chroma .il{color:#444}.chroma .mo{color:#444}.chroma .o{color:#666}.chroma .ow{color:#a848a8}.chroma .p{color:#888}.chroma .c{color:#888;font-style:italic}.chroma .ch{color:#287088;font-style:italic}.chroma .cm{color:#888;font-style:italic}.chroma .c1{color:#888;font-style:italic}.chroma .cs{color:#888;font-style:italic}.chroma .cp{color:#289870}.chroma .cpf{color:#289870}.chroma .gd{color:#c02828}.chroma .ge{font-style:italic}.chroma .gr{color:#c02828}.chroma .gh{color:#666}.chroma .gi{color:#388038}.chroma .go{color:#666}.chroma .gp{color:#444}.chroma .gs{font-weight:700}.chroma .gu{color:#444}.chroma .gt{color:#2838b0}.chroma .gl{text-decoration:underline}.chroma .w{color:#a89028}body{display:flex;flex-direction:column;min-height:100vh;padding:1.5em;max-width:41em}body #main{flex:1;display:flex;flex-direction:column}body #main>main{flex:1}body #main>footer{margin:3em 0}body header{padding:0;display:flex;align-items:baseline}body header h1{flex:1}body>aside{width:100vw;max-width:20em;transform:translateX(0);background:#fff;transition:200ms transform ease-in-out;position:fixed;top:0;bottom:0;right:100%;z-index:2;padding:3em;box-shadow:0 2px 20px rgba(0,0,0,.1);border-right:1px solid #ddd}body label[for=show-aside]{text-align:center;width:6em;position:fixed;background:#223;border-top-right-radius:1em;color:#fff;padding:.5em .25em;bottom:0;left:0;z-index:3;display:none}body label[for=show-aside]:after{content:"meta"}body.page-posts label[for=show-aside]{display:block}body #show-aside{display:none}body #show-aside:checked+aside{transform:translateX(100%)}body #show-aside:checked+aside+label[for=show-aside]:after{content:"close"}@media(min-width:64em){body{padding:3em;display:grid;max-width:unset;grid-template-areas:"title nav" "main aside" "footer-start footer-end";grid-template-rows:fit-content(3em)auto fit-content(3em);grid-template-columns:35em auto;gap:3em}body>aside{grid-area:aside;position:static;transform:rotate(0);box-shadow:none;transform:translateX(0);padding:0;border:0;width:auto}body.page-posts label[for=show-aside]{display:none}body #show-aside:checked+aside{transform:translateX(0)}body>aside>*{display:block;position:sticky;top:3em;max-height:calc(100vh - 3em);overflow-y:auto;overflow-x:hidden}body #TableOfContents{font-size:.8em;line-height:1.3}body #main{display:contents}body #main>header{display:contents}body #main>header>h1{grid-area:title;margin:0}body #main>header>nav{grid-area:nav;margin:0}body #main>main{grid-area:main}body #main>footer{grid-area:footer-start;margin:0}}#main>header>nav>ul{list-style-type:none;display:flex;margin:0;padding:0}#main>header>nav>ul li{margin:.125em .25em}#main>header>nav>ul li a>span{clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}#main>header>nav>ul li a>svg{display:block;width:1em;height:1em}body>aside h1{font-size:1em;margin-bottom:0}body>aside #meta{font-size:14px;line-height:20px}body>aside #meta dl{color:#444;margin:0;display:grid;grid-template-columns:fit-content(15em)auto}body>aside #meta dl dt{font-weight:700}body>aside #meta dl dt:after{content:":"}body>aside #meta dl dd{padding:0;margin:0;margin-left:.25em}body>aside #TableOfContents{font-family:cmu sans serif;text-transform:lowercase;letter-spacing:-.025em}