.chroma{background-color:#fff}.chroma .err{color:#a61717;background-color:#e3d2d2}.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:#000;font-weight:700}.chroma .kc{color:#000;font-weight:700}.chroma .kd{color:#000;font-weight:700}.chroma .kn{color:#000;font-weight:700}.chroma .kp{color:#000;font-weight:700}.chroma .kr{color:#000;font-weight:700}.chroma .kt{color:#458;font-weight:700}.chroma .na{color:teal}.chroma .nb{color:#0086b3}.chroma .bp{color:#999}.chroma .nc{color:#458;font-weight:700}.chroma .no{color:teal}.chroma .nd{color:#3c5d5d;font-weight:700}.chroma .ni{color:purple}.chroma .ne{color:#900;font-weight:700}.chroma .nf{color:#900;font-weight:700}.chroma .nl{color:#900;font-weight:700}.chroma .nn{color:#555}.chroma .nt{color:navy}.chroma .nv{color:teal}.chroma .vc{color:teal}.chroma .vg{color:teal}.chroma .vi{color:teal}.chroma .s{color:#d14}.chroma .sa{color:#d14}.chroma .sb{color:#d14}.chroma .sc{color:#d14}.chroma .dl{color:#d14}.chroma .sd{color:#d14}.chroma .s2{color:#d14}.chroma .se{color:#d14}.chroma .sh{color:#d14}.chroma .si{color:#d14}.chroma .sx{color:#d14}.chroma .sr{color:#009926}.chroma .s1{color:#d14}.chroma .ss{color:#990073}.chroma .m{color:#099}.chroma .mb{color:#099}.chroma .mf{color:#099}.chroma .mh{color:#099}.chroma .mi{color:#099}.chroma .il{color:#099}.chroma .mo{color:#099}.chroma .o{color:#000;font-weight:700}.chroma .ow{color:#000;font-weight:700}.chroma .c{color:#998;font-style:italic}.chroma .ch{color:#998;font-style:italic}.chroma .cm{color:#998;font-style:italic}.chroma .c1{color:#998;font-style:italic}.chroma .cs{color:#999;font-weight:700;font-style:italic}.chroma .cp{color:#999;font-weight:700;font-style:italic}.chroma .cpf{color:#999;font-weight:700;font-style:italic}.chroma .gd{color:#000;background-color:#fdd}.chroma .ge{color:#000;font-style:italic}.chroma .gr{color:#a00}.chroma .gh{color:#999}.chroma .gi{color:#000;background-color:#dfd}.chroma .go{color:#888}.chroma .gp{color:#555}.chroma .gs{font-weight:700}.chroma .gu{color:#aaa}.chroma .gt{color:#a00}.chroma .gl{text-decoration:underline}.chroma .w{color:#bbb}.chroma{background-color:#f6f8fa}.dark{}.dark .chroma{color:#f8f8f2;background-color:#282a36}.dark .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.dark .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block}.dark .chroma .hl{display:block;width:100%;background-color:#ffc}.dark .chroma .lnt{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.dark .chroma .ln{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.dark .chroma .k{color:#ff79c6}.dark .chroma .kc{color:#ff79c6}.dark .chroma .kd{color:#8be9fd;font-style:italic}.dark .chroma .kn{color:#ff79c6}.dark .chroma .kp{color:#ff79c6}.dark .chroma .kr{color:#ff79c6}.dark .chroma .kt{color:#8be9fd}.dark .chroma .na{color:#50fa7b}.dark .chroma .nb{color:#8be9fd;font-style:italic}.dark .chroma .nc{color:#50fa7b}.dark .chroma .nf{color:#50fa7b}.dark .chroma .nl{color:#8be9fd;font-style:italic}.dark .chroma .nt{color:#ff79c6}.dark .chroma .nv{color:#8be9fd;font-style:italic}.dark .chroma .vc{color:#8be9fd;font-style:italic}.dark .chroma .vg{color:#8be9fd;font-style:italic}.dark .chroma .vi{color:#8be9fd;font-style:italic}.dark .chroma .s{color:#f1fa8c}.dark .chroma .sa{color:#f1fa8c}.dark .chroma .sb{color:#f1fa8c}.dark .chroma .sc{color:#f1fa8c}.dark .chroma .dl{color:#f1fa8c}.dark .chroma .sd{color:#f1fa8c}.dark .chroma .s2{color:#f1fa8c}.dark .chroma .se{color:#f1fa8c}.dark .chroma .sh{color:#f1fa8c}.dark .chroma .si{color:#f1fa8c}.dark .chroma .sx{color:#f1fa8c}.dark .chroma .sr{color:#f1fa8c}.dark .chroma .s1{color:#f1fa8c}.dark .chroma .ss{color:#f1fa8c}.dark .chroma .m{color:#bd93f9}.dark .chroma .mb{color:#bd93f9}.dark .chroma .mf{color:#bd93f9}.dark .chroma .mh{color:#bd93f9}.dark .chroma .mi{color:#bd93f9}.dark .chroma .il{color:#bd93f9}.dark .chroma .mo{color:#bd93f9}.dark .chroma .o{color:#ff79c6}.dark .chroma .ow{color:#ff79c6}.dark .chroma .c{color:#6272a4}.dark .chroma .ch{color:#6272a4}.dark .chroma .cm{color:#6272a4}.dark .chroma .c1{color:#6272a4}.dark .chroma .cs{color:#6272a4}.dark .chroma .cp{color:#ff79c6}.dark .chroma .cpf{color:#ff79c6}.dark .chroma .gd{color:#f55}.dark .chroma .ge{text-decoration:underline}.dark .chroma .gh{font-weight:700}.dark .chroma .gi{color:#50fa7b;font-weight:700}.dark .chroma .go{color:#44475a}.dark .chroma .gu{font-weight:700}.dark .chroma .gl{text-decoration:underline}@charset "UTF-8";:root{--primaryColor:#bb1450;--backgroundColor:#fff;--textColor:#000;--altTextColor:rgb(255, 255, 255);--textColor-1:#333;--textColor-2:rgb(78, 78, 78);--textColor-3:rgb(156, 156, 156);--cardBackgroundColor:#fff;--bg-1:#fff0fb;--bg-2:#dff5ff;--buttonTextColor:#fff;--footerColor:#333;--footerText:#fff;--color-moon:#000;--color-sun:rgb(255, 221, 0);--color-green:#00bd19;--gap:24px;--content-gap:20px;--nav-width:960px;--main-width:720px;--post-width:720px;--header-height:60px;--footer-height:80px;--radius:8px;--theme:rgb(255, 255, 255);--entry:rgb(255, 255, 255);--primary:rgb(30, 30, 30);--secondary:rgb(108, 108, 108);--tertiary:rgb(158, 158, 158);--tertiary-bg:rgb(214, 214, 214);--content:rgb(31, 31, 31);--code-bg:rgb(245, 245, 245);--border:rgb(216, 216, 216);--link-background-color:#e8e3f7;--link-color:var(--primary);--link-hover-color:#573eaa;--link-underline-shadow:0 1px 0 var(--link-color);--link-hover-underline-color:#6549c0;--link-hover-underline-shadow:0 2px 0 var(--link-hover-underline-color);--link-transition:all 0.3s ease}.dark{--primaryColor:rgb(255, 221, 0);--backgroundColor:rgb(34, 34, 34);--textColor:#fff;--altTextColor:#000;--textColor-1:rgb(230, 230, 230);--textColor-2:rgb(207, 207, 207);--textColor-3:rgb(139, 130, 0);--cardBackgroundColor:#2f3136;--bg-1:#000428;--bg-2:#002d55;--buttonTextColor:#000;--footerColor:#333;--footerText:#fff;--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(123, 124, 124);--tertiary-bg:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-bg:rgb(55, 56, 62);--border:rgb(94, 94, 94);--link-background-color:#5242746d;--link-color:var(--primary);--link-hover-color:#876fd6;--link-underline-shadow:0 1px 0 var(--link-color);--link-hover-underline-color:var(--link-hover-color);--link-hover-underline-shadow:0 2px 0 var(--link-hover-underline-color)}*,::after,::before{margin:0;padding:0;box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;overflow-y:scroll;scroll-behavior:smooth}a,button,body,h1,h2,h3,h4,h5,h6{color:var(--primary)}a{text-decoration:none}body{font-family:-apple-system,BlinkMacSystemFont,Helvetica,helvetica neue,segoe ui,Roboto,Oxygen,Ubuntu,Cantarell,open sans,sans-serif;font-size:18px;line-height:1.6em;word-break:break-word}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section,table{display:block}h1,h2,h3,h4,h5,h6{line-height:1.2}h1,h2,h3,h4,h5,h6,p{margin-top:0;margin-bottom:0}body,figure{margin:0}table{width:100%;border-collapse:collapse;border-spacing:0;overflow-x:auto;word-break:keep-all}button,input,textarea{padding:0;font:inherit;background:0 0;border:0}input,textarea{outline:0}button,input[type=button],input[type=submit]{cursor:pointer}input:-webkit-autofill,textarea:-webkit-autofill{box-shadow:0 0 0 50px var(--theme)inset}.list:not(.dark)::-webkit-scrollbar-track{background:var(--code-bg)}.list:not(.dark)::-webkit-scrollbar-thumb{border:5px solid var(--code-bg)}::selection{background-color:var(--primaryColor);color:var(--altTextColor)}@font-face{font-family:roboto;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/roboto-v30-latin-regular.eot);src:local(""),url(/fonts/roboto-v30-latin-regular.eot?#iefix)format("embedded-opentype"),url(/fonts/roboto-v30-latin-regular.woff2)format("woff2"),url(/fonts/roboto-v30-latin-regular.woff)format("woff"),url(/fonts/roboto-v30-latin-regular.ttf)format("truetype"),url(/fonts/roboto-v30-latin-regular.svg#Roboto)format("svg")}@font-face{font-family:roboto;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/roboto-v30-latin-italic.eot);src:local(""),url(/fonts/roboto-v30-latin-italic.eot?#iefix)format("embedded-opentype"),url(/fonts/roboto-v30-latin-italic.woff2)format("woff2"),url(/fonts/roboto-v30-latin-italic.woff)format("woff"),url(/fonts/roboto-v30-latin-italic.ttf)format("truetype"),url(/fonts/roboto-v30-latin-italic.svg#Roboto)format("svg")}@font-face{font-family:roboto;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/roboto-v30-latin-500.eot);src:local(""),url(/fonts/roboto-v30-latin-500.eot?#iefix)format("embedded-opentype"),url(/fonts/roboto-v30-latin-500.woff2)format("woff2"),url(/fonts/roboto-v30-latin-500.woff)format("woff"),url(/fonts/roboto-v30-latin-500.ttf)format("truetype"),url(/fonts/roboto-v30-latin-500.svg#Roboto)format("svg")}@font-face{font-family:roboto;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/roboto-v30-latin-500italic.eot);src:local(""),url(/fonts/roboto-v30-latin-500italic.eot?#iefix)format("embedded-opentype"),url(/fonts/roboto-v30-latin-500italic.woff2)format("woff2"),url(/fonts/roboto-v30-latin-500italic.woff)format("woff"),url(/fonts/roboto-v30-latin-500italic.ttf)format("truetype"),url(/fonts/roboto-v30-latin-500italic.svg#Roboto)format("svg")}@font-face{font-family:roboto;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/roboto-v30-latin-700.eot);src:local(""),url(/fonts/roboto-v30-latin-700.eot?#iefix)format("embedded-opentype"),url(/fonts/roboto-v30-latin-700.woff2)format("woff2"),url(/fonts/roboto-v30-latin-700.woff)format("woff"),url(/fonts/roboto-v30-latin-700.ttf)format("truetype"),url(/fonts/roboto-v30-latin-700.svg#Roboto)format("svg")}@font-face{font-family:roboto;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/roboto-v30-latin-700italic.eot);src:local(""),url(/fonts/roboto-v30-latin-700italic.eot?#iefix)format("embedded-opentype"),url(/fonts/roboto-v30-latin-700italic.woff2)format("woff2"),url(/fonts/roboto-v30-latin-700italic.woff)format("woff"),url(/fonts/roboto-v30-latin-700italic.ttf)format("truetype"),url(/fonts/roboto-v30-latin-700italic.svg#Roboto)format("svg")}@font-face{font-family:lora;font-style:normal;font-weight:500;src:url(/fonts/lora-v24-latin-500.eot);font-display:swap;src:local(""),url(/fonts/lora-v24-latin-500.eot?#iefix)format("embedded-opentype"),url(/fonts/lora-v24-latin-500.woff2)format("woff2"),url(/fonts/lora-v24-latin-500.woff)format("woff"),url(/fonts/lora-v24-latin-500.ttf)format("truetype"),url(/fonts/lora-v24-latin-500.svg#Lora)format("svg")}@font-face{font-family:lora;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/lora-v24-latin-700.eot);src:local(""),url(/fonts/lora-v24-latin-700.eot?#iefix)format("embedded-opentype"),url(/fonts/lora-v24-latin-700.woff2)format("woff2"),url(/fonts/lora-v24-latin-700.woff)format("woff"),url(/fonts/lora-v24-latin-700.ttf)format("truetype"),url(/fonts/lora-v24-latin-700.svg#Lora)format("svg")}@font-face{font-family:material symbols outlined;font-style:normal;font-weight:400;src:url(/fonticons/google-font-icons.woff2)format("woff2");font-display:swap}.material-symbols-outlined{font-family:material symbols outlined;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:'liga';-webkit-font-smoothing:antialiased}html{font-size:62.5%}@media only screen and (max-width:75em){html{font-size:56.25%}}@media only screen and (max-width:56.25em){html{font-size:50%}}@media only screen and (min-width:112.5em){html{font-size:75%}}body{box-sizing:border-box;background-image:linear-gradient(to right,var(--bg-1) 0%,var(--bg-2) 100%)}.container{margin-inline:auto;max-width:114rem}@media only screen and (max-width:75em){.container{max-width:95rem}}@media only screen and (max-width:56.25em){.container{max-width:70rem}}.main{position:relative;min-height:calc(100vh - var(--header-height) - var(--footer-height));max-width:calc(var(--main-width) + var(--gap) * 2);margin:auto;padding:var(--gap);padding-bottom:0}.main.post{max-width:calc(var(--post-width) + var(--gap) * 2)}.page-header h1{font-size:40px}.pagination{display:flex}.pagination a{color:var(--theme);font-size:13px;line-height:36px;background:var(--primary);border-radius:calc(36px/2);padding:0 16px}.pagination .next{margin-inline-start:auto}.social-icons{padding:12px 0}.social-icons a{display:inline-block;line-height:20px;transition:var(--link-transition)}.social-icons a:hover{color:var(--link-hover-color);box-shadow:var(--link-hover-underline-shadow)}.social-icons a:not(:last-of-type){margin-right:12px}.social-icons a svg{height:26px;width:26px}code{direction:ltr}div.highlight,pre{position:relative}.copy-code{opacity:0;position:absolute;top:4px;right:4px;color:rgba(255,255,255,.8);background:rgba(78,78,78,.8);border-radius:var(--radius);padding:4px 8px;font-size:14px;user-select:none;transition:all .2s}div.highlight:hover .copy-code,pre:hover .copy-code{opacity:1}.meta-item{display:inline-block}.meta-item *{color:var(--secondary)}.meta-item:not(:last-of-type):after{content:"·";margin-inline-start:.5em;margin-inline-end:.5em}.meta-item svg{width:1em;height:1em;display:inline-block;vertical-align:-.15em}.meta-item a{transition:var(--link-transition)}.meta-item a:hover{color:var(--primary);box-shadow:0 1px 0 var(--secondary)}.meta-item .post-tags a:before{content:"#"}.meta-item .post-tags a:not(:last-of-type){margin-inline-end:.3em}.meta-item .post-tags a:not(:last-of-type):after{content:","}figure>img{image-rendering:-webkit-optimize-contrast}.post-content img{image-rendering:-webkit-optimize-contrast}:root{--shadow-color:0deg 0% 0%;--shadow-elevation-low:0.6px 0.6px 1px hsl(var(--shadow-color) / 0.1),
        0.9px 0.9px 1.4px -1.2px hsl(var(--shadow-color) / 0.1),
        2.2px 2.2px 3.5px -2.5px hsl(var(--shadow-color) / 0.1);--shadow-elevation-medium:0.6px 0.6px 1px hsl(var(--shadow-color) / 0.11),
        1.8px 1.8px 2.9px -0.8px hsl(var(--shadow-color) / 0.11),
        4.6px 4.6px 7.3px -1.7px hsl(var(--shadow-color) / 0.11),
        11.1px 11.1px 17.7px -2.5px hsl(var(--shadow-color) / 0.11);--twitter-color:#4a99e9}.links-container{font-size:16px}.links-container blockquote{margin:var(--gap)0;padding:0 14px;border-inline-start:3px solid var(--primary)}.links .item{padding:12px;background:var(--entry);border-radius:var(--radius);margin-bottom:var(--gap);border:1px solid var(--border)}.links .item .title a:hover{text-decoration:underline}.links .item .title .favicon{margin-right:calc(var(--gap)/2);vertical-align:middle}.links .item .description{margin-left:calc(16px + var(--gap)/2);color:var(--secondary)}.links .item .description .delimiter::after{content:"·";margin-inline-start:.5em;margin-inline-end:.5em}.links .favicon{display:inline-block;background-size:16px 16px;width:16px;height:16px;image-rendering:-webkit-optimize-contrast}.standout{font-size:24px;padding:.5em;text-align:center}@keyframes moveInLeft{0%{opacity:0;transform:translateX(-10rem)}80%{transform:translateX(1rem)}100%{opacity:1;transform:translate(0)}}@keyframes moveInRight{0%{opacity:0;transform:translateX(10rem)}80%{transform:translateX(-1rem)}100%{opacity:1;transform:translate(0)}}@keyframes moveInBottom{0%{opacity:0;transform:translateY(3rem)}100%{opacity:1;transform:translate(0)}}body{font-family:roboto,sans-serif,sans-serif;font-weight:400;line-height:1.5;color:var(--textColor)}h1,h2,h3,h4,h5,h6{font-family:lora,serif;font-weight:700}.heading-primary,.heading-secondary,.heading-tertiary{font-family:lora,serif;font-weight:700;line-height:1.2;color:var(--textColor)}.heading-primary{font-size:6rem;margin-bottom:1rem}.heading-secondary{font-size:4rem;margin-bottom:1rem}.heading-tertiary{font-size:2.5rem}.paragraph{font-size:1.8rem;color:var(--textColor-1)}.u-center-text{text-align:center!important}.u-margin-bottom-small{margin-bottom:1.5rem!important}.u-margin-bottom-medium{margin-bottom:4rem!important}@media only screen and (max-width:56.25em){.u-margin-bottom-medium{margin-bottom:3rem!important}}.u-margin-bottom-big{margin-bottom:8rem!important}@media only screen and (max-width:56.25em){.u-margin-bottom-big{margin-bottom:5rem!important}}.u-margin-top-big{margin-top:8rem!important}.u-margin-top-huge{margin-top:10rem!important}@media screen and (max-width:768px){:root{--gap:14px}.profile img{transform:scale(.85)}.first-entry{min-height:260px}.archive-month{flex-direction:column}.archive-year{margin-top:20px}.footer{padding:calc((var(--footer-height) - var(--gap) - 10px)/2)var(--gap)}}@media screen and (max-width:900px){.list .top-link{transform:translateY(-5rem)}}@media(prefers-reduced-motion){.terms-tags a:active,.button:active,.share-buttons svg:active,.post-entry:active,.top-link,#searchResults .focus,#searchResults li:active{transform:none}}.btn,.btn:link,.btn:visited{text-transform:uppercase;text-decoration:none;padding:1.5rem 4rem;display:inline-block;border-radius:10rem;transition:all .2s;position:relative;font-size:1.6rem;font-size:1.4rem;letter-spacing:.15rem;cursor:pointer;box-shadow:0 4px 6px rgba(0,0,0,.2)}.btn:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.2)}.btn:hover::after{transform:scaleX(1.4)scaleY(1.6);opacity:0}.btn:active,.btn:focus{outline:none;transform:translateY(-1px);box-shadow:0 5px 15px rgba(0,0,0,.2)}.btn--primary{color:var(--buttonTextColor);background-color:var(--primaryColor)}.btn--secondary{background-color:var(--primaryColor);color:var(--buttonTextColor);border:2px solid var(--primaryColor)}#searchbox input{padding:4px 10px;width:100%;color:var(--primary);font-weight:700;border:2px solid var(--tertiary-bg);border-radius:var(--radius)}#searchbox input:focus{border-color:var(--secondary)}#searchResults #searchResults{margin:10px 0;width:100%}#searchResults #searchResults li{list-style:none;border-radius:var(--radius);padding:10px;margin:10px 0;position:relative;font-weight:500}#searchResults #searchResults li:active{transition:transform .1s;transform:scale(.98)}#searchResults #searchResults a{position:absolute;width:100%;height:100%;top:0;left:0;outline:none}#searchResults #searchResults .focus{transform:scale(.98);border:2px solid var(--tertiary-bg)}.not-found{position:absolute;left:0;right:0;display:flex;align-items:center;justify-content:center;height:80%;font-size:160px;font-weight:700}.archive-posts{width:100%;font-size:16px}.archive-year{margin-top:40px}.archive-year:not(:last-of-type){border-bottom:2px solid var(--border)}.archive-month{display:flex;align-items:flex-start;padding:10px 0}.archive-month-header{margin:25px 0;width:200px}.archive-month:not(:last-of-type){border-bottom:1px solid var(--border)}.archive-entry{position:relative;padding:5px;margin:10px 0}.archive-entry-title{margin:5px 0;font-weight:400}.archive-count,.archive-meta{color:var(--secondary);font-size:14px}.first-entry{position:relative;min-height:320px;margin:var(--gap)0 calc(var(--gap) * 2)}.first-entry .entry-header{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;margin:var(--gap)0 calc(var(--gap) * 2)}.first-entry .entry-header h1{font-size:34px;line-height:1.3}@media only screen and (max-width:25em){.first-entry .entry-header h1{font-size:30px}}.first-entry .entry-content{margin:14px 0;font-size:16px;color:var(--primary);line-height:1.5em;display:block}.first-entry .entry-content p,.first-entry .entry-content li{margin-bottom:.8em}.first-entry .entry-footer{font-size:14px}.home-info .entry-content{-webkit-line-clamp:unset}.post-entry{position:relative;margin-bottom:var(--gap);padding:var(--gap);background:var(--entry);border-radius:var(--radius);border:1px solid var(--border);transition:all .3s}.post-entry:hover{transform:scale(1.025);box-shadow:0 5px 15px rgba(0,0,0,.2)}.tag-entry .entry-cover{display:none}.entry-header h2{font-size:24px;line-height:1.3;transition:var(--link-transition);display:inline-block}.entry-content{margin:8px 0;color:var(--secondary);font-size:14px;line-height:1.6;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.entry-footer,.entry-footer span>a{color:var(--secondary);font-size:13px}.entry-link{position:absolute;left:0;right:0;top:0;bottom:0}.entry-cover,.entry-isdraft{font-size:14px;color:var(--secondary)}.entry-cover{margin-bottom:var(--gap);text-align:center}.entry-cover img{display:block;max-width:100%;border-radius:var(--radius);width:100%;height:auto}.entry-cover a{color:var(--secondary);box-shadow:0 1px 0 var(--primary)}#progress-bar{--scrollAmount:0%;background-color:var(--primaryColor);width:var(--scrollAmount);height:5px;border-radius:100px;position:fixed;top:0;z-index:100}.post-header{margin:32px 0}.post-title{font-size:40px;margin:var(--content-gap)0}.post-description{margin:var(--content-gap)0;color:var(--secondary);opacity:.8;padding-left:.5em;border-left:3px solid var(--primaryColor)}.post-meta{font-size:15px}.post-content{font-size:17px;color:var(--content)}.post-content h1{margin:40px auto 1.5rem;font-size:40px}.post-content h2{margin:40px auto 1.5rem;font-size:32px}.post-content h3{margin:32px 0 1.2rem;font-size:24px}.post-content h4{font-size:20px}.post-content h5{font-size:14px}.post-content h6{font-size:12px}.post-content h4,.post-content h5,.post-content h6{margin:24px 0 16px}.post-content a{font-weight:500;color:var(--primary);border-bottom:2px solid var(--primaryColor);font-weight:600;transition:var(--link-transition)}.post-content a:hover{color:var(--primaryColor)}.post-content a:hover code{box-shadow:0 -1px 0 var(--link-hover-underline-color)inset,0 1px 0 var(--link-hover-underline-color)}.post-content a.anchor:hover{color:var(--primary);box-shadow:0 2px 0 var(--secondary)}.post-content a code{margin:auto 0;border-radius:0;box-shadow:0 -1px 0 var(--primary)inset}.post-content del{text-decoration:none;background:linear-gradient(to right,var(--primary) 100%,transparent 0)0/1px 1px repeat-x}.post-content dl,.post-content ol,.post-content p,.post-content figure,.post-content ul{margin-bottom:var(--content-gap)}.post-content ol,.post-content ul{padding-inline-start:20px}.post-content li>ol,.post-content li>ul{margin-bottom:0}.post-content li{margin-top:5px}.post-content li p{margin-bottom:0}.post-content dl{display:flex;flex-wrap:wrap;margin:0}.post-content dt{width:25%;font-weight:700}.post-content dd{width:75%;margin-inline-start:0;padding-inline-start:10px}.post-content dd~dd,.post-content dt~dt{margin-top:10px}.post-content table{margin-bottom:32px}.post-content table th,.post-content table:not(.highlighttable,.highlight table,.gist .highlight) td{min-width:80px;padding:12px 8px;line-height:1.5;border-bottom:1px solid var(--border)}.post-content table th{font-size:14px;text-align:start}.post-content table:not(.highlighttable) td code:only-child{margin:auto 0}.post-content .highlight table{border-radius:var(--radius);box-shadow:0 1px 3px rgba(0,0,0,.2)}.post-content .highlight:not(table){margin:var(--content-gap)auto;border-radius:var(--radius)}.post-content li>.highlight{margin-inline-end:0}.post-content ul pre{margin-inline-start:calc(var(--gap) * -2)}.post-content .highlight pre{margin:0}.post-content .highlighttable{table-layout:fixed}.post-content .highlighttable td:first-child{width:40px}.post-content .highlighttable td .linenodiv{padding-inline-end:0!important}.post-content .highlighttable td .highlight,.post-content .highlighttable td .linenodiv pre{margin-bottom:0}.post-content .highlighttable td .highlight pre code::-webkit-scrollbar{display:none}.post-content .chroma{border-radius:var(--radius)}.post-content code{background-color:var(--code-bg);margin:0 3px;padding:4px 5px;border-radius:3px;font-size:.95em;box-shadow:0 1px 3px rgba(0,0,0,.2)}.post-content pre code{display:block;margin:auto 0;padding:15px;overflow-x:auto;border-radius:var(--radius);word-break:break-all}.post-content .chroma code{background-color:inherit}.post-content blockquote{margin:32px 0;padding:0 14px;position:relative}.post-content blockquote::before{position:absolute;content:'';top:-10px;left:0;width:100px;height:30px;border-radius:0 0 0 0;border-top:2px solid var(--primaryColor);border-left:2px solid var(--primaryColor)}.post-content blockquote::after{position:absolute;content:'';bottom:-10px;right:0;width:100px;height:30px;border-radius:0 0 0 0;border-bottom:2px solid var(--primaryColor);border-right:2px solid var(--primaryColor)}.post-content sup{line-height:1}.post-content hr{margin:30px 0;height:2px;background:var(--tertiary-bg);border-top:0;border-bottom:0}.post-content iframe{max-width:100%}.post-content img{display:block;max-width:100%;border-radius:4px;margin:1rem auto}.post-content img[src*="#center"]{margin:1rem auto}.post-content video{width:100%}.post-content figure.align-center{text-align:center}.post-content figure>figcaption{color:var(--primary);font-size:14px;text-align:center}.post-content figure>figcaption>p{color:var(--secondary);font-size:14px;font-weight:400}td .chroma code{box-shadow:none}.page-header{margin:32px 0}.breadcrumbs{font-size:15px}.breadcrumbs a{font-size:16px}h1 .anchor,h2 .anchor,h3 .anchor,h4 .anchor,h5 .anchor,h6 .anchor{box-shadow:none;user-select:none;font-size:.8em;position:relative;top:-2px}h1:hover .anchor,h2:hover .anchor,h3:hover .anchor,h4:hover .anchor,h5:hover .anchor,h6:hover .anchor{color:var(--secondary);margin-inline-start:8px;font-weight:500;display:inline-flex}.toc{margin:0 2px 40px;background:var(--code-bg);border-radius:var(--radius);padding:.4em 0;box-shadow:0 5px 15px rgba(0,0,0,.2)}.toc.side{font-size:.8em}.toc details summary{cursor:pointer;margin-inline-start:15px;display:block}.toc details summary:focus{outline:0}.toc details summary::after{margin-left:8px;display:inline-block;transition:.2s;content:'\203A';font-size:24px}.toc details[open] summary::after{transform:rotate(90deg)}.toc .details{display:inline;font-weight:700}.toc .inner{padding:10px 15px 5px 35px}.toc ul{margin:0;padding:0}.toc li{list-style-type:none;position:relative;padding-left:12px}.toc li:before{content:"\2055";font-size:20px;position:absolute;left:-10px}.toc li ul{margin-inline-start:20px}.toc li a{line-height:1.5em;padding:3px 5px;border-radius:5px;display:block;transition:var(--link-transition)}.toc li a.active{background-color:var(--link-background-color)}.toc li a:hover{text-decoration:underline}@media screen and (min-width:1350px){.toc.side{position:fixed;top:118px;z-index:1;max-height:calc(100% - 150px);overflow:auto}.toc.side::-webkit-scrollbar-thumb{border:5px solid var(--code-bg)}.toc.side.left{left:15px;width:250px}.toc.side.right{right:15px;width:265px}}.post-footer{margin:calc(var(--content-gap) * 3)0}.share-buttons{margin:var(--content-gap)0;padding-inline-start:var(--radius);display:flex;justify-content:center;overflow-x:auto}.share-buttons a:not(:last-of-type){margin-inline-end:12px}.share-buttons a svg{height:30px;width:30px;fill:currentColor;transition:transform .1s}.share-buttons svg:active{transform:scale(.96)}.post-content :not(table) ::-webkit-scrollbar-thumb{border:2px solid var(--code-bg);background:#717175}.post-content :not(table) ::-webkit-scrollbar-thumb:hover{background:#a3a3a5}.gist table::-webkit-scrollbar-thumb{border:2px solid #fff;background:#adadad}.gist table::-webkit-scrollbar-thumb:hover{background:#707070}.post-content table::-webkit-scrollbar-thumb{border-width:2px}.paginav{margin:var(--content-gap)0;display:flex;line-height:30px;border-radius:var(--radius)}.paginav svg{width:1em;height:1em;display:inline-block;vertical-align:-.125em}.paginav .title{letter-spacing:1px;text-transform:uppercase;font-size:small;color:var(--secondary)}.paginav .prev,.paginav .next{width:45%}.paginav a span{font-size:16px;transition:var(--link-transition)}.paginav a:hover span:not(.title){box-shadow:0 1px}.paginav .next{margin-inline-start:auto;text-align:right}[dir=rtl] .paginav .next{text-align:left}.full-width{left:50%;margin-left:-50vw;margin-right:-50vw;max-width:100vw;position:relative;right:50%;width:100vw}.comments-divider{margin:calc(var(--content-gap) * 1)0;height:1px;background-color:var(--secondary)}.social-links{margin:calc(var(--content-gap) * 2)0}.social-quote{padding:1em}.social-quote.tweet{background-color:var(--code-bg);border-left:3px solid var(--twitter-color)}.social-quote.tweet svg{color:var(--twitter-color)}.social-quote .title{margin-bottom:.5em;font-weight:500}.social-quote .title svg{width:20px;height:20px;vertical-align:text-bottom}.social-quote .title span{margin-inline-start:.5em}.social-quote p>a{margin-inline-start:.5em}.social-quote blockquote{font-size:.8em;margin:0;padding:0;border-inline-start:0}.social-quote blockquote>a:hover{color:var(--twitter-color);box-shadow:0 2px 0 var(--twitter-color)}.social-quote blockquote a{font-weight:500;color:var(--primary);box-shadow:var(--link-underline-shadow);transition:var(--link-transition)}.disqus-container{margin:calc(var(--content-gap) * 2)0;background-color:var(--code-bg);border-radius:10px;padding:1.5em;box-shadow:var(--shadow-elevation-low)}.image-size-control>img{display:block;max-width:100%;width:inherit;height:inherit}.buttons,.main .profile{display:flex;justify-content:center}.main .profile{align-items:center;min-height:calc(100vh - var(--header-height) - var(--footer-height) - (var(--gap) * 2));text-align:center}.profile .profile_inner h1{padding:12px 0}.profile img{display:block;max-width:100%;display:inline-table;border-radius:50%;pointer-events:none}.buttons{flex-wrap:wrap;max-width:400px;margin:0 auto}.button{background:var(--tertiary-bg);border-radius:var(--radius);margin:8px;padding:6px;transition:transform .1s}.button-inner{padding:0 8px}.button:active{transform:scale(.96)}.terms-tags li{display:inline-block;margin:10px;font-weight:500}.terms-tags a{display:block;padding:3px 10px;background:var(--tertiary-bg);border-radius:6px;transition:transform .1s}.terms-tags a:active{background:var(--tertiary-bg);transform:scale(.96)}nav,.navbar{height:100%}.navbar{display:flex;justify-content:space-between}@media only screen and (max-width:37.5em){.navbar{flex-direction:column;text-align:center}}.navbar__brand-logoLight,.navbar__brand-logoDark{display:none;height:5rem;margin-top:2rem}.navbar__brand-logoDark{display:inline}[data-theme=dark] .navbar__brand-logoDark{display:none}[data-theme=dark] .navbar__brand-logoLight{display:inline}.navbar__items{display:flex;font-size:1.5rem;font-weight:700;align-items:center;gap:8rem;list-style:none}@media only screen and (max-width:37.5em){.navbar__items{justify-content:space-around;margin:1rem 0}}.navbar__links{color:var(--textColor)}.navbar__links:not(:hover){text-decoration:none}.navbar__links:hover{text-underline-offset:.5rem;text-decoration:underline;color:var(--primaryColor);text-decoration-color:var(--textColor)}.navbar__links--active{text-underline-offset:.5rem;text-decoration:underline!important;color:var(--primaryColor);text-decoration-color:var(--textColor)!important}.navbar__mode{background:0 0;border:none;position:relative;cursor:pointer}.navbar__mode:focus{outline:0}.navbar__mode>*{height:2rem;vertical-align:middle;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform:translate(-50%,-70%)}.navbar__mode-moon:hover{color:var(--primaryColor)}.navbar__mode-sun:hover{color:var(--primaryColor)}body.dark .navbar__mode-moon{vertical-align:middle;transform:translate(-50%,3rem);opacity:0;transition:all .3s}body.dark .navbar__mode-sun{transition:all .3s;opacity:1}body:not(.dark) .navbar__mode-moon{transition:all .3s;opacity:1}body:not(.dark) .navbar__mode-sun{color:var(--color-sun);transform:translate(-50%,-3rem);opacity:0;transition:all .3s}#mainFooter{background-color:var(--footerColor)}.footer__top{display:flex;justify-content:space-between}.footer__top>*{margin:5rem 0;width:35%}@media only screen and (max-width:75em){.footer__top>*{width:50%}}@media only screen and (max-width:56.25em){.footer__top>*{width:70%;margin:2.5rem 0}}@media only screen and (max-width:37.5em){.footer__top>*{width:90%}}@media only screen and (max-width:56.25em){.footer__top{flex-direction:column;align-items:center;text-align:center}}.footer__logo{height:7rem}@media only screen and (max-width:56.25em){.footer__logo{margin-top:2rem}}.footer__disclaimer-text{font-size:1.4rem;hyphens:auto;color:var(--footerText)!important}.footer__bottom{display:flex;justify-content:space-between;border-top:1px solid var(--textColor-2)}.footer__bottom>*{width:35%;padding:2rem 0}@media only screen and (max-width:75em){.footer__bottom>*{width:50%}}@media only screen and (max-width:56.25em){.footer__bottom>*{width:70%;padding:2rem 0}}@media only screen and (max-width:37.5em){.footer__bottom>*{width:90%}}@media only screen and (max-width:56.25em){.footer__bottom{flex-direction:column-reverse;align-items:center;text-align:center}}.footer__copyright{font-size:1.5rem;text-align:left;color:var(--footerText)!important}@media only screen and (max-width:56.25em){.footer__copyright{text-align:center}}.footer__policies{display:flex;flex-direction:row;justify-content:space-between;gap:5rem;font-size:1.5rem;text-align:right;list-style:none}@media only screen and (max-width:37.5em){.footer__policies{display:flex;flex-direction:column;text-align:center;gap:1.5rem}}.footer__link{text-decoration:none;cursor:pointer;color:var(--footerText)!important}.top-link{visibility:hidden;position:fixed;bottom:60px;right:30px;z-index:99;background:var(--tertiary-bg);width:42px;height:42px;padding:12px;border-radius:64px;transition:visibility .5s,opacity .8s linear;line-height:1.5;font-size:12px;color:var(--secondary)}.top-link,.top-link svg{filter:drop-shadow(0 0 0 var(--theme))}.top-link:hover{color:var(--primaryColor)}.top-link:focus{outline:0}#instantclick-bar{background:var(--tertiary-bg)}.medium-zoom-overlay{z-index:2}.medium-zoom-image--opened{z-index:3}.row{max-width:114rem;margin:0 auto}.row:not(:last-child){margin-bottom:8rem}@media only screen and (max-width:56.25em){.row:not(:last-child){margin-bottom:6rem}}@media only screen and (max-width:56.25em){.row{max-width:50rem;padding:0 3rem}}.row::after{content:"";display:table;clear:both}.row [class^=col-]{float:left}.row [class^=col-]:not(:last-child){margin-right:6rem}@media only screen and (max-width:56.25em){.row [class^=col-]:not(:last-child){margin-right:0;margin-bottom:6rem}}@media only screen and (max-width:56.25em){.row [class^=col-]{width:100%!important}}.row .col-1-of-2{width:calc((100% - 6rem)/2)}.row .col-1-of-3{width:calc((100% - 2 * 6rem)/3)}.row .col-2-of-3{width:calc(2 * ((100% - 2 * 6rem)/3) + 6rem)}.row .col-1-of-4{width:calc((100% - 3 * 6rem)/4)}.row .col-2-of-4{width:calc(2 * ((100% - 3 * 6rem)/4) + 6rem)}.row .col-3-of-4{width:calc(3 * ((100% - 3 * 6rem)/4) + 2 * 6rem)}