:root {
  --ink: #0b1a22; --deep: #0f2e33; --text: #e8f3ef; --muted: #a9c2bb; --faint: #6f8a84;
  --mint: #5fe0b6; --card: rgba(255,255,255,0.05); --line: rgba(255,255,255,0.09);
}
* { box-sizing: border-box; }
body {
  margin: 0; color: var(--text); background: var(--ink);
  background-image: radial-gradient(ellipse at 50% -10%, #17443f 0%, var(--deep) 35%, var(--ink) 75%);
  background-attachment: fixed;
  font: 17px/1.65 -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, sans-serif;
}
main { max-width: 720px; margin: 0 auto; padding: 48px 20px 80px; }
header a.brand { color: var(--mint); text-decoration: none; font-weight: 700; font-size: 22px; letter-spacing: 0.3px; }
h1 { font-size: 34px; line-height: 1.2; margin: 36px 0 6px; }
h2 { font-size: 20px; margin: 36px 0 8px; }
p, li { color: var(--muted); }
strong { color: var(--text); }
a { color: var(--mint); }
.updated { color: var(--faint); font-size: 15px; margin: 0 0 28px; }
.card { background: var(--card); border: 1px solid var(--line); border-radius: 18px; padding: 18px 22px; margin: 22px 0; }
ul { padding-left: 22px; }
footer { margin-top: 56px; padding-top: 20px; border-top: 1px solid var(--line); color: var(--faint); font-size: 14px; }
footer a { color: var(--faint); margin-right: 16px; }
.hero { padding-top: 12vh; }
.hero h1 { font-size: 44px; margin-top: 0; }
.tag { letter-spacing: 4px; font-size: 13px; color: var(--faint); font-weight: 600; }
