@keyframes header-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.post-header-item[data-astro-cid-4sn4zg3r]{animation:header-rise .6s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--i, 0) * 80ms + .1s)}.post-body[data-astro-cid-4sn4zg3r]{animation:header-rise .7s cubic-bezier(.16,1,.3,1) both;animation-delay:.4s}.post-hero-img[data-astro-cid-4sn4zg3r]{transition:transform .7s cubic-bezier(.16,1,.3,1)}.post-hero-wrap[data-astro-cid-4sn4zg3r]:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 60% at 4% 4%,rgb(255 255 255 / .22),transparent 50%),radial-gradient(80% 50% at 96% 100%,rgb(255 255 255 / .12),transparent 55%);opacity:0;transition:opacity .6s var(--ease-out-expo, cubic-bezier(.16, 1, .3, 1))}.post-hero-wrap[data-astro-cid-4sn4zg3r]:hover:after{opacity:1}.post-hero-wrap[data-astro-cid-4sn4zg3r]:hover .post-hero-img[data-astro-cid-4sn4zg3r]{transform:scale(1.015)}@media(prefers-reduced-motion:reduce){.post-header-item[data-astro-cid-4sn4zg3r],.post-body[data-astro-cid-4sn4zg3r]{animation:none}.post-hero-img[data-astro-cid-4sn4zg3r]{transition:none}.post-hero-wrap[data-astro-cid-4sn4zg3r]:after{transition:none}}.prose code:before,.prose code:after{content:none}.prose hr{border-color:var(--color-border-subtle)}.prose blockquote{position:relative;overflow:hidden;border-inline-start-width:0;background-color:var(--color-surface-brand);border-radius:.875rem;padding:1.5rem 1.75rem;font-style:normal;font-weight:400;box-shadow:0 4px 16px -4px var(--color-shadow-ink-medium)}.prose blockquote:after{content:"“";position:absolute;top:-1.25rem;right:1.25rem;font-family:var(--font-display);font-size:9rem;line-height:1;color:#ffffff12;pointer-events:none;user-select:none}.prose blockquote p,.prose blockquote strong{color:var(--color-copy-on-brand)}.prose blockquote p:first-of-type:before,.prose blockquote p:last-of-type:after{content:none}.table-scroll{overflow:hidden;border-radius:.875rem;border:1px solid var(--color-border-subtle);box-shadow:0 1px 4px var(--color-shadow-ink-soft)}.table-scroll-inner{overflow-x:auto;-webkit-overflow-scrolling:touch}.prose table{display:table;width:100%;border-collapse:separate;border-spacing:0;font-size:.875rem;margin:0}.prose thead{background-color:var(--color-surface-brand)}.prose thead th{color:var(--color-copy-on-brand);font-family:var(--font-mono);font-size:.6875rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:.875rem 1.25rem;text-align:left;border-bottom:none}.prose tbody tr:nth-child(odd) td{background-color:var(--color-surface-card)}.prose tbody tr:nth-child(2n) td{background-color:var(--color-surface-page)}.prose tbody tr:hover td{background-color:var(--color-surface-section-deep);transition:background-color .15s ease}.prose tbody td{padding:.75rem 1.25rem;color:var(--color-copy-body);border-top:1px solid var(--color-border-subtle);vertical-align:top}.prose li{margin-top:.35em;margin-bottom:.35em}.prose h2:before{content:"";display:block;height:2px;width:2rem;background-color:var(--color-accent);border-radius:1px;margin-bottom:.625rem}.prose h3:before{content:"";display:inline-block;width:.3125rem;height:.3125rem;background-color:var(--color-accent);border-radius:50%;margin-right:.625rem;vertical-align:middle;translate:0 -.1em}.prose h2,.prose h3{position:relative}.heading-anchor{position:relative;display:inline-flex;align-items:center;justify-content:center;margin-left:.5rem;opacity:0;color:var(--color-copy-subtle);transition:opacity .15s ease,color .15s ease;text-decoration:none;vertical-align:middle;line-height:1}.prose h2:hover .heading-anchor,.prose h3:hover .heading-anchor,.heading-anchor:focus-visible{opacity:1}.heading-anchor:hover{color:var(--color-accent-emphasis)}.heading-anchor--copied{color:var(--color-feedback-success);opacity:1}.heading-anchor-tip{position:absolute;bottom:calc(100% + .375rem);left:50%;translate:-50% 0;background-color:var(--color-surface-inverse);color:var(--color-copy-on-brand);font-family:var(--font-mono);font-size:.625rem;letter-spacing:.04em;white-space:nowrap;padding:.2rem .45rem;border-radius:.3rem;opacity:0;pointer-events:none;transition:opacity .15s ease}.heading-anchor--copied .heading-anchor-tip{opacity:1}.post-share-bar{position:fixed;right:max(1.25rem,calc((100vw - 76rem)/2 - 4.5rem));top:50%;transform:translateY(-50%) translate(.75rem);display:none;flex-direction:column;gap:.375rem;z-index:40;opacity:0;transition:opacity .28s ease,transform .28s ease}@media(min-width:1024px){.post-share-bar{display:flex}}.post-share-bar.is-visible{opacity:1;transform:translateY(-50%) translate(0)}.share-btn{position:relative;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background-color:var(--color-surface-card);border:1px solid var(--color-border-subtle);color:var(--color-copy-body);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease;box-shadow:0 1px 3px var(--color-shadow-ink-soft)}.share-btn:hover{background-color:var(--color-surface-brand);color:var(--color-copy-on-brand);border-color:var(--color-surface-brand)}.share-btn--copied{background-color:var(--color-surface-brand);color:#fff;border-color:var(--color-feedback-success)}@media(max-width:767px){.prose h2{margin-top:1.75rem}.prose h3{margin-top:1.25rem}.prose h4{margin-top:1rem}}@media(prefers-reduced-motion:reduce){.post-share-bar,.heading-anchor,.heading-anchor-tip{transition:none}}
