/* Forgot Password: left image fixed, only right column scrolls (short viewports / tablets). */

html.forgot-password-html,
body.forgot-password-page {
    height: 100%;
}

/* Mobile: image hidden — allow page to scroll so Send button is reachable */
@media (max-width: 767.98px) {
    body.forgot-password-page {
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        min-height: 100vh;
    }

    .forgot-password-page .auth-split-form-outer {
        display: flex;
        flex-direction: column;
        min-height: 100vh;
    }

    .forgot-password-page .auth-split-form-outer .login {
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        flex: 1 0 auto;
        width: 100%;
        align-items: stretch;
        box-sizing: border-box;
    }

    .forgot-password-page .auth-split-form-outer .login > .container {
        flex-shrink: 0;
    }
}

/* md+: split view — no body scroll; image fixed, form column scrolls */
@media (min-width: 768px) {
    body.forgot-password-page {
        overflow: hidden;
        height: 100vh;
        max-height: 100vh;
    }

    .forgot-password-page .page {
        min-height: 100vh;
        height: 100vh;
        max-height: 100vh;
        overflow: hidden;
    }

    .forgot-password-page .page > .container-fluid {
        flex: 1 1 auto;
        min-height: 0;
        display: flex;
        flex-direction: column;
        height: 100%;
        overflow: hidden;
    }

    .forgot-password-page .auth-split-row {
        flex: 1 1 auto;
        min-height: 0;
        height: 100%;
        max-height: 100%;
        overflow: hidden;
        flex-wrap: nowrap;
    }

    /* Left: hero image does not scroll */
    .forgot-password-page .auth-split-image {
        height: 100%;
        max-height: 100%;
        overflow: hidden;
        align-self: stretch;
    }

    .forgot-password-page .auth-split-image .r-image-container,
    .forgot-password-page .auth-split-image .r-image-box {
        height: 100%;
    }

    .forgot-password-page .auth-split-image .r-image-box img {
        height: 100%;
        object-fit: cover;
    }

    /* Right: form scrolls independently; content vertically centered when shorter than viewport */
    .forgot-password-page .auth-split-form-outer {
        height: 100%;
        max-height: 100%;
        min-height: 0;
        overflow-y: auto;
        overflow-x: hidden;
        -webkit-overflow-scrolling: touch;
        display: flex;
        flex-direction: column;
    }

    .forgot-password-page .auth-split-form-outer .login {
        flex: 1 0 auto;
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        width: 100%;
        min-height: 100%;
        align-items: stretch;
        box-sizing: border-box;
    }

    .forgot-password-page .auth-split-form-outer .login > .container {
        width: 100%;
        max-width: 100%;
        flex-shrink: 0;
    }
}
