/* Tokens mínimos Copihuelpe — desde cero (MIS-002/004/005). Sin alma/ui-laravel aún. */
:root {
  --alma-fondo: #eef2ef;
  --alma-texto: #142018;
  --alma-acento: #1f5c3a;
  --alma-borde: #9aab9e;
  --alma-espacio: 1rem;
  --alma-superficie: #ffffff;
  --alma-peligro: #8b1e1e;
  --alma-sobre-acento: #f5faf7;
  --alma-ancho-form: 22rem;
  --alma-radio: 0.25rem;
  --alma-fuente: Georgia, "Times New Roman", serif;
}

body.pantalla-auth {
  margin: 0;
  font-family: var(--alma-fuente);
  background: var(--alma-fondo);
  color: var(--alma-texto);
  padding: calc(var(--alma-espacio) * 2);
}

.pantalla-auth__caja {
  max-width: var(--alma-ancho-form);
  margin: 0 auto;
}

.pantalla-auth__caja--ancha {
  max-width: calc(var(--alma-ancho-form) * 1.6);
}

.lista-gastos {
  list-style: none;
  padding: 0;
  margin: var(--alma-espacio) 0 0;
  border-top: 1px solid var(--alma-borde);
}

.lista-gastos li {
  padding: calc(var(--alma-espacio) * 0.5) 0;
  border-bottom: 1px solid var(--alma-borde);
}

.pantalla-auth h1 {
  color: var(--alma-acento);
  margin: 0 0 var(--alma-espacio);
}

.pantalla-auth h2 {
  color: var(--alma-acento);
  margin: calc(var(--alma-espacio) * 1.5) 0 var(--alma-espacio);
  font-size: 1.15rem;
}

.pantalla-auth p {
  margin: 0 0 var(--alma-espacio);
}

.pantalla-auth label {
  display: block;
  margin-bottom: calc(var(--alma-espacio) * 0.35);
}

.pantalla-auth .campo {
  margin-bottom: var(--alma-espacio);
}

.pantalla-auth input[type="email"],
.pantalla-auth input[type="password"],
.pantalla-auth input[type="text"],
.pantalla-auth input[type="number"],
.pantalla-auth input[type="date"],
.pantalla-auth select {
  width: 100%;
  box-sizing: border-box;
  padding: calc(var(--alma-espacio) * 0.5);
  border: 1px solid var(--alma-borde);
  border-radius: var(--alma-radio);
  background: var(--alma-superficie);
  color: var(--alma-texto);
  font-family: var(--alma-fuente);
}

.pantalla-auth input:focus-visible {
  outline: 2px solid var(--alma-acento);
  outline-offset: 2px;
}

.pantalla-auth .acciones {
  display: flex;
  flex-wrap: wrap;
  gap: var(--alma-espacio);
  margin-top: calc(var(--alma-espacio) * 1.5);
  align-items: center;
}

.pantalla-auth button,
.pantalla-auth .enlace-secundario {
  font-family: var(--alma-fuente);
  font-size: 1rem;
  padding: calc(var(--alma-espacio) * 0.5) var(--alma-espacio);
  border-radius: var(--alma-radio);
  border: 1px solid var(--alma-acento);
  cursor: pointer;
  text-decoration: none;
}

.pantalla-auth button {
  background: var(--alma-acento);
  color: var(--alma-sobre-acento);
}

.pantalla-auth button:focus-visible,
.pantalla-auth .enlace-secundario:focus-visible {
  outline: 2px solid var(--alma-acento);
  outline-offset: 2px;
}

.pantalla-auth .enlace-secundario {
  background: var(--alma-superficie);
  color: var(--alma-acento);
  display: inline-block;
}

.pantalla-auth .errores {
  color: var(--alma-peligro);
  margin-bottom: var(--alma-espacio);
  border-top: 1px solid var(--alma-borde);
  padding-top: var(--alma-espacio);
}

.pantalla-auth .aviso {
  margin-bottom: var(--alma-espacio);
  border-top: 1px solid var(--alma-borde);
  padding-top: var(--alma-espacio);
}

.pantalla-inicio h1 {
  color: var(--alma-acento);
}

.pantalla-inicio p {
  border-top: 1px solid var(--alma-borde);
  padding-top: var(--alma-espacio);
}
