/* =========================
   FORCE REMOVE BLUE
========================= */

:root{
    --sage1:#5f7c68;
    --sage2:#7f9b87;
    --sage3:#c7d8c2;
    --sage-dark:#4f6f57;
}

/* BODY */

body{
    min-height:100vh;
    display:flex;
    justify-content:center;
    align-items:center;

    font-family:'Poppins',sans-serif;

    background:linear-gradient(
        135deg,
        var(--sage1),
        var(--sage2),
        var(--sage3)
    ) !important;

    overflow:hidden;
    position:relative;
}

/* CARD */

.login-card{
    width:100%;
    max-width:420px;

    background:rgba(255,255,255,0.95);

    border-radius:28px;

    padding:45px;

    box-shadow:0 10px 40px rgba(0,0,0,0.15);

    position:relative;
    z-index:2;
}

/* LOGO */

.logo{
    width:90px;
    margin-bottom:15px;
}

/* TITLE */

.title{
    font-size:28px;
    font-weight:700;
    color:#2f3e34;
}

.subtitle{
    color:#6b7280;
    font-size:14px;
    margin-bottom:30px;
}

/* INPUT */

.form-control{
    height:54px !important;

    border-radius:16px !important;

    border:1px solid #d6e2d3 !important;

    background:#f8fbf7 !important;

    margin-bottom:18px;

    padding-left:18px;
}

.form-control:focus{

    background:white !important;

    border-color:var(--sage1) !important;

    box-shadow:
        0 0 0 0.18rem rgba(95,124,104,0.25) !important;
}

/* BUTTON */

.btn-login{

    width:100%;

    height:54px;

    border:none !important;

    border-radius:16px;

    color:white !important;

    font-weight:600;

    background:linear-gradient(
        135deg,
        var(--sage1),
        var(--sage-dark)
    ) !important;

    transition:0.3s;
}

.btn-login:hover{

    transform:translateY(-2px);

    background:linear-gradient(
        135deg,
        #4f6f57,
        #3d5644
    ) !important;

    box-shadow:
        0 10px 20px rgba(79,111,87,0.25);
}

/* REMOVE BOOTSTRAP BLUE */

.btn-primary,
.bg-primary,
.text-primary,
.border-primary{

    background:none !important;
    color:inherit !important;
    border-color:inherit !important;
}

/* LINK */

.auth-link{
    text-align:center;
    margin-top:22px;
    color:#6b7280;
}

.auth-link a{
    color:var(--sage-dark) !important;
    text-decoration:none;
    font-weight:600;
}

.auth-link a:hover{
    text-decoration:underline;
}

/* FOOTER */

.auth-footer{
    margin-top:25px;
    text-align:center;
    font-size:12px;
    color:#9ca3af;
}

/* BG CIRCLE */

.bg-circle{
    position:absolute;
    border-radius:50%;
    filter:blur(10px);
}

.circle1{
    width:350px;
    height:350px;
    background:rgba(255,255,255,0.08);

    top:-120px;
    right:-120px;
}

.circle2{
    width:300px;
    height:300px;
    background:rgba(255,255,255,0.06);

    bottom:-100px;
    left:-100px;
}

/* MOBILE */

@media(max-width:480px){

    .login-card{
        margin:20px;
        padding:35px 25px;
    }

}