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

/* Background */
body{
    background: linear-gradient(to right, #1f2533, #2b3244);
    color: #e0e3eb;
}

/* Main container */
.container{
    background: #2e3446;
    width:450px;
    padding:1.5rem;
    margin:50px auto;
    border-radius:12px;
    box-shadow:0 25px 40px rgba(0,0,0,0.6);
}

/* Form spacing */
form{
    margin:0 2rem;
}

.form-title{
    font-size:1.6rem;
    font-weight:600;
    text-align:center;
    padding:1.3rem;
    margin-bottom:0.6rem;
    color:#e6e9f2;
}

/* Inputs */
input{
    color:#e0e3eb;
    width:100%;
    background-color:transparent;
    border:none;
    border-bottom:1px solid #6f768a;
    padding-left:1.5rem;
    font-size:15px;
}

.input-group{
    padding:1.2% 0;
    position:relative;
}

.input-group i{
    position:absolute;
    color:#9aa3bd;
}

input:focus{
    outline:none;
    border-bottom:2px solid #5c7cfa;
}

input::placeholder{
    color:transparent;
}

/* Floating labels */
label{
    color:#9aa3bd;
    position:relative;
    left:1.2em;
    top:-1.3em;
    transition:0.3s ease all;
}

input:focus~label,
input:not(:placeholder-shown)~label{
    top:-3em;
    color:#5c7cfa;
    font-size:14px;
}

/* Recover link */
.recover{
    text-align:right;
    font-size:0.95rem;
    margin-bottom:1rem;
}

.recover a{
    text-decoration:none;
    color:#8ea2ff;
}

.recover a:hover{
    color:#5c7cfa;
    text-decoration:underline;
}

/* Button */
button{
    font-size:1.1rem;
    padding:10px 0;
    border-radius:6px;
    border:none;
    width:100%;
    background:#5c7cfa;
    color:white;
    cursor:pointer;
    transition:0.3s ease;
}

button:hover{
    background:#4a67e0;
}

/* OR text */
.or{
    font-size:1rem;
    margin-top:0.8rem;
    text-align:center;
    color:#b5bdd6;
}

/* Social icons */
.icons{
    text-align:center;
}

.icons i{
    color:#8ea2ff;
    padding:0.8rem 1.5rem;
    border-radius:10px;
    font-size:1.4rem;
    cursor:pointer;
    border:2px solid #3c445c;
    margin:0 12px;
    transition:0.3s ease;
}

.icons i:hover{
    background:#1f2533;
    border-color:#5c7cfa;
    color:#5c7cfa;
}

/* Bottom links */
.links{
    display:flex;
    justify-content:space-around;
    padding:0 4rem;
    margin-top:1rem;
    font-weight:500;
}

#signUpButton,
#signInButton{
    color:#8ea2ff;
    border:none;
    background-color:transparent;
    font-size:1rem;
    font-weight:600;
    cursor:pointer;
}

#signUpButton:hover,
#signInButton:hover{
    text-decoration:underline;
    color:#5c7cfa;
}
