.hll{background-color:#404040}.c{color:#999;font-style:italic}.err{color:#a61717;background-color:#e3d2d2}.esc{color:#d0d0d0}.g{color:#d0d0d0}.k{color:#6ab825;font-weight:700}.l{color:#d0d0d0}.n{color:#d0d0d0}.o{color:#d0d0d0}.x{color:#d0d0d0}.p{color:#d0d0d0}.ch{color:#999;font-style:italic}.cm{color:#999;font-style:italic}.cp{color:#cd2828;font-weight:700}.cpf{color:#999;font-style:italic}.c1{color:#999;font-style:italic}.cs{color:#e50808;font-weight:700;background-color:#520000}.gd{color:#d22323}.ge{color:#d0d0d0;font-style:italic}.gr{color:#d22323}.gh{color:#fff;font-weight:700}.gi{color:#589819}.go{color:#ccc}.gp{color:#aaa}.gs{color:#d0d0d0;font-weight:700}.gu{color:#fff;text-decoration:underline}.gt{color:#d22323}.kc{color:#6ab825;font-weight:700}.kd{color:#6ab825;font-weight:700}.kn{color:#6ab825;font-weight:700}.kp{color:#6ab825}.kr{color:#6ab825;font-weight:700}.kt{color:#6ab825;font-weight:700}.ld{color:#d0d0d0}.m{color:#3677a9}.s{color:#ed9d13}.na{color:#bbb}.nb{color:#24909d}.nc{color:#447fcf;text-decoration:underline}.no{color:#40ffff}.nd{color:orange}.ni{color:#d0d0d0}.ne{color:#bbb}.nf{color:#447fcf}.nl{color:#d0d0d0}.nn{color:#447fcf;text-decoration:underline}.nx{color:#d0d0d0}.py{color:#d0d0d0}.nt{color:#6ab825;font-weight:700}.nv{color:#40ffff}.ow{color:#6ab825;font-weight:700}.w{color:#666}.mb{color:#3677a9}.mf{color:#3677a9}.mh{color:#3677a9}.mi{color:#3677a9}.mo{color:#3677a9}.sb{color:#ed9d13}.sc{color:#ed9d13}.sd{color:#ed9d13}.s2{color:#ed9d13}.se{color:#ed9d13}.sh{color:#ed9d13}.si{color:#ed9d13}.sx{color:orange}.sr{color:#ed9d13}.s1{color:#ed9d13}.ss{color:#ed9d13}.bp{color:#24909d}.vc{color:#40ffff}.vg{color:#40ffff}.vi{color:#40ffff}.il{color:#3677a9}*{box-sizing:border-box}html{background:#222;font-size:16px}@media only screen and (min-width:500px){html{font-size:18px}}@media only screen and (min-width:600px){html{font-size:20px}}body{font-family:"Iosevka Aile","Source Sans Pro",-apple-system,"Helvetica Neue",Helvetica,Calibri,sans-serif;font-weight:400;color:#ddd;margin:0;padding:0;min-height:100vh;line-height:1.4rem}h1,h2,h3,h4,h5,h6,ol,p,ul{width:100% max-width: 35rem;margin-left:auto;margin-right:auto;margin-bottom:1.4rem;line-height:1.4rem;margin-top:0}h1,h2,h3,h4,h5,h6{font-weight:400}h1{font-size:1.296rem}h2{font-size:1.215rem}h3{font-size:1.138rem}h4{font-size:1.067rem}h5,h6{font-size:1rem}h2,h3,h4,h5,h6{margin-top:2.8rem}h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child{margin-top:0}p{clear:none}hr{margin-top:1.4rem;margin-bottom:1.4rem;border-color:#aaa}a,a:visited{text-decoration:underline dotted;text-decoration-width:0.5px;color:pink}a:hover{text-decoration:underline}img{display:block;max-width:100%;margin-left:auto;margin-right:auto}ol,ul{padding-left:0}ul ul{padding-left:2ex}code,pre{font-family:"Source Code Pro",Menlo,Consolas,monospace;font-size:.8rem}pre{width:100%;margin-top:0;margin-left:auto;margin-right:auto;margin-bottom:1.4rem;background:#252525;border-left:1ex solid #2a2a2a;padding-left:1ex;line-height:1.4rem;overflow-x:auto}pre::-webkit-scrollbar{height:1.4rem;margin-top:-1.4rem}pre::-webkit-scrollbar-track{background:#1a1a1a}pre::-webkit-scrollbar-thumb{background-color:#222;border-radius:.7rem;border:.25rem solid #1a1a1a;height:10px}@media only screen and (min-width:1080px){pre{max-width:100ex}}code{background:#333;padding:.1rem .5ex;margin-top:-.1rem;margin-bottom:-.1rem;white-space:nowrap}pre code{background:#252525}pre>code{white-space:pre}sup{line-height:0}.tags{list-style:none}.tag{display:inline-block;background:pink;color:#eee;padding:.1rem 1ex}.site-container{display:flex;flex-direction:column;flex:1}@media only screen and (min-width:920px){.site-container{flex-direction:row}}header{width:100%;padding-top:1.4rem;padding-left:1.4rem;padding-right:1.5rem}@media only screen and (min-width:920px){header{position:fixed;padding-left:1rem;width:12rem;flex:0 0 12rem;background:linear-gradient(90deg,#333,#222);min-height:100vh}}.site-title{max-width:35rem;margin-right:auto;margin-left:auto;margin-bottom:1.4rem}.site-title,.site-title a,.site-title h1,.site-title h1 a{font-size:1.296rem;font-weight:700;text-transform:lowercase;text-decoration:none;line-height:1.4rem}.site-title a:hover,.site-title h1 a:hover{text-decoration:underline}@media only screen and (min-width:920px){.site-title{text-align:right}}.site-nav{margin-top:1.4rem;list-style:none;display:flex;flex-direction:column;flex-wrap:wrap;justify-content:space-around;align-items:center}.site-nav-item{display:inline-block;flex-basis:auto;width:auto;letter-spacing:0;transition:letter-spacing .3s;border-bottom:2px solid pink;white-space:nowrap;margin-bottom:1.4rem;align-items:center}.site-nav-item:hover{letter-spacing:2px}.site-nav-item a{text-decoration:none}.site-nav-item a:hover{text-decoration:underline}@media only screen and (min-width:300px){.site-nav{width:100%;margin-top:0;margin-bottom:-1.4rem;flex-direction:row}.site-nav-item{padding:.3rem 1ex;margin-right:1.5ex;margin-left:1.5ex}}@media only screen and (min-width:920px){.site-nav{display:block;height:auto}.site-nav-item{display:block;margin:0;padding:0;border-bottom:0;border-right:5px solid pink;text-align:right;padding-right:1ex;margin-bottom:1.4rem}.site-nav-item:last-child{margin-bottom:1.4rem}}.hire-me{text-align:center}.hire-me .first-line{font-size:.7rem}@media only screen and (min-width:920px){.hire-me{font-size:.7rem;text-align:right}}.content-container{display:flex;flex:1;flex-direction:column;width:100%;overflow:hidden;margin-left:auto;margin-right:auto;margin-top:1.4rem;padding-left:1.5rem;padding-right:1.5rem}@media only screen and (min-width:920px){.content-container{margin-left:12rem}}.content-container-inner{margin:0 auto;max-width:100%}@media only screen and (min-width:760px){.content-container-inner{width:35rem}.content-container .post-date,.content-container h1,.content-container h2,.content-container h4,.content-container h5,.content-container h6,.content-container ol,.content-container p,.content-container ul{width:auto;max-width:100%}}@media only screen and (min-width:600px){.two-columns{clear:both}.two-columns>:nth-child(1){float:left;width:50%;padding-right:1.5rem}.two-columns>:nth-child(2){width:50%;float:left;padding-left:1.5rem}}.circular-img{display:block;width:9.8rem;height:9.8rem;margin-left:auto;margin-right:auto;overflow:hidden;-webkit-shape-outside:circle();shape-outside:circle();margin-bottom:1.4rem;border-radius:50%;box-shadow:inset 10rem 10rem 1.4rem #000}.circular-img>img{display:inline;margin:0 auto;max-height:100%;width:auto}@media only screen and (min-width:400px){.circular-img{margin:0;margin-left:2ex;float:right;vertical-align:top}}.post-list{list-style:none}.post-list-entry{clear:both;margin-bottom:1.4rem;display:flex;justify-content:space-between}.post-list-entry-date{display:block;color:#aaa;white-space:nowrap;margin-left:2ex}@media only screen and (min-width:920px){.post-list-entry-date{float:right;margin-left:3ex}}.post-date{margin:-1.4rem auto 1.4rem auto;max-width:35rem;color:#aaa;width:100%}.post-github-repo a{display:none}@media only screen and (min-width:920px) and (min-height:500px){.post-github-repo a{display:inline-flex;position:fixed;flex-direction:row;align-items:center;width:10rem;border-radius:1rem;padding-left:1rem;padding-right:1rem;padding-top:.7rem;padding-bottom:.7rem;left:1rem;bottom:1.4rem;line-height:1.4rem;background:#ddd;color:#222;transition:transform .2s}.post-github-repo a:hover{transform:scale(1.1);text-decoration:none}.post-github-repo .github-image{display:block;width:48px}.post-github-repo .github-image img{width:100%}.post-github-repo .link-text{padding-left:.5rem}}.footnotes-sep{border-color:#444;margin-top:2.8rem;margin-bottom:2.8rem}