:root{--bg: #08080f;--surface: #11111a;--surface-2: #16162a;--surface-3: #1d1d36;--text: #d6d3e0;--text-bright: #f5f3ff;--text-dim: #8a85a5;--text-muted: #5d5878;--accent: #a78bfa;--accent-2: #fbbf24;--accent-pink: #f0abfc;--accent-green: #86efac;--accent-soft: rgba(167, 139, 250, .08);--accent-glow: rgba(167, 139, 250, .18);--border: #1d1d36;--border-bright: #2c2c4f;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-display: "JetBrains Mono", "SF Mono", Menlo, monospace;--font-mono: "JetBrains Mono", "SF Mono", Menlo, monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 16px;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.875rem;--text-3xl: 2.5rem;--text-hero: clamp(2.75rem, 2rem + 3.5vw, 5.5rem);--w-prose: 720px;--w-wide: 1280px;--pad-x: clamp(1.25rem, 2vw + .5rem, 3rem);--ease-out: cubic-bezier(.22, 1, .36, 1);--shadow-glow: 0 0 24px var(--accent-glow)}*{box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);font-size:var(--text-base);line-height:1.7;background:var(--bg);background-image:radial-gradient(at 20% 0%,rgba(167,139,250,.06) 0%,transparent 40%),radial-gradient(at 80% 100%,rgba(251,191,36,.03) 0%,transparent 40%);background-attachment:fixed;color:var(--text);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;letter-spacing:-.025em;color:var(--text-bright)}h1{font-size:var(--text-hero);line-height:1.02;margin:0 0 1.5rem;letter-spacing:-.04em}h2{font-size:var(--text-2xl);margin-top:3.5rem;padding-bottom:.625rem;border-bottom:1px solid var(--border);position:relative}h2:before{content:"#";color:var(--accent);margin-right:.5rem;opacity:.7}h3{font-size:var(--text-xl);margin-top:2.25rem}p{margin:0 0 1.35em}a{color:var(--accent);text-decoration:none;transition:color .15s var(--ease-out)}a:hover{color:var(--accent-2)}code{font-family:var(--font-mono);font-size:.875em;background:var(--surface);padding:.15em .45em;border-radius:4px;border:1px solid var(--border);color:var(--accent-pink)}pre{background:var(--surface-2);border:1px solid var(--border);padding:1.125rem;overflow-x:auto;border-radius:8px;font-size:var(--text-sm);line-height:1.65}pre code{padding:0;background:transparent;border:none;color:inherit}img{max-width:100%;height:auto;border-radius:8px;border:1px solid var(--border)}blockquote{border-left:3px solid var(--accent);padding:.625rem 1.25rem;margin:1.5rem 0;background:var(--accent-soft);color:var(--text-dim);border-radius:0 6px 6px 0;font-style:italic}table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.92em}th,td{padding:.55rem .85rem;border:1px solid var(--border);text-align:left}th{background:var(--surface);font-weight:600;color:var(--text-bright)}hr{border:0;border-top:1px solid var(--border);margin:3rem 0}.container{max-width:var(--w-prose);margin:0 auto;padding:0 var(--pad-x)}.container-wide{max-width:var(--w-wide);margin:0 auto;padding:0 var(--pad-x)}header.site-header{padding:.875rem 0;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);position:sticky;top:0;z-index:50}header.site-header .container-wide{display:flex;justify-content:space-between;align-items:center;gap:1.5rem}.brand{font-family:var(--font-mono);font-size:1.0625rem;font-weight:600;letter-spacing:-.02em;color:var(--text-bright)}.brand:before{content:"~/";color:var(--accent);opacity:.7}.site-nav{display:flex;gap:1.5rem;align-items:center}.site-nav a{color:var(--text-dim);font-size:.9375rem;font-family:var(--font-mono)}.site-nav a:hover{color:var(--accent)}.lang-toggle{display:inline-flex;font-family:var(--font-mono);font-size:.8125rem;border:1px solid var(--border-bright);border-radius:6px;overflow:hidden;background:var(--surface)}.lang-toggle a,.lang-toggle span{padding:.3rem .625rem;color:var(--text-muted);text-decoration:none;transition:all .15s var(--ease-out)}.lang-toggle a:hover{background:var(--surface-2);color:var(--accent)}.lang-toggle .active{background:var(--accent-soft);color:var(--accent);font-weight:600}.hero{padding:5.5rem 0 4rem;border-bottom:1px solid var(--border)}.hero-inner{max-width:900px}.eyebrow{font-family:var(--font-mono);font-size:.8125rem;color:var(--accent);letter-spacing:.05em;margin-bottom:1.25rem;text-transform:lowercase}.eyebrow:before{content:"$ ";opacity:.6}.hero .lead{font-size:var(--text-xl);color:var(--text-dim);max-width:680px;line-height:1.55}.featured-row{display:grid;grid-template-columns:1.6fr 1fr;gap:2.5rem;margin-top:3.5rem;padding-bottom:2.5rem;border-bottom:1px solid var(--border)}.featured-main a,.featured-side a{display:block;color:var(--text-bright)}.featured-main a:hover h2,.featured-side a:hover h3{color:var(--accent)}.featured-meta{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);letter-spacing:.05em;margin-bottom:.75rem;text-transform:lowercase}.featured-main h2{font-size:var(--text-3xl);margin:0 0 1rem;border:0;padding:0;line-height:1.15}.featured-main h2:before{content:none}.featured-side h3{font-size:var(--text-xl);margin:0 0 .75rem;line-height:1.25}.desc{color:var(--text-dim);font-size:1rem;margin:0}@media(max-width:800px){.featured-row{grid-template-columns:1fr}}.posts-section{margin-top:3.5rem;padding-bottom:4rem}.section-heading{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1.75rem}.section-heading h2{margin:0;border:0;padding:0;font-size:var(--text-xl)}.section-heading h2:before{content:"## ";color:var(--accent);opacity:.6}.section-heading .more{font-family:var(--font-mono);font-size:.8125rem;color:var(--text-dim)}.section-heading .more:hover{color:var(--accent)}.post-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.post-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1.5rem;transition:all .18s var(--ease-out)}.post-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-glow)}.post-card a{display:block;color:var(--text-bright)}.post-card .meta{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);margin-bottom:.75rem}.post-card h3{font-size:1.0625rem;margin:0 0 .625rem;line-height:1.35;color:var(--text-bright)}.post-card .desc{font-size:.875rem;line-height:1.5;color:var(--text-dim)}.post-card .tags{margin-top:.875rem;display:flex;gap:.5rem;flex-wrap:wrap}.tag{font-family:var(--font-mono);font-size:.7rem;color:var(--accent);background:var(--accent-soft);padding:.18rem .475rem;border-radius:3px}.empty{color:var(--text-muted);font-family:var(--font-mono);text-align:center;padding:3rem 0}article.post{max-width:var(--w-prose);margin:0 auto;padding:4rem var(--pad-x) 5rem}article.post .post-meta{font-family:var(--font-mono);font-size:.8125rem;color:var(--text-muted);margin-bottom:1.25rem;display:flex;gap:1rem;flex-wrap:wrap}article.post .post-title{font-size:clamp(2rem,1.25rem + 2.5vw,3.25rem);line-height:1.08;margin-bottom:1.5rem}article.post .post-lead{font-size:1.125rem;color:var(--text-dim);line-height:1.6;margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid var(--border)}footer.site-footer{border-top:1px solid var(--border);background:var(--surface);padding:3rem 0 2rem;margin-top:4rem}footer.site-footer .container-wide{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2.5rem}.footer-brand strong{font-family:var(--font-mono);font-size:1.0625rem;color:var(--text-bright);display:block;margin-bottom:.625rem}.footer-nav h4{font-family:var(--font-mono);font-size:.8125rem;color:var(--text-dim);text-transform:lowercase;margin:0 0 .875rem;letter-spacing:.05em}.footer-nav ul{list-style:none;padding:0;margin:0}.footer-nav li{margin-bottom:.5rem}.footer-nav a{font-size:.9375rem;color:var(--text-dim)}.footer-nav a:hover{color:var(--accent)}.cross-link{margin-top:2rem;padding:1rem;border:1px dashed var(--border-bright);border-radius:8px;background:var(--surface-2);font-size:.875rem}.cross-link strong{color:var(--accent-2)}@media(max-width:720px){footer.site-footer .container-wide{grid-template-columns:1fr;gap:2rem}header.site-header .container-wide{flex-direction:row;gap:.75rem}.site-nav{gap:.875rem}.site-nav a{font-size:.8125rem}}
