*{
    font-family:'Poppins', sans-serif;
}


body{
    margin:0;
    height:100vh;
    display:flex;
    justify-content:center;
    align-items:center;

    /* Maroon background only */
    background:linear-gradient(135deg,#4A0404,#800000,#A52A2A);

    overflow:hidden;
}


/* Decorative shapes */
body::before{
    content:"";
    position:absolute;

    width:500px;
    height:500px;

    background:rgba(255,255,255,0.08);

    border-radius:50%;

    top:-150px;
    left:-120px;
}


body::after{
    content:"";
    position:absolute;

    width:400px;
    height:400px;

    background:rgba(255,255,255,0.08);

    border-radius:50%;

    bottom:-120px;
    right:-120px;
}



/* Login Card */
.login-card{

    width:420px;

    background:#ffffff;

    border-radius:20px;

    box-shadow:0 20px 40px rgba(0,0,0,0.25);

    color:#333;

    z-index:1;

}



/* Icon */
.portal-icon{

    font-size:70px;

    color:#800000;

}



/* Heading */
.login-card h4{

    color:#800000;

}



/* Input */
.form-control{

    border-radius:10px;

    padding:10px;

    border:1px solid #ccc;

}


.form-control:focus{

    border-color:#800000;

    box-shadow:0 0 0 0.2rem rgba(128,0,0,0.15);

}



/* Password eye */
.input-group-text{

    background:white;

    border-radius:0 10px 10px 0;

    cursor:pointer;

}



/* Login Button */
.btn-login{

    background:#800000;

    border:none;

    color:white;

    border-radius:10px;

    padding:10px;

    transition:0.3s;

}



.btn-login:hover{

    background:#5a0000;

    transform:translateY(-2px);

}



/* Footer */
.footer-text{

    font-size:13px;

    color:#666;

}