/* Login al estilo EasyMarket: fondo azul noche, tarjeta blanca centrada, logo MAVSoft,
   campos grises con ícono y botón dorado. */
* { box-sizing: border-box; }
body { margin: 0; font: 16px/1.4 "Segoe UI", system-ui, sans-serif; color: #0f172a; }
.login-fondo { min-height: 100vh; display: grid; place-items: center; padding: 20px; background: #0f172a; }
.login-caja {
  width: 100%; max-width: 420px; background: #fff; padding: 40px 36px 28px; text-align: center;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .35);
}
.login-logo { width: 220px; max-width: 80%; margin: 0 auto 26px; display: block; }
.login-caja h1 { margin: 0 0 6px; font-size: 32px; font-weight: 800; color: #0f172a; }
.login-sub { margin: 0 0 32px; font-size: 18px; color: #64748b; }

.campo {
  display: flex; align-items: center; gap: 12px; width: 100%; margin-bottom: 16px;
  background: #f1f5f9; border: 1px solid #e2e8f0; padding: 0 12px;
}
.campo:focus-within { border-color: #94a3b8; }
.campo-icono { display: inline-flex; width: 24px; height: 24px; color: #64748b; flex: 0 0 auto; }
.campo-icono svg, .ojo svg { width: 24px; height: 24px; fill: currentColor; }
.campo input {
  flex: 1; min-width: 0; padding: 14px 0; border: 0; background: transparent; font: inherit; color: #0f172a; outline: none;
}
.campo input::placeholder { color: #94a3b8; }
.ojo { background: none; border: 0; padding: 8px; color: #64748b; cursor: pointer; display: inline-flex; }

.recordar { display: flex; align-items: center; gap: 10px; margin: 4px 0 20px; text-align: left; font-size: 15px; color: #0f172a; cursor: pointer; }
.recordar input { width: 20px; height: 20px; accent-color: #1e293b; }

.login-btn {
  width: 100%; padding: 16px; border: 0; background: #d4a343; color: #0f172a; font: inherit; font-size: 18px; font-weight: 600; cursor: pointer;
}
.login-btn:hover { background: #c4932f; }
.login-btn:disabled { background: #94a3b8; cursor: default; }

.login-error { margin: 0 0 14px; padding: 10px 12px; background: #fee2e2; color: #991b1b; font-size: 14px; text-align: left; border-left: 4px solid #ef4444; }
.login-pie { margin: 24px 0 0; font-size: 13px; color: #94a3b8; }

/* El atributo hidden no aplica a elementos SVG (no son HTML): sin esto se ven los dos ojos. */
.ojo svg[hidden] { display: none; }
