.giscus-container[data-astro-cid-an2nl7ar]{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line)}.giscus-header[data-astro-cid-an2nl7ar]{margin-bottom:1.5rem}.giscus-header[data-astro-cid-an2nl7ar] h3[data-astro-cid-an2nl7ar]{margin:0;font-size:14px;font-weight:600;color:var(--ink);letter-spacing:-.01em}.giscus-frame[data-astro-cid-an2nl7ar]{border-radius:var(--radius);overflow:hidden}[data-astro-cid-an2nl7ar][data-theme=dark] .giscus-frame[data-astro-cid-an2nl7ar]{filter:brightness(.9)}@media (max-width: 640px){.giscus-container[data-astro-cid-an2nl7ar]{margin-top:2rem;padding-top:1.5rem}}.article-lightbox[data-astro-cid-d3w34z2r]{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;padding:64px 24px 24px;background:transparent;color:#fff}.article-lightbox[data-astro-cid-d3w34z2r][open]{display:grid;place-items:center}.article-lightbox[data-astro-cid-d3w34z2r]::backdrop{background:#0a0a0ceb}.article-lightbox[data-astro-cid-d3w34z2r] figure[data-astro-cid-d3w34z2r]{margin:0;max-width:100%;pointer-events:none}.lightbox-image[data-astro-cid-d3w34z2r]{display:block;max-width:100%;max-height:calc(100dvh - 150px);margin:auto;-o-object-fit:contain;object-fit:contain;pointer-events:auto}.article-lightbox[data-astro-cid-d3w34z2r] figcaption[data-astro-cid-d3w34z2r]{text-align:center;margin-top:16px;max-width:90vw;max-height:48px;overflow:auto;font-size:14px;pointer-events:auto}.lightbox-close[data-astro-cid-d3w34z2r],.lightbox-zoom[data-astro-cid-d3w34z2r]{position:fixed;right:max(16px,env(safe-area-inset-right));top:max(12px,env(safe-area-inset-top));width:44px;height:44px;border:0;background:transparent;color:#fff;cursor:pointer;font-size:32px;line-height:1}.lightbox-close[data-astro-cid-d3w34z2r]:hover,.lightbox-zoom[data-astro-cid-d3w34z2r]:hover{color:var(--accent)}.lightbox-zoom[data-astro-cid-d3w34z2r]{right:calc(max(16px,env(safe-area-inset-right)) + 52px)}.article-lightbox[data-astro-cid-d3w34z2r].is-zoomed{display:block;overflow:auto}.article-lightbox[data-astro-cid-d3w34z2r].is-zoomed figure[data-astro-cid-d3w34z2r]{width:-moz-max-content;width:max-content;max-width:none;margin:auto}.article-lightbox[data-astro-cid-d3w34z2r].is-zoomed .lightbox-image[data-astro-cid-d3w34z2r]{max-width:none;max-height:none}.article-lightbox[data-astro-cid-d3w34z2r].is-zoomed figcaption[data-astro-cid-d3w34z2r]{position:sticky;left:0}.lightbox-image[data-astro-cid-d3w34z2r]{cursor:zoom-in}.is-zoomed[data-astro-cid-d3w34z2r] .lightbox-image[data-astro-cid-d3w34z2r]{cursor:zoom-out}@media (max-width: 640px){.article-lightbox[data-astro-cid-d3w34z2r]{padding:64px 12px 20px}}.reading-progress[data-astro-cid-mu6cnre2]{position:fixed;top:0;left:0;right:0;height:2px;z-index:1001;pointer-events:none}.reading-progress[data-astro-cid-mu6cnre2] span[data-astro-cid-mu6cnre2]{display:block;width:100%;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left center;transition:transform .08s linear}.related-posts[data-astro-cid-dpgbfi7r]{margin-top:64px;padding-top:48px;border-top:1px solid var(--line-strong)}.section-title[data-astro-cid-dpgbfi7r]{font-size:18px;font-weight:600;margin:0 0 24px;color:var(--ink);font-family:var(--sans)}.posts-grid[data-astro-cid-dpgbfi7r]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.post-card[data-astro-cid-dpgbfi7r]{padding:20px;background:var(--panel);border:1px solid var(--line);border-radius:12px;transition:all .2s cubic-bezier(.4,0,.2,1)}.post-card[data-astro-cid-dpgbfi7r]:hover{border-color:var(--ink-2);transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.post-title[data-astro-cid-dpgbfi7r]{font-size:16px;font-weight:600;margin:0 0 8px;line-height:1.4}.post-title[data-astro-cid-dpgbfi7r] a[data-astro-cid-dpgbfi7r]{color:var(--ink);text-decoration:none;transition:color .15s}.post-title[data-astro-cid-dpgbfi7r] a[data-astro-cid-dpgbfi7r]:hover{color:var(--ink-2)}.post-description[data-astro-cid-dpgbfi7r]{font-size:14px;color:var(--muted);margin:0 0 12px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.post-meta[data-astro-cid-dpgbfi7r]{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted);font-family:var(--mono)}.post-tags[data-astro-cid-dpgbfi7r]{display:flex;gap:6px;flex-wrap:wrap}.tag[data-astro-cid-dpgbfi7r]{padding:2px 8px;background:var(--bg);border:1px solid var(--line);border-radius:4px;font-size:11px;color:var(--muted)}@media (max-width: 768px){.posts-grid[data-astro-cid-dpgbfi7r]{grid-template-columns:1fr}}.share-box[data-astro-cid-ung7bpju]{padding:24px 0 12px;border-top:1px solid var(--line)}.share-head[data-astro-cid-ung7bpju]{margin-bottom:12px;font-family:var(--mono)}.share-head[data-astro-cid-ung7bpju] h2[data-astro-cid-ung7bpju]{margin:0;font-size:12px;font-weight:500;color:var(--muted);letter-spacing:.04em}.share-head[data-astro-cid-ung7bpju] h2[data-astro-cid-ung7bpju]:before{content:"// ";color:var(--muted-2)}.share-actions[data-astro-cid-ung7bpju]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.share-actions[data-astro-cid-ung7bpju] a[data-astro-cid-ung7bpju],.share-actions[data-astro-cid-ung7bpju] button[data-astro-cid-ung7bpju],.qr-share[data-astro-cid-ung7bpju] summary[data-astro-cid-ung7bpju]{min-height:30px;border:1px solid var(--line);border-radius:var(--radius);background:transparent;color:var(--muted);display:inline-flex;align-items:center;gap:7px;padding:0 10px;font:11.5px/1 var(--mono);text-decoration:none;cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.share-actions[data-astro-cid-ung7bpju] a[data-astro-cid-ung7bpju]:hover,.share-actions[data-astro-cid-ung7bpju] button[data-astro-cid-ung7bpju]:hover,.qr-share[data-astro-cid-ung7bpju] summary[data-astro-cid-ung7bpju]:hover{color:var(--ink);border-color:var(--line-strong);background:var(--panel)}.share-actions[data-astro-cid-ung7bpju] svg[data-astro-cid-ung7bpju]{width:14px;height:14px}.copy-share[data-astro-cid-ung7bpju].copied span[data-astro-cid-ung7bpju]{color:var(--accent)}.qr-share[data-astro-cid-ung7bpju]{position:relative}.qr-share[data-astro-cid-ung7bpju] summary[data-astro-cid-ung7bpju]{list-style:none}.qr-share[data-astro-cid-ung7bpju] summary[data-astro-cid-ung7bpju]::-webkit-details-marker{display:none}.qr-popover[data-astro-cid-ung7bpju]{position:absolute;left:50%;top:calc(100% + 8px);z-index:20;width:184px;min-height:184px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;padding:11px;box-shadow:0 12px 36px #0000001f;transform:translate(-50%)}.qr-popover[data-astro-cid-ung7bpju] img[data-astro-cid-ung7bpju]{display:block;width:160px;height:160px}.updated-date[data-astro-cid-4sn4zg3r]{color:var(--muted);font-size:12px}.toc-nested[data-astro-cid-4sn4zg3r]{padding-left:12px}.mobile-toc[data-astro-cid-4sn4zg3r]{display:none}.series-nav[data-astro-cid-4sn4zg3r]{padding:16px;border:1px solid var(--line);border-radius:8px;margin:20px 0;font-size:14px}.series-nav[data-astro-cid-4sn4zg3r] h2[data-astro-cid-4sn4zg3r]{font-size:14px;margin-bottom:8px}.series-nav[data-astro-cid-4sn4zg3r] ol[data-astro-cid-4sn4zg3r]{padding-left:20px}.series-nav[data-astro-cid-4sn4zg3r] a[data-astro-cid-4sn4zg3r][aria-current=page]{color:var(--accent);font-weight:600}@media (max-width: 1559px){.mobile-toc[data-astro-cid-4sn4zg3r]{display:block;border-block:1px solid var(--line);padding:12px 0;margin-top:20px}.mobile-toc[data-astro-cid-4sn4zg3r] summary[data-astro-cid-4sn4zg3r]{cursor:pointer;font-size:14px}.mobile-toc[data-astro-cid-4sn4zg3r] ul[data-astro-cid-4sn4zg3r]{list-style:none;max-height:45vh;overflow:auto;padding:8px 0}.mobile-toc[data-astro-cid-4sn4zg3r] .toc-link[data-astro-cid-4sn4zg3r]:before{display:none}}.article-toc[data-astro-cid-4sn4zg3r]{position:fixed;left:0;top:50%;transform:translateY(-50%);width:200px;padding:8px 0 8px 28px;overflow-y:auto;max-height:calc(100vh - 144px);font-family:var(--mono);font-size:11.5px;color:var(--muted);z-index:10}.toc-head[data-astro-cid-4sn4zg3r]{display:flex;align-items:center;justify-content:flex-start;font-size:11px;color:var(--muted);letter-spacing:.04em;margin-bottom:16px;white-space:nowrap;padding-left:0}.toc-label[data-astro-cid-4sn4zg3r]{color:var(--muted)}.toc-rail[data-astro-cid-4sn4zg3r]{position:relative;padding-left:18px}.toc-rail[data-astro-cid-4sn4zg3r]:before{content:"";position:absolute;left:4px;top:4px;bottom:4px;width:1px;background:var(--line)}.toc-list[data-astro-cid-4sn4zg3r]{list-style:none;padding:0;margin:0}.toc-link[data-astro-cid-4sn4zg3r]{display:block;text-decoration:none;color:var(--muted);padding:5px 0;position:relative;transition:color .12s;line-height:1.45}.toc-link[data-astro-cid-4sn4zg3r]:before{content:"";position:absolute;left:-18px;top:12px;width:5px;height:5px;border-radius:50%;background:var(--muted-2);transition:background .15s,transform .15s}.toc-link[data-astro-cid-4sn4zg3r]:hover{color:var(--ink)}.toc-link[data-astro-cid-4sn4zg3r]:hover:before{background:var(--accent);transform:scale(1.4)}.toc-link[data-astro-cid-4sn4zg3r].active{color:var(--ink)}.toc-link[data-astro-cid-4sn4zg3r].active:before{background:var(--accent)}.toc-t[data-astro-cid-4sn4zg3r]{font-size:11.5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.article-content[data-astro-cid-4sn4zg3r]{width:100%;min-width:0;margin:0 auto;padding:0}@media (max-width: 1559px){.article-toc[data-astro-cid-4sn4zg3r]{display:none}}.markdown-body[data-astro-cid-4sn4zg3r]{font-size:1.0625rem;line-height:1.75;color:var(--ink)}.markdown-body[data-astro-cid-4sn4zg3r] h1[data-astro-cid-4sn4zg3r],.markdown-body[data-astro-cid-4sn4zg3r] h2[data-astro-cid-4sn4zg3r],.markdown-body[data-astro-cid-4sn4zg3r] h3[data-astro-cid-4sn4zg3r],.markdown-body[data-astro-cid-4sn4zg3r] h4[data-astro-cid-4sn4zg3r],.markdown-body[data-astro-cid-4sn4zg3r] h5[data-astro-cid-4sn4zg3r],.markdown-body[data-astro-cid-4sn4zg3r] h6[data-astro-cid-4sn4zg3r]{margin-top:2rem;margin-bottom:1rem;font-weight:600;line-height:1.3}.markdown-body[data-astro-cid-4sn4zg3r] h2[data-astro-cid-4sn4zg3r]{font-size:22px;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.markdown-body[data-astro-cid-4sn4zg3r] h3[data-astro-cid-4sn4zg3r]{font-size:1.5rem}.markdown-body[data-astro-cid-4sn4zg3r] h4[data-astro-cid-4sn4zg3r]{font-size:1.25rem}.markdown-body[data-astro-cid-4sn4zg3r] p[data-astro-cid-4sn4zg3r]{margin-bottom:1.5rem}.markdown-body[data-astro-cid-4sn4zg3r] code[data-astro-cid-4sn4zg3r]{font-family:JetBrains Mono,monospace;font-size:.875em;background:var(--surface);padding:.2em .4em;border-radius:4px}.markdown-body[data-astro-cid-4sn4zg3r] pre[data-astro-cid-4sn4zg3r]{margin-bottom:1.5rem;padding:1rem;background:var(--surface);border-radius:8px;overflow-x:auto}.markdown-body[data-astro-cid-4sn4zg3r] pre[data-astro-cid-4sn4zg3r] code[data-astro-cid-4sn4zg3r]{background:none;padding:0}.markdown-body[data-astro-cid-4sn4zg3r] a[data-astro-cid-4sn4zg3r]{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.markdown-body[data-astro-cid-4sn4zg3r] blockquote[data-astro-cid-4sn4zg3r]{margin:1.5rem 0;padding:1rem 1.5rem;border-left:3px solid var(--accent);background:var(--surface);font-style:italic}.markdown-body[data-astro-cid-4sn4zg3r] img[data-astro-cid-4sn4zg3r]{max-width:100%;height:auto;border-radius:8px;margin:1.5rem 0}.markdown-body[data-astro-cid-4sn4zg3r] table[data-astro-cid-4sn4zg3r]{width:100%;border-collapse:collapse;margin:1.5rem 0}.markdown-body[data-astro-cid-4sn4zg3r] th[data-astro-cid-4sn4zg3r],.markdown-body[data-astro-cid-4sn4zg3r] td[data-astro-cid-4sn4zg3r]{border:1px solid var(--border);padding:.75rem;text-align:left}.markdown-body[data-astro-cid-4sn4zg3r] th[data-astro-cid-4sn4zg3r]{background:var(--surface);font-weight:600}.markdown-body[data-astro-cid-4sn4zg3r] ul[data-astro-cid-4sn4zg3r],.markdown-body[data-astro-cid-4sn4zg3r] ol[data-astro-cid-4sn4zg3r]{margin-bottom:1.5rem;padding-left:2rem}.markdown-body[data-astro-cid-4sn4zg3r] li[data-astro-cid-4sn4zg3r]{margin-bottom:.5rem}.tags-container[data-astro-cid-4sn4zg3r]{margin-bottom:1rem}.toggle-tags-btn[data-astro-cid-4sn4zg3r]{background:none;border:none;cursor:pointer;padding:.25rem .5rem;font-size:.75rem;color:var(--muted);transition:color .2s;text-align:left}.toggle-tags-btn[data-astro-cid-4sn4zg3r]:hover{color:var(--ink)}.hidden-tag[data-astro-cid-4sn4zg3r]{display:none}
