/* Login y recuperar contraseña (templates/login.html, templates/acceso.html). Claro/oscuro automático. */
/* colores: static/css/tema.css (se carga antes) */
:root{--ink:var(--text);--mut:var(--muted);--err:var(--bad)}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--bg);color:var(--ink);font:16px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
.card{width:100%;max-width:380px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:32px 28px}
.logo{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#818cf8,#4f46e5);margin-bottom:18px}
h1{font-size:22px;margin:0 0 4px;letter-spacing:-.01em}
p{color:var(--mut);margin:0 0 20px;font-size:14px}
label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}
input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:16px}
input:focus{outline:2px solid var(--accent);border-color:transparent}
button{width:100%;margin-top:16px;padding:13px;border:0;border-radius:12px;background:var(--accent);color:var(--on-accent);font-size:16px;font-weight:600;cursor:pointer}
.err{color:var(--err);font-size:14px;margin-top:12px}
code{background:rgba(127,127,127,.15);padding:2px 6px;border-radius:6px;font-size:13px}
a{color:var(--accent)}
.links{margin-top:18px;font-size:14px;text-align:center}
.ok{color:var(--ink);font-size:14px;background:var(--accent-soft);border-radius:12px;padding:12px 14px;margin:0 0 4px}
label+input{margin-bottom:4px}
.field{margin-top:14px}
