/* Custom Admin Styling - Purple Brand Color */
:root {
    --brand-primary: #7C3AED;
    --brand-dark: #4C1D95;
    --brand-light: rgba(124, 58, 237, 0.1);
}

/* Button Purple */
.btn-teal {
    background-color: var(--brand-primary);
    border-color: var(--brand-primary);
    color: #fff;
}

.btn-teal:hover {
    background-color: var(--brand-dark);
    border-color: var(--brand-dark);
    color: #fff;
}

.btn-teal:focus, .btn-teal.focus {
    color: #fff;
    background-color: var(--brand-dark);
    border-color: var(--brand-dark);
    box-shadow: 0 0 0 0.25rem rgba(124, 58, 237, 0.5);
}

.btn-teal.disabled, .btn-teal:disabled {
    color: #fff;
    background-color: #7C3AED;
    border-color: #7C3AED;
    opacity: 0.65;
}

.btn-teal:active, .btn-teal.active, .show > .btn-teal.dropdown-toggle {
    color: #fff !important;
    background-color: var(--brand-dark) !important;
    border-color: var(--brand-dark) !important;
}

.btn-teal:active:focus, .btn-teal.active:focus, .show > .btn-teal.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.25rem rgba(124, 58, 237, 0.5) !important;
    color: #fff !important;
    background-color: var(--brand-dark) !important;
    border-color: var(--brand-dark) !important;
}

/* Modal Header Override */
.modal-header.bg-primary {
    background-color: var(--brand-primary) !important;
}

/* Sidebar Active State Override */
.sidebar-wrapper .menu .sidebar-item.active > .sidebar-link {
    background-color: var(--brand-primary) !important;
    color: #fff !important;
}

.sidebar-wrapper .menu .sidebar-item.active > .sidebar-link i,
.sidebar-wrapper .menu .sidebar-item.active > .sidebar-link svg {
    color: #fff !important;
}

.sidebar-wrapper .menu .submenu .submenu-item.active > a {
    color: var(--brand-primary) !important;
    font-weight: 600;
}

.sidebar-wrapper .menu .submenu .submenu-item.active > a::before {
    color: var(--brand-primary) !important;
}

/* Sidebar Submenu Hover */
.sidebar-wrapper .menu .submenu .submenu-item a:hover {
    color: var(--brand-primary);
}

/* Form inputs focus */
.form-control:focus {
    border-color: #c4b5fd;
    box-shadow: 0 0 0 0.15rem rgba(124, 58, 237, 0.25);
}

.input-group:focus-within {
    box-shadow: 0 0 0 0.15rem rgba(124, 58, 237, 0.25);
}

.input-group:focus-within .form-control,
.input-group:focus-within .input-group-text {
    border-color: #c4b5fd;
    box-shadow: none;
}

.page-item.active .page-link {
    background-color: var(--brand-primary);
    border-color: var(--brand-primary);
}

/* Light / Dark Mode Switch Override */
.theme-toggle .form-check-input:checked {
    background-color: var(--brand-primary);
    border-color: var(--brand-primary);
}

/* Dark Mode Overrides */
body.dark .btn-teal {
    background-color: var(--brand-primary);
    border-color: var(--brand-primary);
    color: #fff;
}

body.dark .btn-teal:hover, 
body.dark .btn-teal:active, 
body.dark .btn-teal.active, 
body.dark .btn-teal:focus {
    background-color: var(--brand-dark) !important;
    border-color: var(--brand-dark) !important;
    color: #fff !important;
}

body.dark .sidebar-wrapper .menu .sidebar-item.active > .sidebar-link {
    background-color: var(--brand-primary) !important;
}

body.dark .sidebar-wrapper .menu .submenu .submenu-item.active > a {
    color: var(--brand-primary) !important;
}

body.dark .page-item.active .page-link {
    background-color: var(--brand-primary);
    border-color: var(--brand-primary);
}

/* Additional elements in login page */
.login-link {
    color: var(--brand-primary);
}
.login-link:hover {
    color: var(--brand-dark);
}

h1, h2, h3, h4, h5, h6 {
    color: var(--brand-dark);
}