/**
 * AIIGIX CRM — global design system (admin + customer + modules).
 *
 * Targets stable Bootstrap 3 / Perfex class contracts so installed modules
 * inherit the new look automatically (.btn-primary, .panel_s, .form-control, etc.).
 *
 * Tenant theme_style inline overrides still win when configured in Settings.
 */

body.admin.aiigix-ui,
body.customers.aiigix-ui {
    --aiigix-indigo: #6366f1;
    --aiigix-indigo-dark: #4f46e5;
    --aiigix-cyan: #0891b2;
    --aiigix-violet: #5b21b6;
    --aiigix-bg-page: #f1f5f9;
    --aiigix-bg-shell: #0f172a;
    --aiigix-bg-shell-alt: #1e1b4b;
    --aiigix-surface: #ffffff;
    --aiigix-border: #e2e8f0;
    --aiigix-border-strong: #cbd5e1;
    --aiigix-text: #0f172a;
    --aiigix-text-muted: #64748b;
    --aiigix-radius: 0.75rem;
    --aiigix-radius-sm: 0.5rem;
    --aiigix-shadow: 0 1px 3px 0 rgb(15 23 42 / 0.06), 0 4px 12px -2px rgb(15 23 42 / 0.08);
    --aiigix-shadow-lg: 0 10px 25px -5px rgb(15 23 42 / 0.12);
    --aiigix-primary-gradient: linear-gradient(135deg, var(--aiigix-indigo) 0%, var(--aiigix-cyan) 100%);
}

/* ── Page canvas ─────────────────────────────────────────────────────────── */

body.admin.aiigix-ui {
    background-color: var(--aiigix-bg-page);
    color: var(--aiigix-text);
}

body.customers.aiigix-ui {
    background-color: var(--aiigix-bg-page);
    color: var(--aiigix-text);
}

body.admin.aiigix-ui #wrapper .content {
    background: transparent;
}

/* ── Admin header ────────────────────────────────────────────────────────── */

body.admin.aiigix-ui #header {
    background: linear-gradient(90deg, var(--aiigix-bg-shell) 0%, var(--aiigix-bg-shell-alt) 55%, var(--aiigix-bg-shell) 100%);
    border-bottom: 1px solid rgb(99 102 241 / 0.28);
    box-shadow: 0 4px 20px rgb(15 23 42 / 0.18);
}

body.admin.aiigix-ui #header .hide-menu {
    color: rgb(226 232 240 / 0.9) !important;
}

body.admin.aiigix-ui #header .hide-menu:hover {
    background: rgb(255 255 255 / 0.08) !important;
    color: #fff !important;
}

body.admin.aiigix-ui #header .navbar-nav > li > a,
body.admin.aiigix-ui #header .navbar-nav > li > a:hover,
body.admin.aiigix-ui #header .navbar-nav > li > a:focus {
    color: rgb(226 232 240 / 0.92);
}

body.admin.aiigix-ui #header .navbar-nav > li > a:hover,
body.admin.aiigix-ui #header .navbar-nav .open > a {
    color: #fff;
}

body.admin.aiigix-ui #header li > a.active {
    background: rgb(99 102 241 / 0.22);
    color: #fff;
}

body.admin.aiigix-ui #header #search_input {
    background: rgb(255 255 255 / 0.12) !important;
    border: 1px solid rgb(255 255 255 / 0.18) !important;
    color: #fff !important;
}

body.admin.aiigix-ui #header #search_input::placeholder {
    color: rgb(226 232 240 / 0.75) !important;
    opacity: 1 !important;
}

body.admin.aiigix-ui #header #top_search_button button,
body.admin.aiigix-ui #header #top_search_button button i {
    color: rgb(226 232 240 / 0.85) !important;
}

body.admin.aiigix-ui #header #logo .logo-text {
    color: #fff;
}

body.admin.aiigix-ui #header .tw-bg-primary-600,
body.admin.aiigix-ui #header .group-hover\:!tw-bg-primary-700:hover {
    background: var(--aiigix-indigo) !important;
}

body.admin.aiigix-ui #header .tw-bg-primary-600:hover,
body.admin.aiigix-ui #header .group-hover\:!tw-bg-primary-700:hover {
    background: var(--aiigix-indigo-dark) !important;
}

body.admin.aiigix-ui .mobile-navbar {
    background: var(--aiigix-surface);
    border-bottom: 1px solid var(--aiigix-border);
}

/* ── Admin sidebar (force readable AIIGIX dark shell; beats theme_style inline) ─ */

body.admin.aiigix-ui .sidebar,
body.admin.aiigix-ui aside#menu.sidebar {
    background: linear-gradient(180deg, var(--aiigix-bg-shell) 0%, var(--aiigix-bg-shell-alt) 100%) !important;
    border-right: 1px solid rgb(99 102 241 / 0.22) !important;
}

body.admin.aiigix-ui .sidebar ul.nav li a,
body.admin.aiigix-ui .sidebar #side-menu li a,
body.admin.aiigix-ui .sidebar #setup-menu li a {
    color: rgb(226 232 240 / 0.92) !important;
}

body.admin.aiigix-ui .sidebar ul.nav li a i.menu-icon,
body.admin.aiigix-ui .sidebar #side-menu li a i.menu-icon {
    color: rgb(148 163 184 / 0.95) !important;
}

body.admin.aiigix-ui .sidebar .menu-text {
    color: inherit !important;
}

body.admin.aiigix-ui .sidebar > ul.nav > li:hover a:first-child,
body.admin.aiigix-ui .sidebar > ul.nav > li.active a:first-child,
body.admin.aiigix-ui .sidebar #side-menu > li:hover > a:first-child,
body.admin.aiigix-ui .sidebar #side-menu > li.active > a:first-child {
    background: rgb(99 102 241 / 0.28) !important;
    border: 1px solid rgb(99 102 241 / 0.4) !important;
    box-shadow: 0 4px 14px rgb(0 0 0 / 0.2) !important;
    border-radius: 0.375rem !important;
}

body.admin.aiigix-ui .sidebar ul.nav li.active > a,
body.admin.aiigix-ui .sidebar ul.nav > li > a:hover,
body.admin.aiigix-ui .sidebar ul.nav > li > a:focus,
body.admin.aiigix-ui .sidebar #side-menu li.active > a,
body.admin.aiigix-ui .sidebar #side-menu li > a:hover,
body.admin.aiigix-ui .sidebar ul.nav li.active > a .menu-icon,
body.admin.aiigix-ui .sidebar ul.nav > li > a:hover .menu-icon,
body.admin.aiigix-ui .sidebar #side-menu li.active > a .menu-icon,
body.admin.aiigix-ui .sidebar #side-menu li > a:hover .menu-icon {
    color: #fff !important;
}

body.admin.aiigix-ui .sidebar ul.nav li .nav-second-level li a,
body.admin.aiigix-ui .sidebar #side-menu li .nav-second-level li a {
    color: rgb(203 213 225 / 0.92) !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
}

body.admin.aiigix-ui .sidebar ul.nav li .nav-second-level li.active a,
body.admin.aiigix-ui .sidebar ul.nav > li .nav-second-level > li:not(.active) > a:hover,
body.admin.aiigix-ui .sidebar #side-menu li .nav-second-level li.active a,
body.admin.aiigix-ui .sidebar #side-menu li .nav-second-level li a:hover {
    color: #fff !important;
}

body.admin.aiigix-ui .sidebar-user-profile .profile,
body.admin.aiigix-ui .sidebar-user-profile .profile.tw-bg-white {
    background: rgb(255 255 255 / 0.08) !important;
    border-color: rgb(255 255 255 / 0.14) !important;
    color: #fff !important;
}

body.admin.aiigix-ui .sidebar-user-profile .profile .tw-text-neutral-700,
body.admin.aiigix-ui .sidebar-user-profile .profile .tw-text-neutral-500,
body.admin.aiigix-ui .sidebar-user-profile .profile .tw-text-neutral-800,
body.admin.aiigix-ui .sidebar-user-profile .profile span,
body.admin.aiigix-ui .sidebar-user-profile .profile .tw-font-semibold {
    color: rgb(226 232 240 / 0.95) !important;
}

body.admin.aiigix-ui .sidebar-user-profile .profile span.tw-text-sm {
    color: rgb(203 213 225 / 0.85) !important;
}

body.admin.aiigix-ui #setup-menu-wrapper {
    background: linear-gradient(180deg, var(--aiigix-bg-shell-alt) 0%, var(--aiigix-bg-shell) 100%) !important;
    border-right: 1px solid rgb(99 102 241 / 0.22) !important;
}

body.admin.aiigix-ui #setup-menu-wrapper .customizer-heading,
body.admin.aiigix-ui #setup-menu-wrapper #setup-menu li a {
    color: rgb(226 232 240 / 0.92) !important;
}

body.admin.aiigix-ui #setup-menu-wrapper .close-customizer {
    color: rgb(203 213 225 / 0.9) !important;
}

body.admin.aiigix-ui #setup-menu-wrapper #setup-menu li.active > a,
body.admin.aiigix-ui #setup-menu-wrapper #setup-menu li > a:hover {
    color: #fff !important;
}

/* ── Customer navigation ───────────────────────────────────────────────────── */

body.customers.aiigix-ui .navbar-default.header {
    background: linear-gradient(90deg, var(--aiigix-bg-shell) 0%, var(--aiigix-bg-shell-alt) 55%, var(--aiigix-bg-shell) 100%);
    border: none;
    border-radius: 0;
    box-shadow: 0 4px 20px rgb(15 23 42 / 0.15);
    margin-bottom: 0;
}

body.customers.aiigix-ui .navbar-default .navbar-brand,
body.customers.aiigix-ui .navbar-default .navbar-nav > li > a {
    color: rgb(226 232 240 / 0.92) !important;
}

body.customers.aiigix-ui .navbar-default .navbar-nav > li > a:hover,
body.customers.aiigix-ui .navbar-default .navbar-nav > li > a:focus,
body.customers.aiigix-ui .navbar-default .navbar-nav > .active > a,
body.customers.aiigix-ui .navbar-default .navbar-nav > .active > a:hover,
body.customers.aiigix-ui .navbar-default .navbar-nav > .active > a:focus {
    background: rgb(99 102 241 / 0.22) !important;
    color: #fff !important;
}

body.customers.aiigix-ui .navbar-default .navbar-toggle .icon-bar {
    background-color: #fff;
}

body.customers.aiigix-ui #wrapper {
    flex: 1;
}

body.customers.aiigix-ui #content {
    padding-top: 1.5rem;
    padding-bottom: 2rem;
}

body.customers.aiigix-ui .footer {
    background: var(--aiigix-surface);
    border-top: 1px solid var(--aiigix-border);
}

/* ── Shared components (modules inherit) ─────────────────────────────────── */

body.aiigix-ui .btn-primary {
    background: var(--aiigix-primary-gradient);
    border-color: var(--aiigix-indigo);
    color: #fff;
    border-radius: var(--aiigix-radius-sm);
    box-shadow: 0 1px 2px rgb(99 102 241 / 0.25);
}

body.aiigix-ui .btn-primary:hover,
body.aiigix-ui .btn-primary:focus,
body.aiigix-ui .btn-primary:active,
body.aiigix-ui .btn-primary.active,
body.aiigix-ui .open > .dropdown-toggle.btn-primary {
    background: linear-gradient(135deg, var(--aiigix-indigo-dark) 0%, #0e7490 100%);
    border-color: var(--aiigix-indigo-dark);
    color: #fff;
}

body.aiigix-ui .btn-success {
    border-radius: var(--aiigix-radius-sm);
}

body.aiigix-ui .btn-default,
body.aiigix-ui .btn-secondary {
    border-radius: var(--aiigix-radius-sm);
    border-color: var(--aiigix-border-strong);
}

body.aiigix-ui .panel_s,
body.aiigix-ui .panel {
    background: var(--aiigix-surface);
    border: 1px solid var(--aiigix-border);
    border-radius: var(--aiigix-radius);
    box-shadow: var(--aiigix-shadow);
}

body.aiigix-ui .panel-body {
    border-radius: 0 0 var(--aiigix-radius) var(--aiigix-radius);
}

body.aiigix-ui .panel-heading,
body.aiigix-ui .panel_s .panel-heading {
    border-radius: var(--aiigix-radius) var(--aiigix-radius) 0 0;
    border-bottom: 1px solid var(--aiigix-border);
    background: rgb(248 250 252 / 0.9);
}

body.aiigix-ui .form-control {
    border-radius: var(--aiigix-radius-sm);
    border-color: var(--aiigix-border-strong);
    box-shadow: none;
}

body.aiigix-ui .form-control:focus {
    border-color: var(--aiigix-indigo);
    box-shadow: 0 0 0 3px rgb(99 102 241 / 0.15);
}

body.aiigix-ui .table > thead > tr > th {
    border-bottom: 2px solid var(--aiigix-border);
    color: var(--aiigix-text);
    font-weight: 600;
}

body.aiigix-ui .table > tbody > tr:hover {
    background-color: rgb(99 102 241 / 0.04);
}

body.aiigix-ui .nav-tabs {
    border-bottom: 1px solid var(--aiigix-border);
}

body.aiigix-ui .nav-tabs > li > a {
    border-radius: var(--aiigix-radius-sm) var(--aiigix-radius-sm) 0 0;
}

body.aiigix-ui .nav-tabs > li.active > a,
body.aiigix-ui .nav-tabs > li.active > a:hover,
body.aiigix-ui .nav-tabs > li.active > a:focus {
    border-color: var(--aiigix-border) var(--aiigix-border) transparent;
    color: var(--aiigix-indigo);
    font-weight: 600;
}

body.aiigix-ui .modal-content {
    border-radius: var(--aiigix-radius);
    border: 1px solid var(--aiigix-border);
    box-shadow: var(--aiigix-shadow-lg);
}

body.aiigix-ui .modal-header {
    border-bottom: 1px solid var(--aiigix-border);
    background: rgb(248 250 252 / 0.95);
    border-radius: var(--aiigix-radius) var(--aiigix-radius) 0 0;
}

body.aiigix-ui .dropdown-menu {
    border-radius: var(--aiigix-radius-sm);
    border: 1px solid var(--aiigix-border);
    box-shadow: var(--aiigix-shadow-lg);
}

body.aiigix-ui .pagination > .active > a,
body.aiigix-ui .pagination > .active > span,
body.aiigix-ui .pagination > .active > a:hover,
body.aiigix-ui .pagination > .active > span:hover {
    background: var(--aiigix-indigo);
    border-color: var(--aiigix-indigo);
}

body.aiigix-ui .label-primary,
body.aiigix-ui .badge-primary {
    background-color: var(--aiigix-indigo);
}

body.aiigix-ui .alert {
    border-radius: var(--aiigix-radius-sm);
}

body.aiigix-ui .dataTables_wrapper .dataTables_paginate .paginate_button.current,
body.aiigix-ui .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    background: var(--aiigix-indigo) !important;
    border-color: var(--aiigix-indigo) !important;
    color: #fff !important;
}

body.aiigix-ui .bootstrap-select .dropdown-toggle {
    border-radius: var(--aiigix-radius-sm);
}

body.aiigix-ui .aiigix-admin-footer {
    background: var(--aiigix-surface);
}

body.aiigix-ui a.aiigix-vendor-link {
    color: var(--aiigix-indigo);
}

body.aiigix-ui a.aiigix-vendor-link:hover {
    color: var(--aiigix-indigo-dark);
}

/* Tailwind primary utilities used in admin shell (no rebuild required) */
body.aiigix-ui .tw-text-primary-600 {
    color: var(--aiigix-indigo) !important;
}

body.aiigix-ui .tw-bg-primary-600 {
    background-color: var(--aiigix-indigo) !important;
}

body.aiigix-ui .tw-border-primary-600 {
    border-color: var(--aiigix-indigo) !important;
}
