/* ==========================================================
   SK-TECH LOGIN PAGE
   FILE: login.css
========================================================== */

/* ==========================================================
   RESET
========================================================== */

*{

    margin:0;

    padding:0;

    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:"Poppins",sans-serif;

    background:#F5F8FC;

    color:#0B1F3A;

}

/* ==========================================================
   LOGIN SECTION
========================================================== */

.login-section{

    width:100%;

    min-height:100vh;

    display:flex;

    justify-content:center;

    align-items:center;

    padding:40px 20px;

}

/* ==========================================================
   LOGIN CONTAINER
========================================================== */

.login-container{

    width:100%;

    max-width:1250px;

    background:#FFFFFF;

    display:grid;

    grid-template-columns:1fr 1fr;

    border-radius:25px;

    overflow:hidden;

    box-shadow:0 25px 60px rgba(0,0,0,.12);

}

/* ==========================================================
   LEFT PANEL
========================================================== */

.login-left{

    position:relative;

    background:linear-gradient(135deg,#0B1F3A,#2D6CDF);

    color:#FFFFFF;

    padding:60px;

    display:flex;

    align-items:center;

    justify-content:center;

    overflow:hidden;

}

.overlay{

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.12);

}

.left-content{

    position:relative;

    z-index:2;

}

/* ==========================================================
   BRAND
========================================================== */

.brand{

    text-align:center;

    margin-bottom:50px;

}

.logo{

    width:120px;

    height:120px;

    object-fit:contain;

    margin-bottom:20px;

    filter:drop-shadow(0 10px 25px rgba(0,0,0,.35));

}

.brand h1{

    font-size:42px;

    font-weight:700;

    letter-spacing:2px;

    margin-bottom:10px;

}

.brand p{

    font-size:18px;

    opacity:.9;

}

/* ==========================================================
   WELCOME TEXT
========================================================== */

.welcome-text{

    margin-bottom:45px;

}

.welcome-text h2{

    font-size:34px;

    margin-bottom:18px;

    font-weight:700;

}

.welcome-text p{

    line-height:1.9;

    font-size:16px;

    opacity:.95;

}

/* ==========================================================
   SECURITY BOX
========================================================== */

.security-box{

    display:flex;

    flex-direction:column;

    gap:18px;

}

.security-box div{

    display:flex;

    align-items:center;

    gap:15px;

    background:rgba(255,255,255,.12);

    padding:18px 20px;

    border-radius:14px;

    backdrop-filter:blur(10px);

}

.security-box i{

    width:45px;

    height:45px;

    border-radius:50%;

    background:#FFFFFF;

    color:#2D6CDF;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:18px;

}

.security-box span{

    font-size:16px;

    font-weight:500;

}
/* ==========================================================
   RIGHT PANEL
========================================================== */

.login-right{

    display:flex;

    justify-content:center;

    align-items:center;

    padding:60px 45px;

    background:#FFFFFF;

}

/* ==========================================================
   LOGIN CARD
========================================================== */

.login-card{

    width:100%;

    max-width:470px;

}

.card-header{

    text-align:center;

    margin-bottom:35px;

}

.card-logo{

    width:80px;

    margin-bottom:18px;

}

.card-header h2{

    font-size:34px;

    color:#0B1F3A;

    font-weight:700;

    margin-bottom:10px;

}

.card-header p{

    color:#6B7280;

    font-size:15px;

}

/* ==========================================================
   INPUT GROUP
========================================================== */

.input-group{

    margin-bottom:22px;

}

.input-group label{

    display:block;

    margin-bottom:8px;

    font-weight:600;

    color:#0B1F3A;

}

.input-box{

    position:relative;

}

.input-box input{

    width:100%;

    height:58px;

    padding:0 55px;

    border:2px solid #E5E7EB;

    border-radius:14px;

    font-size:15px;

    outline:none;

    transition:.3s;

    background:#FAFBFC;

}

.input-box input:focus{

    border-color:#2D6CDF;

    background:#FFFFFF;

    box-shadow:0 0 0 4px rgba(45,108,223,.15);

}

.input-box i:first-child{

    position:absolute;

    left:18px;

    top:50%;

    transform:translateY(-50%);

    color:#2D6CDF;

    font-size:18px;

}

#togglePassword{

    position:absolute;

    right:18px;

    top:50%;

    transform:translateY(-50%);

    color:#7A7A7A;

    cursor:pointer;

    transition:.3s;

    pointer-events:auto;

    z-index:10;
}

#togglePassword:hover{

    color:#2D6CDF;

}

/* ==========================================================
   FORM OPTIONS
========================================================== */

.form-options{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:28px;

}

.remember-me{

    display:flex;

    align-items:center;

    gap:8px;

    cursor:pointer;

    font-size:14px;

    color:#4B5563;

}

.remember-me input{

    accent-color:#2D6CDF;

}

.forgot-password{

    text-decoration:none;

    color:#2D6CDF;

    font-weight:600;

    transition:.3s;

}

.forgot-password:hover{

    color:#0B1F3A;

}

/* ==========================================================
   LOGIN BUTTON
========================================================== */

.login-btn{

    width:100%;

    height:58px;

    border:none;

    border-radius:14px;

    background:#2D6CDF;

    color:#FFFFFF;

    font-size:16px;

    font-weight:600;

    cursor:pointer;

    transition:.3s;

}

.login-btn:hover{

    background:#0B1F3A;

    transform:translateY(-2px);

}

.login-btn i{

    margin-right:10px;

}

/* ==========================================================
   DIVIDER
========================================================== */

.divider{

    display:flex;

    align-items:center;

    margin:35px 0;

}

.divider::before,

.divider::after{

    content:"";

    flex:1;

    height:1px;

    background:#E5E7EB;

}

.divider span{

    padding:0 20px;

    color:#9CA3AF;

    font-size:14px;

}

/* ==========================================================
   REGISTER
========================================================== */

.register-section{

    text-align:center;

}

.register-section p{

    margin-bottom:15px;

    color:#6B7280;

}

.register-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    width:100%;

    height:56px;

    text-decoration:none;

    border:2px solid #2D6CDF;

    color:#2D6CDF;

    border-radius:14px;

    font-weight:600;

    transition:.3s;

}

.register-btn:hover{

    background:#2D6CDF;

    color:#FFFFFF;

}

/* ==========================================================
   SECURITY NOTE
========================================================== */

.security-note{

    display:flex;

    gap:12px;

    align-items:flex-start;

    background:#F4F8FF;

    padding:18px;

    margin-top:30px;

    border-left:5px solid #2D6CDF;

    border-radius:12px;

}

.security-note i{

    color:#2D6CDF;

    margin-top:3px;

    font-size:18px;

}

.security-note p{

    font-size:14px;

    color:#4B5563;

    line-height:1.7;

}

/* ==========================================================
   FOOTER
========================================================== */

.login-footer{

    margin-top:35px;

    text-align:center;

}

.login-footer p{

    font-size:13px;

    color:#6B7280;

    margin-bottom:8px;

    line-height:1.8;

}

.login-footer a{

    color:#2D6CDF;

    text-decoration:none;

    font-weight:600;

}

.login-footer a:hover{

    color:#0B1F3A;

}
/* ==========================================================
   LOADING OVERLAY
========================================================== */

.loading-overlay{

    position:fixed;

    inset:0;

    background:rgba(255,255,255,.92);

    display:none;

    justify-content:center;

    align-items:center;

    flex-direction:column;

    z-index:9999;

}

.loader{

    width:65px;

    height:65px;

    border:6px solid #E5E7EB;

    border-top:6px solid #2D6CDF;

    border-radius:50%;

    animation:spin .8s linear infinite;

}

.loading-overlay p{

    margin-top:20px;

    color:#0B1F3A;

    font-size:16px;

    font-weight:600;

}

@keyframes spin{

    100%{

        transform:rotate(360deg);

    }

}

/* ==========================================================
   TOAST NOTIFICATION
========================================================== */

.toast{

    position:fixed;

    top:30px;

    right:30px;

    min-width:320px;

    background:#2D6CDF;

    color:#FFFFFF;

    padding:18px 22px;

    border-radius:14px;

    display:none;

    align-items:center;

    gap:15px;

    box-shadow:0 18px 40px rgba(0,0,0,.18);

    z-index:99999;

    animation:slideIn .35s ease;

}

.toast i{

    font-size:22px;

}

.toast span{

    font-size:15px;

    font-weight:500;

}

@keyframes slideIn{

    from{

        transform:translateX(100%);

        opacity:0;

    }

    to{

        transform:translateX(0);

        opacity:1;

    }

}

/* ==========================================================
   INPUT ANIMATION
========================================================== */

.input-box input{

    transition:

    border-color .3s,

    box-shadow .3s,

    transform .25s;

}

.input-box input:focus{

    transform:translateY(-2px);

}

/* ==========================================================
   BUTTON EFFECTS
========================================================== */

.login-btn,

.register-btn{

    transition:

    .3s ease;

}

.login-btn:active,

.register-btn:active{

    transform:scale(.98);

}

/* ==========================================================
   CARD ANIMATION
========================================================== */

.login-card{

    animation:fadeUp .8s ease;

}

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(40px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

/* ==========================================================
   LOGO ANIMATION
========================================================== */

.logo,

.card-logo{

    animation:floatLogo 3s ease-in-out infinite;

}

@keyframes floatLogo{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-8px);

    }

    100%{

        transform:translateY(0);

    }

}

/* ==========================================================
   RESPONSIVE
========================================================== */

@media(max-width:1100px){

.login-container{

grid-template-columns:1fr;

max-width:700px;

}

.login-left{

display:none;

}

.login-right{

padding:45px;

}

}

@media(max-width:768px){

.login-section{

padding:20px;

}

.login-right{

padding:35px 25px;

}

.card-header h2{

font-size:30px;

}

.login-btn,

.register-btn{

height:54px;

font-size:15px;

}

.toast{

left:20px;

right:20px;

min-width:auto;

}

}

@media(max-width:500px){

.login-card{

width:100%;

}

.card-logo{

width:70px;

}

.card-header h2{

font-size:26px;

}

.input-box input{

height:52px;

font-size:14px;

}

.form-options{

flex-direction:column;

align-items:flex-start;

gap:12px;

}

.security-note{

flex-direction:column;

}

.security-box div{

padding:15px;

}

.logo{

width:100px;

height:100px;

}

}

/* ==========================================================
   SCROLLBAR
========================================================== */

::-webkit-scrollbar{

    width:8px;

}

::-webkit-scrollbar-thumb{

    background:#2D6CDF;

    border-radius:20px;

}

::-webkit-scrollbar-track{

    background:#F1F5F9;

}

/* ==========================================================
   SELECTION
========================================================== */

::selection{

    background:#2D6CDF;

    color:#FFFFFF;

}

/* ==========================================================
   END OF FILE
========================================================== */