:root {
  --bg:#0f1419; --panel:#1a2129; --line:#2b3540; --txt:#e6edf3; --mut:#8b98a5;
  --ok:#2ea043; --amber:#d29922; --red:#d1242f; --accent:#2f81f7;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; font:16px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; background:var(--bg); color:var(--txt); }
a { color:var(--accent); text-decoration:none; }
a:hover { text-decoration:underline; }
.wrap { max-width:760px; margin:0 auto; padding:0 24px; }

nav { position:sticky; top:0; z-index:10; background:rgba(15,20,25,.9); backdrop-filter:blur(6px); border-bottom:1px solid var(--line); }
nav .row { max-width:1080px; margin:0 auto; padding:14px 24px; display:flex; align-items:center; justify-content:space-between; }
.brand { display:flex; align-items:center; gap:9px; font-weight:700; color:var(--txt); }
.brand .dot { width:9px; height:9px; border-radius:50%; background:var(--ok); box-shadow:0 0 0 3px rgba(46,160,67,.2); }
nav .links { display:flex; gap:20px; align-items:center; font-size:14px; }
nav .links a { color:var(--mut); }
nav .links a:hover { color:var(--txt); text-decoration:none; }
.btn { display:inline-block; padding:9px 16px; border-radius:9px; border:1px solid var(--line); color:var(--txt); font-size:14px; font-weight:600; }
.btn.primary { background:var(--accent); border-color:var(--accent); color:#fff; }
.btn.primary:hover { background:#4c93ff; text-decoration:none; }

main { padding:48px 0 24px; }
.kicker { color:var(--accent); font-size:13px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; }
h1 { font-size:34px; line-height:1.25; margin:10px 0 12px; letter-spacing:-.01em; }
.meta { color:var(--mut); font-size:14px; margin-bottom:8px; }
article h2 { font-size:22px; margin:36px 0 10px; }
article h3 { font-size:18px; margin:26px 0 8px; }
article p, article li { color:#d5dde5; }
article ul { padding-left:22px; }
article li { margin:6px 0; }
.lede { font-size:19px; color:var(--txt); }
blockquote { margin:24px 0; padding:14px 20px; border-left:3px solid var(--accent); background:var(--panel); border-radius:0 8px 8px 0; color:var(--txt); }

.cta { margin:44px 0 8px; background:var(--panel); border:1px solid var(--accent); border-radius:14px; padding:28px; text-align:center; }
.cta h3 { margin:0 0 8px; font-size:20px; }
.cta p { color:var(--mut); margin:0 0 16px; }

.post-list { list-style:none; padding:0; margin:28px 0; display:grid; gap:16px; }
.post-card { display:block; background:var(--panel); border:1px solid var(--line); border-radius:12px; padding:22px; }
.post-card:hover { border-color:var(--accent); text-decoration:none; }
.post-card h2 { margin:6px 0 6px; font-size:20px; color:var(--txt); }
.post-card p { margin:0; color:var(--mut); font-size:15px; }

footer { border-top:1px solid var(--line); margin-top:48px; color:var(--mut); font-size:14px; }
footer .row { max-width:1080px; margin:0 auto; padding:28px 24px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; }
