*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

body{
    min-height:100vh;
    display:flex;
    justify-content:center;
    align-items:center;
    overflow:hidden;

    background:
    linear-gradient(
    135deg,
    #020617,
    #0F172A,
    #1E293B);
}

.background{
    position:absolute;
    width:100%;
    height:100%;
}

.circle{
    position:absolute;
    border-radius:50%;
    filter:blur(90px);
    animation:float 10s infinite ease-in-out;
}

.circle1{
    width:350px;
    height:350px;
    background:#2563EB;
    top:-100px;
    left:-80px;
}

.circle2{
    width:320px;
    height:320px;
    background:#7C3AED;
    right:-80px;
    bottom:-80px;
}

.circle3{
    width:250px;
    height:250px;
    background:#06B6D4;
    top:45%;
    left:55%;
}

@keyframes float{
    0%,100%{
        transform:translateY(0);
    }
    50%{
        transform:translateY(-30px);
    }
}

.login-container{
    position:relative;
    z-index:10;
}

.login-card{

    width:430px;

    padding:40px;

    border-radius:25px;

    background:
    rgba(255,255,255,0.08);

    backdrop-filter:blur(20px);

    border:
    1px solid rgba(255,255,255,0.15);

    box-shadow:
    0 20px 40px rgba(0,0,0,.45),
    0 0 30px rgba(37,99,235,.2);

    text-align:center;
}

.brand{
    margin-bottom:25px;
}

.logo{
    margin-bottom:10px;
}

.brand h2{
    color:#fff;
    font-size:30px;
    font-weight:700;
}

.brand p{
    color:#CBD5E1;
    font-size:14px;
    margin-top:5px;
}

.input-box{
    margin-bottom:18px;
}

.input-box input{

    width:100%;

    padding:15px;

    border:none;

    outline:none;

    border-radius:12px;

    background:
    rgba(255,255,255,0.12);

    color:white;

    font-size:15px;
}

.input-box input::placeholder{
    color:#CBD5E1;
}

.input-box input:focus{
    box-shadow:
    0 0 15px rgba(96,165,250,.5);
}

.options{
    text-align:right;
    margin-bottom:20px;
}

.options a{
    color:#93C5FD;
    text-decoration:none;
    font-size:14px;
}

.options a:hover{
    color:white;
}

button{

    width:100%;

    padding:15px;

    border:none;

    border-radius:12px;

    background:
    linear-gradient(
    135deg,
    #2563EB,
    #60A5FA);

    color:white;

    font-size:16px;

    font-weight:600;

    cursor:pointer;

    transition:.3s;
}

button:hover{

    transform:translateY(-3px);

    box-shadow:
    0 10px 25px rgba(59,130,246,.5);
}

@media(max-width:500px){

    .login-card{
        width:90%;
        padding:30px;
    }

    .brand h2{
        font-size:26px;
    }
}