.post-title{color:var(--text);letter-spacing:-.028em;text-wrap:balance;font-size:clamp(2.125rem,1.6rem + 1.8vw,3rem);font-weight:800;line-height:1.08}.markdown{color:var(--text-body);overflow-wrap:break-word;font-size:18px;line-height:1.7}@media (max-width:640px){.markdown{font-size:17px}}.markdown :where(h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--text);text-wrap:balance}.markdown :where(h2):not(:where(.not-prose,.not-prose *)){letter-spacing:-.022em;margin:2.6em 0 .7em;font-size:clamp(1.625rem,1.4rem + .8vw,2rem);font-weight:700;line-height:1.18}.markdown :where(h3):not(:where(.not-prose,.not-prose *)){letter-spacing:-.01em;margin:2em 0 .6em;font-size:clamp(1.25rem,1.15rem + .4vw,1.4rem);font-weight:600;line-height:1.3}.markdown :where(h4,h5,h6):not(:where(.not-prose,.not-prose *)){margin:1.8em 0 .5em;font-size:1.125rem;font-weight:600}.markdown>:where(h2,h3):first-child{margin-top:0}.markdown :where(a.anchor){color:inherit;text-decoration:none}.markdown :where(a.anchor):after{content:"#";content:"#" / "";font-family:var(--font-mono), "JetBrains Mono Fallback", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;color:var(--purple-text);opacity:0;transition:opacity var(--dur-hover) var(--ease-out);margin-left:.35em;font-weight:500}.markdown :where(a.anchor):hover:after,.markdown :where(a.anchor):focus-visible:after{opacity:1}@media (hover:none){.markdown :where(a.anchor):after{opacity:.45}}.markdown :where(p,ul,ol,pre,table,blockquote):not(:where(.not-prose,.not-prose *)){margin:0 0 1.35em}.markdown :where(a:not([class])):not(:where(.not-prose *)){color:var(--purple-text);text-decoration:underline;-webkit-text-decoration-color:var(--purple-line);text-decoration-color:var(--purple-line);text-underline-offset:3px;transition:color var(--dur-hover), text-decoration-color var(--dur-hover);font-weight:500;text-decoration-thickness:1px}.markdown :where(a:not([class])):not(:where(.not-prose *)):hover{text-decoration-color:currentColor;text-decoration-thickness:2px}.markdown :where(strong,b):not(:where(.not-prose *)){color:var(--text);font-weight:600}.markdown :where(ul,ol):not(:where(.not-prose,.not-prose *)){padding-left:1.4em}.markdown :where(ul):not(:where(.not-prose,.not-prose *)){list-style:square}.markdown :where(ol):not(:where(.not-prose,.not-prose *)){list-style:decimal}.markdown :where(li):not(:where(.not-prose *)){padding-left:.3em}.markdown :where(li+li):not(:where(.not-prose *)){margin-top:.45em}.markdown :where(li)::marker{color:var(--purple);font-family:var(--font-mono), "JetBrains Mono Fallback", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;font-size:.9em}.markdown :where(li>p,li>ul,li>ol):not(:where(.not-prose *)){margin-bottom:0}.markdown :where(li>ul,li>ol):not(:where(.not-prose *)){margin-top:.45em}.markdown :where(blockquote):not(:where(.not-prose,.not-prose *)){border-left:2px solid var(--purple);color:var(--text);padding:2px 0 2px 22px;font-size:1.08em;font-weight:500;line-height:1.6}.markdown :where(blockquote>p):not(:where(.not-prose *)){margin-bottom:0}.markdown :where(blockquote>p+p):not(:where(.not-prose *)){margin-top:.8em}.markdown :where(table):not(:where(.not-prose,.not-prose *)){border-collapse:collapse;border:1px solid var(--border);scrollbar-width:thin;border-radius:12px;max-width:100%;font-size:.9em;line-height:1.55;display:block;overflow-x:auto}.markdown :where(th,td):not(:where(.not-prose *)){text-align:left;vertical-align:top;padding:10px 16px}.markdown :where(th):not(:where(.not-prose *)){background:var(--surface);color:var(--text);border-bottom:1px solid var(--border-strong);white-space:nowrap;font-weight:600}.markdown :where(tbody tr+tr td):not(:where(.not-prose *)){border-top:1px solid var(--border)}.markdown :where(hr):not(:where(.not-prose,.not-prose *)){border:0;border-top:1px solid var(--border);margin:3em 0}.markdown :where(:not(pre)>code):not(:where(.not-prose *)){background:var(--raised);border:1px solid var(--border);color:var(--text);overflow-wrap:anywhere;border-radius:6px;padding:.12em .4em;font-size:.86em}.post-figure{margin:2em 0;display:block}.post-figure img{border:1px solid var(--border);background:var(--surface);border-radius:12px;width:100%;height:auto;display:block}.post-figure .figcap{text-align:center;margin-top:10px;display:block}.post-code{margin:0 0 1.6em}.post-code .code{counter-reset:pl;margin:0;padding:14px 18px}.post-code code{font-size:inherit}.post-code[data-ln] .code-line:before{counter-increment:pl;content:counter(pl);text-align:right;width:2em;color:var(--ln);-webkit-user-select:none;user-select:none;margin-right:1.1em;display:inline-block}[data-reading=light] :is(.post-code,.codebox){--c-surface:17 24 41;--c-border:34 43 69;--c-border-strong:46 58 92;--c-text:234 238 247;--c-muted:151 161 188;--c-purple-text:157 143 255;--c-green-ink:141 240 79;--surface:rgb(var(--c-surface));--border:rgb(var(--c-border));--border-strong:rgb(var(--c-border-strong));--text:rgb(var(--c-text));--text-muted:rgb(var(--c-muted));--purple-text:rgb(var(--c-purple-text));--green-ink:rgb(var(--c-green-ink))}.callout{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-e1);border-radius:12px;margin:0 0 1.6em;padding:18px 20px}.callout-head{align-items:center;gap:10px;margin-bottom:8px;display:flex}.callout-title{color:var(--text);font-weight:600}.callout-body{color:var(--text-body)}.callout-body>:last-child{margin-bottom:0}.sponsor{border:1px solid var(--border-strong);background:var(--surface);box-shadow:var(--shadow-e1);border-radius:16px;margin:2.4em 0;padding:24px}@media (max-width:640px){.sponsor{padding:18px}}.sponsor-body{margin-top:12px;font-size:.94em}.sponsor-body>:last-child{margin-bottom:0}.toc-link{color:var(--text-muted);transition:color var(--dur-hover), border-color var(--dur-hover);border-left:2px solid #0000;margin-left:-1px;padding:5px 0 5px 14px;line-height:1.4;display:block}.toc-link:hover{color:var(--text)}.toc-link[aria-current=true]{color:var(--text);border-left-color:var(--purple)}.reading-toggle{border:1px solid var(--border-strong);min-height:44px;color:var(--text-muted);font:500 13px/1 var(--font-mono), "JetBrains Mono Fallback", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;cursor:pointer;transition:color var(--dur-hover), border-color var(--dur-hover), background-color var(--dur-hover);background:0 0;border-radius:10px;align-items:center;gap:8px;padding:0 14px;display:inline-flex}.reading-toggle:hover{color:var(--text);border-color:var(--purple);background:var(--raised)}.reading-toggle svg{flex:none}.reading-toggle[aria-pressed=true],[data-reading=light] .reading-toggle{color:var(--text);border-color:var(--purple);background:var(--purple-tint)}@media (max-width:640px){.reading-toggle{padding:0 12px}}[data-reading=light] .pill{background:var(--surface)}[data-reading=light] .badge-n{background:var(--purple)}
