*{
    padding: none;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 12px;
    box-sizing: border-box;
    scroll-behavior: smooth;
    outline: none;
    text-decoration: none;
}
#login-page-main-contents{
    position: relative;
    width: 100%;
    min-height: 100vh;
}
#login-page-main-contents>.login-cont{
    position: relative;
    width: 100%; 
    min-height: 100vh;
    padding: 4rem 2rem;
    padding-top: 5rem;   
    padding-bottom: 10rem;
    background-image: url(../images/bg-banners/programming-banner.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    margin-top: 0;
    background-attachment: scroll;
}
#login-page-main-contents>.login-cont::before{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    content: '';
    background-color: rgba(0,0,0,0.2);
}

.login-cont>.login-inner-cont{
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    flex-direction: column;
    background-color: rgba(255,255,255,0.2);
    border: 2px solid rgba(255,255,255,0.7);
    padding: 4rem 2rem;
    border-radius: 20px;
    backdrop-filter: blur(3px);
}
.login-inner-cont>#login-intro-wrapper{
    position: relative;
    max-width: 500px;
    opacity: 0;
    transform: scale(0);
    animation: loginIntroWrapperAnimation 3s linear;
    animation-fill-mode: forwards;
    transition: all 2s linear;
}

@keyframes loginIntroWrapperAnimation {
    0%{
        opacity: 0;
        transform: scale(0);
    }
    100%{
        opacity: 1;
        transform: scale(1);
    }
}
#login-intro-wrapper>h1, #login-intro-wrapper #brand-name-in-heading{
    position: relative;
    max-width: 100%;
    margin: 1.5rem 0;
    margin-top: 0;
    margin-bottom: 2.5rem;
    font-size: 2.5rem;
    font-weight: bold;
    text-align: center;
    color: var(--color-white);
    text-transform: capitalize;

}
#login-intro-wrapper #brand-name-in-heading{
    background-image: linear-gradient(to right, var(--primary-color) 5%, var(--secondary-color) 60%);
    background-clip: text;
    color: transparent;
}
#login-intro-wrapper>p{
    position: relative;
    width: 100%;
    font-size: 20px;
    color: var(--color-white);
    line-height: 1.3;
    text-align: center;
}

#have-no-account{
    position: relative;
    display: inline-block;
    width: 100%;
    text-align: center;
    font-size: 12px;
    font-weight: bold;
    color: var(--color-white);
    margin: 0.3rem 0;
}
#have-no-account>a{
    text-decoration: none;
    font-size: 12px;
    font-weight: bold;
    font-style: italic;
    text-transform: capitalize;
    color: var(--primary-color-light);
    transition: all 0.4s ease-in-out;
}
#have-no-account>a:hover{
    text-decoration: underline;
}

#login-form-wrapper{
    position: relative;
    max-width: 500px;
    background-color: rgba(255,255,255,0.3);
    border: 2px solid rgba(255,255,255,0.7);
    border-radius: 0 25px 0 25px;
    backdrop-filter: blur(10px);
}

.login-form_wrapper{
    opacity: 0;
    transform: skew(30deg);
    backdrop-filter: blur(30px);
    animation: loginFormAnimation 3s linear;
    animation-delay: 3s;
    animation-fill-mode: forwards;
    transition: all 2s linear;
}
@keyframes loginFormAnimation {
    0%{
        opacity: 0;
        backdrop-filter: blur(30px);
        transform: skew(30deg);
    }
    100%{
        opacity: 1;
        backdrop-filter: blur(0px);
        transform: skew(0deg);
    }
}

.login_error_msg_box{
    position: relative;
    max-width: 100%;
    height: auto;
    opacity: 1;
    background-color: #fff;
    padding: 1rem;
    display: none;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 3rem;
    border: 3px solid tomato;
    border-radius: 0px 5px 5px 0px;
    box-shadow: 0px 0px 10px 0 rgba(0,0,0,0.2);
    margin: 0.5rem 1rem;
    margin-bottom: 1.2rem;
    transition: all 1500ms ease-in;
}

.login_error_msg_box>.login_error_msg_inner_box{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.login_error_msg_inner_box>.login_error_icon{
    color: tomato;
    font-size: 2rem;
    font-weight: bold;
    text-align: left;
    
}
.login_error_msg_inner_box>#login_error_msg{
    color: tomato;
    font-size: 13px;
    font-weight: 500;
    text-align: left;
    padding: 1.2rem;
    line-height: 1.2;
}

#login_error_msg>h3{
    color: tomato;
    font-family: 'Teko', sans-serif;
    font-size: 1.3rem;
    font-weight: bold;
    text-align: left;

}
#login_error_msg>p{
    font-size: 12px;
    font-weight: bold;
    color: #000;
}


.login_success_msg_box, .logout_success_msg_box{
    position: relative;
    max-width: 100%;
    height: auto;
    opacity: 1;
    background-color: #fff;
    padding: 1rem;
    display: none;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 3rem;
    border: 3px solid forestgreen;
    border-radius: 0px 5px 5px 0px;
    box-shadow: 0px 0px 10px 0 rgba(0,0,0,0.2);
    margin: 1rem;
    margin-bottom: 1.2rem;
    transition: all 1500ms ease-in;
}

.login_success_msg_box>.login_success_msg_inner_box, .logout_success_msg_box>.logout_success_msg_inner_box{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.login_success_msg_inner_box>.login_success_icon, .logout_success_msg_inner_box>.logout_success_icon{
    color: forestgreen;
    font-size: 2rem;
    font-weight: bold;
    text-align: left;
    
}
.login_success_msg_inner_box>#login_success_msg, .logout_success_msg_inner_box>#logout_success_msg{
    color: forestgreen;
    font-size: 13px;
    font-weight: 500;
    text-align: left;
    padding: 1.2rem;
    line-height: 1.2;
}
#login_success_msg>h3, #logout_success_msg>h3{
    color: forestgreen;
    font-family: 'Teko', sans-serif;
    font-size: 1.3rem;
    font-weight: bold;
    text-align: left;

}

#login_success_msg>p, #logout_success_msg>p{
    font-size: 12px;
    font-weight: bold;
    color: #000;
}

#login-form-wrapper>h3{
    position: relative;
    max-width: 100%;
    line-height: 1.3;
    font-size: 1.5rem;
    font-weight: 600;
    text-transform: capitalize;
    margin: 1rem 0;
    margin-bottom: 0;
    text-align: center;
    background-image: linear-gradient(to right, var(--primary-color) 20%, var(--secondary-color) 100%);
    padding: 0.7rem;
    margin: 1rem;
    border-radius: 0 25px 0 0;
    color: var(--color-white);
}

#login-form{
    position: relative;
    width: 100%;
    padding: 1rem;
}
#login-form>.login-input-field-wrapper{
    position: relative;
    margin: 1.5rem 0;
    width: 100%;
}
#login-form>.login-input-field-wrapper:first-of-type{
    margin-top: 0;
}
.login-input-field-wrapper>.login-input-field-inner-wrapper{
    position: relative;
    width: 100%;
    border: 1px solid var(--color-white);
    padding: 0rem 0.5rem;
    border-radius: 10px;
    margin: 0;
    transition: border 1s ease-in-out;
}
.login-input-field-wrapper>.login-input-field-inner-wrapper.onfocus{
    border: 2px solid var(--primary-color-light);
}
.login-input-field-inner-wrapper>label{
    position: relative;
    font-size: 12px;
    font-weight: bold;
    color: var(--color-white);
    text-transform: capitalize;
    top: -18px;
    left: 40px;
    z-index: 1000;
    transition: all 1s linear;
}
.login-input-field-inner-wrapper>.login-input-field{
    position: relative;
    width: 100%;
    height: 100%;
    outline: none;
    border: none;
    background-color: transparent;
    font-size: 14px;
    padding: 0.7rem;
    color: var(--color-white);
    padding-left: 45px;
    transition: border 0.4s ease-in-out;
}
.login-input-field:focus + label{
    top: -40px;
    left: 15px;
    background-image: linear-gradient(to right, var(--primary-color) 20%, var(--secondary-color) 100%);
    padding: 0.2rem 0.3rem;
    border-radius: 3px;
    z-index: 2000;
}
 .login-input-field:not(:placeholder-shown) + label{
    position: relative;
    top: -40px;
    left: 15px;
    background-image: linear-gradient(to right, var(--primary-color) 20%, var(--secondary-color) 100%);
    padding: 0.2rem 0.3rem;
    border-radius: 3px;
    z-index: 2000;
 }
 
 .login-input-field-inner-wrapper>.login-form-icon{
    position: absolute;
    top: 12px;
    left: 15px;
    color: var(--secondary-color);
    font-size: 1.6rem;
    font-weight: bold;
}
 .login-input-field-inner-wrapper>.course-select-lists{

    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    outline: none;
    border: none;
    background-color: transparent;
    font-size: 12px;
    padding: 0.7rem;
    color: var(--color-white);
    padding-left: 35px;
    transition: border 0.4s ease-in-out;
 }
 .login-input-field-inner-wrapper>.course-select-lists>option{
    font-size: 12px;
    font-weight: bold;
    text-transform: capitalize;
    color: var(--primary-color);
 }
 /* .login-input-field.course-select-lists:focus+label{
    top: -52px;
    left: 15px;
    background-image: linear-gradient(to right, var(--primary-color) 20%, var(--secondary-color) 100%);
    padding: 0.2rem 0.3rem;
    border-radius: 3px;
    z-index: 2000;
}
 .login-input-field.course-select-lists:not(:placeholder-shown)+label{
    top: -52px;
    left: 15px;
    background-image: linear-gradient(to right, var(--primary-color) 20%, var(--secondary-color) 100%);
    padding: 0.2rem 0.3rem;
    border-radius: 3px;
    z-index: 2000;
 } */

 .login-input-field-wrapper.forgot-password{
    margin:0.3rem 0;
 }
 .login-input-field-wrapper.forgot-password>p{
    text-align: right;
    margin:0.3rem 0;
}
.forgot-password>a{
    font-size: 12px;
    font-weight: bold;
    text-transform: capitalize;
    color: var(--color-white);
    transition: all 0.4s ease-in;
}
.forgot-password>a:hover{
    text-decoration: underline;
}

 .login-input-field-wrapper>.login-error-msg{
    font-size: 11px;
    color: tomato;
    font-weight: bold;
    display: none;
    margin-top: 0.5rem;
    margin-left: 15px;
 }
 .login-input-field-wrapper .login-error-msg-icon{
    font-size: 1.3rem;
    font-weight: bold;
    color: tomato;
    padding-right: 0.3rem;
 }

#login-button{
    position: relative;
    display: inline-flex;
    width: 100%;
    outline: none;
    border: 1px solid var(--primary-color);
    align-items: center;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
    padding: 1.2rem 1.5rem;
     background-image: linear-gradient(to right, var(--primary-color) 20%, var(--secondary-color) 100%);
    border-radius: 30px;
    cursor: pointer;
    transition: all 0.5s ease-in-out;
}
#login-button>.login-btn-icon{
    font-size: 1.6rem;
    font-weight: bold;
    color: var(--secondary-color);
}
#login-button>span{
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;
    color: var(--color-white);
}
#login-button:hover{
    background: var(--primary-color-light);
}
#login-button:hover>.login-btn-icon{
    color: var(--color-white);
}



@media(max-width:800px){
    #login-intro-wrapper>h1, #login-intro-wrapper #brand-name-in-heading{
        font-size: 2rem;

    }
    #login-intro-wrapper>p{
        font-size: 17px;
    }


}

@media(max-width:450px){
    #login-intro-wrapper>h1, #login-intro-wrapper #brand-name-in-heading{
        font-size: 1.5rem;

    }
    
    #login-intro-wrapper>p{
        font-size: 15px;
    }

    #login-button{
        padding: 1rem 1.2rem;
    }


}

@media(max-width:450px){
    #login-page-main-contents>.login-cont{
         padding: 4rem 1rem;
    }

    .login-cont>.login-inner-cont{
        padding: 4rem 1rem;
    }
    #login-intro-wrapper>p{
        font-size: 14px;
    }

    #login-form-wrapper>h3{
        font-size: 1.2rem;
    }


    

    

}

