/* ============================================================================
   Multikrd — tema del login de Dex (customer-facing). Estiliza el password/login
   de Dex con la marca Multikrd. Paleta de marca:
     verde #73C16C · verde limón #C1D82F · rojo #F1645D · naranja #FDBA63
     azules #1E4164 · #0063BE · #0097EC · #95E0FD · #CFEEFA · #ECF9FE
   Se monta en /srv/dex/web/themes/multikrd y se activa con frontend.theme=multikrd.
   ============================================================================ */

.theme-body {
  background: linear-gradient(160deg, #ECF9FE 0%, #CFEEFA 100%);
  background-attachment: fixed;
  color: #1E4164;
  font-family: 'Segoe UI', 'Source Sans Pro', Helvetica, Arial, sans-serif;
  min-height: 100vh;
}

/* Barra superior con el wordmark de Multikrd, centrado */
.theme-navbar {
  background-color: #ffffff;
  box-shadow: 0 2px 10px rgba(30, 65, 100, 0.12);
  height: 68px;
  padding: 0;
  text-align: center;
  overflow: visible;
}

.theme-navbar__logo-wrap {
  display: inline-flex;
  align-items: center;
  height: 100%;
  padding: 14px 0;
  width: auto;
}

.theme-navbar__logo {
  height: 100%;
  max-height: 40px;
}

.dex-container {
  color: #1E4164;
  margin: 56px auto;
  max-width: 420px;
  min-width: 320px;
  text-align: center;
}

/* Tarjeta del formulario */
.theme-panel {
  background-color: #ffffff;
  border-radius: 14px;
  border-top: 4px solid #73C16C;
  box-shadow: 0 14px 44px rgba(30, 65, 100, 0.18);
  padding: 34px 34px 40px;
}

.theme-heading {
  color: #1E4164;
  font-size: 22px;
  font-weight: 700;
  margin: 0 0 24px;
  text-align: center;
}

.theme-form-row {
  margin: 0 0 16px;
  text-align: left;
}

.theme-form-label {
  color: #0063BE;
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 6px;
}

.theme-form-input {
  width: 100%;
  padding: 11px 14px;
  font-size: 15px;
  color: #1E4164;
  background: #F7FCFF;
  border: 1.5px solid #CFEEFA;
  border-radius: 8px;
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

.theme-form-input:focus {
  border-color: #0097EC;
  box-shadow: 0 0 0 3px rgba(0, 151, 236, 0.15);
  background: #ffffff;
}

.theme-form-input::placeholder { color: #9dccdf; }

/* Botón principal (Login) — verde de marca */
.dex-btn.theme-btn--primary {
  width: 100%;
  min-width: 0;
  margin-top: 12px;
  background: #73C16C;
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  border: none;
  border-radius: 8px;
  padding: 12px;
  box-shadow: 0 4px 12px rgba(115, 193, 108, 0.35);
  transition: background .15s ease, transform .05s ease;
}
.dex-btn.theme-btn--primary:hover { background: #5fae58; }
.dex-btn.theme-btn--primary:active { transform: translateY(1px); }

/* Botón de conector (pantalla de selección, login.html) */
.dex-btn.theme-btn-provider {
  width: 100%;
  min-width: 0;
  background: #ffffff;
  color: #1E4164;
  border: 1.5px solid #CFEEFA;
  border-radius: 8px;
  margin-top: 6px;
}
.dex-btn.theme-btn-provider:hover { border-color: #0097EC; color: #0063BE; }

/* Error de credenciales — rojo de marca */
.dex-error-box {
  background-color: #F1645D;
  border-radius: 8px;
  color: #ffffff;
  font-size: 14px;
  margin: 18px auto 0;
  max-width: 100%;
  padding: 9px 12px;
}

.theme-link-back { margin-top: 20px; text-align: center; }
.dex-subtle-text { color: #0097EC; font-size: 13px; text-decoration: none; }
.dex-subtle-text:hover { text-decoration: underline; }
