.login-scene {
    position: relative;
    isolation: isolate;
    display: flex;
    min-height: 100vh;
    min-height: 100dvh;
    width: 100%;
    background-color: var(--login-bg, transparent);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.login-scene[data-image-position="full"] { background-image: var(--login-image); }
.login-scene[data-image-fit="contain"], .login-scene[data-image-fit="contain"] .login-media { background-size: contain; }
.login-scene[data-image-fit="center"], .login-scene[data-image-fit="center"] .login-media { background-size: auto; }
.login-scene[data-image-fit="repeat"], .login-scene[data-image-fit="repeat"] .login-media { background-size: auto; background-repeat: repeat; }
.login-scene .login-media {
    display: none;
    flex: 0 0 50%;
    background-color: var(--login-bg, var(--bs-primary));
    background-image: var(--login-image);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.login-scene[data-image-position="left"] .login-media,
.login-scene[data-image-position="right"] .login-media,
.login-scene[data-image-position="top"] .login-media,
.login-scene[data-image-position="text-left"] .login-media,
.login-scene[data-image-position="text-right"] .login-media { display: flex; align-items: center; justify-content: center; }
.login-scene[data-image-position="text-top"] .login-media { display: flex; align-items: center; justify-content: center; }
.login-scene[data-image-position="top"], .login-scene[data-image-position="text-top"] { flex-direction: column; }
.login-scene[data-image-position="top"] .login-media, .login-scene[data-image-position="text-top"] .login-media { flex: none; min-height: 160px; }
.login-scene[data-image-position^="text-"] .login-media { background-image: none; background-color: var(--login-bg, var(--bs-primary)); }
.login-scene[data-image-position="right"] .login-media,
.login-scene[data-image-position="text-right"] .login-media { order: 2; }
.login-scene .login-side-text { display: none; color: white; padding: 3rem; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 1.3rem; }
.login-scene[data-image-position^="text-"] .login-side-text { display: block; }
.login-scene .login-form-area {
    flex: 1 1 50%;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5rem 2rem 2rem;
    background: transparent;
}
.login-scene[data-image-position="left"] .login-form-area,
.login-scene[data-image-position="right"] .login-form-area,
.login-scene[data-image-position^="text-"] .login-form-area { background: var(--login-area, transparent); }
.login-scene[data-form-position="left"] .login-form-area { justify-content: flex-start; }
.login-scene[data-form-position="right"] .login-form-area { justify-content: flex-end; }
.login-scene .login-form-wrap { width: 100%; max-width: 532px; padding: 1rem; background: var(--login-area, transparent); }
.login-scene .login-form-card {
    width: 100%;
    margin: 0;
    background: var(--login-card, var(--bs-body-bg)) !important;
    border: var(--login-border-width, 0px) var(--login-border-style, solid) var(--login-border-color, transparent) !important;
    border-radius: var(--login-radius, 8px) !important;
    color: var(--login-ink, var(--bs-body-color));
}
.login-scene .login-form-card .card-body { padding: 2.5rem; }
.login-scene .login-form-card h3,
.login-scene .login-form-card h5,
.login-scene .login-form-card .form-label,
.login-scene .login-form-card .form-check-label { color: inherit; }
.login-scene .login-form-card .text-muted { color: var(--login-muted, var(--bs-secondary-color)) !important; }
.login-scene .login-form-card a:not(.btn) { color: var(--login-link, var(--bs-link-color)) !important; text-decoration: underline; }
.login-scene .login-form-card .btn-outline-secondary { color: var(--login-ink, var(--bs-body-color)); border-color: var(--login-muted, var(--bs-border-color)); }
.login-scene .login-custom-logo { max-width: 180px; max-height: 100px; width: auto; height: auto; object-fit: contain; }
.login-scene [hidden] { display: none !important; }
.login-scene .login-footer { margin: 1.5rem 0 0; padding: .5rem; border-radius: .5rem; background: var(--login-card, var(--bs-body-bg)); color: var(--login-ink, var(--bs-body-color)); overflow-wrap: anywhere; }
.login-scene .login-platform-name { overflow-wrap: anywhere; }
.login-scene .login-slogan { overflow-wrap: anywhere; }
.login-scene .login-default-brand h5 { display: none; }
.login-scene .logo-light, .login-scene .logo-dark { display: none !important; }
[data-bs-theme="light"] .login-scene .logo-light { display: block !important; }
[data-bs-theme="dark"] .login-scene .logo-dark { display: block !important; }
body.login-customized > .bg-pattern,
body.login-customized > [class^="auth-pattern-"] { display: none; }
@media (max-width: 991.98px) {
    .login-scene { flex-direction: column; }
    .login-scene .login-media { flex: none; min-height: 220px; order: 0 !important; }
    .login-scene .login-form-area { flex: 1; padding: 2rem 1rem; justify-content: center !important; }
    .login-scene[data-image-position="none"] .login-form-area,
    .login-scene[data-image-position="full"] .login-form-area { padding-top: 5rem; }
    .login-scene .login-side-text { padding: 2rem; }
}
@media (max-width: 575.98px) {
    .login-scene .login-media { min-height: 160px; }
    .login-scene .login-form-card .card-body { padding: 1.5rem; }
    .login-scene .login-form-card .my-6 > .d-flex { flex-wrap: wrap; gap: .75rem; }
}
