/*
  Author: Navendu Pottekkat https://navendu.me
  License: MIT https://github.com/pottekkat/personal-website/blob/hugo/LICENSE
*/
:root{--gap:24px;--content-gap:20px;--nav-width:720px;--main-width:720px;--header-height:60px;--footer-height:60px;--radius:0;--theme:rgb(255, 255, 255);--content-background-color:rgba(255, 255, 255, .95);--entry:rgb(248, 244, 239);--primary:rgba(30, 30, 30, 0.87);--secondary:rgb(117, 117, 117);--tertiary:rgb(248, 244, 239);--content:rgba(31, 31, 31, 0.91);--hljs-bg:rgba(252, 252, 252);--code-bg:rgb(248, 244, 239);--inline-code-bg:rgb(255, 127, 80);--border:rgb(247, 247, 247);--background-color:rgb(180, 180, 180);--background-image:url(/images/binding-dark.png);--entry-image:url(/images/asfalt-dark.png);--content-background:none}.dark{--theme:rgb(17,17,17);--content-background-color:rgba(22, 22, 22, .9);--entry:rgb(33, 33, 33);--primary:rgb(241, 241, 241);--secondary:rgb(180, 180, 180);--tertiary:rgb(33, 33, 33);--content:rgb(216, 216, 216);--hljs-bg:rgb(23, 23, 23);--code-bg:rgb(33, 33, 33);--border:rgb(25, 25, 25);--background-color:rgb(75, 75, 75);--background-image:url(/images/binding-dark.png);--entry-image:url(/images/white-wall.png);--content-background:none}.list{background:var(--background-image),rgb(from var(--theme) calc(r/1.01) calc(g/1.05) calc(b/1.09))}.dark.list{background:var(--background-image),var(--theme)}::-moz-selection{color:var(--theme);background:var(--content)}.dark ::-moz-selection{background:rgba(236,236,236,.7)}::selection{color:var(--theme);background:var(--content)}.dark ::selection{background:rgba(236,236,236,.7)}@font-face{font-family:inter;font-style:normal;font-weight:400;font-display:swap;src:local('Inter'),url(/fonts/inter/subset-Inter-Regular.woff2)format('woff2'),url(/fonts/inter/subset-Inter-Regular.woff)format('woff')}@font-face{font-family:inter;font-style:italic;font-weight:400;font-display:swap;src:local('Inter'),url(/fonts/inter/subset-Inter-Italic.woff2)format('woff2'),url(/fonts/inter/subset-Inter-Italic.woff)format('woff')}@font-face{font-family:inter;font-style:normal;font-weight:500;font-display:swap;src:local('Inter'),url(/fonts/inter/subset-Inter-Medium.woff2)format('woff2'),url(/fonts/inter/subset-Inter-Medium.woff)format('woff')}@font-face{font-family:inter;font-style:italic;font-weight:500;font-display:swap;src:local('Inter'),url(/fonts/inter/subset-Inter-MediumItalic.woff2)format('woff2'),url(/fonts/inter/subset-Inter-MediumItalic.woff)format('woff')}@font-face{font-family:inter;font-style:normal;font-weight:700;font-display:swap;src:local('Inter'),url(/fonts/inter/subset-Inter-Bold.woff2)format('woff2'),url(/fonts/inter/subset-Inter-Bold.woff)format('woff')}@font-face{font-family:inter;font-style:italic;font-weight:700;font-display:swap;src:local('Inter'),url(/fonts/inter/subset-Inter-BoldItalic.woff2)format('woff2'),url(/fonts/inter/subset-Inter-BoldItalic.woff)format('woff')}@font-face{font-family:jetbrains mono;font-style:normal;font-weight:400;font-display:swap;src:local('JetBrains Mono'),url(/fonts/jetbrainsmono/subset-JetBrainsMono-Regular.woff2)format('woff2'),url(/fonts/jetbrainsmono/subset-JetBrainsMono-Regular.woff)format('woff')}@font-face{font-family:jetbrains mono;font-style:italic;font-weight:400;font-display:swap;src:local('JetBrains Mono'),url(/fonts/jetbrainsmono/subset-JetBrainsMono-Italic.woff2)format('woff2'),url(/fonts/jetbrainsmono/subset-JetBrainsMono-Italic.woff)format('woff')}@font-face{font-family:jetbrains mono;font-style:normal;font-weight:700;font-display:swap;src:local('JetBrains Mono'),url(/fonts/jetbrainsmono/subset-JetBrainsMono-Bold.woff2)format('woff2'),url(/fonts/jetbrainsmono/subset-JetBrainsMono-Bold.woff)format('woff')}@font-face{font-family:jetbrains mono;font-style:italic;font-weight:700;font-display:swap;src:local('JetBrains Mono'),url(/fonts/jetbrainsmono/subset-JetBrainsMono-BoldItalic.woff2)format('woff2'),url(/fonts/jetbrainsmono/subset-JetBrainsMono-BoldItalic.woff)format('woff')}@font-face{font-family:schibsted grotesk;font-style:normal;font-weight:400;font-display:swap;src:local('Schibsted Grotesk'),url(/fonts/schibstedgrotesk/subset-SchibstedGrotesk-Regular.woff2)format('woff2'),url(/fonts/schibstedgrotesk/subset-SchibstedGrotesk-Regular.woff)format('woff')}@font-face{font-family:schibsted grotesk;font-style:italic;font-weight:400;font-display:swap;src:local('Schibsted Grotesk'),url(/fonts/schibstedgrotesk/subset-SchibstedGrotesk-Italic.woff2)format('woff2'),url(/fonts/schibstedgrotesk/subset-SchibstedGrotesk-Italic.woff)format('woff')}@font-face{font-family:schibsted grotesk;font-style:normal;font-weight:500;font-display:swap;src:local('Schibsted Grotesk'),url(/fonts/schibstedgrotesk/subset-SchibstedGrotesk-Medium.woff2)format('woff2'),url(/fonts/schibstedgrotesk/subset-SchibstedGrotesk-Medium.woff)format('woff')}@font-face{font-family:schibsted grotesk;font-style:italic;font-weight:500;font-display:swap;src:local('Schibsted Grotesk'),url(/fonts/schibstedgrotesk/subset-SchibstedGrotesk-MediumItalic.woff2)format('woff2'),url(/fonts/schibstedgrotesk/subset-SchibstedGrotesk-MediumItalic.woff)format('woff')}@font-face{font-family:schibsted grotesk;font-style:normal;font-weight:700;font-display:swap;src:local('Schibsted Grotesk'),url(/fonts/schibstedgrotesk/subset-SchibstedGrotesk-Bold.woff2)format('woff2'),url(/fonts/schibstedgrotesk/subset-SchibstedGrotesk-Bold.woff)format('woff')}@font-face{font-family:schibsted grotesk;font-style:italic;font-weight:700;font-display:swap;src:local('Schibsted Grotesk'),url(/fonts/schibstedgrotesk/subset-SchibstedGrotesk-BoldItalic.woff2)format('woff2'),url(/fonts/schibstedgrotesk/subset-SchibstedGrotesk-BoldItalic.woff)format('woff')}*,::after,::before{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;overflow-y:scroll}a,button,body,h1,h2,h3,h4,h5,h6{color:var(--primary)}body{font-family:inter,-apple-system,BlinkMacSystemFont,segoe ui,Roboto,Oxygen,Ubuntu,Cantarell,open sans,helvetica neue,sans-serif;font-size:16px;line-height:1.6;word-break:break-word;background:var(--background-image),rgb(from var(--theme) calc(r/1.01) calc(g/1.05) calc(b/1.09))}body.dark{background:var(--background-image),var(--theme)}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section,table{display:block}h1,h2,h3,h4,h5,h6{font-family:schibsted grotesk,-apple-system,BlinkMacSystemFont,segoe ui,Roboto,Oxygen,Ubuntu,Cantarell,open sans,helvetica neue,sans-serif;line-height:1.2}h1,h2,h3,h4,h5,h6,p{margin-top:0;margin-bottom:0}ul{padding:0}a{text-decoration:none}body,figure,ul{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}img{display:block;max-width:100%}pre,code{font-family:jetbrains mono,monospace}.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}.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:inline-table;border-radius:50%}.buttons{flex-wrap:wrap;max-width:400px;margin:0 auto}.button{background:var(--tertiary);border-radius:var(--radius);margin:8px;padding:6px;transition:transform .1s}.button-inner{padding:0 8px}.button:active{transform:scale(.96)}#searchbox input{padding:4px 10px;width:100%;color:var(--primary);font-weight:700;border:2px solid var(--tertiary);border-radius:var(--radius)}#searchbox input:focus{border-color:var(--secondary)}#searchResults li{list-style:none;border-radius:var(--radius);padding:10px;margin:10px 0;position:relative;font-weight:500}#searchResults{margin:10px 0;width:100%}#searchResults li:active{transition:transform .1s;transform:scale(.98)}#searchResults a{position:absolute;width:100%;height:100%;top:0;left:0;outline:none}#searchResults .focus{transform:scale(.98);border:2px solid var(--tertiary)}.footer,.top-link{font-size:12px;color:var(--secondary)}.footer{max-width:calc(var(--main-width) + var(--gap));margin:auto;padding:calc((var(--footer-height) - var(--gap))/2)var(--gap);text-align:center;line-height:24px;background:0 var(--entry-image),var(--entry)}@media(min-width:768px){.footer{clip-path:polygon(0 12%,38% 15%,64% 18%,100% 20%,100% 90%,0 80%)}}.footer span{margin-inline-start:1px;margin-inline-end:1px}.footer span:last-child{white-space:nowrap}.footer a{color:inherit;border-bottom:1px solid var(--secondary)}.footer a:hover{border-bottom:1px solid var(--primary)}.top-link{visibility:hidden;position:fixed;bottom:60px;right:30px;z-index:99;background:var(--tertiary);width:42px;height:42px;padding:12px;border-radius:0;transition:visibility .5s,opacity .8s linear}.top-link,.top-link svg{filter:drop-shadow(0 0 0 var(--theme))}.footer a:hover,.top-link:hover{color:var(--primary)}.top-link:focus,#theme-toggle:focus{outline:0}.nav{display:flex;flex-wrap:wrap;justify-content:space-between;max-width:calc(var(--nav-width) + var(--gap));margin-inline-start:auto;margin-inline-end:auto;line-height:var(--header-height);background:var(--entry-image),var(--entry)}@media(min-width:768px){.header{clip-path:polygon(0 10%,55% 15%,100% 20%,100% 84%,50% 90%,0 86%)}}.nav a{display:block}.nav a:hover{color:var(--secondary)}.logo,.menulinks{display:flex;margin:auto calc(var(--gap) * 2)}.logo{flex-wrap:inherit;align-items:center}.logo a{font-size:24px;font-weight:700}.logo a img,.logo a svg{display:block;pointer-events:none;border-radius:0;margin-inline-end:8px}body:not(.dark) #main-header-logo{filter:invert(75%)}button#theme-toggle{font-size:26px;margin:auto 4px}button#theme-toggle:hover{color:var(--secondary)}body.dark #moon{vertical-align:middle;display:none}body:not(.dark) #sun{display:none}#menu{list-style:none;word-break:keep-all;overflow-x:auto;white-space:nowrap}#menu li+li{margin-inline-start:var(--gap)}#menu a{font-size:14px}#menu .active{font-weight:500;border-bottom:2px solid}.lang-switch li,.lang-switch ul,.logo-switches{display:inline-flex;margin:auto 4px}.lang-switch{display:flex;flex-wrap:inherit}.lang-switch a{margin:auto 3px;font-size:16px;font-weight:500}.logo-switches{flex-wrap:inherit}.menu-toggle{position:absolute;display:none;cursor:pointer;right:calc(var(--gap) * 2)}.menu-toggle:hover{color:var(--secondary)}@media(max-width:625px){.menulinks{display:none}.menu-toggle{display:flex}}#menu.active{display:flex}.main{position:relative;min-height:calc(100vh - var(--header-height) - var(--footer-height));max-width:calc(var(--main-width) + var(--gap));margin:auto;padding:var(--gap);background:var(--content-background),var(--content-background-color)}@media(min-width:768px){.main{clip-path:polygon(0 7px,34% 10px,100% 5px,100% calc(100% - 10px),0 calc(100% - 5px));padding-left:calc(var(--gap) * 2);padding-right:calc(var(--gap) * 2)}}.page-header h1{font-size:30px}.page-header a:hover{color:var(--secondary)}.pagination{display:flex}.pagination a{color:var(--theme);font-size:13px;line-height:36px;background:var(--primary);border-radius:0;padding:0 16px}.pagination .next{margin-inline-start:auto}.social-icons{padding-top:10px;align-self:self-start}.social-icons a:not(:last-of-type){margin-inline-end:12px}.social-icons a svg{height:18px;width:18px;vertical-align:middle}.social-icons span{margin-right:5px;font-size:14px;color:var(--secondary)}code{direction:ltr;text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-text-size-adjust:100%;-webkit-text-size-adjust:100%}div.highlight,pre{position:relative}.copy-code{display:none;position:absolute;top:4px;right:4px;color:rgba(255,255,255,.8);background:rgba(78,78,78,.8);border-radius:var(--radius);padding:0 5px;font-size:14px;user-select:none}div.highlight:hover .copy-code,pre:hover .copy-code{display:block}.section-links-archive{list-style:none;word-break:keep-all;overflow-x:auto;white-space:nowrap;margin-top:2.5px;margin-bottom:16px;font-size:14px}.section-links-archive li{display:inline}.section-links-archive li:not(:last-of-type){margin-right:12px}.section-links-archive a:hover{color:var(--secondary)}.section-links-archive svg{height:12px;width:auto;margin-right:4px}.first-entry{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:320px;margin:var(--gap)0 calc(var(--gap) * 1.2)}.first-entry .entry-header{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.first-entry .entry-header h1{font-size:30px;line-height:1.3}.first-entry .entry-content{margin:14px 0;font-size:16px;-webkit-line-clamp:3}.first-entry .entry-footer{font-size:14px}.home-info .entry-content{-webkit-line-clamp:unset}.home-info a:hover{color:var(--secondary)}.entry-content p:not(:last-of-type){margin-bottom:14px}.post-entry{position:relative;margin-bottom:var(--gap);padding:var(--gap);background:var(--entry);border-radius:var(--radius);transition:transform .1s;border:1px solid var(--border)}.post-entry:active{transform:scale(.96)}.til-post-entry{position:relative;margin-bottom:calc(var(--gap) * 2);padding-left:var(--gap);padding-right:var(--gap);border-radius:var(--radius);border-inline-start:3px solid var(--secondary)}.til-post-entry:first-of-type{margin-top:40px}.tag-entry .entry-cover{display:flex}.entry-header h2{font-size:20px}.til-entry-header h2{font-size:20px}.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-content a{box-shadow:0 1px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.entry-footer{color:var(--secondary);font-size:13px}.til-entry-footer{color:var(--secondary);font-size:13px;margin-bottom:10px}.entry-link{position:absolute;left:0;right:0;top:0;bottom:0}.entry-cover,.entry-isdraft{font-size:14px;color:var(--secondary)}.entry-isdraft{display:inline}.entry-cover,.entry-isexperimental{font-size:14px;color:var(--secondary)}.entry-isexperimental{display:inline}.entry-cover{margin-bottom:var(--gap);text-align:center}.entry-cover img{border-radius:var(--radius);pointer-events:none;width:100%;height:auto}.entry-cover a{color:var(--secondary);box-shadow:0 1px 0 var(--primary)}.page-header,.post-header{margin:24px auto var(--content-gap)}.post-title{margin-bottom:2px;font-size:30px}.post-description{margin-top:10px;margin-bottom:5px;color:var(--secondary)}.post-meta,.breadcrumbs{color:var(--secondary);font-size:14px;display:flex;flex-wrap:wrap}.post-meta a:hover{color:var(--secondary)}.post-meta a svg{height:10px;width:10px;vertical-align:middle;margin:auto 4px}.post-meta .i18n_list li{display:inline-flex;list-style:none;margin:auto 3px;box-shadow:0 1px 0 var(--secondary)}.breadcrumbs{margin-bottom:20px}.breadcrumbs a{color:var(--secondary)}.breadcrumbs a:hover{color:var(--primary)}.post-content{color:var(--content)}.post-content h3,.post-content h4,.post-content h5,.post-content h6{margin:24px 0 16px}.post-content h1{margin:40px auto 32px;font-size:30px}.post-content h2{margin:32px auto 24px;font-size:26px}.post-content h3{font-size:20px}.post-content h4{font-size:16px}.post-content h5{font-size:14px}.post-content h6{font-size:12px}.post-content a:not(.lnlinks):not(.ln):not(.lnt),.toc a:hover{box-shadow:0 1px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.post-content a:hover{color: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:line-through}.post-content dl,.post-content ol,.post-content p,.post-content figure,.post-content ul{margin-bottom:var(--content-gap)}.post-content ol ol,.post-content ol ul,.post-content ul ol,.post-content ul ul{margin-bottom:0}.post-content ol{list-style-type:decimal}.post-content ol ol{list-style-type:lower-alpha}.post-content ol ol ol{list-style-type:lower-roman}.post-content ol ol ol ol{list-style-type:upper-alpha}.post-content ol ol ol ol ol{list-style-type:upper-roman}.post-content ul{list-style-type:disc}.post-content ul ul{list-style-type:circle}.post-content ul ul ul{list-style-type:square}.post-content ul ul ul ul{list-style-type:disc}.post-content ol,.post-content ul{padding-inline-start:20px}.post-content li{margin-top:5px}.post-content li figure{margin-top:1em}.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(--code-bg)}.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)}.post-content .highlight:not(table),.post-content pre{margin:10px auto;background:var(--theme)!important;border-radius:var(--radius)}.dark .post-content .highlight:not(table),.dark .post-content pre{background:var(--hljs-bg)!important}.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 code{margin:auto 4px;padding:2px 6px;font-size:.78em;line-height:1.5;color:var(--inline-code-bg);background:var(--hljs-bg);border-radius:0;border:1px solid var(--code-bg)}.post-content blockquote code{border:1px solid var(--secondary)}.post-content pre code{display:block;margin:auto 0;padding:10px;color:var(--content);background:var(--hljs-bg)!important;border-radius:var(--radius);overflow-x:auto;word-break:break-all}.post-content pre code:focus-within{outline:0}.post-content blockquote{margin:20px auto;padding:14px;border-inline-start:3px solid var(--secondary);background-color:var(--code-bg);width:90%}.post-content blockquote p:last-of-type:not(:has(+footer)){margin-bottom:0}.post-content hr{margin:30px 0;height:2px;background:var(--tertiary);border:0}.post-content iframe{max-width:100%}.post-content figure .image-border{display:inline-block;border-radius:0;border:1px solid var(--code-bg);margin:0 auto}body:not(.dark) .post-content figure .invert-diagram-colors{filter:invert(100%)brightness(100%)contrast(120%)}.post-content img[src*="#center"]{margin:0 auto}.post-content figure.align-center{text-align:center}.post-content figure>figcaption{color:var(--primary);font-size:16px;font-weight:700;margin:8px 0 16px}.post-content figure>figcaption>p{color:var(--secondary);font-size:14px;font-weight:400}.toc{margin:0 0 40px;border:1px solid var(--border);background:var(--code-bg);border-radius:var(--radius);padding:.4em}.dark .toc{background:var(--entry)}.toc details summary{cursor:zoom-in;margin-inline-start:20px}.toc details[open] summary{cursor:zoom-out}.toc .details{display:inline;font-weight:500}.toc .inner{margin:0 20px;padding:10px 20px}.toc li ul{margin-inline-start:var(--gap)}.toc summary:focus{outline:0}.post-footer{margin-top:56px}.post-tags li{display:inline-block;margin-inline-end:3px;margin-bottom:5px}.post-tags a,.share-buttons,.paginav{border-radius:var(--radius);background:var(--code-bg);border:1px solid var(--border)}.post-tags a{display:block;padding-inline-start:14px;padding-inline-end:14px;color:var(--secondary);font-size:14px;line-height:34px;background:var(--code-bg)}.post-tags a:hover,.paginav a:hover{background:var(--border)}.share-buttons{margin:14px 0;padding-inline-start:var(--radius);display:flex;justify-content:center;overflow-x:auto}.share-buttons a{margin-top:10px}.share-buttons a:not(:last-of-type){margin-inline-end:16px}.share-buttons svg{height:28px;width:28px;color:var(--code-bg);background-color:var(--primary);padding:4px}.share-buttons svg:hover{background-color:var(--secondary)}h1:hover .anchor,h2:hover .anchor,h3:hover .anchor,h4:hover .anchor,h5:hover .anchor,h6:hover .anchor{display:inline-flex;color:var(--secondary);margin-inline-start:8px;font-weight:500;user-select:none}.paginav{margin:10px 0;display:flex;line-height:26px;border-radius:var(--radius);font-size:14px}.paginav a{padding-inline-start:14px;padding-inline-end:14px;border-radius:var(--radius)}.paginav .title{letter-spacing:1px;text-transform:uppercase;font-size:small;color:var(--secondary)}.paginav .prev,.paginav .next{width:50%}.paginav span:hover:not(.title){box-shadow:0 1px}.paginav .next{margin-inline-start:auto;text-align:right}[dir=rtl] .paginav .next{text-align:left}h1>a>svg{display:inline}img.in-text{display:inline;margin:auto}a.footnote-ref{font-size:x-small}a.footnote-ref::before{content:'['}a.footnote-ref::after{content:']'}codapi-snippet{display:block;margin-bottom:var(--content-gap)}codapi-snippet codapi-toolbar{font-family:jetbrains mono,monospace;font-size:.78em}codapi-snippet codapi-toolbar button{padding-inline-start:14px;padding-inline-end:14px;background:var(--primary);color:var(--code-bg);border:none}codapi-snippet codapi-toolbar button:hover{background:var(--secondary)}codapi-snippet codapi-toolbar button:after{content:" ▶"}#chart-caption{color:var(--primary);font-size:16px;font-weight:700;margin:8px 0 16px;text-align:center}#chart-caption>p{color:var(--secondary);font-size:14px;font-weight:400}.last-run{margin-top:2.5px;margin-bottom:16px;color:var(--secondary);font-size:14px}#canvas-wrapper>.nofill>div>svg>rect{fill:none}.katex-display{overflow-x:auto;overflow-y:hidden;max-width:100%;padding:.5em 0;margin:.5em 0;scrollbar-width:thin}.katex-display::-webkit-scrollbar{height:4px}.katex-display::-webkit-scrollbar-track{background:0 0}.katex-display::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.katex-display::-webkit-scrollbar-thumb:hover{background:var(--secondary)}.mermaid{display:flex;justify-content:center;margin:14px 0;padding:14px 4px;border-radius:0;border:1px solid var(--code-bg)}.highlight-title{display:flex;overflow-x:auto;position:relative;padding:8px 12px;color:var(--content);font-size:.8em;background-color:var(--code-bg);border-radius:var(--radius)var(--radius)0 0;margin-bottom:calc(var(--gap)/5)}.subscribe-input input{margin-top:10px;padding:4px 10px;color:var(--primary);border:2px solid var(--tertiary);border-radius:var(--radius);font-size:14px;width:100%}.subscribe-input input:focus{border-color:var(--secondary)}.subscribe-button{margin-top:10px;padding:4px 10px;border-radius:var(--radius);background:var(--primary);color:var(--code-bg);font-size:14px}.subscribe-button:hover{background:var(--secondary)}.subscribe-form{display:flex;flex-direction:column;width:100%}.subscription-form{display:flex;flex-direction:column;gap:10px;align-items:center;padding-inline-start:14px;padding-inline-end:14px;border:1px solid var(--code-bg);background-color:var(--theme)}.dark .subscription-form{background-color:var(--hljs-bg)}.subscribe-message{margin-top:10px;margin-bottom:10px;text-align:center;font-style:italic;font-size:14px;color:var(--secondary)}@media(min-width:768px){.subscribe-form{flex-direction:row;width:auto}.subscribe-input input{margin-bottom:10px;margin-right:10px;width:auto}.subscribe-button{margin-bottom:10px}.subscription-form{flex-direction:row-reverse;justify-content:space-between}.subscribe-message{text-align:left}}body:not(.dark){.bg { color: #272822; background-color: #fafafa; } .chroma { color: #272822; background-color: #fafafa; } .chroma .x { } .chroma .err { color: #960050; background-color: #cbb1bf; } .chroma .cl { } .chroma .lnlinks, .chroma .lntable a, .chroma .ln a, .chroma .lnt a { outline: none; text-decoration: none !important; color: inherit; border-bottom: none !important; box-shadow: none !important; } .chroma .lntd { vertical-align: top; padding: 0; margin: 0; border: 0; } .chroma .lntable { border-spacing: 0; padding: 0; margin: 0; border: 0; } .chroma .hl { background-color: #ffffcc; } .chroma .lnt { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.6em; padding: 0 0.4em 0 0.4em; color: #7f7f7f; } .chroma .ln { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.6em; padding: 0 0.4em 0 0.4em; color: #7f7f7f; } .chroma .line { display: flex; } .chroma .k { color: #00a8c8; } .chroma .kc { color: #00a8c8; } .chroma .kd { color: #00a8c8; } .chroma .kn { color: #f92672; } .chroma .kp { color: #00a8c8; } .chroma .kr { color: #00a8c8; } .chroma .kt { color: #00a8c8; } .chroma .n { color: #111111; } .chroma .na { color: #75af00; } .chroma .nb { color: #111111; } .chroma .bp { color: #111111; } .chroma .nc { color: #75af00; } .chroma .no { color: #00a8c8; } .chroma .nd { color: #75af00; } .chroma .ni { color: #111111; } .chroma .ne { color: #75af00; } .chroma .nf { color: #75af00; } .chroma .fm { color: #111111; } .chroma .nl { color: #111111; } .chroma .nn { color: #111111; } .chroma .nx { color: #75af00; } .chroma .py { color: #111111; } .chroma .nt { color: #f92672; } .chroma .nv { color: #111111; } .chroma .vc { color: #111111; } .chroma .vg { color: #111111; } .chroma .vi { color: #111111; } .chroma .vm { color: #111111; } .chroma .l { color: #ae81ff; } .chroma .ld { color: #d88200; } .chroma .s { color: #d88200; } .chroma .sa { color: #d88200; } .chroma .sb { color: #d88200; } .chroma .sc { color: #d88200; } .chroma .dl { color: #d88200; } .chroma .sd { color: #d88200; } .chroma .s2 { color: #d88200; } .chroma .se { color: #8045ff; } .chroma .sh { color: #d88200; } .chroma .si { color: #d88200; } .chroma .sx { color: #d88200; } .chroma .sr { color: #d88200; } .chroma .s1 { color: #d88200; } .chroma .ss { color: #d88200; } .chroma .m { color: #ae81ff; } .chroma .mb { color: #ae81ff; } .chroma .mf { color: #ae81ff; } .chroma .mh { color: #ae81ff; } .chroma .mi { color: #ae81ff; } .chroma .il { color: #ae81ff; } .chroma .mo { color: #ae81ff; } .chroma .o { color: #f92672; } .chroma .ow { color: #f92672; } .chroma .p { color: #111111; } .chroma .c { color: #75715e; } .chroma .ch { color: #75715e; } .chroma .cm { color: #75715e; } .chroma .c1 { color: #75715e; } .chroma .cs { color: #75715e; } .chroma .cp { color: #75715e; } .chroma .cpf { color: #75715e; } .chroma .g { } .chroma .gd { } .chroma .ge { font-style: italic; } .chroma .gr { } .chroma .gh { } .chroma .gi { } .chroma .go { } .chroma .gp { } .chroma .gs { font-weight: bold; } .chroma .gu { } .chroma .gt { } .chroma .gl { } .chroma .w { }}.dark{.bg { color: #f8f8f2; background-color: #272822; } .chroma { color: #f8f8f2; background-color: #272822; } .chroma .x { } .chroma .err { color: #960050; background-color: #1e0010; } .chroma .cl { } .chroma .lnlinks, .chroma .lntable a, .chroma .ln a, .chroma .lnt a { outline: none; text-decoration: none !important; color: inherit; border-bottom: none !important; box-shadow: none !important; } .chroma .lntd { vertical-align: top; padding: 0; margin: 0; border: 0; } .chroma .lntable { border-spacing: 0; padding: 0; margin: 0; border: 0; } .chroma .hl { background-color: #3c3d38; } .chroma .lnt { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.6em; padding: 0 0.4em 0 0.4em; color: #7f7f7f; } .chroma .ln { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.6em; padding: 0 0.4em 0 0.4em; color: #7f7f7f; } .chroma .line { display: flex; } .chroma .k { color: #66d9ef; } .chroma .kc { color: #66d9ef; } .chroma .kd { color: #66d9ef; } .chroma .kn { color: #f92672; } .chroma .kp { color: #66d9ef; } .chroma .kr { color: #66d9ef; } .chroma .kt { color: #66d9ef; } .chroma .n { } .chroma .na { color: #a6e22e; } .chroma .nb { } .chroma .bp { } .chroma .nc { color: #a6e22e; } .chroma .no { color: #66d9ef; } .chroma .nd { color: #a6e22e; } .chroma .ni { } .chroma .ne { color: #a6e22e; } .chroma .nf { color: #a6e22e; } .chroma .fm { } .chroma .nl { } .chroma .nn { } .chroma .nx { color: #a6e22e; } .chroma .py { } .chroma .nt { color: #f92672; } .chroma .nv { } .chroma .vc { } .chroma .vg { } .chroma .vi { } .chroma .vm { } .chroma .l { color: #ae81ff; } .chroma .ld { color: #e6db74; } .chroma .s { color: #e6db74; } .chroma .sa { color: #e6db74; } .chroma .sb { color: #e6db74; } .chroma .sc { color: #e6db74; } .chroma .dl { color: #e6db74; } .chroma .sd { color: #e6db74; } .chroma .s2 { color: #e6db74; } .chroma .se { color: #ae81ff; } .chroma .sh { color: #e6db74; } .chroma .si { color: #e6db74; } .chroma .sx { color: #e6db74; } .chroma .sr { color: #e6db74; } .chroma .s1 { color: #e6db74; } .chroma .ss { color: #e6db74; } .chroma .m { color: #ae81ff; } .chroma .mb { color: #ae81ff; } .chroma .mf { color: #ae81ff; } .chroma .mh { color: #ae81ff; } .chroma .mi { color: #ae81ff; } .chroma .il { color: #ae81ff; } .chroma .mo { color: #ae81ff; } .chroma .o { color: #f92672; } .chroma .ow { color: #f92672; } .chroma .p { } .chroma .c { color: #75715e; } .chroma .ch { color: #75715e; } .chroma .cm { color: #75715e; } .chroma .c1 { color: #75715e; } .chroma .cs { color: #75715e; } .chroma .cp { color: #75715e; } .chroma .cpf { color: #75715e; } .chroma .g { } .chroma .gd { color: #f92672; } .chroma .ge { font-style: italic; } .chroma .gr { } .chroma .gh { } .chroma .gi { color: #a6e22e; } .chroma .go { } .chroma .gp { } .chroma .gs { font-weight: bold; } .chroma .gu { color: #75715e; } .chroma .gt { } .chroma .gl { } .chroma .w { }}.post-content .chroma .lnlinks,.post-content .chroma .lntable a,.post-content .chroma .ln a,.post-content .chroma .lnt a{box-shadow:none!important;text-decoration:none!important;border-bottom:none!important}.terms-tags li{display:inline-block;margin:10px;font-weight:500}.terms-tags a{display:block;padding:3px 10px;background:var(--tertiary);border-radius:0;transition:transform .1s}.terms-tags a:active{background:var(--tertiary);transform:scale(.96)}.chroma{background-color:unset!important}::-webkit-scrollbar-track{background:var(--entry)}::-webkit-scrollbar-thumb{background:var(--secondary);border:5px solid var(--code-bg);border-radius:var(--radius)}::-webkit-scrollbar-thumb:hover{background:var(--primary)}::-webkit-scrollbar:not(.highlighttable,.highlight table,.gist .highlight){background:var(--theme)}.post-content .highlighttable td .highlight pre code::-webkit-scrollbar{display:none}.post-content :not(table) ::-webkit-scrollbar-thumb{border:2px solid var(--hljs-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}@media screen and (min-width:768px){::-webkit-scrollbar{width:19px;height:11px}}@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,.post-entry:active,.top-link,#searchResults .focus,#searchResults li:active{transform:none}}