body.login-page{
    margin:0;
    background:#f5f6fa;
    min-height:100vh;
}

/* SPLIT */
.login-wrapper{
    display:flex;
    min-height:100vh; /* fixed from 110vh */
}
.login-page, .register-page {
    display: block;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
}
/* LEFT PANEL */
.login-left{
    
    background: linear-gradient(135deg, #ffffff, #ffffff);
    color:#fff;
    padding:80px 90px;
    display:flex;
    flex-direction:column;
    justify-content:center; /* vertical center */
    position:relative;
}

.login-left h1{
    font-size:42px;
    font-weight:700;
    line-height:1.2;
    margin-bottom:20px;
    color:#19113e;
}

.login-left p{
    font-size:16px;
    opacity:.9;
    max-width:420px;
    line-height:1.7;
    color:#16123d;
}

.feature-list{margin-top:45px;}
.feature-list div{margin-bottom:14px;font-size:15px;}

/* RIGHT PANEL */
.login-right{
    flex:1;
    background:#f5f6fa;
    display:flex;
    align-items:center;      /* vertical center */
    justify-content:center;  /* horizontal center */
}

/* CARD */
.login-box{
    width:100%;
    max-width:420px; /* responsive instead of fixed width */
}

.card{
    border:none;
    border-radius:16px;
    background:#fff;
    padding:30px;
    box-shadow:0 25px 60px rgba(0,0,0,.08);
}

/* TITLE */
.card-header{border:none;background:none;padding-bottom:0;}
.card-header h3{
    font-size:26px;
    font-weight:600;
    color:#111827;
    margin:0px;
}

.login-box-msg{
    color:#6b7280;
}

/* INPUT */
.form-control{
    height:48px;
    border-radius:8px;
    border:1px solid #e6e8ef;
    background:#fff;
    font-size:14px;
}

.form-control:focus{
    border-color:#7c5cff;
    box-shadow:0 0 0 3px rgba(124,92,255,.15);
}

/* PASSWORD ICON */
.eye-toggle{
    border:1px solid #e6e8ef;
    border-left:none;
    background:#fff;
    padding:10px 15px;
    border-radius:0 8px 8px 0;
    cursor:pointer;
}

/* BUTTON */
.btn-primary{
    border-radius:8px;
    border:none;
    background: linear-gradient(135deg, #3478bd, #190f43);
    width:100%;
    height:44px;
    font-size:0.9375rem;
    font-weight:600;
}

/* LINK */
#forgotLink{
    color:#18113f !important;
    font-size:14px;
    font-weight:500;
}

/* DIVIDER */
.divider{
    text-align:center;
    margin:22px 0;
    color:#9ca3af;
    font-size:13px;
    position:relative;
}
.divider:before,
.divider:after{
    content:'';
    position:absolute;
    top:50%;
    width:40%;
    height:1px;
    background:#e5e7eb;
}
.divider:before{left:0;}
.divider:after{right:0;}

/* FOOTER */
.login-footer{
    text-align:center;
    font-size:13px;
    color:#9ca3af;
    margin-top:20px;
}

/* MOBILE */
@media(max-width:992px){
    .login-left{display:none;}
}

/* BRAND FEATURES */
.auth-brand-features{
    display:flex;
    flex-direction:column;
    gap:16px;
    margin-top:0px;
}

.auth-brand-feature{
    display:flex;
    align-items:center;
    gap:0.5rem;
    font-size:16px;
    color:rgb(24 16 65);
}

.auth-brand-feature i{
    font-size:1rem;
    color:rgb(54 117 186);
}

/* DECORATION */
.login-left::before{
    content:"";
    position:absolute;
    top:-120px;
    left:400px;
    width:200px;
    height:300px;
    border-radius:9999px;
    background:rgb(59 131 186 / 5%);
}

.login-left::after{
    content:"";
    position:absolute;
    bottom:-80px;
    left:-80px;
    width:225px;
    height:300px;
    border-radius:9999px;
    background:rgb(59 131 186 / 5%);
}
body { overflow: hidden; }