:root{--bg-warm-dark:#1a1614;--fg-cream:#f5f0e8;--accent-ember:#d47a2a;--accent-plasma:#ff6b35;--surface:#211d19;--surface-raised:#2a2520;--border-subtle:#332e27;--text-primary:var(--fg-cream);--text-muted:#978f82;--text-faint:#5c554c;--mono-font:"JetBrains Mono", "Fira Mono", "SF Mono", monospace;--font-body:var(--mono-font);--font-ui:var(--mono-font);--fs-xs:clamp(.72rem, .13rem + .19vw, .8rem);--fs-sm:clamp(.875rem, .18rem + .31vw, 1rem);--fs-base:clamp(1.05rem, .2rem + .42vw, 1.18rem);--fs-md:clamp(1.18rem, .28rem + .56vw, 1.38rem);--fs-lg:clamp(1.38rem, .36rem + .83vw, 1.7rem);--fs-xl:clamp(1.7rem, .46rem + 1.11vw, 2.15rem);--fs-2xl:clamp(2.15rem, .55rem + 1.67vw, 2.85rem);--lh-tight:1.3;--lh-body:1.7;--lh-relaxed:1.9;--space-2xs:clamp(.125rem, .08rem + .17vw, .25rem);--space-xs:clamp(.25rem, .16rem + .33vw, .5rem);--space-sm:clamp(.5rem, .31rem + .63vw, .75rem);--space-md:clamp(.75rem, .5rem + 1.04vw, 1.25rem);--space-lg:clamp(1rem, .66rem + 1.46vw, 1.75rem);--space-xl:clamp(1.5rem, .97rem + 2.29vw, 2.75rem);--space-2xl:clamp(2.5rem, 1.67rem + 3.75vw, 4.5rem);--max-width-prose:48rem;--max-width-site:72rem;--radius-sm:3px;--radius-md:6px;--border-thin:1px solid var(--border-subtle);--color-bg:var(--bg-warm-dark);--color-surface:var(--surface);--color-surface-raised:var(--surface-raised);--color-border:var(--border-subtle);--color-text:var(--text-primary);--color-text-muted:var(--text-muted);--color-text-faint:var(--text-faint);--color-cream:var(--fg-cream);--color-ember:var(--accent-ember);--color-ember-dim:#b56422;--color-plasma:var(--accent-plasma);--color-plasma-dim:#cc5529;--color-accent:var(--accent-ember);--color-link:var(--accent-plasma);--font-mono:var(--mono-font)}@media (prefers-color-scheme:light){:root{--bg-warm-dark:#f5f0e8;--fg-cream:#1a1614;--surface:#e8e2d8;--surface-raised:#dbd4c8;--border-subtle:#c4b8a2;--text-primary:#1a1614;--text-muted:#5c554c;--text-faint:#8a8276}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-size:100%}body{font-family:var(--font-body);font-size:var(--fs-base);line-height:var(--lh-body);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-ui);font-weight:500;line-height:var(--lh-tight);color:var(--color-cream)}h1{font-size:var(--fs-2xl);margin-bottom:var(--space-xl)}h2{font-size:var(--fs-xl);margin-top:var(--space-2xl);margin-bottom:var(--space-md)}h3{font-size:var(--fs-lg);margin-top:var(--space-xl);margin-bottom:var(--space-sm)}p{margin-bottom:var(--space-md)}a{color:var(--color-link);border-bottom:1px solid var(--color-plasma-dim);text-decoration:none;transition:color .2s,border-color .2s}a:hover,a:focus-visible{color:var(--color-cream);border-color:var(--color-ember)}code{font-family:var(--mono-font);color:var(--color-ember);background:var(--color-surface);border-radius:var(--radius-sm);padding:.15em .35em;font-size:.9em}pre{background:var(--color-surface);border:var(--border-thin);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-lg);font-size:var(--fs-sm);line-height:var(--lh-tight);overflow-x:auto}pre code{color:inherit;background:0 0;padding:0}blockquote{border-left:2px solid var(--color-ember-dim);margin:var(--space-md) 0;padding:var(--space-xs) var(--space-md);color:var(--color-text-muted);font-style:italic}ul,ol{margin-bottom:var(--space-md);padding-left:var(--space-lg)}li{margin-bottom:var(--space-xs)}hr{border:none;border-top:var(--border-thin);margin:var(--space-2xl) 0}img{border-radius:var(--radius-md);max-width:100%;height:auto}pre code .line{min-width:100%;display:inline-block}:focus-visible{outline:2px solid var(--color-ember);outline-offset:2px}::selection{background:var(--color-ember-dim);color:var(--fg-cream)}.prose{max-width:var(--max-width-prose);line-height:var(--lh-relaxed);color:var(--color-text)}.prose>*+*{margin-top:var(--space-md)}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{margin-top:var(--space-xl);margin-bottom:var(--space-sm)}.prose h1:first-child,.prose h2:first-child,.prose h3:first-child{margin-top:0}.terminal-block{font-family:var(--mono-font);font-size:var(--fs-sm);line-height:var(--lh-tight);color:var(--fg-cream);background:var(--bg-warm-dark);border:var(--border-thin);border-radius:var(--radius-md);padding:var(--space-md);white-space:pre-wrap;word-break:break-word;overflow-x:auto}.terminal-block:before{content:"$ ";color:var(--accent-ember);user-select:none}.reading-mode{transition:background-color .3s,color .3s}.site-header[data-astro-cid-hkbrpulz]{padding:var(--space-xl) var(--space-md);max-width:var(--max-width-site);border-bottom:var(--border-thin);flex-direction:column;align-items:flex-start;margin:0 auto;display:flex}.site-title[data-astro-cid-hkbrpulz]{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text);letter-spacing:.02em;border-bottom:none}.site-title[data-astro-cid-hkbrpulz] .caret[data-astro-cid-hkbrpulz]{color:var(--color-ember);margin:0 .25em;animation:1.2s step-end infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.site-title[data-astro-cid-hkbrpulz]:hover{color:var(--color-cream)}.site-tagline[data-astro-cid-hkbrpulz]{font-size:var(--fs-xs);color:var(--color-text-faint);margin-top:var(--space-2xs)}.site-header-immersive[data-astro-cid-hkbrpulz]{max-width:none;padding:var(--space-sm) max(var(--space-lg), calc((100vw - var(--max-width-site)) / 2))}.site-header-immersive[data-astro-cid-hkbrpulz] .site-tagline[data-astro-cid-hkbrpulz]{display:none}main[data-astro-cid-hkbrpulz]{max-width:var(--max-width-site);padding:var(--space-xl) var(--space-md);margin:0 auto}.main-immersive[data-astro-cid-hkbrpulz]{max-width:none;padding:0}.site-footer[data-astro-cid-hkbrpulz]{max-width:var(--max-width-site);margin:var(--space-2xl) auto 0;padding:var(--space-lg) var(--space-md);border-top:var(--border-thin);font-size:var(--fs-xs);color:var(--color-text-faint);justify-content:space-between;gap:var(--space-xs);flex-wrap:wrap;display:flex}.site-footer[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]{color:var(--color-text-muted);border-bottom-color:var(--color-text-faint)}.site-footer[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]:hover{color:var(--color-cream)}.site-footer-immersive[data-astro-cid-hkbrpulz]{max-width:none;padding-right:max(var(--space-lg), calc((100vw - var(--max-width-site)) / 2));padding-left:max(var(--space-lg), calc((100vw - var(--max-width-site)) / 2));margin-top:0}@media (width<=600px){.site-footer[data-astro-cid-hkbrpulz]{flex-direction:column}}
