@font-face {font-family:'Montserrat';font-style:normal;src:url("../fonts/Montserrat-Regular.ttf");src:url("../fonts/Montserrat-Regular.woff2");}@font-face {font-family:'Montserrat';font-weight:900;src:url("../fonts/Montserrat-ExtraBold.ttf");src:url("../fonts/Montserrat-ExtraBold.woff2");}@font-face {font-family:'Fira Code';font-weight:normal;src:url("../fonts/FiraCode-Regular.ttf");}@font-face {font-family:'Noto Serif';font-style:normal;src:url("../fonts/NotoSerif-Regular.ttf");}@font-face {font-family:'Noto Serif';font-style:italic;src:url("../fonts/NotoSerif-Italic.ttf");}@font-face {font-family:'Elms Sans';font-style:normal;src:url("../fonts/ElmsSans-Medium.ttf");}@font-face {font-family:'Elms Sans';font-style:italic;src:url("../fonts/ElmsSans-Italic.ttf");}@font-face {font-family:'Winky Sans';font-style:normal;src:url("../fonts/WinkySans-Regular.ttf");}@font-face {font-family:'Winky Sans';font-style:italic;src:url("../fonts/WinkySans-Italic.ttf");}@font-face {font-family:'Winky Sans';font-weight:bold;src:url("../fonts/WinkySans-Bold.ttf");}@font-face {font-family:'Winky Sans';font-style:italic;font-weight:bold;src:url("../fonts/WinkySans-BoldItalic.ttf");}:root {--color-bg:white;--color-text:black;--color-0:#4b8e26;--color-1:#1b92fa;--color-highlight:#b1daf9;--text-font:'Winky Sans';--title-font:'Montserrat';--mono-font:'Fira Code';}:target {background-color:var(--color-highlight);}body {box-sizing:border-box;font-family:var(--text-font);background-color:var(--color-bg);font-size:1.2em;min-height:100vh;max-width:100vw;margin:0;display:flex;flex-direction:column;}main {padding:32px;flex:1;}h1 {font-family:var(--title-font);font-weight:900;font-size:2em;color:var(--color-text);}ul {padding-left:0px;}p {font-family:var(--text-font);font-weight:normal;font-size:1em;color:var(--color-text);line-height:1.5;}.anchor {font-family:var(--title-font);font-weight:900;color:initial;text-decoration:none;}.anchor::after {background-color:var(--color-text);}h1:first-child {margin-top:0;}h1 + p {margin-top:1em;}h1 + .meta {margin-top:-1em;}.meta {font-size:1em;}p + p {margin-top:1em;}* + h1 {margin-top:1.2em;}.container {padding:0 5vw;}.container >* {max-width:60rem;margin:auto;}.header {position:relative;display:flex;flex-wrap:wrap;flex-direction:row;align-items:center;background-color:var(--color-text);padding:2rem;color:var(--color-bg);font-size:1.2em;}.footer {position:relative;display:flex;flex-wrap:wrap;flex-direction:row;align-items:center;background-color:var(--color-text);padding:2rem;color:var(--color-bg);font-size:0.8em;}.header div {position:relative;}.header .name {font-family:var(--title-font);font-weight:900;font-size:2em;color:var(--color-bg);z-index:1;position:relative;}.header .name :last-child {color:#85D957;}.header img {border-radius:50%;border:var(--color-text);height:4em;width:4em;margin-right:2em;}.header a {color:var(--color-bg);background-image:linear-gradient(var(--color-bg),var(--color-bg));}.header a:hover,.header a:focus {color:var(--color-text);}.footer a {color:var(--color-bg);background-image:linear-gradient(var(--color-bg),var(--color-bg));}.footer a:hover,.footer a:focus {color:var(--color-text);}a.tag {color:var(--color-1);background-image:linear-gradient(var(--color-1),var(--color-1));}li {padding:4px;}a {font-family:var(--text-font);font-weight:normal;color:var(--color-0);background-image:linear-gradient(var(--color-0),var(--color-0));background-size:100% 0.1em;background-position:100% 100%,0 100%;background-repeat:no-repeat;position:relative;padding:0 0.1em;margin:0 0.1em;text-decoration:none;transform-origin:center;transition:0.08s ease-out;z-index:10;}a:hover,a:focus {background-size:100% 100%;color:var(--color-bg);}pre a {all:initial;font-family:var(--mono-font);}pre a::after {all:initial;}pre >* {font-family:var(--mono-font);}pre {overflow-x:scroll;max-width:90vw;padding:8px;}code {white-space:pre;font-size:0.8em;font-family:var(--mono-font);background-color:#efefef;}html {-webkit-text-size-adjust:100%;}pre >code.sourceCode {white-space:pre;position:relative;}pre >code.sourceCode >span {display:inline-block;line-height:1.25;}pre >code.sourceCode >span:empty {height:1.2em;}.sourceCode {overflow:visible;}code.sourceCode >span {color:inherit;text-decoration:inherit;}div.sourceCode {margin:1em 0;}pre.sourceCode {margin:0;}@media screen {div.sourceCode {overflow:auto;}}@media print {pre >code.sourceCode {white-space:pre-wrap;}pre >code.sourceCode >span {text-indent:-5em;padding-left:5em;}}pre.numberSource code {counter-reset:source-line 0;}pre.numberSource code >span {position:relative;left:-4em;counter-increment:source-line;}pre.numberSource code >span >a:first-child::before {content:counter(source-line);position:relative;left:-1em;text-align:right;vertical-align:baseline;border:none;display:inline-block;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding:0 4px;width:4em;color:#aaaaaa;}pre.numberSource {margin-left:3em;border-left:1px solid #aaaaaa;padding-left:4px;}div.sourceCode {background-color:#efefef;padding:1em;}@media screen {pre >code.sourceCode >span >a:first-child::before {color:var(--color-0);text-decoration:underline;}}code span.al {color:#ff0000;font-weight:bold;}code span.an {color:#60a0b0;font-weight:bold;font-style:italic;}code span.at {color:#7d9029;}code span.bn {color:#40a070;}code span.bu {color:#008000;}code span.cf {color:#007020;font-weight:bold;}code span.ch {color:#4070a0;}code span.cn {color:#880000;}code span.co {color:#60a0b0;font-style:italic;}code span.cv {color:#60a0b0;font-weight:bold;font-style:italic;}code span.do {color:#ba2121;font-style:italic;}code span.dt {color:#902000;}code span.dv {color:#40a070;}code span.er {color:#ff0000;font-weight:bold;}code span.ex {}code span.fl {color:#40a070;}code span.fu {color:#06287e;}code span.im {color:#008000;font-weight:bold;}code span.in {color:#60a0b0;font-weight:bold;font-style:italic;}code span.kw {color:#007020;font-weight:bold;}code span.op {color:#666666;}code span.ot {color:#007020;}code span.pp {color:#bc7a00;}code span.sc {color:#4070a0;}code span.ss {color:#bb6688;}code span.st {color:#4070a0;}code span.va {color:#19177c;}code span.vs {color:#4070a0;}code span.wa {color:#60a0b0;font-weight:bold;font-style:italic;}