/* Blog CSS — shared across all articles */
:root {
  --bg:        #080810;
  --card-bg:   #12121e;
  --primary:   #FF6B00;
  --text:      #f0f0f8;
  --text-muted:#8892a4;
  --text-faint:#4a5568;
  --border:    rgba(255,255,255,.07);
  --font:      'Inter', system-ui, sans-serif;
  --mono:      'JetBrains Mono', monospace;
}

*,*::before,*::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:var(--font); background:var(--bg); color:var(--text); line-height:1.7; }
img  { max-width:100%; display:block; }
a    { color:inherit; text-decoration:none; }

/* Nav */
.blog-nav {
  position:sticky; top:0; z-index:100;
  background:rgba(8,8,16,.9); backdrop-filter:blur(16px);
  border-bottom:1px solid var(--border); padding:.9rem 0;
}
.blog-nav-inner { max-width:800px; margin:0 auto; padding:0 2rem; display:flex; justify-content:space-between; align-items:center; }
.blog-logo { font-size:1.5rem; font-weight:900; letter-spacing:-.04em; }
.blog-logo span { color:var(--primary); }
.back-link { color:var(--text-muted); font-size:.9rem; font-weight:600; display:flex; align-items:center; gap:.5rem; transition:color .2s; }
.back-link:hover { color:var(--primary); }

/* Layout */
.blog-main    { padding:3rem 0 6rem; }
.blog-article { max-width:800px; margin:0 auto; padding:0 2rem; }

/* Header */
.article-header { margin-bottom:3rem; }
.article-cats   { display:flex; gap:.5rem; flex-wrap:wrap; margin-bottom:1.2rem; }
.article-cat    {
  padding:.3rem .85rem; border-radius:100px; font-size:.78rem; font-weight:700;
  background:rgba(255,107,0,.12); border:1px solid rgba(255,107,0,.25); color:var(--primary);
}
.article-header h1 { font-size:clamp(1.8rem,4vw,2.8rem); font-weight:900; letter-spacing:-.03em; line-height:1.15; margin-bottom:1rem; }
.article-sub { color:var(--text-muted); font-size:1.15rem; line-height:1.7; margin-bottom:1.5rem; }
.article-meta { display:flex; align-items:center; gap:.9rem; margin-bottom:2rem; }
.author-avatar { width:44px; height:44px; border-radius:50%; object-fit:cover; border:2px solid var(--primary); flex-shrink:0; }
.article-meta strong { display:block; font-size:.95rem; font-weight:700; }
.article-meta span   { font-size:.82rem; color:var(--text-muted); }
.article-hero-img    { width:100%; border-radius:16px; border:1px solid var(--border); }

/* Body */
.article-body { display:flex; flex-direction:column; gap:1.6rem; }
.article-body h2 { font-size:1.55rem; font-weight:800; margin-top:.8rem; }
.article-body h3 { font-size:1.15rem; font-weight:700; color:var(--text); }
.article-body p  { color:var(--text-muted); font-size:1.03rem; line-height:1.85; }
.article-body em { color:var(--text); font-style:italic; }
.article-body strong { color:var(--text); }
.article-body ul, .article-body ol {
  color:var(--text-muted); font-size:1rem; line-height:1.8;
  padding-left:1.5rem; display:flex; flex-direction:column; gap:.5rem;
}
.article-body li strong { color:var(--text); }

blockquote {
  border-left:3px solid var(--primary);
  padding:1.2rem 1.5rem;
  background:rgba(255,107,0,.06);
  border-radius:0 10px 10px 0;
  color:var(--text); font-size:1.05rem; font-style:italic; line-height:1.8;
}

pre {
  background:#0d0d18; border:1px solid var(--border); border-radius:12px;
  padding:1.5rem; overflow-x:auto;
}
code {
  font-family:var(--mono); font-size:.88rem; color:#a5f3fc; line-height:1.7;
}
p code {
  background:rgba(255,255,255,.06); padding:.15rem .5rem; border-radius:4px;
  font-size:.88rem; color:#fb923c;
}

/* Footer */
.article-footer { margin-top:4rem; padding-top:2.5rem; border-top:1px solid var(--border); display:flex; flex-direction:column; gap:2rem; }
.author-card {
  display:flex; gap:1.25rem; align-items:flex-start;
  background:var(--card-bg); border:1px solid var(--border); border-radius:16px; padding:1.75rem;
}
.author-card img { width:64px; height:64px; border-radius:50%; object-fit:cover; border:2px solid var(--primary); flex-shrink:0; }
.author-card h3 { font-size:1.1rem; font-weight:800; margin-bottom:.3rem; }
.author-card p  { color:var(--text-muted); font-size:.9rem; margin-bottom:.8rem; }
.author-links   { display:flex; gap:1rem; flex-wrap:wrap; }
.author-links a { color:var(--primary); font-size:.88rem; font-weight:600; display:flex; align-items:center; gap:.4rem; transition:opacity .2s; }
.author-links a:hover { opacity:.7; }

.btn-back-blog {
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.75rem 1.5rem; border-radius:100px; font-size:.9rem; font-weight:600;
  background:var(--card-bg); border:1px solid var(--border); color:var(--text-muted);
  transition:all .25s; width:fit-content;
}
.btn-back-blog:hover { border-color:var(--primary); color:var(--primary); }

/* ================================================
   RESPONSIVE
================================================ */
@media (max-width: 768px) {
  .blog-main { padding: 2rem 0 4rem; }
  .blog-article { padding: 0 1.5rem; }
}

@media (max-width: 480px) {
  .author-card { flex-direction: column; align-items: center; text-align: center; gap: 1rem; }
  .author-links { justify-content: center; }
  .article-header h1 { font-size: 1.8rem; }
  .article-meta { flex-direction: column; align-items: flex-start; gap: 0.5rem; }
  .article-meta img { display: none; } /* Hide avatar on very small screens to save space */
}
