@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:ital,wght@0,300;0,400;0,500;0,600;1,400&display=swap";.nav[data-astro-cid-dmqpwcec]{position:sticky;top:0;z-index:100;background:#0a0a0aeb;backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}.nav-inner[data-astro-cid-dmqpwcec]{height:52px;display:flex;align-items:center;gap:2rem}.nav-logo[data-astro-cid-dmqpwcec]{font-family:var(--font-mono);font-size:.9rem;font-weight:600;color:var(--accent);text-decoration:none;letter-spacing:-.02em;flex-shrink:0}.nav-links[data-astro-cid-dmqpwcec]{display:flex;align-items:center;gap:.1rem;list-style:none;margin-left:auto}.nav-link[data-astro-cid-dmqpwcec]{font-size:.85rem;color:var(--text-muted);text-decoration:none;padding:.3rem .7rem;border-radius:var(--radius-sm);transition:color .15s,background .15s;letter-spacing:.01em}.nav-link[data-astro-cid-dmqpwcec]:hover{color:var(--text);background:var(--bg-3)}.nav-link--active[data-astro-cid-dmqpwcec]{color:var(--text)}:root{--bg: #0a0a0a;--bg-2: #111111;--bg-3: #1a1a1a;--border: #1f1f1f;--border-2: #2a2a2a;--text: #e8e8e8;--text-muted: #666;--text-soft: #999;--accent: #1D9E75;--accent-dim: rgba(29, 158, 117, .12);--accent-glow: rgba(29, 158, 117, .25);--font-sans: "IBM Plex Sans", system-ui, sans-serif;--font-mono: "IBM Plex Mono", "Fira Code", monospace;--radius-sm: 4px;--radius: 8px;--radius-lg: 12px;--max-width: 1080px;--content-width: 700px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:1rem;line-height:1.7;min-height:100vh}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3,h4{font-family:var(--font-sans);font-weight:600;line-height:1.2;color:var(--text)}h1{font-size:clamp(1.8rem,4vw,2.8rem)}h2{font-size:clamp(1.3rem,3vw,1.8rem)}h3{font-size:1.2rem}p{color:var(--text-soft)}code{font-family:var(--font-mono);font-size:.875em;background:var(--bg-3);border:1px solid var(--border-2);border-radius:var(--radius-sm);padding:.15em .4em;color:var(--accent)}pre{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;overflow-x:auto;font-family:var(--font-mono);font-size:.875rem;line-height:1.6}pre code{background:none;border:none;padding:0;color:var(--text);font-size:inherit}.prose{max-width:var(--content-width)}.prose h2{margin-top:2.5rem;margin-bottom:.75rem;padding-top:2.5rem;border-top:1px solid var(--border);font-size:1.4rem}.prose h2:first-child{margin-top:0;padding-top:0;border-top:none}.prose h3{margin-top:1.75rem;margin-bottom:.5rem;color:var(--text);font-size:1.1rem}.prose p{margin-bottom:1.1rem;color:var(--text-soft)}.prose strong{color:var(--text);font-weight:600}.prose ul,.prose ol{padding-left:1.5rem;margin-bottom:1.1rem;color:var(--text-soft)}.prose li{margin-bottom:.35rem}.prose a{color:var(--accent);text-decoration:none;border-bottom:1px solid var(--accent-dim);transition:border-color .15s}.prose a:hover{border-color:var(--accent)}.prose blockquote{border-left:3px solid var(--accent);padding:.75rem 1.25rem;margin:1.5rem 0;background:var(--bg-2);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-soft);font-style:italic}.prose pre{margin:1.5rem 0}.container{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.tag{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-mono);font-size:.7rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-glow);border-radius:100px;padding:.25rem .75rem}.btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--accent);color:#fff;font-family:var(--font-sans);font-size:.9rem;font-weight:500;padding:.65rem 1.35rem;border-radius:var(--radius);text-decoration:none;transition:opacity .15s,transform .15s;border:none;cursor:pointer}.btn:hover{opacity:.88;transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border-2)}.btn-ghost:hover{color:var(--text);border-color:var(--border-2);background:var(--bg-3);opacity:1}footer{border-top:1px solid var(--border);margin-top:6rem;padding:2rem 0;color:var(--text-muted);font-size:.85rem}footer .container{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}footer a{color:var(--text-muted);text-decoration:none;transition:color .15s}footer a:hover{color:var(--text)}
