/* ==========================================
   RESET
========================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:Arial, Helvetica, sans-serif;
    background:linear-gradient(135deg,#082C6C 0%,#0D5CB6 100%);
    min-height:100vh;
    display:flex;
    flex-direction:column;
}

/* ==========================================
   LOGIN LAYOUT
========================================== */

.login-container{
    flex:1;
    display:flex;
    justify-content:center;
    align-items:center;
    padding:40px 20px;
}

.login-card{
    width:100%;
    max-width:500px;
    background:#ffffff;
    border-radius:16px;
    padding:45px;
    box-shadow:0 20px 50px rgba(0,0,0,.18);
    text-align:center;
}

/* ==========================================
   LOGO
========================================== */

.login-logo{
    width:260px;
    max-width:90%;
    height:auto;
    display:block;
    margin:0 auto 25px;
}

/* ==========================================
   TEXT
========================================== */

.login-card h2{
    color:#082C6C;
    font-size:28px;
    margin-bottom:18px;
}

.login-text{
    color:#666;
    line-height:1.7;
    margin-bottom:30px;
}

/* ==========================================
   FORM
========================================== */

form{
    text-align:left;
}

label{
    display:block;
    margin-top:18px;
    margin-bottom:8px;
    font-weight:bold;
    color:#082C6C;
}

input[type="text"],
input[type="password"]{
    width:100%;
    height:50px;
    border:1px solid #D8DDE6;
    border-radius:8px;
    padding:0 16px;
    font-size:16px;
    transition:.3s;
}

input[type="text"]:focus,
input[type="password"]:focus{
    outline:none;
    border-color:#082C6C;
    box-shadow:0 0 0 3px rgba(8,44,108,.12);
}

/* ==========================================
   PASSWORD FIELD
========================================== */

.password-wrapper{
    position:relative;
    width:100%;
}

.password-wrapper input{
    width:100%;
    padding-right:50px;
}

.toggle-password{
    position:absolute;
    top:50%;
    right:16px;
    transform:translateY(-50%);
    color:#888;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    width:24px;
    height:24px;
    transition:.3s;
    z-index:5;
}

.toggle-password:hover{
    color:#082C6C;
}

.toggle-password i{
    font-size:18px;
}

/* ==========================================
   BUTTON
========================================== */

.login-button{
    width:100%;
    margin-top:30px;
    border:none;
    border-radius:50px;
    padding:16px;
    background:#F5B51D;
    color:#082C6C;
    font-size:18px;
    font-weight:bold;
    cursor:pointer;
    transition:.3s;
}

.login-button:hover{
    background:#FFD447;
    transform:translateY(-2px);
    box-shadow:0 10px 25px rgba(245,181,29,.35);
}

.login-button i{
    margin-right:8px;
}

/* ==========================================
   BACK LINK
========================================== */

.back-home{
    margin-top:30px;
    text-align:center;
}

.back-home a{
    text-decoration:none;
    color:#082C6C;
    font-weight:bold;
    transition:.3s;
}

.back-home a:hover{
    color:#F5B51D;
}

/* ==========================================
   ALERTS
========================================== */

.alert{
    padding:14px;
    border-radius:8px;
    margin-bottom:20px;
    text-align:center;
    line-height:1.5;
}

.alert-error{
    background:#FDECEC;
    border:1px solid #E8B4B4;
    color:#A12622;
}

/* ==========================================
   FOOTER
========================================== */

footer{
    background:#082C6C;
    border-top:4px solid #F5B51D;
    color:#fff;
    text-align:center;
    padding:18px;
    font-size:14px;
}

/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width:600px){

    .login-card{
        padding:30px 25px;
    }

    .login-logo{
        width:200px;
    }

    .login-card h2{
        font-size:22px;
    }

    .login-button{
        font-size:16px;
    }

}