.page {
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
}

:root {
    --container-border-color: transparent;
    --container-width: 1024px;
    --container-height: 768px;
    --logo-height: 130px;

    --background-width: 804px;
    --background-height: 638px;
    --form-width: calc(var(--container-width) - var(--background-width));
    --form-height: 300px;
}

html,
body {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    * {
        box-sizing: border-box;
    }
}

.container {
    width: 100%;
    height: 100%;
    position: relative;
    max-width: var(--container-width);
    max-height: var(--container-height);

    margin: auto;
    border: 1px solid var(--container-border-color);

    .logo {
        height: var(--logo-height);
    }

    .title {
        position: absolute;
        top: calc(var(--logo-height) - 10px);
        left: 50px;
        color: #45b5fd;
        font-size: 24px;
        font-weight: bold;
        letter-spacing: 1px;
        text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
    }

    .background {
        position: absolute;
        top: calc(var(--logo-height) + 0px);
        left: 0;
        width: var(--background-width);
        height: var(--background-height);

        img {
            width: 100%;
            height: 100%;
            object-fit: contain;
        }
    }

    .form {

        position: absolute;
        top: calc((var(--container-height) - var(--form-height)) /2);
        right: 0%;
        width: var(--form-width);
        height: var(--form-height);

        background-color: white;
        border: 1px solid #0b2f8f;
        box-shadow: 2px 2px 4px 0px #0b2f8f;

        font-size: 16px;

        .formItem {
            width: 100%;
            display: flex;
            margin: 10px 0px;
            flex-direction: row;
            align-items: center;
            justify-content: center;
            font-weight: bold;
            padding: 4px 8px;

            .idEdit,
            .passwordEdit {
                width: 100%;
                width: 100%;
                height: 100%;
                padding: 8px;
                font-weight: bold;
                font-size: 16px;
            }

            .formTitle {
                width: 100%;
                text-align: center;
                font-size: 20px;
                font-weight: bold;
                color: #2541a0;
            }

            .loginBtn {
                width: 100%;
                font-size: 16px;
                padding: 4px;
                border-radius: 4px;
                background-color: #0b2f8f;
                color: white;
            }

            .rememberMeEdit {
                width: 100%;
                display: flex;
                flex-direction: row;
                align-items: center;
                justify-content: flex-start;

                input {
                    width: 20px;
                    height: 20px;
                    margin-right: 8px;
                }

                label {
                    font-size: 16px;
                    font-weight: bold;
                }
            }


        }
    }
}