/* Custom AdminLTE Styles & Theme Overrides */
.sidebar .nav-item.has-treeview.menu-open > .nav-treeview > .nav-item i {
    margin-left: 15px;
    transition: margin-left 0.3s ease-in-out;
}

.sidebar .nav-item.has-treeview:not(.menu-open) > .nav-treeview > .nav-item i {
    margin-left: 0;
}

/* Dynamic Theme Overrides for AdminLTE Auth Pages (Login & Register) */
html.login-page, html.register-page,
body.login-page, body.register-page {
    background-color: var(--body-bg, #050B14) !important;
    background: var(--body-bg, #050B14) !important;
    color: var(--text-color, #D9E2EC) !important;
}

.login-box, .register-box {
    margin: 30px auto;
}

.login-card-body, .register-card-body, body.login-page .card, body.register-page .card {
    background-color: var(--card-bg, rgba(7, 17, 31, 0.88)) !important;
    border: 1px solid var(--card-border, rgba(0, 174, 239, 0.22)) !important;
    color: var(--text-color, #D9E2EC) !important;
    border-radius: 18px !important;
    box-shadow: 0 15px 40px var(--shadow-color, rgba(0, 0, 0, 0.45)) !important;
}

body.login-page .login-box-msg, 
body.register-page .register-box-msg, 
body.login-page label, 
body.register-page label, 
body.login-page h1, body.login-page h2, body.login-page h3, 
body.register-page h1, body.register-page h2, body.register-page h3,
.login-logo a, .register-logo a, .login-logo, .register-logo {
    color: var(--heading-color, #FFFFFF) !important;
}

body.login-page .form-control, body.register-page .form-control {
    background-color: var(--search-bg, #162335) !important;
    border: 1px solid var(--card-border, rgba(0, 174, 239, 0.32)) !important;
    color: var(--heading-color, #FFFFFF) !important;
    border-radius: 10px !important;
}

body.login-page .input-group-text, body.register-page .input-group-text {
    background-color: var(--search-bg, #162335) !important;
    border: 1px solid var(--card-border, rgba(0, 174, 239, 0.32)) !important;
    color: var(--accent, #00AEEF) !important;
    border-radius: 10px !important;
}

body.login-page a, body.register-page a {
    color: var(--accent, #00AEEF) !important;
}

/* WebKit Autofill Overrides (Chrome, Safari, Edge) */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus,
select:-webkit-autofill:active,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
textarea:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 1000px #162335 inset !important;
    -webkit-text-fill-color: #FFFFFF !important;
    caret-color: #FFFFFF !important;
    transition: background-color 5000s ease-in-out 0s !important;
}
