:root{

    --bg:#FAF5FF;

    --card:#FFFFFF;

    --primary:#2A0148;

    --secondary:#5E138D;

    --accent:#E33BEA;

    --accent-dark:#8E22C9;

    --accent-light:#F8A6FF;

    --gold:#F2B63F;

    --gold-light:#FFD86A;

    --text:#2A0148;

    --muted:#7A6D90;

    --input-bg:#FFFFFF;

    --border:rgba(227,59,234,.15);

    --glass:rgba(255,255,255,.90);

    --primary-gradient:linear-gradient(
        135deg,
        #2A0148 0%,
        #5E138D 35%,
        #8E22C9 70%,
        #E33BEA 100%
    );

    --button-gradient:linear-gradient(
        90deg,
        #D62EF6 0%,
        #F46AD7 55%,
        #FFD86A 100%
    );

}

*{

    box-sizing:border-box;

    font-family:'Poppins',Arial,sans-serif;

}

body{

    margin:0;

    min-height:100vh;

    display:flex;

    align-items:center;

    justify-content:center;

    background:
        radial-gradient(circle at top left,
        rgba(227,59,234,.16),
        transparent 40%),

        radial-gradient(circle at bottom right,
        rgba(242,182,63,.14),
        transparent 45%),

        linear-gradient(
        135deg,
        #FAF5FF,
        #F6EDFF 55%,
        #FFFBFF 100%);

}



/* ==========================================
   LOGIN CONTAINER
========================================== */

.login-container{

    width:100%;

    padding:20px;

}



/* ==========================================
   LOGIN CARD
========================================== */

.login-card{

    max-width:420px;

    margin:auto;

    background:var(--glass);

    padding:38px;

    border-radius:30px;

    border:1px solid var(--border);

    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);

    box-shadow:
        0 25px 60px rgba(42,1,72,.15),
        0 0 40px rgba(227,59,234,.08);

    text-align:center;

}



/* ==========================================
   LOGO
========================================== */

.logo{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:12px;

    margin-bottom:28px;

}

.logo img{

    width:65px;

    height:65px;

    object-fit:contain;

    border-radius:18px;

}

.logo h2{

    font-size:1.8rem;

    margin:0;

    font-weight:800;

    color:var(--primary);

}



/* ==========================================
   HEADINGS
========================================== */

.login-card h3{

    color:var(--primary);

    font-size:1.65rem;

    margin-bottom:8px;

    font-weight:700;

}

.login-card p{

    color:var(--muted);

    margin-bottom:28px;

    line-height:1.7;

}



/* ==========================================
   INPUTS
========================================== */

.input-box{

    display:flex;

    align-items:center;

    gap:12px;

    background:var(--input-bg);

    padding:16px;

    border-radius:16px;

    margin-bottom:16px;

    border:1px solid var(--border);

    transition:.35s ease;

}

.input-box:focus-within{

    border-color:var(--accent);

    box-shadow:
        0 0 0 4px rgba(227,59,234,.12),
        0 10px 25px rgba(42,1,72,.08);

}

.input-box i{

    color:var(--accent);

    transition:.3s;

}

.input-box:focus-within i{

    color:var(--gold);

}

.input-box input{

    border:none;

    outline:none;

    background:none;

    width:100%;

    font-size:.95rem;

    color:var(--text);

}

.input-box input::placeholder{

    color:#B19BC7;

}



/* ==========================================
   LOGIN BUTTON
========================================== */

#loginBtn{

    width:100%;

    padding:16px;

    border:none;

    border-radius:16px;

    background:var(--button-gradient);

    color:var(--primary);

    font-size:1rem;

    font-weight:700;

    cursor:pointer;

    margin-top:12px;

    transition:.35s ease;

    box-shadow:
        0 15px 35px rgba(227,59,234,.25);

}

#loginBtn:hover{

    transform:translateY(-4px);

    box-shadow:
        0 22px 45px rgba(242,182,63,.35);

}

#loginBtn:active{

    transform:scale(.98);

}



/* ==========================================
   REGISTER LINK
========================================== */

.register-link{

    margin-top:22px;

    color:var(--muted);

    font-size:.92rem;

}

.register-link a{

    color:var(--accent);

    font-weight:700;

    text-decoration:none;

    transition:.3s ease;

}

.register-link a:hover{

    color:var(--gold);

}



/* ==========================================
   MOBILE
========================================== */

@media(max-width:480px){

    .login-card{

        padding:28px;

        border-radius:24px;

    }

    .logo img{

        width:55px;

        height:55px;

    }

    .logo h2{

        font-size:1.5rem;

    }

    .login-card h3{

        font-size:1.4rem;

    }

}