/*=========================================================
    PATHAK ERP LOGIN
    Premium School ERP UI
=========================================================*/

:root{

    --primary:#2563eb;
    --primary-dark:#1d4ed8;
    --light:#f8fafc;
    --white:#ffffff;

    --text:#0f172a;
    --muted:#64748b;

    --border:#e2e8f0;

    --shadow:
        0 25px 60px rgba(15,23,42,.08);

}


/*=========================================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    font-family:'Inter',sans-serif;
    background:#f8fafc;
    overflow-x:hidden;

}

/*=========================================================*/
/* MAIN LAYOUT */
/*=========================================================*/

.login-wrapper{

    display:flex;
    min-height:100vh;

}

/*=========================================================*/
/* LEFT SIDE */
/*=========================================================*/

.branding-panel{

    width:60%;
    position:relative;

    overflow:hidden;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:80px;

    background:
        linear-gradient(
        135deg,
        #2563eb 0%,
        #1d4ed8 40%,
        #3b82f6 100%
        );

}

/*=========================================================*/
/* GRID */
/*=========================================================*/

.grid-overlay{

    position:absolute;

    inset:0;

    background-image:

    linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),

    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);

    background-size:45px 45px;

}

/*=========================================================*/
/* FLOATING CIRCLES */
/*=========================================================*/

.background-circle{

    position:absolute;

    border-radius:50%;

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(4px);

    animation:float 10s ease-in-out infinite;

}

.circle-1{

    width:620px;
    height:620px;

    top:-220px;
    left:-160px;

}

.circle-2{

    width:280px;
    height:280px;

    right:100px;
    bottom:120px;

    animation-delay:2s;

}

.circle-3{

    width:160px;
    height:160px;

    top:180px;
    right:140px;

    animation-delay:5s;

}

/*=========================================================*/
/* BRANDING */
/*=========================================================*/

.branding-content{

    position:relative;
    z-index:5;

    color:#fff;

    max-width:560px;

}

.school-logo{

    width:90px;

    margin-bottom:35px;

}

.brand-text h1{

    font-family:'Poppins',sans-serif;

    font-size:60px;

    font-weight:700;

    letter-spacing:3px;

    margin-bottom:8px;

}

.brand-text h2{

    font-size:30px;

    font-weight:500;

    margin-bottom:12px;

}

.brand-text h3{

    font-size:18px;

    font-weight:400;

    opacity:.92;

    margin-bottom:45px;

}

.tagline{

    font-size:22px;

    line-height:1.8;

    max-width:420px;

    color:rgba(255,255,255,.95);

}

/*=========================================================*/
/* RIGHT SIDE */
/*=========================================================*/

.login-panel{

    width:40%;

    display:flex;

    justify-content:center;

    align-items:center;

    padding:60px;

    background:#f8fafc;

}

/*=========================================================*/
/* LOGIN CARD */
/*=========================================================*/

.login-card{

    width:100%;
    max-width:430px;

    background:#fff;

    border-radius:28px;

    padding:55px;

    box-shadow:var(--shadow);

    animation:fadeUp .8s;

}

/*=========================================================*/

.login-header{

    margin-bottom:40px;

}

.login-header h2{

    font-family:'Poppins',sans-serif;

    color:var(--text);

    font-size:34px;

    margin-bottom:8px;

}

.login-header p{

    color:var(--muted);

    font-size:15px;

}

/*=========================================================*/
/* LABEL */
/*=========================================================*/

.form-label{

    font-size:14px;

    font-weight:600;

    color:#334155;

    margin-bottom:10px;

}

/*=========================================================*/
/* INPUTS */
/*=========================================================*/

.custom-input{

    border:1px solid var(--border);

    border-radius:14px;

    overflow:hidden;

    transition:.30s;

    background:#fff;

}

.custom-input:focus-within{

    border-color:var(--primary);

    box-shadow:

    0 0 0 4px rgba(37,99,235,.10);

}

.input-group-text{

    background:#fff;

    border:none;

    color:#64748b;

    padding-left:18px;

}

.form-control{

    border:none;

    height:56px;

    font-size:15px;

    box-shadow:none !important;

}

.password-toggle{

    border:none;

    background:#fff;

    color:#64748b;

    padding-right:18px;

}

/*=========================================================*/
/* OPTIONS */
/*=========================================================*/

.login-options{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:28px;

    margin-top:18px;

}

.form-check-label{

    font-size:14px;

}

.forgot-link{

    text-decoration:none;

    color:var(--primary);

    font-size:14px;

}

.forgot-link:hover{

    color:var(--primary-dark);

}

/*=========================================================*/
/* BUTTON */
/*=========================================================*/

.login-btn{

    height:56px;

    border:none;

    border-radius:14px;

    font-size:16px;

    font-weight:600;

    background:

    linear-gradient(
    135deg,
    #2563eb,
    #1d4ed8
    );

    transition:.35s;

}

.login-btn:hover{

    transform:translateY(-2px);

    box-shadow:

    0 20px 35px rgba(37,99,235,.28);

}

/*=========================================================*/

.login-footer{

    margin-top:35px;

    text-align:center;

    color:#94a3b8;

    font-size:13px;

}

/*=========================================================*/
/* ANIMATION */
/*=========================================================*/

@keyframes float{

0%{

transform:translateY(0px);

}

50%{

transform:translateY(-18px);

}

100%{

transform:translateY(0px);

}

}

@keyframes fadeUp{

from{

opacity:0;

transform:translateY(30px);

}

to{

opacity:1;

transform:translateY(0);

}

}

/*=========================================================*/
/* RESPONSIVE */
/*=========================================================*/

@media(max-width:1100px){

.branding-panel{

width:55%;

padding:60px;

}

.login-panel{

width:45%;

}

.brand-text h1{

font-size:48px;

}

.brand-text h2{

font-size:24px;

}

}

@media(max-width:900px){

.login-wrapper{

flex-direction:column;

}

.branding-panel{

width:100%;

min-height:320px;

padding:50px;

}

.login-panel{

width:100%;

padding:40px 20px;

}

.login-card{

max-width:500px;

}

}

@media(max-width:576px){

.branding-panel{

display:none;

}

.login-panel{

padding:25px;

}

.login-card{

padding:35px 25px;

border-radius:20px;

}

.login-header h2{

font-size:28px;

}

}