body {
    height: 100%;
    margin: 0;
    padding: 0;
    background: linear-gradient(-45deg, #5683b6, #7ad0fa, #bcd8fa, #2a466b);
    background-size: 400% 400%;
    animation: bgmove 20s ease-in-out infinite; /* más lento */
    font-family: Verdana, Helvetica, Tahoma, sans-serif;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 10pt;
}

@keyframes bgmove {
    0% {
        background-position: 0% 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0% 50%;
    }
}

/* Para usuarios que quieren menos movimiento */
@media (prefers-reduced-motion: reduce) {
    body {
        animation: none !important;
    }
}
    .login-container {
      background: rgba(255,255,255,0.97);
      padding: 2.1rem 1.1rem 1.5rem 1.1rem;
      border-radius: 8px;
      box-shadow: 0 6px 28px rgba(0,0,0,0.11);
      position: relative;
      width: 100%;
      max-width: 432px;
      min-width: 400px;
      min-height: 390px;
      display: flex;
      flex-direction: column;
      align-items: center;
      z-index: 2;
      box-sizing: border-box;
      margin: 0;
    }
    .login-image {
      width: 185px;
      max-width: 85%;
      height: auto;
      margin: 0 0 14px 0;
      display: block;
      object-fit: contain;
      border-radius: 2px;
      border: none;
      box-shadow: none;
      background: transparent;
    }
    .login-title {
      color: #111;
      font-family: 'Segoe UI', Verdana, Helvetica, Arial, sans-serif;
      font-weight: 500;
      letter-spacing: 0.05em;
      font-size: 1.1rem;
      text-align: center;
      margin-bottom: 1.5em;
      margin-top: 1.5em;
      user-select: none;
      line-height: 1.4;
      word-break: break-word;
      hyphens: auto;
    }
    .login-form {
      width: 100%;
      display: flex;
      flex-direction: column;
      gap: 0.8rem;
    }
    .login-form label {
      font-weight: 600;
      color: #5683b6;
      margin-bottom: 0.07rem;
      font-size: 10pt;
    }
    .login-form input,
    .login-form select {
      /*padding: 0.74rem;*/
      border: 1px solid #cee9fc;
      border-radius: 3px;
      font-size: 10pt;
      margin-bottom: 0.11rem;
      font-family: inherit;
      box-sizing: border-box;
    }
    .login-form select {
      /*background: #f8fafc;*/
      color: #425067;
      padding-bottom: 4px;;
    }
    .login-form button {
      background: #5683b6;
      color: #fff;
      border: none;
      padding: 0.69rem;
      border-radius: 3px;
      font-size: 10pt;
      cursor: pointer;
      transition: background 0.3s;
      margin-bottom: 0.2rem;
    }
    .login-form button:hover {
      background: #355077;
    }
    .separator {
      display: flex;
      align-items: center;
      justify-content: center;
      color: #adc7e4;
      font-size: 10pt;
      gap: 6px;
      font-family: inherit;
      font-weight: 400;
      margin: 0.16rem 0 0.13rem 0;
      opacity: 0.97;
    }
    .separator span {
      flex: none;
    }
    .separator:before,
    .separator:after {
      content: "";
      flex: 1;
      border-bottom: 1px solid #cee9fc;
      margin: 0 6px;
    }
    .ms-login-btn {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 9px;
      background: #2F2F2F;
      color: #fff;
      border: none;
      padding: 0.69rem;
      border-radius: 3px;
      font-weight: 500;
      font-size: 10pt;
      cursor: pointer;
      transition: background 0.3s;
      box-shadow: 0 1px 8px rgba(0,0,0,0.09);
      margin-top: 0.12rem;
      width: 100%;
    }
    .ms-login-btn:hover {
      background: #0078D4;
    }
    .ms-login-btn img {
      width: 19px;
      height: 19px;
    }
    .forgot-link {
      margin-top: 0;
      text-align: right;
      width: 100%;
    }
    .forgot-link a {
      color: #3883e3;
      font-size: 10pt;
      text-decoration: none;
      font-weight: 500;
      transition: color 0.18s;
    }
    .forgot-link a:hover {
      text-decoration: underline;
      color: #355077;
    }
    @media (max-width: 700px) {
      .login-container {
        width: 100%;
        min-width: 100%;
        border-radius: 0;
        box-shadow: none;
        margin: 0;
        min-height: 100vh;
        padding: 2.4rem 5vw 2rem 5vw;
      }
      .login-image {
        width: 95vw;
        max-width: 270px;
        min-width: 90px;
      }
      .login-title {
        font-size: 10pt;
        padding: 0 4vw;
      }
    }
    @media (max-width: 400px) {
      .login-title {
        font-size: 10pt;
        padding: 0 1vw;
      }
      .login-container {
        padding: 1.2rem 1vw 1.1rem 1vw;
      }
    }

.remember-row {
  display: flex;
  align-items: center;     /* Centrar verticalmente */
  gap: 8px;                /* Espacio entre el checkbox y la etiqueta */
  font-size: 8pt;
  margin-bottom: 0.3rem;
  margin-top: 0.1rem;
  /* Opcional: para que no sobresalga a la derecha */
  flex-wrap: wrap;
}
.remember-row input[type="checkbox"] {
  accent-color: #5683b6;   /* Color corporativo */
  width: 16px;
  height: 16px;
  margin: 0;
  margin-right: 4px;;
  vertical-align: middle;
}
.remember-row label {
  margin: 0;
  padding: 0;
  color: #222;
  font-weight: normal;
  cursor: pointer;
}

#rootContainer {
    height: auto!important;
}
.Wt-domRoot {
    height: auto!important;
}

/* - - - - - - - - */

.login-footer-branding {
  position: fixed;
  bottom: 18px;
  left: 50%;
  transform: translateX(-50%);
  color: #4a4a4a;
  font-size: 1.03rem;
  letter-spacing: 0.08em;
  font-family: 'Segoe UI', Arial, Verdana, sans-serif;
  z-index: 30;
  user-select: none;
  pointer-events: auto;
  text-transform: uppercase;
  text-shadow: 0 1px 9px #5683b6bb;
  font-weight: 400;
  opacity: 0.85;
  /* Opcional: animación sutil de fade */
  animation: footer-fadein 0.9s;
}

@keyframes footer-fadein {
  from { opacity: 0; }
  to { opacity: 0.85; }
}




.maindiv_centered--Old {
    display: block;
}
