@font-face{font-family:schibsted grotesk;src:url(/fonts/schibsted-grotesk-400.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:schibsted grotesk;src:url(/fonts/schibsted-grotesk-500.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:schibsted grotesk;src:url(/fonts/schibsted-grotesk-600.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:schibsted grotesk;src:url(/fonts/schibsted-grotesk-700.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:lato;src:url(/fonts/lato-700.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}:root{--base-line-height: 1.6;--font-default: schibsted grotesk, "Helvetica Neue", helvetica, arial, sans-serif;--font-mono: ui-monospace, Menlo, Consolas, "DejaVu Sans Mono", monospace;--font-size-default: 16px;--font-size-small: 13px;--font-title: lato,"atrament-web", system-ui, -apple-system, helvetica, sans-serif;--font-weight-bold: 700;--font-weight-default: 400;--spacing-unit: 4px;--color-background: #fff;--color-background-inverse: #333;--color-border-light: #ccc;--color-button: #1677be;--color-font: #404040;--color-font-code: #e01e5a;--color-font-inverse: #fff;--color-font-light: #6b7277;--color-link: #006eb3;--color-link-inverse: #38bdf8;--color-pop: #e85c57;--color-tag: #3e73a9;--color-tag-green: #05875f;--color-tag-orange: #ea580c}@media(prefers-color-scheme: dark){:root{--color-background: #1C1B1A;--color-font: #ECE4D9;--color-font-code: #ec775c;--color-link: #f9cd22}}*{transition:color 750ms cubic-bezier(0.4, 0, 0.2, 1),color .2s cubic-bezier(0.4, 0, 0.2, 1);transition:background-color 500ms cubic-bezier(0.4, 0, 0.2, 1),color .2s cubic-bezier(0.4, 0, 0.2, 1)}html{margin:0;padding:0;text-size-adjust:100%}body{margin:0;padding:0;font-family:var(--font-default);font-weight:var(--font-weight-default);font-size:var(--font-size-default);background-color:var(--color-background);color:var(--color-font);line-height:var(--base-line-height);margin-bottom:calc(var(--spacing-unit)*16)}h1,h2,h3,h4,h5,h6{font-family:var(--font-title);font-weight:700;line-height:calc(var(--base-line-height)*.75);margin:40px 0 10px 0}h1{font-size:2em}a{color:var(--color-link);text-decoration:underline}a:visited{color:var(--color-link)}a:hover{color:color-mix(in srgb, var(--color-link) 80%, black)}a:has(>code){text-decoration:none}a:has(>code):hover{text-decoration:underline}time{font-size:var(--font-size-small);color:var(--color-font-light)}blockquote{margin:0;padding-left:calc(var(--spacing-unit)*8);border-left:4px solid var(--color-pop)}span.tag{color:var(--color-font-inverse);font-size:var(--font-size-small);text-transform:lowercase;display:inline-block;line-height:1;border-radius:16px;background-color:var(--color-tag);padding:.2em .6em .3em}span.tag-tech{background-color:var(--color-tag-green)}span.tag-personal{background-color:var(--color-tag-orange)}a.btn{font-size:16px;background-color:var(--color-button);color:#fff;padding:12px 16px;border-radius:4px}a.btn:hover{background-color:color-mix(in srgb, var(--color-button) 80%, black)}figure{margin:0;padding:0}figure img{border-radius:4px}figure figcaption{text-align:right;font-size:var(--font-size-small);color:var(--color-font-light)}pre{font-size:14px;padding:8px 16px;overflow-x:scroll;overflow-y:hidden}p code{font-size:14px;color:var(--color-font-code);border:1px solid var(--color-border-light);border-radius:4px;background-color:rgba(29,28,29,.04);padding:2px 4px;white-space:pre}pre code{font-size:14px;border:none;padding:0}.hero{width:100%;height:440px;background-size:cover;background-position:center,center;position:relative;margin-top:-32px;margin-bottom:64px}header.site{display:flex;justify-content:space-between;align-items:center;background-color:var(--color-background-inverse);background-image:url("/content/root/topo.svg");background-size:600px 600px;height:25px;padding:8px;margin-bottom:32px}header.site .lettermark{font-size:18px;float:left;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400;text-decoration:none;color:#fff}header.site .lettermark:visited{color:#fff}header.site .lettermark:hover{text-decoration:underline}header.site .lettermark span{color:#888}header.site nav{height:25px}header.site nav a{margin:0 8px}#main{width:750px;margin:0 auto}#main h1{margin-top:0}#main article header h1,#main article header .published-meta{text-align:center}#main article header .published-meta{margin-top:8px;display:flex;justify-content:center;gap:16px}#main img{max-width:100%}#main footer{margin:64px 0;background-color:var(--color-background-inverse);background-image:url("/content/root/topo.svg");border-radius:8px;padding:32px;color:var(--color-font-inverse)}#main footer h1,#main footer h2,#main footer h3,#main footer h4,#main footer h5,#main footer h6{margin-top:0}#main footer a,#main footer a:visited{color:var(--color-link-inverse)}#about img.avatar{border-radius:4px;width:175px;float:left;margin-right:1.5em;margin-bottom:1.5em}#about article{line-height:1.2;margin-bottom:20px}#archives{margin-top:32px}#archives article,#archives time{display:flex;align-items:baseline}#archives article{margin-bottom:8px}#archives time{width:120px;min-width:120px}@media all and (max-width: 767px){.hero{height:220px}#main{width:95%}}@media all and (max-width: 350px){#about img.avatar{float:none;margin-bottom:0}}@media all and (max-width: 300px){header nav{display:none}}.highlight{background:var(--color-background-inverse);color:#f8f8f2}.highlight .hll{background-color:#49483e}.highlight .c{color:#75715e}.highlight .err{color:#960050;background-color:#1e0010}.highlight .k{color:#66d9ef}.highlight .l{color:#ae81ff}.highlight .n{color:#f8f8f2}.highlight .o{color:#f92672}.highlight .p{color:#f8f8f2}.highlight .cm,.highlight .cp,.highlight .c1,.highlight .cs{color:#75715e}.highlight .ge{font-style:italic}.highlight .gs{font-weight:bold}.highlight .kc,.highlight .kd{color:#66d9ef}.highlight .kn{color:#f92672}.highlight .kp,.highlight .kr,.highlight .kt{color:#66d9ef}.highlight .ld{color:#e6db74}.highlight .m{color:#ae81ff}.highlight .s{color:#e6db74}.highlight .na{color:#a6e22e}.highlight .nb{color:#f8f8f2}.highlight .nc{color:#a6e22e}.highlight .no{color:#66d9ef}.highlight .nd{color:#a6e22e}.highlight .ni{color:#f8f8f2}.highlight .ne,.highlight .nf{color:#a6e22e}.highlight .nl,.highlight .nn{color:#f8f8f2}.highlight .nx{color:#a6e22e}.highlight .py{color:#f8f8f2}.highlight .nt{color:#f92672}.highlight .nv{color:#f8f8f2}.highlight .ow{color:#f92672}.highlight .w{color:#f8f8f2}.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo{color:#ae81ff}.highlight .sb,.highlight .sc,.highlight .sd,.highlight .s2{color:#e6db74}.highlight .se{color:#ae81ff}.highlight .sh,.highlight .si,.highlight .sx,.highlight .sr,.highlight .s1,.highlight .ss{color:#e6db74}.highlight .bp,.highlight .vc,.highlight .vg,.highlight .vi{color:#f8f8f2}.highlight .il{color:#ae81ff}/*# sourceMappingURL=master.css.map */