.authentication-wrapper {
    display: flex;
    flex-basis: 100%;
    min-height: 100vh;
    width: 100%;
    background: linear-gradient(145deg, #2a2a2a, #0D1931);
}

.authentication-wrapper .authentication-inner {
    width: 100%
}

.authentication-wrapper.authentication-basic {
    align-items: center;
    justify-content: center
}

.authentication-wrapper .auth-cover-illustration {
    z-index: 1;
    max-inline-size: 38rem
}

.authentication-wrapper .authentication-image-object-left {
    position: absolute;
    bottom: 6%;
    inset-inline-start: 4%
}

.authentication-wrapper .authentication-image-object-right {
    position: absolute;
    bottom: 7%;
    inset-inline-end: 4%
}

.authentication-wrapper .authentication-image {
    z-index: -1;
    inline-size: 100%;
    position: absolute;
    inset-inline-start: 0;
    bottom: 0
}

.authentication-wrapper .authentication-image-model {
    width: 768px
}

.authentication-wrapper.authentication-cover {
    align-items: flex-start
}

.authentication-wrapper.authentication-cover .authentication-inner {
    min-height: 100vh;
    position: relative
}

html:not([dir=rtl]) .authentication-wrapper.authentication-cover .authentication-image {
    inset-inline-start: unset
}

.authentication-wrapper.authentication-cover .authentication-image-tree {
    position: absolute;
    bottom: 4rem;
    left: 3rem
}

.authentication-wrapper.authentication-basic .authentication-inner {
    max-width: 460px
}

/* Enhanced login styling */
.login-container {
    background-size: cover;
    overflow: hidden;
}

.login-card {
    background-color: #1A1A1A !important;
    border-radius: 10px !important;
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.4) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    overflow: hidden;
    transition: all 0.3s ease;
}

.login-card:hover {
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.5) !important;
    transform: translateY(-5px);
}

.login-logo {
    filter: drop-shadow(0 0 5px rgba(255, 255, 255, 0.3));
    transition: all 0.3s ease;
}

.login-logo:hover {
    transform: scale(1.05);
}

.custom-input {
    background-color: #2c2c2c !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
    border-radius: 8px !important;
    padding: 12px !important;
    transition: all 0.3s ease;
}

.custom-input:focus {
    border-color: var(--bs-primary) !important;
    box-shadow: 0 0 0 3px rgba(var(--bs-primary-rgb), 0.25) !important;
}

.input-group-custom .input-group-text {
    background-color: #2c2c2c !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    color: #6c757d !important;
}

.eye-icon {
    border-top-right-radius: 8px !important;
    border-bottom-right-radius: 8px !important;
}

.form-floating label {
    color: #adb5bd !important;
}

.forgot-link {
    color: var(--bs-primary) !important;
    transition: all 0.3s ease;
    text-decoration: none;
}

.forgot-link:hover {
    color: #fff !important;
    text-decoration: underline;
}

.login-btn {
    background: linear-gradient(135deg, var(--bs-primary), #0088cc) !important;
    border: none !important;
    padding: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 123, 255, 0.3);
}

.login-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 123, 255, 0.5);
}

.divider {
    position: relative;
}

.divider:before, .divider:after {
    content: '';
    background: rgba(255, 255, 255, 0.1);
}

.divider-text {
    background-color: #1A1A1A !important;
    color: #adb5bd !important;
}

.google-btn {
    background-color: #ffffff !important;
    color: #1A1A1A !important;
    transition: all 0.3s ease;
    box-shadow: 0 4px 10px rgba(255, 255, 255, 0.2);
}

.google-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(255, 255, 255, 0.3);
}

.signup-link {
    color: var(--bs-primary) !important;
    font-weight: 600;
    transition: all 0.3s ease;
    text-decoration: none;
}

.signup-link:hover {
    color: #fff !important;
    text-decoration: underline;
}

.form-check-input {
    background-color: #2c2c2c;
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.form-check-input:checked {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}

/* Rest of existing CSS */
.authentication-wrapper .auth-input-wrapper .auth-input {
    max-width: 50px;
    padding-left: .4rem;
    padding-right: .4rem;
    font-size: 150%
}

@media(max-width: 575.98px) {
    .authentication-wrapper .auth-input-wrapper .auth-input {
        font-size:1.125rem
    }
}

@media(max-width: 1199.98px) {
    .authentication-cover .authentication-image-model {
        position:relative;
        width: 575px;
        top: 1rem
    }
}

#twoStepsForm .fv-plugins-bootstrap5-row-invalid .form-control {
    border-width: 2px;
    border-color: #ff4c51
}

@media(max-width: 575.98px) {
    .numeral-mask-wrapper .numeral-mask {
        padding:0 !important
    }

    .numeral-mask:not(:focus) {
        margin-inline:1px !important}

    .numeral-mask:focus {
        margin-inline:auto !important}
}

.light-style .authentication-wrapper .authentication-bg {
    background-color: #fff
}

.dark-style .authentication-wrapper .authentication-bg {
    background-color: #312d4b
}

[dir=rtl] .authentication-image-tree {
    right: 3rem;
    left: auto
}
