/* auth.css — Pantalla de acceso */
.auth-wrap{
  min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;
  background:linear-gradient(150deg,var(--brand) 0%,var(--brand-dark) 100%);
}
.auth-card{
  width:100%;max-width:400px;background:var(--surface);
  border:1px solid var(--border);border-radius:var(--r-lg);
  padding:36px 32px;box-shadow:var(--shadow-md);
}
.auth-logo{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:26px}
.auth-logo .box{
  width:84px;height:84px;background:#fff;border:1px solid var(--ink);
  border-radius:var(--r);display:flex;align-items:center;justify-content:center;
  overflow:hidden;padding:8px;margin-bottom:12px;
}
.auth-logo .box img{max-width:100%;max-height:100%;object-fit:contain}
.auth-logo h1{font-size:2rem;color:var(--ink);line-height:1}
.auth-logo p{font-size:.74rem;color:var(--text-muted);margin-top:4px;text-transform:uppercase;letter-spacing:.6px}

.field{margin-bottom:16px}
.field label{
  display:block;font-size:.72rem;font-weight:700;color:var(--ink);margin-bottom:6px;
  text-transform:uppercase;letter-spacing:.6px;
}
.field input{
  width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r-sm);
  font-size:1rem;font-family:var(--font-body);color:var(--text);background:#fff;transition:var(--transition);
}
.field input:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px var(--brand-soft)}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  width:100%;padding:13px 16px;border-radius:var(--r-pill);cursor:pointer;
  font-size:1rem;font-weight:700;font-family:var(--font-body);letter-spacing:.3px;
  border:1px solid var(--ink);transition:var(--transition);
}
.btn-primary{background:var(--ink);color:var(--brand)}
.btn-primary:hover{background:var(--ink-soft)}
.btn-google{background:#fff;color:var(--ink);margin-top:10px}
.btn-google:hover{background:var(--surface-2)}

.divider{display:flex;align-items:center;gap:10px;margin:18px 0;color:var(--text-faint);font-size:.78rem}
.divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--border)}

.flash{
  padding:10px 14px;border-radius:var(--r-sm);font-size:.85rem;margin-bottom:18px;
  border:1px solid transparent;border-left-width:3px;
}
.flash-info{background:var(--info-bg);color:var(--info);border-color:#cfe0fb;border-left-color:var(--info)}
.flash-err{background:var(--err-bg);color:var(--err);border-color:#f6d2ce;border-left-color:var(--err)}
.flash-ok{background:var(--ok-bg);color:var(--ok);border-color:#c8ebd4;border-left-color:var(--ok)}

.auth-foot{text-align:center;margin-top:22px;font-size:.74rem;color:var(--text-faint);letter-spacing:.4px}
.auth-links{text-align:center;margin-top:14px;font-size:.82rem}
.auth-links a{color:var(--text-muted);text-decoration:none;border-bottom:1px dotted var(--text-faint)}
.auth-links a:hover{color:var(--ink)}
