/*=====================================================
      BADLA HIGH SCHOOL LOGIN PAGE
      PREMIUM CSS - PART 1
======================================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

:root{

    --primary:#1557d6;
    --primary-dark:#0f45b0;

    --bg:#eef4ff;

    --text:#17325d;
    --text2:#697586;

    --white:#fff;

    --border:#e6ebf7;

    --shadow:0 18px 45px rgba(0,0,0,.08);

    --radius:24px;

}

html,
body{
    width:100%;
    height:100%;
    font-family:'Poppins',sans-serif;
}

body{

    background:linear-gradient(
        135deg,
        #ffffff 0%,
        #fbfcff 35%,
        #f6f9ff 70%,
        #eef5ff 100%
    );

    overflow:hidden;

    position:relative;

}

/*--------------------
Background Circles
--------------------*/

.bg-circle{

    position:absolute;

    border-radius:50%;

    filter:blur(8px);

}

.circle1{

    width:300px;
    height:300px;

    left:-120px;
    top:-120px;

    background:#dbe8ff;

}

.circle2{

    width:240px;
    height:240px;

    right:-80px;
    bottom:-80px;

    background:#d7e7ff;

}

.circle3{

    width:140px;
    height:140px;

    top:45%;
    left:48%;

    background:#edf4ff;

}

/*--------------------
Main Wrapper
--------------------*/

.login-wrapper{

    width:min(95%,1400px);

    height:94vh;

    margin:3vh auto;

    display:grid;

    grid-template-columns:58% 42%;

    background:rgba(255,255,255,.80);

    border-radius:30px;

    overflow:hidden;

    box-shadow:var(--shadow);

    backdrop-filter:blur(14px);

}

/*--------------------
Left Panel
--------------------*/

.left-panel{

    padding:20px 40px;

    display:flex;

    justify-content:center;

    align-items:flex-start;

    position:relative;

}

.overlay{

    width:100%;
    max-width:620px;

    text-align:center;

    margin-top:10px;   /* আগে 30px ছিল */

}

/*--------------------
Right Panel
--------------------*/

.right-panel{

    display:flex;

    justify-content:center;

    align-items:center;

    padding:20px;

}

.login-card{

    width:100%;

    max-width:470px;

    background:#fff;

    border-radius:26px;

    padding:26px;

    box-shadow:0 15px 40px rgba(0,0,0,.08);

    position:relative;

}

.login-card::before{

    content:"";

    position:absolute;

    left:0;
    top:0;

    width:100%;
    height:5px;

    background:linear-gradient(90deg,#1557d6,#4f8cff);

}


/*=====================================================
      PREMIUM CSS - PART 2
      LEFT PANEL
======================================================*/


/*-----------------------
System Badge
-----------------------*/

.system-badge{

    display:inline-flex;
    align-items:center;
    gap:8px;

    padding:9px 18px;

    border-radius:40px;

    background:#eef5ff;

    border:1px solid #dce8ff;

    color:var(--primary);

    font-size:12px;

    font-weight:600;

    margin-bottom:2px;

}

.system-badge i{

    font-size:13px;

}


/*-----------------------
Logo
-----------------------*/

/*-----------------------
Logo
-----------------------*/

.school-logo{

    width:230px;
    height:230px;

    object-fit:contain;

    display:block;

    margin:-15px auto 5px;

    filter:drop-shadow(0 15px 30px rgba(21,87,214,.22));

    transition:.35s;

}

.school-logo:hover{

    transform:scale(1.05);

}
.school-logo:hover{

    transform:scale(1.05);

}

/*-----------------------
School Name
-----------------------*/

.overlay h1{

    font-size:38px;

    font-weight:800;

    color:var(--text);

    line-height:1.08;

    margin-bottom:4px;

    letter-spacing:-1px;

}


/*-----------------------
Sub Heading
-----------------------*/

.overlay h2{

    display:inline-block;

    font-size:20px;

    font-weight:700;

    color:var(--primary);

    margin-bottom:16px;

    position:relative;

}

.overlay h2::after{

    content:"";

    position:absolute;

    left:50%;

    bottom:-8px;

    transform:translateX(-50%);

    width:120px;

    height:3px;

    border-radius:20px;

    background:#ffca2c;

}


/*-----------------------
Description
-----------------------*/

.overlay p{

    width:92%;

    margin:0 auto 18px;

    font-size:13px;

    line-height:1.65;

    color:var(--text2);

}


/*-----------------------
Feature Grid
-----------------------*/

.feature-box{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:12px;

    margin-top:10px;

}


/*-----------------------
Feature Card
-----------------------*/

.feature{

    background:#fff;

    border:1px solid var(--border);

    border-radius:18px;

    padding:14px;

    display:flex;

    align-items:center;

    gap:12px;

    min-height:72px;

    box-shadow:0 8px 18px rgba(0,0,0,.05);

    transition:.30s;

}

.feature:hover{

    transform:translateY(-4px);

    box-shadow:0 15px 28px rgba(0,0,0,.08);

}


/*-----------------------
Feature Icon
-----------------------*/

.feature i{

    width:42px;
    height:42px;

    border-radius:12px;

    background:#edf4ff;

    color:var(--primary);

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:17px;

    flex-shrink:0;

}


/*-----------------------
Feature Text
-----------------------*/

.feature span{

    font-size:14px;

    font-weight:600;

    color:var(--text);

    line-height:1.4;

}

/*=====================================================
      PREMIUM CSS - PART 3
      RIGHT PANEL
======================================================*/


/*-----------------------
Top Header
-----------------------*/

.top-header{

    display:flex;
    justify-content:space-between;
    align-items:center;

    margin-bottom:18px;

}

.top-header small{

    display:block;

    font-size:11px;

    color:#7b8796;

    margin-bottom:3px;

}

.top-header h5{

    font-size:15px;

    font-weight:700;

    color:var(--text);

}


/*-----------------------
SSL Badge
-----------------------*/

.secure{

    display:flex;

    align-items:center;

    gap:6px;

    padding:7px 12px;

    background:#edf4ff;

    color:var(--primary);

    border-radius:25px;

    font-size:11px;

    font-weight:600;

}

.secure i{

    font-size:12px;

}


/*-----------------------
Heading
-----------------------*/

.login-card h3{

    font-size:28px;

    font-weight:800;

    color:var(--text);

    margin-bottom:6px;

}

.login-card>p{

    font-size:13px;

    line-height:1.6;

    color:var(--text2);

    margin-bottom:18px;

}


/*-----------------------
Alert
-----------------------*/

.alert{

    background:#fff3f3;

    border-left:4px solid #ef4444;

    padding:12px 15px;

    border-radius:12px;

    margin-bottom:15px;

    display:flex;

    align-items:center;

    gap:8px;

    font-size:13px;

    color:#c62828;

}


/*-----------------------
Input Group
-----------------------*/

.input-group{

    margin-bottom:15px;

}

.input-group label{

    display:block;

    margin-bottom:6px;

    font-size:13px;

    font-weight:600;

    color:#334155;

}


/*-----------------------
Input Box
-----------------------*/

.input-box{

    position:relative;

}

.input-box>i:first-child{

    position:absolute;

    left:16px;

    top:50%;

    transform:translateY(-50%);

    color:#8b96a8;

    font-size:15px;

}

.input-box input{

    width:100%;

    height:46px;

    border:1px solid #d8e4ff;

    border-radius:14px;

    outline:none;

    padding:0 46px;

    background:#fbfdff;

    font-size:14px;

    transition:.3s;

}

.input-box input:focus{

    border-color:var(--primary);

    box-shadow:0 0 0 4px rgba(21,87,214,.10);

}


/*-----------------------
Password Eye
-----------------------*/

#togglePassword{

    position:absolute;

    right:16px;

    top:50%;

    transform:translateY(-50%);

    cursor:pointer;

    color:#7c8798;

    font-size:15px;

}


/*-----------------------
Remember
-----------------------*/

.login-options{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin:16px 0;

}

.login-options label{

    display:flex;

    align-items:center;

    gap:7px;

    font-size:13px;

    color:#5d6a7b;

}

.login-options input{

    accent-color:var(--primary);

}

.version{

    font-size:12px;

    color:#94a3b8;

}


/*-----------------------
Login Button
-----------------------*/

#loginBtn{

    width:100%;

    height:48px;

    border:none;

    border-radius:14px;

    background:linear-gradient(135deg,#1557d6,#2e73ff);

    color:#fff;

    font-size:15px;

    font-weight:600;

    cursor:pointer;

    display:flex;

    align-items:center;

    justify-content:center;

    gap:8px;

    transition:.3s;

}

#loginBtn:hover{

    transform:translateY(-2px);

    box-shadow:0 12px 25px rgba(21,87,214,.25);

}

/*=====================================================
      PREMIUM CSS - PART 4
      SECURITY • FOOTER • RESPONSIVE
======================================================*/


/*-----------------------
Security Box
-----------------------*/

.security-box{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:12px;

    margin-top:18px;

}

.security-box div{

    background:#f8fbff;

    border:1px solid #e8eefc;

    border-radius:16px;

    padding:14px;

    transition:.3s;

}

.security-box div:hover{

    transform:translateY(-3px);

    box-shadow:0 12px 22px rgba(0,0,0,.08);

}

.security-box i{

    color:var(--primary);

    font-size:18px;

    margin-bottom:8px;

}

.security-box strong{

    display:block;

    font-size:13px;

    color:var(--text);

    margin-bottom:4px;

}

.security-box small{

    font-size:11px;

    color:var(--text2);

    line-height:1.5;

}


/*-----------------------
Footer
-----------------------*/

.footer{

    margin-top:18px;

    padding-top:14px;

    border-top:1px solid #edf2ff;

    text-align:center;

    font-size:11px;

    line-height:1.7;

    color:#7b8796;

}

.footer b{

    color:var(--text);

}


/*-----------------------
Hover Effects
-----------------------*/

.feature,
.login-card,
#loginBtn,
.input-box input{

    transition:.30s ease;

}

.input-box input:hover{

    border-color:#bfd4ff;

}

.feature:hover{

    border-color:#bcd2ff;

}


/*-----------------------
Selection
-----------------------*/

::selection{

    background:var(--primary);

    color:#fff;

}


/*-----------------------
Scrollbar
-----------------------*/

::-webkit-scrollbar{

    width:7px;

}

::-webkit-scrollbar-thumb{

    background:#bdd4ff;

    border-radius:20px;

}

::-webkit-scrollbar-track{

    background:#eef5ff;

}


/*=====================================================
      RESPONSIVE
======================================================*/

@media(max-width:1200px){

.login-wrapper{

    grid-template-columns:1fr;

    height:auto;

    min-height:100vh;

}

.left-panel{

    padding:35px;

}

.right-panel{

    padding:30px;

}

}


@media(max-width:768px){

body{

    overflow:auto;

}

.login-wrapper{

    width:95%;

    height:auto;

    margin:15px auto;

}

.overlay h1{

    font-size:30px;

}

.overlay h2{

    font-size:18px;

}

.feature-box{

    grid-template-columns:1fr;

}

.security-box{

    grid-template-columns:1fr;

}

.login-card{

    padding:22px;

}

}


@media(max-width:480px){

.left-panel{

    padding:22px;

}

.right-panel{

    padding:18px;

}

.school-logo{

    width:65px;

    height:65px;

}

.overlay h1{

    font-size:26px;

}

.overlay p{

    font-size:12px;

}

.system-badge{

    font-size:11px;

}

.feature{

    min-height:62px;

}

.feature span{

    font-size:13px;

}

.login-card h3{

    font-size:24px;

}

.input-box input{

    height:44px;

}

#loginBtn{

    height:46px;

}

}
