*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: sans-serif;
}

body{
    display: flex;
    justify-content: flex-start;
    padding-left: 6vw;
    align-items: center;
    min-height: 100vh;
    background-size: 100% 100%;
    background-color: black;
    animation: logincl 10s ease infinite;
}

@keyframes logincl{
    0% {background-position: 0% 50%;}
    50% {background-position: 100% 50%;}
    100% {background-position: 0% 50%;}
}
.login-box{
    display: flex;
    justify-content: center;
    flex-direction: column;
    width: 450px;
    height: 670px;
    padding: 30px;
    border: 3px solid transparent;
    border-radius: 36px;
    z-index: 2;
    background: linear-gradient(#000, #000) padding-box,
                linear-gradient(145deg, #553bda, #9d7cf5, #d4d4d4, #c5b3ff, #553bda) border-box;
    background-size: 100% 100%, 400% 400%;
    animation: border 3s ease infinite;
}

@keyframes border{
    0%, 100%{
        background-position: 0% 0%, 0% 50%;
    }
    50%{
        background-position: 0% 0%, 100% 50%;
    }
}

.login-header{
    text-align: center;
    padding: 20px 0px 40px 0px;
}

.login-header header{
    font-size: 65px;
    font-weight: 600;
    background: linear-gradient(120deg,#8c77f4,#cbcbcb);
    background-size: 200% 200%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: mauchu 5s ease infinite;
}

@keyframes mauchu{
    0%{
        background-position: 0% 50%;
    }
    50%{
        background-position: 100% 50%;
    }
    100%{
        background-position: 0% 50%;
    }
}

.input-box .input-field{
    width: 100%;
    height: 60px;
    font-size: 17px;
    padding: 0px 25px;
    border: none;
    border-radius: 999px;
    margin-bottom: 15px;
    transition: all 0.3s linear;
}

.input-field:focus{
    width: 105%;
    border: 4px solid rgb(187, 117, 240);
}

.forgot{
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
}

.section{
    display: flex;
    align-items: center;
    font-size: 14px;
}

#check{
    margin-right: 10px;
}

a{
    text-decoration: none; 
    color: rgb(178, 80, 243);
}

a:hover{
    color: chartreuse;
}

.input-submit{
    position: relative;
}

.submit-btn{
    width: 100%;
    height: 60px;
    background-color: #b49abe;
    border-radius: 999px;
    cursor: pointer;
    transition: background-color 1s ease-out,transform 1s ease-out;
}

.input-submit label{
    position: absolute;
    top: 45%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}

.submit-btn:hover{
    background-color: #a290fa;
    transform: scale(1.05,1.05);
}

.sign-up-link{
    text-align: center;
    font-size: 15px;
    margin-top: 20px;
    font-weight: 100;
}

/* ===== SPLINE BACKGROUND ===== */
.spline-bg{
    position: fixed;
    top: -10%;
    right: -40%;
    width: 130vw;
    height: 130vh;
    z-index: -2;
    pointer-events: none;
}