:root{
  --bleu:#2F5BFF; --nuit:#0B1B4D; --ambre:#FFB020;
  --fond:#F7F9FC; --carte:#FFFFFF; --texte:#0F172A; --gris:#5b6478; --bord:#e6ebf3;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --fond:#0A1024; --carte:#111a35; --texte:#eef2fb; --gris:#a4adc4; --bord:#1e2a4d;
  }
}
:root[data-theme="dark"]{
  --fond:#0A1024; --carte:#111a35; --texte:#eef2fb; --gris:#a4adc4; --bord:#1e2a4d;
}
*{box-sizing:border-box}
body{margin:0;background:var(--fond);color:var(--texte);line-height:1.65;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}
.wrap{max-width:800px;margin:0 auto;padding:0 16px}
a{color:var(--bleu)}
header{border-bottom:1px solid var(--bord);position:sticky;top:0;background:color-mix(in srgb,var(--fond) 88%,transparent);backdrop-filter:blur(8px)}
.nav{display:flex;align-items:center;justify-content:space-between;height:60px}
.brand{display:flex;align-items:center;gap:.55rem;font-weight:800;color:var(--texte);text-decoration:none}
.logo{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--bleu),var(--nuit));display:grid;place-items:center}
.logo svg{width:18px;height:18px}
.nav a.back{color:var(--gris);font-weight:600;text-decoration:none;font-size:.95rem}
.nav a.back:hover{color:var(--texte)}
main{padding:36px 0 60px}
h1{font-size:clamp(1.7rem,4vw,2.2rem);letter-spacing:-.01em;margin:.2rem 0 .3rem}
.updated{color:var(--gris);font-size:.9rem;margin-bottom:1.6rem}
h2{font-size:1.2rem;margin:2rem 0 .5rem;border-top:1px solid var(--bord);padding-top:1.4rem}
h2:first-of-type{border-top:0;padding-top:0}
p,li{color:var(--texte)}
.muted{color:var(--gris)}
ul{padding-left:1.2rem}
li{margin:.3rem 0}
code{background:color-mix(in srgb,var(--bleu) 12%,transparent);padding:.05rem .35rem;border-radius:5px;font-size:.92em}
.ph{background:color-mix(in srgb,var(--ambre) 22%,transparent);color:#0F172A;padding:.02rem .3rem;border-radius:4px;font-weight:600}
.note{background:var(--carte);border:1px solid var(--bord);border-left:3px solid var(--ambre);border-radius:10px;padding:12px 16px;margin:1.2rem 0;color:var(--gris);font-size:.92rem}
footer{border-top:1px solid var(--bord);padding:24px 0;color:var(--gris);font-size:.9rem}
footer a{color:var(--gris);font-weight:600;text-decoration:none;margin-right:1.2rem}
footer a:hover{color:var(--texte)}
