/* postgame blog — shared dark theme, matches the main site brand
   Tokens mirror /styles.css : bg #09080d · accent #e94560 · Geist · border #2e2e38 */
:root{
  --bg:#09080d;
  --card:#17171c;
  --line:#2e2e38;
  --ink:#ececf1;        /* headings */
  --body:#c9c9d2;       /* long-form body text — softened for readability on dark */
  --muted:#9a9aa8;
  --accent:#e94560;
  --accent-2:#ff5d77;
  --accent-ink:#cc2f4d; /* accent on white (button text) */
  --radius:12px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--body);
  font-family:'Geist',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.wrap{max-width:720px;margin:0 auto;padding:0 22px}

/* header */
header.site{border-bottom:1px solid var(--line);background:var(--bg)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;padding:15px 22px;max-width:760px}
.brand{font-weight:700;font-size:19px;color:var(--ink);text-decoration:none;letter-spacing:-.02em}
.brand span{color:var(--accent)}
.nav a{color:var(--accent);text-decoration:none;font-weight:600;font-size:15px}
.nav a:hover{color:var(--accent-2)}

/* article */
article{padding:46px 0 24px}
.eyebrow{color:var(--accent);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}
h1{color:var(--ink);font-size:clamp(30px,6vw,40px);line-height:1.12;letter-spacing:-.03em;margin:0 0 18px;font-weight:700}
h2{color:var(--ink);font-size:25px;line-height:1.25;letter-spacing:-.02em;margin:44px 0 12px;font-weight:600}
h3{color:var(--ink);font-size:19px;margin:28px 0 8px;font-weight:600}
p{margin:0 0 18px;font-size:18px;color:var(--body)}
.lead{font-size:21px;line-height:1.55;color:#b6b6c2;font-weight:400}
a{color:var(--accent);text-decoration:none}
article a:hover{text-decoration:underline}
em{color:#e2e2e8;font-style:italic}
strong{color:var(--ink)}
ul,ol{padding-left:22px;margin:0 0 18px}
li{margin:8px 0;font-size:18px;color:var(--body)}
li strong{color:var(--ink)}

/* how-to steps */
.step{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 22px;margin:18px 0}
.step .n{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;font-weight:700;width:28px;height:28px;border-radius:50%;margin-right:10px;font-size:15px;vertical-align:middle}
.step h3{display:inline;vertical-align:middle;margin:0}
.step p{color:var(--body)}

/* callout */
.callout{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:10px;padding:16px 20px;margin:24px 0;font-size:17px;color:#d6d6de}

/* worked example */
.example{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:10px;padding:18px 20px;margin:24px 0}
.example .tag{font-size:13px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.05em}
.example .move{font-weight:700;font-size:18px;margin:4px 0 8px;color:var(--ink)}
.example p{color:var(--body)}

/* comparison picks */
.pick{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;margin:22px 0}
.pick h3{margin:0 0 4px;color:var(--ink)}
.pick .meta{font-size:14px;color:var(--muted);margin-bottom:10px}
.pick.best{border-left:3px solid var(--accent)}
.badge{display:inline-block;background:var(--accent);color:#fff;font-size:12px;font-weight:700;padding:3px 9px;border-radius:20px;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;margin-left:8px}

/* table */
table{width:100%;border-collapse:collapse;margin:20px 0;font-size:15px}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);color:var(--body)}
th{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}
td strong{color:var(--ink)}

/* CTA */
.cta{background:var(--accent);color:#fff;border-radius:14px;padding:28px 26px;margin:38px 0;text-align:center}
.cta h3{color:#fff;margin:0 0 6px;font-size:22px}
.cta p{color:rgba(255,255,255,.92);margin:0 0 16px;font-size:16px}
.cta .btn,.cta a,.btn{display:inline-block;background:#fff;color:var(--accent-ink);font-weight:700;text-decoration:none;padding:13px 26px;border-radius:10px;font-size:17px}
.cta .btn:hover,.cta a:hover,.btn:hover{background:#f1f1f4;text-decoration:none}
.fine{font-size:14px;color:rgba(255,255,255,.8)}

/* blog index */
.sub{color:var(--muted);font-size:19px;margin:0 0 28px}
a.card{display:block;text-decoration:none;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;margin:16px 0;transition:border-color .15s}
a.card:hover{border-color:var(--accent);text-decoration:none}
a.card .k{color:var(--accent);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
a.card h2{font-size:22px;margin:6px 0 6px;letter-spacing:-.02em;color:var(--ink)}
a.card p{margin:0;color:var(--muted);font-size:16px}

/* related */
.related{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 22px;margin:30px 0}
.related strong{display:block;margin-bottom:6px;color:var(--ink)}
.related a{color:var(--accent);display:inline-block;padding:3px 0}

/* footer */
footer.site{border-top:1px solid var(--line);margin-top:48px;padding:30px 0;color:var(--muted);font-size:14px}
footer.site .wrap{max-width:760px}
footer.site a{color:var(--muted);text-decoration:none;margin-right:16px}
footer.site a:hover{color:var(--ink)}
.foot-logo{font-weight:700;color:var(--ink);margin-bottom:10px;font-size:16px}
.foot-logo span{color:var(--accent)}

@media (max-width:560px){
  h1{font-size:30px}
  .lead{font-size:19px}
  p,li{font-size:17px}
  article{padding:34px 0 20px}
  header.site .wrap{padding:14px 18px}
}
