.progress[data-astro-cid-7jjqptxk]{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent);transform-origin:left;transform:scaleX(0)}@supports (animation-timeline: scroll()){.progress[data-astro-cid-7jjqptxk]{animation:progress linear both;animation-timeline:scroll(root)}}@keyframes progress{to{transform:scaleX(1)}}.post-head[data-astro-cid-7jjqptxk]{display:flex;flex-direction:column;gap:22px;padding-top:88px;padding-bottom:56px}.post-head[data-astro-cid-7jjqptxk]>[data-astro-cid-7jjqptxk]{max-width:820px}.tags[data-astro-cid-7jjqptxk]{display:flex;flex-wrap:wrap;gap:8px}h1[data-astro-cid-7jjqptxk]{font-size:clamp(40px,5.5vw,68px);line-height:1.04}.subtitle[data-astro-cid-7jjqptxk]{font-size:22px;line-height:1.5;color:var(--muted)}.meta[data-astro-cid-7jjqptxk]{font-size:14px;color:var(--faint)}.summary[data-astro-cid-7jjqptxk]{display:flex;flex-direction:column;gap:28px;margin-bottom:72px;padding:40px;border-color:var(--line-3);background:radial-gradient(120% 160% at 0% 0%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 50%),var(--surface)}.summary[data-astro-cid-7jjqptxk] ul[data-astro-cid-7jjqptxk]{display:flex;flex-direction:column;gap:8px;max-width:820px;margin:12px 0 0;padding-left:20px;font-size:18px}.stats[data-astro-cid-7jjqptxk]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:24px;margin:0;padding-top:28px;border-top:1px solid var(--line-2)}.summary[data-astro-cid-7jjqptxk]>.stats[data-astro-cid-7jjqptxk]:first-child{padding-top:0;border-top:0}.stats[data-astro-cid-7jjqptxk] dt[data-astro-cid-7jjqptxk]{font:600 40px/1.1 var(--display);color:var(--strong)}.stats[data-astro-cid-7jjqptxk] dd[data-astro-cid-7jjqptxk]{margin:0;font-size:15px;color:var(--muted)}.body[data-astro-cid-7jjqptxk]{display:grid;grid-template-columns:240px minmax(0,1fr);gap:72px;padding-bottom:120px}.toc[data-astro-cid-7jjqptxk]{position:sticky;top:104px;align-self:start}.toc[data-astro-cid-7jjqptxk] p[data-astro-cid-7jjqptxk]{margin-bottom:8px;font:12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.toc[data-astro-cid-7jjqptxk] nav[data-astro-cid-7jjqptxk]{display:flex;flex-direction:column;padding-left:16px;border-left:1px solid var(--line-2)}.toc[data-astro-cid-7jjqptxk] a[data-astro-cid-7jjqptxk]{display:flex;gap:10px;align-items:baseline;padding:6px 0;color:var(--muted);text-decoration:none;font-size:14px}.toc[data-astro-cid-7jjqptxk] a[data-astro-cid-7jjqptxk]:hover{color:var(--strong)}.toc[data-astro-cid-7jjqptxk] .mono[data-astro-cid-7jjqptxk]{font-size:12px;color:var(--faint)}.body[data-astro-cid-7jjqptxk]:not(:has(.toc)){grid-template-columns:minmax(0,1fr)}.article-col[data-astro-cid-7jjqptxk]{max-width:720px;display:flex;flex-direction:column;gap:64px}.next[data-astro-cid-7jjqptxk]{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:28px 32px;text-decoration:none;font-size:22px;color:var(--accent-ink)}.next[data-astro-cid-7jjqptxk]>span[data-astro-cid-7jjqptxk]:first-child{display:flex;flex-direction:column;gap:4px}.next-title[data-astro-cid-7jjqptxk]{font:600 22px var(--display);color:var(--strong)}.prose[data-astro-cid-7jjqptxk]{counter-reset:section;font-size:18px;line-height:1.75;color:var(--text-2)}.prose[data-astro-cid-7jjqptxk]>*+*{margin-top:1.25em}.prose[data-astro-cid-7jjqptxk] h2{counter-increment:section;margin-top:2.6em;font-size:34px;line-height:1.15;scroll-margin-top:96px}.prose[data-astro-cid-7jjqptxk] h2:before{content:counter(section,decimal-leading-zero) " —";display:block;margin-bottom:14px;font:500 13px var(--mono);letter-spacing:0;color:var(--accent-ink)}.prose[data-astro-cid-7jjqptxk] h2:first-child{margin-top:0}.prose[data-astro-cid-7jjqptxk] h3{margin-top:2em;font-size:24px}.prose[data-astro-cid-7jjqptxk] p,.prose[data-astro-cid-7jjqptxk] li{margin:0}.prose[data-astro-cid-7jjqptxk] strong{color:var(--strong)}.prose[data-astro-cid-7jjqptxk] a{color:var(--accent-ink);text-underline-offset:.15em}.prose[data-astro-cid-7jjqptxk] ul,.prose[data-astro-cid-7jjqptxk] ol:not(.flow){padding-left:1.3em}.prose[data-astro-cid-7jjqptxk] li+li{margin-top:.4em}.prose[data-astro-cid-7jjqptxk] blockquote{margin:2em 0 0;padding:28px 0;border-top:1px solid var(--line-3);border-bottom:1px solid var(--line-3);font:500 30px/1.25 var(--display);color:var(--strong)}.prose[data-astro-cid-7jjqptxk] code{font:.88em var(--mono);background:var(--chip);padding:.12em .35em;border-radius:5px}.prose[data-astro-cid-7jjqptxk] pre{padding:20px 22px;border:1px solid var(--line-2);border-radius:14px;overflow-x:auto;font-size:15px;line-height:1.6}.prose[data-astro-cid-7jjqptxk] pre code{background:none;padding:0}[data-theme=dark] .prose[data-astro-cid-7jjqptxk] .astro-code,[data-theme=dark] .prose[data-astro-cid-7jjqptxk] .astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important}.prose[data-astro-cid-7jjqptxk] table{width:100%;border-collapse:collapse;font-size:16px;display:block;overflow-x:auto;border:1px solid var(--line-2);border-radius:14px}.prose[data-astro-cid-7jjqptxk] th{padding:14px 18px;text-align:left;background:var(--surface);color:var(--muted);font:600 13px var(--mono);text-transform:uppercase;letter-spacing:.06em}.prose[data-astro-cid-7jjqptxk] td{padding:14px 18px;border-top:1px solid var(--line-2)}.prose[data-astro-cid-7jjqptxk] td:first-child{color:var(--strong);font-weight:500}.prose[data-astro-cid-7jjqptxk] img{border-radius:14px}.prose[data-astro-cid-7jjqptxk] .callout{padding:20px 24px 20px 56px;border-radius:14px;background:var(--surface);border:1px solid var(--line-2);font-size:16px;position:relative}.prose[data-astro-cid-7jjqptxk] .callout:before{position:absolute;left:22px;top:19px;font:600 16px var(--mono)}.prose[data-astro-cid-7jjqptxk] .callout.note:before{content:"i";color:var(--accent-ink)}.prose[data-astro-cid-7jjqptxk] .callout.tip:before{content:"→";color:var(--accent-ink)}.prose[data-astro-cid-7jjqptxk] .callout.warning:before{content:"!";color:var(--warn)}.prose[data-astro-cid-7jjqptxk] .flow{display:flex;align-items:stretch;gap:28px;margin:2em 0 0;padding:28px;list-style:none;border-radius:16px;background:var(--bg-alt);border:1px solid var(--line-2);counter-reset:none}.prose[data-astro-cid-7jjqptxk] .flow li{flex:1;position:relative;margin:0;padding:14px 12px;border-radius:10px;background:var(--surface);border:1px solid var(--line-3);text-align:center;font-size:14px;line-height:1.35;color:var(--text)}.prose[data-astro-cid-7jjqptxk] .flow li+li:before{content:"→";position:absolute;left:-22px;top:50%;transform:translateY(-50%);color:var(--faint)}.prose[data-astro-cid-7jjqptxk] .flow li.hot{background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-color:var(--accent);color:var(--strong);font-weight:500}@media(max-width:960px){.body[data-astro-cid-7jjqptxk]{grid-template-columns:1fr}.toc[data-astro-cid-7jjqptxk]{display:none}.summary[data-astro-cid-7jjqptxk]{padding:28px}.prose[data-astro-cid-7jjqptxk] .flow{flex-direction:column;gap:24px}.prose[data-astro-cid-7jjqptxk] .flow li+li:before{content:"↓";left:50%;top:-20px;transform:translate(-50%)}}
