﻿/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace, monospace;font-display:auto;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-display:auto;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-display:auto;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}:root{--phoneWidth: (max-width: 684px);--tabletWidth: (max-width: 900px);--mediumWidth: (max-width: 1200px)}@font-face{font-family:"Inter UI";font-style:normal;font-display:fallback;font-weight:400;src:url("../fonts/Inter-UI-Regular.woff2") format("woff2"),url("../fonts/Inter-UI-Regular.woff") format("woff")}@font-face{font-family:"Inter UI";font-style:italic;font-display:fallback;font-weight:400;src:url("../fonts/Inter-UI-Italic.woff2") format("woff2"),url("../fonts/Inter-UI-Italic.woff") format("woff")}@font-face{font-family:"Inter UI";font-style:normal;font-display:auto;font-weight:600;src:url("../fonts/Inter-UI-Medium.woff2") format("woff2"),url("../fonts/Inter-UI-Medium.woff") format("woff")}@font-face{font-family:"Inter UI";font-style:italic;font-display:fallback;font-weight:600;src:url("../fonts/Inter-UI-MediumItalic.woff2") format("woff2"),url("../fonts/Inter-UI-MediumItalic.woff") format("woff")}@font-face{font-family:"Inter UI";font-style:normal;font-display:fallback;font-weight:800;src:url("../fonts/Inter-UI-Bold.woff2") format("woff2"),url("../fonts/Inter-UI-Bold.woff") format("woff")}@font-face{font-family:"Inter UI";font-style:italic;font-display:fallback;font-weight:800;src:url("../fonts/Inter-UI-BoldItalic.woff2") format("woff2"),url("../fonts/Inter-UI-BoldItalic.woff") format("woff")}.button-container{display:table;margin-left:auto;margin-right:auto}button,.button,a.button{position:relative;display:flex;align-items:center;justify-content:center;padding:8px 18px;margin-bottom:5px;background:#eaeaea;text-decoration:none;text-align:center;font-weight:500;border-radius:8px;border:1px solid transparent;appearance:none;cursor:pointer;outline:none}.dark-theme button,.dark-theme .button,.dark-theme a.button{background:#3b3d42;color:inherit}button.outline,.button.outline,a.button.outline{background:transparent;border-color:#eaeaea;box-shadow:none;padding:8px 18px}.dark-theme button.outline,.dark-theme .button.outline,.dark-theme a.button.outline{border-color:#3b3d42;color:inherit}button.outline :hover,.button.outline :hover,a.button.outline :hover{transform:none;box-shadow:none}button.primary,.button.primary,a.button.primary{box-shadow:0 4px 6px rgba(50,50,93,0.11),0 1px 3px rgba(0,0,0,0.08)}button.primary:hover,.button.primary:hover,a.button.primary:hover{box-shadow:0 2px 6px rgba(50,50,93,0.21),0 1px 3px rgba(0,0,0,0.08)}button.link,.button.link,a.button.link{background:none;font-size:1rem}button.small,.button.small,a.button.small{font-size:0.8rem}button.wide,.button.wide,a.button.wide{min-width:200px;padding:14px 24px}.header{background:#f9f9f9;display:flex;align-items:center;justify-content:center;position:relative;padding:20px}.dark-theme .header{background:#1b1c1c}.header .menu-trigger{display:flex;align-items:center;justify-content:center}.header__right{display:flex;flex-direction:row;align-items:center}@media (max-width: 684px){.header__right{flex-direction:row-reverse}}.header__inner{display:flex;align-items:center;justify-content:space-between;margin:0 auto;width:760px;max-width:100%}.header__inner a{text-decoration:none}.theme-toggle{display:flex;align-items:center;justify-content:center;line-height:1;cursor:pointer}.theme-toggler{fill:currentColor}.unselectable{user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.logo{display:flex;align-items:center;text-decoration:none;font-weight:bold;font-display:auto;font-family:monospace, monospace}.logo img{height:44px}.logo__mark{margin-right:5px}.logo__text{font-size:1.125rem}.logo__cursor{display:inline-block;width:10px;height:1rem;background:#222;margin-left:2px;border-radius:1px;animation:cursor 1s infinite}.dark-theme .logo__cursor{background:#eee9e2}@media (prefers-reduced-motion: reduce){.logo__cursor{animation:none}}@keyframes cursor{0%{visibility:hidden}50%{visibility:hidden}100%{visibility:visible}}.menu{background:#f9f9f9;border-right:1px solid;margin-right:18px;z-index:9999}.dark-theme .menu{background:#1b1c1c}@media (max-width: 684px){.menu{position:absolute;top:50px;right:0;border:none;margin:0;padding:10px}}.menu__inner{display:flex;align-items:center;justify-content:flex-start;max-width:100%;margin:0 auto;padding:0 15px;font-size:1rem;list-style:none}.menu__inner li{margin:0 12px}@media (max-width: 684px){.menu__inner{flex-direction:column;align-items:flex-start;padding:0}.menu__inner li{margin:0;padding:5px}}.menu-trigger{width:24px;height:24px;fill:currentColor;margin-left:10px;cursor:pointer}.menu a{display:inline-block;margin-right:15px;text-decoration:none}.menu a:hover{text-decoration:underline}.menu a:last-of-type{margin-right:0}::-webkit-scrollbar{width:8px;height:8px;background:#212020}::-webkit-scrollbar-thumb{background:#888}::-webkit-scrollbar-thumb:hover{background:#dcdcdc}html{box-sizing:border-box;letter-spacing:0.06em;scroll-behavior:smooth}*,*:before,*:after{box-sizing:inherit;overflow-wrap:anywhere;word-break:break-word}body{margin:0;padding:0;font-family:"Inter UI", -apple-system, BlinkMacSystemFont, "Roboto", "Segoe UI", Helvetica, Arial, sans-serif;font-display:auto;font-size:1rem;line-height:1.54;background-color:#fff;color:#222;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;font-feature-settings:"liga", "tnum", "case", "calt", "zero", "ss01", "locl";-webkit-overflow-scrolling:touch;-webkit-text-size-adjust:100%;display:flex;min-height:100vh;flex-direction:column}@media (max-width: 684px){body{font-size:1rem}}body.dark-theme{background-color:#1c1f1f;color:#eee9e2}h2,h3,h4,h5,h6{display:flex;align-items:center;line-height:1.3}h1{font-size:2.625rem}h2{font-size:1.625rem}h3{font-size:1.375rem}h4{font-size:1.125rem}h5{font-size:1.075rem;margin:1em 0}h6{font-size:1rem;margin:1em 0}@media (max-width: 684px){h1{font-size:2rem}h2{font-size:1.4rem}h3{font-size:1.15rem}h4{font-size:1.125rem}h5{font-size:1.075rem}h6{font-size:1rem}}a{color:inherit}img{display:block;width:auto;height:auto;max-width:100%;max-height:100%}img.left{margin-right:auto}img.center{margin-left:auto;margin-right:auto}img.right{margin-left:auto}img.circle{border-radius:50%;max-width:25%;margin:auto}figure{display:table;max-width:100%;margin:1em 0}figure img{border-radius:8px;padding:5px}.dark-theme figure img{background-color:rgba(255,255,255,0.247059)}figure picture{max-height:100%;max-width:100%}figure.left{margin-right:auto}figure.left-floated{margin-right:auto;float:left}figure.left-floated img{margin:20px 20px 20px 0}figure.center{margin-left:auto;margin-right:auto}figure.right{margin-left:auto}figure.right-floated{margin-left:auto;float:right}figure.right-floated img{margin:20px 0 20px 20px}figure.rounded img{border-radius:50%}figure figcaption{font-size:1.125rem;line-height:1.3;margin-top:0.4em;opacity:0.8;vertical-align:middle}figure figcaption span{vertical-align:middle}figure figcaption.left{text-align:left}figure figcaption.center{text-align:center}figure figcaption.right{text-align:right}figure figcaption .figcaption__title{font-weight:bold}figure figcaption .figcaption__attr{font-size:0.7em}figure figcaption .figcaption__attr svg{margin-right:0.3em}figure.small{max-width:300px;width:90%;margin:5px 0}figure.inline{display:inline-table}figure.floated-focus{display:flex;position:fixed;top:0;left:0;width:100vw;max-width:unset;height:100vh;padding:3rem;margin:0;align-items:center;justify-content:center;flex-direction:column;background-color:rgba(16,18,18,0.92);z-index:10000}figure.floated-focus picture{max-height:90%}figure.floated-focus figcaption{color:#eee9e2;font-size:1.5rem}figure.floated-focus:after{content:"Close";margin-top:1rem;text-decoration:underline;cursor:pointer;display:block;color:rgba(238,233,226,0.57)}code{font-family:Consolas, Monaco, Andale Mono, Ubuntu Mono, monospace;font-display:auto;font-feature-settings:normal;background:#eaeaea;padding:1px 6px;margin:0 2px;border-radius:5px;font-size:0.95rem;word-wrap:break-word}.dark-theme code{background:#3b3d42}pre{padding:10px 10px 10px 20px;border-radius:8px;font-size:0.95rem;overflow:auto}@media (max-width: 684px){pre{white-space:pre-wrap;word-wrap:break-word}}pre code{background:none !important;color:#ccc;margin:0;padding:0;font-size:inherit}.dark-theme pre code{color:inherit}blockquote{position:relative;border-left:2px solid;margin:20px 40px;padding:10px 20px}@media (max-width: 684px){blockquote{margin:10px 10px 10px 25px;padding:10px}}blockquote:before{content:"”";font-display:auto;font-size:3.875rem;position:absolute;left:-40px;top:-13px}@media (max-width: 684px){blockquote:before{left:-27.5px;top:-7px;font-size:3.075rem}}blockquote p:first-of-type{margin-top:0}blockquote p:last-of-type{margin-bottom:0}ul,ol{margin-left:40px;padding:0}@media (max-width: 684px){ul,ol{margin-left:20px}}ol ol{list-style-type:lower-alpha}.container{flex:1 auto;display:flex;flex-direction:column;justify-content:center;text-align:center}.content{display:flex;flex-direction:column;flex:1 auto;align-items:center;justify-content:center;margin:0}@media (max-width: 684px){.content{margin-top:0}}.content-list{display:block}hr{width:100%;border:none;background:#dcdcdc;height:1px}.dark-theme hr{background:#4a4b50}svg{height:1em}.hidden{display:none !important}@media (max-width: 684px){.hide-on-phone{display:none}}@media (max-width: 900px){.hide-on-tablet{display:none}}.screen-reader-text{border:0;clip:rect(1px, 1px, 1px, 1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute !important;width:1px;word-wrap:normal !important}.screen-reader-text:focus{background-color:#f1f1f1;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,0.6);clip:auto !important;clip-path:none;color:#21759b;display:block;font-size:14px;font-size:0.875rem;font-weight:bold;height:auto;width:auto;top:5px;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;z-index:100000}.socials{user-select:none}.socials svg{font-size:1.5rem}table{width:100%;padding:10px;border-radius:8px;font-size:0.95rem;background:#eaeaea}table th{padding:8px 8px;word-break:normal;overflow-wrap:normal}table td{padding:6px 8px;border-top:1px solid #767676}.dark-theme table{background:#3b3d42}.dark-theme table td{border-top-color:#73747b}.feather{display:inline-block;vertical-align:-0.125em;width:1em;height:1em}.nostyle{text-decoration:none}.breadcrumbs{display:inline}.breadcrumbs ol{list-style-type:none;margin:0;display:inline}.breadcrumbs ol li{display:inline}.breadcrumbs ol li::after{content:" > "}.article-heading a{position:relative;text-decoration:none;--background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="rgb(34,34,34)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg>')}.dark-theme .article-heading a{--background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="rgb(238,233,226)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg>')}.article-heading a.current-heading{--background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="rgb(0, 128, 0)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" class="feather feather-check"><polyline points="20 6 9 17 4 12"></polyline></svg>')}.article-heading a:hover::before{content:" ";display:inline-block;position:absolute;top:50%;transform:translateY(-50%);height:100%;background-image:var(--background-image);background-repeat:no-repeat;background-position:center;background-size:auto 50%}@media (min-width: 900px){.article-heading a:hover::before{right:100%;width:1.5em}}@media (max-width: 900px){.article-heading a:hover::before{left:100%;width:1.2em}}.highlight{position:relative;border-radius:8px;margin:0.95em 0;overflow:hidden}.highlight pre{padding-left:0;padding-right:0;margin:0}.highlight pre .line{padding-left:20px;padding-right:40px}.highlight code{display:block;width:max-content;min-width:100%}.highlight table{width:100% !important;display:block;background:inherit;position:relative;border-radius:0;font-size:inherit}.highlight table tbody{display:block}.highlight table tbody tr{display:flex;flex-direction:row}.highlight table tbody tr td{overflow-wrap:anywhere;word-break:normal;width:1px}.highlight table tbody tr td pre{margin:0}@media (max-width: 684px){.highlight table tbody tr td pre{white-space:pre}}.highlight table tbody tr td:first-of-type{flex:0 0 max-content}.highlight table tbody tr td:first-of-type .lnt{padding-left:14px;padding-right:14px;margin-right:0}.highlight table tbody tr td:last-of-type{flex:1 1 auto}.highlight table tbody tr td:last-of-type pre{padding-left:0px}.highlight .codeblock-copy{position:absolute;top:10px;right:10px;display:block;width:26px;height:26px;border:none;padding:0;margin:0;border-radius:6px;background:none;background-color:inherit;background-image:url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="rgb(173,173,173)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-copy"><rect x="9" y="9" width="13" height="13" rx="2" ry="2"></rect><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path></svg>');background-repeat:no-repeat;background-position:center;background-size:auto 65%}.highlight .codeblock-copy.current-code{--selected-code-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="rgb(52, 184, 0)" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" class="feather feather-check"><polyline points="20 6 9 17 4 12"></polyline></svg>');background-image:var(--selected-code-image)}.highlight .codeblock-copy.current-code:hover{background-image:var(--selected-code-image)}.highlight .codeblock-copy:hover{background-image:url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="rgb(255,255,255)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-copy"><rect x="9" y="9" width="13" height="13" rx="2" ry="2"></rect><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path></svg>')}#toc.desktop-only{display:none}#toc .toc-title{display:flex;align-items:center;font-weight:bold;font-size:1.625rem;line-height:1.3;margin:0.83em 0}#toc ul li::marker,#toc ol li::marker{content:"- "}@media (min-width: 1840px){#toc{display:block !important;position:absolute;top:100vh;height:calc(100% - 100vh - 380px)}#toc .toc-content{position:sticky;top:10vh;max-height:70vh;margin-left:calc(-300px - 100px);display:flex !important;flex-direction:column;width:300px}#toc .toc-content ::-webkit-scrollbar{width:6px;height:6px;background:#e6e6e6;border-radius:8px}#toc .toc-content ::-webkit-scrollbar-thumb{background:#bfbfbf;border-radius:8px}#toc .toc-content ::-webkit-scrollbar-thumb:hover{background:#999}.dark-theme #toc .toc-content ::-webkit-scrollbar{background:#343a3a}.dark-theme #toc .toc-content ::-webkit-scrollbar-thumb{background:#596262}.dark-theme #toc .toc-content ::-webkit-scrollbar-thumb:hover{background:#7d8a8a}#toc .toc-content .toc-title{font-size:1.375rem;min-height:calc(1.625rem * 1.3);margin:0}#toc .toc-content nav{overflow-y:auto;margin-top:1em}#toc .toc-content a{display:block;text-decoration:none;padding:5px;border-radius:8px}#toc .toc-content a:hover{background:#e6e6e6}.dark-theme #toc .toc-content a:hover{background:#343a3a}#toc .toc-content a.current-toc{background:#e6e6e6}.dark-theme #toc .toc-content a.current-toc{background:#343a3a}#toc .toc-content a::before{content:"- "}#toc .toc-content ul,#toc .toc-content ol{margin:0;padding:0}#toc .toc-content ul li::marker,#toc .toc-content ol li::marker{content:""}#toc .toc-content ul li a,#toc .toc-content ol li a{padding-left:20px}#toc .toc-content ul li li a,#toc .toc-content ol li li a{padding-left:40px}#toc .toc-content ul li li li a,#toc .toc-content ol li li li a{padding-left:60px}}.post{width:100%;max-width:1000px;text-align:left;padding:20px;margin:20px auto;position:relative}@media (max-width: 900px){.post{max-width:600px}}@media (max-width: 1200px){.post{max-width:800px}}.post-date:after{content:"—"}.post-title{font-size:2.625rem;margin:0 0 20px}@media (max-width: 684px){.post-title{font-size:2rem}}.post-title a{text-decoration:none}.post-subtitle{font-size:1.9rem;margin:-15px 0 20px}@media (max-width: 684px){.post-subtitle{font-size:1.6rem}}.post-breadcrumbs{font-size:1.15rem;margin:10px 0 5px}@media (max-width: 684px){.post-breadcrumbs{font-size:0.9rem}}.post-description{font-size:1.15rem}@media (max-width: 684px){.post-description{font-size:1.075rem}}.post-tags{display:block;margin-bottom:20px;font-size:1rem;opacity:0.5}.post-tags a{text-decoration:none}.post-content{margin-top:30px}.post-cover{border-radius:8px;margin:30px -5.2%;width:110%;max-width:110%;text-decoration:none}@media (max-width: 1200px){.post-cover{max-width:860px}}@media (max-width: 900px){.post-cover{margin:20px 0;width:100% !important}}.post-cover img{width:100%}.post-info{margin-top:30px;font-size:0.8rem;line-height:normal;opacity:0.6}.post-info p{margin:0.8em 0}.post-info a:hover{border-bottom:1px solid white}.post-info svg{margin-right:0.8em}.post-info .tag{margin-right:0.5em;display:inline-block}.post-info .tag::before{content:"#"}.post .flag{border-radius:50%;margin:0 5px}.pagination{margin-top:20px}.pagination__title{display:flex;text-align:center;position:relative;margin:20px 0}.pagination__title-h{text-align:center;margin:0 auto;padding:5px 10px;background:#fff;color:#767676;font-size:0.8rem;text-transform:uppercase;text-decoration:none;letter-spacing:0.1em;z-index:1}.dark-theme .pagination__title-h{background:#1c1f1f;color:#73747b}.pagination__title hr{position:absolute;left:0;right:0;width:100%;margin-top:15px;z-index:0}.pagination__buttons{display:flex;align-items:center;justify-content:center}.pagination__buttons ul,.pagination__buttons ol{list-style-type:none;margin:0;display:flex;align-items:center;justify-content:center;margin:0 10px}.pagination__buttons .button a{text-decoration:none;font-weight:bold;overflow:visible}.button{position:relative;display:inline-flex;align-items:center;justify-content:center;background:#eaeaea;font-size:1rem;font-weight:600;border-radius:8px;max-width:40%;padding:0;cursor:pointer;appearance:none}.button:disabled,.button[disabled],.button.disabled{pointer-events:none}.button.active{background:#b7b7b7}.dark-theme .button{background:#3b3d42}.dark-theme .button.active{background:#70747d}.button+.button{margin-left:10px}.button>*{display:flex;padding:8px 16px;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.button a{text-decoration:none}.button__text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.button.next .button__icon{margin-left:8px}.button.previous .button__icon{margin-right:8px}.posts{width:100%;max-width:1000px;text-align:left;padding:20px;margin:20px auto}@media (max-width: 1200px){.posts{max-width:800px}}@media (max-width: 900px){.posts{max-width:660px}}.posts:not(:last-of-type){border-bottom:1px solid #dcdcdc}.dark-theme .posts:not(:last-of-type){border-color:#4a4b50}.posts-group{display:flex;margin-bottom:1.9em;line-height:normal}@media (max-width: 900px){.posts-group{display:block}}.posts-list{flex-grow:1;margin:0;padding:0;list-style:none}.posts-breadcrumbs{margin:0 0 -25px}@media (max-width: 684px){.posts-breadcrumbs{font-size:0.9rem;margin:0 0 -15px}}.posts .post-title{font-size:1.9rem;margin:5px 0 5px 0}.posts .post-subtitle{font-size:1.1rem;margin:5px 0 10px 0;font-weight:600}.posts .post-subtitle .breadcrumbs li:last-child::after{display:none}.posts .post-year{padding-top:6px;margin-right:1.8em;font-size:1.6em;opacity:0.6}@media (max-width: 900px){.posts .post-year{margin:-6px 0 4px}}.posts .post-item{border-bottom:1px grey dashed}.posts .post-item a{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0;text-decoration:none}.posts .post-day{flex-shrink:0;margin-left:1em;opacity:0.6}.posts .post-cover{margin-top:20px;margin-bottom:20px}.posts .post-content{margin-top:10px;margin-bottom:10px}.portfolio{width:100%;max-width:1000px;text-align:left;padding:20px;margin:20px auto}@media (max-width: 1200px){.portfolio{max-width:800px}}@media (max-width: 900px){.portfolio{max-width:600px}}.portfolio-title{font-size:2.625rem;margin:0 0 20px}@media (max-width: 684px){.portfolio-title{font-size:2rem}}.portfolio-title a{text-decoration:none}.portfolio-timespan{margin-top:-20px;font-size:0.9em}.portfolio-tags{display:block;margin-bottom:20px;font-size:1rem;opacity:0.5}.portfolio-tags a{text-decoration:none}.portfolio-content{margin-top:30px}.portfolio-links{font-size:0.8em;margin-top:-8px;opacity:0.7}.portfolio-links a{text-decoration:none}.portfolio-links>*{margin-right:8px}.portfolio-cover{border-radius:8px;margin:30px -50px;width:1060px;max-width:1060px}@media (max-width: 1200px){.portfolio-cover{max-width:860px}}@media (max-width: 900px){.portfolio-cover{margin:20px 0;width:100%}}.portfolio-info{margin-top:30px;font-size:0.8rem;line-height:normal;opacity:0.6}.portfolio-info p{margin:0.8em 0}.portfolio-info a:hover{border-bottom:1px solid white}.portfolio-info svg{margin-right:0.8em}.portfolio-info .tag{margin-right:0.5em;display:inline-block}.portfolio-info .tag::before{content:"#"}.portfolio .flag{border-radius:50%;margin:0 5px}.portfolios{width:100%;max-width:calc(1000px + 50px + 80px);text-align:left;padding:20px calc(20px + 50px + 15px);margin:20px auto;counter-reset:portfolio}@media (max-width: 1200px){.portfolios{max-width:calc(800px + 50px + 80px)}}@media (max-width: 900px){.portfolios{max-width:660px}}.portfolios:not(:last-of-type){border-bottom:1px solid #dcdcdc}.dark-theme .portfolios:not(:last-of-type){border-color:#4a4b50}.portfolios-group{display:flex;margin-bottom:1.9em;line-height:normal}@media (max-width: 900px){.portfolios-group{display:block}}.portfolios-list{flex-grow:1;margin:0;padding:0;list-style:none}.portfolios .portfolio{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;margin:80px auto;position:relative;counter-increment:portfolio}.portfolios .portfolio>*{flex:1;padding:5px}@media (max-width: 900px){.portfolios .portfolio{flex-direction:column-reverse}}.portfolios .portfolio .read-more{white-space:nowrap;max-width:max-content}.portfolios .portfolio-cover{margin:0}.portfolios .portfolio-title{font-size:1rem;margin:5px 0 2px 0}.portfolios .portfolio-company{font-size:0.9rem;margin:5px 0 5px 0}.portfolios .portfolio-meta{font-size:0.8em}.portfolios .portfolio-content{margin-top:12px}.portfolios .portfolio-item{border-bottom:1px grey dashed}.portfolios .portfolio-item a{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0;text-decoration:none}.portfolios .portfolio-day{flex-shrink:0;margin-left:1em;opacity:0.6}.portfolios .portfolio-skills-title{font-size:0.9rem;margin:15px 0 0 0}.portfolios .portfolio::before{display:block;content:counter(portfolio);position:absolute;transform:translate(-50%, -50%);border-radius:50%;font-weight:bold;min-width:50px;min-height:50px;line-height:50px;text-align:center;top:30px;z-index:10;background-color:#222;color:#fff}.dark-theme .portfolios .portfolio::before{background-color:#eee9e2;color:#1c1f1f}.portfolios .portfolio::after{display:block;content:"";position:absolute;top:-50px;width:calc(50% + 50px);height:calc(100% + 83px);pointer-events:none;border-bottom:3px solid;border-top:3px solid}.portfolios .portfolio:nth-child(odd)::before{left:-48.5px}.portfolios .portfolio:nth-child(odd)::after{left:-50px;border-left:3px solid;border-radius:15px 0 0 15px}.portfolios .portfolio:nth-child(even)::before{right:-98.5px}.portfolios .portfolio:nth-child(even)::after{right:-50px;border-right:3px solid;border-radius:0 15px 15px 0}.portfolios .portfolio:first-child::after{border-top:0;border-top-left-radius:0;border-top-right-radius:0}.portfolios .portfolio:last-child::after{border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.footer{padding:40px 20px;flex-grow:0;color:#767676}.footer__inner{display:flex;align-items:center;justify-content:center;margin:0 auto;width:760px;max-width:100%}@media (max-width: 900px){.footer__inner{flex-direction:column}}.footer__content{display:flex;flex-direction:column;align-items:center;font-size:1rem;color:#767676}.footer__content__section{display:flex;flex-direction:row;align-items:center;padding:5px}@media (max-width: 900px){.footer__content__section{margin-top:10px}}@media (max-width: 900px){.footer__content__section.regular{flex-direction:column}}.footer__content__section.regular>*:not(:last-child)::after{content:"•";padding:0 5px}@media (max-width: 900px){.footer__content__section.regular>*:not(:last-child)::after{content:"";padding:0}}.footer__content__section.regular>*:last-child{padding:0 5px}@media (max-width: 900px){.footer__content__section.regular>*:last-child{padding:0}}.footer__content__section.donations{white-space:nowrap;overflow-x:scroll;max-width:600px;position:relative}@media (max-width: 900px){.footer__content__section.donations{max-width:180px}}.footer__content__section.donations .wallet .name{font-weight:700}.sharing-buttons{display:flex;flex-wrap:wrap;justify-content:space-between}.sharing-buttons .resp-sharing-button__icon,.sharing-buttons .resp-sharing-button__link{display:inline-block}.sharing-buttons .resp-sharing-button__link{text-decoration:none;margin:0.5em}.sharing-buttons .resp-sharing-button{border-radius:5px;transition:25ms ease-out;padding:0.5em 0.75em;font-family:Helvetica Neue, Helvetica, Arial, sans-serif}.sharing-buttons .resp-sharing-button__icon svg{width:1em;height:1em;margin-right:0.4em;vertical-align:top}.sharing-buttons .resp-sharing-button--small svg{margin:0;vertical-align:middle}.collapsible-block{position:relative;width:100%;margin:30px 0;border-radius:10px;overflow:hidden}.collapsible-block.tight{margin:15px 0}.collapsible-block input[type="checkbox"]{position:absolute;visibility:hidden}.collapsible-block__content{max-height:80vh;overflow:auto;transition:max-height 0.15s ease;background-color:#f7f7f7}.dark-theme .collapsible-block__content{background-color:#2d2e32}.collapsible-block__content-child{transition:margin 0.15s ease;margin:1em}.collapsible-block__content-child>.highlight{margin:1em -1em;border-radius:0}.collapsible-block__content-child>.highlight:first-child{margin-top:-1em;border-top-left-radius:0;border-top-right-radius:0}.collapsible-block__content-child>.highlight:last-child{margin-bottom:-1em}.collapsible-block__content-child>table{margin:1em -1em;border-radius:0}.collapsible-block__content-child>table:only-child{background:inherit;padding:0 10px}.collapsible-block__content-child>table:first-child{margin-top:-1em}.collapsible-block__content-child>table:last-child{margin-bottom:-1em}.collapsible-block__content-child>table td{word-break:normal;overflow-wrap:normal;white-space:pre}.collapsible-block input[type="checkbox"]:checked~.collapsible-block__content{max-height:0;overflow:hidden}.collapsible-block input[type="checkbox"]:checked~label .collapsible-block__toggle:after{content:attr(data-label-expand)}.collapsible-block label{position:relative;display:flex;justify-content:space-between;background:#eaeaea;padding:10px;min-width:30px;min-height:30px;margin:0;cursor:pointer}.dark-theme .collapsible-block label{background:#3b3d42}.collapsible-block__title{flex:1;color:#222;padding:3px 10px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-weight:600}.dark-theme .collapsible-block__title{color:#eee9e2}.collapsible-block__badge{background:#fff;color:#222;border-radius:10px;padding:3px 10px;font-weight:600}.dark-theme .collapsible-block__badge{background:#1c1f1f;color:#eee9e2}.collapsible-block__toggle{color:#222;font-size:16px;padding:3px 10px;font-weight:700}.collapsible-block__toggle:after{content:attr(data-label-collapse)}.dark-theme .collapsible-block__toggle{color:#eee9e2}.collapsible-block pre{margin-top:0;margin-bottom:0;border-radius:0}.masonry{display:grid;margin-top:20px;grid-gap:20px 90px;grid-template-columns:repeat(2, minmax(250px, 1fr))}.masonry>*{margin:0}@media (max-width: 1200px){.masonry{grid-template-columns:1fr}}

/*# sourceMappingURL=main.css.map */