:root{color-scheme:light dark;--bg:#fbfaf7;--fg:#1d1d1b;--muted:#5c5a55;--line:#e3dfd6;--accent:#1d4ed8;--warn-bg:#fff4d6;--warn-fg:#6b4a00;--err-bg:#fde8e8;--err-fg:#8a1f1f;--card:#fff}
@media(prefers-color-scheme:dark){:root{--bg:#161615;--fg:#ecebe6;--muted:#a8a59d;--line:#33322f;--accent:#8ab4ff;--warn-bg:#3d3110;--warn-fg:#ffe2a0;--err-bg:#4a1d1d;--err-fg:#ffc2c2;--card:#1f1f1d}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;padding:24px 16px 64px}
main{max-width:760px;margin:0 auto}h1{font-size:1.7rem;margin:.2em 0 .4em}h2{font-size:1.25rem;margin:1.6em 0 .4em}h3{font-size:1.05rem;margin:1.2em 0 .3em}
p,li{max-width:70ch}a{color:var(--accent)}code{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:0 .3em;font-size:.92em}
pre{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:12px;overflow-x:auto}nav{font-size:.95rem;margin-bottom:1.5em;color:var(--muted)}nav a{margin-right:1em}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px 22px;margin:1.2em 0}.warn{background:var(--warn-bg);color:var(--warn-fg);border-radius:8px;padding:12px 14px;margin:1em 0}
.err{background:var(--err-bg);color:var(--err-fg);border-radius:8px;padding:12px 14px;margin:1em 0}.muted{color:var(--muted)}label{display:block;font-weight:600;margin:1em 0 .3em}
input[type=text],input[type=password]{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--fg);font:inherit}
fieldset{border:1px solid var(--line);border-radius:8px;padding:10px 14px;margin:1em 0}legend{font-weight:600}.opt{display:flex;gap:.6em;align-items:flex-start;margin:.5em 0;font-weight:400}
.opt input{margin-top:.35em}button{background:var(--accent);color:#fff;border:0;border-radius:8px;padding:12px 20px;font:inherit;font-weight:600;cursor:pointer;margin-top:1.2em}
.consent{display:flex;gap:.6em;align-items:flex-start;margin:1.2em 0;font-weight:400}.consent input{margin-top:.35em}.small{font-size:.9rem}footer{margin-top:3em;color:var(--muted);font-size:.9rem}