
:root{
  --primary:#2563eb; --secondary:#f59e0b; --dark:#0f172a; --gray:#475569; --bg:#f5f7fa;
  --radius:14px;
}
*{box-sizing:border-box}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--dark);margin:0}
.container{max-width:1100px;margin:0 auto;padding:0 16px}
.site-header{background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.06);margin-bottom:24px}
.site-header .logo{font:700 22px/1 Playfair Display,serif;color:var(--dark);text-decoration:none}
.site-header .container{display:flex;align-items:center;justify-content:space-between;padding:14px 16px}
.nav a{margin-left:16px;color:var(--gray);text-decoration:none}
.card{background:#fff;border-radius:var(--radius);padding:18px;box-shadow:0 4px 20px rgba(0,0,0,.06);margin-bottom:18px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.post-title{font:700 28px/1.3 Playfair Display,serif;margin:0 0 8px}
.post-meta{color:#64748b;font-size:13px;margin-bottom:12px}
.post-content p{line-height:1.8}
.site-footer{padding:28px 0;color:#64748b;text-align:center}
a.button{display:inline-block;background:var(--primary);color:#fff;padding:10px 16px;border-radius:999px;text-decoration:none}
.tag{display:inline-block;padding:2px 8px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:12px;margin-right:6px}
img.feature{width:100%;height:220px;object-fit:cover;border-radius:12px}
aside.sidebar{position:sticky;top:12px;height:fit-content}
@media (max-width: 900px){.layout{display:block}.sidebar{margin-top:18px}}
