/* Source Sans + light/dark, accessible defaults */
@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;600;700&display=swap');
:root{
  --bg:#ffffff; --fg:#0b0b0b; --muted:#555; --link:#0a66cc; --card:#f6f6f6; --border:#dadada;
}
@media (prefers-color-scheme: dark){
  :root{ --bg:#0f0f10; --fg:#e7e7e8; --muted:#a1a1a6; --link:#7ab0ff; --card:#17181a; --border:#2a2a2b; }
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; font-family:'Source Sans 3',system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  line-height:1.6; background:var(--bg); color:var(--fg);
}
.container{max-width:860px;margin:0 auto;padding:2rem}
header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}
.brand{font-weight:700;font-size:1.25rem}
nav a{margin-right:1rem;text-decoration:none;color:var(--link)}
.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1.25rem}
h1{font-size:2rem;margin:0.2rem 0 0.75rem}
h2{font-size:1.25rem;margin-top:1.25rem}
a{color:var(--link)}
footer{margin-top:2rem;color:var(--muted);font-size:0.95rem;text-align:center}
hr{border:none;border-top:1px solid var(--border);margin:1.25rem 0}
.badge{display:inline-block;padding:.25rem .5rem;border:1px solid var(--border);border-radius:.5rem;font-size:.85rem;color:var(--muted)}
ul{padding-left:1.2rem}