/* Feuille de style commune aux 3 pages : sobre, lisible, clair/sombre */
:root { --bg:#fbfaf8; --fg:#1d1d1b; --muted:#5f5d58; --line:#e3e0da; --accent:#b3261e; color-scheme: light; }
@media (prefers-color-scheme: dark) {
  :root { --bg:#151514; --fg:#ecebe8; --muted:#a3a19b; --line:#2e2d2a; --accent:#e5564c; color-scheme: dark; }
}
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--fg); font:16px/1.65 -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif; }
.wrap { max-width: 720px; margin: 0 auto; padding: 32px 20px 64px; }
header { display:flex; align-items:center; gap:16px; padding-bottom:20px; border-bottom:1px solid var(--line); flex-wrap: wrap; }
header img { width:96px; height:96px; }
header .brand { font-weight:600; font-size:20px; color:var(--fg); text-decoration:none; }
nav { margin-left:auto; display:flex; gap:18px; font-size:15px; }
nav a { color:var(--muted); text-decoration:none; }
nav a:hover, nav a[aria-current] { color:var(--fg); }
h1 { font-size:28px; line-height:1.25; margin:36px 0 8px; }
h2 { font-size:19px; margin:32px 0 6px; }
p, li { color:var(--fg); }
.meta { color:var(--muted); font-size:14px; margin-top:0; }
a { color:var(--accent); }
footer { margin-top:56px; padding-top:16px; border-top:1px solid var(--line); color:var(--muted); font-size:14px; }
