:root {
    --bs-primary: #3e5bec;
    --bs-primary-rgb: 62, 91, 236;
    --bs-secondary: #f97838; /* Orange from logo */
    --bs-secondary-rgb: 249, 120, 56;
}

body {
    /* background-color: #f8fafc; */
    background-color: transparent !important;
}

[data-bs-theme="dark"] body {
    /* background-color: #0f172a; */
    background-color: transparent !important;
    color: #e2e8f0;
}

[data-bs-theme="dark"] .card {
    background-color: #1e293b;
    border-color: #334155;
}

[data-bs-theme="dark"] .card-header {
    background-color: #1e293b;
    border-bottom-color: #334155;
    color: #f1f5f9;
}

[data-bs-theme="dark"] .navbar {
    background-color: #1e293b !important;
    box-shadow: 0 1px 3px 0 rgba(0,0,0,0.5);
}

[data-bs-theme="dark"] .table {
    color: #e2e8f0;
}

[data-bs-theme="dark"] .table-light {
    background-color: #334155;
    color: #f1f5f9;
}

[data-bs-theme="dark"] .table-hover > tbody > tr:hover > * {
    color: #f1f5f9;
    background-color: #334155;
}

[data-bs-theme="dark"] .accordion-button {
    background-color: #1e293b;
    color: #e2e8f0;
}

[data-bs-theme="dark"] .accordion-button:not(.collapsed) {
    background-color: rgba(62, 91, 236, 0.2);
    color: #e2e8f0;
}

[data-bs-theme="dark"] .accordion-body {
    background-color: #1e293b;
    color: #e2e8f0;
}

[data-bs-theme="dark"] .form-control, 
[data-bs-theme="dark"] .form-select {
    background-color: #0f172a;
    border-color: #334155;
    color: #e2e8f0;
}

[data-bs-theme="dark"] .form-control:focus, 
[data-bs-theme="dark"] .form-select:focus {
    background-color: #0f172a;
    border-color: var(--bs-primary);
    color: #e2e8f0;
}

[data-bs-theme="dark"] .form-control::placeholder {
    color: #64748b;
}

[data-bs-theme="dark"] .input-group-text {
    background-color: #334155;
    border-color: #334155;
    color: #e2e8f0;
}

[data-bs-theme="dark"] .text-muted {
    color: #94a3b8 !important;
}

/* Override Bootstrap Primary */
.text-primary {
    color: var(--bs-primary) !important;
}

.bg-primary {
    background-color: var(--bs-primary) !important;
}

.btn-primary {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
    background-color: #324bd1; /* Slightly darker */
    border-color: #324bd1;
}

.btn-outline-primary {
    color: var(--bs-primary);
    border-color: var(--bs-primary);
}

.btn-outline-primary:hover {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}

/* Override Bootstrap Secondary (Orange accent) */
.text-secondary {
    color: #6c757d !important; /* Keep default gray for text-secondary as it's often used for muted text */
}

.text-accent {
    color: var(--bs-secondary) !important;
}

.bg-accent {
    background-color: var(--bs-secondary) !important;
}

/* Login Page Specifics */
.login-header {
    border-bottom: 4px solid var(--bs-secondary);
}

/* Navbar */
.navbar {
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.navbar-brand {
    font-weight: 700;
    color: var(--bs-primary) !important;
}

.nav-link.active {
    color: var(--bs-primary) !important;
    border-bottom: 2px solid var(--bs-secondary);
}
