:root{--bg:#f5f5f7;--card:#fff;--fg:#1d1d1f;--mut:#6e6e73;--acc:#0a84ff;--bd:#d2d2d7;--err:#c62828;--ok:#1b7f3b}
@media(prefers-color-scheme:dark){:root{--bg:#000;--card:#1c1c1e;--fg:#f5f5f7;--mut:#98989d;--bd:#38383a;--err:#ff6b6b;--ok:#4cd964}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
main{max-width:620px;margin:0 auto;padding:48px 16px 24px}
h1{font-size:2rem;margin:0 0 .4em;letter-spacing:-.02em}
h2{font-size:1.15rem;margin:1.8em 0 .5em}
.lead{font-size:1.1rem;color:var(--mut)}
form{background:var(--card);border:1px solid var(--bd);border-radius:16px;padding:20px;margin:24px 0}
.field{display:block;font-weight:600}
input[type=email]{width:100%;margin-top:6px;padding:12px;font:inherit;border:1px solid var(--bd);border-radius:10px;background:var(--bg);color:var(--fg)}
input[type=email]:focus{outline:2px solid var(--acc);border-color:transparent}
fieldset{border:0;padding:0;margin:18px 0}
legend{font-weight:600;margin-bottom:8px;padding:0}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip input{position:absolute;opacity:0}
.chip span{display:inline-block;padding:9px 16px;border:1px solid var(--bd);border-radius:999px;cursor:pointer;user-select:none}
.chip input:checked+span{background:var(--acc);border-color:var(--acc);color:#fff}
.chip input:focus-visible+span{outline:2px solid var(--acc);outline-offset:2px}
button{width:100%;padding:13px;font:inherit;font-weight:600;color:#fff;background:var(--acc);border:0;border-radius:10px;cursor:pointer}
button:hover{filter:brightness(1.08)}
.small{font-size:.85rem;color:var(--mut);margin:14px 0 0}
.msg{padding:10px 14px;border-radius:10px;border:1px solid}
.msg.err{color:var(--err)}.msg.ok{color:var(--ok)}
.steps{color:var(--mut);padding-left:1.2em}
.hp{position:absolute;left:-9999px;height:0;width:0;opacity:0}
a{color:var(--acc)}
footer{max-width:620px;margin:0 auto;padding:16px;text-align:center;font-size:.85rem;color:var(--mut)}
