:root{--max-bezier-to-full:cubic-bezier(.5,0,1,.5);--max-bezier-to-collapse:cubic-bezier(0,.5,.5,1)}@keyframes float-in{0%{opacity:0;transform:translateY(var(--float-distance,10%))}to{opacity:1;transform:translateY(0)}}.float-in-enter-active,.float-in-leave-active{transition:all var(--delay)!important}.float-in-enter-from,.float-in-leave-to{opacity:0;transform:translateY(var(--float-distance,10%))}.float-in-move{transition:transform var(--delay)!important}.collapse-enter-active,.collapse-leave-active{contain:paint;transition:max-height .1s}.collapse-enter-from,.collapse-leave-to{max-height:0;transition-timing-function:var(--max-bezier-to-collapse)}.collapse-enter-to,.collapse-leave-from{max-height:50vh;transition-timing-function:var(--max-bezier-to-full)}.article{margin:1rem;line-height:1.8}.article p{margin:.5em 0}.article>*,.article>p{margin:1rem 0}.article :target{border-radius:.2rem;animation:3s highlight}@keyframes highlight{50%{background-color:var(--c-primary-soft)}}.article>:where(h1,h2,h3,h4,h5,h6){font-family:var(--font-creative);color:var(--c-text);margin:1.6em 0 .8em;font-weight:550}.article :where(menu,ol,ul):not([class]){margin:.5em 0;padding-inline-start:1.5em;font-size:.9rem}.article :where(menu,ol,ul):not([class]),.article :where(menu,ol,ul):not([class]) ol ol ol{list-style:revert}.article :where(menu,ol,ul):not([class]) ol,.article :where(menu,ol,ul):not([class]) ol ol ol ol{list-style-type:lower-alpha}.article :where(menu,ol,ul):not([class]) ol ol,.article :where(menu,ol,ul):not([class]) ol ol ol ol ol{list-style-type:lower-roman}.article :where(menu,ol,ul):not([class]) ol,.article :where(menu,ol,ul):not([class]) ul{margin-top:0}.article :where(menu,ol,ul):not([class])>li{margin:.2em 0}.article :where(menu,ol,ul):not([class])>li::marker{color:var(--c-primary)}.article blockquote{border-inline-start:4px solid var(--c-border);background-color:var(--c-bg-2);border-radius:4px;padding:.2rem .8rem;font-size:.9rem}.article blockquote>.z-codeblock{margin:0 -.8rem}.article img{max-width:100%;height:auto}.article img.icon{vertical-align:middle;height:1.4em;transform:translateY(-.1em)}.article img.image,.article img:not([class]){border-radius:.5rem;margin:1rem auto;display:block}.article hr{border-top:.4em dashed var(--c-border);margin:3em 0}.article strong{background:linear-gradient(var(--c-primary-soft),var(--c-primary-soft)) no-repeat bottom/100% 30%}.article del{opacity:.5}.article.md-tech>h2>a:before{content:"#";color:#fff}.article.md-tech>:where(h2,h3,h4,h5,h6)>a:before{content:"";background-color:var(--c-primary);text-autospace:no-autospace;border-radius:.2rem;margin-inline-end:.5em;padding:0 2px}.article.md-story .title-like,.article.md-story h1,.article.md-story h2,.article.md-story h3,.article.md-story h4,.article.md-story h5,.article.md-story h6{font-family:var(--font-serif);text-align:center;text-wrap:balance;font-weight:bolder;position:relative}.article.md-story>h2:before{content:"";background-image:linear-gradient(var(--c-primary-soft),transparent);z-index:-1;border-radius:50%;width:2.5em;height:2.5em;margin:-.4em 0 0 -.7em;position:absolute}.article.md-story>h3:after{content:"";background-color:var(--c-primary-soft);width:.4em;height:.7em;position:absolute;bottom:0}.article.md-story :not([class])>p,.article.md-story>p{text-indent:2em}.article.md-story :not([class])>p>[class],.article.md-story>p>[class]{text-indent:0}.light,:root{--hue-theme:220deg;--c-text:hsl(var(--hue-theme) 0% 0%);--c-text-1:hsl(var(--hue-theme) 0% 20%);--c-text-2:hsl(var(--hue-theme) 0% 40%);--c-text-3:hsl(var(--hue-theme) 0% 70%);--c-bg:hsl(var(--hue-theme) 0% 100%);--c-bg-1:hsl(var(--hue-theme) 20% 98%);--c-bg-2:hsl(var(--hue-theme) 10% 95%);--c-bg-3:hsl(var(--hue-theme) 10% 92%);--c-bg-soft:hsl(var(--hue-theme) 20% 20%/10%);--c-border:hsl(var(--hue-theme) 10% 91%);--c-bg-a50:hsl(var(--hue-theme) 20% 98%/50%);--c-bg-a80:hsl(var(--hue-theme) 20% 98%/80%);--c-primary:hsl(var(--hue-theme) 100% 55%);--c-primary-soft:hsl(var(--hue-theme) 100% 60%/15%);--c-accent:#52e0e0;--ld-bg-blur:var(--c-bg-1);--ld-bg-card:var(--c-bg);--ld-bg-active:var(--c-bg);--ld-shadow:#29303d24;--surface-page:var(--c-bg-1);--surface-card:var(--c-bg);--surface-nested:var(--c-bg-2);--surface-nav:var(--c-bg);--c-success:#5a5;--c-success-soft:#3f32;--c-warning:#d85;--c-warning-soft:#f932;--c-error:#d55;--c-error-soft:#f332;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only}.dark{--c-text:hsl(var(--hue-theme) 0% 100%);--c-text-1:hsl(var(--hue-theme) 0% 90%);--c-text-2:hsl(var(--hue-theme) 0% 70%);--c-text-3:hsl(var(--hue-theme) 0% 50%);--c-bg:hsl(var(--hue-theme) 0% 7%);--c-bg-1:hsl(var(--hue-theme) 10% 10%);--c-bg-2:hsl(var(--hue-theme) 10% 14%);--c-bg-3:hsl(var(--hue-theme) 10% 18%);--c-bg-soft:hsl(var(--hue-theme) 100% 95%/15%);--c-border:hsl(var(--hue-theme) 10% 20%);--c-bg-a50:hsl(var(--hue-theme) 10% 10%/50%);--c-bg-a80:hsl(var(--hue-theme) 10% 10%/80%);--c-primary:hsl(var(--hue-theme) 100% 70%);--c-primary-soft:hsl(var(--hue-theme) 100% 60%/20%);--ld-bg-blur:var(--c-bg-a80);--ld-bg-card:var(--c-bg-2);--ld-bg-active:var(--c-primary-soft);--ld-shadow:#07070866;--c-accent:hsl(var(--hue-theme) 100% 70%);--surface-page:var(--c-bg);--surface-card:var(--c-bg-2);--surface-nested:var(--c-bg-3);--surface-nav:var(--c-bg-2);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--font-basic:"InterVariable","sans-serif","Noto Sans SC",sans-serif;--font-serif:"Noto Serif SC-Local","Noto Serif SC",serif;--font-creative:"DOUYINSANSBOLD-GB","InterVariable",sans-serif;--font-stroke-free:"DOUYINSANSBOLD-GB","Inter","Lantinghei SC","Microsoft YaHei",sans-serif;--font-monospace:"JetBrains Mono","monospace","Cascadia Code","Consolas","Monaco",var(--font-basic),monospace}@media (resolution<=1.2x){:root{--font-basic:"InterVariable",system-ui,sans-serif}}@supports ((-webkit-box-decoration-break:clone) or (box-decoration-break:clone)){@font-face{font-family:Noto Serif SC-Local;font-weight:100 900;src:local(Noto Serif SC)}}:root{--start:left;--end:right;--transform-start-far:translateX(-100%);--transform-end-far:translateX(100%);--delay:.2s;--z-index-popover:100;--text-shadow-black:0 .1em .1em #0003,0 .1em .2em #0003;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--radius:.75rem;--radius-sm:.5rem;--radius-full:999px;--fs-xs:.75rem;--fs-sm:.875rem;--fs-body:1.0625rem;--fs-h3:1.125rem;--fs-h2:1.25rem;--fs-h1:1.6rem;--lh-body:1.7;--lh-tight:1.25;--shadow-card:0 2px 8px -2px var(--ld-shadow);--shadow-float:0 8px 24px -4px var(--ld-shadow);--shadow-nav:0 2px 12px -4px var(--ld-shadow);--box-shadow-1:var(--shadow-card);--box-shadow-2:var(--shadow-card);--box-shadow-3:var(--shadow-float);overflow-wrap:break-word;background-color:var(--c-bg-1);font-family:sans-serif;font-family:var(--font-basic);font-synthesis:style;text-autospace:normal;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;color:var(--c-text-1);scroll-behavior:auto;scrollbar-color:var(--c-text-3) transparent;font-variant-alternates:styleset(open-digits,disambiguation,round-quotes-and-commas);-webkit-tap-highlight-color:var(--c-primary-soft);scroll-padding:2rem;line-height:1.4;transition:color .1s,background-color .2s}:root:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){--start:right;--end:left;--transform-start-far:translateX(100%);--transform-end-far:translateX(-100%)}@media (prefers-reduced-motion:reduce){:root{scroll-behavior:auto;transition:none}}*{border:none;margin:0;padding:0}*,:after,:before{box-sizing:border-box}::selection{background-color:var(--c-primary-soft)}a{color:currentColor;text-decoration:none}code,pre{font-family:var(--font-monospace);text-autospace:no-autospace}menu,ol,ul{list-style:none}mark{background-color:var(--c-primary-soft);color:var(--c-primary)}button{cursor:pointer}button>.iconify:only-child{display:block}button:disabled{cursor:auto}button,input,textarea{font:inherit;color:currentColor;background:0 0}:where(.iconify){vertical-align:sub;flex-shrink:0;font-size:1.2em;display:inline-block}.rtl-flip:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){transform:scaleX(-1)}.light .iconify[class*=i-catppuccin\:]{filter:invert(.7)hue-rotate(180deg)saturate(4)}.i-simple-icons\:mdnwebdocs{transform:scale(.8)}img{contain:paint;display:inline-block}img:before{all:initial;content:attr(alt);background-color:var(--c-border);font:700 1.5rem/1.2 var(--font-serif);text-align:center;color:var(--c-bg-soft);cursor:inherit;place-content:center;padding:.5em;display:grid;position:absolute;inset:0}.katex-display{scrollbar-width:thin;padding:1px 0;overflow:auto hidden}.bikariya-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0003;position:fixed;inset:0}.bikariya-overlay.v-enter-from,.bikariya-overlay.v-leave-to{opacity:0}.bikariya-overlay.v-enter-active,.bikariya-overlay.v-leave-active{transition:all var(--delay)}.tippy-box{box-shadow:var(--box-shadow-3);background-color:var(--ld-bg-card);color:var(--c-text-2);border-radius:.5em;padding:.3em .6em;font-size:.8rem;line-height:1.4;animation:.2s float-in}.tippy-box[data-state=hidden]{opacity:0}.tippy-box>.tippy-svg-arrow{fill:var(--ld-bg-card);pointer-events:none}.shiki>.line>span{font-style:var(--shiki-light-font-style)}.dark .shiki>.line>span{font-style:var(--shiki-dark-font-style);background-color:var(--shiki-dark-bg)!important;color:var(--shiki-dark)!important}.shiki>.line .indent{left:var(--indent-offset);display:inline-block;position:relative}.shiki>.line .indent:empty{height:1.4em;vertical-align:bottom;height:1lh}.shiki>.line .indent:before{content:"";opacity:.15;pointer-events:none;background-color:currentColor;border-inline-start:1px solid;height:100%;position:absolute}.shiki>.line>.space:before,.shiki>.line>.tab:before{opacity:.3;pointer-events:none;width:0;display:inline-block}.shiki>.line>.space+.space:before,.shiki>.line>.space:is(:first-child,:last-child):before{content:"·"}.shiki>.line>:not(.space)+.space:has(+.space):before{content:"·"}.shiki>.line>.tab:before{content:"⇥"}.card{contain:paint;border-radius:var(--radius);box-shadow:var(--box-shadow-1);background-color:var(--ld-bg-card);transition:all .2s;display:block}.card.upraise:hover{box-shadow:var(--box-shadow-3);transform:translateY(-2px)}.gradient-card{z-index:0;border-radius:.5rem;position:relative}.gradient-card:before{content:"";opacity:0;border-radius:inherit;background:linear-gradient(var(--c-bg-a80),var(--c-bg-a80)) padding-box,linear-gradient(45deg,var(--c-accent),var(--c-primary-soft)) border-box;z-index:-1;border:2px solid #0000;transition:opacity .2s;position:absolute;inset:0}.gradient-card.active,.gradient-card:focus,.gradient-card:hover{color:var(--c-text-1)}.gradient-card.active:before,.gradient-card:focus:before,.gradient-card:hover:before{opacity:1}.scrollbar-hidden.scrollbar-hidden{--scrollbar-height:0px;--guessed-scrollbar-width:0px;scrollbar-width:none}.scrollbar-hidden.scrollbar-hidden::-webkit-scrollbar{display:none}.scrollcheck-x,.scrollcheck-y{scrollbar-width:thin}.scrollcheck-x::-webkit-scrollbar{background-color:var(--c-bg-2);cursor:default;width:6px;height:6px}.scrollcheck-y::-webkit-scrollbar{background-color:var(--c-bg-2);cursor:default;width:6px;height:6px}.scrollcheck-x::-webkit-scrollbar-thumb{background-color:var(--c-bg-soft);cursor:pointer;border-radius:4px}.scrollcheck-y::-webkit-scrollbar-thumb{background-color:var(--c-bg-soft);cursor:pointer;border-radius:4px}.scrollcheck-x{--start-offset:0px;--scrollbar-height:8px;--fadeout-width:2em;animation:scrollcheck-x;animation-timeline:scroll(self x);overflow-x:auto}@keyframes scrollcheck-x{0%{-webkit-mask-image:linear-gradient(to var(--end),#fff calc(100% - var(--fadeout-width)),transparent),linear-gradient(to top,#fff var(--scrollbar-height),transparent var(--scrollbar-height));-webkit-mask-image:linear-gradient(to var(--end),#fff calc(100% - var(--fadeout-width)),transparent),linear-gradient(to top,#fff var(--scrollbar-height),transparent var(--scrollbar-height));mask-image:linear-gradient(to var(--end),#fff calc(100% - var(--fadeout-width)),transparent),linear-gradient(to top,#fff var(--scrollbar-height),transparent var(--scrollbar-height))}.01%,99.99%{-webkit-mask-image:linear-gradient(to var(--end),#fff var(--start-offset),transparent var(--start-offset),#fff calc(var(--start-offset) + var(--fadeout-width)),#fff calc(100% - var(--fadeout-width)),transparent),linear-gradient(to top,#fff var(--scrollbar-height),transparent var(--scrollbar-height));-webkit-mask-image:linear-gradient(to var(--end),#fff var(--start-offset),transparent var(--start-offset),#fff calc(var(--start-offset) + var(--fadeout-width)),#fff calc(100% - var(--fadeout-width)),transparent),linear-gradient(to top,#fff var(--scrollbar-height),transparent var(--scrollbar-height));mask-image:linear-gradient(to var(--end),#fff var(--start-offset),transparent var(--start-offset),#fff calc(var(--start-offset) + var(--fadeout-width)),#fff calc(100% - var(--fadeout-width)),transparent),linear-gradient(to top,#fff var(--scrollbar-height),transparent var(--scrollbar-height))}to{-webkit-mask-image:linear-gradient(to var(--end),#fff var(--start-offset),transparent var(--start-offset),#fff calc(var(--start-offset) + var(--fadeout-width))),linear-gradient(to top,#fff var(--scrollbar-height),transparent var(--scrollbar-height));-webkit-mask-image:linear-gradient(to var(--end),#fff var(--start-offset),transparent var(--start-offset),#fff calc(var(--start-offset) + var(--fadeout-width))),linear-gradient(to top,#fff var(--scrollbar-height),transparent var(--scrollbar-height));mask-image:linear-gradient(to var(--end),#fff var(--start-offset),transparent var(--start-offset),#fff calc(var(--start-offset) + var(--fadeout-width))),linear-gradient(to top,#fff var(--scrollbar-height),transparent var(--scrollbar-height))}}.scrollcheck-y{--top-offset:0px;--guessed-scrollbar-width:8px;--fadeout-height:2em;animation:scrollcheck-y;animation-timeline:scroll(self y);overflow-y:auto}@keyframes scrollcheck-y{0%{-webkit-mask-image:linear-gradient(to bottom,#fff calc(100% - var(--fadeout-height)),transparent),linear-gradient(to var(--start),#fff var(--guessed-scrollbar-width),transparent var(--guessed-scrollbar-width));-webkit-mask-image:linear-gradient(to bottom,#fff calc(100% - var(--fadeout-height)),transparent),linear-gradient(to var(--start),#fff var(--guessed-scrollbar-width),transparent var(--guessed-scrollbar-width));mask-image:linear-gradient(to bottom,#fff calc(100% - var(--fadeout-height)),transparent),linear-gradient(to var(--start),#fff var(--guessed-scrollbar-width),transparent var(--guessed-scrollbar-width))}.01%,99.99%{-webkit-mask-image:linear-gradient(to bottom,#fff var(--top-offset),transparent var(--top-offset),#fff calc(var(--top-offset) + var(--fadeout-height)),#fff calc(100% - var(--fadeout-height)),transparent),linear-gradient(to var(--start),#fff var(--guessed-scrollbar-width),transparent var(--guessed-scrollbar-width));-webkit-mask-image:linear-gradient(to bottom,#fff var(--top-offset),transparent var(--top-offset),#fff calc(var(--top-offset) + var(--fadeout-height)),#fff calc(100% - var(--fadeout-height)),transparent),linear-gradient(to var(--start),#fff var(--guessed-scrollbar-width),transparent var(--guessed-scrollbar-width));mask-image:linear-gradient(to bottom,#fff var(--top-offset),transparent var(--top-offset),#fff calc(var(--top-offset) + var(--fadeout-height)),#fff calc(100% - var(--fadeout-height)),transparent),linear-gradient(to var(--start),#fff var(--guessed-scrollbar-width),transparent var(--guessed-scrollbar-width))}to{-webkit-mask-image:linear-gradient(to bottom,#fff var(--top-offset),transparent var(--top-offset),#fff calc(var(--top-offset) + var(--fadeout-height))),linear-gradient(to var(--start),#fff var(--guessed-scrollbar-width),transparent var(--guessed-scrollbar-width));-webkit-mask-image:linear-gradient(to bottom,#fff var(--top-offset),transparent var(--top-offset),#fff calc(var(--top-offset) + var(--fadeout-height))),linear-gradient(to var(--start),#fff var(--guessed-scrollbar-width),transparent var(--guessed-scrollbar-width));mask-image:linear-gradient(to bottom,#fff var(--top-offset),transparent var(--top-offset),#fff calc(var(--top-offset) + var(--fadeout-height))),linear-gradient(to var(--start),#fff var(--guessed-scrollbar-width),transparent var(--guessed-scrollbar-width))}}@media (width>528px){.phone-only{display:none!important}}@media (width<=528px){.phone-hidden{display:none!important}}@media (width>768px){.mobile-only{display:none!important}}@media (width<=768px){.mobile-hidden{display:none!important}}@media (width>1080px){.widescreen-only{display:none!important}}@media (width<=1080px){.widescreen-hidden{display:none!important}}.proper-height{min-height:70vh}.round-cobblestone{corner-shape:superellipse(1.2)}.text-center{text-align:center}.text-creative,.text-tech{font-family:var(--font-creative);-webkit-font-smoothing:antialiased;font-weight:550}.text-story{font-family:var(--font-serif)}.text-repeat{text-shadow:.1em 0 var(--c-bg-soft),.2em 0 var(--c-bg-soft),.3em 0 var(--c-bg-soft),.4em 0 var(--c-bg-soft),.5em 0 var(--c-bg-soft)}.text-zoom{transform-origin:0 100%;display:inline-block}@supports (animation-timeline:view()){.text-zoom{animation:1s both zoom;animation-timeline:view()}}@keyframes zoom{0%{transform:scale(.8)}to{transform:scale(1.25)}}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent-horizontal],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}.tippy-box[data-placement^=top]>.tippy-svg-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-svg-arrow:after,.tippy-box[data-placement^=top]>.tippy-svg-arrow>svg{top:16px;transform:rotate(180deg)}.tippy-box[data-placement^=bottom]>.tippy-svg-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-svg-arrow>svg{bottom:16px}.tippy-box[data-placement^=left]>.tippy-svg-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-svg-arrow:after,.tippy-box[data-placement^=left]>.tippy-svg-arrow>svg{top:calc(50% - 3px);left:11px;transform:rotate(90deg)}.tippy-box[data-placement^=right]>.tippy-svg-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-svg-arrow:after,.tippy-box[data-placement^=right]>.tippy-svg-arrow>svg{top:calc(50% - 3px);right:11px;transform:rotate(-90deg)}.tippy-svg-arrow{fill:#333;width:16px;height:16px;text-align:initial}.tippy-svg-arrow,.tippy-svg-arrow>svg{position:absolute}.skip-link[data-v-bce074b1]{text-align:center;width:80%;z-index:calc(infinity);margin:1rem;padding:.5rem;position:fixed;top:-100%}.skip-link[data-v-bce074b1]:focus{top:auto}#blog-topbar[data-v-f38d5923]{justify-content:space-between;align-items:center;gap:var(--sp-2);height:calc(3.5rem + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--sp-4) 0;box-shadow:var(--shadow-nav);background-color:var(--c-bg-a80);-webkit-backdrop-filter:blur(.5rem);backdrop-filter:blur(.5rem);z-index:90;transition:transform .2s;display:flex;position:fixed;inset-block-start:0;inset-inline:0}#blog-topbar.hide[data-v-f38d5923]{transform:translateY(-100%)}.topbar-brand[data-v-f38d5923]{align-items:center;gap:var(--sp-2);min-width:0;min-height:2.75rem;color:var(--c-text);-webkit-user-select:none;user-select:none;display:inline-flex}.topbar-brand:hover .topbar-title[data-v-f38d5923]{color:var(--c-primary)}.topbar-avatar[data-v-f38d5923]{border-radius:var(--radius-full);width:2rem;height:2rem;box-shadow:var(--shadow-card);-o-object-fit:cover;object-fit:cover;flex-shrink:0}.topbar-title[data-v-f38d5923]{font-family:var(--font-creative);letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;font-size:1.15rem;font-weight:700;line-height:1;transition:color .2s;overflow:hidden}.topbar-actions[data-v-f38d5923]{gap:var(--sp-2)}.topbar-actions[data-v-f38d5923],.topbar-btn[data-v-f38d5923]{align-items:center;display:flex}.topbar-btn[data-v-f38d5923]{border-radius:var(--radius-sm);min-width:2.75rem;min-height:2.75rem;color:var(--c-text-2);justify-content:center;font-size:1.5rem;transition:background-color .2s,color .2s}.topbar-btn>.iconify[data-v-f38d5923]{transition:transform .2s}.topbar-btn[data-v-f38d5923]:hover{background-color:var(--c-bg-soft);color:var(--c-primary)}.topbar-btn:active>.iconify[data-v-f38d5923]{transform:scale(.85)}.topbar-btn.active[data-v-f38d5923]{background-color:var(--ld-bg-active);color:var(--c-primary)}@media (prefers-reduced-motion:reduce){#blog-topbar[data-v-f38d5923],.topbar-btn>.iconify[data-v-f38d5923]{transition:none}.topbar-btn:active>.iconify[data-v-f38d5923]{transform:none}}.bg-mask[data-v-e653dc26]{-webkit-backdrop-filter:var(--bdfilter);backdrop-filter:var(--bdfilter);z-index:var(--z-index-popover);background-color:#0003;position:fixed;inset:0}.v-enter-from[data-v-e653dc26],.v-leave-to[data-v-e653dc26]{opacity:0}.v-enter-active[data-v-e653dc26],.v-leave-active[data-v-e653dc26]{transition:all var(--delay)}.dl-group>div[data-v-048a14d5]{padding:.2em 0}.dl-group>div>dt[data-v-048a14d5]{color:var(--c-text-2);font-size:.9em}.dl-group.small[data-v-048a14d5]{text-align:center;flex-wrap:wrap;gap:.5em 1em;display:flex}.dl-group.small>div[data-v-048a14d5]{white-space:nowrap;flex:1}.dl-group.medium[data-v-048a14d5]{grid-template-columns:auto auto;gap:.4em 8%;padding:.2em 0;display:grid}.dl-group.medium>div[data-v-048a14d5]{display:contents}.dl-group.medium>div>dt[data-v-048a14d5]{font-size:inherit;text-align:end}.dl-group[data-v-56388c53] img{vertical-align:sub;height:1.2em}.theme-toggle[data-v-510d9a06]{border:1px solid var(--c-border);background-color:var(--c-bg-2);border-radius:1rem;gap:3px;width:fit-content;margin:0 auto;padding:2px;display:flex}.theme-toggle>button[data-v-510d9a06]{border-radius:1rem;padding:4px 1rem;transition:all .1s}.theme-toggle>button[data-v-510d9a06]:hover{background-color:var(--c-bg-soft);color:var(--c-text-1)}.theme-toggle>button.active[data-v-510d9a06]{box-shadow:var(--box-shadow-2);background-color:var(--ld-bg-card);color:var(--c-text-1);cursor:auto}menu[data-v-b08d7cdc]{justify-content:center;display:flex}menu a[data-v-b08d7cdc]{border-radius:2em;padding:.5em;transition:background-color .2s}menu a[data-v-b08d7cdc]:hover{background-color:var(--c-bg-soft)}menu a .iconify[data-v-b08d7cdc]{display:block}#blog-sidebar[data-v-c35fdb43]{color:var(--c-text-2);flex-direction:column;display:flex}#blog-sidebar[data-v-c35fdb43]:hover{color:currentColor}@media (width<=768px){#blog-sidebar[data-v-c35fdb43]{background-color:var(--ld-bg-blur);-webkit-backdrop-filter:blur(.5rem);backdrop-filter:blur(.5rem);color:currentColor;width:320px;max-width:100%;transform:var(--transform-start-far);z-index:var(--z-index-popover);transition:transform .2s;position:fixed;inset-inline-start:0}#blog-sidebar.show[data-v-c35fdb43]{box-shadow:var(--box-shadow-1),var(--box-shadow-3);transform:none}}.sidebar-nav[data-v-c35fdb43]{flex:auto;min-height:0;padding:0 5%;font-size:.9em}.sidebar-nav h3[data-v-c35fdb43]{font:inherit;color:var(--c-text-2);margin:2em 0 1em 1em}.sidebar-nav li[data-v-c35fdb43]{margin:.5em 0}.sidebar-widgets[data-v-c35fdb43]{border-top:1px solid var(--c-border);max-height:min(42vh,28rem);color:var(--c-text-2);flex:0 auto;margin:0 5%;padding:.75rem 0;font-size:.82em}.sidebar-widgets[data-v-c35fdb43] .blog-widget{opacity:1}.sidebar-widgets[data-v-c35fdb43] .widget-header{padding:.35rem .25rem;font-size:.92em}.sidebar-widgets[data-v-c35fdb43] .widget-body.widget-card{background-color:#0000;border-radius:0;padding:.35rem .25rem}.sidebar-widgets[data-v-c35fdb43] .blog-widget+.blog-widget{margin-top:.75rem}@media (width<=768px){.sidebar-widgets[data-v-c35fdb43]{max-height:none}}.sidebar-nav-item[data-v-c35fdb43]{border-radius:var(--radius-sm);align-items:center;gap:.5em;padding:.5em 1em;transition:all .2s;display:flex}.sidebar-nav-item.router-link-active[data-v-c35fdb43],.sidebar-nav-item[data-v-c35fdb43]:hover{background-color:var(--c-bg-soft);color:var(--c-text)}.sidebar-nav-item.router-link-active[data-v-c35fdb43]:after{content:"⦁";text-align:center;width:1em;color:var(--c-text-3)}.sidebar-nav-item>.iconify[data-v-c35fdb43]{font-size:1.5em}.sidebar-nav-item>.nav-text[data-v-c35fdb43]{white-space:nowrap;text-overflow:ellipsis;flex-grow:1;overflow:hidden}.sidebar-nav-item>.external-tip[data-v-c35fdb43]{opacity:.5;font-size:1em}.search-btn[data-v-c35fdb43]{opacity:.5;outline:2px solid var(--c-border);outline-offset:-2px;cursor:text;-webkit-user-select:none;user-select:none;margin:1rem 0}.search-btn[data-v-c35fdb43]:hover{opacity:1;background-color:#0000;outline-color:#0000}.sidebar-footer[data-v-c35fdb43]{--gap:clamp(.5rem,3vh,1rem);gap:var(--gap);padding:var(--gap);text-align:center;color:var(--c-text-2);font-size:.8em;display:grid}.float-in-leave-active[data-v-c35fdb43]{position:absolute}.blog-footer[data-v-e593ccfb]{margin:var(--sp-6) var(--sp-4);color:var(--c-text-2);font-size:.9em}.blog-footer .footer-nav[data-v-e593ccfb]{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:clamp(1rem,4vw,3rem);width:100%;padding-block:3rem;display:grid}.blog-footer .footer-nav hgroup[data-v-e593ccfb]{margin:.5em 0}.blog-footer .footer-nav a[data-v-e593ccfb]{border-radius:.5em;align-items:center;gap:.3em;width:fit-content;padding:.3em .5em;font-size:.9em;transition:background-color .2s,color .1s;display:flex}.blog-footer .footer-nav a[data-v-e593ccfb]:hover{background-color:var(--c-bg-soft);color:var(--c-text)}.blog-footer p[data-v-e593ccfb]{text-align:end;margin:.5em 0}@media (width<=768px){.blog-footer .footer-nav[data-v-e593ccfb]{grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));padding-block:2rem}.blog-footer p[data-v-e593ccfb]{text-align:start}}#blog-root{justify-content:center;gap:1rem;min-width:0;display:flex}#blog-sidebar{scrollbar-width:thin;flex:0 0 280px;min-width:0;height:100dvh;position:sticky;top:0}@media (width<=1080px){#blog-sidebar{flex-shrink:.2}}#content{width:1080px;min-width:0}@media (width<=768px){#content{padding-top:calc(3.5rem + env(safe-area-inset-top))}}#content>#main-content{flex-grow:1;min-width:0}.app-error[data-v-b8c93630]{margin:1rem}
