:root {
    --header_color: #591615;
    --header_strip_color: #000000;

    --text_color_01: #ebd7c6;
    --text_color_02: #000000;
    --text_color_03: #591615;
    --text_color_04: #444444;
    --text_color_05: #edede9;

    --border_color_01: #ebd7c6;
    --border_color_02: #000000;

    --background_color_01: #edede9;
    --background_color_02: #591615;
    --background_color_03: #000000;
}

#body {
    width: 100%;
    height: auto;
}

.login_wrapper {
    width: 100%;
    height: 90vh;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
}

.user_login_card_wrapper {
    width: 500px;
    height: 600px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    background: var(--background_color_01);
    border-radius: 20px;
    margin: 0;
}

.user_login_card_wrapper h2 {
    font-family: "Lato", sans-serif;
    font-size: 36px;
    font-weight: 600;
    font-style: normal;
    color: var(--text_color_03);
    padding: 0;
    margin: 70px 0 0 0;
}

.info_fields_wrapper {
    width: max-content;
    height: auto;
    display: flex;
    flex-direction: column;
    gap: 30px;
    margin: 0 0 0 0;
}

.username_wrapper,
.password_wrapper {
    width: max-content;
    height: auto;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.info_fields_wrapper label,
.info_fields_wrapper input::placeholder,
.info_fields_wrapper input[type="username"],
.info_fields_wrapper input[type="password"] {
    font-family: "Lato", sans-serif;
    font-style: normal;
    font-size: 16px;
    font-weight: 400;
    color: var(--text_color_03);
    padding: 0;
    margin: 0 0 0 5px;
}

.info_fields_wrapper input {
    width: 350px;
    height: 40px;
    border: none;
    border-radius: 40px;
    outline: none;
    margin: 0;
}

.info_fields_wrapper input:focus {   
    outline: 1px solid var(--background_color_02);
    background-color: #f0f7ff;
}

.info_fields_wrapper input[type="username"],
.info_fields_wrapper input[type="password"] {
    font-size: 14px;
    font-weight: 400;
    padding-left: 20px;
}

.info_fields_wrapper input::placeholder {
    font-size: 14px;
    font-weight: 200;
    color: var(--text_color_04);
}

.keep_logged_in {
    width: max-content;
    height: auto;
    margin: 0;
}

.keep_logged_in label {
    font-family: "Lato", sans-serif;
    font-style: normal;
    font-size: 16px;
    font-weight: 400;
    color: var(--text_color_03);
    padding: 0;
    margin: 0;
}

.keep_logged_in input {
    scale: 1.5;
    accent-color: var(--background_color_03);
    margin: 0 0 0 20px;
}

.user_login_card_wrapper button {
    width: 100%;
    height: 80px;
    background: var(--background_color_02);
    border: none;
    border-radius: 0 0 20px 20px;
    font-family: "Lato", sans-serif;
    font-size: 32px;
    font-weight: 600;
    font-style: normal;
    line-height: 1px;
    color: var(--text_color_05);
    margin: 0;
    transition: all 0.15s ease-in;
}

.user_login_card_wrapper button:hover{
    cursor: pointer;
    background: var(--background_color_01);
    color: var(--text_color_03);
}

.login_error_msg {
    font-family: "Lato", sans-serif;
    font-style: normal;
    font-size: 16px;
    font-weight: 400;
    text-align: center;
    color: var(--text_color_04);
    padding: 0;
    margin: 0;
}

@media screen and (max-width: 450px) {

    .login_wrapper {
        width: 100%;
        height: 80vh;
    }

    .user_login_card_wrapper {
        width: 350px;
        height: 500px;
        border-radius: 15px;
    }

    .info_fields_wrapper input {
        width: 280px;
    }

    .user_login_card_wrapper button {
        height: 70px;
        font-size: 24px;
    }

}