*,::before,::after{box-sizing:border-box;border:0 solid}html{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4}body,h1,h2,h3,h4,h5,h6,p,blockquote,figure,pre,ol,ul,dl,dd{margin:0}ol,ul{list-style:none;padding:0}button,input,textarea,select{font:inherit}button{background:0 0;padding:0}img,svg,video,canvas,audio,iframe,embed,object{display:block;max-width:100%}img,video{height:auto}.blog-icon{display:inline-block;flex:none;width:1em;height:1em;fill:currentColor;vertical-align:-.125em}:root{color-scheme:light;--blog-bg:#fafafa;--blog-surface:#ffffff;--blog-surface-muted:#f4f4f5;--blog-surface-card:#ffffff;--blog-surface-card-hover:#f4f4f5;--blog-surface-footer:#f7f7f8;--blog-text:#18181b;--blog-text-soft:#3f3f46;--blog-muted:#71717a;--blog-border:#e4e4e7;--blog-border-strong:#d4d4d8;--blog-accent:#0369a1;--blog-accent-strong:#075985;--blog-accent-soft:#e0f2fe;--blog-focus-ring:0 0 0 3px color-mix(in srgb, var(--blog-accent) 18%, transparent);--blog-code-bg:#111827;--blog-code-text:#f9fafb;--blog-radius:14px;--blog-radius-sm:8px;--space-nav:4rem;--space-section:clamp(2rem, 5vw, 4rem);--space-article:2rem;--space-card:1rem;--blog-font-sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;--blog-font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;--blog-shell:1480px;--blog-shell-gutter:clamp(1.5rem, 4vw, 5rem);--blog-shell-gutter-mobile:.75rem;--blog-reading:76ch;--blog-reading-single:78ch;--blog-reading-header:78ch;--blog-sidebar-ad-width:18.75rem;--blog-sidebar-ad-height:15.625rem;--blog-sidebar-ad-pad-left:.82rem;--blog-aside:calc(var(--blog-sidebar-ad-width) + var(--blog-sidebar-ad-pad-left));--blog-aside-reserve:18rem;--blog-single-gap:clamp(1.5rem, 2.2vw, 1.75rem);--blog-sticky-gap:1.25rem;--blog-sticky-top:calc(var(--space-nav) + var(--blog-sticky-gap));--blog-scroll-offset:calc(var(--space-nav) + 2rem);--blog-mobile-nav-offset:99px;--blog-text-meta-sm:.8rem;--blog-text-meta:.84rem;--blog-text-support:.92rem;--blog-text-summary:.94rem;--blog-text-toc-child:calc(var(--blog-text-summary) * .92);--blog-text-toc-deep:calc(var(--blog-text-summary) * .88);--blog-text-label:.76rem;--toc-root-indent:0;--toc-group-gap:.46rem;--toc-branch-offset:.26rem;--toc-branch-indent:.72rem;--toc-link-indent:.74rem;--toc-leaf-gap:.28rem;--toc-deep-offset:.16rem;--toc-deep-indent:.62rem;--blog-chrome-border:color-mix(in srgb, var(--blog-border) 68%, transparent);--blog-chrome-border-strong:color-mix(in srgb, var(--blog-border-strong) 48%, transparent);--blog-chrome-surface:color-mix(in srgb, var(--blog-surface-muted) 42%, var(--blog-surface));--blog-chrome-surface-strong:color-mix(in srgb, var(--blog-surface-muted) 70%, var(--blog-surface));--blog-accent-panel:color-mix(in srgb, var(--blog-accent-soft) 44%, var(--blog-surface));--blog-accent-line:color-mix(in srgb, var(--blog-accent) 48%, transparent)}.darkmode--activated{color-scheme:dark;--blog-bg:#0b0f14;--blog-surface:#111827;--blog-surface-muted:#172033;--blog-surface-card:#121a29;--blog-surface-card-hover:#182233;--blog-surface-footer:#101722;--blog-text:#e5e7eb;--blog-text-soft:#cbd5e1;--blog-muted:#9ca3af;--blog-border:#273244;--blog-border-strong:#334155;--blog-accent:#38bdf8;--blog-accent-strong:#7dd3fc;--blog-accent-soft:rgba(56, 189, 248, .14);--blog-focus-ring:0 0 0 3px rgba(56, 189, 248, .2);--blog-code-bg:#020617;--blog-code-text:#e5e7eb;--blog-chrome-border:color-mix(in srgb, var(--blog-border) 78%, transparent);--blog-chrome-border-strong:color-mix(in srgb, var(--blog-border-strong) 62%, transparent);--blog-chrome-surface:color-mix(in srgb, var(--blog-surface-muted) 36%, var(--blog-surface));--blog-chrome-surface-strong:color-mix(in srgb, var(--blog-surface-muted) 56%, var(--blog-surface));--blog-accent-panel:color-mix(in srgb, var(--blog-accent-soft) 58%, var(--blog-surface));--blog-accent-line:color-mix(in srgb, var(--blog-accent) 58%, transparent)}html{scroll-behavior:smooth;background:var(--blog-bg)}body{min-width:0;overflow-x:hidden;background:var(--blog-bg);color:var(--blog-text);font-family:var(--blog-font-sans);font-size:16px;font-weight:400;letter-spacing:0;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}a{color:inherit;overflow-wrap:anywhere;text-decoration-color:color-mix(in srgb,var(--blog-accent) 55%,transparent);text-underline-offset:.18em;transition:color .2s ease,border-color .2s ease,background-color .2s ease,transform .2s ease,box-shadow .2s ease}a:hover{color:var(--blog-accent)}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--blog-accent);outline-offset:3px}ol,ul{padding-left:1.45rem}code,kbd,pre,samp{font-family:var(--blog-font-mono)}:where(p,li,td,th,blockquote,.home-summary,.blog-post-summary,.blog-category-summary,.blog-quick-summary,.blog-author-box-description) code{padding:.06rem .28rem;border:1px solid color-mix(in srgb,var(--blog-border) 72%,transparent);border-radius:6px;background:color-mix(in srgb,var(--blog-surface-muted) 68%,var(--blog-surface));color:color-mix(in srgb,var(--blog-text) 92%,var(--blog-text-soft));font-size:.88em;overflow-wrap:normal;word-break:normal;white-space:break-spaces}pre code{padding:0;border:0;background:0 0;color:inherit;font-size:inherit}blockquote{margin:1.7rem 0;padding:1rem 1.15rem 1rem 1.2rem;border:1px solid color-mix(in srgb,var(--blog-accent) 18%,var(--blog-border));border-left:3px solid var(--blog-accent);border-radius:var(--blog-radius-sm);background:color-mix(in srgb,var(--blog-accent-soft) 34%,var(--blog-surface));color:var(--blog-text-soft)}blockquote p{margin-bottom:0;line-height:1.8}blockquote p+p{margin-top:.85rem}blockquote p:last-child{margin-bottom:0}p:has(img){color:var(--blog-muted);font-size:.92rem}p>img{display:block;max-width:100%;height:auto;margin-right:auto;margin-bottom:.7rem;margin-left:auto}.site-shell,.site-main{width:min(calc(100% - (var(--blog-shell-gutter) * 2)),var(--blog-shell));margin-inline:auto}.site-main{padding-top:1.35rem}.site-header{position:sticky;top:0;z-index:40;border-bottom:1px solid color-mix(in srgb,var(--blog-border) 58%,transparent);background:color-mix(in srgb,var(--blog-bg) 94%,transparent);backdrop-filter:blur(14px)}.site-nav{min-height:var(--space-nav);padding:0}.site-nav-shell{display:flex;flex-direction:column}.blog-header{position:relative;display:flex;align-items:center;gap:1.05rem;min-height:var(--space-nav)}.brand-lockup,.blog-name,.footer-logo{display:inline-flex;flex:none;align-items:center;gap:.34rem;margin-right:0;padding:0;color:var(--blog-text)!important;font-size:1.08rem;font-weight:740;line-height:1.15;text-decoration:none;white-space:nowrap}.brand-lockup-main,.brand-lockup-sub,.blog-name-main,.blog-name-sub,.footer-logo-main,.footer-logo-sub{display:inline-flex;align-items:baseline}.brand-lockup-sub,.blog-name-sub,.footer-logo-sub{color:color-mix(in srgb,var(--blog-muted) 88%,var(--blog-text-soft));font-size:.82rem;font-weight:650;letter-spacing:0}.blog-search{position:relative;width:min(260px,23vw);margin-left:auto}.blog-search-desktop{display:block}.blog-search-desktop input{padding-right:3.7rem}.blog-search-desktop .blog-search-submit{right:.24rem;width:auto;min-width:2.34rem;padding:0 .52rem;gap:.18rem;border:1px solid transparent;background:0 0;color:color-mix(in srgb,var(--blog-muted) 84%,var(--blog-text-soft))}.blog-search-desktop .blog-search-submit span{display:inline;font-size:.73rem;font-weight:680;line-height:1}.blog-search input{width:100%;min-height:36px;padding-left:.9rem;padding-right:2.6rem;border:1px solid color-mix(in srgb,var(--blog-border) 78%,transparent);border-radius:11px!important;background:color-mix(in srgb,var(--blog-surface) 72%,transparent);color:var(--blog-text-soft);font-size:.86rem;box-shadow:none!important}.blog-search input::placeholder{color:var(--blog-muted)}.blog-search-submit{position:absolute;top:50%;right:.3rem;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:999px;padding:0;background:0 0;color:var(--blog-muted);transform:translateY(-50%)}.blog-search-submit .blog-icon{position:static;transform:none}.blog-search-submit span{display:none}.blog-search-submit:hover,.blog-search-submit:focus{color:var(--blog-text)}.blog-nav-search-panel{display:none}.blog-nav-collapse{display:none;flex-grow:0;justify-content:flex-end}[data-nav-state=open] .blog-nav-collapse{display:block}.blog-nav-overlay{display:none}.blog-main-menu{display:flex;align-items:center;gap:.18rem;margin:0;margin-left:0;padding-left:0;list-style:none}.blog-menu{margin-left:0}.blog-menu-link{position:relative;display:inline-flex;align-items:center;min-height:36px;padding:.42rem .64rem!important;border:1px solid transparent;border-radius:var(--blog-radius-sm);color:color-mix(in srgb,var(--blog-muted) 90%,var(--blog-text-soft));font-size:.9rem;font-weight:620;text-decoration:none}.blog-menu-link:hover{background:0 0;border-color:transparent;color:var(--blog-text)}.blog-menu-link[aria-current]:not([aria-current=false]){background:0 0;border-color:transparent;color:var(--blog-accent);font-weight:680}.blog-menu-link[aria-current]:not([aria-current=false])::after{position:absolute;right:.68rem;bottom:.38rem;left:.68rem;height:1px;border-radius:999px;background:var(--blog-accent);content:""}.blog-nav-toggle{display:none;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid color-mix(in srgb,var(--blog-border) 72%,transparent);border-radius:var(--blog-radius-sm);padding:0;background:color-mix(in srgb,var(--blog-surface) 72%,transparent);color:var(--blog-text-soft);box-shadow:none}.blog-nav-toggle-icon{display:block;position:relative;width:18px;height:12px;background-image:none;border-top:2px solid;border-bottom:2px solid}.blog-nav-toggle-icon::before{position:absolute;top:3px;right:0;left:0;height:2px;background:currentColor;content:""}.section-heading,.blog-taxonomy-header{border-bottom:1px solid var(--blog-border)}.section-heading{padding:var(--space-section)0 1.25rem}.section-heading-home{padding-top:1.05rem}.section-intro{padding:1.1rem 0 0}.blog-page-header,.section-intro-panel{padding:1.25rem;border:1px solid var(--blog-border);border-radius:var(--blog-radius);background:var(--blog-surface)}.blog-page-header{width:min(100%,var(--blog-reading-single));margin-right:auto;margin-left:auto;padding:clamp(1rem,2vw,1.35rem)0 1rem;border-inline:0;border-top:0;border-bottom:0;border-radius:0;background:0 0}.blog-page-header-home{padding-top:clamp(1rem,2vw,1.45rem);padding-bottom:clamp(1rem,1.6vw,1.2rem)}.blog-page-header-home .blog-page-header-main{max-width:var(--blog-reading-single)}.blog-page-header-home .blog-taxonomy-eyebrow{margin-bottom:.48rem;color:var(--blog-muted);font-size:var(--blog-text-meta);letter-spacing:.03em;text-transform:none}.blog-page-header-home .blog-category-title{max-width:16ch;font-size:clamp(2rem,3vw,2.48rem);line-height:1.16}.blog-page-header-home .blog-category-summary{max-width:42rem;margin-top:.76rem;font-size:clamp(.98rem,1.08vw,1.06rem);line-height:1.68}.blog-page-header-compact{padding-top:1rem;padding-bottom:.86rem}.blog-page-header-compact .blog-page-header-main{max-width:var(--blog-reading-single)}.blog-page-header-compact .blog-taxonomy-eyebrow{margin-bottom:.42rem}.blog-page-header-compact .blog-category-title{font-size:clamp(1.5rem,2.3vw,1.95rem);line-height:1.16}.blog-page-header-compact .blog-category-summary{max-width:42rem;margin-top:.5rem;font-size:.95rem;line-height:1.66}.blog-page-header-stream{padding-top:.92rem;padding-bottom:.72rem}.blog-page-header-stream .blog-page-header-main{max-width:var(--blog-reading-single)}.blog-page-header-stream .blog-category-summary{display:none}.blog-page-header-main{max-width:var(--blog-reading-single)}.blog-page-header-shell{display:block}.blog-page-header-shell.has-support{display:grid;grid-template-columns:minmax(0,1fr)fit-content(22rem);align-items:end;gap:clamp(1rem,2vw,1.5rem)}.blog-page-header-home .blog-page-header-shell{display:grid;grid-template-columns:minmax(0,1fr)fit-content(16rem);align-items:end;gap:clamp(1rem,2vw,1.45rem)}.blog-page-header-home .blog-page-header-support{max-width:16rem;padding-bottom:.14rem}.blog-page-header-home .blog-page-header-meta{justify-content:flex-start}.blog-page-header-support{display:flex;flex-direction:column;align-items:flex-end;gap:.82rem;min-width:0;max-width:22rem;padding-bottom:.12rem;justify-self:end}.blog-page-header-support-card{display:flex;flex-direction:column;gap:.2rem;width:100%;max-width:16rem;padding:.55rem 0 0 .82rem;border:0;border-left:1px solid color-mix(in srgb,var(--blog-border-strong) 64%,transparent);border-radius:0;background:0 0;color:var(--blog-text);text-decoration:none}.blog-page-header-support-card:hover{border-color:var(--blog-accent-line);background:0 0;color:var(--blog-text)}.blog-page-header-support-card-label{color:var(--blog-accent);font-size:.74rem;font-weight:650;letter-spacing:0;text-transform:none}.blog-page-header-support-card-title{color:var(--blog-text);font-size:.9rem;font-weight:680;line-height:1.34;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.blog-page-header-support-card-summary{display:none;color:var(--blog-text-soft);font-size:.82rem;line-height:1.5}.blog-page-header-support-card-meta{color:var(--blog-muted);font-size:.76rem;font-weight:520}.section-intro-children{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem .72rem;margin-top:1rem;color:var(--blog-muted);font-size:.88rem}.section-intro-children-label{color:var(--blog-text);font-weight:720}.section-intro-child-link{display:inline-flex;align-items:center;gap:.42rem;min-height:32px;padding:.28rem .68rem;border:1px solid color-mix(in srgb,var(--blog-border) 92%,transparent);border-radius:999px;background:color-mix(in srgb,var(--blog-surface) 98%,transparent);color:var(--blog-text-soft);text-decoration:none}.section-intro-child-link:hover{border-color:color-mix(in srgb,var(--blog-accent) 40%,var(--blog-border));background:color-mix(in srgb,var(--blog-accent-soft) 30%,var(--blog-surface));color:var(--blog-text)}.section-intro-child-title{font-weight:640}.section-intro-child-count{color:var(--blog-muted);font-size:.76rem;font-variant-numeric:tabular-nums}.blog-page-header-meta{margin-top:0;gap:.34rem .64rem;justify-content:flex-end}.blog-page-header-meta span+span{position:relative;margin-left:.08rem;padding-left:.72rem}.blog-page-header-meta span+span::before{position:absolute;top:50%;left:0;width:1px;height:.78rem;background:color-mix(in srgb,var(--blog-border-strong) 68%,transparent);transform:translateY(-50%);content:""}.blog-page-header-children{margin-top:0;justify-content:flex-end}.home-topic-band{width:min(100%,var(--blog-reading-single));margin-right:auto;margin-left:auto;padding:.88rem 0 1rem;border-bottom:0}.topic-rail{display:flex;flex-wrap:wrap;align-items:baseline;max-width:100%;gap:.42rem .95rem;margin-top:0;margin-right:auto;padding:0}.topic-card{min-height:0}.taxonomy-breadcrumbs{width:min(100%,var(--blog-reading-single));margin-right:auto;margin-left:auto;padding-top:.4rem}.blog-breadcrumbs-nav{padding-top:.85rem}#breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:0;padding-left:0;list-style:none}.breadcrumbs-item,.breadcrumbs-separator{display:flex;align-items:center;color:var(--blog-muted);font-size:var(--blog-text-meta)}#breadcrumbs .breadcrumbs-separator:last-child{display:none}.breadcrumbs-item a{color:inherit;text-decoration:none}.breadcrumbs-item:last-child a{color:var(--blog-text-soft)}.breadcrumbs-item[aria-current=page]{color:var(--blog-text-soft)}.blog-post-list{display:flex;flex-direction:column}.post-list-section{width:min(100%,var(--blog-reading-single));margin-right:auto;margin-left:auto;padding-top:.82rem}.post-list-section.is-home{padding-top:.92rem}.post-list-section.is-hub{padding-top:.72rem}.blog-list-intro{display:block;padding:0 0 .28rem;border-bottom:0}.blog-list-intro-title{margin:0;color:var(--blog-text);font-size:.92rem;font-weight:680;line-height:1.3}.blog-list-intro-summary{max-width:34rem;margin:0;color:var(--blog-muted);font-size:.86rem;line-height:1.46}.blog-post-card{padding:1rem 0 1.08rem;border-top:1px solid color-mix(in srgb,var(--blog-border) 58%,transparent)}.blog-post-card:first-child{border-top:0}.blog-post-first{display:block}.blog-grid-thumbnail a,.blog-grid-thumbnail img{display:block;width:100%;height:100%}.blog-grid-thumbnail{overflow:hidden;aspect-ratio:8/5;border:1px solid color-mix(in srgb,var(--blog-border) 78%,transparent);border-radius:0;background:var(--blog-surface-muted)}.blog-grid-thumbnail img{object-fit:cover;transition:opacity .2s ease}.blog-post-card-body{display:flex;flex-direction:column;gap:.34rem;align-self:start;min-width:0;padding-top:0}.blog-post-title,.blog-category-title{margin:0;color:var(--blog-text);font-size:clamp(1.6rem,3vw,2.45rem);font-weight:760;letter-spacing:0;line-height:1.16;text-wrap:balance}.blog-post-title{font-size:clamp(1.08rem,1.32vw,1.28rem);font-weight:700;line-height:1.28}.blog-section-title{margin:0;color:var(--blog-text);font-size:clamp(1.85rem,3vw,2.45rem);font-weight:760;line-height:1.14;text-wrap:balance}.blog-post-title>a,.blog-category-title>a{color:inherit;text-decoration:none}.blog-post-summary,.blog-category-summary{margin:0;color:var(--blog-text-soft);line-height:1.8}.blog-post-summary{font-size:.93rem;line-height:1.62;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.blog-post-meta{margin-top:.02rem;gap:.26rem .56rem;padding-top:0;color:var(--blog-muted);font-size:.8rem}.blog-post-meta i{font-size:var(--blog-text-meta-sm)}.blog-post-author{font-size:1rem;font-weight:700;line-height:1}.blog-post-author-avatar{width:40px;height:40px;border-radius:40px;background-color:var(--blog-surface-muted);background-size:cover}.blog-taxonomy-header{padding:clamp(1rem,2vw,1.45rem)0 1.05rem}.blog-taxonomy-eyebrow{margin-bottom:.55rem;color:var(--blog-muted);font-size:var(--blog-text-label);font-weight:760;letter-spacing:.08em;text-transform:uppercase}.blog-featured-posts{width:min(100%,var(--blog-reading-single));margin-right:auto;margin-left:auto;padding:.96rem 0 1.02rem;border-bottom:0}.blog-featured-header{display:block;margin-bottom:.5rem}.blog-featured-grid{display:block}.blog-featured-grid.has-lead{display:block}.blog-featured-side{display:block}.blog-featured-heading{margin:0;color:var(--blog-text);font-size:.94rem;font-weight:680;line-height:1.3}.blog-featured-summary-intro{max-width:42rem;margin:0;color:var(--blog-muted);font-size:.86rem;line-height:1.46}.blog-featured-kicker{color:var(--blog-accent);font-size:.74rem;font-weight:620;letter-spacing:0;text-transform:none}.topic-card,.blog-featured-card,.blog-term-card{display:flex;flex-direction:column;gap:.22rem;min-height:100%;padding:.64rem 0 .68rem;border:0;border-top:0;border-radius:0;background:0 0;color:var(--blog-text);text-decoration:none}.topic-card:hover,.blog-featured-card:hover,.blog-term-card:hover{background:0 0;color:var(--blog-text);transform:none}.blog-featured-card.is-featured-lead{gap:.22rem;padding:.64rem 0 .68rem;min-height:100%}.blog-featured-thumb{display:none;overflow:hidden;aspect-ratio:16/9;border:1px solid var(--blog-border);border-radius:0;background:var(--blog-surface-muted)}.blog-featured-thumb img{display:block;width:100%;height:100%;object-fit:cover}.blog-featured-card.is-featured-lead .blog-featured-title{font-size:.94rem;line-height:1.3;-webkit-line-clamp:2;line-clamp:2}.blog-featured-card.is-featured-lead .blog-featured-summary{font-size:.8rem;line-height:1.48;-webkit-line-clamp:2;line-clamp:2}.topic-card-title,.blog-featured-title,.blog-term-card-title{color:var(--blog-text);font-size:.96rem;font-weight:680;line-height:1.35;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.topic-card-summary,.blog-featured-summary,.blog-term-card-summary{flex:1;color:var(--blog-text-soft);font-size:.78rem;line-height:1.46;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.topic-card-count,.blog-featured-meta,.blog-term-card-count{margin-top:0;padding-top:0;color:var(--blog-muted);font-size:var(--blog-text-meta-sm);font-weight:520;line-height:1.42}.topic-card{display:inline-flex;min-height:0;padding:0;border-top:0;color:var(--blog-text-soft)}.topic-card:hover{color:var(--blog-accent-strong)}.topic-card .topic-card-title{font-size:.92rem;font-weight:560;line-height:1.45;-webkit-line-clamp:1;line-clamp:1}.blog-post-list.is-compact-list .blog-post-card{padding:1rem 0 1.08rem}.blog-post-list.is-compact-list .blog-post-first{display:block}.blog-post-list.is-compact-list .blog-grid-thumbnail{width:164px;max-width:100%;min-width:0;align-self:start;justify-self:start;aspect-ratio:16/9}.blog-post-list.is-compact-list .blog-grid-thumbnail img{object-position:left center}.blog-post-list.is-compact-list .blog-post-title{font-size:clamp(1.08rem,1.32vw,1.28rem);font-weight:700;line-height:1.28}.blog-post-list.is-compact-list .blog-post-meta{font-size:.78rem}.blog-post-list.is-compact-list .blog-post-summary{font-size:.93rem;line-height:1.62;-webkit-line-clamp:2;line-clamp:2}.blog-post-list.is-hub-list .blog-post-card{padding:1rem 0 1.08rem}.blog-post-list.is-hub-list .blog-post-first{display:block}.blog-post-list.is-hub-list .blog-grid-thumbnail{width:156px;max-width:100%;justify-self:start;aspect-ratio:4/3}.blog-post-list.is-hub-list .blog-post-card-body{gap:.34rem}.blog-post-list.is-hub-list .blog-post-title{font-size:clamp(1.08rem,1.32vw,1.28rem);font-weight:700;line-height:1.28}.blog-post-list.is-hub-list .blog-post-meta{font-size:.77rem}.blog-post-list.is-hub-list .blog-post-summary{font-size:.93rem;line-height:1.62;-webkit-line-clamp:2;line-clamp:2}.blog-term-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.62rem;width:min(100%,var(--blog-reading-single));margin-right:auto;margin-left:auto}.blog-term-index{padding:var(--space-article)0}.blog-term-card.is-compact{flex-direction:row;align-items:center;justify-content:space-between;min-height:0;gap:.62rem;padding:.66rem .78rem}.blog-term-card.is-compact .blog-term-card-title{flex:1;font-size:.92rem;line-height:1.3;-webkit-line-clamp:1;line-clamp:1}.blog-term-card.is-compact .blog-term-card-count{flex:none;font-size:var(--blog-text-meta-sm);line-height:1.25;white-space:nowrap}.single-header-wrap{position:relative;border-bottom:1px solid var(--blog-chrome-border)}.single-header-wrap::after{position:absolute;right:0;bottom:-1px;left:0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--blog-border) 32%,transparent) 14%,color-mix(in srgb,var(--blog-border-strong) 28%,transparent) 50%,color-mix(in srgb,var(--blog-border) 32%,transparent) 86%,transparent);pointer-events:none;content:""}.blog-single-post-header{width:100%;padding:clamp(1.08rem,2.2vw,1.6rem)0 1rem}.single-header-inner{max-width:min(100%,var(--blog-reading-header));min-width:0;margin-inline:auto}.blog-single-post-title{max-width:min(100%,var(--blog-reading-header));min-width:0;margin:0 auto;padding-bottom:.7rem;color:var(--blog-text);font-size:clamp(1.92rem,2.9vw,2.68rem);font-weight:760;letter-spacing:-.01em;line-height:1.1;text-wrap:wrap}.blog-meta-row,.blog-meta-row a{color:color-mix(in srgb,var(--blog-muted) 92%,var(--blog-text-soft));font-size:var(--blog-text-meta);font-weight:500;text-decoration:none}.blog-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:.32rem .58rem}.blog-meta-row>*{display:inline-flex;align-items:center;gap:.35rem}.blog-meta-row time{font-variant-numeric:tabular-nums}.blog-meta-row i{color:inherit;font-size:.78rem}.blog-single-meta,.blog-single-meta a{color:color-mix(in srgb,var(--blog-muted) 92%,var(--blog-text-soft));font-size:var(--blog-text-meta)}.blog-single-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem 0;padding-bottom:.16rem}.blog-single-meta-item{display:inline-flex;align-items:baseline;gap:.26rem;white-space:nowrap}.blog-single-meta-item+.blog-single-meta-item{position:relative;margin-left:.72rem;padding-left:.72rem}.blog-single-meta-item+.blog-single-meta-item::before{position:absolute;top:50%;left:0;width:1px;height:.72rem;background:color-mix(in srgb,var(--blog-border-strong) 68%,transparent);transform:translateY(-50%);content:""}.blog-single-meta-prefix{color:inherit;font-size:var(--blog-text-meta-sm);font-weight:600}.blog-single-meta-item time{font-variant-numeric:tabular-nums}.blog-single-meta a{text-decoration:none}.blog-single-meta-item-category a{color:inherit;font-weight:500}.blog-single-meta-item-category a:hover{color:var(--blog-accent)}.blog-single-meta-item-updated{color:inherit}.blog-terms{display:flex;flex-wrap:wrap;align-items:center;gap:.36rem .44rem;margin-top:.38rem}.blog-terms-label{color:color-mix(in srgb,var(--blog-muted) 92%,var(--blog-text-soft));font-size:var(--blog-text-meta-sm);font-weight:600}.blog-terms-list{display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none}.blog-terms-list a{display:inline-flex;align-items:center;min-height:30px;padding:.18rem .7rem;border:1px solid var(--blog-chrome-border);border-radius:999px;background:color-mix(in srgb,var(--blog-surface) 92%,var(--blog-surface-muted));color:color-mix(in srgb,var(--blog-muted) 92%,var(--blog-text-soft));font-size:var(--blog-text-meta-sm);font-weight:500;text-decoration:none}.blog-terms-list a:hover{border-color:var(--blog-accent-line);background:var(--blog-accent-panel);color:var(--blog-accent-strong)}.blog-quick-summary.in-single-header{max-width:min(100%,var(--blog-reading-header));margin-top:.82rem;margin-right:auto;margin-bottom:0;margin-left:auto}.single-layout{width:100%;display:grid;grid-template-columns:minmax(0,1fr)minmax(0,var(--blog-reading-single))minmax(0,1fr);column-gap:var(--blog-single-gap);row-gap:1.36rem;align-items:start;padding-top:1.54rem}.blog-single-post-content{grid-column:2;width:100%;max-width:var(--blog-reading-single);min-width:0;justify-self:center}.blog-single-post-content p{margin-bottom:1.02rem;color:color-mix(in srgb,var(--blog-text-soft) 94%,var(--blog-text));font-size:var(--blog-text-summary);line-height:1.72;text-align:start}.blog-single-post-related li,.blog-single-post-content li{margin-bottom:.75rem;color:color-mix(in srgb,var(--blog-text-soft) 94%,var(--blog-text));line-height:1.72;text-align:start}.blog-single-post-content li{font-size:var(--blog-text-summary)}.blog-single-post-content p+div{margin-bottom:1.25rem}.blog-single-post-content a,.blog-quick-summary.in-single-header a{color:var(--blog-accent);text-decoration:underline}.blog-single-post-content a:hover,.blog-quick-summary.in-single-header a:hover{color:var(--blog-text)}.rss-copy-panel{display:grid;grid-template-columns:minmax(0,1fr)auto;align-items:stretch;gap:.7rem;margin:1rem 0 1.35rem;padding:.72rem;border:1px solid var(--blog-chrome-border);border-radius:12px;background:color-mix(in srgb,var(--blog-surface) 94%,var(--blog-surface-muted))}.rss-copy-content{display:grid;min-width:0;gap:.24rem}.rss-copy-label{color:var(--blog-muted);font-size:var(--blog-text-label);font-weight:650;line-height:1.35}.blog-single-post-content .rss-copy-input{width:100%;min-width:0;height:2.45rem;padding:0;border:0;background:0 0;color:var(--blog-text);font-family:var(--blog-font-mono);font-size:.95rem;line-height:1.4;text-overflow:ellipsis}.rss-copy-input:focus{outline:none}.rss-copy-button{display:inline-flex;align-items:center;justify-content:center;align-self:center;min-width:6.4rem;height:2.45rem;padding:0 .92rem;border:1px solid var(--blog-accent-line);border-radius:10px;background:var(--blog-accent-panel);color:var(--blog-accent-strong);font:inherit;font-size:.9rem;font-weight:700;line-height:1;cursor:pointer;transition:color .2s ease,border-color .2s ease,background-color .2s ease,transform .2s ease}.rss-copy-button:hover,.rss-copy-button:focus-visible{border-color:color-mix(in srgb,var(--blog-accent) 74%,transparent);background:color-mix(in srgb,var(--blog-accent-soft) 70%,var(--blog-surface));color:var(--blog-text)}.rss-copy-button:focus-visible{outline:none;box-shadow:var(--blog-focus-ring)}.rss-copy-button:active{transform:translateY(1px)}.blog-single-post-content ol,.blog-single-post-content ul{margin-top:.94rem;margin-bottom:1.18rem;padding-left:1.5rem}.blog-single-post-content ul{list-style:square}.blog-single-post-content h2{margin-top:2.5rem;margin-bottom:.88rem;padding-bottom:.56rem;border-bottom:1px solid var(--blog-border);color:var(--blog-text);font-size:clamp(1.6rem,2.25vw,1.82rem);font-weight:760;line-height:1.24}.blog-single-post-content h3{margin-top:2rem;margin-bottom:.68rem;color:var(--blog-text);font-size:1.28rem;font-weight:700;line-height:1.3}.blog-single-post-content h4{margin-top:1.72rem;margin-bottom:.56rem;color:var(--blog-text);font-size:1.04rem;font-weight:700;line-height:1.32}.blog-single-post-content h2[id],.blog-single-post-content h3[id],.blog-single-post-content h4[id]{scroll-margin-top:var(--blog-scroll-offset)}.blog-figure,.blog-single-inline-thumb{margin:1.75rem 0 2rem}.blog-single-inline-thumb{margin-top:0}.blog-figure{display:block}.blog-figure img,.blog-single-inline-thumb img{display:block;max-width:100%;margin-inline:auto}.blog-figure-caption{max-width:44rem;margin:.66rem auto 0;color:color-mix(in srgb,var(--blog-muted) 94%,var(--blog-text-soft));font-size:var(--blog-text-meta);line-height:1.58;text-align:center;text-wrap:pretty}.blog-figure-caption p{margin:0}.blog-figure-caption a{color:inherit;text-decoration-color:color-mix(in srgb,var(--blog-muted) 65%,transparent)}.blog-figure-caption a:hover{color:var(--blog-accent)}.blog-single-post-content p>strong{color:var(--blog-text);font-weight:700}.blog-table-wrap{position:relative;width:100%;margin:1.2rem 0 1.32rem;overflow-x:auto;overflow-y:hidden;border:1px solid color-mix(in srgb,var(--blog-border-strong) 32%,var(--blog-border));border-radius:0;background:color-mix(in srgb,var(--blog-surface-muted) 42%,var(--blog-surface));-webkit-overflow-scrolling:touch;scrollbar-width:thin}.blog-table-wrap::before,.blog-table-wrap::after{position:absolute;top:0;bottom:0;z-index:2;width:1.6rem;pointer-events:none;opacity:0;transition:opacity .2s ease;content:""}.blog-table-wrap::before{left:0;background:linear-gradient(to right,color-mix(in srgb,var(--blog-surface) 96%,transparent),transparent)}.blog-table-wrap::after{right:0;background:linear-gradient(to left,color-mix(in srgb,var(--blog-surface) 96%,transparent),transparent)}.blog-table-wrap.is-overflowing:not(.is-at-start)::before,.blog-table-wrap.is-overflowing:not(.is-at-end)::after{opacity:1}.blog-table-wrap>table,.blog-single-post-content>table{width:max(100%,34rem);margin:0;border-collapse:collapse;table-layout:auto;background:var(--blog-surface);word-break:normal}.blog-table-wrap[data-cols="2"]{width:min(100%,60rem);margin-right:auto;margin-left:auto}.blog-table-wrap[data-cols="2"]>table{width:100%}.blog-content-table[data-cols="2"]:not(.is-reference-table){width:100%;table-layout:fixed}.blog-content-table[data-cols="2"]:not(.is-reference-table) th,.blog-content-table[data-cols="2"]:not(.is-reference-table) td{width:50%}.blog-content-table[data-cols="3"]:not(.is-reference-table){width:max(100%,36rem);table-layout:fixed}.blog-content-table.is-reference-table{width:max(100%,44rem);table-layout:auto}.blog-content-table.is-reference-table th:first-child,.blog-content-table.is-reference-table td:first-child{white-space:nowrap}.blog-content-table[data-cols="2"]:not(.is-reference-table) td code,.blog-content-table[data-cols="2"]:not(.is-reference-table) th code{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.blog-single-post-content th,.blog-single-post-content td{padding:.68rem .82rem;border:1px solid var(--blog-border);vertical-align:top;font-size:var(--blog-text-summary);line-height:1.52;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;word-break:break-word}.blog-single-post-content th{color:var(--blog-text);font-weight:760;background-color:color-mix(in srgb,var(--blog-surface-muted) 92%,var(--blog-surface))}.blog-single-post-content tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--blog-surface-muted) 72%,var(--blog-surface))}.blog-single-post-content tbody tr:hover td{background:color-mix(in srgb,var(--blog-accent-soft) 16%,var(--blog-surface))}.blog-figure img,.blog-single-inline-thumb img,.blog-single-post-content table img{max-width:100%;max-height:600px;border:1px solid var(--blog-border);border-radius:10px;box-shadow:none;cursor:pointer;transition:border-color .2s ease,opacity .2s ease}.blog-figure img:hover,.blog-single-inline-thumb img:hover,.blog-single-post-content table img:hover{border-color:color-mix(in srgb,var(--blog-accent) 55%,var(--blog-border));opacity:.94}.blog-content-table.is-reference-table td code{white-space:nowrap;overflow-wrap:normal;word-break:normal}.blog-single-post-content :where(p,li,td,th) code{padding:.05rem .28rem;border-color:color-mix(in srgb,var(--blog-border) 58%,transparent);background:color-mix(in srgb,var(--blog-surface-muted) 58%,var(--blog-surface));font-size:.86em;line-height:1.45}.blog-single-post-content .highlight{max-width:100%;margin:1.2rem 0 1.32rem;border:1px solid color-mix(in srgb,var(--blog-border-strong) 24%,var(--blog-border));border-radius:12px;background:var(--blog-code-bg);position:relative;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.blog-single-post-content .highlight::before,.blog-single-post-content .highlight::after{position:absolute;z-index:2;pointer-events:none;opacity:0;transition:opacity .2s ease;content:""}.blog-single-post-content .highlight::before{top:0;right:0;bottom:0;width:1.75rem;background:linear-gradient(to left,color-mix(in srgb,var(--blog-code-bg) 96%,transparent),transparent)}.blog-single-post-content .highlight.is-overflowing:not(.is-at-end)::before{opacity:1}.blog-single-post-content .highlight>pre,.blog-single-post-content .highlight .chroma{margin:0;min-width:max-content;padding:.92rem 1.04rem;overflow:visible;background:0 0!important;color:var(--blog-code-text);font-size:.875rem;line-height:1.58;tab-size:4}.blog-single-post-content .highlight .line{min-width:max-content}.blog-single-post-content .highlight .ln{min-width:2.15rem;margin-right:.72rem;padding-right:.62rem;border-right:1px solid color-mix(in srgb,#c9d1d9 18%,transparent);color:#7d8590}.blog-single-post-content .highlight .cl{min-width:0}.blog-quick-summary{display:grid;grid-template-columns:1fr;align-items:start;gap:.24rem;margin-bottom:.72rem;padding:.72rem .86rem .76rem;border:1px solid var(--blog-chrome-border);border-radius:12px;background:color-mix(in srgb,var(--blog-surface) 96%,var(--blog-surface-muted));box-shadow:none}.blog-quick-summary>.blog-quick-summary-label{margin-bottom:0;color:color-mix(in srgb,var(--blog-muted) 92%,var(--blog-text-soft));font-size:var(--blog-text-meta-sm);font-weight:600;letter-spacing:.02em;line-height:1.4;text-transform:none}.blog-quick-summary p:last-child{margin-bottom:0}.blog-quick-summary p{color:color-mix(in srgb,var(--blog-text-soft) 94%,var(--blog-text));font-size:var(--blog-text-summary);line-height:1.62}.blog-quick-summary code{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.blog-author-box-avatar{width:64px;height:64px;max-width:64px;border:1px solid color-mix(in srgb,var(--blog-chrome-border) 82%,transparent);border-radius:999px;object-fit:cover;box-shadow:none}.blog-single-post-content .blog-author-box-name{margin:0;padding:0;border:0;color:var(--blog-text);font-size:1rem;font-weight:700;line-height:1.24}.blog-single-disqus,.blog-social-share,.blog-author-box,.blog-post-prev-next{margin-top:2.25rem;margin-bottom:0}.blog-author-box{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.76rem .95rem;padding:1.05rem 0 0;border:1px solid var(--blog-chrome-border);border-width:1px 0 0;border-radius:0;background:0 0;color:var(--blog-text-soft)}.blog-author-box-media{flex:none}.blog-author-box-content{min-width:0;padding-top:.08rem}.blog-author-box-header{display:flex;flex-wrap:wrap;align-items:baseline;gap:.22rem .52rem;margin-bottom:.2rem}.blog-author-box-role{margin:0;color:var(--blog-muted);font-size:.82rem;line-height:1.5}.blog-author-box-description{max-width:44rem;margin:0 0 .74rem;color:color-mix(in srgb,var(--blog-text-soft) 88%,var(--blog-muted));font-size:.88rem;line-height:1.58}.blog-author-links{display:flex;flex-wrap:wrap;gap:.4rem}.blog-author-links a{display:inline-flex;align-items:center;justify-content:center;width:2rem;min-width:2rem;height:2rem;border:1px solid var(--blog-chrome-border);border-radius:999px;background:0 0;color:color-mix(in srgb,var(--blog-text-soft) 90%,var(--blog-text));text-decoration:none}.blog-author-links a .blog-icon{width:.92rem;height:.92rem}.blog-author-links a:hover{border-color:var(--blog-accent-line);background:0 0;color:var(--blog-accent-strong);transform:none}.blog-post-prev-next-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.blog-single-post-content .blog-post-prev-next-card{display:flex;flex-direction:column;justify-content:flex-start;gap:.34rem;min-height:0;padding:.88rem .92rem;border:1px solid var(--blog-chrome-border);border-radius:12px;background:0 0;color:var(--blog-text);text-decoration:none;box-shadow:none}.blog-single-post-content .blog-post-prev-next-card:hover,.blog-single-post-content .blog-post-prev-next-card:focus,.blog-single-post-content .blog-post-prev-next-card:active{color:var(--blog-text);text-decoration:none}.blog-single-post-content .blog-post-prev-next-card:hover{border-color:var(--blog-accent-line);background:0 0;transform:none}.blog-post-prev-next-card-next:only-child{grid-column:2}.blog-post-prev-next-card-next{align-items:flex-end;text-align:right}.blog-post-prev-next-label{display:inline-flex;align-items:center;gap:.36rem;color:var(--blog-muted);font-size:.78rem;font-weight:500;letter-spacing:0}.blog-post-prev-next-title{color:var(--blog-text);font-size:.96rem;font-weight:600;line-height:1.45;display:-webkit-box;overflow:hidden;text-wrap:pretty;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.blog-post-prev-next-meta{display:flex;flex-wrap:wrap;gap:.24rem .46rem;margin-top:.1rem;color:var(--blog-muted);font-size:.78rem;font-weight:500;line-height:1.45}.blog-post-prev-next-meta>*{display:inline-flex;align-items:center}.blog-post-prev-next-category{color:color-mix(in srgb,var(--blog-text-soft) 82%,var(--blog-text))}.blog-post-prev-next-card-next .blog-post-prev-next-meta{justify-content:flex-end}.blog-discussion-shell{padding:1rem 0 0;border:1px solid var(--blog-chrome-border);border-width:1px 0 0;border-radius:0;background:0 0}.blog-single-disqus .giscus{width:100%}.blog-single-disqus iframe.giscus-frame{width:100%}.blog-ad{width:100%;color:var(--blog-muted)}.blog-ad-label{display:block;margin-bottom:.4rem;color:color-mix(in srgb,var(--blog-muted) 80%,transparent);font-size:.68rem;font-weight:600;line-height:1;text-align:center}.blog-ad-sidebar{min-height:var(--blog-sidebar-ad-height);overflow:hidden;padding:.56rem 0 .72rem var(--blog-sidebar-ad-pad-left);border-left:1px solid color-mix(in srgb,var(--blog-chrome-border) 56%,transparent)}.blog-ad-sidebar .adsbygoogle{width:var(--blog-sidebar-ad-width);min-height:var(--blog-sidebar-ad-height);max-height:none}.blog-ad-after-content{margin:2.25rem 0 1.75rem;padding:1rem 0;border:1px solid var(--blog-chrome-border);border-width:1px 0}.blog-ad-after-content .adsbygoogle{min-height:180px}.blog-aside{grid-column:3;display:flex;flex-direction:column;gap:.72rem;position:sticky;top:var(--blog-sticky-top);align-self:start;justify-self:start;width:var(--blog-aside)!important;max-width:var(--blog-aside);margin-left:calc(var(--blog-single-gap) * .08);padding-top:.36rem;box-sizing:border-box;color:color-mix(in srgb,var(--blog-muted) 92%,var(--blog-text-soft));font-size:var(--blog-text-support)}.blog-aside-panel{width:100%;padding:.56rem 0 .56rem .82rem;border:0;border-left:1px solid var(--blog-chrome-border);border-radius:0;background:0 0}.blog-single-toc.blog-aside-panel{border-color:color-mix(in srgb,var(--blog-chrome-border) 56%,transparent);background:0 0}.blog-single-toc-desktop .blog-single-toc-body{max-height:min(22rem,calc(100dvh - var(--blog-sticky-top) - 4rem))}.blog-single-toc{display:flex;flex-direction:column;min-height:0;overflow:hidden}.blog-single-toc-body{min-height:0;max-height:calc(100dvh - var(--blog-sticky-top) - var(--blog-aside-reserve));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-top:.46rem;padding-right:.14rem}.blog-aside-title{display:inline-flex;align-items:center;gap:.44rem;color:color-mix(in srgb,var(--blog-muted) 84%,var(--blog-text-soft));font-size:var(--blog-text-summary);font-weight:650;letter-spacing:0}.blog-aside-title-icon,.blog-inline-toc-summary-icon{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border:0;border-radius:999px;background:0 0;color:color-mix(in srgb,var(--blog-muted) 82%,var(--blog-text-soft));box-shadow:none}.blog-aside-title-icon .blog-icon,.blog-inline-toc-summary-icon .blog-icon{width:.76rem;height:.76rem}.blog-toc-nav{min-width:0}.blog-toc-nav>ul{padding-bottom:.12rem}.blog-toc-nav ul,.blog-toc-nav li{margin-bottom:0;padding-left:0;list-style:none!important;color:inherit;line-height:inherit}.blog-toc-nav a{display:block;padding:.23rem .38rem;border-radius:8px;color:color-mix(in srgb,var(--blog-muted) 92%,var(--blog-text-soft));font-size:var(--blog-text-meta);line-height:1.48;text-wrap:pretty;text-decoration:none}.blog-toc-nav>ul>li{padding-top:var(--toc-group-gap);padding-left:var(--toc-root-indent);border-left:2px solid transparent}.blog-toc-nav>ul>li:first-child{padding-top:0}.blog-toc-nav>ul>li>a{padding-top:.24rem;padding-bottom:.24rem;padding-left:.36rem;color:color-mix(in srgb,var(--blog-muted) 86%,var(--blog-text-soft));font-size:var(--blog-text-meta);font-weight:560;line-height:1.42}.blog-toc-nav ul ul{margin-top:.34rem;margin-left:.24rem;padding-left:.92rem;border-left:1px solid color-mix(in srgb,var(--blog-chrome-border-strong) 62%,transparent)}.blog-toc-nav ul ul li{margin-top:var(--toc-leaf-gap);padding-left:0;border-left:0}.blog-toc-nav ul ul a{position:relative;padding-top:.18rem;padding-bottom:.18rem;padding-left:1rem;color:color-mix(in srgb,var(--blog-muted) 90%,var(--blog-text-soft));font-size:var(--blog-text-toc-child);font-weight:500;line-height:1.48}.blog-toc-nav ul ul ul{margin-left:.12rem;padding-left:.78rem}.blog-toc-nav ul ul ul a{font-size:var(--blog-text-toc-deep);padding-left:.92rem}.blog-toc-nav ul ul a::before{position:absolute;top:50%;left:0;width:.42rem;height:1px;background:color-mix(in srgb,var(--blog-chrome-border-strong) 62%,transparent);transform:translateY(-50%);content:""}.blog-toc-nav ul ul .blog-toc-active::before{width:.58rem;background:var(--blog-accent-line)}.blog-toc-nav a:hover{background:color-mix(in srgb,var(--blog-accent-soft) 24%,transparent);color:var(--blog-accent-strong)}.blog-toc-nav .blog-toc-active{background:color-mix(in srgb,var(--blog-accent-soft) 24%,transparent);color:var(--blog-accent-strong);font-weight:580}.blog-toc-nav{margin-top:0}.blog-inline-toc{display:none;margin-bottom:1.35rem;border:1px solid var(--blog-chrome-border);border-radius:16px;background:var(--blog-chrome-surface)}.blog-inline-toc[open]{background:linear-gradient(180deg,color-mix(in srgb,var(--blog-accent-soft) 18%,var(--blog-surface)) 0%,var(--blog-chrome-surface) 100%)}.blog-inline-toc-summary{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem .82rem;color:var(--blog-text);cursor:pointer;list-style:none;user-select:none}.blog-inline-toc-summary::-webkit-details-marker{display:none}.blog-inline-toc-summary-label{display:inline-flex;align-items:center;gap:.56rem;font-size:var(--blog-text-summary);font-weight:710;line-height:1.35}.blog-inline-toc-summary-caret{color:var(--blog-accent-strong)}.blog-inline-toc-summary-caret{display:inline-flex;flex:none;align-items:center;font-size:.9rem;line-height:1;transition:transform .2s ease}.blog-inline-toc[open] .blog-inline-toc-summary-caret{transform:rotate(180deg)}.blog-inline-toc-body{padding:0 .82rem .78rem;border-top:1px solid var(--blog-chrome-border);max-height:min(15rem,38vh);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.blog-inline-toc-body nav{padding-top:.62rem}.blog-subscribe-form{display:grid;gap:.56rem}.blog-subscribe-input,.blog-subscribe-button{width:100%;min-height:40px;border-radius:10px;font-family:var(--blog-font-sans);font-size:.84rem}.blog-subscribe-input{border:1px solid color-mix(in srgb,var(--blog-chrome-border) 82%,transparent);background:color-mix(in srgb,var(--blog-surface) 78%,transparent);color:var(--blog-text-soft);padding:0 .84rem}.blog-subscribe-input::placeholder{color:var(--blog-muted)}.blog-subscribe-input:focus,.blog-subscribe-button:focus{outline:none;box-shadow:var(--blog-focus-ring)}.blog-subscribe-button{border:1px solid color-mix(in srgb,var(--blog-text-soft) 18%,var(--blog-chrome-border));background:color-mix(in srgb,var(--blog-text) 88%,var(--blog-accent));color:var(--blog-bg);font-weight:680}.blog-subscribe-button:hover,.blog-subscribe-button:focus{border-color:color-mix(in srgb,var(--blog-accent) 42%,var(--blog-text));background:var(--blog-accent-strong);color:var(--blog-bg)}.pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:.22rem;margin-top:1.55rem;margin-bottom:0;padding-left:0;list-style:none}.blog-pagination{display:flex;justify-content:center;margin-top:.34rem;padding-top:.82rem;border-top:1px solid color-mix(in srgb,var(--blog-border) 84%,transparent)}.page-item{flex:none}.page-item-status .page-link,.page-item-status .page-link:hover{border-color:transparent;background:0 0;color:var(--blog-muted);box-shadow:none;cursor:default}.page-item .page-link{display:inline-flex;align-items:center;justify-content:center;gap:.32rem;min-width:40px;min-height:40px;padding:0 .74rem;border:1px solid color-mix(in srgb,var(--blog-border) 84%,transparent);border-radius:12px;background:color-mix(in srgb,var(--blog-surface-card) 98%,transparent);color:var(--blog-muted);font-size:.9rem;font-weight:630;text-decoration:none}.page-item .page-link span{line-height:1}.page-item-nav .page-link{min-width:0;padding:0 .82rem;font-weight:680}.page-item-status{display:none}.page-item-status .page-link{min-width:0;padding:0 .82rem;font-weight:700;color:var(--blog-text)}.page-link-icon{font-size:.78rem}.page-link-label{white-space:nowrap}.page-link-label-short{display:none}.page-item-ellipsis .page-link{min-width:2rem;padding:0 .2rem;border-color:transparent;background:0 0}.page-item .page-link:hover{border-color:var(--blog-border-strong);background:var(--blog-surface);color:var(--blog-text);transform:translateY(-1px)}.page-item.active .page-link{border-color:var(--blog-accent);background:var(--blog-accent);color:var(--blog-bg)}.page-item.disabled .page-link{border-color:transparent;color:color-mix(in srgb,var(--blog-muted) 88%,var(--blog-border-strong));pointer-events:none;opacity:.72}.site-footer{margin-top:clamp(1.35rem,2.6vw,2.1rem);border-top:1px solid color-mix(in srgb,var(--blog-chrome-border) 72%,transparent);background:color-mix(in srgb,var(--blog-surface-footer) 82%,var(--blog-bg));color:var(--blog-muted)}.not-found-page{padding:var(--space-section)0}.footer-grid{display:grid;grid-template-columns:minmax(0,1.35fr)minmax(170px,.58fr)minmax(280px,.9fr)minmax(210px,.68fr);gap:clamp(1rem,2vw,1.7rem);padding-top:clamp(1.36rem,2.15vw,1.9rem);padding-bottom:clamp(1.36rem,2.15vw,1.9rem)}.footer-grid>:not(:first-child){padding-left:0;border-left:0}.footer-logo{margin-bottom:0}.footer-brand{display:flex;flex-direction:column;gap:.48rem}.footer-brand-meta{margin:0;color:var(--blog-muted);font-size:var(--blog-text-meta);line-height:1.5}.footer-brand p{max-width:30rem;margin:0;color:color-mix(in srgb,var(--blog-text-soft) 88%,var(--blog-muted));font-size:.9rem;line-height:1.62}.footer-links{display:flex;flex-direction:column;gap:.24rem}.footer-heading{margin-bottom:.28rem;color:color-mix(in srgb,var(--blog-text-soft) 90%,var(--blog-muted));font-size:.78rem;font-weight:680;letter-spacing:0}.footer-links a{display:inline-flex;align-items:center;min-height:1.72rem;color:color-mix(in srgb,var(--blog-muted) 82%,var(--blog-text-soft));font-size:.9rem;text-decoration:none}.footer-links a:hover{color:var(--blog-accent)}.footer-links[aria-label=主要導覽] a{font-weight:580}.footer-subscribe{display:flex;flex-direction:column;gap:.64rem;padding:0;border:0;border-radius:0;background:0 0}.footer-subscribe-heading{display:flex;align-items:center;gap:.36rem;margin-bottom:0}.footer-subscribe-heading .blog-icon{display:none}.footer-subscribe-body{display:grid;gap:.56rem}.footer-subscribe-note{margin:0;color:color-mix(in srgb,var(--blog-muted) 88%,var(--blog-text-soft));font-size:.83rem;line-height:1.54}.footer-meta{display:flex;flex-wrap:wrap;align-items:center;align-content:flex-start;justify-content:flex-start;gap:.2rem .38rem;color:var(--blog-muted);font-size:.83rem;line-height:1.55}.footer-meta a{color:color-mix(in srgb,var(--blog-muted) 82%,var(--blog-text-soft));text-decoration:none}.footer-meta a:hover{color:var(--blog-accent)}.footer-meta-separator{display:none}.footer-meta-note{color:color-mix(in srgb,var(--blog-muted) 92%,var(--blog-text-soft))}.highlight{max-width:100%;isolation:isolate}.st-btn{cursor:pointer}@media(max-width:1180px){.topic-rail{grid-template-columns:repeat(3,minmax(0,1fr))}.blog-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-term-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.blog-featured-grid,.blog-term-grid{gap:.72rem}.blog-post-first{grid-template-columns:minmax(220px,.82fr)minmax(0,1fr)}.single-layout{grid-template-columns:minmax(0,1fr)}.blog-single-post-content{grid-column:1}.blog-aside{display:none}.blog-inline-toc{display:block}}@media(min-width:992px){.blog-nav-collapse{display:flex!important}}@media(max-width:991.98px){body.blog-nav-open{overflow:hidden}.blog-header{flex-wrap:nowrap;min-height:50px;padding-right:2.5rem;padding-top:.16rem;padding-bottom:.08rem}.blog-search-desktop{display:none}.blog-name-sub{display:none}.blog-nav-toggle{display:inline-flex;position:absolute;top:.14rem;right:.5rem;margin-left:0;width:38px;height:38px;border-radius:10px}.blog-nav-collapse{display:none;position:fixed;top:calc(var(--blog-mobile-nav-offset) + .24rem);left:.75rem;right:.75rem;z-index:70;width:auto;max-height:calc(100dvh - var(--blog-mobile-nav-offset) - .85rem);margin-left:0;padding:.42rem;border:1px solid color-mix(in srgb,var(--blog-chrome-border) 84%,transparent);border-radius:12px;background:color-mix(in srgb,var(--blog-surface) 96%,transparent);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 14px 30px color-mix(in srgb,var(--blog-text) 8%,transparent)}[data-nav-state=open] .blog-nav-collapse{display:block}.blog-nav-overlay{position:absolute;top:var(--blog-mobile-nav-offset);left:50%;z-index:50;display:block;width:100vw;height:calc(100dvh - var(--blog-mobile-nav-offset));border:0;padding:0;background:color-mix(in srgb,var(--blog-bg) 74%,transparent);opacity:0;pointer-events:none;transition:opacity .2s ease;backdrop-filter:blur(8px);transform:translateX(-50%)}[data-nav-state=open] .blog-nav-overlay{opacity:1;pointer-events:auto}.blog-main-menu{flex-direction:column;align-items:stretch;gap:.1rem;padding:0}.blog-nav-search-panel{display:flex;flex-direction:column;gap:.24rem;margin-bottom:.32rem;padding:.18rem .2rem .44rem;border-bottom:1px solid color-mix(in srgb,var(--blog-chrome-border) 78%,transparent)}.blog-nav-search-eyebrow{display:none}.blog-search-drawer{width:100%;margin-left:0}.blog-search-drawer input{min-height:38px;padding-right:6.15rem;border-radius:10px!important}.blog-search-drawer .blog-search-submit{right:.25rem;width:auto;min-width:4.95rem;padding:0 .72rem;gap:.28rem;border:1px solid color-mix(in srgb,var(--blog-text-soft) 18%,var(--blog-chrome-border));background:color-mix(in srgb,var(--blog-text) 88%,var(--blog-accent));color:var(--blog-bg)}.blog-search-drawer .blog-search-submit span{display:inline;font-size:.76rem;font-weight:660;letter-spacing:0}.blog-nav-search-note{display:none}.blog-menu-link{width:100%;justify-content:flex-start;min-height:42px;border-radius:10px;font-size:.9rem;padding-right:.82rem!important;padding-left:.82rem!important}.blog-menu-link[aria-current]:not([aria-current=false])::after{top:.65rem;right:auto;bottom:.65rem;left:.35rem;width:2px;height:auto}.topic-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.25rem;padding-top:1.5rem;padding-bottom:1.75rem}.footer-grid>:not(:first-child){padding-left:0;border-left:0}.footer-brand{grid-column:1/-1;margin-bottom:.1rem;padding-bottom:.78rem;border-bottom:1px solid color-mix(in srgb,var(--blog-chrome-border) 74%,transparent)}.footer-links{gap:.3rem}.footer-meta{grid-column:1/-1;padding-top:.12rem}}@media(max-width:768px){:root{--space-section:2rem;--space-article:1.5rem;--space-card:1rem;--blog-text-summary:.9rem}.taxonomy-breadcrumbs{padding-top:.12rem}.blog-breadcrumbs-nav{padding-top:.42rem}.breadcrumbs-item,.breadcrumbs-separator{font-size:.82rem}.blog-breadcrumbs-nav-article .breadcrumbs-item[aria-current=page],.blog-breadcrumbs-nav-article .breadcrumbs-item[aria-current=page]+.breadcrumbs-separator,.blog-breadcrumbs-nav-article .breadcrumbs-separator:has(+.breadcrumbs-item[aria-current=page]){display:none}.site-shell,.site-main{width:calc(100% - (var(--blog-shell-gutter-mobile) * 2));max-width:var(--blog-shell)}.site-main{padding-top:.9rem}.blog-page-header-home{padding-top:.72rem;padding-bottom:.78rem}.blog-page-header-home .blog-page-header-shell{grid-template-columns:1fr;gap:.44rem}.blog-page-header-home .blog-page-header-support{max-width:none;padding-bottom:0}.blog-page-header-support-card{max-width:none;padding:.5rem 0 0;border-left:0;border-top:1px solid color-mix(in srgb,var(--blog-border) 88%,transparent)}.blog-page-header-home .blog-category-title{max-width:22rem;font-size:clamp(1.5rem,6.9vw,2.12rem);line-height:1.14}.blog-page-header-home .blog-category-summary{margin-top:.56rem;font-size:.89rem;line-height:1.5}.home-topic-band{padding-top:.72rem;padding-bottom:.78rem}.topic-rail{align-items:baseline;gap:.46rem .58rem;margin-top:0}.topic-card{min-height:0;padding:0;border-top:0;gap:.24rem}.topic-card-title,.blog-featured-title,.blog-term-card-title{font-size:.92rem}.topic-card-summary,.blog-featured-summary,.blog-term-card-summary{font-size:.8rem;flex:none;-webkit-line-clamp:1;line-clamp:1}.topic-card-count,.blog-featured-meta,.blog-term-card-count{margin-top:0;padding-top:0;font-size:var(--blog-text-meta-sm)}.blog-post-first{grid-template-columns:1fr;gap:.85rem}.blog-post-card{padding:.98rem 0}.post-list-section.is-home .blog-grid-thumbnail{aspect-ratio:16/8}.blog-post-title{font-size:clamp(1rem,4.5vw,1.24rem);line-height:1.16;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.blog-post-summary{font-size:.89rem;line-height:1.58;-webkit-line-clamp:2;line-clamp:2}.blog-post-meta{padding-top:0;font-size:.77rem}.post-list-section{padding-top:.64rem}.post-list-section.is-home{padding-top:.76rem}.blog-list-intro{gap:.24rem;padding-bottom:.46rem}.blog-list-intro-title{font-size:.94rem}.blog-list-intro-summary{font-size:.84rem;line-height:1.48}.blog-featured-posts{padding-top:.56rem;padding-bottom:.68rem}.blog-featured-header{display:block;margin-bottom:.42rem}.blog-featured-heading{font-size:.98rem}.blog-featured-summary-intro{margin-top:.3rem;font-size:.84rem;line-height:1.48}.blog-taxonomy-header,.blog-page-header{padding:.66rem 0 .74rem}.blog-page-header-shell.has-support{grid-template-columns:1fr;gap:.36rem}.blog-page-header-support{align-items:flex-start;gap:.5rem;padding-bottom:0}.blog-category-title{font-size:clamp(1.48rem,6.6vw,1.94rem);line-height:1.14}.blog-category-summary{font-size:.88rem;line-height:1.5}.section-intro-children{gap:.5rem .56rem;font-size:.84rem}.section-intro-child-link{min-height:30px;padding:.24rem .58rem}.section-intro-child-count{font-size:.72rem}.blog-featured-grid,.blog-term-grid{gap:.62rem}.blog-featured-grid{grid-template-columns:1fr;gap:.42rem}.blog-featured-grid.has-lead{grid-template-columns:1fr}.blog-featured-side{gap:.42rem}.blog-featured-card{gap:.24rem;padding:.54rem 0 0}.blog-featured-card.is-featured-lead{padding:.54rem 0 0;gap:.24rem;grid-row:auto}.blog-featured-title{font-size:.92rem}.blog-featured-summary{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;font-size:.79rem;line-height:1.46}.blog-featured-meta{font-size:.73rem}.blog-term-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-inline-toc{margin-top:.04rem;margin-bottom:1rem;background:color-mix(in srgb,var(--blog-surface) 98%,transparent)}.blog-post-list.is-compact-list .blog-post-first{grid-template-columns:76px minmax(0,1fr);gap:.62rem}.blog-post-list.is-compact-list .blog-grid-thumbnail{aspect-ratio:4/3}.blog-post-list.is-compact-list .blog-post-card{padding:1rem 0 1.08rem}.blog-post-list.is-compact-list .blog-post-card-body{gap:.32rem}.blog-post-list.is-compact-list .blog-post-title{font-size:clamp(1rem,4.5vw,1.24rem);line-height:1.24;-webkit-line-clamp:3;line-clamp:3}.blog-post-list.is-compact-list .blog-post-meta{gap:.14rem .34rem;font-size:.74rem}.blog-post-list.is-compact-list .blog-post-meta i{font-size:.72rem}.blog-post-list.is-compact-list .blog-post-summary{font-size:.89rem;line-height:1.58;-webkit-line-clamp:2;line-clamp:2}.blog-inline-toc-summary{padding:.64rem .74rem}.blog-inline-toc-body{padding-right:.74rem;padding-left:.74rem}.blog-page-header-meta{justify-content:flex-start;gap:.24rem .48rem}.blog-page-header-meta span+span{margin-left:0;padding-left:.42rem}.blog-page-header-meta span+span::before{height:.68rem}.blog-page-header-children{justify-content:flex-start}.pagination{flex-wrap:wrap;justify-content:center;gap:.22rem}.page-item-status{display:block}.pagination .page-item:not(.page-item-nav):not(.page-item-status){display:none}.page-item .page-link{min-width:2.5rem;min-height:2.5rem;padding:0 .5rem;font-size:.84rem;border-radius:10px}.page-item-nav .page-link{min-width:2.5rem;padding:0 .56rem}.page-item-status .page-link{min-width:auto;padding:0 .78rem;font-size:.82rem}.page-link-label-long{display:none}.page-link-label-short{display:inline;font-size:.76rem}.blog-single-post-title{padding-bottom:.62rem;font-size:clamp(1.42rem,5.8vw,1.72rem);line-height:1.12}.blog-single-post-header{padding:.94rem 0 .9rem}.blog-single-meta,.blog-single-meta a{font-size:.8rem}.blog-single-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.42rem .8rem;align-items:start}.blog-single-meta-item{align-items:flex-start;gap:.08rem;white-space:normal;min-width:0;flex-direction:column}.blog-single-meta-item+.blog-single-meta-item{margin-left:0;padding-left:0}.blog-single-meta-item+.blog-single-meta-item::before{display:none}.blog-single-meta-item-category a{font-size:.8rem;font-weight:500}.blog-single-meta-item-author,.blog-single-meta-item-updated{display:none}.blog-single-meta-prefix{font-size:.78rem}.blog-single-meta-item-updated{width:auto}.blog-terms{margin-top:.18rem;gap:.28rem .36rem}.blog-terms-label{display:none}.blog-terms-list{gap:.35rem}.blog-terms-list a{min-height:32px;padding:.16rem .62rem;font-size:.8rem}.blog-single-post-content{width:100%;max-width:100%;min-width:0;padding-top:1.2rem}.single-header-inner,.blog-single-post-header,.single-layout,.blog-quick-summary{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.blog-single-post-content p,.blog-single-post-content li,.blog-quick-summary{overflow-wrap:anywhere}.blog-single-post-title{max-width:100%;min-width:0;overflow-wrap:break-word;word-break:normal;text-wrap:wrap}.blog-single-post-content p code,.blog-single-post-content li code,.blog-single-post-content td code,.blog-single-post-content th code,.blog-quick-summary code{padding:.04rem .22rem;border-color:color-mix(in srgb,var(--blog-border) 42%,transparent);border-radius:4px;background:color-mix(in srgb,var(--blog-surface-muted) 58%,var(--blog-surface));font-size:.86em}.blog-quick-summary p{line-height:1.56}.blog-quick-summary>.blog-quick-summary-label{padding-top:0;font-size:.78rem}.blog-quick-summary.in-single-header{display:grid;gap:.24rem;margin-top:.76rem;margin-bottom:0;padding:.72rem .8rem .76rem;border-radius:14px}.blog-figure-caption{max-width:none;font-size:.82rem;text-align:left}.footer-grid{grid-template-columns:1fr;gap:.7rem;padding-top:1.14rem;padding-bottom:1.16rem}.footer-grid>:not(:first-child){padding-top:.62rem;padding-left:0;border-top:1px solid color-mix(in srgb,var(--blog-chrome-border) 68%,transparent);border-left:0}.footer-brand{grid-column:1/-1;margin-bottom:0;padding-bottom:.08rem;gap:.38rem;border-bottom:0}.footer-logo-sub{display:none}.footer-brand-meta{font-size:var(--blog-text-meta-sm)}.footer-links{gap:.12rem}.footer-subscribe{gap:.54rem;padding:.52rem 0 0}.footer-links[aria-label=主要導覽]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.08rem .9rem;align-items:start}.footer-links[aria-label=主要導覽] .footer-heading{grid-column:1/-1}.footer-brand p{max-width:none;font-size:.85rem;line-height:1.54}.footer-links a,.footer-meta-note{min-height:2rem;font-size:.86rem}.footer-meta{display:flex;align-items:center;gap:.16rem .36rem;padding-top:.12rem;font-size:.82rem}.footer-meta a,.footer-meta-note{min-height:0}.footer-heading{margin-bottom:.08rem}.blog-table-wrap::before,.blog-table-wrap::after{width:1.6rem}.blog-table-wrap::before{left:0;right:auto;background:linear-gradient(to right,color-mix(in srgb,var(--blog-surface) 96%,transparent),transparent)}.blog-single-post-content th,.blog-single-post-content td{padding:.56rem .64rem;line-height:1.48}.blog-single-post-content .highlight>pre,.blog-single-post-content .highlight .chroma{padding:.78rem .82rem;font-size:.82rem;line-height:1.56}.blog-single-post-content .highlight .ln{display:none}.blog-table-wrap>table,.blog-single-post-content>table{width:max(100%,30rem)}.blog-table-wrap[data-cols="2"]>table,.blog-content-table[data-cols="2"]:not(.is-reference-table){width:max(100%,34rem);min-width:max-content;table-layout:auto}.blog-content-table[data-cols="2"]:not(.is-reference-table) th,.blog-content-table[data-cols="2"]:not(.is-reference-table) td{width:auto}.blog-content-table[data-cols="2"]:not(.is-reference-table) td:first-child,.blog-content-table[data-cols="2"]:not(.is-reference-table) th:first-child{min-width:16rem}.blog-content-table[data-cols="2"]:not(.is-reference-table) td:last-child,.blog-content-table[data-cols="2"]:not(.is-reference-table) th:last-child{min-width:9.5rem}.blog-content-table[data-cols="2"]:not(.is-reference-table) td code,.blog-content-table[data-cols="2"]:not(.is-reference-table) th code{display:inline-block;white-space:nowrap;overflow-wrap:normal;word-break:normal;font-size:.88em;line-height:1.42}.blog-content-table.is-reference-table{width:max(100%,34rem)}.blog-table-wrap[data-cols="2"]>.blog-content-table.is-reference-table{width:max(100%,34rem);min-width:max-content;table-layout:auto}.blog-content-table.is-reference-table[data-cols="2"] th,.blog-content-table.is-reference-table[data-cols="2"] td{width:auto}.blog-content-table.is-reference-table[data-cols="2"] td:first-child,.blog-content-table.is-reference-table[data-cols="2"] th:first-child{min-width:16rem;white-space:nowrap}.blog-content-table.is-reference-table[data-cols="2"] td:last-child,.blog-content-table.is-reference-table[data-cols="2"] th:last-child{min-width:9.5rem}.blog-content-table.is-reference-table[data-cols="2"] td code,.blog-content-table.is-reference-table[data-cols="2"] th code{display:inline-block;white-space:nowrap;overflow-wrap:normal;word-break:normal;font-size:.88em;line-height:1.42}.blog-post-prev-next-grid{grid-template-columns:1fr}.blog-single-post-content .blog-post-prev-next-card{min-height:0;padding:.9rem}.blog-author-box{gap:.9rem;padding:.92rem 0 0}.blog-author-box-avatar{width:60px;height:60px;max-width:60px}.blog-single-post-content .blog-author-box-name{font-size:.98rem}.blog-author-box-role{font-size:.82rem}.blog-author-box-description{font-size:.88rem;line-height:1.58}.blog-post-prev-next-card-next:only-child{grid-column:auto}.blog-post-prev-next-card-next{align-items:flex-start;text-align:left}.blog-post-prev-next-card-next .blog-post-prev-next-meta{justify-content:flex-start}.blog-author-box{grid-template-columns:1fr;gap:.82rem;padding:.96rem 0 0}.blog-author-box-avatar{width:56px;height:56px;max-width:56px}.blog-author-box-description{margin-bottom:.8rem;font-size:.92rem}.blog-author-links{gap:.42rem}.blog-author-links a{min-height:34px;font-size:.8rem}.blog-discussion-shell{padding:.96rem 0 0}.blog-single-disqus{margin-top:2.6rem}}@media(max-width:640px){.site-nav,.blog-header{min-height:48px}.blog-name{max-width:10rem;font-size:.96rem}.blog-search input{min-height:34px;padding-left:.92rem;padding-right:2.45rem;font-size:.86rem}.blog-search-submit{right:.24rem;width:28px;height:28px}.blog-search-drawer input{min-height:38px;padding-right:6rem}.blog-search-drawer .blog-search-submit{min-width:4.85rem;padding:0 .72rem}.blog-nav-toggle{width:36px;height:36px}.blog-nav-toggle-icon{width:16px;height:11px}.blog-category-title{font-size:1.56rem;line-height:1.14}.blog-section-title{font-size:1.68rem;line-height:1.14}.blog-category-summary{font-size:.96rem;line-height:1.72}.rss-copy-panel{grid-template-columns:1fr;gap:.58rem;padding:.68rem}.rss-copy-button{width:100%}.footer-heading{font-size:.76rem}}