.toc[data-astro-cid-xvrfupwn]{position:sticky;top:96px;max-height:calc(100vh - 120px);overflow-y:auto;padding:20px;border:1px solid var(--color-em-border-2);border-radius:var(--radius-lg);background:#12121566;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.toc-label[data-astro-cid-xvrfupwn]{font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--color-em-fg-5);margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--color-em-border-1)}ol[data-astro-cid-xvrfupwn]{list-style:none;display:flex;flex-direction:column;gap:2px;margin-bottom:14px}li[data-astro-cid-xvrfupwn] a[data-astro-cid-xvrfupwn]{display:block;font-size:13px;color:var(--color-em-fg-4);padding:5px 8px;border-radius:var(--radius-sm);transition:color .2s,background .2s;line-height:1.4}li[data-astro-cid-xvrfupwn] a[data-astro-cid-xvrfupwn]:hover{color:var(--color-em-fg-1);background:#ffffff0a}li[data-astro-cid-xvrfupwn].h3 a[data-astro-cid-xvrfupwn]{padding-left:20px;font-size:12px}li[data-astro-cid-xvrfupwn] a[data-astro-cid-xvrfupwn].active{color:var(--color-em-brand)}.toc-progress[data-astro-cid-xvrfupwn]{margin-top:14px;padding-top:14px;border-top:1px dashed var(--color-em-border-2);display:flex;flex-direction:column;gap:6px}.progress-label[data-astro-cid-xvrfupwn]{font-family:var(--font-mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--color-em-fg-5)}.progress-bar[data-astro-cid-xvrfupwn]{height:2px;background:var(--color-em-border-2);border-radius:9999px;overflow:hidden}.progress-fill[data-astro-cid-xvrfupwn]{height:100%;background:var(--color-em-brand);width:0%;transition:width .1s linear}.reading-progress-bar[data-astro-cid-zm77yjld]{position:fixed;top:0;left:0;height:2px;width:0%;background:var(--color-em-brand);z-index:200;transition:width .1s linear;box-shadow:0 0 8px var(--color-em-brand-soft)}.back-link[data-astro-cid-zm77yjld]{display:inline-block;padding-top:100px;padding-bottom:24px;font-family:var(--font-mono);font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--color-em-fg-4);text-decoration:none;transition:color .2s}.back-link[data-astro-cid-zm77yjld]:hover{color:var(--color-em-fg-1)}.hero-section[data-astro-cid-zm77yjld]{display:flex;flex-direction:column;gap:32px}.cover-wrap[data-astro-cid-zm77yjld]{width:100%;aspect-ratio:21 / 9;overflow:hidden;border-radius:var(--radius-xl)}.cover-img[data-astro-cid-zm77yjld]{width:100%;height:100%;object-fit:cover;object-position:center}.hero-content[data-astro-cid-zm77yjld]{text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.hero-content[data-astro-cid-zm77yjld].no-cover{padding-top:32px}.hero-meta[data-astro-cid-zm77yjld]{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;color:var(--color-em-fg-4);letter-spacing:.15em}.hero-cat[data-astro-cid-zm77yjld]{color:var(--color-em-brand);text-decoration:none;transition:opacity .2s}.hero-cat[data-astro-cid-zm77yjld]:hover{opacity:.8}.hero-sep[data-astro-cid-zm77yjld]{color:var(--color-em-fg-5)}.hero-content[data-astro-cid-zm77yjld] h1[data-astro-cid-zm77yjld]{font-family:var(--font-display);font-weight:900;font-size:clamp(40px,4.5vw,54px);line-height:1.05;letter-spacing:-.03em;color:var(--color-em-fg-1);text-wrap:balance;max-width:18ch;margin:0}.hero-desc[data-astro-cid-zm77yjld]{font-size:18px;color:var(--color-em-fg-3);line-height:1.5;max-width:38ch;margin:0;text-wrap:pretty}.tags-row[data-astro-cid-zm77yjld]{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.divider-dashed[data-astro-cid-zm77yjld]{margin-top:64px;border-top:1px dashed var(--color-em-border-2);margin-bottom:48px}.article-body[data-astro-cid-zm77yjld]{display:grid;grid-template-columns:240px 1fr;gap:64px;align-items:start;padding-bottom:80px;position:relative}.article-body[data-astro-cid-zm77yjld]:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,#1212154d,#12121580 15%,#12121599,#12121580 85%,#1212154d);z-index:0}.article-body[data-astro-cid-zm77yjld]>[data-astro-cid-zm77yjld]{position:relative;z-index:1}.toc-col[data-astro-cid-zm77yjld]{display:block}.author-cta[data-astro-cid-zm77yjld]{max-width:680px;margin:0 auto 64px;padding:24px;border:1px solid var(--color-em-border-2);border-radius:var(--radius-xl);background:var(--color-em-surface);display:flex;align-items:center;gap:20px}.author-avatar[data-astro-cid-zm77yjld]{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--color-em-border-3),var(--color-em-border-1));flex-shrink:0}.author-info[data-astro-cid-zm77yjld]{flex:1;display:flex;flex-direction:column;gap:4px}.author-info[data-astro-cid-zm77yjld] strong[data-astro-cid-zm77yjld]{font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--color-em-fg-1)}.author-info[data-astro-cid-zm77yjld] p[data-astro-cid-zm77yjld]{font-size:13px;color:var(--color-em-fg-3);margin:0;line-height:1.5}.related-section[data-astro-cid-zm77yjld]{padding-bottom:80px}.related-grid[data-astro-cid-zm77yjld]{display:grid;gap:16px;margin-top:24px}.related-card[data-astro-cid-zm77yjld]{border-radius:var(--radius-xl)!important}.related-body[data-astro-cid-zm77yjld]{padding:24px;display:flex;flex-direction:column;gap:10px}.related-card[data-astro-cid-zm77yjld] h4[data-astro-cid-zm77yjld]{font-family:var(--font-display);font-weight:700;font-size:17px;line-height:1.3;color:var(--color-em-fg-1);transition:color .2s}.related-card[data-astro-cid-zm77yjld]:hover h4[data-astro-cid-zm77yjld]{color:var(--color-em-brand)}.related-card[data-astro-cid-zm77yjld] p[data-astro-cid-zm77yjld]{font-size:13px;color:var(--color-em-fg-3);line-height:1.5}.prose-em[data-astro-cid-zm77yjld]{font-family:var(--font-display);font-weight:300;font-size:17px;line-height:1.7;color:var(--color-em-fg-2);max-width:72ch}.prose-em[data-astro-cid-zm77yjld] h2{font-family:var(--font-display);font-weight:700;font-size:clamp(28px,2.2vw,32px);line-height:1.2;color:var(--color-em-fg-1);margin-top:48px;margin-bottom:20px;scroll-margin-top:120px}.prose-em[data-astro-cid-zm77yjld] h3{font-family:var(--font-display);font-weight:600;font-size:clamp(20px,1.5vw,24px);line-height:1.3;color:var(--color-em-fg-1);margin-top:36px;margin-bottom:16px;scroll-margin-top:120px}.prose-em[data-astro-cid-zm77yjld] h4{font-weight:600;font-size:16px;color:var(--color-em-fg-1);margin-top:24px;margin-bottom:12px}.prose-em[data-astro-cid-zm77yjld] p{margin:0 0 20px}.prose-em[data-astro-cid-zm77yjld] p:last-child{margin-bottom:0}.prose-em[data-astro-cid-zm77yjld] ul,.prose-em[data-astro-cid-zm77yjld] ol{margin:20px 0;padding-left:28px}.prose-em[data-astro-cid-zm77yjld] li{margin-bottom:8px;color:var(--color-em-fg-2);line-height:1.7}.prose-em[data-astro-cid-zm77yjld] ul li{list-style-type:disc}.prose-em[data-astro-cid-zm77yjld] ol li{list-style-type:decimal}.prose-em[data-astro-cid-zm77yjld] li strong{color:var(--color-em-fg-1);font-weight:600}.prose-em[data-astro-cid-zm77yjld] blockquote{margin:28px 0;padding:20px 24px;border-left:2px solid var(--color-em-brand);background:#dcf05d0a;border-radius:0 var(--radius-md) var(--radius-md) 0}.prose-em[data-astro-cid-zm77yjld] blockquote p{font-style:italic;font-size:16px;color:var(--color-em-fg-3);margin:0;line-height:1.6}.prose-em[data-astro-cid-zm77yjld] blockquote p+p{margin-top:12px}.prose-em[data-astro-cid-zm77yjld] blockquote strong{color:var(--color-em-fg-2);font-weight:500}.prose-em[data-astro-cid-zm77yjld] code:not(pre code){font-family:var(--font-mono);font-size:14px;background:#ffffff0f;border:1px solid var(--color-em-border-2);border-radius:4px;padding:2px 6px;color:var(--color-em-fg-2)}.prose-em[data-astro-cid-zm77yjld] pre{margin:28px 0;overflow-x:auto;border:1px solid var(--color-em-border-2);border-radius:var(--radius-lg);background:#12121580;padding:16px}.prose-em[data-astro-cid-zm77yjld] pre code{font-family:var(--font-mono);font-size:13px;line-height:1.6;color:var(--color-em-fg-2);background:none;border:none;padding:0}.prose-em[data-astro-cid-zm77yjld] hr{margin:48px 0;border:none;border-top:1px dashed var(--color-em-border-2)}.prose-em[data-astro-cid-zm77yjld] table{width:100%;margin:28px 0;border-collapse:collapse;font-size:14px}.prose-em[data-astro-cid-zm77yjld] th{text-align:left;font-weight:600;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:12px 16px;border-bottom:2px solid var(--color-em-border-2);background:#ffffff08;color:var(--color-em-fg-3)}.prose-em[data-astro-cid-zm77yjld] td{padding:12px 16px;border-bottom:1px solid var(--color-em-border-1);color:var(--color-em-fg-2)}.prose-em[data-astro-cid-zm77yjld] tr:last-child td{border-bottom:none}.prose-em[data-astro-cid-zm77yjld] a{color:var(--color-em-brand);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}.prose-em[data-astro-cid-zm77yjld] a:hover{border-bottom-color:var(--color-em-brand)}.prose-em[data-astro-cid-zm77yjld] strong{color:var(--color-em-fg-1);font-weight:600}.prose-em[data-astro-cid-zm77yjld] em{font-style:italic;color:var(--color-em-fg-2)}.prose-em[data-astro-cid-zm77yjld] .callout{margin:28px 0}.prose-em[data-astro-cid-zm77yjld] figure{margin:28px 0;text-align:center}.prose-em[data-astro-cid-zm77yjld] figcaption{font-size:13px;color:var(--color-em-fg-4);margin-top:12px;font-style:italic}@media(max-width:960px){.article-body[data-astro-cid-zm77yjld]{grid-template-columns:1fr}.toc-col[data-astro-cid-zm77yjld]{display:none}.cover-wrap[data-astro-cid-zm77yjld]{aspect-ratio:16 / 9}}@media(max-width:640px){.back-link[data-astro-cid-zm77yjld]{padding-top:80px}.hero-content[data-astro-cid-zm77yjld] h1[data-astro-cid-zm77yjld]{font-size:clamp(32px,8vw,44px)}.hero-desc[data-astro-cid-zm77yjld]{font-size:16px}.author-cta[data-astro-cid-zm77yjld]{flex-wrap:wrap}.author-cta[data-astro-cid-zm77yjld] .btn[data-astro-cid-zm77yjld]{width:100%;justify-content:center}.prose-em[data-astro-cid-zm77yjld] h2{margin-top:36px;font-size:clamp(24px,6vw,28px)}.prose-em[data-astro-cid-zm77yjld] h3{margin-top:24px;font-size:clamp(18px,5vw,20px)}.prose-em[data-astro-cid-zm77yjld] blockquote{padding:16px 20px}.prose-em[data-astro-cid-zm77yjld] pre{padding:12px;font-size:12px}}
