@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/jetbrains-mono-regular.woff2") format("woff2")}@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url("/assets/fonts/jetbrains-mono-medium.woff2") format("woff2")}@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/jetbrains-mono-bold.woff2") format("woff2")}@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/inter-regular.woff2") format("woff2")}@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url("/assets/fonts/inter-medium.woff2") format("woff2")}@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/inter-bold.woff2") format("woff2")}:root{--font-mono: 'JetBrains Mono', ui-monospace, "SF Mono", Menlo, monospace;--font-body: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*,*::before,*::after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--bg: #0a0a0f;--bg-elevated: #14141c;--border: #1f1f2e;--text: #e4e4e9;--text-muted: #8b8b96;--text-dim: #5a5a66;--accent-lime: #84cc16;--gradient-1: #22d3ee;--gradient-2: #a855f7}.gradient-text{background:linear-gradient(90deg, var(--gradient-1) 0%, var(--gradient-2) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}body{font-family:var(--font-body);font-size:1.0625rem;line-height:1.6}.site-main{max-width:70ch;margin:0 auto;padding:2rem 1rem}.site-header{display:flex;justify-content:space-between;align-items:center;max-width:70ch;margin:0 auto;padding:1.5rem 1rem}.site-logo{font-family:var(--font-mono);font-weight:700;text-decoration:none;font-size:1.5rem}.site-nav a{color:var(--text-muted);text-decoration:none;margin-left:1rem;transition:color 150ms ease}.site-nav a:hover{color:var(--accent-lime)}.site-footer{max-width:70ch;margin:3rem auto 2rem;padding:1rem;text-align:center;color:var(--text-dim);font-size:0.8125rem}.site-footer a{color:var(--text-muted);text-decoration:none}.site-footer .footer-rss{color:var(--accent-lime)}h1,h2,h3,h4{font-family:var(--font-mono);line-height:1.2;margin:1.5rem 0 1rem}h1{font-size:2.25rem;font-weight:700}h2{font-size:1.5rem;font-weight:500;color:var(--accent-lime)}h3{font-size:1.25rem;font-weight:500}h4{font-size:1rem;font-weight:500}p,ul,ol{margin:1rem 0}ul,ol{padding-left:1.5rem}li{margin:0.25rem 0}a{color:var(--accent-lime);text-decoration:underline;text-underline-offset:2px;transition:color 150ms ease}a:hover{color:#a3e635}strong{font-weight:700}em{font-style:italic}hr{border:none;border-top:1px solid var(--border);margin:2rem 0}code,pre,kbd{font-family:var(--font-mono);font-size:0.9375rem}code:not(pre code){background:rgba(132,204,22,0.1);color:var(--accent-lime);padding:0.1em 0.3em;border-radius:3px}pre{background:var(--bg-elevated);padding:1rem;border-radius:6px;overflow-x:auto;margin:1.5rem 0}pre code{background:none;padding:0;color:var(--text)}.highlight{margin:0}h1,h2,h3{word-break:break-word;overflow-wrap:anywhere}.post{max-width:70ch;margin:0 auto}.back-link{display:inline-block;margin-bottom:1.5rem;color:var(--text-muted);text-decoration:none;font-family:var(--font-mono);font-size:0.875rem}.back-link:hover{color:var(--accent-lime)}.post-meta{font-family:var(--font-mono);font-size:0.875rem;color:var(--text-muted);margin-bottom:0.5rem;display:flex;flex-wrap:wrap;gap:0.5rem;align-items:center}.post-meta time{color:var(--accent-lime)}.post-meta-sep{color:var(--text-dim)}.post-meta-tags{display:inline-flex;gap:0.5rem;flex-wrap:wrap}.post-tag{color:var(--accent-lime);text-decoration:none;font-size:0.875rem}.post-tag:hover{text-decoration:underline}.post-title{font-size:2.25rem;font-weight:700;margin:0.5rem 0 2rem;font-family:var(--font-mono)}.post-content{color:var(--text)}.post-content>:first-child{margin-top:0}.post-video{width:100%;max-height:70vh;margin:1.5rem 0;background:var(--bg-elevated);border-radius:6px;display:block}.post-nav{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:2rem 0 1rem;font-family:var(--font-mono);font-size:0.9375rem}.post-nav a{color:var(--text-muted);text-decoration:none;flex:1;max-width:45%}.post-nav a:hover{color:var(--accent-lime)}.post-nav-next{text-align:right}.post-content h2,.post-content h3,.post-content h4{scroll-margin-top:1rem}.post-feed{max-width:70ch;margin:0 auto}.post-card{margin:2rem 0}.post-card:first-child{margin-top:0}.post-card-meta{font-family:var(--font-mono);font-size:0.875rem;color:var(--accent-lime);margin-bottom:0.25rem}.post-card-title{font-family:var(--font-mono);font-size:1.75rem;font-weight:700;margin:0 0 0.75rem;line-height:1.2}.post-card-title a{color:var(--text);text-decoration:none;background:linear-gradient(90deg, var(--gradient-1) 0%, var(--gradient-2) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:var(--text);transition:-webkit-text-fill-color 150ms ease}.post-card-title a:hover{-webkit-text-fill-color:transparent}.post-card-excerpt{color:var(--text-muted);margin:0 0 0.75rem;font-size:1rem;line-height:1.55}.post-card-tags{display:flex;flex-wrap:wrap;gap:0.5rem;font-family:var(--font-mono)}.post-card-sep{border:none;border-top:1px solid var(--border);margin:2rem 0}.empty-state{color:var(--text-muted);text-align:center;padding:4rem 0}.tag-cloud-page{max-width:70ch;margin:0 auto}.tag-cloud{display:flex;flex-wrap:wrap;gap:0.75rem 1rem;margin:2rem 0;font-family:var(--font-mono);line-height:1.4}.tag-cloud-item{color:var(--accent-lime);text-decoration:none;transition:color 150ms ease}.tag-cloud-item sup{color:var(--text-dim);font-size:0.7em;margin-left:0.15em}.tag-cloud-item:hover{text-decoration:underline}.tag-page{max-width:70ch;margin:0 auto}.tag-title{font-family:var(--font-mono);color:var(--accent-lime);font-size:2rem;margin:0}.tag-meta{font-family:var(--font-mono);color:var(--text-muted);font-size:0.875rem;margin:0.25rem 0 0}.error-page{max-width:70ch;margin:0 auto;padding:4rem 1rem;text-align:center}.error-code{font-family:var(--font-mono);font-size:5rem;font-weight:700;margin:0;line-height:1}.error-message{color:var(--text-muted);margin:1rem 0 2rem;font-size:1.125rem}
