.post-hero[data-astro-cid-4sn4zg3r]{background:var(--ghost);color:var(--title);padding:calc(74px + var(--s-9)) 0 var(--s-7);text-align:center}.post-hero[data-astro-cid-4sn4zg3r] .wrap[data-astro-cid-4sn4zg3r]{max-width:920px}.post-hero__crumb[data-astro-cid-4sn4zg3r]{display:inline-flex;align-items:center;gap:var(--s-2);color:var(--azure);font-family:var(--sans);font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;margin-bottom:var(--s-6);transition:opacity .2s;text-decoration:none}.post-hero__crumb[data-astro-cid-4sn4zg3r]:hover{opacity:.7}.post-hero__crumb[data-astro-cid-4sn4zg3r] svg[data-astro-cid-4sn4zg3r]{width:12px;height:12px}.post-hero[data-astro-cid-4sn4zg3r] h1[data-astro-cid-4sn4zg3r]{font-family:var(--sans);font-weight:700;font-size:clamp(36px,4.4vw,56px);line-height:1.1;letter-spacing:-.02em;margin:0 0 var(--s-4);color:var(--title)}.post-hero__lede[data-astro-cid-4sn4zg3r]{font-size:var(--fs-body);color:var(--subtitle);max-width:620px;margin:0 auto var(--s-7);line-height:var(--lh-body)}.post-hero__cover[data-astro-cid-4sn4zg3r]{max-width:920px;margin:0 auto;border-radius:var(--radius-card);overflow:hidden;aspect-ratio:16 / 9;background:linear-gradient(135deg,#1e88fd,#0d4a8e)}.post-hero__cover[data-astro-cid-4sn4zg3r] img[data-astro-cid-4sn4zg3r]{width:100%;height:100%;object-fit:cover;display:block}.post-hero__meta[data-astro-cid-4sn4zg3r]{display:flex;align-items:center;justify-content:center;gap:var(--s-4);flex-wrap:wrap;margin-top:var(--s-5);font-family:var(--sans);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--add);font-weight:500}.post-hero__copy[data-astro-cid-4sn4zg3r]{display:inline-flex;align-items:center;gap:var(--s-2);margin-top:var(--s-4);padding:var(--s-2) var(--s-4);background:transparent;border:0;cursor:pointer;font-family:var(--sans);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--title);font-weight:500;transition:color .2s}.post-hero__copy[data-astro-cid-4sn4zg3r]:hover{color:var(--azure)}.post-hero__copy[data-astro-cid-4sn4zg3r] svg[data-astro-cid-4sn4zg3r]{width:14px;height:14px}.post-hero__divider[data-astro-cid-4sn4zg3r]{max-width:920px;margin:var(--s-6) auto 0;border:0;border-top:1px solid var(--line-light)}.post-main[data-astro-cid-4sn4zg3r]{background:var(--ghost);color:var(--title);padding:var(--s-7) 0 var(--section-py)}.post-layout[data-astro-cid-4sn4zg3r]{display:grid;grid-template-columns:240px 1fr;gap:var(--s-7);max-width:1100px;margin:0 auto}.toc[data-astro-cid-4sn4zg3r]{position:sticky;top:calc(74px + var(--s-4));align-self:start;max-height:calc(100vh - 74px - var(--s-7));overflow-y:auto;padding:0 var(--s-3) 0 var(--s-3)}.toc__title[data-astro-cid-4sn4zg3r]{display:flex;align-items:center;gap:var(--s-2);font-family:var(--sans);font-size:13px;color:var(--add);font-weight:500;margin:0 0 var(--s-3)}.toc__title[data-astro-cid-4sn4zg3r] svg[data-astro-cid-4sn4zg3r]{width:14px;height:14px}.toc__list[data-astro-cid-4sn4zg3r]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--s-1)}.toc__item[data-astro-cid-4sn4zg3r] a[data-astro-cid-4sn4zg3r]{display:flex;align-items:center;gap:var(--s-2);padding:6px 0 6px var(--s-4);font-family:var(--sans);font-size:13.5px;line-height:1.4;color:var(--subtitle);text-decoration:none;position:relative;transition:color .2s}.toc__item--h3[data-astro-cid-4sn4zg3r] a[data-astro-cid-4sn4zg3r]{padding-left:var(--s-6);font-size:13px;color:var(--add)}.toc__item[data-astro-cid-4sn4zg3r] a[data-astro-cid-4sn4zg3r]:before{content:"";position:absolute;left:0;top:50%;width:10px;height:10px;border-radius:50%;background:transparent;border:1.5px solid var(--line-light);transform:translateY(-50%);transition:border-color .2s,box-shadow .2s}.toc__item[data-astro-cid-4sn4zg3r] a[data-astro-cid-4sn4zg3r]:hover{color:var(--title)}.toc__item[data-astro-cid-4sn4zg3r] a[data-astro-cid-4sn4zg3r]:hover:before{border-color:var(--add)}.toc__item[data-astro-cid-4sn4zg3r] a[data-astro-cid-4sn4zg3r].active{color:var(--azure);font-weight:500}.toc__item[data-astro-cid-4sn4zg3r] a[data-astro-cid-4sn4zg3r].active:before{background:transparent;border-color:var(--azure);border-width:2px;box-shadow:0 0 10px #1e88fd73,0 0 0 3px #1e88fd1f}.post-article[data-astro-cid-4sn4zg3r]{min-width:0;font-family:var(--sans);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--title)}.related[data-astro-cid-4sn4zg3r]{background:var(--ghost);padding:var(--section-py) 0;border-top:1px solid var(--line-light)}.related[data-astro-cid-4sn4zg3r] h2[data-astro-cid-4sn4zg3r]{font-family:var(--sans);font-weight:700;font-size:var(--fs-subtitle);letter-spacing:var(--ls-subtitle);color:var(--title);margin:0 0 var(--s-6)}.related__grid[data-astro-cid-4sn4zg3r]{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-5)}.post-card[data-astro-cid-4sn4zg3r]{display:flex;flex-direction:column;gap:var(--s-4);text-decoration:none;color:inherit;transition:transform .25s ease}.post-card[data-astro-cid-4sn4zg3r]:hover{transform:translateY(-2px)}.post-card__cover[data-astro-cid-4sn4zg3r]{display:block;aspect-ratio:1200 / 630;border-radius:var(--radius-card);overflow:hidden;background:var(--ink)}.post-card__cover[data-astro-cid-4sn4zg3r] img[data-astro-cid-4sn4zg3r]{width:100%;height:100%;object-fit:cover;display:block}.post-card__title[data-astro-cid-4sn4zg3r]{font-family:var(--sans);font-weight:500;font-size:24px;line-height:1.5;letter-spacing:-1px;color:var(--title);margin:0}@media(max-width:900px){.post-layout[data-astro-cid-4sn4zg3r]{grid-template-columns:1fr}.toc[data-astro-cid-4sn4zg3r]{display:none}.related__grid[data-astro-cid-4sn4zg3r]{grid-template-columns:1fr}}.post-article>*+*{margin-top:var(--s-5)}.post-article h2{font-family:var(--sans);font-weight:700;font-size:var(--fs-lead);line-height:1.3;margin:var(--s-6) 0 var(--s-3);scroll-margin-top:calc(74px + var(--s-5));color:var(--title)}.post-article h3{font-family:var(--sans);font-weight:600;font-size:var(--fs-body);line-height:1.35;margin:var(--s-5) 0 var(--s-3);scroll-margin-top:calc(74px + var(--s-5));color:var(--title)}.post-article h2:first-child,.post-article h3:first-child{margin-top:0}.post-article p{font-size:var(--fs-body);line-height:1.7;color:var(--subtitle);margin:0}.post-article a{color:var(--azure);text-decoration:underline;text-underline-offset:3px;text-decoration-color:#1e88fd66}.post-article a:hover{text-decoration-color:var(--azure)}.post-article strong{color:var(--title);font-weight:600}.post-article em{font-style:italic;font-weight:inherit;color:inherit}.post-article ul,.post-article ol{padding-left:var(--s-5);color:var(--subtitle);line-height:1.7}.post-article li+li{margin-top:var(--s-2)}.post-article ul li::marker{color:var(--azure)}.post-article ol li::marker{color:var(--azure);font-weight:600}.post-article img{width:100%;max-width:100%;margin:var(--s-6) 0;border-radius:var(--radius-card);display:block}.post-article blockquote{position:relative;margin:var(--s-6) 0;padding:var(--s-4) var(--s-5) var(--s-4) calc(var(--s-7) + var(--s-2));background:linear-gradient(90deg,#1e88fd12,#1e88fd00);border-left:3px solid var(--azure);border-radius:0 var(--radius-card) var(--radius-card) 0;color:var(--title);font-style:italic;font-size:var(--fs-lead);line-height:1.55}.post-article blockquote:before{content:"“";position:absolute;top:2px;left:var(--s-4);font-family:Georgia,Times New Roman,serif;font-style:normal;font-size:64px;line-height:1;color:var(--azure);opacity:.35;pointer-events:none}.post-article blockquote>p{margin:0;color:inherit;font-size:inherit;line-height:inherit}.post-article blockquote>p+p{margin-top:var(--s-3)}.post-article blockquote cite,.post-article blockquote footer{display:block;margin-top:var(--s-3);font-style:normal;font-size:var(--fs-meta);letter-spacing:.08em;text-transform:uppercase;color:var(--add);font-weight:500}.post-article code{font-family:ui-monospace,SFMono-Regular,Menlo,Cascadia Mono,Consolas,monospace;font-size:.88em;padding:2px 6px;border-radius:6px;background:#1e88fd14;color:var(--azure);border:1px solid rgba(30,136,253,.16);letter-spacing:-.005em}.post-article pre,.post-article pre.astro-code{position:relative;margin:var(--s-6) 0;padding:calc(var(--s-5) + 36px) var(--s-5) var(--s-5)!important;background:#0e1421!important;color:#d6e0ee!important;border:1px solid rgba(250,250,250,.08);border-radius:var(--radius-card);overflow:hidden;font-family:ui-monospace,SFMono-Regular,Menlo,Cascadia Mono,Consolas,monospace;font-size:13.5px;line-height:1.65;box-shadow:0 1px #ffffff0f inset,0 24px 48px -28px #0b12228c}.post-article pre:before{content:"";position:absolute;top:0;left:0;right:0;height:36px;background:#1e88fd0f;border-bottom:1px solid rgba(250,250,250,.08)}.post-article pre:after{content:"";position:absolute;top:13px;left:18px;width:11px;height:11px;border-radius:50%;background:var(--azure);box-shadow:20px 0 #fafafa59,40px 0 #fafafa38,0 0 12px #1e88fd99}.post-article pre>code{display:block;white-space:pre-wrap;overflow-wrap:anywhere;tab-size:2}.post-article pre code{background:transparent!important;border:0!important;padding:0!important;color:inherit!important;font-size:inherit!important}.post-article hr{margin:var(--s-7) 0;border:0;border-top:1px solid var(--line-light)}.post-article table{width:100%;border-collapse:separate;border-spacing:0;margin:var(--s-6) 0;background:var(--card-bg);border:1px solid var(--line-light);border-radius:var(--radius-card);overflow:hidden;font-size:var(--fs-body-sm);box-shadow:0 1px #0b12220a,0 12px 28px -20px #0b12221a}.post-article thead{background:var(--ink)}.post-article thead th{padding:var(--s-3) var(--s-4);text-align:left;font-family:var(--sans);font-weight:600;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ghost);border-bottom:2px solid var(--azure);white-space:nowrap}.post-article tbody td{padding:var(--s-3) var(--s-4);text-align:left;vertical-align:top;border-bottom:1px solid var(--line-light);color:var(--subtitle);line-height:1.55}.post-article tbody td:first-child{font-weight:500;color:var(--title)}.post-article tbody tr:nth-child(2n) td{background:#1e88fd06}.post-article tbody tr:hover td{background:#1e88fd0d}.post-article tbody tr:last-child td{border-bottom:0}.post-article table caption{caption-side:bottom;margin-top:var(--s-3);font-size:var(--fs-meta);color:var(--add);text-align:left}@media(max-width:600px){.post-article table{font-size:13px}.post-article thead th,.post-article tbody td{padding:var(--s-2) var(--s-3)}.post-article blockquote{padding-left:calc(var(--s-6) + var(--s-2));font-size:var(--fs-body)}.post-article blockquote:before{font-size:48px}}
