:root{--bg:#0a0a0a;--s1:#141414;--bd:#2a2a2a;--tx:#f2f2f2;--t3:#9a9a9a;--acc:#7aa2ff;color-scheme:dark}
*{box-sizing:border-box}html,body{min-height:100%;margin:0;background:var(--bg);color:var(--tx);font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}
.w{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(24px + env(safe-area-inset-top)) 20px 24px}
.card{width:100%;max-width:380px;background:var(--s1);border:1px solid var(--bd);border-radius:20px;padding:28px}
.mk{width:52px;height:52px;border-radius:14px;background:#000;border:1px solid #3a3a3a;margin-bottom:16px}
h1{font-size:26px;letter-spacing:-.02em;margin:0 0 4px}p.sub{color:var(--t3);margin:0 0 22px}
form{display:flex;flex-direction:column;gap:12px}label{font-size:13px;color:var(--t3);display:flex;flex-direction:column;gap:6px}
input{font:inherit;padding:12px 14px;border-radius:12px;border:1px solid var(--bd);background:#0d0d0d;color:var(--tx);outline:none}
input:focus{border-color:var(--acc);box-shadow:0 0 0 3px #7aa2ff33}
button{font:inherit;font-weight:600;min-height:48px;border-radius:999px;border:0;background:var(--tx);color:var(--bg);cursor:pointer;margin-top:6px}button:disabled{opacity:.5}
button.ghost{background:transparent;color:var(--tx);border:1px solid var(--bd)}button.danger{background:#ff6b6b;color:#000}
.msg{min-height:22px;font-size:14px;text-align:center}.err{color:#ff8a8a}.ok{color:#8affb0}
.alt{margin-top:18px;text-align:center;color:var(--t3);font-size:14px}a{color:var(--acc)}
