.prose{min-width:0;color:var(--text-soft);font-size:1.0625rem;line-height:1.75}.prose>:first-child{margin-top:0}.prose p,.prose ul,.prose ol,.prose blockquote,.prose figure,.prose table{margin:0 0 1.35rem}.prose h2,.prose h3,.prose h4{color:var(--text);scroll-margin-top:5rem}.prose h2{margin:3rem 0 1rem;font-size:1.55rem;font-weight:700}.prose h2:before{content:"## ";font-family:var(--font-mono);color:var(--accent);opacity:.8;font-size:.8em;font-weight:500}.prose h3{margin:2.25rem 0 .75rem;font-size:1.25rem;font-weight:650}.prose h4{margin:2rem 0 .6rem;font-size:1.05rem}.prose .subhead{font-family:var(--font-mono);color:var(--muted);margin-top:-.6rem;font-size:.9rem}.prose strong{color:var(--text);font-weight:650}.prose a{color:var(--link);overflow-wrap:anywhere}.prose ul,.prose ol{padding-left:1.4rem}.prose li+li{margin-top:.35rem}.prose li::marker{color:var(--accent)}.prose blockquote{border-left:3px solid var(--accent);border-radius:0 var(--radius) var(--radius) 0;background:var(--accent-soft);color:var(--text);padding:.9rem 1.2rem;font-style:italic}.prose blockquote p:last-child{margin-bottom:0}.prose hr{background:var(--border);border:0;height:1px;margin:2.5rem 0}.prose img{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;margin:1.75rem auto;display:block}.prose figure img{margin-bottom:.6rem}.prose figcaption{text-align:center;color:var(--muted);font-size:.85rem}.prose .lost-image{border:1px dashed var(--border);border-radius:var(--radius);text-align:center;font-family:var(--font-mono);color:var(--muted);padding:1.5rem;font-size:.8rem}.prose table{border-collapse:collapse;width:100%;font-size:.92rem;display:block;overflow-x:auto}.prose th,.prose td{border-bottom:1px solid var(--border);text-align:left;padding:.5rem .75rem}.prose :not(pre)>code{background:var(--surface-2);border:1px solid var(--border);color:var(--text);overflow-wrap:anywhere;border-radius:5px;padding:.15em .4em;font-size:.85em}.prose pre{border-radius:var(--radius);border:1px solid var(--border);tab-size:4;margin:0 0 1.5rem;padding:1rem 1.15rem;font-size:.82rem;line-height:1.65;overflow-x:auto;background:var(--code-bg)!important}.prose .code-block{border:1px solid var(--border);border-radius:var(--radius);background:var(--code-bg);margin:0 0 1.5rem;overflow:hidden}.prose .code-block pre{border:0;border-radius:0;margin:0}.code-block__bar{border-bottom:1px solid var(--border);background:var(--surface-2);font-family:var(--font-mono);color:var(--muted);justify-content:space-between;align-items:center;padding:.35rem .5rem .35rem 1rem;font-size:.72rem;display:flex}.code-block__bar button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;padding:.25rem .6rem}.code-block__bar button:hover{color:var(--accent);border-color:var(--border);background:var(--surface)}.astro-code,.astro-code span{color:var(--shiki-light)}[data-theme=dark] .astro-code,[data-theme=dark] .astro-code span{color:var(--shiki-dark)}.prose .img-link{cursor:zoom-in;display:block}.post[data-astro-cid-z7xolria]{padding-top:3rem}.post__header[data-astro-cid-z7xolria],.series[data-astro-cid-z7xolria],.pager[data-astro-cid-z7xolria],.post__grid[data-astro-cid-z7xolria]{max-width:var(--measure);margin-left:auto;margin-right:auto}.crumbs[data-astro-cid-z7xolria]{color:var(--muted);white-space:nowrap;gap:.35rem;margin:0 0 1.25rem;font-size:.8rem;display:flex;overflow:hidden}.crumbs[data-astro-cid-z7xolria] a[data-astro-cid-z7xolria]{color:var(--accent);text-decoration:none}.crumbs__slug[data-astro-cid-z7xolria]{text-overflow:ellipsis;overflow:hidden}h1[data-astro-cid-z7xolria]{letter-spacing:-.03em;margin:0;font-size:clamp(1.9rem,4.2vw,2.75rem);font-weight:750}.meta[data-astro-cid-z7xolria]{color:var(--muted);flex-wrap:wrap;gap:.5rem;margin:1rem 0;font-size:.82rem;display:flex}.draft[data-astro-cid-z7xolria]{color:var(--amber)}.series[data-astro-cid-z7xolria]{border:1px solid var(--border);border-left:3px solid var(--amber);border-radius:var(--radius);background:var(--surface);margin-top:2rem;padding:1rem 1.25rem}.series__label[data-astro-cid-z7xolria]{color:var(--amber);margin:0 0 .4rem;font-size:.78rem}.series[data-astro-cid-z7xolria] ol[data-astro-cid-z7xolria]{margin:0;padding-left:1.25rem}.series[data-astro-cid-z7xolria] [data-astro-cid-z7xolria][aria-current]{font-weight:600}.post__grid[data-astro-cid-z7xolria]{margin-top:2.5rem}.toc[data-astro-cid-z7xolria]{display:none}@media (width>=1180px){.post--toc[data-astro-cid-z7xolria] .post__grid[data-astro-cid-z7xolria]{grid-template-columns:1fr minmax(0, var(--measure)) 1fr;gap:2.5rem;max-width:none;display:grid}.toc[data-astro-cid-z7xolria]{place-self:start end;width:100%;max-width:210px;font-size:.85rem;display:block;position:sticky;top:5.5rem}}.toc__label[data-astro-cid-z7xolria]{color:var(--muted);margin:0 0 .6rem;font-size:.75rem}.toc[data-astro-cid-z7xolria] ol[data-astro-cid-z7xolria]{border-left:1px solid var(--border);margin:0;padding:0;list-style:none}.toc[data-astro-cid-z7xolria] a[data-astro-cid-z7xolria]{color:var(--muted);border-left:2px solid #0000;margin-left:-1px;padding:.3rem 0 .3rem .85rem;line-height:1.4;text-decoration:none;display:block}.toc[data-astro-cid-z7xolria] a[data-astro-cid-z7xolria]:hover{color:var(--text)}.toc[data-astro-cid-z7xolria] a[data-astro-cid-z7xolria][aria-current]{color:var(--accent);border-left-color:var(--accent)}.pager[data-astro-cid-z7xolria]{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:1rem;margin-top:4rem;padding-top:2rem;display:grid}.pager__link[data-astro-cid-z7xolria]{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:.3rem;padding:1rem 1.1rem;text-decoration:none;transition:border-color .15s;display:flex}.pager__link[data-astro-cid-z7xolria]:hover{border-color:var(--accent)}.pager__link[data-astro-cid-z7xolria] .mono[data-astro-cid-z7xolria]{color:var(--muted);font-size:.75rem}.pager__title[data-astro-cid-z7xolria]{color:var(--text);font-weight:600;line-height:1.35}.pager__link--next[data-astro-cid-z7xolria]{text-align:right}@media (width<=560px){.pager[data-astro-cid-z7xolria]{grid-template-columns:1fr}.pager__link--next[data-astro-cid-z7xolria]{text-align:left}}
