.reading-toc[data-astro-cid-qsrs2dwn]{min-width:0;font-family:var(--font-reading,system-ui);font-weight:400}.reading-toc--inline[data-astro-cid-qsrs2dwn]{display:none}.reading-toc--sidebar[data-astro-cid-qsrs2dwn]{flex-direction:column;max-height:max(12rem,100svh - 14rem);display:flex;position:sticky;top:2rem}.reading-toc-label[data-astro-cid-qsrs2dwn]{flex-shrink:0;justify-content:space-between;align-items:baseline;gap:.75rem;margin:0;padding:0 .65rem 1rem .9rem;line-height:1.5;display:flex}.reading-toc-title[data-astro-cid-qsrs2dwn]{color:var(--ink);letter-spacing:.06em;font-size:.8rem;font-weight:500}.reading-toc-count[data-astro-cid-qsrs2dwn]{color:var(--muted);white-space:nowrap;font-size:.7rem;font-weight:400}.reading-toc-progress[data-astro-cid-qsrs2dwn]{border-top:1px solid var(--line);color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;justify-content:space-between;gap:1rem;margin:.9rem 0 0;padding:.8rem .65rem 0 .9rem;font-size:.7rem;display:flex}.reading-toc[data-astro-cid-qsrs2dwn] nav[data-astro-cid-qsrs2dwn]{border-left:1px solid var(--line);align-content:start;gap:.15rem;min-height:0;display:grid}.reading-toc--sidebar[data-astro-cid-qsrs2dwn] nav[data-astro-cid-qsrs2dwn]{scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding-right:.3rem;overflow-y:auto}.reading-toc[data-astro-cid-qsrs2dwn] a[data-astro-cid-qsrs2dwn]{color:var(--muted);overflow-wrap:anywhere;border-left:2px solid #0000;margin-left:-1px;padding:.5rem .65rem .5rem .85rem;font-size:.8125rem;font-weight:400;line-height:1.65;text-decoration:none;display:block}.reading-toc[data-astro-cid-qsrs2dwn] a[data-astro-cid-qsrs2dwn][data-depth="3"]{padding-left:1.65rem;font-size:.75rem}.reading-toc[data-astro-cid-qsrs2dwn] a[data-astro-cid-qsrs2dwn]:hover{color:var(--ink)}.reading-toc[data-astro-cid-qsrs2dwn] a[data-astro-cid-qsrs2dwn][aria-current=location]{border-left-color:var(--accent);background:color-mix(in srgb, var(--accent) 5%, transparent);color:var(--accent)}.reading-toc[data-astro-cid-qsrs2dwn] a[data-astro-cid-qsrs2dwn]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (width<=960px){.reading-toc--sidebar[data-astro-cid-qsrs2dwn]{display:none}.reading-toc--inline[data-astro-cid-qsrs2dwn]{border-block:1px solid var(--line);margin-top:1.75rem;display:block}.reading-toc-disclosure[data-astro-cid-qsrs2dwn] summary[data-astro-cid-qsrs2dwn]{cursor:pointer;align-items:center;gap:.75rem;min-height:3.25rem;padding:.3rem .1rem;line-height:1.5;list-style:none;display:flex}.reading-toc-disclosure[data-astro-cid-qsrs2dwn] summary[data-astro-cid-qsrs2dwn]::-webkit-details-marker{display:none}.reading-toc-disclosure[data-astro-cid-qsrs2dwn] summary[data-astro-cid-qsrs2dwn]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.reading-toc-count[data-astro-cid-qsrs2dwn]{margin-left:auto}.reading-toc-chevron[data-astro-cid-qsrs2dwn]{color:var(--muted);flex-shrink:0}.reading-toc-disclosure[data-astro-cid-qsrs2dwn][open] .reading-toc-chevron[data-astro-cid-qsrs2dwn]{transform:rotate(90deg)}.reading-toc-disclosure[data-astro-cid-qsrs2dwn][open] summary[data-astro-cid-qsrs2dwn]{border-bottom:1px solid var(--line)}.reading-toc[data-astro-cid-qsrs2dwn] nav[data-astro-cid-qsrs2dwn]{scrollbar-width:thin;scrollbar-color:var(--line) transparent;gap:0;max-height:min(26rem,60svh);margin-block:.8rem;overflow-y:auto}.reading-toc[data-astro-cid-qsrs2dwn] a[data-astro-cid-qsrs2dwn]{padding-block:.7rem;font-size:.85rem}.reading-toc[data-astro-cid-qsrs2dwn] a[data-astro-cid-qsrs2dwn][data-depth="3"]{font-size:.8125rem}}.reading-progress[data-astro-cid-bt4dktj7]{--reading-progress:0;z-index:20;width:100%;height:2px;transform:scaleX(var(--reading-progress));transform-origin:0;background:linear-gradient(90deg, transparent, var(--accent));box-shadow:0 0 12px color-mix(in srgb, var(--accent) 48%, transparent);pointer-events:none;position:fixed;top:0;left:0}.reading-layout{--font-reading:var(--font-sans);--reading-ink:#cdd3dd;--reading-code-bg:#0f141c;--reading-note-bg:#0d131b;font-family:var(--font-reading);grid-template-columns:minmax(0,43rem) minmax(12rem,14.5rem);gap:clamp(2rem,4vw,3.5rem);padding-block:2rem 5rem;font-weight:400}:root[data-theme=day] .reading-layout{--reading-ink:#35404c;--reading-code-bg:#f6f8fa;--reading-note-bg:#f5f8fb}.reading-layout .reading-main{min-width:0}.reading-layout .reading-back{font-family:var(--font-reading);gap:.4rem;font-size:.8rem}.reading-layout .reading-back:hover{color:var(--accent)}.reading-layout .reading-header{margin-top:1.8rem;padding-bottom:2rem}.reading-layout .reading-header .reading-kicker{color:var(--accent);letter-spacing:.08em;align-items:center;gap:.65rem;margin:0;font-size:.73rem;font-weight:500;line-height:1.5;display:flex}.reading-layout .reading-kicker span{color:var(--muted);opacity:.55}.reading-layout .reading-header h1{font-family:var(--font-reading);letter-spacing:0;overflow-wrap:anywhere;text-wrap:pretty;margin:.85rem 0 0;font-size:clamp(1.7rem,2.8vw,2.15rem);font-weight:600;line-height:1.45}.reading-layout .reading-header .reading-description{max-width:38rem;color:var(--muted);margin-top:1rem;font-size:.95rem;font-weight:400;line-height:1.85}.reading-layout .reading-meta{color:var(--muted);font-family:var(--font-reading);font-variant-numeric:tabular-nums;gap:.45rem .6rem;margin-top:1.35rem;font-size:.75rem;line-height:1.85}.reading-layout .reading-author{color:var(--ink);font-weight:600}.reading-layout .reading-author:hover{color:var(--accent)}.reading-layout .reading-meta>[aria-hidden]{opacity:.5}.reading-layout .reading-tags{gap:.5rem;margin-top:1.1rem}.reading-layout .reading-tags a{font-family:var(--font-reading);background:0 0;border-radius:.4rem;padding:.3rem .6rem;font-size:.72rem}.reading-layout .reading-tags a:hover{background:var(--surface)}.reading-layout .article-panel{margin-top:2.25rem}.reading-layout .article-content{color:var(--reading-ink);font-family:var(--font-reading);font-size:var(--text-body);font-weight:400;line-height:var(--leading-reading);letter-spacing:0;line-break:strict;overflow-wrap:anywhere}.reading-layout .article-content :is(h1,h2,h3,h4,h5,h6){color:var(--ink);font-family:var(--font-reading);letter-spacing:0;text-wrap:pretty;scroll-margin-top:2rem;font-weight:600;line-height:1.6}.reading-layout .article-content h1{margin:2.5rem 0 1.25rem;font-size:1.35rem}.reading-layout .article-content h2{border-top:1px solid var(--line);margin:3.5rem 0 1.3rem;padding-top:1.5rem;font-size:1.32rem}.reading-layout .article-content h3{margin:2.5rem 0 1rem;font-size:1.13rem}.reading-layout .article-content :is(h4,h5,h6){margin:2rem 0 .85rem;font-size:1rem}.reading-layout .article-content>:first-child{margin-top:0}.reading-layout .article-content>h2:first-child{border-top:0;padding-top:0}.reading-layout .article-content :is(h2,h3,h4)+:is(h3,h4){margin-top:1.4rem}.reading-layout .article-content p{margin-block:1.25rem}.reading-layout .article-content strong{color:var(--ink);font-weight:600}.reading-layout .article-content a{color:var(--accent);text-decoration-color:color-mix(in srgb, var(--accent) 35%, transparent);text-underline-offset:.2em;text-decoration-skip-ink:auto}.reading-layout .article-content a:hover{text-decoration-color:currentColor}.reading-layout .article-content :is(ul,ol){margin-block:1.2rem;padding-left:1.55em}.reading-layout .article-content li{margin-block:.65rem;padding-left:.2em}.reading-layout .article-content li::marker{color:var(--accent);font-weight:500}.reading-layout .article-content li :is(ul,ol){margin-block:.5rem}.reading-layout .article-content li>p{margin-block:.65rem}.reading-layout .article-content blockquote{border-left:3px solid color-mix(in srgb, var(--accent) 65%, transparent);background:var(--reading-note-bg);color:var(--reading-ink);border-radius:0 .65rem .65rem 0;margin-block:1.75rem;padding:1rem 1.25rem;font-size:.96em}.reading-layout .article-content blockquote>:first-child{margin-top:0}.reading-layout .article-content blockquote>:last-child{margin-bottom:0}.reading-layout .article-content hr{margin-block:2.75rem}.reading-layout .article-content img{border:1px solid var(--line);border-radius:.75rem;margin:1.75rem auto;display:block}.reading-layout .article-content code:not(pre code){border:1px solid color-mix(in srgb, var(--line) 70%, transparent);background:var(--surface);color:var(--ink);letter-spacing:0;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:.3rem;padding:.1em .35em;font-size:.85em}.reading-layout .article-content table{border:1px solid var(--line);border-spacing:0;letter-spacing:0;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;border-radius:.65rem;width:100%;max-width:100%;margin-block:1.75rem;font-size:.875rem;line-height:1.8;display:block;overflow-x:auto}.reading-layout .article-content :is(th,td){vertical-align:top;min-width:7rem;padding:.8rem 1rem}.reading-layout .article-content th{color:var(--ink);background:var(--reading-note-bg);white-space:nowrap;font-weight:600}.reading-layout .article-content td{color:var(--reading-ink)}.reading-layout .article-content tbody tr:nth-child(2n){background:color-mix(in srgb, var(--surface) 50%, transparent)}.reading-layout .article-content tbody tr:last-child td{border-bottom:0}.reading-layout .article-content pre{border:1px solid var(--line);letter-spacing:0;tab-size:2;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;border-radius:.75rem;max-width:100%;margin-block:1.75rem;padding:1.25rem;font-size:.82rem;line-height:1.8;overflow-x:auto;background:var(--reading-code-bg)!important;color:var(--shiki-dark,#d3dce9)!important}.reading-layout .article-content pre span{color:var(--shiki-dark,inherit)!important}:root[data-theme=day] .reading-layout .article-content pre,:root[data-theme=day] .reading-layout .article-content pre span{color:var(--shiki-light,#35404c)!important}.reading-layout .article-content pre code{font:inherit}.reading-layout .article-content pre[data-wrap=true],.reading-layout .article-content pre[data-wrap=true] code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal}.reading-layout .reading-code-frame{border:1px solid var(--line);background:var(--reading-code-bg);border-radius:.75rem;min-width:0;margin-block:1.75rem;overflow:hidden}.reading-layout .reading-code-toolbar{border-bottom:1px solid var(--line);min-height:2.75rem;color:var(--muted);font:.69rem/1.4 var(--font-mono);letter-spacing:.04em;justify-content:space-between;align-items:center;gap:1rem;padding-inline:1rem .35rem;display:flex}.reading-layout .article-content .reading-code-frame pre{border:0;border-radius:0;margin:0;padding:1.15rem 1.25rem 1.35rem}.reading-layout .reading-code-toolbar [data-code-language]{margin-right:auto}.reading-layout .article-content :is(.copy-code,.wrap-code){min-width:2.75rem;min-height:2.75rem;color:var(--muted);font-family:var(--font-reading);letter-spacing:0;background:0 0;border:1px solid #0000;border-radius:.4rem;padding:.4rem .7rem;font-size:.73rem;position:static}.reading-layout .article-content :is(.copy-code,.wrap-code):hover,.reading-layout .article-content .wrap-code[aria-pressed=true]{background:var(--surface);color:var(--ink)}.reading-layout .reading-code-toolbar{gap:.25rem}.reading-layout .article-content pre:focus-visible{outline-offset:-3px}.reading-layout [data-reader-community]{min-height:1px}.reading-layout .reading-image-trigger{cursor:zoom-in;background:0 0;border:0;border-radius:.75rem;width:100%;margin:1.75rem auto;padding:0;display:block}.reading-layout .article-content .reading-image-trigger img{max-width:100%;height:auto;margin:0 auto}.reading-layout .reading-image-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.reading-resume{z-index:35;left:max(1rem, env(safe-area-inset-left));bottom:max(1rem, env(safe-area-inset-bottom));border:1px solid var(--line);background:var(--canvas);width:min(21rem,100vw - 2rem);color:var(--ink);font:.82rem/1.6 var(--font-sans);border-radius:.8rem;padding:1rem;position:fixed;box-shadow:0 8px 36px #0000001f}.reading-resume p{margin:0}.reading-resume small{color:var(--muted);margin-top:.15rem;font-size:.72rem;display:block}.reading-resume>div{gap:.5rem;margin-top:.7rem;display:flex}.reading-resume button,.reading-lightbox button{border:1px solid var(--line);background:var(--surface);min-height:2.75rem;color:var(--ink);font:inherit;cursor:pointer;border-radius:.45rem;padding:.45rem .7rem}.reading-resume button:hover,.reading-lightbox button:hover{border-color:var(--accent)}.reading-resume button:focus-visible,.reading-lightbox :is(button,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:3px}.reading-lightbox{box-sizing:border-box;border:1px solid var(--line);background:var(--canvas);width:min(96rem,100vw - 2rem);max-width:none;height:min(56rem,100dvh - 2rem);max-height:none;color:var(--ink);font:.8rem/1.5 var(--font-sans);overscroll-behavior:contain;border-radius:.9rem;margin:auto;padding:.85rem}.reading-lightbox[open]{grid-template-rows:auto minmax(0,1fr) auto;gap:.8rem;display:grid}.reading-lightbox::backdrop{background:#04080ed1}.reading-lightbox-toolbar{align-items:center;gap:.5rem;display:flex}.reading-lightbox-toolbar>span{margin-right:auto}.reading-lightbox-stage{overscroll-behavior:contain;place-items:center;min-height:0;display:grid;overflow:auto}.reading-lightbox-stage img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.reading-lightbox[data-zoomed=true] .reading-lightbox-stage{display:block}.reading-lightbox[data-zoomed=true] img{max-width:none;max-height:none;margin:auto}.reading-lightbox [data-image-caption]{max-height:3rem;color:var(--muted);text-align:center;margin:0;overflow:auto}html:has(.reading-lightbox[open]){overflow:hidden}.reading-layout .post-neighbors{border-top:1px solid var(--line);margin-top:3.5rem;padding-top:1.5rem}.reading-layout .post-neighbors a,.reading-layout .related-posts a{border-color:var(--line);box-shadow:none;background:0 0;border-radius:.7rem}.reading-layout .post-neighbors a:hover,.reading-layout .related-posts a:hover{background:var(--surface)}.reading-layout .post-neighbors strong,.reading-layout .related-posts strong{font-size:.9rem;font-weight:500}.reading-layout :is(.reader-community,.comments){border-top:1px solid var(--line);margin-top:3rem;padding-top:1.75rem}.reading-layout :is(.reader-community,.comments) h2{font:600 1.15rem/1.6 var(--font-reading)}.reading-layout .reader-community .ws-panel{border-color:var(--line);box-shadow:none;background:0 0;border-radius:.7rem}@media (width<=960px){.reading-layout{grid-template-columns:minmax(0,1fr);max-width:43rem;margin-inline:auto}}@media (width<=560px){.reading-resume{bottom:max(5rem, calc(env(safe-area-inset-bottom) + 4rem))}.reading-lightbox{width:calc(100vw - 1rem);height:calc(100dvh - 1rem);padding:.6rem}.reading-layout{padding-block:1.15rem 3.5rem}.reading-layout .reading-header{margin-top:1.2rem;padding-bottom:1.5rem}.reading-layout .reading-header h1{font-size:1.65rem;line-height:1.5}.reading-layout .reading-header .reading-description{font-size:.9rem}.reading-layout .reading-meta{gap:.3rem .45rem;font-size:.72rem}.reading-layout .article-panel{margin-top:1.75rem}.reading-layout .article-content{font-size:var(--text-body);line-height:var(--leading-reading);letter-spacing:0}.reading-layout .article-content h1{font-size:1.22rem}.reading-layout .article-content h2{margin-top:2.75rem;padding-top:1.25rem;font-size:1.18rem}.reading-layout .article-content h3{font-size:1.06rem}.reading-layout .article-content :is(th,td){padding:.65rem .8rem}.reading-layout .article-content pre{padding:1rem;font-size:.78rem}.reading-layout .article-content .reading-code-frame pre{padding:1rem}.reading-layout .article-content blockquote{padding:.85rem 1rem}}
