:root{--padding:1rem;color-scheme:dark light;font-size:100%;font-family:system-ui,sans-serif;line-height:1.5}*,:after,:before{box-sizing:border-box}body{color:var(--text-color);background-color:var(--background-color);background-image:url(/static/background.d18cca4c1d.svg);background-attachment:fixed;margin:0;padding:var(--padding);display:flex;justify-content:center;counter-reset:footnotes}@supports (padding:max(1px)){body{padding:max(var(--padding),env(safe-area-inset-top)) max(var(--padding),env(safe-area-inset-right)) max(var(--padding),env(safe-area-inset-bottom)) max(var(--padding),env(safe-area-inset-left))}}.heading-effect,h1,h2,h3,h4,h5,h6{width:fit-content;-webkit-text-fill-color:transparent;text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;text-decoration:none;text-wrap:balance}header .heading-effect{display:block;font-size:2em;margin-block:.67em;margin-inline:0;font-weight:700}h1,header .heading-effect{font-size:2rem;margin:.67em 0}h2{font-size:1.5rem}h3{font-size:1.17rem}h4{font-size:1rem}h5{font-size:.83rem}h6{font-size:.67rem}article h1{font-size:1.75rem}.heading-effect:not([role=img]),h1:not([role=img]),h2:not([role=img]),h3:not([role=img]),h4:not([role=img]),h5:not([role=img]),h6:not([role=img]){letter-spacing:-.02em}p{text-wrap:pretty}time{white-space:nowrap}article section{line-height:1.7}fed-embed li{border:solid 1px var(--border-color);border-radius:var(--padding);margin-block-end:var(--padding);padding:var(--padding);overflow-wrap:break-word}article section li,article section p{max-width:70ch}code,kbd,pre{font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,Consolas,DejaVu Sans Mono,monospace}ins{background-color:#ccffd7}del{background-color:#fff0f1;text-decoration:line-through}del,ins{color:#000}pre{overflow-x:auto}code{overflow-wrap:break-word}kbd{color:#000;background-color:#d3d3d3;border:1px solid #a9a9a9;border-radius:.25rem}a{color:var(--link-color)}.post-date a,.postlist-link,article a{overflow-wrap:break-word}a:active,a:focus,a:hover{text-decoration-thickness:2px;text-underline-offset:2px}:is(article,.container)>header>a{text-decoration:none}:is(article,.container)>header>a:hover{text-decoration:underline;text-decoration-color:var(--link-color)}.footer-link,.header-footer-text{color:var(--text-color)}.container>header .header-footer-text{letter-spacing:.04em}.footer-link{cursor:pointer;text-decoration:underline;text-decoration-color:var(--link-color)}img{max-width:100%;height:auto}picture{flex-shrink:0}.metadata picture{margin-block-end:0}figcaption{text-align:center}iframe[src*=youtube]{width:100%}abbr{text-decoration:underline;text-decoration-color:var(--link-color)}abbr:after{content:"?";font-size:.8rem;position:relative;top:-.2rem;color:var(--metadata-color);padding-inline-start:.1rem}blockquote{position:relative;font-style:italic}blockquote:before{content:"“";color:var(--metadata-color);font-family:sans-serif;font-size:3.5rem;position:absolute;left:-2.5rem}.tag-cloud{display:flex;flex-wrap:wrap;gap:.4rem .5rem;align-items:baseline}.nav-item,.tag-item{border-radius:999px;text-decoration:none;white-space:nowrap;transition:box-shadow .15s ease}.tag-item{font-size:.8rem;color:var(--link-color);border:1.5px solid var(--link-color);background:transparent;padding:.1rem .55rem}.tag-cloud .tag-item{font-size:clamp(.72rem,.7rem + .01rem * var(--count,1),1.3rem)}.nav-item{font-size:.72rem;background:linear-gradient(var(--main-background-color),var(--main-background-color)) padding-box,linear-gradient(90deg,#f30,#ffa200) border-box;border:2px solid transparent;color:var(--link-color);padding:.25rem .7rem;letter-spacing:.07em}@supports (color:color(display-p3 0 0 0)){.nav-item{background:linear-gradient(var(--main-background-color),var(--main-background-color)) padding-box,linear-gradient(90deg,color(display-p3 .97 .14 .03) 0,color(display-p3 1 .6 .01) 100%) border-box}}nav .nav-item{display:block;text-align:center;padding-block:.5rem}.nav-item:hover,.tag-item:hover{box-shadow:0 0 0 3px var(--link-glow)}#search>div>form>input{font-size:1.125rem;border-radius:999px;padding-inline:1rem;field-sizing:content;min-width:20ch;max-width:100%}.aside-item{font-size:.875rem}.container{display:grid;grid-template-areas:"header header header" "nav content aside" "footer footer footer";grid-template-columns:10rem minmax(0,1fr) 10rem;grid-template-rows:auto 1fr auto;max-width:1100px;width:100%;border-radius:.5rem;overflow:hidden}.container>header{grid-area:header;background-color:var(--main-background-color);display:flex;padding:var(--padding);justify-content:flex-end;flex-direction:column}nav{grid-area:nav}nav ul{display:flex;flex-direction:column;gap:.5rem}main{grid-area:content}aside{grid-area:aside}.container>footer{grid-area:footer;font-size:.75rem;display:flex;align-items:flex-end;position:relative}.container>footer,aside,main,nav{padding:var(--padding);background-color:var(--main-background-color)}svg.icon-container{display:none}svg.icon{width:1rem;height:1rem;vertical-align:middle;margin-inline-end:.25rem}aside ul,footer ul,nav ul{list-style:none;padding:0}footer ul{margin-block-end:0;max-width:calc(100% - 110px)}footer ul li:first-child{margin-block-end:.75rem}ul.postlist{padding-inline-start:1.5em;list-style-type:square}ul.postlist ::marker{color:#ffd900}.author{display:block;width:2rem;height:2rem;border-radius:50%;margin-inline-end:.25rem;background-image:linear-gradient(to bottom,#d3d3d3 0,var(--metadata-color) 100%);flex-shrink:0}.metadata{display:flex;align-items:center}.post-date,.postlist-date{color:var(--metadata-color);font-size:.875rem}.webmentions{font-size:.875rem}.webmention-content{max-height:7rem;overflow-y:auto}.webmention-anchor{margin-inline-start:.25rem}.edit-on-github{text-align:right;font-size:.875rem;color:var(--metadata-color)}.validator{bottom:calc(2 * var(--padding))}.validator,dark-mode-toggle{position:absolute;right:var(--padding)}dark-mode-toggle{--dark-mode-toggle-light-icon:url(/static/moon.32e79fd04d.svg);--dark-mode-toggle-dark-icon:url(/static/sun.b529c8f43e.svg);--dark-mode-toggle-color:var(--text-color);--dark-mode-toggle-icon-filter:invert(100%);bottom:calc(31px + 3.5 * var(--padding))}.share{background-color:var(--link-color);background-repeat:no-repeat;background-position-y:center;border-radius:.25rem;border:1px solid var(--main-background-color);display:block;cursor:pointer;color:#fff;font-family:inherit;font-size:inherit;padding:.5rem .25rem .5rem calc(24px + .25rem)}.share:hover{border:1px solid var(--link-color)}.share:active{position:relative;top:1px}.share.share-ios{background-image:url(/static/share-ios.239a0701ba.svg)}.share.share-others{background-image:url(/static/share-others.27043e1f06.svg)}.share-image{display:none;font-size:.75rem;background-size:18px;padding:.25rem .1rem .25rem calc(18px + .1rem)}.performance-metrics,.web-monetization{margin-block-start:var(--padding)}.largest-contentful-paint{outline:dashed .25rem var(--link-color)}.lcp-link{overflow-x:hidden;display:inline-block;vertical-align:bottom;width:fit-content;max-width:9rem;white-space:nowrap;text-overflow:ellipsis}@media (width >= 1024px){:root{font-size:112.5%}}@media (width <= 800px){:root{--padding:0.5rem}.container{grid-template-areas:"header" "content" "nav" "aside" "footer";grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto auto auto}aside ul,nav ul{margin-block-start:0}nav ul{flex-flow:row wrap}li{margin-inline-end:calc(2 * var(--padding));margin-block-end:calc(2 * var(--padding))}aside ul li,footer ul li{margin-block-end:.1rem}h1,h2,h3,header .heading-effect{margin:var(--padding) 0;letter-spacing:-.05rem}aside,main,nav{padding:var(--padding)}#search>div>form>input{font-size:1rem}}@media (width <= 240px){.container{overflow-x:hidden}main{width:100%}}.ask-enabled .pagefind-ui__search-input,.pagefind-ui__search-clear{display:none}.search-undecided .pagefind-ui__search-input{visibility:hidden}.ask{margin-bottom:1rem}.ask-row{display:flex;gap:.5rem;align-items:center}.ask-field{flex:1;min-width:0;padding:.5rem .75rem;color:inherit;background-color:var(--background-color);border:1px solid var(--pagefind-ui-border)}.ask-field,.ask-submit{font:inherit;border-radius:.35rem}.ask-submit{padding:.5rem .9rem;color:var(--background-color);cursor:pointer;background-color:var(--pagefind-ui-primary);border:0}.ask-submit[disabled]{cursor:default;opacity:.5}.ask-status{margin:.35rem 0;font-size:.8rem;opacity:.75}.ask-question{margin:1rem 0 .25rem;font-weight:700}.ask-answer>:first-child{margin-top:.25rem}.ask-answer img{max-width:100%}.ask-failed{color:var(--pagefind-ui-primary)}rt{background-color:#ededed;color:#121212;padding:.2rem;margin:.2rem;max-width:30ch;display:none}rt,ruby:after{font-size:.75rem}ruby:after{color:red;cursor:pointer;vertical-align:top;counter-increment:footnotes;content:" [" counter(footnotes) "]"}ruby{ruby-position:under;--footnote-display:inline-block}ruby:focus{outline:none}rt:hover,ruby:focus rt{display:var(--footnote-display)}