/***
    ESTILOS GENÉRICOS
***/
html,
body,
.login-block{
    height: 100%;
}
.login-intro,
.remember-password,
.login .btn,
.login .form-control,
.login-error{
    font-family: 'Helvetica Neue', helvetica, sans-serif;
}

.hidden{
    display: none;
}
/***
    LOGIN
***/
#root,
#root > div,
#root > div > div[style*="opacity"]{
    height: 100%;
}

.login{
    height: 100%;
    background-color: #eee;
    background-image: url(../img/bg-login-desktop.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
@media screen and (max-width: 991px){
    .login{
        background-image: url(../img/bg-login-tablet.jpg);
    }
}
@media screen and (max-width: 767px){
    .login{
        background-image: url(../img/bg-login-mob.jpg);
    }
}
.login-form,
.blur-block{
    width: 26.625rem;
}
.login-form{
    position: relative;
    z-index: 2;
    margin: 0;
    padding: 1.875rem;
    border-radius: 0.375em; /*6px*/
    font-size: 0.9rem; /*14px*/
    background-color: rgba(255, 255, 255, .4);
}

/*bloque degradado*/
.blur-block{
    height: 26.438rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    margin: 0;
    border-radius: 0.375em;
    background: linear-gradient(to right bottom, #fff 0%,  #808080 100%);
    -webkit-filter: blur(30px) brightness(100%);
    filter: blur(30px) brightness(100%);
    opacity: .9;
}

/*logo*/
.login-logo{
    width: 250px;
    height: 93px;
    background-color: transparent;
    background-image: url(../img/logo-nuddo.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}
.login-logo img{
    max-width: 100%;
    height: auto;
    display: block;
}
/*texto bajo logo*/
.login-intro{
    font-family: 'Roboto', sans-serif;
    font-size: 0.8em;
    font-weight: 500;
    line-height: 140%;
    color: #2D3B41;
}
/*cuando hay mas de un parrafo*/
.login-intro__text.big{
    font-size: 1.3em;
    font-weight: 600;
}
/*inputs*/
.login .form-control{
    height: 3.125rem;
    font-family: 'Roboto', sans-serif;
    font-size: 0.9em; /*14px*/
    font-weight: 400;
    color: #2D3B41;
    background-color: #fff;
    border-left: 0;
}
.login .form-control:focus,
.login .link-remember a:focus{
    outline: 3px solid #DAA53D;
    border: 0;
}
.login .form-control:-webkit-autofill{
    -webkit-box-shadow: 0 0 0 30px #fff inset;
}
.login .form-control::-webkit-input-placeholder{
    font-family: 'Roboto', sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    color: #2D3B41;
}
.login .form-control::-moz-placeholder{
    font-family: 'Roboto', sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    color: #2D3B41;
}
.login .form-control:-moz-placeholder{
    font-family: 'Roboto', sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    color: #2D3B41;
}
.login .form-control::-ms-input-placeholder{
    font-family: 'Roboto', sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    color: #2D3B41;
}
.login .input-group .input-group-text{
    background-color: #fff;
}
.login .input-group-prepend .fas,
.login .input-group-prepend .fa,
.login .input-group-prepend .far{
    font-size: 1.375em;
    color: #B3B3B3;
}
/*texto olvidar contraseña*/
.remember-password{
    font-size: 0.8em;
    font-weight: 500;
    line-height: 150%;
    color: #337ab7;
}
/*botón*/
.login .btn{
    width: 100%;
    height: 3.125rem;
    position: relative;
    margin-left: auto;
    margin-right: auto;
    font-family: 'Roboto', sans-serif;
    font-size: 1em; /*16px*/
    font-weight: 800;
    text-transform: uppercase;
    color: #fff;
    background-color: #DAA53D;
    border-color: #DAA53D;
}
.login .btn span{
    position: relative;
    z-index: 1;
}
.login .btn::before{
    content: '';
    width: 0;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #d79d2d;
    border-color: #d79d2d;
    border-radius: 0.3rem;
    transition: all 0.4s ease;
}
.login .btn:hover::before{
    width: 100%;
}
.login .btn:focus,
.login .btn-primary:active{
    border-radius: 0.3rem;
    border-color: #eee;
    outline: 0;
}

/*mensaje de error*/
.login-error{
    font-size: 0.8em;
    font-weight: 600;
    line-height: 140%;
    color: #fff;
    background-color: #dc3545;
    border-radius: 0.375em;
}
.login-error .fa{
    display: block;
    margin-bottom: 0.2em;
    font-size: 2em;
}
.not-remember,
.login-text{
    margin: 0.8em 0;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
}
.not-remember{
    margin-bottom: 0;
    font-size: 1.8em;
    color: #BC212C;
}
.login-text{
    font-size: 1.1em;
    color: #2D3B41;
}


/***
    CHECKBOXES STYLES
***/
.custom-checkbox{
    font-size: 1rem;
}
.custom-checkbox a{
    font-size: 0.7em;
}
.custom-checkbox [type="checkbox"]:not(:checked),
.custom-checkbox [type="checkbox"]:checked {
    position: absolute;
    /*left: -9999px;*/
}
.custom-checkbox [type="checkbox"]:not(:checked) + label,
.custom-checkbox [type="checkbox"]:checked + label {
    position: relative;
    height: 16px; /*misma altura que ::before*/
    line-height: 16px;
    padding-left: 22px;
    font-family: 'Roboto', sans-serif;
    font-size: 0.875em;
    font-weight: 400;
    color: #2D3B41;
    cursor: pointer;
}
/* aspecto del checkbox */
.login-form .custom-checkbox [type="checkbox"]:not(:checked) + label::before,
.login-form .custom-checkbox [type="checkbox"]:checked + label::before {
    content: '';
    width: 16px;
    height: 16px;
    position: absolute;
    top: 0;
    left: 0;
    border: 1px solid #2D3B41;
    background: #fff;
    border-radius: 2px;
}
/* aspecto de checkbox marcado */
.custom-checkbox [type="checkbox"]:not(:checked) + label::after,
.custom-checkbox [type="checkbox"]:checked + label::after {
    content: '';
    width: 12px;
    height: 12px;
    position: absolute;
    top: 2px;
    left: 2px;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    -ms-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
    background-color: #2D3B41;
    border-radius: 2px;
}
/* cambios en aspecto de checkbox marcado */
.custom-checkbox [type="checkbox"]:not(:checked) + label::after {
    opacity: 0;
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -ms-transform: scale(0);
    -o-transform: scale(0);
    transform: scale(0);
}
.custom-checkbox [type="checkbox"]:checked + label::after {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}
/* checkbox desactivado */
.custom-checkbox [type="checkbox"]:disabled:not(:checked) + label::before,
.custom-checkbox [type="checkbox"]:disabled:checked + label::before {
    border-color: #bbb;
    background-color: #ddd;
}
.custom-checkbox [type="checkbox"]:disabled:checked + label::after {
    color: #999;
}
.custom-checkbox [type="checkbox"]:disabled + label {
    color: #aaa;
}
/* accessibilidad */
.custom-checkbox [type="checkbox"]:checked:focus + label:before,
.custom-checkbox [type="checkbox"]:not(:checked):focus + label:before {
    box-shadow: 0 0 2px #000;
}

/*elena*/

.errspan,
.errspan2,
.checkspan,
.checkspan2{
    display: none;
    position: relative;
}
.errspan,
.errspan2{
    color: red;
}

.checkspan,
.checkspan2{
    color:#007bff;

}

.errspan span,
.errspan2 span,
.checkspan span,
.checkspan2 span{
    position: absolute;
    top: calc(50% - 8px);
    left: -29px;
}

/*recordar contraseña*/
.link-remember a {
    font-family: 'Roboto', sans-serif;
    font-size: 0.875em;
    font-weight: 400;
    color: #000;
    text-decoration: underline;
}
.link-remember a:hover{
    text-decoration: none;
    opacity: .95;
}


/***
    MEDIA QUERIES
***/

@media screen and (max-width: 576px){
    .login-form,
    .blur-block{
        width: 95%;
        max-width: 476px;
    }
}
@media screen and (min-width: 768px){
}
@media screen and (min-width: 992px){
    .login-form{
        font-size: 1rem;
    }
}


