* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {    
    font-family: 'Segoe UI', sans-serif;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;    
    background-color: #585D67;
}

.login-container {
    width: 100%;
    padding: 20px;
}

.login-card {
    background: white;
    max-width: 400px;
    margin: auto;
    padding: 40px;
    border-radius: 16px;
    box-shadow: 0 20px 40px rgba(0,0,0,.15);
}

.login-header {
    text-align: center;
    margin-bottom: 30px;
}

    .login-header h1 {
        color: #1f2937;
        margin-bottom: 10px;
    }

    .login-header p {
        color: #6b7280;
    }

.custom-textbox {
    margin-bottom: 20px;
}
    .custom-textbox label {
        display: block;
        margin-bottom: 8px;
        color: #374151;
        font-weight: 600;
    }

    .custom-textbox input {
        width: 100%;
        padding: 12px;
        border: 1px solid #d1d5db;
        border-radius: 8px;
        outline: none;
        transition: .3s;
    }

        .custom-textbox input:focus {
            border-color: #2563eb;
            box-shadow: 0 0 8px rgba(37,99,235,.2);
        }    

.logo-container {
    text-align: center;
    margin-bottom: 20px;
}

    .logo-container img {
        max-width: 120px;
        height: auto;
    }

.button-new {
    width: 100%;
    padding: 14px;
    border: none;
}

button {
    width: 100%;
    padding: 14px;
    border: none;
    border-radius: 8px;
    background: #2563eb;
    color: white;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    transition: .3s;
}

    button:hover:not(:disabled) {
        background: #1d4ed8;
    }

    button:disabled {
        background: #9ca3af;
        cursor: not-allowed;
        opacity: .8;
    }

@media(max-width:480px) {

    .login-card {
        padding: 25px;
    }
}







.form 
{
    padding-bottom: 0;
}

.content-wrapper 
{
    padding-bottom: 0;
}

.content 
{
    display: table;
    height: calc(100vh - 3.13rem); /* 3.13rem is the Header size */
}

.formLayout-verticalAlign
{
    display: table-cell;
    vertical-align: middle;
}

.formLayout-container
{
    background-color: white;
    margin-left: auto;
    margin-right: auto;
    max-width: 362px;    
}

.formLayout-groupBox
{
    margin: 0;
    padding: 0 !important;
}

.formLayout-generalErrorText
{
    color: red;
    padding-top: 1em;
}

.eye-button
{
    background: none;
}

.eye-button > div
{
    background: url('Images/eye-button.svg') no-repeat center;
    width: 18px;
    height: 12px;
    vertical-align: baseline;
    pointer-events: none;
    user-select: none;
}
.eye-button.show-password > div
{
    background: url('Images/eye-button-hide.svg') no-repeat center;
}

input[type=password]::-ms-reveal,
input[type=password]::-ms-clear
{
    display: none;
}

.footer-wrapper
{
    position: static;
    display: table-row;
}