.header[data-astro-cid-3ef6ksr2]{position:fixed;top:0;left:0;right:0;z-index:100;border-bottom:1px solid var(--color-border);padding:var(--space-2) 0;backdrop-filter:blur(8px);background-color:#fafafae6}@media(prefers-color-scheme:dark){.header[data-astro-cid-3ef6ksr2]{background-color:#0d0d0de6}}.nav[data-astro-cid-3ef6ksr2]{display:flex;justify-content:space-between;align-items:center}.logo[data-astro-cid-3ef6ksr2]{font-weight:600;font-size:var(--font-size-lg)}.logo[data-astro-cid-3ef6ksr2]:hover{text-decoration:none}.nav-links[data-astro-cid-3ef6ksr2]{display:flex;gap:var(--space-3)}.nav-links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{color:var(--color-text-muted)}.nav-links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover,.nav-links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2].active{color:var(--color-accent)}.nav-links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2].active{text-decoration:underline}.footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--color-border);padding:var(--space-4) 0;margin-top:var(--space-8)}.footer-content[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}@media(min-width:640px){.footer-content[data-astro-cid-sz7xmlte]{flex-direction:row;justify-content:space-between}}.social-links[data-astro-cid-sz7xmlte]{display:flex;gap:var(--space-1);font-size:var(--font-size-sm)}.social-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte],.separator[data-astro-cid-sz7xmlte]{color:var(--color-text-muted)}:root{--color-bg: #fafafa;--color-bg-secondary: #f0f0f0;--color-text: #1a1a1a;--color-text-muted: #666666;--color-accent: #0066cc;--color-accent-hover: #0052a3;--color-border: #e0e0e0;--color-code-bg: #f5f5f5;--font-mono: "JetBrains Mono", "Fira Code", "SF Mono", "Consolas", monospace;--font-size-base: 16px;--font-size-sm: .875rem;--font-size-lg: 1.125rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--font-size-3xl: 3rem;--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2rem;--space-6: 3rem;--space-8: 4rem;--max-width: 72ch;--line-height: 1.7;--transition-fast: .15s ease}@media(prefers-color-scheme:dark){:root{--color-bg: #0d0d0d;--color-bg-secondary: #1a1a1a;--color-text: #e0e0e0;--color-text-muted: #999999;--color-accent: #66b3ff;--color-accent-hover: #99ccff;--color-border: #333333;--color-code-bg: #1a1a1a}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--font-size-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:var(--font-mono);background-color:var(--color-bg);color:var(--color-text);line-height:var(--line-height);min-height:100vh;overflow-x:hidden;padding-top:60px}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-2)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;margin-bottom:var(--space-2)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}p{margin-bottom:var(--space-2)}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover);text-decoration:underline}pre,code{font-family:var(--font-mono);font-size:var(--font-size-sm)}code{background-color:var(--color-code-bg);padding:.125em .375em;border-radius:4px}pre{background-color:var(--color-code-bg);padding:var(--space-2);border-radius:8px;overflow-x:auto;border:1px solid var(--color-border);margin-bottom:var(--space-2)}pre code{background:none;padding:0}section{padding:var(--space-6) 0}section+section{border-top:1px solid var(--color-border)}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.cursor{display:inline-block;width:.6em;height:1.1em;background-color:var(--color-accent);animation:blink 1s step-end infinite;vertical-align:text-bottom;margin-left:2px}ul,ol{margin-bottom:var(--space-2);padding-left:var(--space-3)}li{margin-bottom:var(--space-1)}.text-muted{color:var(--color-text-muted)}.text-sm{font-size:var(--font-size-sm)}.grid{display:grid;gap:var(--space-2)}@media(min-width:640px){.grid-2{grid-template-columns:repeat(2,1fr)}}
