/* ========================================================
   SEIKOU EDU - Universal Theme System (Light & Dark)
   ======================================================== */

/* Transitions for smooth theme switching */
body, .navbar, .card, .modal-content, .accordion-item, .footer, .feature-box, .card-custom {
    transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

/* Dark Theme Variables & Styling */
[data-bs-theme="dark"] {
    --bg-primary: #0b1120;
    --bg-secondary: #162032;
    --bg-white: #0b1120;
    --bg-light: #162032;
    --bg-beige: #1e293b;
    --text-primary: #f8fafc;
    --text-secondary: #cbd5e1;
    --text-muted: #94a3b8;
    --text-charcoal: #f8fafc;
    --border-subtle: #334155;
    --border-hover: #475569;
    --btn-charcoal: #2563eb;
    --btn-hover: #1d4ed8;
    --seko-bg: #0b1120;
    --seko-card: #1e293b;
    --seko-border: #334155;
    --seko-text: #f1f5f9;
    --seko-muted: #94a3b8;
}

/* Global Body & Backgrounds */
[data-bs-theme="dark"] body {
    background-color: var(--bg-primary, #0b1120) !important;
    color: var(--text-primary, #f8fafc) !important;
}

[data-bs-theme="dark"] .bg-white {
    background-color: #1e293b !important;
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .bg-light {
    background-color: #162032 !important;
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .text-dark {
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .text-secondary,
[data-bs-theme="dark"] .text-secondary-custom {
    color: #cbd5e1 !important;
}

[data-bs-theme="dark"] .text-muted {
    color: #94a3b8 !important;
}

/* Navbars across all pages */
[data-bs-theme="dark"] .navbar-minimal,
[data-bs-theme="dark"] .navbar-custom {
    background-color: rgba(11, 17, 32, 0.95) !important;
    border-bottom: 1px solid #334155 !important;
}

[data-bs-theme="dark"] .navbar-brand,
[data-bs-theme="dark"] .navbar-brand span {
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .nav-link-custom,
[data-bs-theme="dark"] .nav-link {
    color: #cbd5e1 !important;
}

[data-bs-theme="dark"] .nav-link-custom:hover,
[data-bs-theme="dark"] .nav-link:hover {
    color: #ffffff !important;
}

/* Cards & Containers */
[data-bs-theme="dark"] .card,
[data-bs-theme="dark"] .card-custom,
[data-bs-theme="dark"] .feature-box,
[data-bs-theme="dark"] .course-card,
[data-bs-theme="dark"] .placement-card,
[data-bs-theme="dark"] .question-box,
[data-bs-theme="dark"] .test-card {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .card-header {
    background-color: #1e293b !important;
    border-bottom: 1px solid #334155 !important;
    color: #f8fafc !important;
}

/* Placement Test Specific */
[data-bs-theme="dark"] .option-label {
    background-color: #162032 !important;
    border-color: #334155 !important;
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .option-label:hover {
    background-color: #334155 !important;
    border-color: #3b82f6 !important;
}

[data-bs-theme="dark"] .badge-pill-soft,
[data-bs-theme="dark"] .badge.bg-light {
    background-color: #334155 !important;
    color: #f8fafc !important;
    border-color: #475569 !important;
}

/* Modals & Accordions */
[data-bs-theme="dark"] .modal-content {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .accordion-item {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .accordion-button {
    background-color: #1e293b !important;
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .accordion-button:not(.collapsed) {
    background-color: #162032 !important;
    color: #60a5fa !important;
}

/* Forms & Inputs */
[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select {
    background-color: #0f172a !important;
    border-color: #334155 !important;
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .form-control:focus,
[data-bs-theme="dark"] .form-select:focus {
    background-color: #0f172a !important;
    border-color: #3b82f6 !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .input-group-text {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #cbd5e1 !important;
}

/* Buttons */
[data-bs-theme="dark"] .btn-outline-charcoal,
[data-bs-theme="dark"] .btn-outline-dark {
    color: #f8fafc !important;
    border-color: #475569 !important;
}

[data-bs-theme="dark"] .btn-outline-charcoal:hover,
[data-bs-theme="dark"] .btn-outline-dark:hover {
    background-color: #334155 !important;
    border-color: #64748b !important;
    color: #ffffff !important;
}

/* Footers */
[data-bs-theme="dark"] footer,
[data-bs-theme="dark"] footer.bg-white {
    background-color: #0b1120 !important;
    border-color: #334155 !important;
    color: #94a3b8 !important;
}

/* Dropdowns & Menus */
[data-bs-theme="dark"] .dropdown-menu {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.5) !important;
}

[data-bs-theme="dark"] .dropdown-item {
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .dropdown-item:hover,
[data-bs-theme="dark"] .dropdown-item:focus {
    background-color: #334155 !important;
    color: #ffffff !important;
}

/* Tables */
[data-bs-theme="dark"] .table {
    --bs-table-bg: transparent;
    --bs-table-color: #f8fafc;
    --bs-table-border-color: #334155;
}
[data-bs-theme="dark"] .table-striped>tbody>tr:nth-of-type(odd)>* {
    --bs-table-bg-type: rgba(255, 255, 255, 0.03);
    color: #f8fafc;
}
[data-bs-theme="dark"] .table-hover>tbody>tr:hover>* {
    --bs-table-bg-state: rgba(255, 255, 255, 0.06);
}

/* Theme Toggle Button Highlight */
.theme-toggle-btn.is-dark {
    background-color: #f59e0b !important;
    border-color: #f59e0b !important;
    color: #0f172a !important;
}
