.back-to-top-link[data-astro-cid-l3fzeomt]{--interaction-text-color:var(--color-text-soft);right:calc(var(--spacing-shell-near) + var(--safe-area-inset-inline-end));bottom:calc(var(--spacing-shell-near) + var(--safe-area-inset-block-end));z-index:40;justify-content:flex-end;align-items:flex-end;min-width:3.375rem;min-height:2.5rem;display:flex;position:fixed}.back-to-top-link[data-astro-cid-l3fzeomt]:focus-visible{outline:none}.back-to-top-surface[data-astro-cid-l3fzeomt]{--interaction-underline-color:var(--link-underline-color-muted);--interaction-emphasis-color:var(--color-link-emphasis);--back-to-top-font-size:.9375rem;--back-to-top-line-height:1;box-sizing:border-box;border:var(--stroke-1) solid color-mix(in oklab, var(--link-underline-color-muted) 54%, var(--color-background) 46%);background:color-mix(in oklab, var(--color-background) 86%, transparent);min-width:3.125rem;min-height:2rem;color:var(--interaction-text-color,inherit);font-size:var(--back-to-top-font-size);line-height:var(--back-to-top-line-height);text-align:center;text-decoration-line:underline;-webkit-text-decoration-color:var(--interaction-underline-color);-webkit-text-decoration-color:var(--interaction-underline-color);text-decoration-color:var(--interaction-underline-color);text-decoration-thickness:var(--stroke-2);transition:color var(--motion-transition-fast), text-decoration-color var(--motion-transition-fast), outline-color var(--motion-transition-fast);white-space:nowrap;justify-content:center;align-items:center;padding-inline:.5625rem;display:inline-flex}.back-to-top-link[data-astro-cid-l3fzeomt]:hover .back-to-top-surface[data-astro-cid-l3fzeomt],.back-to-top-link[data-astro-cid-l3fzeomt]:focus-visible .back-to-top-surface[data-astro-cid-l3fzeomt]{color:var(--interaction-emphasis-color,var(--color-link-emphasis));-webkit-text-decoration-color:var(--interaction-emphasis-color,var(--color-link-emphasis));-webkit-text-decoration-color:var(--interaction-emphasis-color,var(--color-link-emphasis));text-decoration-color:var(--interaction-emphasis-color,var(--color-link-emphasis))}.back-to-top-link[data-astro-cid-l3fzeomt]:focus-visible .back-to-top-surface[data-astro-cid-l3fzeomt]{outline:var(--focus-outline-width) dashed var(--color-link-emphasis);outline-offset:calc(var(--focus-outline-width) * -1)}.site-footer[data-astro-cid-6vrjc4vz]{--footer-line-height:1.4;font-size:var(--text-support-size);line-height:var(--footer-line-height);padding-block-start:var(--spacing-shell-section)}.site-footer-meta[data-astro-cid-6vrjc4vz]{align-items:baseline;gap:var(--space-2xs);flex-wrap:wrap;display:flex}.footer-group[data-astro-cid-6vrjc4vz]{flex-wrap:wrap;align-items:baseline}@layer reset{*,:before,:after{box-sizing:border-box}body{margin:0}table{border-collapse:collapse}img,picture,video,canvas,svg{max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit;color:inherit}legend{padding:0}}@layer tokens{:root{--hue-structure:265deg;--hue-reading:92deg;--hue-interaction:188deg;--color-background:oklch(19% .008 var(--hue-structure));--color-blockquote:oklch(76% .006 var(--hue-reading));--color-code:oklch(88% .008 var(--hue-reading));--color-code-background:oklch(23% .012 var(--hue-structure));--color-heading:oklch(91.5% .006 var(--hue-reading));--color-image-zoom-overlay:#020306eb;--color-link:oklch(84% .08 var(--hue-interaction));--color-link-emphasis:oklch(86% .07 var(--hue-interaction));--color-prism-comment:oklch(70% .006 92);--color-prism-function:oklch(82% .11 150);--color-prism-keyword:oklch(82% .12 294.8);--color-prism-number:oklch(82% .09 55);--color-prism-operator:oklch(82% .075 188);--color-prism-punctuation:oklch(72% .006 92);--color-prism-regex:oklch(82% .09 85.8);--color-prism-string:oklch(80% .1 150);--color-decorative-text:oklch(68% .006 var(--hue-reading));--color-text:oklch(89.8% .008 var(--hue-reading));--color-text-soft:color-mix(in oklab, var(--color-text) 82%, var(--color-background) 18%);--font-sans:"Noto Sans CJK SC", "Noto Sans SC", "Source Han Sans SC", "Source Han Serif", source-han-sans-sc, system-ui, ui-sans-serif, sans-serif;--font-serif:"Noto Serif CJK SC", "Noto Serif SC", "Source Han Serif SC", "Source Han Serif", source-han-serif-sc, ui-serif, serif;--font-prism:ui-monospace, "SFMono-Regular", menlo, consolas, "Liberation Mono", "Ubuntu Mono", monaco, monospace;--font-weight-medium:500;--font-weight-semibold:600;--text-prism:1em;--leading-tight:1.25;--leading-ui:1.75rem;--leading-prism:1.5;--text-body-size:clamp(1.125rem, 1.06rem + .42vw, 1.375rem);--text-body-leading:1.84;--text-ui-size:1.25rem;--text-ui-leading:var(--leading-ui);--text-meta-size:1.125rem;--text-support-size:1rem;--text-support-leading:1.5rem;--text-caption-size:.875rem;--text-caption-leading:1.5rem;--motion-transition-fast:.15s ease;--motion-transition-slow:.3s ease;--container-page:52.5rem;--stroke-1:1px;--stroke-2:2px;--stroke-4:4px;--focus-outline-width:var(--stroke-4);--focus-outline-offset:var(--stroke-2);--space-2xs:.125rem;--space-xs:.25rem;--space-sm:.375rem;--space-md:.5rem;--space-lg:.75rem;--space-xl:1rem;--space-2xl:1.25rem;--space-3xl:1.5rem;--space-4xl:2rem;--spacing-shell-near:clamp(var(--space-lg), 2vw, var(--space-xl));--spacing-shell-section:clamp(calc(var(--space-xl) + var(--space-lg)), 4vw, var(--space-4xl));--spacing-stack-tight:var(--space-sm);--spacing-stack-default:var(--space-md);--spacing-cluster-compact:calc(var(--space-md) + var(--space-2xs));--spacing-cluster-relaxed:calc(var(--space-md) + var(--space-sm));--spacing-prose-block-start:var(--space-xl);--spacing-prose-block-end:calc(var(--space-xl) + var(--space-sm));--spacing-prose-nested:var(--space-lg);--spacing-prose-inset:var(--space-2xl);--spacing-prose-figure:var(--space-4xl);--spacing-prism-block:1em;--spacing-prism-inline:.1em;--article-space-related:clamp(var(--space-xl), 2.6vw, var(--space-3xl));--radius-prism:.3em;--color-divider-color:oklch(43% .015 var(--hue-structure));--divider-rule:var(--stroke-1) dashed var(--color-divider-color);--link-underline-color-muted:oklch(62% .06 var(--hue-interaction) / 72%);--safe-area-inset-inline-start:env(safe-area-inset-left,0px);--safe-area-inset-inline-end:env(safe-area-inset-right,0px);--safe-area-inset-block-start:env(safe-area-inset-top,0px);--safe-area-inset-block-end:env(safe-area-inset-bottom,0px)}}@layer base{@keyframes page-enter{0%{opacity:.2}to{opacity:1}}html{background-color:var(--color-background);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;interpolate-size:allow-keywords;scroll-behavior:smooth;scrollbar-gutter:stable}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{min-height:100dvh;max-width:var(--container-page);isolation:isolate;color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-body-size);line-height:var(--text-ui-leading);line-break:loose;overflow-wrap:break-word;text-autospace:normal;text-rendering:optimizelegibility;--shell-reading-fade-height:clamp(1.35rem, 5.75vh, 3.9rem);--shell-reading-fade-block-start-size:calc(var(--shell-reading-fade-height) + var(--safe-area-inset-block-start));--shell-reading-fade-block-end-size:calc(var(--shell-reading-fade-height) + var(--safe-area-inset-block-end));--shell-reading-fade-top:color-mix(in oklab, var(--color-background) 80%, transparent);--shell-reading-fade-bottom:color-mix(in oklab, var(--color-background) 80%, transparent);padding-inline:calc(var(--space-2xl) + var(--safe-area-inset-inline-start)) calc(var(--space-2xl) + var(--safe-area-inset-inline-end));padding-block:var(--shell-reading-fade-block-start-size) var(--shell-reading-fade-block-end-size);flex-direction:column;margin:0 auto;display:flex;position:relative}body:before,body:after{content:"";pointer-events:none;z-index:24;position:fixed;inset-inline:0}body:before{block-size:var(--shell-reading-fade-block-start-size);background-image:linear-gradient(to bottom, var(--shell-reading-fade-top) 0%, transparent 100%);inset-block-start:0}body:after{block-size:var(--shell-reading-fade-block-end-size);background-image:linear-gradient(to top, var(--shell-reading-fade-bottom) 0%, transparent 100%);inset-block-end:0}h1,h2,h3,h4,h5,h6{color:var(--color-heading);font-family:var(--font-serif);font-weight:var(--font-weight-medium)}h1{margin-block:clamp(calc(var(--space-xl) + var(--space-lg)), 5vw, var(--space-4xl));font-size:clamp(2.375rem,1.9rem + 1.75vw,3.375rem);line-height:1.1}h2{margin-block:clamp(var(--space-3xl), 4vw, calc(var(--space-xl) + var(--space-lg)));font-size:clamp(1.75rem,1.5rem + .9vw,2.375rem);line-height:1.2}h3{margin-block:clamp(var(--space-2xl), 3vw, var(--space-3xl));font-size:clamp(1.5rem,1.38rem + .45vw,1.75rem);line-height:1.28}h4{margin-block:clamp(var(--space-xl), 2.5vw, var(--space-2xl));font-size:clamp(1.3125rem,1.24rem + .28vw,1.5rem);line-height:1.34}h5{margin-block:clamp(calc(var(--space-md) + var(--space-sm)), 2vw, var(--space-xl));font-size:clamp(1.25rem,1.18rem + .26vw,1.375rem);line-height:1.38}h6{margin-block:clamp(var(--space-lg), 1.8vw, calc(var(--space-md) + var(--space-sm)));font-size:clamp(1.125rem,1.08rem + .18vw,1.25rem);line-height:1.42}a{text-decoration:none}strong,b{color:var(--color-heading);font-weight:var(--font-weight-semibold)}time{font-size:var(--text-ui-size);line-height:var(--text-ui-leading)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:calc(var(--space-md) + var(--safe-area-inset-block-start));left:calc(var(--space-2xl) + var(--safe-area-inset-inline-start));z-index:1000;clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:fixed;overflow:hidden}.skip-link:focus-visible{clip-path:none;background:var(--color-background);block-size:auto;inline-size:auto;padding:var(--space-sm) var(--space-md);color:var(--color-text);overflow:visible}:is(#main-content,#post-comments){scroll-margin-top:calc(max(var(--space-xl), var(--article-space-related,var(--space-xl))) + var(--safe-area-inset-block-start))}:where(a,button,summary,[tabindex]:not([tabindex="-1"])):focus-visible{outline:var(--focus-outline-width) dashed var(--color-link-emphasis);outline-offset:var(--focus-outline-offset)}button{cursor:pointer}main{animation:page-enter var(--motion-transition-slow);line-height:var(--text-body-leading);flex:auto}@media (prefers-reduced-motion:reduce){main{animation:none}}}@layer utilities{.u-list-reset{margin:0;padding:0;list-style:none}.u-focus-ring-clearance{padding:calc(var(--focus-outline-width) + var(--focus-outline-offset))}.u-disclosure-section{margin-bottom:var(--spacing-cluster-compact)}.u-disclosure-panel{margin-top:var(--space-sm)}.u-empty-state-panel{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:60vh;display:flex}.u-disclosure-animated::details-content{contain:layout paint inline-size;opacity:0;block-size:0;transition:block-size var(--motion-transition-slow), content-visibility var(--motion-transition-slow), opacity var(--motion-transition-slow);transition-behavior:allow-discrete;overflow:clip}.u-disclosure-animated[open]::details-content{opacity:1;block-size:auto}.u-inline-separated{align-items:center;column-gap:var(--space-2xs);white-space:nowrap;display:inline-flex}.u-tag-link{white-space:nowrap;display:inline-flex}.u-decorative-text{color:var(--color-decorative-text)}@media (prefers-reduced-motion:reduce){.u-disclosure-animated::details-content{transition:none}}}@layer content{.markdown-body{--content-inline-code-size:.875em;--content-caption-gap:.875em}.markdown-body :where(p,ul,ol,blockquote),.markdown-body pre:not([class*=language-]){margin-top:var(--spacing-prose-block-start);margin-bottom:var(--spacing-prose-block-end)}.markdown-body :where(ul,ol){padding-inline-start:var(--spacing-prose-figure)}.markdown-body :where(li){margin-block:var(--spacing-stack-default)}.markdown-body :where(ol>li,ul>li){padding-inline-start:var(--spacing-stack-tight)}.markdown-body :where(ul ul,ul ol,ol ul,ol ol){margin-block:var(--spacing-prose-nested)}.markdown-body a:not(.heading-anchor){--interaction-text-color:var(--color-text)}.markdown-body :where(ol>li)::marker{color:var(--color-text)}.markdown-body :where(ul>li)::marker{color:color-mix(in oklab, var(--color-divider-color) 72%, transparent)}.markdown-body pre:not([class*=language-]){padding:var(--space-3xl)}.markdown-body :not(pre)>code:not([class*=language-]){border-radius:var(--radius-prism);background:var(--color-code-background);padding:var(--spacing-prism-inline);color:var(--color-code);font-family:var(--font-prism);font-size:var(--content-inline-code-size);font-weight:var(--font-weight-semibold)}.markdown-body a strong,.markdown-body :is(a,h1,h2,h3,h4,h5,h6)>code:not([class*=language-]){color:inherit}.markdown-body blockquote{border-left:var(--stroke-4) solid var(--color-divider-color);padding-left:var(--spacing-prose-inset);color:var(--color-blockquote)}.markdown-body hr{border:0;border-top:var(--divider-rule)}.markdown-body table{width:100%;margin-block:var(--spacing-prose-figure);line-height:var(--text-ui-leading)}.markdown-body :is(th,td){padding:var(--space-sm) var(--space-md);border-bottom:var(--stroke-1) solid var(--color-divider-color)}.markdown-body th{font-weight:var(--font-weight-semibold)}.markdown-body figure{margin-block:var(--spacing-prose-figure)}.markdown-body figcaption{margin:var(--content-caption-gap) 0 0;color:var(--color-text-soft);font-size:var(--text-caption-size);line-height:var(--text-caption-leading)}.markdown-body :is(h2,h3,h4,h5,h6)[id]{scroll-margin-top:calc(max(var(--space-xl), var(--article-space-related,var(--space-xl))) + var(--safe-area-inset-block-start))}.markdown-body .post-image-zoom{max-width:100%;display:inline-block}.markdown-body .post-image-zoom-trigger{display:block}.markdown-body .post-image-caption{margin-top:var(--space-md);color:var(--color-text-soft);text-align:center;font-size:var(--text-caption-size);font-weight:var(--font-weight-semibold);display:block}.markdown-body .post-image-row{align-items:stretch;gap:var(--spacing-stack-default);flex-wrap:nowrap;width:100%;display:flex}.markdown-body .post-image-row>.post-image-zoom{min-width:0;max-width:none}.markdown-body .post-image-zoom-toggle{pointer-events:none;appearance:none;opacity:0;border:0;width:1px;height:1px;margin:0;padding:0;position:fixed;inset-block-start:0;inset-inline-start:0}.markdown-body .post-image-zoom-toggle:focus-visible+.post-image-zoom-trigger{outline:var(--focus-outline-width) dashed var(--color-link-emphasis);outline-offset:var(--focus-outline-offset)}.markdown-body .post-image-zoom-thumb{cursor:zoom-in}.markdown-body .post-image-zoom-overlay,.markdown-body .post-image-zoom-full{opacity:0;transition:opacity var(--motion-transition-slow)}.markdown-body .post-image-zoom-overlay{z-index:50;background:var(--color-image-zoom-overlay);padding:var(--space-xl);pointer-events:none;cursor:zoom-out;touch-action:none;overscroll-behavior:contain;contain:paint;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.markdown-body .post-image-zoom-full{object-fit:contain;max-height:calc(100dvh - 2rem)}:is(html:has(.post-image-zoom-toggle:checked),body:has(.post-image-zoom-toggle:checked)){overflow:hidden}.markdown-body .post-image-zoom-toggle:checked~.post-image-zoom-overlay{pointer-events:auto;opacity:1}.markdown-body .post-image-zoom-toggle:checked~.post-image-zoom-overlay .post-image-zoom-full{opacity:1}@media (prefers-reduced-motion:reduce){.markdown-body .post-image-zoom-overlay,.markdown-body .post-image-zoom-full{transition:none}}}@layer prism{code[class*=language-],pre[class*=language-]{color:var(--color-code);font-family:var(--font-prism);font-size:var(--text-prism);line-height:var(--leading-prism);white-space:pre}pre[class*=language-]{margin-block:var(--space-md);border-radius:var(--radius-prism);padding:var(--spacing-prism-block);overflow:auto}:is(:not(pre)>code[class*=language-],pre[class*=language-]){background:var(--color-code-background)}:not(pre)>code[class*=language-]{border-radius:var(--radius-prism);padding:var(--spacing-prism-inline);white-space:normal}:is(.token.comment,.token.prolog,.token.doctype,.token.cdata){color:var(--color-prism-comment)}.token.punctuation{color:var(--color-prism-punctuation)}:is(.token.boolean,.token.number){color:var(--color-prism-number)}:is(.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted){color:var(--color-prism-string)}:is(.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string){color:var(--color-prism-operator)}:is(.token.atrule,.token.attr-value,.token.keyword){color:var(--color-prism-keyword)}:is(.token.property,.token.tag,.token.constant,.token.symbol,.token.deleted,.token.regex,.token.variable){color:var(--color-prism-regex)}.token.function{color:var(--color-prism-function)}:is(.token.important,.token.bold){font-weight:700}.token.italic{font-style:italic}}@layer interaction{.u-link-underline,.heading-anchor,.markdown-body a:not(.heading-anchor){--interaction-underline-color:var(--link-underline-color-muted);--interaction-emphasis-color:var(--color-link-emphasis);color:var(--interaction-text-color,inherit);text-decoration-line:underline;-webkit-text-decoration-color:var(--interaction-underline-color);text-decoration-color:var(--interaction-underline-color);text-decoration-thickness:var(--stroke-2);transition:color var(--motion-transition-fast), text-decoration-color var(--motion-transition-fast)}.u-link-underline:is(:hover,:focus-visible),.heading-anchor:is(:hover,:focus-visible),.markdown-body a:not(.heading-anchor):is(:hover,:focus-visible){color:var(--interaction-emphasis-color,var(--color-link-emphasis));-webkit-text-decoration-color:var(--interaction-emphasis-color,var(--color-link-emphasis));text-decoration-color:var(--interaction-emphasis-color,var(--color-link-emphasis))}.u-link-underline:focus-visible,.heading-anchor:focus-visible,.markdown-body a:not(.heading-anchor):focus-visible{outline:var(--focus-outline-width) dashed var(--color-link-emphasis);outline-offset:var(--focus-outline-offset)}}.site-nav[data-astro-cid-ml3euwzq],.section-nav[data-astro-cid-ml3euwzq]{align-items:flex-start;line-height:1.25;display:flex}.site-nav[data-astro-cid-ml3euwzq]{--site-nav-font-size:clamp(1.3125rem, 1.22rem + .38vw, 1.5625rem);justify-content:space-between;gap:var(--space-xl)}.site-title-link[data-astro-cid-ml3euwzq],.nav-link[data-astro-cid-ml3euwzq]{--interaction-text-color:var(--color-text);white-space:nowrap}.site-title-link[data-astro-cid-ml3euwzq]{font-size:var(--site-nav-font-size);flex:none}.site-title-link[data-astro-cid-ml3euwzq][aria-current=page],.nav-link[data-astro-cid-ml3euwzq][aria-current=page]{color:var(--interaction-emphasis-color,var(--color-link-emphasis));-webkit-text-decoration-color:var(--interaction-emphasis-color,var(--color-link-emphasis));-webkit-text-decoration-color:var(--interaction-emphasis-color,var(--color-link-emphasis));text-decoration-color:var(--interaction-emphasis-color,var(--color-link-emphasis))}.section-nav[data-astro-cid-ml3euwzq]{justify-content:flex-end;gap:var(--space-2xs);font-size:var(--site-nav-font-size);flex:none}@media (width<=40rem){.site-nav[data-astro-cid-ml3euwzq]{gap:var(--space-lg)}}
