:root{
  --bg:#f6f5fb; --surface:#ffffff; --ink:#1d1a2b; --ink-soft:#4a4660; --muted:#7a7590;
  --accent:#3b4ef0; --border:#e4e1f0;
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#13111c; --surface:#1d1a2b; --ink:#f1eff8; --ink-soft:#c9c5da; --muted:#9a95b0;
    --accent:#8c98ff; --border:#2e2a40;
  }
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0; background:var(--bg); color:var(--ink-soft);
  font:16px/1.65 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
main{
  max-width:720px; margin:32px auto; padding:32px 24px;
  background:var(--surface); border:1px solid var(--border); border-radius:16px;
}
@media (max-width:760px){
  main{margin:0; border-radius:0; border-left:0; border-right:0; padding:28px 16px;}
}
h1,h2,h3{color:var(--ink); line-height:1.25;}
h1{font-size:2rem; margin:0 0 8px; letter-spacing:.01em;}
h2{font-size:1.25rem; margin:32px 0 8px;}
h3{font-size:1rem; margin:20px 0 4px;}
p,ul{margin:0 0 12px;}
ul{padding-left:22px;}
li{margin-bottom:4px;}
a{color:var(--accent); text-underline-offset:2px;}
.lead{font-size:1.125rem; color:var(--ink);}
.muted{color:var(--muted); font-size:.9rem;}
.back{margin-bottom:20px; font-size:.9rem;}
footer{margin-top:40px; padding-top:16px; border-top:1px solid var(--border); font-size:.9rem;}
