:root{--paper:#fff;--surface:#f6f7f8;--ink:#1a1d23;--muted:#6b7280;--line:#e8eaed;--accent:#0f766e;--accent-soft:#e8f3f1;--danger:#b42318}
*{box-sizing:border-box}
body{margin:0;background:var(--surface);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--accent)}
.entete{background:var(--paper);border-bottom:1px solid var(--line)}
.entete-in,.contenu{max-width:760px;margin:0 auto;padding:0 16px}
.entete-in{display:flex;align-items:center;min-height:68px}
.marque{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;font-weight:700;letter-spacing:-.3px}
.marque-logo{width:34px;height:34px;border-radius:8px;background:var(--ink);color:var(--paper);display:grid;place-items:center;flex-shrink:0}
.marque-logo svg{width:18px;height:18px}
.marque small{display:block;font-size:10px;font-weight:500;letter-spacing:.3px;color:var(--muted)}
.contenu{padding-top:32px;padding-bottom:48px}
h1{font-size:1.6rem;line-height:1.25;margin:0 0 8px}
.carte{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:24px;margin-top:24px}
.outil{display:flex;gap:16px;align-items:flex-start}
.outil img{width:56px;height:56px;border-radius:12px;flex-shrink:0}
.outil h2{margin:0;font-size:1.2rem}
.outil p{margin:4px 0 0;color:var(--muted)}
.bouton{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:#fff;border:0;border-radius:8px;padding:11px 18px;font:600 15px/1 inherit;font-family:inherit;text-decoration:none;cursor:pointer;margin-top:18px}
.bouton:hover{background:#0b5f58}
.bouton:focus-visible,input:focus-visible{outline:3px solid #99d5cd;outline-offset:2px}
h3{font-size:1rem;margin:28px 0 8px}
ol{margin:0;padding-left:1.4em}
ol li{margin:8px 0}
code,kbd{font-family:ui-monospace,Consolas,monospace;font-size:.92em;background:var(--accent-soft);color:#0b4f49;border-radius:4px;padding:1px 6px}
.note{background:var(--accent-soft);border-radius:8px;padding:12px 14px;margin-top:20px;font-size:.95rem}
.acces{max-width:400px;margin:40px auto 0}
label{display:block;font-weight:600;margin-bottom:6px}
input{width:100%;font:inherit;font-size:1.2rem;letter-spacing:.2em;padding:10px 12px;border:1px solid #cfd4da;border-radius:8px}
.erreur{color:var(--danger);margin:10px 0 0;font-weight:600}
.pied{text-align:center;color:var(--muted);font-size:.85rem;padding:0 16px 32px}
@media (max-width:520px){.outil{flex-direction:column}.carte{padding:18px}}
