:root{color-scheme:light dark;--bg:#fff;--fg:#1f2328;--muted:#59636e;--border:#d1d9e0;--code-bg:#f6f8fa;--link:#0969da;--accent:#0969da;--accent-fg:#fff;--ok-bg:#dafbe1;--ok-border:#4ac26b;--err-bg:#ffebe9;--err-border:#ff818266}
@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--fg:#e6edf3;--muted:#9198a1;--border:#3d444d;--code-bg:#151b23;--link:#4493f8;--accent:#1f6feb;--ok-bg:#12261e;--ok-border:#2ea043;--err-bg:#3c1618;--err-border:#f85149}}
*{box-sizing:border-box}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--fg);line-height:1.6;margin:0 auto;padding:1rem 1rem 3rem;max-width:52rem}
.top{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding-bottom:.75rem;border-bottom:1px solid var(--border)}
.top nav{flex:1}
.brand{font-weight:700;color:var(--fg);text-decoration:none}
.who{color:var(--muted);font-size:.9rem}
h1{font-size:1.6rem;margin:1.5rem 0 .75rem}
h2{font-size:1.2rem;margin:2rem 0 .5rem;padding-bottom:.3rem;border-bottom:1px solid var(--border)}
p{margin:.5rem 0}
a{color:var(--link)}
.hint{color:var(--muted);font-size:.9rem}
form.stack{display:grid;gap:.9rem;max-width:26rem;margin:1rem 0}
label{display:block;font-weight:600;margin-bottom:.25rem}
input[type=text],input[type=email],input[type=tel],input[type=password]{width:100%;font:inherit;padding:.5rem .7rem;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:6px}
button{font:inherit;font-weight:600;padding:.5rem 1rem;color:var(--accent-fg);background:var(--accent);border:1px solid var(--accent);border-radius:6px;cursor:pointer}
button:hover{filter:brightness(1.1)}
button.link{background:none;border:0;color:var(--link);padding:0;font-weight:400;text-decoration:underline}
button.danger{background:none;color:#cf222e;border-color:var(--border);padding:.2rem .6rem;font-weight:400}
input:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
form.inline{display:inline}
.note{margin:1rem 0;padding:.75rem 1rem;border:1px solid;border-radius:6px}
.note.ok{background:var(--ok-bg);border-color:var(--ok-border)}
.note.error{background:var(--err-bg);border-color:var(--err-border)}
table{border-collapse:collapse;width:100%;margin:.75rem 0;font-size:.95rem}
th,td{border:1px solid var(--border);padding:.4rem .6rem;text-align:left;vertical-align:top}
th{background:var(--code-bg)}
code,.key{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}
.key{display:block;padding:.6rem .8rem;margin:.5rem 0;background:var(--code-bg);border:1px solid var(--border);border-radius:6px;word-break:break-all}
footer{margin-top:3rem;padding-top:1rem;border-top:1px solid var(--border);color:var(--muted);font-size:.875rem}
form.stack.wide{max-width:40rem}
.top nav a{margin-right:.75rem}
.qr{width:auto;border-collapse:collapse;margin:.75rem 0}
.qr td{border:1px solid var(--border);padding:.6rem;background:#fff;color:#1f2328}
.qr img{display:block;max-width:100%;height:auto}
td.dest{word-break:break-all}
