:root{color:#1f2937;--accent:#2563eb;--accent-hover:#1d4ed8;--error:#b91c1c;background:#f3f4f6;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0}.page{justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.card{background:#fff;border-radius:.75rem;width:100%;max-width:28rem;padding:2rem;box-shadow:0 10px 25px #00000014}h1{margin:0 0 1.5rem;font-size:1.5rem}.row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.field{margin-bottom:1rem}.field label{margin-bottom:.375rem;font-size:.875rem;font-weight:500;display:block}.field input{width:100%;font:inherit;border:1px solid #d1d5db;border-radius:.5rem;padding:.625rem .75rem}.field input:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:#0000}.field input[aria-invalid=true]{border-color:var(--error)}.field-error{color:var(--error);margin:.25rem 0 0;font-size:.8125rem}button{width:100%;font:inherit;color:#fff;background:var(--accent);cursor:pointer;border:none;border-radius:.5rem;margin-top:.5rem;padding:.75rem;font-weight:600}button:hover:not(:disabled){background:var(--accent-hover)}button:disabled{opacity:.6;cursor:not-allowed}.alert{border-radius:.5rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9375rem}.alert-error{color:var(--error);background:#fef2f2;border:1px solid #fecaca}.alert-success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.switch{text-align:center;margin:1.5rem 0 0;font-size:.9375rem}a{color:var(--accent)}@media (width<=480px){.row{grid-template-columns:1fr;gap:0}}
