/* ===== DARK THEME ===== */
[data-pc-theme="dark"] {
    /* Base Colors */
    --bs-body-bg: #1a1d29;
    --bs-body-bg-rgb: 26, 29, 41;
    --bs-body-color: #c8d0dd;
    --bs-body-color-rgb: 200, 208, 221;
    --pc-heading-color: #e8edf7;
    
    /* Backgrounds */
    --pc-active-background: #2a2f42;
    --pc-sidebar-background: #212633;
    --pc-card-bg: #242936;
    --pc-modal-bg: #242936;
    --pc-input-bg: #2a2f42;
    --pc-hover-bg: rgba(77, 171, 247, 0.1);
    
    /* Sidebar */
    --pc-sidebar-color: #8895a7;
    --pc-sidebar-color-rgb: 136, 149, 167;
    --pc-sidebar-active-color: #4dabf7;
    --pc-sidebar-active-background: rgba(77, 171, 247, 0.1);
    --pc-sidebar-main-active-color: #fff;
    --pc-sidebar-shadow: 1px 0 20px 0 rgba(0, 0, 0, 0.5);
    --pc-sidebar-caption-color: #a9b7d0;
    --pc-sidebar-border: none;
    
    /* Header */
    --pc-header-background: rgba(26, 29, 41, 0.85);
    --pc-header-color: #a9b7d0;
    --pc-header-shadow: none;
    --pc-header-submenu-background: #2a2f42;
    --pc-header-submenu-color: #c8d0dd;
    
    /* Borders & Shadows */
    --bs-border-color: #374151;
    --bs-border-color-translucent: rgba(55, 65, 81, 0.175);
    --pc-card-box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.3);
    
    /* Links */
    --bs-link-color: #4dabf7;
    --bs-link-hover-color: #74c0fc;
    
    /* Tables */
    --pc-table-bg: transparent;
    --pc-table-hover-bg: rgba(77, 171, 247, 0.05);
    --pc-table-striped-bg: rgba(255, 255, 255, 0.02);
    --pc-table-border-color: #374151;
    
    /* Forms */
    --pc-input-color: #c8d0dd;
    --pc-input-border-color: #374151;
    --pc-input-focus-border-color: #4dabf7;
    --pc-input-placeholder-color: #6b7280;
    
    /* Text Colors */
    --pc-text-muted: #9ca3af;
    --pc-text-secondary: #8895a7;
}

/* ===== LIGHT THEME ===== */
[data-pc-theme="light"] {
    /* Base Colors */
    --bs-body-bg: #ffffff;
    --bs-body-bg-rgb: 255, 255, 255;
    --bs-body-color: #212529;
    --bs-body-color-rgb: 33, 37, 41;
    --pc-heading-color: #212529;
    
    /* Backgrounds */
    --pc-active-background: #f8f9fa;
    --pc-sidebar-background: #ffffff;
    --pc-card-bg: #ffffff;
    --pc-modal-bg: #ffffff;
    --pc-input-bg: #ffffff;
    --pc-hover-bg: #f8f9fa;
    
    /* Sidebar */
    --pc-sidebar-color: #6c757d;
    --pc-sidebar-color-rgb: 108, 117, 125;
    --pc-sidebar-active-color: #0d6efd;
    --pc-sidebar-active-background: rgba(13, 110, 253, 0.1);
    --pc-sidebar-main-active-color: #0d6efd;
    --pc-sidebar-shadow: 1px 0 20px 0 rgba(0, 0, 0, 0.08);
    --pc-sidebar-caption-color: #6c757d;
    --pc-sidebar-border: 1px solid #dee2e6;
    
    /* Header */
    --pc-header-background: rgba(255, 255, 255, 0.85);
    --pc-header-color: #212529;
    --pc-header-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.05);
    --pc-header-submenu-background: #ffffff;
    --pc-header-submenu-color: #212529;
    
    /* Borders & Shadows */
    --bs-border-color: #dee2e6;
    --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
    --pc-card-box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.05);
    
    /* Links */
    --bs-link-color: #0d6efd;
    --bs-link-hover-color: #0a58ca;
    
    /* Tables */
    --pc-table-bg: transparent;
    --pc-table-hover-bg: rgba(0, 0, 0, 0.03);
    --pc-table-striped-bg: rgba(0, 0, 0, 0.02);
    --pc-table-border-color: #dee2e6;
    
    /* Forms */
    --pc-input-color: #212529;
    --pc-input-border-color: #ced4da;
    --pc-input-focus-border-color: #0d6efd;
    --pc-input-placeholder-color: #6c757d;
    
    /* Text Colors */
    --pc-text-muted: #6c757d;
    --pc-text-secondary: #6c757d;
}

[data-pc-theme="dark"] body {
    background-color: var(--bs-body-bg);
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .pc-header {
    background: var(--pc-header-background);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

[data-pc-theme="dark"] .pc-sidebar {
    background: var(--pc-sidebar-background);
}

[data-pc-theme="dark"] .card {
    background-color: #242936;
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .card-header {
    background-color: #2a2f42;
    border-bottom-color: var(--bs-border-color);
    color: var(--pc-heading-color);
}

[data-pc-theme="dark"] .card-body {
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .dropdown-menu {
    background-color: #2a2f42;
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .dropdown-item {
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .dropdown-item:hover,
[data-pc-theme="dark"] .dropdown-item:focus {
    background-color: #374151;
    color: #fff;
}

[data-pc-theme="dark"] .table {
    --bs-table-bg: #242936;
    --bs-table-striped-bg: #2a2f42;
    --bs-table-hover-bg: #2f3547;
    --bs-table-border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .table thead th {
    border-color: var(--bs-border-color);
    color: var(--pc-heading-color);
}

[data-pc-theme="dark"] .form-control,
[data-pc-theme="dark"] .form-select {
    background-color: #2a2f42;
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .form-control:focus,
[data-pc-theme="dark"] .form-select:focus {
    background-color: #2f3547;
    border-color: #4dabf7;
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .btn-light {
    background-color: #374151;
    border-color: #4b5563;
    color: #e8edf7;
}

[data-pc-theme="dark"] .btn-light:hover {
    background-color: #4b5563;
    border-color: #6b7280;
    color: #fff;
}

[data-pc-theme="dark"] .modal-content {
    background-color: #242936;
    border-color: var(--bs-border-color);
}

[data-pc-theme="dark"] .modal-header {
    border-bottom-color: var(--bs-border-color);
}

[data-pc-theme="dark"] .modal-footer {
    border-top-color: var(--bs-border-color);
}

[data-pc-theme="dark"] .pc-mob-header {
    background-color: #212633;
}

[data-pc-theme="dark"] .pc-container {
    background-color: var(--bs-body-bg);
}

[data-pc-theme="dark"] h1, 
[data-pc-theme="dark"] h2, 
[data-pc-theme="dark"] h3, 
[data-pc-theme="dark"] h4, 
[data-pc-theme="dark"] h5, 
[data-pc-theme="dark"] h6,
[data-pc-theme="dark"] .h1,
[data-pc-theme="dark"] .h2,
[data-pc-theme="dark"] .h3,
[data-pc-theme="dark"] .h4,
[data-pc-theme="dark"] .h5,
[data-pc-theme="dark"] .h6 {
    color: var(--pc-heading-color);
}

[data-pc-theme="dark"] .text-muted {
    color: #8895a7 !important;
}

[data-pc-theme="dark"] .border,
[data-pc-theme="dark"] .border-top,
[data-pc-theme="dark"] .border-bottom,
[data-pc-theme="dark"] .border-start,
[data-pc-theme="dark"] .border-end {
    border-color: var(--bs-border-color) !important;
}

[data-pc-theme="dark"] .bg-light {
    background-color: #2a2f42 !important;
}

[data-pc-theme="dark"] .bg-white {
    background-color: #242936 !important;
}

[data-pc-theme="dark"] .navbar-light {
    background-color: #2a2f42;
}

[data-pc-theme="dark"] .list-group-item {
    background-color: #242936;
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .breadcrumb {
    background-color: #2a2f42;
}

[data-pc-theme="dark"] .breadcrumb-item + .breadcrumb-item::before {
    color: #8895a7;
}

[data-pc-theme="dark"] .alert {
    border-color: var(--bs-border-color);
}

[data-pc-theme="dark"] .badge {
    border-color: var(--bs-border-color);
}

[data-pc-theme="dark"] a {
    color: var(--bs-link-color);
}

[data-pc-theme="dark"] a:hover {
    color: var(--bs-link-hover-color);
}

[data-pc-theme="dark"] .breadcrumb a {
    color: var(--bs-link-color);
}

[data-pc-theme="dark"] .breadcrumb a:hover {
    color: var(--bs-link-hover-color);
}

[data-pc-theme="dark"] .page-header {
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .page-header-title h5,
[data-pc-theme="dark"] .page-header-title h2 {
    color: var(--pc-heading-color);
}

[data-pc-theme="dark"] .text-dark {
    color: var(--bs-body-color) !important;
}

[data-pc-theme="dark"] .bg-dark {
    background-color: #2a2f42 !important;
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .text-white {
    color: var(--pc-heading-color) !important;
}

[data-pc-theme="dark"] label,
[data-pc-theme="dark"] .form-label,
[data-pc-theme="dark"] .form-check-label {
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .form-control::placeholder,
[data-pc-theme="dark"] .form-select::placeholder {
    color: #6c757d;
    opacity: 0.7;
}

[data-pc-theme="dark"] .btn-outline-secondary {
    color: var(--bs-body-color);
    border-color: var(--bs-border-color);
}

[data-pc-theme="dark"] .btn-outline-secondary:hover {
    background-color: #374151;
    border-color: #4b5563;
    color: #fff;
}

[data-pc-theme="dark"] .alert {
    background-color: #2a2f42;
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .alert-success {
    background-color: rgba(16, 185, 129, 0.15);
    border-color: rgba(16, 185, 129, 0.3);
    color: #6ee7b7;
}

[data-pc-theme="dark"] .alert-danger {
    background-color: rgba(239, 68, 68, 0.15);
    border-color: rgba(239, 68, 68, 0.3);
    color: #fca5a5;
}

[data-pc-theme="dark"] .alert-warning {
    background-color: rgba(245, 158, 11, 0.15);
    border-color: rgba(245, 158, 11, 0.3);
    color: #fcd34d;
}

[data-pc-theme="dark"] .alert-info {
    background-color: rgba(59, 130, 246, 0.15);
    border-color: rgba(59, 130, 246, 0.3);
    color: #93c5fd;
}

[data-pc-theme="dark"] .pc-h-item i,
[data-pc-theme="dark"] .pc-head-link {
    color: var(--pc-header-color);
}

[data-pc-theme="dark"] .pc-sidebar .pc-item {
    color: var(--pc-sidebar-color);
}

[data-pc-theme="dark"] .pc-sidebar .pc-item.active {
    color: var(--pc-sidebar-active-color);
}

[data-pc-theme="dark"] .form-check-input {
    background-color: #2a2f42;
    border-color: var(--bs-border-color);
}

[data-pc-theme="dark"] .form-check-input:checked {
    background-color: #4dabf7;
    border-color: #4dabf7;
}

[data-pc-theme="dark"] .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
}

[data-pc-theme="dark"] .card.border-secondary {
    border-color: var(--bs-border-color) !important;
}

[data-pc-theme="dark"] hr {
    border-color: var(--bs-border-color);
    opacity: 0.25;
}

[data-pc-theme="dark"] .text-body {
    color: var(--bs-body-color) !important;
}

[data-pc-theme="dark"] .text-sm {
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] p {
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .btn-primary {
    background-color: #4dabf7;
    border-color: #4dabf7;
    color: #ffffff;
}

[data-pc-theme="dark"] .btn-primary:hover {
    background-color: #339af0;
    border-color: #339af0;
    color: #ffffff;
}

[data-pc-theme="dark"] .btn-secondary {
    background-color: #374151;
    border-color: #4b5563;
    color: #e8edf7;
}

[data-pc-theme="dark"] .btn-secondary:hover {
    background-color: #4b5563;
    border-color: #6b7280;
    color: #ffffff;
}

[data-pc-theme="dark"] .btn-success {
    background-color: #10b981;
    border-color: #10b981;
    color: #ffffff; /* ensure readable text/icon in dark mode */
}

[data-pc-theme="dark"] .btn-danger {
    background-color: #ef4444;
    border-color: #ef4444;
}

[data-pc-theme="dark"] .btn-warning {
    background-color: #f59e0b;
    border-color: #f59e0b;
}

[data-pc-theme="dark"] .btn-info {
    background-color: #3b82f6;
    border-color: #3b82f6;
}

[data-pc-theme="dark"] .bg-success {
    background-color: #10b981 !important;
    color: #ffffff;
}

[data-pc-theme="dark"] .bg-danger {
    background-color: #ef4444 !important;
    color: #ffffff;
}

[data-pc-theme="dark"] .bg-warning {
    background-color: #f59e0b !important;
    color: #1a1d29;
}

[data-pc-theme="dark"] .bg-info {
    background-color: #3b82f6 !important;
    color: #ffffff;
}

[data-pc-theme="dark"] .bg-primary {
    background-color: #4dabf7 !important;
    color: #ffffff;
}

[data-pc-theme="dark"] .text-success {
    color: #6ee7b7 !important;
}

[data-pc-theme="dark"] .text-danger {
    color: #fca5a5 !important;
}

[data-pc-theme="dark"] .text-warning {
    color: #fcd34d !important;
}

[data-pc-theme="dark"] .text-info {
    color: #93c5fd !important;
}

[data-pc-theme="dark"] .text-primary {
    color: #4dabf7 !important;
}

[data-pc-theme="dark"] .text-secondary {
    color: #8895a7 !important;
}

[data-pc-theme="dark"] .navbar {
    background-color: var(--pc-header-background);
    color: var(--pc-header-color);
}

[data-pc-theme="dark"] .nav-link {
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .nav-link:hover {
    color: var(--bs-link-hover-color);
}

[data-pc-theme="dark"] .nav-link.active {
    color: var(--pc-sidebar-active-color);
}

[data-pc-theme="dark"] input[type="date"],
[data-pc-theme="dark"] input[type="time"],
[data-pc-theme="dark"] input[type="datetime-local"],
[data-pc-theme="dark"] input[type="number"],
[data-pc-theme="dark"] input[type="text"],
[data-pc-theme="dark"] input[type="email"],
[data-pc-theme="dark"] input[type="password"],
[data-pc-theme="dark"] input[type="search"],
[data-pc-theme="dark"] textarea {
    background-color: #2a2f42;
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] input[type="date"]:focus,
[data-pc-theme="dark"] input[type="time"]:focus,
[data-pc-theme="dark"] input[type="datetime-local"]:focus,
[data-pc-theme="dark"] input[type="number"]:focus,
[data-pc-theme="dark"] input[type="text"]:focus,
[data-pc-theme="dark"] input[type="email"]:focus,
[data-pc-theme="dark"] input[type="password"]:focus,
[data-pc-theme="dark"] input[type="search"]:focus,
[data-pc-theme="dark"] textarea:focus {
    background-color: #2f3547;
    border-color: #4dabf7;
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] select option {
    background-color: #2a2f42;
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .pagination .page-link {
    background-color: #2a2f42;
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

[data-pc-theme="dark"] .pagination .page-link:hover {
    background-color: #374151;
    border-color: var(--bs-border-color);
    color: var(--bs-link-hover-color);
}

[data-pc-theme="dark"] .pagination .page-item.active .page-link {
    background-color: #4dabf7;
    border-color: #4dabf7;
    color: #ffffff;
}

[data-pc-theme="dark"] .pagination .page-item.disabled .page-link {
    background-color: #1a1d29;
    border-color: var(--bs-border-color);
    color: #6c757d;
}

[data-pc-theme="light"] body {
    background-color: var(--bs-body-bg);
    color: var(--bs-body-color);
}

[data-pc-theme="light"] .pc-header {
    background: var(--pc-header-background);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

[data-pc-theme="light"] .pc-sidebar {
    background: var(--pc-sidebar-background);
}

[data-pc-theme="light"] .card {
    background-color: #ffffff;
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

[data-pc-theme="light"] .card-header {
    background-color: #f8f9fa;
    border-bottom-color: var(--bs-border-color);
    color: var(--pc-heading-color);
}

[data-pc-theme="light"] .table {
    --bs-table-bg: #ffffff;
    --bs-table-striped-bg: #f8f9fa;
    --bs-table-hover-bg: #f1f3f5;
    --bs-table-border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

[data-pc-theme="light"] .form-control,
[data-pc-theme="light"] .form-select {
    background-color: #ffffff;
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

[data-pc-theme="light"] a {
    color: var(--bs-link-color);
}

[data-pc-theme="light"] a:hover {
    color: var(--bs-link-hover-color);
}

body {
    transition: background-color 0.3s ease, color 0.3s ease;
}

.pc-header,
.pc-sidebar,
.card,
.dropdown-menu,
.form-control,
.form-select,
.table,
.modal-content {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

#theme-toggle {
    cursor: pointer;
    transition: transform 0.2s ease;
}

#theme-toggle:hover {
    transform: scale(1.1);
}

#theme-icon {
    transition: transform 0.3s ease;
}

