h1.login {
    color: #fff;
    font-weight: 800;
    font-size: 3em;
    margin: 4% 0 0 0;
}
h3.login {
    color: #fff;
    font-weight: 800;
}
@media only screen and (max-width: 768px) {
    h3.login {
        font-size: 20px;
    }
}
.form-login {
    color: #fff;
    border-top: 2px #fff solid;
    padding: 30px 20px 0 0;
    width: 40%;
}
.form-login .control-label {
    text-align: left;
    font-size: 16px;
    font-weight: bold;
}
.form-login input {
    border-radius: 30px;
    width: 240px;
}
.btn-login {
    background: #114757;
    border-radius: 30px;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    margin: 0px 0px 0px 10px;
    width: 100%;
}
.btn-register {
    background: #22BA31;
    border-radius: 30px;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    margin: 0px 0px 0px 10px;
    width: 100%;
}
#containerv2 {
    min-height: 100vh;
    position: relative;
    background: #DB9F3B url(bg-intranet.jpg) no-repeat right bottom;
}
#headerv2 {
    background: #fff;
    height: 160px;
    padding: 10px;
}
#headerv2 img {
    margin: 30px 0 0 10%;
    max-width: 100%;
    height: auto;
}
@media only screen and (max-width: 768px) {
    #headerv2 img {
        width: 80%;
    }
}
#footerv2 {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 72px;
    background: #114757;
    box-sizing: border-box;
    padding: 23px 0 0 10%;
    color: #fff;
}

.password-container {
    position: relative;
    display: flex;
    align-items: center;
    width: 240px;
}
.password-container input {
    padding-right: 50px;
}
.password-container .icon {
    position: absolute;
    right: 15px;
    cursor: pointer;
    color: #333;
    padding: 5px;
    display: flex;
}


input[type="password"]::-ms-reveal,
input[type="password"]::-ms-clear {
    display: none;
}
input[type="password"]::-webkit-credentials-auto-fill-button {
    display: none !important;
    visibility: hidden !important;
}
input[type="password"]::-moz-password-field {
    display: none;
}

.campo {
    position: relative;
}
 
.label {
    width: 100%;

}


.small-swal-popup {
  width: 300px !important;   /* más angosto */
  padding: 1rem !important;  /* menos relleno */
  font-size: 14px !important; /* texto más pequeño */
}

.otp-input {
  width: 40px;          /* ancho */
  height: 40px;         /* alto para que sea cuadrado */
  text-align: center;   /* número centrado */
  font-size: 18px;      /* número más grande */
  border: 1px solid #ccc;
  border-radius: 6px;   /* esquinas redondeadas */
  outline: none;
  transition: border-color 0.2s, box-shadow 0.2s;
}

/* efecto al enfocar */
.otp-input:focus {
  border-color: #007bff;
  box-shadow: 0 0 5px rgba(0,123,255,0.5);
}

#verificar .modal-dialog {
  max-width: 400px; /* más pequeño que el modal normal */
}

#modal_restablecer_contrasena .modal-dialog {
  max-width: 400px; /* más pequeño que el modal normal */
}

#actualizarPassword .modal-dialog {
  max-width: 400px; /* más pequeño que el modal normal */
}

#reglasPassword p {
  margin-bottom: 4px;
}
#reglasPassword span {
  font-weight: bold;
  margin-right: 5px;
}
.valido {
  color: green;
}
.invalido {
  color: red;
}


.small-swal {
  width: 300px !important;     /* más angosto */
  font-size: 14px !important;  /* texto más pequeño */
  padding: 1rem !important;    /* menos espacio interno */
}