*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Inter',sans-serif;
}

body{
    background:#050505;
    color:white;
    min-height:100vh;
    overflow:hidden;
}

#particles-js{
    position:fixed;
    inset:0;
    z-index:0;
}

.background{
    position:fixed;
    inset:0;

    z-index:1;

    background:
    radial-gradient(circle at top, rgba(255,255,255,.04), transparent 35%),
    radial-gradient(circle at bottom right, rgba(255,255,255,.03), transparent 30%);

    pointer-events:none;
}

.container{
    position:relative;
    z-index:2;

    width:100%;
    min-height:100vh;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:20px;
}

.card{
    width:100%;
    max-width:700px;

    background:rgba(10,10,10,.85);

    border:1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(20px);

    border-radius:30px;

    padding:50px;

    box-shadow:
    0 0 50px rgba(255,255,255,.03);

    animation:fadeUp .8s ease;

    transition:
    transform .35s ease,
    box-shadow .35s ease,
    border-color .35s ease;
}

.card:hover{
    transform:translateY(-4px);

    border-color:rgba(255,255,255,.18);

    box-shadow:
    0 0 40px rgba(255,255,255,.05),
    0 0 100px rgba(255,255,255,.03);
}

.logo{
    width:90px;
    height:90px;

    margin:auto;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:50px;

    border-radius:20px;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.15);

    margin-bottom:25px;

    position:relative;

    animation:logoSpin 14s linear infinite;
}

.logo::before{
    content:"";

    position:absolute;

    width:140px;
    height:140px;

    background:
    radial-gradient(
        circle,
        rgba(255,255,255,.12),
        transparent 70%
    );

    z-index:-1;

    filter:blur(20px);
}

h1{
    text-align:center;

    font-size:58px;

    font-weight:700;

    margin-bottom:10px;

    text-shadow:
    0 0 10px rgba(255,255,255,.15),
    0 0 30px rgba(255,255,255,.08);
}

.subtitle{
    text-align:center;

    color:#a7a7a7;

    margin-bottom:30px;
}

.divider{
    width:150px;
    height:1px;

    background:rgba(255,255,255,.15);

    margin:0 auto 35px auto;
}

.input-group{
    display:flex;
    flex-direction:column;

    gap:10px;

    margin-bottom:25px;
}

.input-group label{
    font-size:20px;
    font-weight:500;
}

.input-group input{
    width:100%;

    height:65px;

    border:none;

    outline:none;

    border-radius:16px;

    padding:0 20px;

    font-size:16px;

    color:white;

    background:rgba(255,255,255,.03);

    border:1px solid rgba(255,255,255,.08);

    transition:
    .25s ease;
}

.input-group input:hover{
    border-color:
    rgba(255,255,255,.18);

    background:
    rgba(255,255,255,.045);
}

.input-group input:focus{
    border-color:white;

    background:
    rgba(255,255,255,.05);

    box-shadow:
    0 0 15px rgba(255,255,255,.08),
    0 0 30px rgba(255,255,255,.03);
}

button{
    width:100%;

    height:70px;

    border:none;

    border-radius:18px;

    cursor:pointer;

    font-size:20px;

    font-weight:600;

    background:white;

    color:black;

    transition:.25s;
}

button:hover{
    transform:translateY(-2px);

    box-shadow:
    0 0 30px rgba(255,255,255,.25);
}

.status{
    text-align:center;

    margin-top:20px;

    color:#7cff7c;
}

@keyframes fadeUp{

    from{
        opacity:0;
        transform:translateY(25px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

@keyframes logoSpin{

    from{
        transform:rotate(0deg);
    }

    to{
        transform:rotate(360deg);
    }

}

@media(max-width:768px){

    .card{
        padding:30px;
    }

    h1{
        font-size:38px;
    }

}