:root{--gap:24px;--content-gap:20px;--nav-width:960px;--main-width:720px;--post-width:720px;--header-height:60px;--footer-height:80px;--radius:8px;--monospace:"Lucida Console", Monaco, "Consolas", monospace;--code-bg:#f5f5f5;--link-background-color:#e8e3f7;--link-color:var(--lab-text);--link-hover-color:#573eaa;--link-underline-shadow:0 1px 0 var(--link-color);--link-transition:all 0.3s ease;--signature:#f38ba8}@media screen and (max-width:500px){:root{--header-height:52px}}::selection{background:var(--link-background-color)}::-moz-selection{background:var(--link-background-color)}::-webkit-selection{background:var(--link-background-color)}.list-page{background:var(--code-bg)}*,::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(--lab-text)}body{font-family:-apple-system,BlinkMacSystemFont,segoe ui,roboto,oxygen,ubuntu,cantarell,fira sans,droid sans,helvetica neue,sans-serif;font-size:18px;line-height:1.6em;word-break:break-word;background:var(--lab-bg)}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}a{text-decoration:none}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(--lab-bg)inset}img{display:block;max-width:100%}.archive-posts{width:100%;font-size:16px}.archive-year{margin-top:40px}.archive-year:not(:last-of-type){border-bottom:2px solid var(--lab-rule)}.archive-month{display:flex;align-items:flex-start;padding:10px 0}.archive-month-header{margin:22px 0;width:200px}.archive-month:not(:last-of-type){border-bottom:1px solid var(--lab-rule)}.archive-entry{position:relative;padding:5px;margin:10px 0}.archive-entry-title{margin:5px 0;font-weight:400}.archive-count,.archive-meta{color:var(--lab-muted);font-size:14px}@font-face{font-family:jost;font-style:normal;font-weight:100 900;font-display:swap;src:url(../../fonts/jost-latin-wght-normal.woff2)format('woff2');unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:jost;font-style:italic;font-weight:100 900;font-display:swap;src:url(../../fonts/jost-latin-wght-italic.woff2)format('woff2');unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:schibsted grotesk;font-style:normal;font-weight:400 900;font-display:swap;src:url(../../fonts/schibsted-grotesk-latin-wght-normal.woff2)format('woff2');unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:jost fallback;src:local('Arial'),local('Liberation Sans');size-adjust:87.07%;ascent-override:122.89%;descent-override:43.07%;line-gap-override:0%}@font-face{font-family:jost fallback;font-style:italic;src:local('Arial Italic'),local('Arial-ItalicMT'),local('Liberation Sans Italic');size-adjust:87.07%;ascent-override:122.89%;descent-override:43.07%;line-gap-override:0%}@font-face{font-family:schibsted grotesk fallback;src:local('Arial'),local('Liberation Sans');size-adjust:99.82%;ascent-override:97.84%;descent-override:25.83%;line-gap-override:0%}.footer,.top-link{font-size:12px;color:var(--lab-muted)}.footer{max-width:calc(var(--main-width) + var(--gap) * 2);margin:auto;padding:calc((var(--footer-height) - var(--gap))/2)var(--gap);text-align:center;line-height:24px}.footer span{margin-inline-start:1px;margin-inline-end:1px}.footer span:last-child{white-space:nowrap}.footer a{font-weight:500;color:inherit;box-shadow:var(--link-underline-shadow)}.footer a:hover{color:var(--link-hover-color);box-shadow:var(--link-hover-underline-shadow)}.top-link:hover{color:var(--link-hover-color)}.top-link{visibility:hidden;position:fixed;bottom:60px;right:30px;z-index:99;background:var(--lab-rule);width:42px;height:42px;padding:12px;border-radius:64px;transition:visibility .5s,opacity .8s linear;line-height:1.5}.top-link,.top-link svg{filter:drop-shadow(0 0 0 var(--lab-bg))}.top-link:focus,#theme-toggle:focus{outline:0}.medium-zoom-overlay{z-index:2}.medium-zoom-image--opened{z-index:3}.nav{display:flex;flex-wrap:wrap;justify-content:space-between;max-width:calc(var(--nav-width) + var(--gap) * 2);margin-inline-start:auto;margin-inline-end:auto;line-height:var(--header-height)}.nav ul{margin:0;padding:0}.logo a{display:block}.logo,#menu{display:flex;margin:auto var(--gap)}.logo{flex-wrap:inherit}.logo a{font-size:24px;font-weight:700}.logo a img,.logo a svg{display:inline;vertical-align:middle;pointer-events:none;transform:translate(0,-10%);border-radius:6px;margin-inline-end:8px;image-rendering:-webkit-optimize-contrast}button#theme-toggle{font-size:26px;margin:auto 4px}#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:16px;font-weight:500;color:var(--lab-muted);display:inline-block;line-height:1.5em}#menu a:hover{color:var(--link-hover-color)}#menu a.active:hover{color:var(--signature)}#menu .active{color:var(--signature);box-shadow:0 2px 0 var(--signature)}#menu .external-link{position:relative}#menu .external-link svg{width:13px;height:auto;position:relative;top:1px;margin-left:3px}.logo-switches{display:inline-flex;margin:auto 4px}.logo-switches{flex-wrap:inherit}.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(--content-gap)var(--gap)0}@media screen and (max-width:500px){.main{padding-top:0}}.page-header{margin:var(--content-gap)0 calc(var(--content-gap) * 1.5)}mark{margin:0 -.4em;padding:0 .4em;border-radius:.8em .3em;background:0 0;background-image:linear-gradient( to right,rgba(255,225,0,.1),rgba(255,225,0,.7) 4%,rgba(255,225,0,.3) );-webkit-box-decoration-break:clone;box-decoration-break:clone}.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}.first-entry .entry-content{margin:14px 0;font-size:17px;color:var(--lab-text);line-height:1.6em;display:block;overflow:initial}@media screen and (max-width:500px){.first-entry .entry-header h1{font-size:30px}.first-entry .entry-content{font-size:16px}}.first-entry .entry-content p{margin-bottom:.8em}.first-entry .entry-content ul,.first-entry .entry-content ol{margin:.8em 0}.first-entry .entry-content li p{margin-bottom:.5em}.first-entry .entry-footer{font-size:14px}.inline-links a{font-weight:500;color:var(--lab-text);box-shadow:var(--link-underline-shadow);transition:var(--link-transition)}.inline-links a:hover{color:var(--link-hover-color);box-shadow:var(--link-hover-underline-shadow)}.inline-links span:not(:last-of-type):after{content:"·";margin-inline-start:.5em;margin-inline-end:.5em}.main.post{max-width:calc(var(--post-width) + var(--gap) * 2)}.page-header h1{font-size:40px;margin-bottom:var(--content-gap);text-transform:capitalize}.pagination{display:flex}.pagination a{color:var(--lab-bg);font-size:13px;line-height:36px;background:var(--lab-text);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:not(:last-of-type){margin-right:12px}.social-icons a svg{height:26px;width:26px}.social-icons a:hover{color:var(--link-hover-color);box-shadow:var(--link-hover-underline-shadow)}code{direction:ltr}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}.meta-item{display:inline-block}.meta-item *{color:var(--lab-muted)}.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(--lab-text);box-shadow:0 1px 0 var(--lab-muted)}.meta-item .post-tags a:not(:last-of-type){margin-inline-end:.3em}.meta-item .post-tags a:not(:last-of-type):after{content:","}.meta-item .post-tags a:before{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}.standout{font-size:24px;padding:.5em;text-align:center}.image-size-control{margin-left:auto;margin-right:auto}.image-size-control>img{width:inherit;height:inherit}.icon{display:inline-block;position:relative;vertical-align:text-bottom}.icon svg{height:1em;width:1em}.icon-hover:hover{color:var(--link-hover-color)}.notice{--notice-blue:#2465a8;--notice-teal:#26756a;--notice-yellow:#855400;--notice-red:#aa2440;--notice-green:#36722a;--notice-tone:var(--lab-accent);min-width:0;margin:28px 0;overflow:hidden;color:var(--lab-text);background:color-mix(in srgb,var(--notice-tone) 7%,var(--lab-bg));border:1px solid color-mix(in srgb,var(--notice-tone) 55%,var(--lab-rule));border-radius:8px}html[data-mode=dark] .notice{--notice-blue:#89b4fa;--notice-teal:#94e2d5;--notice-yellow:#f9e2af;--notice-red:#f38ba8;--notice-green:#a6e3a1}.notice[data-kind=info],.notice[data-kind=abstract]{--notice-tone:var(--notice-blue)}.notice[data-kind=tip]{--notice-tone:var(--notice-teal)}.notice[data-kind=success]{--notice-tone:var(--notice-green)}.notice[data-kind=warning],.notice[data-kind=question]{--notice-tone:var(--notice-yellow)}.notice[data-kind=danger],.notice[data-kind=failure],.notice[data-kind=bug]{--notice-tone:var(--notice-red)}.notice[data-kind=quote]{--notice-tone:var(--lab-muted)}.notice>.notice-title{display:grid;grid-template-columns:30px minmax(0,1fr)18px;gap:0 13px;padding:0 18px 15px;cursor:pointer;list-style:none;background:color-mix(in srgb,var(--notice-tone) 16%,var(--lab-bg));border-bottom:1px solid transparent}.notice>.notice-title::-webkit-details-marker{display:none}.notice[open]>.notice-title{border-bottom-color:color-mix(in srgb,var(--notice-tone) 25%,transparent)}.notice>.notice-title:focus-visible{outline:3px solid var(--lab-accent);outline-offset:-4px}.notice-titlebar{grid-column:1/-1;display:flex;align-items:center;min-width:0;margin:0 -18px 15px;padding-right:14px;border-bottom:1px solid color-mix(in srgb,var(--notice-tone) 30%,transparent);background:color-mix(in srgb,var(--notice-tone) 7%,var(--lab-bg));font:10px/1.7 var(--lab-mono)}.notice-tab{padding:9px 15px;border-right:1px solid color-mix(in srgb,var(--notice-tone) 45%,var(--lab-rule));border-bottom:2px solid var(--notice-tone);background:color-mix(in srgb,var(--notice-tone) 22%,var(--lab-bg))}.notice-tab::before{content:'▎';color:var(--notice-tone);margin-right:9px}.notice-state{margin-left:auto;color:var(--notice-tone);letter-spacing:.04em}.notice .notice-icon{align-self:center;width:30px;height:30px;padding:6px;border-radius:4px;background:var(--notice-tone);color:var(--lab-bg)}.notice-copy{min-width:0;align-self:center}.notice-kind{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.notice-heading{display:block;font:650 19px/1.4 var(--lab-heading);letter-spacing:-.02em;overflow-wrap:anywhere}.notice .notice-chevron{width:18px;height:18px;align-self:center;color:var(--lab-muted)}.notice[open]>.notice-title .notice-chevron{transform:rotate(180deg)}.notice-body{min-width:0;padding:3px 20px 7px;overflow-wrap:anywhere}.notice-body>:first-child{margin-top:16px}.notice-body>:last-child{margin-bottom:16px}.notice-status{display:flex;align-items:center;gap:10px;border-top:1px solid color-mix(in srgb,var(--notice-tone) 25%,transparent);background:color-mix(in srgb,var(--notice-tone) 13%,var(--lab-bg));color:var(--lab-muted);font:10px/1.7 var(--lab-mono)}.notice-status b{padding:6px 12px;background:var(--notice-tone);color:var(--lab-bg);font-weight:500}.notice-status span:last-child{margin-left:auto;margin-right:14px}@media(max-width:600px){.notice>.notice-title{grid-template-columns:28px minmax(0,1fr)16px;gap:0 10px;padding-inline:14px}.notice-titlebar{margin-inline:-14px;font-size:9px}.notice-tab{padding:8px 12px}.notice-heading{font-size:18px}.notice-body{padding-inline:15px}.notice-status{font-size:9px}.notice-status span:last-child{display:none}}.home-info .entry-content{-webkit-line-clamp:unset}.post-entry{position:relative;margin-bottom:var(--gap);padding:var(--gap);background:var(--lab-surface);border-radius:var(--radius);border:1px solid var(--lab-rule)}.post-entry:hover .entry-header h2{color:var(--link-hover-color);box-shadow:var(--link-hover-underline-shadow)}.entry-header h2{font-size:24px;line-height:1.3;transition:var(--link-transition);display:inline-block}.entry-content{margin:8px 0;color:var(--lab-muted);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(--lab-muted);font-size:13px}.entry-link{font-family:jost,jost fallback,sans-serif;position:absolute;left:0;right:0;top:0;bottom:0}.entry-isdraft{font-size:14px;color:var(--lab-muted)}.post-header{margin:var(--content-gap)0 calc(var(--content-gap) * 1.5)}.post-title{font-size:40px;margin-bottom:var(--content-gap)}.post-description{margin:var(--content-gap)0;color:var(--lab-muted);opacity:.8;padding-left:.5em;border-left:8px solid var(--signature)}.post-meta,.breadcrumbs{font-size:15px}.breadcrumbs{display:flex;flex-wrap:wrap}.breadcrumbs a{font-size:16px}.post-content{font-size:19px;color:var(--lab-text);font-family:jost,jost fallback,sans-serif}.post-content h4,.post-content h5,.post-content h6{margin:24px 0 16px}.post-content h3{margin:32px 0 24px}.post-content h1{margin:40px auto 32px;font-size:40px}.post-content h2{margin:40px auto 32px;font-size:32px}.post-content h3{font-size:24px}.post-content h4{font-size:20px}.post-content h5{font-size:14px}.post-content h6{font-size:12px}.post-content a{font-weight:500;color:var(--lab-text);box-shadow:var(--link-underline-shadow);transition:var(--link-transition)}.post-content a:hover{color:var(--link-hover-color);box-shadow:var(--link-hover-underline-shadow)}.post-content a.anchor:hover{color:var(--lab-text);box-shadow:0 2px 0 var(--lab-muted)}.post-content a code{margin:auto 0;border-radius:0;box-shadow:0 -1px 0 var(--lab-text)inset}.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 h1,.post-content h2,.post-content h3,.post-content h4,.post-content h5,.post-content h6{position:relative}h1 .anchor,h2 .anchor,h3 .anchor,h4 .anchor,h5 .anchor,h6 .anchor{box-shadow:none;user-select:none;font-size:.75em;position:absolute;left:-1em;top:50%;transform:translateY(-50%);text-decoration:none}h1:hover .anchor,h2:hover .anchor,h3:hover .anchor,h4:hover .anchor,h5:hover .anchor,h6:hover .anchor{color:var(--lab-muted);font-weight:500;display:inline-flex}.post-content del{text-decoration:none;background:linear-gradient(to right,var(--lab-text) 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:.5em}.post-content li p{margin-bottom:.5em}.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(--lab-rule)}.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){margin:var(--content-gap)auto;border-radius:var(--radius);direction:ltr}.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 .highlight{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:.8em;font-family:var(--monospace)}.post-content pre code{display:block;margin:auto 0;padding:15px;overflow-x:auto;border-radius:var(--radius);word-break:break-all;font-family:var(--monospace)}.post-content .chroma code{background-color:inherit;font-family:var(--monospace)}.post-content blockquote{margin:20px 0;padding:0 14px;border-inline-start:3px solid var(--lab-rule);opacity:.8}.post-content sup{line-height:1}.post-content sup a{box-shadow:none;font-family:Helvetica,Arial,sans-serif;color:var(--link-hover-color)}.post-content sup a:hover{box-shadow:none;text-decoration:underline}.post-content sup a:before{content:"["}.post-content sup a:after{content:"]"}.post-content sup:target{background-color:var(--link-background-color)}.post-content hr{margin:30px 0;height:2px;background:var(--lab-rule);border:0}.post-content iframe{max-width:100%}.post-content img{border-radius:4px;margin:1rem auto;height:auto}.post-content img[src*="#center"]{margin:1rem auto}.post-content video{width:100%;height:auto}.post-content figure.align-center{text-align:center}.post-content figure>figcaption{color:var(--lab-text);font-size:16px;font-weight:700;margin:8px 0 16px}.post-content figure>figcaption>p{color:var(--lab-muted);font-size:14px;font-weight:400}.toc{margin:0 2px 40px;border:1px solid var(--lab-rule);background:var(--code-bg);border-radius:var(--radius);padding:.4em 0}.toc.side{font-size:.8em}@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}}.toc details summary{cursor:pointer;margin-inline-start:15px}.toc .details{display:inline;font-weight:500}.toc .inner{padding:10px 15px 5px 35px}.toc ul{margin:0;padding:0}.toc li ul{margin-inline-start:20px}.toc li a{line-height:1.5em;padding:3px 5px;border-radius:5px;display:block}.toc li a.active{background-color:var(--link-background-color)}.toc li a:hover{text-decoration:underline}.toc summary:focus{outline:0}.post-footer{margin-top:calc(var(--content-gap) * 1.5);padding-bottom:calc(var(--content-gap) * 2);border-bottom:3px solid var(--lab-muted)}h1:hover .anchor,h2:hover .anchor,h3:hover .anchor,h4:hover .anchor,h5:hover .anchor,h6:hover .anchor{display:inline-flex;color:var(--lab-muted);font-weight:500;user-select:none}.paginav{margin-top:var(--content-gap);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(--lab-muted)}.paginav .prev,.paginav .next{width:50%}.paginav a span{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}.footnotes{font-size:.8em;font-weight:400;padding:1em;background-color:var(--code-bg)}.footnotes a{font-weight:400}.footnotes hr{display:none}.footnotes a{box-shadow:none;text-decoration:underline}.footnotes a:hover{box-shadow:none;text-decoration:underline}.footnotes ol{margin:0}.footnotes ol li{margin:0 0 6px}.footnotes ol li p{line-height:1.5em;margin:0}.footnotes ol li>*{vertical-align:top}.footnotes ol li:target{background-color:var(--link-background-color)}.footnotes ol:before{content:"Footnotes";font-size:1.5em;margin-left:-1em;font-weight:200}h1>a>svg{display:inline}img.in-text{display:inline;margin:auto}.reading-progress-bar{position:fixed;top:0;left:0;width:100%;height:3px;background:0 0;z-index:9999;transition:opacity .3s ease}.reading-progress-bar::before{content:"";display:block;height:100%;background:var(--lab-accent,var(--lab-text));width:var(--progress,0%);transition:width .1s ease-out}body:not(.kind-page) .reading-progress-bar{display:none}.container{overflow:hidden;margin-top:.5rem;margin-bottom:1.25rem;border-radius:.5rem}.summary{padding-top:.25rem;padding-bottom:.25rem;font-size:1.125rem;line-height:1.75rem;font-weight:600;cursor:pointer}.post{padding-top:.25rem;padding-bottom:.25rem}.terms-tags li{display:inline-block;margin:10px;font-weight:500}.terms-tags a{display:block;padding:3px 10px;background:var(--lab-rule);border-radius:6px;transition:transform .1s}.terms-tags a:active{background:var(--lab-rule);transform:scale(.96)}html[data-theme=cat][data-mode=light] .bg{color:#4c4f69;background-color:#eff1f5}html[data-theme=cat][data-mode=light] .chroma{color:#4c4f69;background-color:#eff1f5;-webkit-text-size-adjust:none}html[data-theme=cat][data-mode=light] .chroma .x{color:#4c4f69}html[data-theme=cat][data-mode=light] .chroma .err{color:#d20f39}html[data-theme=cat][data-mode=light] .chroma .cl{color:#4c4f69}html[data-theme=cat][data-mode=light] .chroma .lnlinks{outline:none;text-decoration:none;color:inherit}html[data-theme=cat][data-mode=light] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}html[data-theme=cat][data-mode=light] .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}html[data-theme=cat][data-mode=light] .chroma .hl{background-color:#bcc0cc}html[data-theme=cat][data-mode=light] .chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#8c8fa1}html[data-theme=cat][data-mode=light] .chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#8c8fa1}html[data-theme=cat][data-mode=light] .chroma .line{display:flex}html[data-theme=cat][data-mode=light] .chroma .k{color:#8839ef}html[data-theme=cat][data-mode=light] .chroma .kc{color:#fe640b}html[data-theme=cat][data-mode=light] .chroma .kd{color:#d20f39}html[data-theme=cat][data-mode=light] .chroma .kn{color:#179299}html[data-theme=cat][data-mode=light] .chroma .kp{color:#8839ef}html[data-theme=cat][data-mode=light] .chroma .kr{color:#8839ef}html[data-theme=cat][data-mode=light] .chroma .kt{color:#d20f39}html[data-theme=cat][data-mode=light] .chroma .na{color:#1e66f5}html[data-theme=cat][data-mode=light] .chroma .nc{color:#df8e1d}html[data-theme=cat][data-mode=light] .chroma .no{color:#df8e1d}html[data-theme=cat][data-mode=light] .chroma .nd{color:#1e66f5;font-weight:700}html[data-theme=cat][data-mode=light] .chroma .ni{color:#179299}html[data-theme=cat][data-mode=light] .chroma .ne{color:#fe640b}html[data-theme=cat][data-mode=light] .chroma .nl{color:#04a5e5}html[data-theme=cat][data-mode=light] .chroma .nn{color:#fe640b}html[data-theme=cat][data-mode=light] .chroma .nx{color:#4c4f69}html[data-theme=cat][data-mode=light] .chroma .py{color:#fe640b}html[data-theme=cat][data-mode=light] .chroma .nt{color:#8839ef}html[data-theme=cat][data-mode=light] .chroma .nb{color:#04a5e5}html[data-theme=cat][data-mode=light] .chroma .bp{color:#04a5e5}html[data-theme=cat][data-mode=light] .chroma .nv{color:#dc8a78}html[data-theme=cat][data-mode=light] .chroma .vc{color:#dc8a78}html[data-theme=cat][data-mode=light] .chroma .vg{color:#dc8a78}html[data-theme=cat][data-mode=light] .chroma .vi{color:#dc8a78}html[data-theme=cat][data-mode=light] .chroma .vm{color:#dc8a78}html[data-theme=cat][data-mode=light] .chroma .nf{color:#1e66f5}html[data-theme=cat][data-mode=light] .chroma .fm{color:#1e66f5}html[data-theme=cat][data-mode=light] .chroma .ld{color:#4c4f69}html[data-theme=cat][data-mode=light] .chroma .s{color:#40a02b}html[data-theme=cat][data-mode=light] .chroma .sa{color:#d20f39}html[data-theme=cat][data-mode=light] .chroma .sb{color:#40a02b}html[data-theme=cat][data-mode=light] .chroma .sc{color:#40a02b}html[data-theme=cat][data-mode=light] .chroma .dl{color:#1e66f5}html[data-theme=cat][data-mode=light] .chroma .sd{color:#9ca0b0}html[data-theme=cat][data-mode=light] .chroma .s2{color:#40a02b}html[data-theme=cat][data-mode=light] .chroma .se{color:#1e66f5}html[data-theme=cat][data-mode=light] .chroma .sh{color:#9ca0b0}html[data-theme=cat][data-mode=light] .chroma .si{color:#40a02b}html[data-theme=cat][data-mode=light] .chroma .sx{color:#40a02b}html[data-theme=cat][data-mode=light] .chroma .sr{color:#179299}html[data-theme=cat][data-mode=light] .chroma .s1{color:#40a02b}html[data-theme=cat][data-mode=light] .chroma .ss{color:#40a02b}html[data-theme=cat][data-mode=light] .chroma .m{color:#fe640b}html[data-theme=cat][data-mode=light] .chroma .mb{color:#fe640b}html[data-theme=cat][data-mode=light] .chroma .mf{color:#fe640b}html[data-theme=cat][data-mode=light] .chroma .mh{color:#fe640b}html[data-theme=cat][data-mode=light] .chroma .mi{color:#fe640b}html[data-theme=cat][data-mode=light] .chroma .il{color:#fe640b}html[data-theme=cat][data-mode=light] .chroma .mo{color:#fe640b}html[data-theme=cat][data-mode=light] .chroma .o{color:#04a5e5;font-weight:700}html[data-theme=cat][data-mode=light] .chroma .ow{color:#04a5e5;font-weight:700}html[data-theme=cat][data-mode=light] .chroma .or{color:#04a5e5;font-weight:700}html[data-theme=cat][data-mode=light] .chroma .c{color:#9ca0b0;font-style:italic}html[data-theme=cat][data-mode=light] .chroma .ch{color:#acb0be;font-style:italic}html[data-theme=cat][data-mode=light] .chroma .cm{color:#9ca0b0;font-style:italic}html[data-theme=cat][data-mode=light] .chroma .c1{color:#9ca0b0;font-style:italic}html[data-theme=cat][data-mode=light] .chroma .cs{color:#9ca0b0;font-style:italic}html[data-theme=cat][data-mode=light] .chroma .cp{color:#9ca0b0;font-style:italic}html[data-theme=cat][data-mode=light] .chroma .cpf{color:#9ca0b0;font-weight:700;font-style:italic}html[data-theme=cat][data-mode=light] .chroma .gd{color:#d20f39;background-color:#ccd0da}html[data-theme=cat][data-mode=light] .chroma .ge{font-style:italic}html[data-theme=cat][data-mode=light] .chroma .gr{color:#d20f39}html[data-theme=cat][data-mode=light] .chroma .gh{color:#fe640b;font-weight:700}html[data-theme=cat][data-mode=light] .chroma .gi{color:#40a02b;background-color:#ccd0da}html[data-theme=cat][data-mode=light] .chroma .go{color:#4c4f69}html[data-theme=cat][data-mode=light] .chroma .gp{color:#4c4f69}html[data-theme=cat][data-mode=light] .chroma .gs{font-weight:700}html[data-theme=cat][data-mode=light] .chroma .gu{color:#fe640b;font-weight:700}html[data-theme=cat][data-mode=light] .chroma .gt{color:#d20f39}html[data-theme=cat][data-mode=light] .chroma .gl{text-decoration:underline}html[data-theme=cat][data-mode=dark] .bg{color:#cdd6f4;background-color:#1e1e2e}html[data-theme=cat][data-mode=dark] .chroma{color:#cdd6f4;background-color:#1e1e2e;-webkit-text-size-adjust:none}html[data-theme=cat][data-mode=dark] .chroma .x{color:#cdd6f4}html[data-theme=cat][data-mode=dark] .chroma .err{color:#f38ba8}html[data-theme=cat][data-mode=dark] .chroma .cl{color:#cdd6f4}html[data-theme=cat][data-mode=dark] .chroma .lnlinks{outline:none;text-decoration:none;color:inherit}html[data-theme=cat][data-mode=dark] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}html[data-theme=cat][data-mode=dark] .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}html[data-theme=cat][data-mode=dark] .chroma .hl{background-color:#45475a}html[data-theme=cat][data-mode=dark] .chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f849c}html[data-theme=cat][data-mode=dark] .chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#7f849c}html[data-theme=cat][data-mode=dark] .chroma .line{display:flex}html[data-theme=cat][data-mode=dark] .chroma .k{color:#cba6f7}html[data-theme=cat][data-mode=dark] .chroma .kc{color:#fab387}html[data-theme=cat][data-mode=dark] .chroma .kd{color:#f38ba8}html[data-theme=cat][data-mode=dark] .chroma .kn{color:#94e2d5}html[data-theme=cat][data-mode=dark] .chroma .kp{color:#cba6f7}html[data-theme=cat][data-mode=dark] .chroma .kr{color:#cba6f7}html[data-theme=cat][data-mode=dark] .chroma .kt{color:#f38ba8}html[data-theme=cat][data-mode=dark] .chroma .na{color:#89b4fa}html[data-theme=cat][data-mode=dark] .chroma .nc{color:#f9e2af}html[data-theme=cat][data-mode=dark] .chroma .no{color:#f9e2af}html[data-theme=cat][data-mode=dark] .chroma .nd{color:#89b4fa;font-weight:700}html[data-theme=cat][data-mode=dark] .chroma .ni{color:#94e2d5}html[data-theme=cat][data-mode=dark] .chroma .ne{color:#fab387}html[data-theme=cat][data-mode=dark] .chroma .nl{color:#89dceb}html[data-theme=cat][data-mode=dark] .chroma .nn{color:#fab387}html[data-theme=cat][data-mode=dark] .chroma .nx{color:#cdd6f4}html[data-theme=cat][data-mode=dark] .chroma .py{color:#fab387}html[data-theme=cat][data-mode=dark] .chroma .nt{color:#cba6f7}html[data-theme=cat][data-mode=dark] .chroma .nb{color:#89dceb}html[data-theme=cat][data-mode=dark] .chroma .bp{color:#89dceb}html[data-theme=cat][data-mode=dark] .chroma .nv{color:#f5e0dc}html[data-theme=cat][data-mode=dark] .chroma .vc{color:#f5e0dc}html[data-theme=cat][data-mode=dark] .chroma .vg{color:#f5e0dc}html[data-theme=cat][data-mode=dark] .chroma .vi{color:#f5e0dc}html[data-theme=cat][data-mode=dark] .chroma .vm{color:#f5e0dc}html[data-theme=cat][data-mode=dark] .chroma .nf{color:#89b4fa}html[data-theme=cat][data-mode=dark] .chroma .fm{color:#89b4fa}html[data-theme=cat][data-mode=dark] .chroma .ld{color:#cdd6f4}html[data-theme=cat][data-mode=dark] .chroma .s{color:#a6e3a1}html[data-theme=cat][data-mode=dark] .chroma .sa{color:#f38ba8}html[data-theme=cat][data-mode=dark] .chroma .sb{color:#a6e3a1}html[data-theme=cat][data-mode=dark] .chroma .sc{color:#a6e3a1}html[data-theme=cat][data-mode=dark] .chroma .dl{color:#89b4fa}html[data-theme=cat][data-mode=dark] .chroma .sd{color:#6c7086}html[data-theme=cat][data-mode=dark] .chroma .s2{color:#a6e3a1}html[data-theme=cat][data-mode=dark] .chroma .se{color:#89b4fa}html[data-theme=cat][data-mode=dark] .chroma .sh{color:#6c7086}html[data-theme=cat][data-mode=dark] .chroma .si{color:#a6e3a1}html[data-theme=cat][data-mode=dark] .chroma .sx{color:#a6e3a1}html[data-theme=cat][data-mode=dark] .chroma .sr{color:#94e2d5}html[data-theme=cat][data-mode=dark] .chroma .s1{color:#a6e3a1}html[data-theme=cat][data-mode=dark] .chroma .ss{color:#a6e3a1}html[data-theme=cat][data-mode=dark] .chroma .m{color:#fab387}html[data-theme=cat][data-mode=dark] .chroma .mb{color:#fab387}html[data-theme=cat][data-mode=dark] .chroma .mf{color:#fab387}html[data-theme=cat][data-mode=dark] .chroma .mh{color:#fab387}html[data-theme=cat][data-mode=dark] .chroma .mi{color:#fab387}html[data-theme=cat][data-mode=dark] .chroma .il{color:#fab387}html[data-theme=cat][data-mode=dark] .chroma .mo{color:#fab387}html[data-theme=cat][data-mode=dark] .chroma .o{color:#89dceb;font-weight:700}html[data-theme=cat][data-mode=dark] .chroma .ow{color:#89dceb;font-weight:700}html[data-theme=cat][data-mode=dark] .chroma .or{color:#89dceb;font-weight:700}html[data-theme=cat][data-mode=dark] .chroma .c{color:#6c7086;font-style:italic}html[data-theme=cat][data-mode=dark] .chroma .ch{color:#585b70;font-style:italic}html[data-theme=cat][data-mode=dark] .chroma .cm{color:#6c7086;font-style:italic}html[data-theme=cat][data-mode=dark] .chroma .c1{color:#6c7086;font-style:italic}html[data-theme=cat][data-mode=dark] .chroma .cs{color:#6c7086;font-style:italic}html[data-theme=cat][data-mode=dark] .chroma .cp{color:#6c7086;font-style:italic}html[data-theme=cat][data-mode=dark] .chroma .cpf{color:#6c7086;font-weight:700;font-style:italic}html[data-theme=cat][data-mode=dark] .chroma .gd{color:#f38ba8;background-color:#313244}html[data-theme=cat][data-mode=dark] .chroma .ge{font-style:italic}html[data-theme=cat][data-mode=dark] .chroma .gr{color:#f38ba8}html[data-theme=cat][data-mode=dark] .chroma .gh{color:#fab387;font-weight:700}html[data-theme=cat][data-mode=dark] .chroma .gi{color:#a6e3a1;background-color:#313244}html[data-theme=cat][data-mode=dark] .chroma .go{color:#cdd6f4}html[data-theme=cat][data-mode=dark] .chroma .gp{color:#cdd6f4}html[data-theme=cat][data-mode=dark] .chroma .gs{font-weight:700}html[data-theme=cat][data-mode=dark] .chroma .gu{color:#fab387;font-weight:700}html[data-theme=cat][data-mode=dark] .chroma .gt{color:#f38ba8}html[data-theme=cat][data-mode=dark] .chroma .gl{text-decoration:underline}html[data-theme=fireside][data-mode=light] .bg{color:#3c3836;background-color:#fbf1c7}html[data-theme=fireside][data-mode=light] .chroma{color:#3c3836;background-color:#fbf1c7;-webkit-text-size-adjust:none}html[data-theme=fireside][data-mode=light] .chroma .lnlinks{outline:none;text-decoration:none;color:inherit}html[data-theme=fireside][data-mode=light] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}html[data-theme=fireside][data-mode=light] .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}html[data-theme=fireside][data-mode=light] .chroma .hl{background-color:#e1d8b3}html[data-theme=fireside][data-mode=light] .chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#9d9b9a}html[data-theme=fireside][data-mode=light] .chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#9d9b9a}html[data-theme=fireside][data-mode=light] .chroma .line{display:flex}html[data-theme=fireside][data-mode=light] .chroma .k{color:#af3a03}html[data-theme=fireside][data-mode=light] .chroma .kc{color:#af3a03}html[data-theme=fireside][data-mode=light] .chroma .kd{color:#af3a03}html[data-theme=fireside][data-mode=light] .chroma .kn{color:#af3a03}html[data-theme=fireside][data-mode=light] .chroma .kp{color:#af3a03}html[data-theme=fireside][data-mode=light] .chroma .kr{color:#af3a03}html[data-theme=fireside][data-mode=light] .chroma .kt{color:#b57614}html[data-theme=fireside][data-mode=light] .chroma .na{color:#79740e;font-weight:700}html[data-theme=fireside][data-mode=light] .chroma .no{color:#d3869b}html[data-theme=fireside][data-mode=light] .chroma .ni{color:#b57614}html[data-theme=fireside][data-mode=light] .chroma .ne{color:#fb4934}html[data-theme=fireside][data-mode=light] .chroma .nl{color:#9d0006}html[data-theme=fireside][data-mode=light] .chroma .nn{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .nt{color:#9d0006}html[data-theme=fireside][data-mode=light] .chroma .nb{color:#b57614}html[data-theme=fireside][data-mode=light] .chroma .bp{color:#b57614}html[data-theme=fireside][data-mode=light] .chroma .nf{color:#b57614}html[data-theme=fireside][data-mode=light] .chroma .fm{color:#b57614}html[data-theme=fireside][data-mode=light] .chroma .s{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .sa{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .sb{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .sc{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .dl{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .sd{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .s2{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .se{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .sh{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .si{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .sx{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .sr{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .s1{color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .ss{color:#076678}html[data-theme=fireside][data-mode=light] .chroma .m{color:#8f3f71}html[data-theme=fireside][data-mode=light] .chroma .mb{color:#8f3f71}html[data-theme=fireside][data-mode=light] .chroma .mf{color:#8f3f71}html[data-theme=fireside][data-mode=light] .chroma .mh{color:#8f3f71}html[data-theme=fireside][data-mode=light] .chroma .mi{color:#8f3f71}html[data-theme=fireside][data-mode=light] .chroma .il{color:#8f3f71}html[data-theme=fireside][data-mode=light] .chroma .mo{color:#8f3f71}html[data-theme=fireside][data-mode=light] .chroma .o{color:#af3a03}html[data-theme=fireside][data-mode=light] .chroma .ow{color:#af3a03}html[data-theme=fireside][data-mode=light] .chroma .or{color:#af3a03}html[data-theme=fireside][data-mode=light] .chroma .c{color:#928374;font-style:italic}html[data-theme=fireside][data-mode=light] .chroma .ch{color:#928374;font-style:italic}html[data-theme=fireside][data-mode=light] .chroma .cm{color:#928374;font-style:italic}html[data-theme=fireside][data-mode=light] .chroma .c1{color:#928374;font-style:italic}html[data-theme=fireside][data-mode=light] .chroma .cs{color:#928374;font-style:italic}html[data-theme=fireside][data-mode=light] .chroma .cp{color:#427b58}html[data-theme=fireside][data-mode=light] .chroma .cpf{color:#427b58;font-style:italic}html[data-theme=fireside][data-mode=light] .chroma .gd{color:#282828;background-color:#9d0006}html[data-theme=fireside][data-mode=light] .chroma .ge{color:#076678;text-decoration:underline}html[data-theme=fireside][data-mode=light] .chroma .gr{background-color:#9d0006;font-weight:700}html[data-theme=fireside][data-mode=light] .chroma .gh{color:#79740e;font-weight:700}html[data-theme=fireside][data-mode=light] .chroma .gi{color:#282828;background-color:#79740e}html[data-theme=fireside][data-mode=light] .chroma .go{color:#504945}html[data-theme=fireside][data-mode=light] .chroma .gp{color:#3c3836}html[data-theme=fireside][data-mode=light] .chroma .gs{color:#3c3836}html[data-theme=fireside][data-mode=light] .chroma .gu{color:#79740e;font-weight:700}html[data-theme=fireside][data-mode=light] .chroma .gt{background-color:#3c3836;font-weight:700}html[data-theme=fireside][data-mode=dark] .bg{color:#ebdbb2;background-color:#282828}html[data-theme=fireside][data-mode=dark] .chroma{color:#ebdbb2;background-color:#282828;-webkit-text-size-adjust:none}html[data-theme=fireside][data-mode=dark] .chroma .lnlinks{outline:none;text-decoration:none;color:inherit}html[data-theme=fireside][data-mode=dark] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}html[data-theme=fireside][data-mode=dark] .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}html[data-theme=fireside][data-mode=dark] .chroma .hl{background-color:#3d3d3d}html[data-theme=fireside][data-mode=dark] .chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#756d59}html[data-theme=fireside][data-mode=dark] .chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#756d59}html[data-theme=fireside][data-mode=dark] .chroma .line{display:flex}html[data-theme=fireside][data-mode=dark] .chroma .k{color:#fe8019}html[data-theme=fireside][data-mode=dark] .chroma .kc{color:#fe8019}html[data-theme=fireside][data-mode=dark] .chroma .kd{color:#fe8019}html[data-theme=fireside][data-mode=dark] .chroma .kn{color:#fe8019}html[data-theme=fireside][data-mode=dark] .chroma .kp{color:#fe8019}html[data-theme=fireside][data-mode=dark] .chroma .kr{color:#fe8019}html[data-theme=fireside][data-mode=dark] .chroma .kt{color:#fabd2f}html[data-theme=fireside][data-mode=dark] .chroma .na{color:#b8bb26;font-weight:700}html[data-theme=fireside][data-mode=dark] .chroma .no{color:#d3869b}html[data-theme=fireside][data-mode=dark] .chroma .ni{color:#fabd2f}html[data-theme=fireside][data-mode=dark] .chroma .ne{color:#fb4934}html[data-theme=fireside][data-mode=dark] .chroma .nl{color:#fb4934}html[data-theme=fireside][data-mode=dark] .chroma .nn{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .nt{color:#fb4934}html[data-theme=fireside][data-mode=dark] .chroma .nb{color:#fabd2f}html[data-theme=fireside][data-mode=dark] .chroma .bp{color:#fabd2f}html[data-theme=fireside][data-mode=dark] .chroma .nf{color:#fabd2f}html[data-theme=fireside][data-mode=dark] .chroma .fm{color:#fabd2f}html[data-theme=fireside][data-mode=dark] .chroma .s{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .sa{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .sb{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .sc{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .dl{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .sd{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .s2{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .se{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .sh{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .si{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .sx{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .sr{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .s1{color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .ss{color:#83a598}html[data-theme=fireside][data-mode=dark] .chroma .m{color:#d3869b}html[data-theme=fireside][data-mode=dark] .chroma .mb{color:#d3869b}html[data-theme=fireside][data-mode=dark] .chroma .mf{color:#d3869b}html[data-theme=fireside][data-mode=dark] .chroma .mh{color:#d3869b}html[data-theme=fireside][data-mode=dark] .chroma .mi{color:#d3869b}html[data-theme=fireside][data-mode=dark] .chroma .il{color:#d3869b}html[data-theme=fireside][data-mode=dark] .chroma .mo{color:#d3869b}html[data-theme=fireside][data-mode=dark] .chroma .o{color:#fe8019}html[data-theme=fireside][data-mode=dark] .chroma .ow{color:#fe8019}html[data-theme=fireside][data-mode=dark] .chroma .or{color:#fe8019}html[data-theme=fireside][data-mode=dark] .chroma .c{color:#928374;font-style:italic}html[data-theme=fireside][data-mode=dark] .chroma .ch{color:#928374;font-style:italic}html[data-theme=fireside][data-mode=dark] .chroma .cm{color:#928374;font-style:italic}html[data-theme=fireside][data-mode=dark] .chroma .c1{color:#928374;font-style:italic}html[data-theme=fireside][data-mode=dark] .chroma .cs{color:#928374;font-style:italic}html[data-theme=fireside][data-mode=dark] .chroma .cp{color:#8ec07c}html[data-theme=fireside][data-mode=dark] .chroma .cpf{color:#8ec07c;font-style:italic}html[data-theme=fireside][data-mode=dark] .chroma .gd{color:#282828;background-color:#fb4934}html[data-theme=fireside][data-mode=dark] .chroma .ge{color:#83a598;text-decoration:underline}html[data-theme=fireside][data-mode=dark] .chroma .gr{background-color:#fb4934;font-weight:700}html[data-theme=fireside][data-mode=dark] .chroma .gh{color:#b8bb26;font-weight:700}html[data-theme=fireside][data-mode=dark] .chroma .gi{color:#282828;background-color:#b8bb26}html[data-theme=fireside][data-mode=dark] .chroma .go{color:#504945}html[data-theme=fireside][data-mode=dark] .chroma .gp{color:#ebdbb2}html[data-theme=fireside][data-mode=dark] .chroma .gs{color:#ebdbb2}html[data-theme=fireside][data-mode=dark] .chroma .gu{color:#b8bb26;font-weight:700}html[data-theme=fireside][data-mode=dark] .chroma .gt{background-color:#fb4934;font-weight:700}html[data-theme][data-mode] .chroma,html[data-theme][data-mode] .bg{color:var(--lab-text);background-color:var(--lab-code-bg)}html[data-theme][data-mode] .chroma :is(.x,.cl,.nx,.ld,.go,.gp,.gs){color:var(--lab-text)}html[data-theme][data-mode] .chroma :is(.c,.ch,.cm,.c1,.cs,.cp,.cpf,.sd,.sh){color:var(--lab-code-comment);font-style:italic}html[data-theme][data-mode] .chroma :is(.ln,.lnt){color:var(--lab-code-comment)}html[data-theme][data-mode] .chroma .hl{background-color:var(--lab-code-highlight)}@media screen and (max-width:768px){:root{--gap:14px}.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-page .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}}#search-wrapper{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;visibility:hidden;z-index:50;padding:1rem;flex-direction:column;width:100vw;height:100vh;cursor:default;backdrop-filter:blur(5px)}@media(min-width:640px){#search-wrapper{padding:1.5rem}}@media(min-width:768px){#search-wrapper{padding:10vh}}@media(min-width:1024px){#search-wrapper{padding:12vh}}#search-modal{display:flex;top:5rem;flex-direction:column;width:100%;max-width:48rem;min-height:0;border-radius:.375rem;border-width:1px;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,5%);margin-left:auto;margin-right:auto;color:var(--lab-text);background-color:var(--lab-surface);border:2px solid var(--lab-bg)}.search-header{display:flex;position:relative;z-index:10;padding-left:.5rem;padding-right:.5rem;flex:none;justify-content:space-between;align-items:center}.search-icon{display:flex;justify-content:center;align-items:center;width:2rem;height:2rem;color:var(--lab-muted)}.search-form{display:flex;flex:auto;align-items:center;min-width:0}.search-input{display:flex;margin-left:.25rem;margin-right:.25rem;flex:auto;height:3rem;appearance:none;border:2px solid var(--link-hover-color);color:var(--lab-text);padding:5px;padding-left:15px}#close-search-button{display:flex;justify-content:center;align-items:center;width:1rem;height:1rem}#search-results{list-style:none;margin:0;padding:0}.search-section{overflow:auto;padding-left:.5rem;padding-right:.5rem;flex:auto}#search-button{font-size:26px;margin:auto 4px}.search-item-link{display:flex;align-items:center;border-radius:.375rem;appearance:none}.search-item{border-radius:.375rem;padding-top:.5rem;padding-bottom:.5rem;padding-left:.75rem;padding-right:.75rem;margin:.5rem;flex-grow:1;background:var(--lab-surface);border:1px solid var(--lab-rule);transition:background-color .05s ease}.search-item:hover{background:rgba(var(--theme-rgb),.1);border-color:var(--lab-bg);transform:translateX(4px)}.search-title{margin-bottom:-.25rem;font-size:1.125rem;line-height:1.75rem;font-weight:700}.search-summary{font-size:.875rem;line-height:1.25rem;font-style:italic}html[data-design]{--lab-bg:#f7f5f0;--lab-surface:#eeece6;--lab-text:#1d2232;--lab-muted:#626571;--lab-rule:#d4d2cc;--lab-accent:#a43b54;--lab-heading:'Schibsted Grotesk', sans-serif;--lab-body:'Schibsted Grotesk', sans-serif;--lab-mono:'IBM Plex Mono', monospace;--lab-reading-width:760px;--lab-text-size:19px;--main-width:1100px;--nav-width:1160px;--post-width:var(--lab-reading-width);--radius:2px}html[data-design]{--lab-heading:'Fraunces', Georgia, serif;--lab-body:'DM Sans', sans-serif;--radius:16px;--main-width:1060px}html[data-design] body{--code-bg:var(--lab-surface);--signature:var(--lab-accent);--link-color:var(--lab-accent);--link-hover-color:var(--lab-accent);--link-background-color:color-mix(in srgb, var(--lab-accent) 12%, transparent);--monospace:var(--lab-mono);color:var(--lab-text);background:var(--lab-bg);font-family:var(--lab-body);font-size:17px;line-height:1.65}html[data-design] :focus-visible{outline:2px solid var(--lab-accent);outline-offset:4px}html[data-design] h1,html[data-design] h2,html[data-design] h3,html[data-design] h4{font-family:var(--lab-heading);line-height:1.15;letter-spacing:-.035em}html[data-design] .header{border-bottom:1px solid var(--lab-rule)}html[data-design] .nav{max-width:var(--nav-width);padding:20px 28px;min-height:90px;align-items:center;line-height:1.5}html[data-design] .logo{margin:0}html[data-design] .logo a{font-family:var(--lab-heading);font-weight:700;font-size:25px;letter-spacing:-.05em}html[data-design] #menu{margin:0;gap:24px;align-items:center}html[data-design] #menu li+li{margin-inline-start:0}html[data-design] #menu a{font-size:14px}html[data-design] #menu .active{border-bottom-color:var(--lab-accent)}html[data-design] .main{padding:46px 28px;min-height:60vh}html[data-design] .page-header{margin-bottom:40px}html[data-design] .page-header h1{font-size:clamp(44px,6vw,76px)}html[data-design] .post-header{margin:20px 0 38px}html[data-design] .post-title{font-size:clamp(36px,4.7vw,61px);line-height:1.08}html[data-design] .post-description{border-left:0;padding:0;opacity:1;font-size:20px}html[data-design] .post-meta,html[data-design] .breadcrumbs,html[data-design] .entry-footer{font-family:var(--lab-mono);font-size:11px;line-height:1.8}html[data-design] .breadcrumbs a{font-size:inherit}html[data-design] .post-content{font-family:var(--lab-body);font-size:var(--lab-text-size);line-height:1.85}html[data-design] .post-content p{margin-bottom:1.4em}html[data-design] .post-content h2{margin-top:2em;margin-bottom:.7em}html[data-design] .post-content h3{margin-top:1.7em;margin-bottom:.7em}html[data-design] .post-content a{color:var(--lab-accent);box-shadow:none;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}html[data-design] .post-content pre{max-width:100%;overflow-x:auto;font-family:var(--lab-mono);border:1px solid var(--lab-rule);border-radius:var(--radius)}html[data-design] code,html[data-design] kbd{font-family:var(--lab-mono)}html[data-design] .post-content img{border-radius:var(--radius)}html[data-design] .post-entry{margin:0;padding:30px 0;border:0;border-bottom:1px solid var(--lab-rule);border-radius:0;background:0 0}html[data-design] .post-entry:hover{transform:none}html[data-design] .entry-header h2{font-size:28px;line-height:1.22}html[data-design] .entry-content{margin:13px 0;font-size:16px;line-height:1.7;color:var(--lab-muted)}html[data-design] .entry-content p{-webkit-line-clamp:3}html[data-design] .entry-footer{margin-top:14px}html[data-design] .toc{background:var(--lab-surface);border:1px solid var(--lab-rule);border-radius:var(--radius);font-family:var(--lab-body);font-size:14px}html[data-design] .toc.side{position:static;width:auto;max-height:none;margin:0 0 30px}html[data-design] .footer{max-width:1160px;border-top:1px solid var(--lab-rule);padding:30px 28px;margin:25px auto 0;font-family:var(--lab-mono);font-size:11px}html[data-design] .post-tags a,html[data-design] .terms-tags a{border:1px solid var(--lab-rule);background:0 0;border-radius:var(--radius)}html[data-design] .archive-year{border-color:var(--lab-rule)}html[data-design] .archive-month{padding-top:20px}html[data-design] .archive-entry-title{font-family:var(--lab-heading)}html[data-design] .search-input{background:var(--lab-bg);border:1px solid var(--lab-rule);border-radius:var(--radius);font-family:var(--lab-body)}html[data-design] #search-modal{border:1px solid var(--lab-rule);background:var(--lab-bg);border-radius:var(--radius)}html[data-design] .search-title{font-family:var(--lab-heading)}html[data-design] .search-item{background:var(--lab-surface);border-radius:var(--radius)}html[data-design] .reading-progress-bar{background:0 0}html[data-design] .lab-home-hero{display:grid;grid-template-columns:minmax(0,1fr)290px;gap:70px;padding:34px 0 62px;border-bottom:1px solid var(--lab-rule);align-items:center}html[data-design] .lab-eyebrow{font-family:var(--lab-mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--lab-muted)}html[data-design] .lab-home-hero h1{margin:22px 0;font-size:clamp(48px,6.3vw,80px);font-weight:700;line-height:1.08;letter-spacing:-.055em}html[data-design] .lab-intro{font-size:21px;line-height:1.7;max-width:46ch;color:var(--lab-muted)}html[data-design] .lab-portrait{margin:0}html[data-design] .lab-portrait img{width:100%;height:340px;object-fit:cover;filter:grayscale(1)}html[data-design] .lab-portrait figcaption{font-family:var(--lab-mono);font-size:10px;color:var(--lab-muted);margin-top:12px}html[data-design] .lab-home-links{display:flex;flex-wrap:wrap;gap:24px;margin-top:30px;font-size:14px}html[data-design] .lab-home-links a{border-bottom:1px solid var(--lab-accent);padding-bottom:4px}html[data-design] .lab-home-bottom .lab-home-links a{display:inline-block;border:1px solid var(--lab-rule);border-radius:999px;padding:6px 14px;transition:background-color .15s ease,border-color .15s ease}html[data-design] .lab-home-bottom .lab-home-links a:hover{background:var(--lab-surface);border-color:var(--lab-accent)}html[data-design] .lab-home-section{margin-top:52px}html[data-design] .lab-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;border-bottom:1px solid var(--lab-rule);padding-bottom:20px}html[data-design] .lab-section-head h2{font-size:32px}html[data-design] .lab-section-head>a{font-family:var(--lab-mono);font-size:11px;white-space:nowrap;color:var(--lab-accent)}html[data-design] .lab-home-entry{display:grid;grid-template-columns:125px minmax(0,1fr)24px;gap:25px;padding:27px 0;border-bottom:1px solid var(--lab-rule);align-items:baseline}html[data-design] .lab-home-entry time{font-family:var(--lab-mono);font-size:11px;color:var(--lab-muted)}html[data-design] .lab-home-entry h3{font-size:24px;line-height:1.25}html[data-design] .lab-home-entry p{font-size:15px;color:var(--lab-muted);margin-top:10px;line-height:1.7}html[data-design] .lab-home-entry .lab-arrow{font-size:22px;color:var(--lab-muted)}html[data-design] .lab-home-entry a:hover{color:var(--lab-accent)}html[data-design] .lab-home-bottom{display:grid;grid-template-columns:1fr 1fr;gap:70px}html[data-design] .lab-home-bottom h3{font-size:24px;margin:18px 0 10px}html[data-design] .lab-home-bottom p{color:var(--lab-muted)}html[data-design] .lab-home-bottom a{color:var(--lab-accent)}html[data-design] .lab-socials{margin-top:24px}html[data-design] .lab-home-hero{background:var(--lab-surface);border:0;border-radius:24px;padding:44px;grid-template-columns:minmax(0,1fr)240px;gap:40px}html[data-design] .lab-home-hero h1{font-weight:500;font-size:clamp(44px,5.8vw,72px)}html[data-design] .lab-portrait img{border-radius:130px 130px 12px 12px;height:310px;filter:none}html[data-design] .lab-home-entry{border:0;border-radius:16px;background:var(--lab-surface);padding:26px;margin-top:16px}html[data-design] .lab-home-entry h3{font-size:28px;font-weight:500}html[data-design] .lab-section-head{border:0}html[data-design] .post-entry{border:0;background:var(--lab-surface);border-radius:16px;padding:30px;margin-bottom:20px}html[data-design] .entry-header h2{font-size:32px;font-weight:500}html[data-design] .post-title{font-weight:500}html[data-design] #lab-current{color:#c4d3fa}html[data-design] #lab-panel{max-width:1260px;margin:auto;padding:6px 28px 15px}html[data-design] #lab-page-status:empty{display:none}html[data-design] #lab-page-status{margin:12px 0;color:#f5f7fb;font-size:13px}@media(max-width:1000px){html[data-design] .lab-home-hero{gap:30px;grid-template-columns:minmax(0,1fr)230px}}@media(max-width:700px){html[data-design] .nav{padding:18px 20px;flex-wrap:wrap;gap:12px}html[data-design] #menu{gap:20px;width:100%;justify-content:flex-start;overflow-x:auto}html[data-design] .main{padding:28px 20px}html[data-design] .lab-home-hero{grid-template-columns:1fr;padding:18px 0 35px;gap:25px}html[data-design] .lab-home-hero h1{font-size:48px}html[data-design] .lab-portrait{display:none}html[data-design] .lab-intro{font-size:18px}html[data-design] .lab-home-entry{grid-template-columns:minmax(0,1fr);gap:10px}html[data-design] .lab-home-entry h3{font-size:24px}html[data-design] .lab-home-entry .lab-arrow{display:none}html[data-design] .lab-home-bottom{grid-template-columns:1fr;gap:28px}html[data-design] .post-entry{display:block;padding:24px 0}html[data-design] .post-entry,html[data-design] .lab-home-hero{padding:24px}html[data-design] .post-title{font-size:36px}html[data-design] .entry-header h2{font-size:26px}html[data-design] .page-header h1{font-size:44px}html[data-design] #lab-current{display:none}html[data-design] #lab-panel{padding:6px 16px 15px}html[data-design] .lab-home-links{gap:18px}html[data-design] .post-meta{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){html[data-design] *,html[data-design] *::before,html[data-design] *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}html[data-design] .lab-featured,html[data-design] .lab-discover{display:none}html[data-design] .lab-featured{padding:36px;background:var(--lab-surface);border:1px solid var(--lab-rule)}html[data-design] .lab-featured h2{font-size:clamp(32px,3.5vw,49px);margin:25px 0;max-width:23ch}html[data-design] .lab-featured>p:not(.lab-eyebrow){color:var(--lab-muted);line-height:1.8}html[data-design] .lab-featured .lab-home-links span{font:11px var(--lab-mono);color:var(--lab-muted)}html[data-design] .lab-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}html[data-design] .lab-topic-group{min-width:0;padding:24px;border:1px solid var(--lab-rule);border-radius:var(--radius);background:var(--lab-surface)}html[data-design] .lab-topic-group h3{font-size:27px;margin:0}html[data-design] .lab-topic-group h3 a{display:flex;justify-content:space-between;align-items:baseline;gap:12px}html[data-design] .lab-topic-group h3 span{font:10px var(--lab-mono);white-space:nowrap;color:var(--lab-accent);letter-spacing:0}html[data-design] .lab-topic-group ul{list-style:none;padding:0;margin:18px 0 0}html[data-design] .lab-topic-group li{font-size:14px;line-height:1.6;margin-top:12px}html[data-design] .lab-topic-group a:hover{color:var(--lab-accent)}html[data-design][data-design] body:not(.layout-design-builder) .main :is(h1,h2,h3,h4,h5,h6){font-weight:var(--lab-heading-weight,500)}.lab-neovim{--nv-blue:#89b4fa;--nv-green:#a6e3a1;--nv-pink:#f5c2e7;--nv-peach:#fab387;--nv-on:#11111b;--nv-bar:#181825}html[data-mode=light] .lab-neovim{--nv-blue:#1e66f5;--nv-green:#29661c;--nv-pink:#8839ef;--nv-peach:#983c07;--nv-on:#fff;--nv-bar:#dce0e8}html[data-theme=fireside][data-mode=dark] .lab-neovim{--nv-blue:#a9c5cd;--nv-green:#b8ca91;--nv-pink:#e6b4ae;--nv-peach:#f0aa7d;--nv-on:#201914;--nv-bar:#281f1a}html[data-theme=fireside][data-mode=light] .lab-neovim{--nv-blue:#285b68;--nv-green:#48622c;--nv-pink:#884a67;--nv-peach:#a13e25;--nv-on:#fff;--nv-bar:#e7d5c2}.lab-code-tab,.lab-code-bar,.lab-code-command{display:none}html[data-design] .lab-neovim{position:relative;min-width:0;overflow:hidden;margin:24px 0;border:0;border-radius:3px;background:var(--lab-code-bg);color:var(--lab-text)}html[data-design] .lab-neovim .lab-code-tab{display:flex;align-items:center;gap:6px;min-height:29px;padding:0 9px;background:var(--lab-code-bg);font:10px/1 var(--lab-mono)}html[data-design] .lab-neovim>.highlight{margin:0}html[data-design] .lab-neovim pre{margin:0;padding:0;border:0;border-radius:0;background:var(--lab-code-bg);overflow-x:auto}html[data-design] .lab-neovim pre code{display:block;width:max-content;min-width:100%;box-sizing:border-box;padding:12px 16px 17px 8px;overflow:visible;font-size:13px;line-height:1.65;counter-reset:lab-code-line}html[data-design] .lab-neovim code>.line{display:block;position:relative;min-height:1.65em;padding-left:4ch}html[data-design] .lab-neovim code>.line::before{counter-increment:lab-code-line;content:counter(lab-code-line);position:absolute;left:0;width:2.5ch;text-align:right;color:var(--lab-muted);font-size:10px;line-height:2.145;user-select:none}html[data-design] .lab-neovim code>.line.hl{background:var(--lab-code-highlight)}html[data-design] .lab-code-command{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:3px 9px 5px;min-height:23px;color:var(--lab-muted);font:10px/1.5 var(--lab-mono)}html[data-design] .lab-neovim .copy-code{display:block;position:static;flex-shrink:0;opacity:1;margin:0 0 0 auto;padding:4px 2px;border:0;border-radius:0;background:0 0;color:var(--lab-muted);font:10px var(--lab-mono)}html[data-design] .lab-neovim .copy-code:hover{color:var(--lab-text)}html[data-design] .lab-neovim .copy-code:focus-visible{outline:2px solid var(--lab-accent);outline-offset:3px}@media(max-width:600px){html[data-design] .lab-neovim pre code{font-size:12px;padding-right:10px}html[data-design] .lab-code-command{position:absolute;width:1px;height:1px;min-height:0;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}html[data-design] .page-lab-resources a{color:var(--lab-talk-accent,var(--lab-accent));border-color:color-mix(in srgb,var(--lab-talk-accent,var(--lab-accent)) 30%,var(--lab-rule))}html[data-design][data-design] .page-lab-resources a{text-decoration:none;border-radius:999px}html[data-design][data-design] .page-lab-resources a:hover{border-color:var(--lab-accent);color:var(--lab-accent);background:color-mix(in srgb,var(--lab-accent) 8%,transparent)}html[data-theme=cat][data-mode=light]{--lab-bg:#eff1f5;--lab-surface:#e6e9ef;--lab-text:#4c4f69;--lab-muted:#5c5f77;--lab-rule:#bcc0cc;--lab-accent:#8031e0;--lab-code-bg:#e6e9ef;--lab-code-highlight:#dce0e8;--lab-code-comment:#5c5f77;--lab-card:#ccd0da;--lab-selection:#e6d5f4}html[data-theme=cat][data-mode=dark]{--lab-bg:#1e1e2e;--lab-surface:#313244;--lab-text:#cdd6f4;--lab-muted:#bac2de;--lab-rule:#585b70;--lab-accent:#cba6f7;--lab-code-bg:#11111b;--lab-code-highlight:#313244;--lab-code-comment:#a6adc8;--lab-card:#181825;--lab-selection:#49395f}html[data-theme=fireside][data-mode=light]{--lab-bg:#faf2e8;--lab-surface:#f1e3d3;--lab-text:#3c2b26;--lab-muted:#72584b;--lab-rule:#c8ad98;--lab-accent:#a13e25;--lab-code-bg:#f1e3d3;--lab-code-highlight:#e7d5c2;--lab-code-comment:#72584b;--lab-card:#e7d5c2;--lab-selection:#f0cdb8}html[data-theme=fireside][data-mode=dark]{--lab-bg:#281f1a;--lab-surface:#382a22;--lab-text:#f4e8da;--lab-muted:#cbb6a2;--lab-rule:#896a54;--lab-accent:#f0aa7d;--lab-code-bg:#201914;--lab-code-highlight:#382a22;--lab-code-comment:#cbb6a2;--lab-card:#201914;--lab-selection:#4c3326}html[data-theme] ::selection{background:var(--lab-selection);color:var(--lab-text)}html[data-design] body :is(.lab-eyebrow,.page-lab-kicker,.lab-home-entry time,.page-lab-entry time,.archive-meta,.lab-portrait figcaption){font-size:12px;color:var(--lab-muted)}html[data-design] .lab-entry-list .lab-home-entry h2{font-size:24px;line-height:1.25}html[data-design] .lab-entry-list .lab-home-entry p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}html[data-design] .lab-entry-list .lab-home-entry>div{min-width:0}html[data-design] .page-header h1{text-transform:none}html[data-design] .page-header h1 small{font:18px var(--lab-mono);color:var(--lab-muted);white-space:nowrap}html[data-design] .topic-group{margin-block:32px}html[data-design] .topic-group h2{font-size:24px}html[data-design] .topic-group .terms-tags{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;padding:0;margin:16px 0;list-style:none}html[data-design] .topic-group .terms-tags li{margin:0}html[data-design] .topic-group .terms-tags a{margin:0;font-size:15px;display:inline-block;padding:5px 14px;border:1px solid var(--lab-rule);border-radius:999px;background:var(--lab-card);color:var(--lab-text);text-decoration:none}html[data-design] .topic-group .terms-tags a:hover{border-color:var(--lab-accent);color:var(--lab-accent)}html[data-design] .topic-group .terms-tags span{color:var(--lab-muted);font:12px var(--lab-mono);margin-inline-start:6px}html[data-design] .topic-group .compact-topics a{padding:4px 11px;border:1px solid var(--lab-rule);border-radius:999px;background:var(--lab-card);font-size:13px}html[data-design] .footnote-backref~.footnote-backref{display:none}html[data-design] body.kind-404{display:flex;flex-direction:column;min-height:100vh}html[data-design] body.kind-404 .main{flex:1;width:100%}html[data-design] body.kind-404 .footer{width:100%}html[data-design] .error-page{margin-inline:auto}html[data-design] body.kind-home .lab-home-hero{padding:28px;align-items:start;gap:28px}@media(max-width:700px){html[data-design] .lab-eyebrow-tail{display:none}html[data-design] body.kind-home .lab-home-hero{padding:24px}}html[data-design] .post-content .anchor{display:none!important}html[data-design] .post-body{min-width:0}html[data-design] .post-body>.toc{margin:0 0 32px;padding:0;overflow:hidden;border:1px solid var(--lab-accent);border-radius:8px;background:var(--lab-code-bg);font:13.5px var(--lab-mono)}html[data-design][data-mode=dark] .post-body>.toc{background:var(--lab-card)}html[data-design] .toc details summary{display:flex;align-items:center;gap:10px;margin:0;padding:9px 14px;list-style:none;color:var(--lab-text);border-bottom:1px solid transparent}html[data-design] .toc details summary::-webkit-details-marker{display:none}html[data-design] .toc details[open] summary{border-bottom-color:var(--lab-rule)}html[data-design] .toc summary:focus-visible{outline:2px solid var(--lab-accent);outline-offset:-4px}html[data-design] .toc .details{padding:0 6px;border-radius:3px;background:var(--lab-accent);color:var(--lab-bg);font:600 11px/1.6 var(--lab-mono)}html[data-design] .toc .toc-prompt{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--lab-muted)}html[data-design] .toc .toc-prompt b{color:var(--lab-accent);font-weight:400}html[data-design] .toc .toc-count{margin-inline-start:auto;color:var(--lab-muted)}html[data-design] .toc .inner{padding:8px 0}html[data-design] .toc ul{margin:0;padding:0;list-style:none}html[data-design] .toc li{margin:0}html[data-design] .toc li ul{margin:0}html[data-design] .main .toc li a{display:block;padding:3px 14px;border-radius:0;color:var(--lab-text);font:14.5px/1.5 var(--lab-body,inherit);text-decoration:none}html[data-design] .main .toc li li a{padding-inline-start:34px;color:var(--lab-muted)}html[data-design] .main .toc li li li a{padding-inline-start:54px}html[data-design] .toc li a code{font-size:.85em;background:0 0;padding:0}html[data-design] .main .toc li a:is(.active,:hover,:focus-visible){outline:0;background:color-mix(in srgb,var(--lab-accent) 18%,transparent);box-shadow:inset 3px 0 var(--lab-accent);color:var(--lab-accent);text-decoration:none}html[data-design] .post-content{max-width:68ch;font-weight:450;line-height:1.7}html[data-design] .post-content :is(h1,h2,h3,h4){font-family:var(--lab-heading)}html[data-design] .post-single .post-title{font-size:clamp(2.25rem,4vw,3.5rem)}html[data-design] .post-meta-line{display:flex;flex-wrap:wrap;gap:4px 0}html[data-design] .post-meta-line>*{white-space:nowrap}html[data-design] .post-meta-line>*+*::before{content:'·';margin-inline:8px}html[data-design] .post-edit a{display:inline-flex;align-items:center;gap:8px;font:13px var(--lab-mono)}html[data-design] .post-edit svg{width:14px;height:14px}html[data-design] .post-meta,html[data-design] .breadcrumbs{font-size:13px}html[data-design] .post-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}html[data-design] .main .post-tags a{display:inline-block;padding:2px 10px;border:1px solid var(--lab-rule);border-radius:999px;background:var(--lab-card);color:var(--lab-text);text-decoration:none;font-size:12px}html[data-design] .main .post-tags a:hover{border-color:var(--lab-accent);color:var(--lab-accent);background:var(--lab-card)}html[data-design] .post-footer{border-bottom:0}html[data-design][data-design] .lab-neovim{--cb-lang:var(--lab-accent);--cb-body:var(--lab-code-bg);--cb-bar:color-mix(in srgb, var(--lab-text) 7%, var(--lab-code-bg));overflow:visible;margin:54px 0 28px;border:0;border-radius:0 10px 10px 10px;background:var(--cb-body)}html[data-design][data-mode=dark][data-design] .lab-neovim{--cb-body:var(--lab-card);--cb-bar:color-mix(in srgb, #000 28%, var(--lab-card))}html[data-design][data-design] .lab-neovim[data-code-lang=go]{--cb-lang:var(--nv-blue)}html[data-design][data-design] .lab-neovim[data-code-lang=sql]{--cb-lang:var(--nv-peach)}html[data-design][data-design] .lab-neovim:is([data-code-lang=bash],[data-code-lang=sh],[data-code-lang=shell],[data-code-lang=fish],[data-code-lang=console]){--cb-lang:var(--nv-green)}html[data-design][data-design] .lab-neovim>.highlight{border-radius:0 10px 0 0;overflow:hidden}html[data-design][data-design] .lab-neovim pre{background:0 0}html[data-design][data-design] .lab-neovim pre code{padding:16px 20px;font-size:13.5px;line-height:1.7}html[data-design][data-design] .lab-neovim code>.line{padding-left:4ch}html[data-design][data-design] .lab-neovim code>.line::before{font-size:12px;line-height:1.91}html[data-design][data-design] .lab-neovim .lab-code-tab{position:absolute;bottom:100%;left:0;display:flex;align-items:center;gap:8px;max-width:calc(100% - 24px);min-height:0;height:30px;padding:0 16px;border-radius:10px 10px 0 0;background:var(--cb-body);font:12px/1 var(--lab-mono)}html[data-design][data-design] .lab-neovim .lab-code-tab::before{content:'';flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--cb-lang)}html[data-design][data-design] .lab-neovim .lab-code-tab::after{content:'';position:absolute;right:-10px;bottom:0;width:10px;height:10px;background:radial-gradient(circle at 100% 0,transparent 10px,var(--cb-body) 10.5px)}html[data-design][data-design] .lab-code-filename{display:block;overflow:hidden;color:var(--lab-text);text-overflow:ellipsis;white-space:nowrap}html[data-design][data-design] .lab-code-bar{display:flex;align-items:center;gap:10px;height:30px;padding-right:8px;overflow:hidden;border-radius:0 0 10px 10px;background:var(--cb-bar);color:var(--lab-muted);font:12px/1 var(--lab-mono)}html[data-design][data-design] .lab-code-lang{align-self:stretch;display:grid;place-items:center;padding:0 12px;background:var(--cb-lang);color:var(--lab-bg);font-weight:700}html[data-design][data-design] .lab-code-copy{margin-left:auto}html[data-design][data-design] .lab-neovim .lab-code-copy .copy-code{display:block;margin:0;padding:3px 10px;border:1px solid var(--cb-lang);border-radius:5px;background:0 0;color:var(--cb-lang);font:12px/1.4 var(--lab-mono);cursor:pointer}html[data-design][data-design] .lab-neovim .lab-code-copy .copy-code:hover{background:var(--cb-lang);color:var(--lab-bg)}html[data-design][data-design] .lab-code-command{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}html[data-design][data-design] .lab-code-tabs .lab-neovim{margin:0;border-radius:0}html[data-design][data-design] .lab-code-tabs .lab-code-tab{display:none}html[data-design][data-design] .lab-code-tabs :is(.lab-neovim>.highlight,.lab-code-bar){border-radius:0}html[data-design] .talk-badge{display:inline-flex;flex-wrap:wrap;align-items:stretch;max-width:100%;margin:4px 0 0;overflow:hidden;border:1px solid var(--lab-accent);border-radius:6px;font:13px/1 var(--lab-mono)}html[data-design] .talk-badge>*{display:flex;align-items:center;padding:7px 12px}html[data-design] .talk-badge b{background:var(--lab-accent);color:var(--lab-bg);font-weight:600}html[data-design] .talk-badge span{color:var(--lab-text)}html[data-design] .talk-badge time{color:var(--lab-muted)}html[data-design] .talk-badge>*+:not(b){border-inline-start:1px solid var(--lab-rule)}html[data-design] .talk-badge b+*{border-inline-start:0}html[data-design] .post-content>table{display:table;width:100%;border-collapse:collapse;margin:24px 0 32px;font-size:16px}html[data-design] .post-content>table th{padding:10px 14px 12px;border-bottom:1px solid var(--lab-rule);font:12px/1.5 var(--lab-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--lab-muted);white-space:nowrap}html[data-design] .post-content>table td{padding:12px 14px;border-bottom:1px solid var(--lab-rule)}html[data-design] .post-content>table tr:last-child td{border-bottom:0}html[data-design] .git-last-edited{display:flex;align-items:baseline;gap:8px 12px;flex-wrap:wrap;padding:20px 0;margin-bottom:12px;border-top:1px solid var(--lab-rule);color:var(--lab-muted);font:12px/1.7 var(--lab-mono)}.git-last-edited>a{margin-left:auto;color:var(--lab-accent)}.git-last-edited a:focus-visible{outline:3px solid var(--lab-accent);outline-offset:3px}html[data-design] :is(.post-content,.search-footer) kbd{display:inline-block;min-width:1.7em;margin:0 .08em;padding:.23em .5em;border:1px solid var(--lab-rule);border-bottom-width:3px;border-radius:4px;background:var(--lab-surface);color:var(--lab-text);font:.7em/1.3 var(--lab-mono);text-align:center;vertical-align:baseline;white-space:nowrap}html[data-design] .main [data-page-variant][hidden]{display:none!important}html[data-design] .page-lab{color:var(--lab-text);overflow-wrap:anywhere;min-width:0}html[data-design] .page-lab-header{margin-bottom:40px;padding-bottom:24px;border-bottom:1px solid var(--lab-rule)}html[data-design] .page-lab-header h1{font:600 clamp(32px,5vw,60px)/1.12 var(--lab-heading);margin:12px 0 20px;letter-spacing:-.035em}html[data-design] .page-lab-header p{max-width:65ch;line-height:1.7}html[data-design] .lab-talks-hero h1{margin:8px 0 16px;font:700 clamp(34px,5vw,54px)/1.08 var(--lab-heading);letter-spacing:-.04em;max-width:22ch}html[data-design] .lab-talks-lead{max-width:64ch;margin:0 0 26px;font-size:17px;line-height:1.6;color:var(--lab-muted)}html[data-design] .lab-talks-stats{display:flex;flex-wrap:wrap;gap:16px 48px;margin:0 0 10px;padding:0}html[data-design] .lab-talks-stats>div{display:flex;flex-direction:column;gap:6px}html[data-design] .lab-talks-stats dt{margin:0;font:13px/1.5 var(--lab-mono);color:var(--lab-muted)}html[data-design] .lab-talks-stats dd{margin:0;font:700 40px/1 var(--lab-heading);letter-spacing:-.04em}html[data-design] .lab-talks-table{width:100%;border-collapse:collapse;margin-top:20px;font-size:15px}html[data-design] .lab-talks-table th{text-align:left;padding:10px 14px 12px;border-bottom:1px solid var(--lab-rule);font:12px/1.5 var(--lab-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--lab-muted);white-space:nowrap}html[data-design] .lab-talks-table td{padding:14px;border-bottom:1px solid var(--lab-rule);vertical-align:baseline}html[data-design] .lab-talks-table td.when{font:13px/1.5 var(--lab-mono);color:var(--lab-muted);white-space:nowrap}html[data-design] .lab-talks-table td.title a{font:600 16px/1.4 var(--lab-heading);color:var(--lab-text);text-decoration:none}html[data-design] .lab-talks-table td.title a:hover{color:var(--lab-accent);text-decoration:underline}html[data-design] .lab-talks-table td.where{font:13px/1.5 var(--lab-mono);color:var(--lab-muted)}html[data-design] .lab-talks-table .page-lab-resources{margin:0;gap:12px;justify-content:flex-end}html[data-design] .lab-talks-table .page-lab-resources li{min-width:0}html[data-design] .lab-talks-table .page-lab-resources a{border:0;background:0 0;padding:0;min-height:0;min-width:0;border-radius:0;font:13px/1.5 var(--lab-mono);color:var(--lab-accent);text-decoration:none;white-space:nowrap}html[data-design] .lab-talks-table .page-lab-resources a:hover{text-decoration:underline;background:0 0;border-color:transparent}@media(max-width:700px){html[data-design] .lab-talks-table th:nth-child(3),html[data-design] .lab-talks-table td:nth-child(3){display:none}}html[data-design] .page-lab :is(h2,h3){line-height:1.3;letter-spacing:-.02em}html[data-design] .page-lab a{text-decoration:underline;text-underline-offset:.18em;text-decoration-thickness:1px}html[data-design] :is(.page-lab,.page-lab-contents,.page-lab-uses-sections) a:focus-visible{outline:3px solid var(--lab-accent);outline-offset:4px;border-radius:2px}html[data-design] .page-lab a:hover{text-decoration-thickness:2px}html[data-design] .page-lab-resources{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-wrap:wrap;gap:8px}html[data-design] .page-lab-resources li{margin:0;max-width:100%}html[data-design] .page-lab-resources a{display:inline-flex;align-items:center;min-height:36px;min-width:24px;padding:6px 12px;border:1px solid var(--lab-rule);border-radius:4px;font:13px/1.5 var(--lab-mono);text-decoration:underline;text-underline-offset:.18em;overflow-wrap:anywhere}html[data-design] .page-lab-pagination{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--lab-rule);padding-top:24px;margin:40px 0}html[data-design] .page-lab-pagination a{display:inline-flex;align-items:center;min-height:44px}html[data-design] .lab-archive-total{margin:0 0 4px;font:12px/1.6 var(--lab-mono);color:var(--lab-muted)}html[data-design] .lab-archive-year{margin-bottom:8px}html[data-design] .lab-archive-year-head{margin:32px 0 6px;font:700 26px/1.2 var(--lab-heading);letter-spacing:-.03em}html[data-design] .lab-archive-year-head small,html[data-design] .lab-archive-month small{margin-left:8px;font:12px/1.6 var(--lab-mono);color:var(--lab-muted);letter-spacing:0;text-transform:none}html[data-design] .lab-archive-month{margin:18px 0 6px;font:600 18px/1.3 var(--lab-heading);letter-spacing:-.01em;color:var(--lab-text)}html[data-design] .lab-archive-row{padding:14px 0;border-bottom:1px solid var(--lab-rule)}html[data-design] .lab-archive-title{margin:0 0 6px;font:600 17px/1.4 var(--lab-heading);letter-spacing:-.01em}html[data-design] .lab-archive-title a{color:var(--lab-text);text-decoration:none}html[data-design] .lab-archive-title a:hover{color:var(--lab-accent)}html[data-design] .lab-archive-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;font:12px/1.6 var(--lab-mono);color:var(--lab-muted)}html[data-design] .lab-archive-count{margin-left:auto;color:var(--lab-muted)}html[data-design][data-page-variant=briefing] body[data-lab-page=talk] .post-title{max-width:22ch;font-size:clamp(32px,4vw,52px)}html[data-design][data-page-variant=briefing] body[data-lab-page=talk] .post-content{max-width:70ch}html[data-design][data-page-variant=editorial] body[data-lab-page=article] .post-header{border-block:1px solid var(--lab-rule);padding-block:32px;margin-bottom:36px}html[data-design][data-page-variant=editorial] body[data-lab-page=article] .post-title{font-size:clamp(2.25rem,4vw,3.5rem);max-width:24ch;line-height:1.12}html[data-design][data-page-variant=editorial] body[data-lab-page=article] .post-description{font-size:23px;line-height:1.6}html[data-design] .page-lab-lead{font-size:1.5em;font-weight:600}html[data-design] .page-lab-uses-section{min-width:0}@media(max-width:650px){html[data-design] .page-lab-resources a{min-height:44px}}html[data-design] body[data-lab-page=talk] .post-content>ul:first-of-type{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 32px;padding:0;list-style:none}html[data-design] body[data-lab-page=talk] .post-content>ul:first-of-type li{margin:0}html[data-design] body[data-lab-page=talk] .post-content>ul:first-of-type a{display:inline-flex;align-items:center;min-height:36px;padding:6px 14px;border:1px solid color-mix(in srgb,var(--lab-talk-accent,var(--lab-accent)) 30%,var(--lab-rule));border-radius:999px;color:var(--lab-talk-accent,var(--lab-accent));font:13px/1.5 var(--lab-mono);text-decoration:none}html[data-design] body[data-lab-page=talk] .post-content>ul:first-of-type a:hover{border-color:var(--lab-accent);color:var(--lab-accent);background:color-mix(in srgb,var(--lab-accent) 8%,transparent)}html[data-design] body[data-lab-page=talk] .post-content>p:has(>img:nth-of-type(2)){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}html[data-design] body[data-lab-page=talk] .post-content>p:has(>img:nth-of-type(2))>img,html[data-design] body[data-lab-page=talk] .post-content>figure:not(.lite-youtube) img{width:100%;height:100%;aspect-ratio:3/2;object-fit:cover;margin:0;border-radius:8px}html[data-design] body[data-lab-page=talk] .post-content>figure:not(.lite-youtube):is(:has(+figure),figure+*){display:inline-block;width:calc(50% - 6px);margin:0 0 12px;vertical-align:top}html[data-design] body[data-lab-page=talk] .post-content>figure:not(.lite-youtube)+figure:not(.lite-youtube){margin-inline-start:12px}html[data-design] .page-footer:has(>.pagination){margin-top:24px}html[data-design] .main .pagination a{display:inline-flex;align-items:center;min-height:36px;padding:6px 14px;border:1px solid color-mix(in srgb,var(--lab-accent) 30%,var(--lab-rule));border-radius:999px;background:0 0;color:var(--lab-accent);font:13px/1.5 var(--lab-mono);text-decoration:none}html[data-design] .main .pagination a:hover{border-color:var(--lab-accent);background:color-mix(in srgb,var(--lab-accent) 8%,transparent)}html[data-design] .page-header h1 small .tag-rss{color:var(--lab-accent);text-decoration:none}html[data-design] .page-header h1 small .tag-rss:hover{text-decoration:underline}html[data-design] .lab-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}html[data-design] .lab-project-card{display:flex;flex-direction:column;gap:10px;padding:20px;border:0;border-radius:16px}html[data-design] .lab-project-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}html[data-design] .lab-project-head h2{margin:0;font-size:21px;line-height:1.25}html[data-design] .lab-project-head h2 a{text-decoration:none}html[data-design] .lab-project-status{flex:none;padding:1px 9px;border:1px solid var(--lab-rule);border-radius:999px;font:11px/1.8 var(--lab-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--lab-muted)}html[data-design] .lab-project-status[data-status=active]{color:var(--lab-accent)}html[data-design] .lab-project-desc{margin:0;font-size:15px;line-height:1.6}html[data-design] .lab-project-stack{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}html[data-design] .lab-project-stack li{padding:1px 9px;border:1px solid var(--lab-rule);border-radius:999px;font:11px/1.8 var(--lab-mono);color:var(--lab-muted)}html[data-design] .lab-project-foot{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:auto;padding-top:10px;border-top:1px solid var(--lab-rule);font:12px/1.7 var(--lab-mono)}html[data-design] .lab-project-foot .lab-project-posts{margin-left:auto;color:var(--lab-accent)}@media(max-width:700px){html[data-design] .lab-project-grid{grid-template-columns:minmax(0,1fr)}html[data-design] .lab-project-foot .lab-project-posts{margin-left:0}}html[data-design] .series-nav{margin:28px 0;border:1px solid var(--lab-rule);border-radius:8px;overflow:hidden;color:var(--lab-text)}.series-nav .series-head{display:flex;align-items:baseline;gap:16px;padding:13px 18px;background:var(--lab-surface);font:12px/1.7 var(--lab-mono);cursor:pointer;list-style:none}.series-head::-webkit-details-marker{display:none}.series-head>:first-child{min-width:0;overflow-wrap:anywhere}.series-head>:first-child::before{content:'▸ ';color:var(--lab-accent)}.series-nav details[open] .series-head>:first-child::before{content:'▾ '}.series-count{margin-left:auto;white-space:nowrap;color:var(--lab-muted)}.series-nav .series-parts{list-style:none;padding:8px 0;margin:0;max-height:24rem;overflow-y:auto}.series-parts li{margin:0}.series-parts a{display:grid;grid-template-columns:26px minmax(0,1fr)auto;gap:10px;padding:9px 18px;font-size:16px;line-height:1.5;text-decoration:none;overflow-wrap:anywhere}.series-parts a[aria-current]{background:var(--lab-surface);color:var(--lab-accent)}.series-number,.series-reading{font:11px/2 var(--lab-mono);color:var(--lab-muted)}.series-nav .series-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px 20px;padding:12px 18px;border-top:1px solid var(--lab-rule);font:12px/1.7 var(--lab-mono)}.series-actions>span{color:var(--lab-muted)}.series-nav :is(a,summary):focus-visible{outline:3px solid var(--lab-accent);outline-offset:-3px}@media(max-width:400px){.series-parts a{grid-template-columns:22px minmax(0,1fr)}.series-reading{grid-column:2}}html[data-design] .lab-series-index{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}html[data-design] .lab-series-card{display:flex;flex-direction:column;gap:8px;padding:18px 20px;border:0;border-radius:16px}html[data-design] .lab-series-card h2{margin:0;font-size:21px;line-height:1.25}html[data-design] .lab-series-card h2 a{text-decoration:none}html[data-design] .lab-series-meta{margin:0;font:12px/1.7 var(--lab-mono);color:var(--lab-muted)}html[data-design] .lab-series-start{margin:0;font-size:14px;line-height:1.5}html[data-design] .lab-series-start a{color:var(--lab-accent)}html[data-design] .lab-series-til{margin:24px 0 0;display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;font-size:15px}html[data-design] .lab-series-til-label{padding:1px 9px;border:1px solid var(--lab-rule);border-radius:999px;font:11px/1.8 var(--lab-mono);letter-spacing:.06em;color:var(--lab-muted)}@media(max-width:700px){html[data-design] .lab-series-index{grid-template-columns:minmax(0,1fr)}}.post-content.sidenotes-enhanced{position:relative}.post-content.sidenotes-enhanced .sidenote-group{box-sizing:border-box;margin:18px 0 26px;padding:10px 16px;border:1px solid var(--lab-rule,var(--lab-rule));border-radius:5px;background:var(--lab-surface,var(--code-bg));color:var(--lab-text,var(--lab-text));font:16px/1.7 var(--lab-body,sans-serif);overflow-wrap:anywhere}.post-content.sidenotes-enhanced .sidenote-group[hidden],.post-content.sidenotes-enhanced .footnotes[hidden]{display:none!important}.post-content.sidenotes-enhanced .sidenote-group ol{margin:0;padding-inline-start:24px;list-style:decimal}.post-content.sidenotes-enhanced .sidenote-group li{margin:0;padding-block:4px;scroll-margin-block:30px}.post-content.sidenotes-enhanced .sidenote-group p{margin:7px 0;font:inherit}.post-content.sidenotes-enhanced .sidenote-group li::marker{font:12px var(--lab-mono,monospace);color:var(--lab-accent,var(--lab-text))}.post-content.sidenotes-enhanced .sidenote-group a{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}.post-content.sidenotes-enhanced .sidenote-group .footnote-backref:not(.footnote-backref~.footnote-backref){display:inline-flex}.post-content.sidenotes-enhanced .sidenote-group .footnote-backref{align-items:center;justify-content:center;min-width:32px;min-height:32px;margin-inline-start:5px}.post-content.sidenotes-enhanced .footnote-ref{display:inline-flex;align-items:center;justify-content:center;min-width:26px;min-height:28px;border:1px solid var(--lab-rule,var(--lab-rule));border-radius:4px;background:var(--lab-surface,var(--code-bg));font:12px/1 var(--lab-mono,monospace);text-decoration:none;vertical-align:middle}.post-content.sidenotes-enhanced :is(.footnote-ref:focus-visible,.sidenote-group :focus-visible,.sidenote-group li:target){outline:2px solid var(--lab-accent,var(--lab-text));outline-offset:3px}html[data-design] .post-body.sidenotes-margin>.toc,.sidenotes-margin>.toc{position:static;max-height:none;overflow:visible}.sidenotes-margin .post-content.sidenotes-enhanced .sidenote-group{position:absolute;left:calc(100% + 48px);width:240px;margin:0;padding:10px 0 0;border:0;border-top:1px solid var(--lab-rule,var(--lab-rule));border-radius:0;background:0 0;color:var(--lab-muted,var(--lab-muted));font-size:15px}.sidenotes-margin .post-content.sidenotes-enhanced .sidenote-group ol{padding-inline-start:21px}@media print{.post-content.sidenotes-enhanced .sidenote-group{position:static!important;width:auto!important}.post-content.sidenotes-enhanced .sidenote-group[hidden]{display:block!important}}html[data-design] .lab-subscribe-group{margin-top:32px}html[data-design] .lab-subscribe-group h2{margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--lab-rule);font-size:15px;font-weight:600}html[data-design] .lab-feed-list{list-style:none;margin:0;padding:0}html[data-design] .lab-feed-list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:9px 0;border-bottom:1px solid var(--lab-rule)}html[data-design] .lab-feed-list li:last-child{border-bottom:0}html[data-design] .lab-feed-list a{font:14px/1.6 var(--lab-mono)}html[data-design] .lab-feed-note{margin-left:auto;font:12px/1.7 var(--lab-mono);color:var(--lab-muted)}@media(max-width:480px){html[data-design] .lab-feed-note{margin-left:0}}html[data-design] .lab-year-head{margin:36px 0 8px;padding-bottom:8px;border-bottom:1px solid var(--lab-rule);font:12px/1.7 var(--lab-mono);letter-spacing:.08em;color:var(--lab-muted)}html[data-design] .lab-til-entry{align-items:center}html[data-design] .lab-til-entry time{align-self:center;white-space:nowrap}html[data-design] .lab-til-entry h3{font-size:17px;line-height:1.4;font-weight:500}html[data-design] .lab-entry-list .lab-chip{display:inline-block;padding:1px 8px;border:1px solid var(--lab-rule);border-radius:999px;font:11px/1.8 var(--lab-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--lab-muted);white-space:nowrap}html[data-design] .main :is(.lab-entry-list,.lab-til-year) .lab-home-entry.lab-card{margin:0;border-radius:0;border-top:1px solid var(--lab-rule)}html[data-design] .main :is(.lab-entry-list,.lab-til-year) .lab-home-entry.lab-card:first-of-type{border-top:0;border-radius:18px 18px 0 0}html[data-design] .main :is(.lab-entry-list,.lab-til-year) .lab-home-entry.lab-card:last-of-type{border-radius:0 0 18px 18px}html[data-design] .main :is(.lab-entry-list,.lab-til-year) .lab-home-entry.lab-card:only-of-type{border-radius:18px}html[data-design] .main .lab-til-year .lab-home-entry.lab-card:first-of-type{border-top-left-radius:0}html[data-design] .main :is(.lab-entry-list,.lab-til-year) .lab-home-entry:hover :is(h2,h3) a{color:var(--lab-accent)}html[data-design] .main .lab-til-year{margin-top:40px}html[data-design] .main .lab-til-year .lab-year-head{display:inline-flex;position:relative;margin:0;padding:12px 20px 10px;border:0;background:var(--lab-card);border-radius:12px 12px 0 0;font:600 15px var(--lab-mono);letter-spacing:0;color:var(--lab-text)}html[data-design] .main .lab-til-year .lab-year-head::before{content:'●\00a0';color:var(--lab-accent)}html[data-design] .main .lab-til-year .lab-year-head::after{content:'';position:absolute;right:-12px;bottom:0;width:12px;height:12px;background:radial-gradient(circle at 100% 0,transparent 12px,var(--lab-card) 12.5px)}html[data-design] .lite-youtube{margin:30px 0}.lite-youtube-shell{aspect-ratio:16/9;position:relative;overflow:hidden;border:1px solid var(--lab-rule);border-radius:8px;background:var(--lab-code-bg)}html[data-design] .post-content .lite-youtube-thumb{position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0;border-radius:0;object-fit:cover}.lite-youtube-tag{position:absolute;top:12px;left:12px;z-index:1;padding:2px 8px;border-radius:3px;background:var(--lab-accent);color:var(--lab-bg);font:600 11px/1.6 var(--lab-mono);pointer-events:none}.lite-youtube-load{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:0;border:0;background:linear-gradient(transparent 40%,rgb(0 0 0/.45));color:#fff;font:13px/1.5 var(--lab-mono);cursor:pointer}.lite-youtube-load[hidden]{display:none}.lite-youtube-play{width:68px;height:68px;border-radius:50%;background:var(--lab-accent);box-shadow:0 6px 24px rgb(0 0 0/.35);transition:transform .15s}.lite-youtube-play::before{content:'';display:block;margin:22px 0 0 27px;border-block:12px solid transparent;border-inline-start:19px solid var(--lab-bg)}.lite-youtube-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.lite-youtube-load:hover .lite-youtube-play{transform:scale(1.08)}.lite-youtube-load:focus-visible{outline:3px solid var(--lab-accent);outline-offset:-6px}@media(prefers-reduced-motion:reduce){.lite-youtube-play{transition:none}}.lite-youtube-shell iframe{width:100%;height:100%;border:0}.lite-youtube-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:600px){.lite-youtube-play{width:52px;height:52px}.lite-youtube-play::before{margin:16px 0 0 20px;border-block-width:10px;border-inline-start-width:16px}}html[data-design] body.kind-home :is([data-home-section],[data-home-post],[data-home-talk])[hidden]{display:none!important}html[data-design] body.kind-home :is(.lab-home-hero,[data-home-section],.lab-home-entry){min-width:0}html[data-design] body.kind-home :is(.lab-home-hero,.lab-home-entry)>div{min-width:0;overflow-wrap:anywhere}html[data-design] body.kind-home .main a:focus-visible{outline:3px solid var(--lab-accent);outline-offset:4px}html[data-design][data-design] body.kind-home .lab-portrait img{border-radius:24px}html[data-design][data-design] body.kind-home{--home-section-gap:48px}html[data-design][data-design][data-design] body.kind-home .main{row-gap:var(--home-section-gap)}html[data-design][data-design][data-design] body.kind-home .main>[data-home-section]{margin-block:var(--home-section-gap)0}html[data-design][data-design] body.kind-home{--home-corners:24px}html[data-design][data-design][data-design] body.kind-home :is(.lab-home-hero,.lab-featured,.lab-home-entry,.lab-topic-group,.lab-home-bottom>div){border-radius:var(--home-corners)}html[data-design][data-design] body.kind-home .lab-writing .lab-home-entry p{display:block;-webkit-line-clamp:unset;overflow:visible}html[data-design] body.kind-home :is(.lab-home-talk-event,.lab-home-talk-resources){display:none}html[data-design][data-design] body.kind-home :is(.lab-home-talk-event,.lab-home-talk-resources){display:block}html[data-design] body.kind-home .lab-home-talk-resources .page-lab-resources{position:relative}html[data-design] body.kind-home .lab-home-talk-resources a{position:relative;z-index:1}html[data-design] body.kind-home .lab-home-bottom>div{padding:28px}html[data-design] body.kind-home .lab-home-hero .lab-intro+.lab-intro{margin-top:16px}html[data-design] body.kind-home .main :is(.lab-writing,.lab-talks) .lab-section-head{border-bottom:0;padding-bottom:14px}html[data-design] body.kind-home .main :is(.lab-writing,.lab-talks) .lab-home-entry.lab-card{margin:0;border-radius:0;border-top:1px solid var(--lab-rule)}html[data-design] body.kind-home .main :is(.lab-writing,.lab-talks) .lab-section-head+.lab-home-entry.lab-card{border-top:0;border-radius:var(--home-corners,18px)var(--home-corners,18px)0 0}html[data-design] body.kind-home .main :is(.lab-writing,.lab-talks) .lab-home-entry.lab-card:is(:last-child,:has(+[hidden])){border-radius:0 0 var(--home-corners,18px)var(--home-corners,18px)}html[data-design] body.kind-home .main :is(.lab-writing,.lab-talks) .lab-home-entry:hover h3 a{color:var(--lab-accent)}html[data-design] body.kind-home .main :is(.lab-writing,.lab-talks) .lab-section-head{display:inline-flex;position:relative;margin:0;padding:12px 20px 10px;background:var(--lab-card);border-radius:12px 12px 0 0}html[data-design] body.kind-home .main :is(.lab-writing,.lab-talks) .lab-section-head::after{content:'';position:absolute;right:-12px;bottom:0;width:12px;height:12px;background:radial-gradient(circle at 100% 0,transparent 12px,var(--lab-card) 12.5px)}html[data-design] body.kind-home .main :is(.lab-writing,.lab-talks) .lab-section-head h2{font:600 15px var(--lab-mono);letter-spacing:0}html[data-design] body.kind-home .main :is(.lab-writing,.lab-talks) .lab-section-head h2::before{content:'● ';color:var(--lab-accent)}html[data-design] body.kind-home .main :is(.lab-writing,.lab-talks) .lab-section-head>a{position:absolute;left:calc(100% + 24px);top:14px;white-space:nowrap}html[data-design] body.kind-home .main :is(.lab-writing,.lab-talks) .lab-section-head+.lab-home-entry.lab-card{border-radius:0 var(--home-corners,18px)0 0}html[data-design] .lab-card{position:relative;background:var(--lab-card);transition:background-color .16s ease}html[data-design] .lab-card:has(.lab-card-link):hover{background:color-mix(in srgb,var(--lab-accent) 8%,var(--lab-card))}html[data-design] .lab-card .lab-card-link::after{content:'';position:absolute;inset:0}html[data-design] .lab-card a:not(.lab-card-link){position:relative;z-index:1}html[data-design] .nav{max-width:var(--nav-width);padding:14px 28px;min-height:74px;align-items:center;gap:24px;line-height:1.5}html[data-design] .logo{margin:0}html[data-design] .logo a{font-family:var(--lab-heading);font-weight:700;font-size:22px;letter-spacing:-.04em}html[data-design] .nav-end{display:flex;align-items:center;gap:18px;min-width:0}html[data-design] #menu{margin:0;align-items:center}html[data-design] #menu li+li{margin-inline-start:0}html[data-design] #menu a{font-size:15px;font-weight:500;color:var(--lab-muted);padding:7px 13px;transition:background-color .16s ease,color .16s ease}html[data-design] #menu .active{box-shadow:none}html[data-design] .logo-switches{display:inline-flex;align-items:center;gap:4px;margin:0;padding-inline-start:16px;border-inline-start:1px solid var(--lab-rule)}html[data-design] .logo-switches button,html[data-design] .logo-switches button#theme-toggle,html[data-design] .logo-switches button#search-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin:0;padding:0;font-size:20px;color:var(--lab-muted);background:0 0;border:0;border-radius:999px;transition:background-color .16s ease,color .16s ease}html[data-design] .logo-switches button:hover,html[data-design] .logo-switches button#theme-toggle:hover,html[data-design] .logo-switches button#search-button:hover{color:var(--lab-text);background:color-mix(in srgb,var(--lab-accent) 8%,transparent)}html[data-design][data-design] #menu{gap:4px}html[data-design][data-design] #menu a{border-radius:999px;background:var(--lab-card)}html[data-design][data-design] #menu a:hover{color:var(--lab-text);background:color-mix(in srgb,var(--lab-accent) 12%,var(--lab-surface))}html[data-design][data-design] #menu .active,html[data-design][data-design] #menu a.active:hover{color:var(--lab-bg);background:var(--lab-accent)}@media(max-width:700px){html[data-design] .nav{flex-wrap:nowrap;gap:8px;padding:12px 16px;min-height:64px}html[data-design] .logo .logo-name{display:none}html[data-design] .logo a{gap:0}html[data-design] .nav-end{width:auto;flex-wrap:nowrap;gap:6px;margin-inline-start:auto}html[data-design] #menu{overflow-x:auto}html[data-design] #menu a{padding:7px 8px;font-size:14px}html[data-design][data-design] #menu{gap:0}html[data-design] #menu{flex:auto;width:auto}html[data-design] .logo-switches{margin-inline-start:auto;border-inline-start:0;padding-inline-start:0}}html[data-design] .logo a{display:inline-flex;align-items:center;gap:10px}html[data-design] .logo a .lab-mark{display:inline-flex;flex:none;color:var(--lab-accent)}html[data-design] .logo a .lab-mark[hidden]{display:none}html[data-design] .logo a .lab-mark svg{width:26px;height:26px;display:block}html[data-design] #mode-toggle svg{display:block;width:18px;height:18px}html[data-mode=light] .mode-moon,html[data-mode=dark] .mode-sun{display:none}html[data-design] .palette-switch{display:inline-flex;align-items:center;gap:2px;padding:3px;background:var(--lab-card);border:1px solid var(--lab-rule);border-radius:999px}html[data-design] .palette-switch button{border:0;background:0 0;color:var(--lab-muted);cursor:pointer;font:600 12px/1 var(--lab-body);padding:6px 11px;border-radius:999px;white-space:nowrap}html[data-design] .palette-switch button[aria-pressed=true]{background:var(--lab-code-highlight);color:var(--lab-text);box-shadow:inset 0 0 0 1px var(--lab-muted)}html[data-design] .logo-switches button#mode-toggle{border:1px solid var(--lab-rule);background:var(--lab-card);color:var(--lab-text);font-size:15px}html[data-design] .logo-switches button#mode-toggle:hover{background:color-mix(in srgb,var(--lab-accent) 8%,transparent)}html[data-design] .footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 22px;max-width:1160px;margin:36px auto 0;padding:28px 28px 34px;font-family:var(--lab-mono);font-size:12px;line-height:1.8;color:var(--lab-muted);text-align:center}html[data-design] .footer a{color:var(--lab-muted);font-weight:500;box-shadow:none;text-decoration:none;transition:color .15s ease}html[data-design] .footer a:hover{color:var(--lab-accent)}html[data-design] .footer .footer-copy a{color:var(--lab-text)}html[data-design] .footer .footer-copy a:hover{color:var(--lab-accent)}html[data-design] .footer .footer-tagline{color:var(--lab-muted);font-weight:500}html[data-design] .footer .footer-tagline em{color:var(--lab-text);font-style:normal;font-weight:500}html[data-design][data-design] .footer{justify-content:space-between;text-align:left;border-top:1px solid var(--lab-rule);gap:16px}@media(max-width:700px){html[data-design][data-design] .footer{justify-content:center;text-align:center}}html[data-design] .footer .footer-links{display:inline-flex;gap:14px;align-items:center}html[data-design] a{transition:color .15s ease,background-color .15s ease,text-decoration-color .15s ease}html[data-design] .main a{border-radius:3px;box-decoration-break:clone;-webkit-box-decoration-break:clone}html[data-design] .main a:hover{color:var(--lab-accent);background-color:initial;text-decoration-color:var(--lab-accent);text-decoration-thickness:2px}html[data-design] #search-wrapper{visibility:hidden;opacity:0;justify-content:flex-start;align-items:center;padding:min(10vh,5rem)16px 16px;height:100dvh;background:color-mix(in srgb,var(--lab-bg) 65%,transparent);backdrop-filter:blur(4px);transition:opacity .15s ease}html[data-design] #search-wrapper.search-open{visibility:visible;opacity:1}html[data-design] #search-modal{width:100%;max-width:58rem;max-height:100%;border:1px solid var(--lab-accent);border-radius:8px;background:var(--lab-code-bg,var(--lab-bg));color:var(--lab-text);overflow:hidden}html[data-design] .search-label{padding:12px 18px;border-bottom:1px solid var(--lab-rule);font:12px/1.5 var(--lab-mono);color:var(--lab-accent)}html[data-design] .search-label span{color:var(--lab-muted)}html[data-design] .search-header{padding:10px 14px;border-bottom:1px solid var(--lab-rule)}html[data-design] .search-icon{color:var(--lab-accent);font:18px var(--lab-mono);flex-shrink:0}html[data-design] .search-input{min-width:0;width:100%;height:2.5rem;padding:5px 8px;border:0;border-radius:0;background:0 0;color:var(--lab-text);font:16px/1.6 var(--lab-mono)}html[data-design] .search-input::placeholder{color:var(--lab-muted)}html[data-design] #close-search-button{width:36px;height:36px;flex-shrink:0;color:var(--lab-muted)}html[data-design] #close-search-button svg{width:18px;height:18px}html[data-design] #search-modal :focus-visible{outline:2px solid var(--lab-accent);outline-offset:-2px}html[data-design] .search-status{margin:0;padding:10px 18px;font:12px/1.5 var(--lab-mono);color:var(--lab-muted)}html[data-design] .search-columns{display:grid;grid-template-columns:1fr 1fr;min-height:0;overflow:hidden}html[data-design] .search-section{min-width:0;min-height:220px;overflow-y:auto;overscroll-behavior:contain;padding:8px}html[data-design] #search-results{margin:0;padding:0;list-style:none}html[data-design] .search-item-link{display:block;border-radius:4px;color:var(--lab-text)}html[data-design] .search-item{background:0 0;border:1px solid transparent;border-radius:4px;margin:0;padding:10px;transform:none}html[data-design] .search-selected .search-item,html[data-design] .search-item-link:hover .search-item,html[data-design] .search-item-link:focus-visible .search-item{background:var(--lab-surface);border-color:var(--lab-rule);color:var(--lab-accent)}html[data-design] .search-title{margin:4px 0 0;font:600 16px/1.5 var(--lab-heading);overflow-wrap:anywhere}html[data-design] .search-meta{font:10px/1.8 var(--lab-mono);color:var(--lab-muted);text-transform:uppercase}html[data-design] .search-summary{font:16px/1.7 var(--lab-body);color:var(--lab-text);margin-top:16px}html[data-design] #search-results .search-summary{display:none}html[data-design] #search-preview{min-width:0;padding:18px;border-left:1px solid var(--lab-rule);overflow-y:auto}html[data-design] #search-preview .search-item{padding:0}html[data-design] #search-preview .search-title{font-size:20px;margin-top:14px}html[data-design] #search-modal mark{background:0 0;color:var(--lab-accent);text-decoration:underline;text-underline-offset:3px;padding:0;margin:0}html[data-design] .search-empty{padding:24px 12px;color:var(--lab-muted);font-size:14px}html[data-design] .search-footer{display:flex;flex-wrap:wrap;flex-shrink:0;gap:8px 18px;padding:12px 18px;border-top:1px solid var(--lab-rule);color:var(--lab-muted);font:11px/1.5 var(--lab-mono)}html[data-design] .search-footer kbd{font:inherit;color:var(--lab-text)}html[data-design] #search-modal [hidden]{display:none}@media(max-width:650px){html[data-design] #search-wrapper{padding:16px 8px}html[data-design] .search-columns{grid-template-columns:1fr}html[data-design] #search-preview{display:none}html[data-design] .search-label span{display:none}html[data-design] .search-header{padding:8px}html[data-design] .search-input{font-size:16px}}@media(prefers-reduced-motion:reduce){html[data-design] #search-wrapper{transition:none}}@font-face{font-family:terminal mono;src:url(../../fonts/terminal-mono.woff2)format('woff2');font-display:swap}@font-face{font-family:terminal symbols;src:url(../../fonts/terminal-symbols.woff2)format('woff2');font-display:swap}.lab-terminal{--term-bg:#1e1e2e;--term-text:#cdd6f4;--term-muted:#a6adc8;--term-accent:#cba6f7;--term-red:#f38ba8;--term-green:#a6e3a1;--term-yellow:#f9e2af;--term-blue:#89b4fa;--term-mauve:#cba6f7;--term-teal:#94e2d5;--term-peach:#fab387;--term-black:#585b70;position:relative;min-width:0;max-width:100%;margin:32px 0 0;border:1px solid var(--term-accent);border-radius:8px;background:var(--term-bg);color:var(--term-text);font:13px/1.6 monolisa,terminal mono,monospace}html[data-theme=fireside] .lab-terminal{--term-bg:#201914;--term-text:#f4e8da;--term-muted:#cbb6a2;--term-accent:#f0aa7d;--term-red:#eea08a;--term-green:#b8ca91;--term-yellow:#e8c58b;--term-blue:#a9c5cd;--term-mauve:#d7b1ca;--term-teal:#9dc6b1;--term-peach:#f0aa7d;--term-black:#896a54}.lab-terminal-title{position:absolute;top:-9px;left:14px;padding:0 8px;background:var(--term-bg);color:var(--term-accent);font:11px/1.4 terminal mono,monospace}.lab-terminal-scroll{min-width:0;overflow-x:auto;padding:23px 20px 18px;border-radius:inherit}.lab-terminal-scroll:focus-visible{outline:2px solid var(--term-accent);outline-offset:3px}html[data-design] .lab-terminal .lab-terminal-body{padding:0;margin:0;border:0;border-radius:0;background:0 0;color:var(--term-text);font:inherit;font-variant-ligatures:none;font-kerning:none;white-space:pre;overflow:visible;min-width:max-content}.lab-terminal .lab-terminal-head{margin:0 0 12px;color:var(--term-text);white-space:normal}.lab-terminal .lab-terminal-body+.lab-terminal-head{margin-top:26px}.lab-terminal .lab-terminal-prompt{color:var(--term-text)}.lab-terminal .prompt-caret{color:var(--term-green)}.terminal-glyph{display:inline-block;width:1ch;line-height:1;text-align:center}.terminal-glyph>span{font-family:terminal symbols;font-weight:400}.lab-terminal .t-wordmark{color:var(--term-teal);font-weight:700}.lab-terminal .t-bd{font-weight:700}.lab-terminal :is(.t-bd,.t-text){color:var(--term-text)}.lab-terminal .t-red{color:var(--term-red)}.lab-terminal .t-green{color:var(--term-green)}.lab-terminal .t-yellow{color:var(--term-yellow)}.lab-terminal .t-blue{color:var(--term-blue)}.lab-terminal .t-mauve{color:var(--term-mauve)}.lab-terminal .t-teal{color:var(--term-teal)}.lab-terminal .t-peach{color:var(--term-peach)}.lab-terminal .t-black{color:var(--term-black)}@media(max-width:600px){.lab-terminal{font-size:11px}.lab-terminal-scroll{padding-left:13px;padding-right:13px}}.lab-code-tabs{min-width:0;margin-block:24px}.lab-code-tabs[data-tabs-ready]{border:1px solid var(--lab-rule);border-radius:3px;overflow:hidden}.lab-code-tablist{display:flex;overflow-x:auto;background:var(--lab-code-bg);border-bottom:1px solid var(--lab-rule)}.lab-code-tablist>[role=tab]{flex:none;padding:12px 16px;border:0;border-bottom:2px solid transparent;border-radius:0;color:var(--lab-muted);background:0 0;font:12px/1.5 var(--lab-mono);white-space:nowrap;cursor:pointer}.lab-code-tablist>[aria-selected=true]{color:var(--lab-text);border-bottom-color:var(--lab-accent)}.lab-code-tabs :is([role=tab],[role=tabpanel]):focus-visible{outline:2px solid var(--lab-accent);outline-offset:-3px}html[data-design] .lab-code-tabs[data-tabs-ready]>.lab-neovim{margin:0;border-radius:0}.lab-code-tabs>[hidden]{display:none!important}.lab-code-diff .lab-diff-key{margin:0;padding:5px 10px;font:11px/1.6 var(--lab-mono);color:var(--lab-muted);background:var(--lab-code-bg)}.lab-code-diff .line{position:relative}.lab-code-diff .cl:is(.diff-added,.diff-removed)::before{position:absolute;left:0;width:2ch;text-align:center;user-select:none;font-weight:700}html[data-design] .lab-code-diff code>.line{padding-left:5ch}html[data-design] .lab-code-diff .cl:is(.diff-added,.diff-removed)::before{left:2.5ch}.lab-code-diff .cl.diff-added::before{content:'+';color:var(--nv-green)}.lab-code-diff .cl.diff-removed::before{content:'−';color:var(--nv-peach)}.lab-code-diff .line:has(>.diff-added){background:color-mix(in srgb,var(--nv-green) 8%,var(--lab-code-bg))}.lab-code-diff .line:has(>.diff-removed){background:color-mix(in srgb,var(--nv-peach) 8%,var(--lab-code-bg))}.lab-code-diff .diff-removed{text-decoration:line-through}@media print{.lab-code-tablist{display:none}.lab-code-tabs>[role=tabpanel][hidden]{display:block!important}}