:root{--color-bg:hsl(40, 20%, 97%);--color-border:hsl(40, 10%, 88%);--color-text-faint:hsl(40, 8%, 70%);--color-text-light:hsl(40, 8%, 55%);--color-text:hsl(40, 8%, 35%);--color-text-dark:hsl(40, 10%, 20%);--color-code-bg:hsl(40, 15%, 93%);--font-serif:"Instrument Serif", Georgia, serif;--font-sans:"DM Sans", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--space-xs:.75rem;--space-sm:1.5rem;--space-md:3rem;--space-lg:4rem;--space-xl:6rem}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.7;font-weight:300;font-size:16px;-webkit-font-smoothing:antialiased}.page.svelte-lmhprm.svelte-lmhprm{min-height:100vh}.nav.svelte-lmhprm.svelte-lmhprm{position:fixed;top:0;left:0;right:0;z-index:100;background:#f9f8f6e6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.nav-inner.svelte-lmhprm.svelte-lmhprm{max-width:900px;margin:0 auto;padding:var(--space-sm) var(--space-sm);display:flex;justify-content:space-between;align-items:center}.nav-left.svelte-lmhprm.svelte-lmhprm{display:flex;align-items:center;gap:var(--space-sm)}.nav-left.svelte-lmhprm a.svelte-lmhprm{font-size:.875rem;color:var(--color-text-light);text-decoration:none}.nav-left.svelte-lmhprm a.svelte-lmhprm:hover,.nav-left.svelte-lmhprm a.active.svelte-lmhprm{color:var(--color-text-dark)}.nav-right.svelte-lmhprm.svelte-lmhprm{display:flex;align-items:center;gap:var(--space-sm)}.social-link.svelte-lmhprm.svelte-lmhprm{color:var(--color-text-light);display:flex;align-items:center;justify-content:center}.social-link.svelte-lmhprm.svelte-lmhprm:hover{color:var(--color-text-dark)}.article.svelte-lmhprm.svelte-lmhprm{max-width:900px;margin:0 auto;padding:var(--space-xl) var(--space-sm);padding-top:calc(4rem + var(--space-md))}.article-header.svelte-lmhprm.svelte-lmhprm{margin-bottom:var(--space-sm)}.back-link.svelte-lmhprm.svelte-lmhprm{display:inline-block;font-size:.875rem;color:var(--color-text-light);text-decoration:none;margin-bottom:var(--space-sm)}.back-link.svelte-lmhprm.svelte-lmhprm:hover{color:var(--color-text-dark)}.article-title.svelte-lmhprm.svelte-lmhprm{font-family:var(--font-serif);font-size:2rem;font-weight:400;color:var(--color-text-dark);letter-spacing:-.02em;margin-bottom:var(--space-xs)}.article-subtitle.svelte-lmhprm.svelte-lmhprm{font-size:1.0625rem;color:var(--color-text);line-height:1.8;font-style:italic}.toc.svelte-lmhprm.svelte-lmhprm{background:var(--color-code-bg);padding:var(--space-sm);border-radius:6px;margin-bottom:var(--space-xs);max-width:680px}.toc-list.svelte-lmhprm.svelte-lmhprm{list-style:none;padding-left:0;margin:0}.toc-list.svelte-lmhprm li.svelte-lmhprm{margin-bottom:.375rem}.toc-list.svelte-lmhprm a.svelte-lmhprm{font-size:.875rem;color:var(--color-text);text-decoration:none;border-bottom:1px solid transparent}.toc-list.svelte-lmhprm a.svelte-lmhprm:hover{color:var(--color-text-dark);border-bottom-color:var(--color-border)}.article-content.svelte-lmhprm.svelte-lmhprm{max-width:680px}.series-note.svelte-lmhprm.svelte-lmhprm{font-size:.9rem;color:var(--color-text-light);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border)}.series-note.svelte-lmhprm a.svelte-lmhprm{color:var(--color-text)}.article-content.svelte-lmhprm h2.svelte-lmhprm{font-family:var(--font-serif);font-size:1.5rem;font-weight:400;color:var(--color-text-dark);margin-top:var(--space-sm);margin-bottom:var(--space-sm)}.article-content.svelte-lmhprm p.svelte-lmhprm{margin-bottom:var(--space-sm);line-height:1.8}.article-content.svelte-lmhprm ul.svelte-lmhprm{margin-bottom:var(--space-sm);padding-left:1.5rem}.article-content.svelte-lmhprm li.svelte-lmhprm{margin-bottom:.5rem;line-height:1.7}.article-content.svelte-lmhprm table.svelte-lmhprm{width:100%;border-collapse:collapse;margin-bottom:var(--space-sm);font-size:.9rem}.article-content.svelte-lmhprm th.svelte-lmhprm,.article-content.svelte-lmhprm td.svelte-lmhprm{padding:.75rem;text-align:left;border-bottom:1px solid var(--color-border)}.article-content.svelte-lmhprm th.svelte-lmhprm{font-weight:500;color:var(--color-text-dark)}.article-content.svelte-lmhprm pre.svelte-lmhprm{background:var(--color-code-bg);border-radius:6px;padding:var(--space-sm);overflow-x:auto;margin-bottom:var(--space-sm);border:1px solid var(--color-border)}.article-content.svelte-lmhprm strong.highlight.svelte-lmhprm{color:var(--color-text-dark)}.article-content.svelte-lmhprm code.svelte-lmhprm{font-family:var(--font-mono);font-size:.875rem;background:var(--color-code-bg);padding:.15rem .4rem;border-radius:3px}.article-content.svelte-lmhprm pre code.svelte-lmhprm{background:none;padding:0;line-height:1.6}.article-content.svelte-lmhprm pre code .keyword.svelte-lmhprm{color:#8639ac}.article-content.svelte-lmhprm pre code .class.svelte-lmhprm{color:#c38022}.article-content.svelte-lmhprm pre code .function.svelte-lmhprm,.article-content.svelte-lmhprm pre code .builtin.svelte-lmhprm{color:#297aa3}.article-content.svelte-lmhprm pre code .number.svelte-lmhprm{color:#c35822}.article-content.svelte-lmhprm pre code .comment.svelte-lmhprm{color:var(--color-text-light);font-style:italic}.nav-posts.svelte-lmhprm.svelte-lmhprm{margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--color-border);display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-sm)}.nav-posts.svelte-lmhprm a.svelte-lmhprm{color:var(--color-text);text-decoration:none;font-weight:400;font-size:.875rem}.nav-posts.svelte-lmhprm a.svelte-lmhprm:hover{color:var(--color-text-dark)}.footer.svelte-lmhprm.svelte-lmhprm{padding:var(--space-md) var(--space-sm);border-top:1px solid var(--color-border);font-size:.875rem;color:var(--color-text-faint);text-align:center}@media (max-width: 768px){:root{--space-md:2rem;--space-lg:3rem;--space-xl:4rem}.article-title.svelte-lmhprm.svelte-lmhprm{font-size:1.75rem}.nav-left.svelte-lmhprm.svelte-lmhprm{gap:var(--space-xs)}}
