/* Pantalla de acceso: mismos colores y componentes que el resto, sin barra. */
.login-body { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 24px 16px; }
.login-caja { width: 100%; max-width: 400px; }
.login-marca {
  display: flex; align-items: center; justify-content: center; gap: 10px;
  font-weight: 700; font-size: 1.1rem; color: var(--text); margin-bottom: 18px;
  letter-spacing: -0.01em;
}
.login-marca .mk { width: 22px; height: 22px; border-radius: 5px; background: var(--accent); position: relative; }
.login-marca .mk::after {
  content: ""; position: absolute; left: 5px; top: 5px; width: 12px; height: 2px; border-radius: 1px;
  background: var(--card); box-shadow: 0 5px 0 var(--card), 0 10px 0 var(--card);
}
.login-form {
  background: var(--card); border: 1px solid var(--border); border-radius: var(--radius-lg, 12px);
  padding: 28px; box-shadow: var(--shadow);
}
.login-form[hidden] { display: none; }
.login-form h1 { font-size: 1.3rem; margin: 0 0 6px; color: var(--text); letter-spacing: -0.02em; }
.login-form .hint { margin: 0 0 20px; }
.login-btn { width: 100%; padding: 11px; font-size: 0.95rem; margin-top: 4px; }
.login-error { min-height: 1.3em; margin: 0 0 8px; font-size: 0.86rem; color: var(--red); }
