*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

body{
    width:100%;
    height:100vh;
    overflow:hidden;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    background:#000;

    user-select:none;
}

/* ===========================
      ENTER SCREEN
=========================== */

#start-screen{

    position:fixed;
    inset:0;

    display:flex;
    justify-content:center;
    align-items:center;

    background:#000;

    z-index:9999;

    transition:1s;

}

#enter-text{

    color:white;

    font-size:48px;

    font-weight:800;

    letter-spacing:8px;

    cursor:pointer;

    text-shadow:
        0 0 20px rgba(255,255,255,.35);

    animation:pulse 1.6s infinite;

}

@keyframes pulse{

    0%,100%{

        opacity:.45;

    }

    50%{

        opacity:1;

    }

}

/* ===========================
         BACKGROUND
=========================== */

.bg{

    position:fixed;

    inset:0;

    width:100%;

    height:100%;

    object-fit:cover;

    z-index:-10;

}

.overlay{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.35);

    backdrop-filter:blur(10px);

    z-index:-9;

}

/* ===========================
          CARD
=========================== */

.card{

    width:430px;

    padding:40px;

    border-radius:30px;

    display:flex;

    flex-direction:column;

    align-items:center;

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(30px);

    border:1px solid rgba(255,255,255,.15);

    box-shadow:

        0 15px 45px rgba(0,0,0,.45),

        inset 0 1px rgba(255,255,255,.12);

    animation:float 6s ease-in-out infinite;

}

/* ===========================
          AVATAR
=========================== */

.avatar{

    width:150px;

    height:150px;

    border-radius:50%;

    object-fit:cover;

    border:4px solid rgba(255,255,255,.25);

    box-shadow:

        0 0 30px rgba(255,255,255,.2);

    transition:.35s;

}

.avatar:hover{

    transform:scale(1.06);

}

/* ===========================
          NAME
=========================== */

.nickname{

    display:flex;

    align-items:center;

    gap:10px;

    margin-top:20px;

}

.verify{

    width:28px;

    height:28px;

}

.rainbow{

    font-size:42px;

    font-weight:800;

    background:linear-gradient(
        90deg,
        red,
        orange,
        yellow,
        lime,
        cyan,
        blue,
        violet,
        red
    );

    background-size:400%;

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

    animation:rainbow 6s linear infinite;

}

/* ===========================
            BIO
=========================== */

.bio{

    margin-top:12px;

    color:white;

    font-size:18px;

    opacity:.85;

}

/* ===========================
        WEATHER FX
=========================== */

#rain,
#snow,
#particles{

    position:fixed;

    inset:0;

    pointer-events:none;

    overflow:hidden;

}

.drop{

    position:absolute;

    width:2px;

    height:20px;

    background:rgba(255,255,255,.45);

    animation:rain linear infinite;

}

.flake{

    position:absolute;

    color:white;

    opacity:.75;

    animation:snow linear infinite;

}

/* ===========================
        ANIMATIONS
=========================== */

@keyframes rainbow{

    100%{

        background-position:400%;

    }

}

@keyframes float{

    50%{

        transform:translateY(-10px);

    }

}

@keyframes rain{

    to{

        transform:translateY(120vh);

    }

}

@keyframes snow{

    to{

        transform:translateY(120vh) rotate(360deg);

    }

}

/* ===========================
          MOBILE
=========================== */

@media(max-width:520px){

.card{

    width:92%;

}

.avatar{

    width:125px;
    height:125px;

}

.rainbow{

    font-size:34px;

}

.bio{

    font-size:16px;

}

}