:root{color-scheme:light;--bg:#f6f7f9;--bg-raised:#e8eaef;--text:#2b2d31;--text-strong:#1b1d22;--text-muted:#494e56;--link:#1b1d22;--link-visited:#1b1d22;--link-hover:#000;--link-line:#6b7078;--title:#1b1d22;--title-hover:#000;--focus:#1b1d22;--rule:#d7dae0;--control-border:#868b94;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Hiragino Sans", "Yu Gothic UI", "Noto Sans", "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Mono", "SF Mono", Consolas, Menlo, "DejaVu Sans Mono", "Liberation Mono", monospace;--measure:42rem;--gutter:1.25rem}:root[data-theme=dark]{color-scheme:dark;--bg:#16181c;--bg-raised:#1d2025;--text:#d6d9de;--text-strong:#eceef1;--text-muted:#a3a9b3;--link:#eceef1;--link-visited:#eceef1;--link-hover:#fff;--link-line:#7d8490;--title:#eceef1;--title-hover:#fff;--focus:#eceef1;--rule:#343840;--control-border:#7d8490}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scrollbar-gutter:stable}@supports not (scrollbar-gutter:stable){html{overflow-y:scroll}}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-sans);overflow-wrap:break-word;flex-direction:column;margin:0;font-size:1rem;font-weight:400;line-height:1.75;display:flex}main{flex:1 0 auto;padding-block:2.5rem 4rem}.wrap{width:min(100% - 2 * var(--gutter), var(--measure));margin-inline:auto}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--gutter);background:var(--bg-raised);color:var(--text-strong);border:1px solid var(--control-border);padding:.5rem .9rem;position:absolute;top:-4rem}.skip-link:focus{top:.5rem}a{color:var(--link);text-decoration:underline;text-decoration-color:var(--link-line);text-underline-offset:.22em;text-decoration-thickness:1px}a:visited{color:var(--link-visited)}a:hover{color:var(--link-hover);text-decoration-color:var(--link-hover)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}::selection{color:var(--text-strong);background:#cdddf2}:root[data-theme=dark] ::selection{background:#3b4a63}.site-header{border-bottom:1px solid var(--rule);font-size:1rem}.site-header__inner{flex-wrap:wrap;align-items:center;gap:.25rem 1.5rem;padding-block:.75rem;display:flex}.site-title,.site-title:visited{color:var(--text-strong);padding-block:.5rem;font-weight:600;text-decoration:none}.site-title:hover{color:var(--link-hover);text-decoration:none}.site-nav-link,.site-nav-link:visited{color:var(--text);padding-block:.5rem;text-decoration:none}.site-nav-link:hover{color:var(--text-strong);text-decoration:none}.site-search{gap:.5rem;margin-left:auto;display:flex}@media (width<=34rem){.site-search{flex:100%;margin-left:0}.site-search input[type=search]{flex:auto;width:auto;min-width:0}}input[type=search],button{font:inherit;color:var(--text);background:var(--bg-raised);border:1px solid var(--control-border);min-height:2.5rem;padding:.45rem .7rem;font-size:1rem;line-height:1.4}input[type=search]{width:10rem}.site-search input[type=search]{width:12rem;height:1.625rem;min-height:1.625rem;padding:0 .5rem;font-size:.875rem;line-height:1.2}.site-search button{justify-content:center;align-items:center;width:2rem;height:1.625rem;min-height:1.625rem;padding:0;display:inline-flex}.search-form button{justify-content:center;align-items:center;width:2.5rem;padding:0;display:inline-flex}.site-search button svg{width:14px;height:14px}.site-search input[type=search]:focus-visible,.search-form input[type=search]:focus-visible{outline:none}.site-search button:hover,.search-form button:hover{color:var(--text);border-color:var(--control-border)}input[type=search]::placeholder{color:var(--text-muted);opacity:1}button{cursor:pointer}button:hover{color:var(--text-strong);border-color:var(--text-muted)}.site-footer{border-top:1px solid var(--rule);color:var(--text-muted);padding-block:1.5rem 2.5rem;font-size:.875rem}.site-footer p{margin:0}.site-footer a,.site-footer a:visited{color:var(--text-muted);text-decoration:none}.site-footer a:hover{color:var(--link-hover);text-decoration:none}.site-footer__inner{justify-content:space-between;align-items:center;gap:1rem;display:flex}.theme-toggle{width:2.25rem;height:2rem;min-height:2rem;color:var(--text-muted);flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.theme-toggle svg{width:15px;height:15px}.theme-toggle .sun,:root[data-theme=dark] .theme-toggle .moon{display:none}:root[data-theme=dark] .theme-toggle .sun{display:inline}h1,h2,h3,h4{color:var(--text-strong);font-weight:600;line-height:1.3}h1{margin:0 0 1rem;font-size:1.5rem}.page-title-meta{color:var(--text-muted);margin:0 0 2rem}.section-title{margin:3rem 0 1.25rem;font-size:1.125rem}.post-list{margin:0;padding:0;list-style:none}.post-list>li{margin-bottom:1.75rem}.post-row__meta{color:var(--text-muted);font-size:.8125rem;line-height:1.5}.post-row__title{margin:.1rem 0 .2rem;font-size:1.0625rem;font-weight:600;line-height:1.4}.post-row__title a,.post-row__title a:visited{color:var(--title);text-decoration:none}.post-row__title a:hover{color:var(--title-hover);text-decoration:none}.post-row__desc{color:var(--text);margin:0;font-size:.9375rem;line-height:1.65}.status{color:var(--text-strong);font-weight:600}.article{width:min(100% - 2 * var(--gutter), var(--measure));margin-inline:auto}.article>*{min-width:0}.prose>*{min-width:0;margin-block:0 1.25rem}.article-header{margin-bottom:1.5rem}.article-header h1{color:var(--title);margin-bottom:.75rem;font-size:1.75rem;line-height:1.25}.article-meta{color:var(--text-muted);margin:0 0 .5rem;font-size:.8125rem}.contents{border:1px solid var(--rule);margin-bottom:2rem;padding:.9rem 1.25rem;font-size:.9375rem}.contents h2{color:var(--text-muted);margin:0 0 .4rem;font-size:.875rem;font-weight:600}.contents ol{margin:0;padding-left:1.4rem;line-height:1.6}.contents li{margin-block:.25rem}.draft-banner{border:1px solid var(--focus);color:var(--focus);margin-bottom:1.5rem;padding:.6rem 1rem;font-size:.9375rem}.prose h2{margin-block:3rem 1rem;font-size:1.3125rem}.prose h3{margin-block:2.25rem .75rem;font-size:1.125rem}.prose h4{margin-block:1.75rem .5rem;font-size:1rem}.prose h2+h3{margin-top:1.25rem}.prose strong{color:var(--text-strong);font-weight:600}.prose em,.prose i,.prose cite,.prose dfn,.prose var,.prose address{font-style:normal}.prose ul,.prose ol{padding-left:1.5rem}.prose li{margin-block:.4rem}.prose li>ul,.prose li>ol{margin-block:.4rem 0}.prose hr{border:0;border-top:1px solid var(--rule);margin-block:2.5rem}.prose blockquote{border:1px solid var(--control-border);margin-inline:0;padding:.9rem 1.25rem}.prose blockquote>:first-child{margin-top:0}.prose blockquote>:last-child{margin-bottom:0}pre,code,kbd,samp{font-family:var(--font-mono);font-variant-ligatures:none;font-feature-settings:"liga" 0, "calt" 0}.prose :not(pre)>code{background:var(--bg-raised);overflow-wrap:anywhere;padding:.1em .35em;font-size:.875em}.prose pre{border:1px solid var(--rule);white-space:pre;tab-size:4;scrollbar-width:thin;scrollbar-color:var(--control-border) transparent;padding:1rem 1.25rem;font-size:.8125rem;line-height:1.6;overflow-x:auto}@media (width<=47.5rem){.prose pre{padding:.85rem .9rem;font-size:.75rem}}.prose pre code{font-size:inherit}.prose pre.astro-code span[style*=text-decoration\:underline]{color:#f8f8f2!important;font-style:normal!important;text-decoration:none!important}.prose pre.astro-code span[style*=italic]{font-style:normal!important}.prose pre.astro-code span[style*=\#6272A4],.prose pre.astro-code span[style*=\#6272a4]{color:#8894ba!important}.prose p:has(>svg),.prose p:has(>img),.prose p:has(>video){text-align:center}.prose svg [fill=\#d6d9de i]{fill:var(--text)}.prose svg [stroke=\#d6d9de i]{stroke:var(--text)}.prose svg [fill=\#16181c i]{fill:var(--bg)}.prose svg [fill=\#1d2025 i]{fill:var(--bg-raised)}.prose svg [fill=\#a3a9b3 i]{fill:var(--text-muted)}.prose svg,.prose img,.prose video{max-width:100%;height:auto}.prose p>svg{width:100%;height:auto;margin-inline:auto;display:block}.prose figcaption,.prose p[data-caption]{text-align:left;font-size:.875rem;line-height:1.6;color:var(--text-muted)!important}.table-wrap{margin-block:0 1.5rem;overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:.875rem;line-height:1.55}.prose th,.prose td{border-bottom:1px solid var(--rule);text-align:left;vertical-align:top;padding:.55rem .9rem}.prose th{color:var(--text-strong);border-bottom:2px solid var(--control-border);font-weight:600}.prose th code,.prose td code{overflow-wrap:normal;word-break:normal}.prose details>summary{cursor:pointer;color:var(--text-strong);padding-block:.4rem}.prose details[open]>summary{margin-bottom:.75rem}.post-nav{border-top:1px solid var(--rule);flex-direction:column;gap:1rem;margin-top:3rem;padding-top:1.5rem;display:flex}.post-nav__label{color:var(--text-muted);font-size:.8125rem;line-height:1.5;display:block}.search-form{gap:.5rem;margin-bottom:2rem;display:flex}.search-form input[type=search]{flex:auto;width:auto;min-width:0}mark.search-match{background:var(--focus);color:var(--bg);padding-inline:.1em}.archive{margin-top:1.5rem}.archive__year{border-top:1px solid var(--rule)}.archive__year:last-of-type{border-bottom:1px solid var(--rule)}.archive__year>summary{cursor:pointer;color:var(--text-strong);padding-block:.75rem;font-size:1.125rem;font-weight:600}.archive__count{color:var(--text-muted);font-size:.875rem;font-weight:400}.archive__year[open]{padding-bottom:1rem}.archive__year[open]>summary{margin-bottom:.25rem}.archive__list{margin:0;padding:0;list-style:none}.archive__item a,.archive__item a:visited{color:var(--title);align-items:baseline;gap:.75rem;padding-block:.3rem;line-height:1.5;text-decoration:none;display:flex}.archive__item a:hover{color:var(--title-hover)}.archive__date{min-width:6rem;color:var(--text-muted);font-variant-numeric:tabular-nums;flex:none;font-size:.8125rem}.archive__title{color:inherit}@media print{:root,:root[data-theme]{color-scheme:light;--bg:#fff;--text:#111;--text-strong:#000;--text-muted:#444;--link:#0b3d91;--link-visited:#0b3d91;--link-line:#777;--title:#000;--rule:#bbb;--bg-raised:#f2f2f2;--control-border:#777}.site-header,.site-search,.skip-link,.post-nav,.theme-toggle{display:none!important}body{font-size:11pt}}.section-title--first,.not-found h1,.prose>h2:first-child{margin-top:0}.pager{border-top:1px solid var(--rule);justify-content:space-between;align-items:center;gap:1rem;margin-top:3rem;padding-top:1.25rem;font-size:.9375rem;display:flex}.pager__slot{flex:1 1 0}.pager__slot--next{text-align:right}.pager__count{color:var(--text-muted);white-space:nowrap;font-size:.8125rem}.pager a,.pager a:visited{color:var(--text);padding:.5rem 0;text-decoration:none;display:inline-block}.pager a:hover{color:var(--link-hover);text-decoration:none}.post-nav a,.post-nav a:visited{color:var(--title);text-decoration:none}.post-nav a:hover{color:var(--title-hover);text-decoration:none}.vplayer{text-align:left;margin-inline:auto;position:relative}.vplayer video{cursor:pointer;background:#000;width:100%;height:auto;display:block}.vplayer__bar{background:#16181ce0;align-items:center;gap:.5rem;padding-inline:.25rem .5rem;display:flex;position:absolute;bottom:0;left:0;right:0}.vplayer__bar button{color:#fff;background:0 0;border:0;border-radius:0;flex:none;justify-content:center;align-items:center;width:2.5rem;min-height:2.5rem;padding:0;display:inline-flex}.vplayer__bar button:hover{color:#fff;background:0 0}.vplayer__seek{-webkit-appearance:none;appearance:none;cursor:pointer;--p:0%;background:0 0;flex:auto;min-width:0;height:1.5rem;margin:0;padding:0}.vplayer__seek::-webkit-slider-runnable-track{background:linear-gradient(to right, #fff var(--p), #ffffff59 var(--p));height:2px}.vplayer__seek::-moz-range-track{background:#ffffff59;height:2px}.vplayer__seek::-moz-range-progress{background:#fff;height:2px}.vplayer__seek::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border:0;border-radius:0;width:10px;height:2px;margin-top:0}.vplayer__seek::-moz-range-thumb{background:#fff;border:0;border-radius:0;width:10px;height:2px}.vplayer__time{color:#fff;font-variant-numeric:tabular-nums;flex:none;font-size:.8125rem}.vplayer__bar [hidden]{display:none}.vplayer:fullscreen{background:#000;justify-content:center;align-items:center;display:flex}.vplayer:fullscreen video{width:auto;max-width:100vw;max-height:100vh}.vplayer+figcaption,figure>figcaption{margin-top:.75rem}.contents a,.contents a:visited{color:var(--text);text-decoration:none}.contents a:hover{color:var(--link-hover);text-decoration:none}@media (width<=47.5rem){.prose table{width:max-content;min-width:100%;font-size:.8125rem;line-height:1.45}.prose th,.prose td{overflow-wrap:normal;word-break:normal;max-width:20rem;padding:.4rem .6rem}.prose th{white-space:nowrap}.prose th code,.prose td code{overflow-wrap:normal;word-break:normal;white-space:nowrap;font-size:.78em}}
