/* ==========================================
   OFFBEAT Admin Login Page
   login.css
========================================== */


/* Reset */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:"Poppins", sans-serif;
}



/* Body */

body{

    min-height:100vh;

    display:flex;

    justify-content:center;

    align-items:center;

    background:
    linear-gradient(
        135deg,
        #0f172a,
        #1e293b,
        #334155
    );

}



/* Background glow */

body::before{

    content:"";

    position:absolute;

    width:350px;

    height:350px;

    background:#2563eb;

    border-radius:50%;

    filter:blur(120px);

    opacity:0.5;

    top:10%;

    left:10%;

}



body::after{

    content:"";

    position:absolute;

    width:300px;

    height:300px;

    background:#38bdf8;

    border-radius:50%;

    filter:blur(120px);

    opacity:0.4;

    bottom:10%;

    right:10%;

}



/* Main container */

.login-container{

    width:100%;

    display:flex;

    justify-content:center;

    align-items:center;

    padding:20px;

    position:relative;

    z-index:2;

}



/* Login card */

.login-card{

    width:380px;

    padding:40px 35px;

    background:
    rgba(255,255,255,0.12);

    backdrop-filter:blur(20px);

    border-radius:20px;

    border:1px solid rgba(255,255,255,0.2);

    box-shadow:
    0 20px 50px rgba(0,0,0,0.35);

    animation:slideUp 0.8s ease;

}



/* Animation */

@keyframes slideUp{

    from{

        opacity:0;

        transform:translateY(40px);

    }


    to{

        opacity:1;

        transform:translateY(0);

    }

}



/* Heading */

.login-card h2{

    text-align:center;

    color:white;

    font-size:32px;

    letter-spacing:2px;

    margin-bottom:8px;

}



.login-card p{

    text-align:center;

    color:#cbd5e1;

    margin-bottom:30px;

}



/* Input section */

.input-box{

    margin-bottom:20px;

}



.input-box label{

    display:block;

    color:white;

    font-size:14px;

    margin-bottom:8px;

}



.input-box input{

    width:100%;

    padding:14px 15px;

    border:none;

    outline:none;

    border-radius:12px;

    background:
    rgba(255,255,255,0.15);

    color:white;

    font-size:15px;

    border:1px solid transparent;

    transition:0.3s;

}



.input-box input::placeholder{

    color:#cbd5e1;

}



.input-box input:focus{

    border-color:#38bdf8;

    background:
    rgba(255,255,255,0.2);

}



/* Login button */

button{

    width:100%;

    padding:14px;

    border:none;

    border-radius:12px;

    background:
    linear-gradient(
        135deg,
        #2563eb,
        #38bdf8
    );

    color:white;

    font-size:16px;

    font-weight:600;

    cursor:pointer;

    transition:0.3s;

}



button:hover{

    transform:translateY(-3px);

    box-shadow:
    0 10px 25px rgba(37,99,235,0.5);

}



/* Error message */

#loginError{

    margin-top:18px;

    color:#f87171;

    font-size:14px;

    text-align:center;

    min-height:20px;

}



/* Mobile Responsive */

@media(max-width:450px){


    .login-card{

        width:100%;

        padding:35px 25px;

    }


    .login-card h2{

        font-size:28px;

    }


}