/* ===== Base Background ===== */
body{
    margin:0;
    min-height:100vh;
    font-family:'Segoe UI',sans-serif;
    background: #111827 url('../images/jolsap.jpg') center/cover no-repeat fixed;
    position: relative;
}
body::before{
    content:"";
    position:absolute;
    inset:0;
    background: rgba(0,0,0,0.45);
    z-index:0;
}

/* wrapper */
.main-wrapper{
    position:relative;
    z-index:1;
    min-height:100vh;
    display:flex;
    align-items:center;
}

/* Left Side Info */
.info-section{
    color:#fff;
    padding:40px;
}
.info-section h2{
    font-weight:700;
    margin-bottom:20px;
}
.info-section p{
    color: rgba(255,255,255,0.90);
}
.info-section ul{
    list-style:none;
    padding:0;
    line-height:2;
}
.info-section ul li{
    color: rgba(255,255,255,0.92);
}
.info-section ul li::before{
    content:"✔ ";
    color:#00ffcc;
}

/* ===== Login Card ===== */
.login-card{
    width:420px;
    border-radius:16px;
    overflow:hidden;
    background: rgba(255,255,255,0.12);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    border: 1px solid rgba(255,255,255,0.25);
    box-shadow: 0 10px 30px rgba(0,0,0,0.35);
}

.card-header{
    background: rgba(13,110,253,0.22);
    color:#fff;
    text-align:center;
    font-weight:600;
    font-size:18px;
    padding:16px 10px;
    border-bottom: 1px solid rgba(255,255,255,0.18);
}

.card-body{
    background: #111827;
    padding:22px;
    color:#111827;
}

/* ===== Labels ===== */
.form-label{
    color: rgba(255,255,255,0.92);
    font-weight:600;
}

/* ===== Inputs ===== */
.form-control{
    background: rgba(255,255,255,0.16);
    border: 1px solid rgba(255,255,255,0.22);
    color:#fff;
    border-radius: 12px;
    transition: all 0.25s ease;
}

/* Placeholder (dim) */
.form-control::placeholder{
    color: rgba(255,255,255,0.55);
}

/* Focus = white */
.form-control:focus{
    background: #ffffff;
    color:#000;
    box-shadow: 0 0 0 3px rgba(13,110,253,0.25);
    border-color: rgba(13,110,253,0.45);
}

/* ✅ Typing করলে white থাকবে */
.form-control:not(:placeholder-shown){
    background: #ffffff !important;
    color:#000 !important;
}

/* Hover effect */
.form-control:hover{
    background: rgba(255,255,255,0.25);
}

/* ===== Select ===== */
.form-select{
    background: rgba(255,255,255,0.16);
    border: 1px solid rgba(255,255,255,0.22);
    color:#fff;
    border-radius: 12px;
}
.form-select:focus{
    background:#ffffff;
    color:#000;
}

/* ===== Buttons ===== */
.btn-login{
    background: rgba(13,110,253,0.75);
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 12px;
    font-weight: 600;
    padding: 10px 14px;
}
.btn-login:hover{
    background: rgba(13,110,253,0.90);
}

/* Secondary button */
.btn-outline-secondary{
    border-color: rgba(255,255,255,0.35) !important;
    color: rgba(255,255,255,0.92) !important;
    border-radius: 12px;
}
.btn-outline-secondary:hover{
    background: rgba(255,255,255,0.14) !important;
    border-color: rgba(255,255,255,0.50) !important;
    color:#fff !important;
}

/* ===== Links ===== */
.card-body a{
    color: rgba(255,255,255,0.92);
}
.card-body a:hover{
    color: #00ffcc;
}

/* ===== Alerts ===== */
.alert-danger{
    background: rgba(220,53,69,0.25);
    border: 1px solid rgba(255,255,255,0.18);
    color:#fff;
}
.alert-success{
    background: rgba(25,135,84,0.25);
    border: 1px solid rgba(255,255,255,0.18);
    color:#fff;
}

/* ===== Mobile ===== */
@media(max-width:991px){
    .info-section{
        text-align:center;
        padding-bottom:20px;
    }
    .login-card{
        width: 100%;
        max-width: 420px;
    }
}