:root { --bg:#0D0F25; --card:#1A1C3A; --fg:#EAEAEA; --text:#D7DCEB; --muted:#AAAAAA; --primary:#4361EE; --link:#8FA2FF; --border:rgba(255,255,255,.14); --err:#ff8787; --ok:#69db7c; }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--text); font:16px/1.65 Arial,Helvetica,sans-serif; }
main { max-width:680px; margin:0 auto; padding:32px 16px 64px; }
main > * { max-width:100%; }
h1 { font-size:1.7rem; margin-top:0; color:#fff; } h2 { font-size:1.15rem; margin-top:1.6em; color:#fff; }
a { color:var(--link); }
label { display:block; font-weight:600; margin:1em 0 .3em; }
input[type=email] { width:100%; padding:12px; font-size:1rem; border:1px solid var(--border); border-radius:10px; background:var(--card); color:var(--fg); }
button { margin-top:1em; padding:13px 22px; font-size:.95rem; font-weight:700; border:0; border-radius:10px; background:var(--primary); color:#fff; cursor:pointer; }
button:disabled { opacity:.6; cursor:default; }
.muted { color:var(--muted); font-size:.9rem; }
.msg { margin-top:1em; padding:12px; border-radius:10px; border:1px solid var(--border); background:var(--card); }
.msg.error { border-color:var(--err); color:var(--err); } .msg.ok { border-color:var(--ok); color:var(--ok); }
.lang { float:right; font-size:.9rem; }
nav.foot { margin-top:3em; font-size:.9rem; }
nav.foot a { color:var(--muted); }
