:root {
    --bg-black: #000000;
    --bg-card: #121212;
    --bg-elevated: #1A1A1A;
    --text: #FFFFFF;
    --text-secondary: #A0A0A0;
    --accent: #60A5FA;
    --accent-green: #34D399;
    --accent-purple: #A78BFA;
    --border: #2A2A2A;
    --radius: 8px;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
body{
    font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
    background:var(--bg-black);color:var(--text);line-height:1.65;
    -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:'JetBrains Mono','Fira Code',monospace;}
.container{max-width:900px;margin:0 auto;padding:0 24px}

nav{
    padding:20px 0;border-bottom:1px solid var(--border);
    position:sticky;top:0;z-index:100;background:rgba(0,0,0,0.92);
    backdrop-filter:blur(12px);
}
nav .container{display:flex;justify-content:space-between;align-items:center}
nav .logo{font-family:'JetBrains Mono',monospace;font-weight:700;font-size:18px;color:var(--accent);text-decoration:none}
nav .logo::before{content:'~/';opacity:0.6}
nav .links{display:flex;gap:28px;list-style:none}
nav .links a{text-decoration:none;color:var(--text-secondary);font-size:14px;font-weight:500;transition:color .15s}
nav .links a:hover,nav .links a.active{color:var(--text)}

.hero{padding:100px 0 80px}
.hero .mono-hint{color:var(--accent-green);font-family:'JetBrains Mono',monospace;font-size:14px;margin-bottom:16px}
.hero .mono-hint::before{content:'$ ';opacity:0.6}
.hero h1{font-size:44px;font-weight:700;line-height:1.2;margin-bottom:16px}
.hero h1 .dim{color:var(--text-secondary)}
.hero p{font-size:18px;color:var(--text-secondary);max-width:540px;margin-bottom:32px}
.hero .btn{
    display:inline-flex;align-items:center;gap:8px;
    padding:12px 28px;background:var(--text);color:var(--bg-black);
    border-radius:6px;text-decoration:none;font-weight:600;font-size:15px;
    transition:background .15s;border:none;cursor:pointer;
}
.hero .btn:hover{background:#e0e0e0}

.blog,.projects{padding:80px 0}

.section-title{font-family:'JetBrains Mono',monospace;font-size:24px;font-weight:600;margin-bottom:32px;padding-bottom:8px;border-bottom:1px solid var(--border)}
.section-title::before{content:'// ';color:var(--accent-green)}

.post-list{display:flex;flex-direction:column;gap:2px}
.post-item{
    display:flex;align-items:baseline;justify-content:space-between;
    padding:18px 20px;border-radius:6px;text-decoration:none;color:inherit;
    transition:background .15s;border:1px solid transparent;
}
.post-item:hover{background:var(--bg-card);border-color:var(--border)}
.post-item .title{font-weight:600;font-size:16px}
.post-item .meta{color:var(--text-secondary);font-size:13px;white-space:nowrap;margin-left:24px}
.post-item .tags{display:flex;gap:6px;margin-top:4px}
.post-item .tags span{font-size:11px;color:var(--accent);padding:1px 8px;background:rgba(96,165,250,0.1);border-radius:3px;font-family:'JetBrains Mono',monospace}

.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.project-card{
    background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);
    padding:24px;transition:border-color .2s;
}
.project-card:hover{border-color:var(--accent)}
.project-card .icon{font-size:28px;margin-bottom:16px}
.project-card h3{font-size:16px;margin-bottom:8px;font-family:'Inter',sans-serif}
.project-card p{font-size:14px;color:var(--text-secondary);line-height:1.6}

.post-content{max-width:680px;margin:80px auto;padding:0 24px}
.post-content h1{font-family:'JetBrains Mono',monospace;font-size:clamp(24px,4vw,36px);margin-bottom:8px;line-height:1.3}
.post-content .post-date{color:var(--text-secondary);font-size:14px;margin-bottom:40px}
.post-content h2{font-size:22px;margin:40px 0 16px}
.post-content h3{font-size:18px;margin:32px 0 12px}
.post-content p{margin-bottom:20px;font-size:16px;line-height:1.85}
.post-content code{background:var(--bg-elevated);padding:2px 6px;border-radius:3px;font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--accent-green)}
.post-content pre{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;overflow-x:auto;margin:24px 0;line-height:1.5;font-size:13px}
.post-content pre code{background:none;padding:0;color:var(--text)}
.post-content a{color:var(--accent);text-decoration:underline}
.post-content blockquote{border-left:3px solid var(--accent);padding-left:20px;color:var(--text-secondary);font-style:italic;margin:24px 0}
.post-content ul,.post-content ol{margin:16px 0;padding-left:24px}
.post-content li{margin-bottom:8px}
.post-content img{max-width:100%;border-radius:var(--radius)}
.post-content hr{border:none;border-top:1px solid var(--border);margin:40px 0}

footer{text-align:center;padding:40px 0;color:#555;font-size:13px;border-top:1px solid var(--border);margin-top:80px}
footer a{color:var(--accent);text-decoration:none}

@media(max-width:640px){
  .hero h1{font-size:30px}
  .post-item{flex-direction:column}
  .post-item .meta{margin-left:0;margin-top:6px}
}
