/* ── Theme: Forest ─────────────────────────────────────────────────────────── */
html[data-ikmf-theme="forest"] {
    color-scheme: dark;

    /* App colour variables */
    --ikmf-primary: #2D6A4F;
    --ikmf-primary-dark: #1B4332;
    --ikmf-primary-light: #52B788;
    --ikmf-primary-deep: #0A2010;
    --ikmf-accent-cyan: #52B788;
    --ikmf-accent-green: #74C69D;
    --ikmf-accent-orange: #D4A017;

    /* Sidebar gradient variable (consumed by MainLayout.razor.css) */
    --ikmf-sidebar-bg: linear-gradient(180deg, #1B4332 0%, #0A1F10 100%);

    /* Bootstrap colour variables */
    --bs-body-bg: #0B1A0D;
    --bs-body-bg-rgb: 11, 26, 13;
    --bs-body-color: #D8F3DC;
    --bs-body-color-rgb: 216, 243, 220;
    --bs-emphasis-color: #ffffff;
    --bs-emphasis-color-rgb: 255, 255, 255;
    --bs-secondary-color: rgba(216, 243, 220, 0.75);
    --bs-secondary-color-rgb: 216, 243, 220;
    --bs-secondary-bg: #162A18;
    --bs-secondary-bg-rgb: 22, 42, 24;
    --bs-tertiary-color: rgba(216, 243, 220, 0.5);
    --bs-tertiary-color-rgb: 216, 243, 220;
    --bs-tertiary-bg: #1F3421;
    --bs-tertiary-bg-rgb: 31, 52, 33;
    --bs-link-color: #74C69D;
    --bs-link-hover-color: #95D5B2;
    --bs-link-color-rgb: 116, 198, 157;
    --bs-link-hover-color-rgb: 149, 213, 178;
    --bs-border-color: rgba(255, 255, 255, 0.1);
    --bs-border-color-translucent: rgba(255, 255, 255, 0.075);
    --bs-card-bg: #162A18;
    --bs-card-border-color: rgba(255, 255, 255, 0.1);
    --bs-table-bg: transparent;
    --bs-table-striped-bg: rgba(255, 255, 255, 0.05);
    --bs-table-hover-bg: rgba(255, 255, 255, 0.075);
    --bs-form-control-bg: #162A18;
    --bs-input-bg: #1F3421;
    --bs-input-border-color: rgba(255, 255, 255, 0.2);
    --bs-input-color: #D8F3DC;
    --bs-dropdown-bg: #162A18;
    --bs-dropdown-border-color: rgba(255, 255, 255, 0.1);
    --bs-dropdown-link-color: #D8F3DC;
    --bs-dropdown-link-hover-bg: #1F3421;
    --bs-modal-bg: #162A18;
    --bs-modal-content-bg: #162A18;
    --bs-modal-header-border-color: rgba(255, 255, 255, 0.1);
    --bs-list-group-bg: #162A18;
    --bs-list-group-border-color: rgba(255, 255, 255, 0.1);
}

/* Buttons */
html[data-ikmf-theme="forest"] .btn-primary {
    background-color: var(--ikmf-primary);
    border-color: var(--ikmf-primary-dark);
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .btn-primary:hover,
html[data-ikmf-theme="forest"] .btn-primary:focus,
html[data-ikmf-theme="forest"] .btn-primary:active {
    background-color: var(--ikmf-primary-dark);
    border-color: var(--ikmf-primary-deep);
    color: #D8F3DC;
}

/* Cards */
html[data-ikmf-theme="forest"] .card {
    background-color: var(--bs-card-bg);
    border-color: var(--bs-card-border-color);
    color: var(--bs-body-color);
}

/* Form controls */
html[data-ikmf-theme="forest"] .form-control,
html[data-ikmf-theme="forest"] .form-select {
    background-color: #1F3421;
    border-color: rgba(255, 255, 255, 0.2);
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .form-control:focus,
html[data-ikmf-theme="forest"] .form-select:focus {
    background-color: #1F3421;
    border-color: var(--ikmf-primary-light);
    color: #D8F3DC;
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem var(--ikmf-primary);
}

/* Syncfusion overrides for forest theme */
html[data-ikmf-theme="forest"] .e-control,
html[data-ikmf-theme="forest"] .e-lib {
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-input-group,
html[data-ikmf-theme="forest"] .e-input-group.e-control-wrapper {
    background-color: #1F3421;
    border-color: rgba(255, 255, 255, 0.2) !important;
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-input-group input,
html[data-ikmf-theme="forest"] .e-input-group.e-control-wrapper input {
    background-color: transparent;
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-dropdownlist,
html[data-ikmf-theme="forest"] .e-ddl {
    background-color: #1F3421;
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-popup,
html[data-ikmf-theme="forest"] .e-ddl-popup {
    background-color: #162A18;
    border-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="forest"] .e-list-item {
    background-color: #162A18;
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-list-item:hover,
html[data-ikmf-theme="forest"] .e-list-item.e-hover {
    background-color: #1F3421;
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-list-item.e-active {
    background-color: var(--ikmf-primary);
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-tab .e-tab-header {
    background-color: #162A18;
}

html[data-ikmf-theme="forest"] .e-tab .e-tab-header .e-toolbar-item .e-tab-text,
html[data-ikmf-theme="forest"] .e-tab .e-tab-header .e-toolbar-item .e-tab-icon {
    color: #95D5B2;
}

html[data-ikmf-theme="forest"] .e-tab .e-tab-header .e-toolbar-item.e-active .e-tab-text,
html[data-ikmf-theme="forest"] .e-tab .e-tab-header .e-toolbar-item.e-active .e-tab-icon {
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-tab .e-tab-header .e-indicator {
    background: var(--ikmf-primary-light);
}

html[data-ikmf-theme="forest"] .e-tab .e-content {
    background-color: #162A18;
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-grid {
    background-color: #162A18;
    border-color: rgba(255, 255, 255, 0.1);
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-grid .e-headercell {
    background-color: #1F3421;
    color: #D8F3DC;
    border-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="forest"] .e-grid .e-rowcell {
    background-color: transparent;
    color: #D8F3DC;
    border-color: rgba(255, 255, 255, 0.07);
}

html[data-ikmf-theme="forest"] .e-grid .e-altrow .e-rowcell {
    background-color: rgba(255, 255, 255, 0.03);
}

html[data-ikmf-theme="forest"] .e-btn.e-primary {
    background-color: var(--ikmf-primary);
    border-color: var(--ikmf-primary-dark);
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-btn.e-primary:hover {
    background-color: var(--ikmf-primary-dark);
    border-color: var(--ikmf-primary-deep);
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-checkbox-wrapper .e-frame {
    border-color: rgba(255, 255, 255, 0.3);
    background-color: #1F3421;
}

html[data-ikmf-theme="forest"] .e-checkbox-wrapper .e-frame.e-check {
    background-color: var(--ikmf-primary);
    border-color: var(--ikmf-primary);
}

html[data-ikmf-theme="forest"] .e-checkbox-wrapper .e-label {
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-dialog,
html[data-ikmf-theme="forest"] .e-dialog.e-control {
    background-color: #162A18;
    color: #D8F3DC;
    border-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="forest"] .e-dialog .e-dlg-header-content {
    background-color: #1F3421;
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-dialog .e-dlg-content,
html[data-ikmf-theme="forest"] .e-dialog .e-scroll-content {
    background-color: #162A18;
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-dialog .e-footer-content {
    background-color: #1F3421;
    border-top-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="forest"] .e-dialog .e-dlg-header {
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-dlg-overlay {
    background-color: rgba(0, 0, 0, 0.6);
}

/* Bootstrap modals in forest theme */
html[data-ikmf-theme="forest"] .modal-content {
    background-color: #162A18;
    color: #D8F3DC;
    border-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="forest"] .modal-header {
    background-color: #1F3421;
    border-bottom-color: rgba(255, 255, 255, 0.1);
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .modal-body {
    background-color: #162A18;
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .modal-footer {
    background-color: #1F3421;
    border-top-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="forest"] .modal-title {
    color: #D8F3DC;
}

/* Table borders and text */
html[data-ikmf-theme="forest"] .table {
    color: #D8F3DC;
    border-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="forest"] .table > :not(caption) > * > * {
    color: #D8F3DC;
    border-bottom-color: rgba(255, 255, 255, 0.1);
}

/* Badges */
html[data-ikmf-theme="forest"] .badge.bg-secondary {
    background-color: var(--ikmf-primary) !important;
    color: #D8F3DC;
}

/* HR separator */
html[data-ikmf-theme="forest"] hr {
    border-color: rgba(255, 255, 255, 0.1);
}

/* Text muted */
html[data-ikmf-theme="forest"] .text-muted {
    color: rgba(216, 243, 220, 0.6) !important;
}

/* Navbar/header */
html[data-ikmf-theme="forest"] .navbar {
    background-color: #1F3421 !important;
}

/* Home page feature cards */
html[data-ikmf-theme="forest"] .feature-card {
    background-color: #1F3421;
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .feature-card p,
html[data-ikmf-theme="forest"] .welcome-section .lead {
    color: rgba(216, 243, 220, 0.75) !important;
}

html[data-ikmf-theme="forest"] .btn-outline-primary {
    color: var(--ikmf-primary-light);
    border-color: var(--ikmf-primary-light);
}

html[data-ikmf-theme="forest"] .btn-outline-primary:hover {
    background-color: var(--ikmf-primary);
    border-color: var(--ikmf-primary);
    color: #D8F3DC;
}

/* Syncfusion Scheduler (calendar) */
html[data-ikmf-theme="forest"] .e-schedule {
    background-color: #162A18;
    color: #D8F3DC;
}

html[data-ikmf-theme="forest"] .e-schedule .e-month-view .e-work-cells,
html[data-ikmf-theme="forest"] .e-schedule .e-month-view .e-current-month,
html[data-ikmf-theme="forest"] .e-schedule .e-table-container,
html[data-ikmf-theme="forest"] .e-schedule .e-content-table,
html[data-ikmf-theme="forest"] .e-schedule .e-content-wrap,
html[data-ikmf-theme="forest"] .e-schedule .e-date-header-wrap,
html[data-ikmf-theme="forest"] .e-schedule-table,
html[data-ikmf-theme="forest"] .e-schedule td,
html[data-ikmf-theme="forest"] .e-schedule th {
    background-color: #162A18;
    color: #D8F3DC;
    border-color: rgba(255, 255, 255, 0.08);
}

html[data-ikmf-theme="forest"] .e-schedule .e-month-view .e-other-month,
html[data-ikmf-theme="forest"] .e-schedule .e-month-view .e-other-month .e-date-header {
    background-color: #0F2211;
    color: rgba(216, 243, 220, 0.4);
}

html[data-ikmf-theme="forest"] .e-schedule .e-month-view .e-current-day,
html[data-ikmf-theme="forest"] .e-schedule .e-date-header.e-current-day {
    color: var(--ikmf-accent-green) !important;
}

html[data-ikmf-theme="forest"] .e-schedule .e-header-cells,
html[data-ikmf-theme="forest"] .e-schedule .e-month-view .e-header-cells {
    background-color: #1F3421;
    color: #D8F3DC;
    border-color: rgba(255, 255, 255, 0.08);
}

html[data-ikmf-theme="forest"] .e-schedule .e-appointment {
    background-color: var(--ikmf-primary);
    color: #D8F3DC;
    border-color: var(--ikmf-primary-dark);
}

html[data-ikmf-theme="forest"] .e-toolbar,
html[data-ikmf-theme="forest"] .e-schedule-toolbar {
    background-color: #1F3421;
    color: #D8F3DC;
    border-color: rgba(255, 255, 255, 0.08);
}

html[data-ikmf-theme="forest"] .e-toolbar .e-tbar-btn,
html[data-ikmf-theme="forest"] .e-toolbar .e-tbar-btn .e-tbar-btn-text,
html[data-ikmf-theme="forest"] .e-toolbar .e-btn {
    color: #D8F3DC;
    background-color: transparent;
}

html[data-ikmf-theme="forest"] .e-toolbar .e-tbar-btn:hover,
html[data-ikmf-theme="forest"] .e-toolbar .e-btn:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="forest"] .e-quick-popup-wrapper {
    background-color: #1F3421;
    color: #D8F3DC;
    border-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="forest"] .e-quick-popup-wrapper .e-event-header,
html[data-ikmf-theme="forest"] .e-quick-popup-wrapper .e-event-content {
    background-color: #1F3421;
    color: #D8F3DC;
}


/* ── Theme: Nature (Natur) ─────────────────────────────────────────────────── */
html[data-ikmf-theme="nature"] {
    /* App colour variables – sage/forest green palette, light mode */
    --ikmf-primary: #3A7D44;
    --ikmf-primary-dark: #2D6348;
    --ikmf-primary-light: #74C69D;
    --ikmf-primary-deep: #1B4332;
    --ikmf-accent-cyan: #52B788;
    --ikmf-accent-green: #3A7D44;
    --ikmf-accent-orange: #D4A017;

    /* Sidebar gradient */
    --ikmf-sidebar-bg: linear-gradient(180deg, #3A7D44 0%, #2D6348 100%);

    /* Slightly green-tinted body */
    --bs-body-bg: #F4FAF5;
    --bs-card-bg: #EBF5EC;
    --bs-card-border-color: #C3E6CA;
    --bs-border-color: #C3E6CA;
    --bs-secondary-bg: #EBF5EC;
    --bs-tertiary-bg: #F4FAF5;
    --bs-link-color: #3A7D44;
    --bs-link-hover-color: #2D6348;
    --bs-link-color-rgb: 58, 125, 68;
    --bs-link-hover-color-rgb: 45, 99, 72;
}

/* Buttons */
html[data-ikmf-theme="nature"] .btn-primary {
    background-color: var(--ikmf-primary);
    border-color: var(--ikmf-primary-dark);
    color: #ffffff;
}

html[data-ikmf-theme="nature"] .btn-primary:hover,
html[data-ikmf-theme="nature"] .btn-primary:focus,
html[data-ikmf-theme="nature"] .btn-primary:active {
    background-color: var(--ikmf-primary-dark);
    border-color: var(--ikmf-primary-deep);
    color: #ffffff;
}

html[data-ikmf-theme="nature"] .btn-outline-primary {
    color: var(--ikmf-primary);
    border-color: var(--ikmf-primary);
}

html[data-ikmf-theme="nature"] .btn-outline-primary:hover {
    background-color: var(--ikmf-primary);
    border-color: var(--ikmf-primary);
    color: #ffffff;
}

/* Cards */
html[data-ikmf-theme="nature"] .card {
    background-color: var(--bs-card-bg);
    border-color: var(--bs-card-border-color);
}

/* Home feature cards */
html[data-ikmf-theme="nature"] .feature-card {
    background-color: #EBF5EC;
}

/* Form controls */
html[data-ikmf-theme="nature"] .form-control:focus,
html[data-ikmf-theme="nature"] .form-select:focus {
    border-color: var(--ikmf-primary-light);
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem rgba(58, 125, 68, 0.25);
}

/* Syncfusion primary button */
html[data-ikmf-theme="nature"] .e-btn.e-primary {
    background-color: var(--ikmf-primary);
    border-color: var(--ikmf-primary-dark);
    color: #ffffff;
}

html[data-ikmf-theme="nature"] .e-btn.e-primary:hover {
    background-color: var(--ikmf-primary-dark);
    border-color: var(--ikmf-primary-deep);
    color: #ffffff;
}

html[data-ikmf-theme="nature"] .e-list-item.e-active {
    background-color: var(--ikmf-primary);
    color: #ffffff;
}

html[data-ikmf-theme="nature"] .e-tab .e-tab-header .e-indicator {
    background: var(--ikmf-primary);
}

html[data-ikmf-theme="nature"] .e-checkbox-wrapper .e-frame.e-check {
    background-color: var(--ikmf-primary);
    border-color: var(--ikmf-primary);
}

/* Grid */
html[data-ikmf-theme="nature"] .e-grid .e-headercell {
    background-color: #EBF5EC;
}


/* ── Theme: Dark (Dunkel) ────────────────────────────────────────────────────── */
html[data-ikmf-theme="dark"] {
    color-scheme: dark;

    /* App colour variables – keep indigo/teal branding, dark backgrounds */
    --ikmf-primary: #6366F1;
    --ikmf-primary-dark: #4F46E5;
    --ikmf-primary-light: #818CF8;
    --ikmf-primary-deep: #312E81;
    --ikmf-accent-cyan: #22D3EE;
    --ikmf-accent-green: #34D399;
    --ikmf-accent-orange: #FB923C;

    /* Sidebar gradient */
    --ikmf-sidebar-bg: linear-gradient(180deg, #1E1B4B 0%, #0F0E23 100%);

    /* Bootstrap colour variables */
    --bs-body-bg: #121212;
    --bs-body-bg-rgb: 18, 18, 18;
    --bs-body-color: #E2E2E2;
    --bs-body-color-rgb: 226, 226, 226;
    --bs-emphasis-color: #ffffff;
    --bs-emphasis-color-rgb: 255, 255, 255;
    --bs-secondary-color: rgba(226, 226, 226, 0.75);
    --bs-secondary-color-rgb: 226, 226, 226;
    --bs-secondary-bg: #1E1E1E;
    --bs-secondary-bg-rgb: 30, 30, 30;
    --bs-tertiary-color: rgba(226, 226, 226, 0.5);
    --bs-tertiary-color-rgb: 226, 226, 226;
    --bs-tertiary-bg: #262626;
    --bs-tertiary-bg-rgb: 38, 38, 38;
    --bs-link-color: #818CF8;
    --bs-link-hover-color: #A5B4FC;
    --bs-link-color-rgb: 129, 140, 248;
    --bs-link-hover-color-rgb: 165, 180, 252;
    --bs-border-color: rgba(255, 255, 255, 0.12);
    --bs-border-color-translucent: rgba(255, 255, 255, 0.08);
    --bs-card-bg: #1E1E1E;
    --bs-card-border-color: rgba(255, 255, 255, 0.1);
    --bs-table-bg: transparent;
    --bs-table-striped-bg: rgba(255, 255, 255, 0.04);
    --bs-table-hover-bg: rgba(255, 255, 255, 0.06);
    --bs-form-control-bg: #1E1E1E;
    --bs-input-bg: #262626;
    --bs-input-border-color: rgba(255, 255, 255, 0.2);
    --bs-input-color: #E2E2E2;
    --bs-dropdown-bg: #1E1E1E;
    --bs-dropdown-border-color: rgba(255, 255, 255, 0.1);
    --bs-dropdown-link-color: #E2E2E2;
    --bs-dropdown-link-hover-bg: #262626;
    --bs-modal-bg: #1E1E1E;
    --bs-modal-content-bg: #1E1E1E;
    --bs-modal-header-border-color: rgba(255, 255, 255, 0.1);
    --bs-list-group-bg: #1E1E1E;
    --bs-list-group-border-color: rgba(255, 255, 255, 0.1);
}

/* Buttons */
html[data-ikmf-theme="dark"] .btn-primary {
    background-color: var(--ikmf-primary);
    border-color: var(--ikmf-primary-dark);
    color: #ffffff;
}

html[data-ikmf-theme="dark"] .btn-primary:hover,
html[data-ikmf-theme="dark"] .btn-primary:focus,
html[data-ikmf-theme="dark"] .btn-primary:active {
    background-color: var(--ikmf-primary-dark);
    border-color: var(--ikmf-primary-deep);
    color: #ffffff;
}

html[data-ikmf-theme="dark"] .btn-outline-primary {
    color: var(--ikmf-primary-light);
    border-color: var(--ikmf-primary-light);
}

html[data-ikmf-theme="dark"] .btn-outline-primary:hover {
    background-color: var(--ikmf-primary);
    border-color: var(--ikmf-primary);
    color: #ffffff;
}

/* Cards */
html[data-ikmf-theme="dark"] .card {
    background-color: var(--bs-card-bg);
    border-color: var(--bs-card-border-color);
    color: var(--bs-body-color);
}

/* Home page feature cards */
html[data-ikmf-theme="dark"] .feature-card {
    background-color: #1E1E1E;
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .feature-card p,
html[data-ikmf-theme="dark"] .welcome-section .lead {
    color: rgba(226, 226, 226, 0.75) !important;
}

/* Form controls */
html[data-ikmf-theme="dark"] .form-control,
html[data-ikmf-theme="dark"] .form-select {
    background-color: #262626;
    border-color: rgba(255, 255, 255, 0.2);
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .form-control:focus,
html[data-ikmf-theme="dark"] .form-select:focus {
    background-color: #262626;
    border-color: var(--ikmf-primary-light);
    color: #E2E2E2;
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem var(--ikmf-primary);
}

/* Dialogs */
html[data-ikmf-theme="dark"] .e-dialog,
html[data-ikmf-theme="dark"] .e-dialog.e-control {
    background-color: #1E1E1E;
    color: #E2E2E2;
    border-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="dark"] .e-dialog .e-dlg-header-content {
    background-color: #262626;
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .e-dialog .e-dlg-header {
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .e-dialog .e-dlg-content,
html[data-ikmf-theme="dark"] .e-dialog .e-scroll-content {
    background-color: #1E1E1E;
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .e-dialog .e-footer-content {
    background-color: #262626;
    border-top-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="dark"] .e-dlg-overlay {
    background-color: rgba(0, 0, 0, 0.7);
}

/* Bootstrap modals */
html[data-ikmf-theme="dark"] .modal-content {
    background-color: #1E1E1E;
    color: #E2E2E2;
    border-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="dark"] .modal-header {
    background-color: #262626;
    border-bottom-color: rgba(255, 255, 255, 0.1);
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .modal-body {
    background-color: #1E1E1E;
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .modal-footer {
    background-color: #262626;
    border-top-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="dark"] .modal-title {
    color: #E2E2E2;
}

/* Tables */
html[data-ikmf-theme="dark"] .table {
    color: #E2E2E2;
    border-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="dark"] .table > :not(caption) > * > * {
    color: #E2E2E2;
    border-bottom-color: rgba(255, 255, 255, 0.1);
}

/* Badges */
html[data-ikmf-theme="dark"] .badge.bg-secondary {
    background-color: var(--ikmf-primary) !important;
    color: #ffffff;
}

/* HR separator */
html[data-ikmf-theme="dark"] hr {
    border-color: rgba(255, 255, 255, 0.1);
}

/* Text muted */
html[data-ikmf-theme="dark"] .text-muted {
    color: rgba(226, 226, 226, 0.55) !important;
}

/* Navbar */
html[data-ikmf-theme="dark"] .navbar {
    background-color: #262626 !important;
}

/* Syncfusion controls */
html[data-ikmf-theme="dark"] .e-control,
html[data-ikmf-theme="dark"] .e-lib {
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .e-input-group,
html[data-ikmf-theme="dark"] .e-input-group.e-control-wrapper {
    background-color: #262626;
    border-color: rgba(255, 255, 255, 0.2) !important;
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .e-input-group input,
html[data-ikmf-theme="dark"] .e-input-group.e-control-wrapper input {
    background-color: transparent;
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .e-popup,
html[data-ikmf-theme="dark"] .e-ddl-popup {
    background-color: #1E1E1E;
    border-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="dark"] .e-list-item {
    background-color: #1E1E1E;
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .e-list-item:hover,
html[data-ikmf-theme="dark"] .e-list-item.e-hover {
    background-color: #262626;
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .e-list-item.e-active {
    background-color: var(--ikmf-primary);
    color: #ffffff;
}

html[data-ikmf-theme="dark"] .e-tab .e-tab-header {
    background-color: #1E1E1E;
}

html[data-ikmf-theme="dark"] .e-tab .e-tab-header .e-toolbar-item .e-tab-text,
html[data-ikmf-theme="dark"] .e-tab .e-tab-header .e-toolbar-item .e-tab-icon {
    color: #A5B4FC;
}

html[data-ikmf-theme="dark"] .e-tab .e-tab-header .e-toolbar-item.e-active .e-tab-text,
html[data-ikmf-theme="dark"] .e-tab .e-tab-header .e-toolbar-item.e-active .e-tab-icon {
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .e-tab .e-tab-header .e-indicator {
    background: var(--ikmf-primary-light);
}

html[data-ikmf-theme="dark"] .e-tab .e-content {
    background-color: #1E1E1E;
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .e-grid {
    background-color: #1E1E1E;
    border-color: rgba(255, 255, 255, 0.1);
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .e-grid .e-headercell {
    background-color: #262626;
    color: #E2E2E2;
    border-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="dark"] .e-grid .e-rowcell {
    background-color: transparent;
    color: #E2E2E2;
    border-color: rgba(255, 255, 255, 0.07);
}

html[data-ikmf-theme="dark"] .e-grid .e-altrow .e-rowcell {
    background-color: rgba(255, 255, 255, 0.03);
}

html[data-ikmf-theme="dark"] .e-btn.e-primary {
    background-color: var(--ikmf-primary);
    border-color: var(--ikmf-primary-dark);
    color: #ffffff;
}

html[data-ikmf-theme="dark"] .e-btn.e-primary:hover {
    background-color: var(--ikmf-primary-dark);
    border-color: var(--ikmf-primary-deep);
    color: #ffffff;
}

html[data-ikmf-theme="dark"] .e-checkbox-wrapper .e-frame {
    border-color: rgba(255, 255, 255, 0.3);
    background-color: #262626;
}

html[data-ikmf-theme="dark"] .e-checkbox-wrapper .e-frame.e-check {
    background-color: var(--ikmf-primary);
    border-color: var(--ikmf-primary);
}

html[data-ikmf-theme="dark"] .e-checkbox-wrapper .e-label {
    color: #E2E2E2;
}

/* Syncfusion Scheduler (calendar) */
html[data-ikmf-theme="dark"] .e-schedule {
    background-color: #1E1E1E;
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .e-schedule .e-month-view .e-work-cells,
html[data-ikmf-theme="dark"] .e-schedule .e-month-view .e-current-month,
html[data-ikmf-theme="dark"] .e-schedule .e-table-container,
html[data-ikmf-theme="dark"] .e-schedule .e-content-table,
html[data-ikmf-theme="dark"] .e-schedule .e-content-wrap,
html[data-ikmf-theme="dark"] .e-schedule .e-date-header-wrap,
html[data-ikmf-theme="dark"] .e-schedule-table,
html[data-ikmf-theme="dark"] .e-schedule td,
html[data-ikmf-theme="dark"] .e-schedule th {
    background-color: #1E1E1E;
    color: #E2E2E2;
    border-color: rgba(255, 255, 255, 0.08);
}

html[data-ikmf-theme="dark"] .e-schedule .e-month-view .e-other-month,
html[data-ikmf-theme="dark"] .e-schedule .e-month-view .e-other-month .e-date-header {
    background-color: #121212;
    color: rgba(226, 226, 226, 0.4);
}

html[data-ikmf-theme="dark"] .e-schedule .e-header-cells,
html[data-ikmf-theme="dark"] .e-schedule .e-month-view .e-header-cells {
    background-color: #262626;
    color: #E2E2E2;
    border-color: rgba(255, 255, 255, 0.08);
}

html[data-ikmf-theme="dark"] .e-schedule .e-appointment {
    background-color: var(--ikmf-primary);
    color: #ffffff;
    border-color: var(--ikmf-primary-dark);
}

html[data-ikmf-theme="dark"] .e-toolbar,
html[data-ikmf-theme="dark"] .e-schedule-toolbar {
    background-color: #262626;
    color: #E2E2E2;
    border-color: rgba(255, 255, 255, 0.08);
}

html[data-ikmf-theme="dark"] .e-toolbar .e-tbar-btn,
html[data-ikmf-theme="dark"] .e-toolbar .e-tbar-btn .e-tbar-btn-text,
html[data-ikmf-theme="dark"] .e-toolbar .e-btn {
    color: #E2E2E2;
    background-color: transparent;
}

html[data-ikmf-theme="dark"] .e-toolbar .e-tbar-btn:hover,
html[data-ikmf-theme="dark"] .e-toolbar .e-btn:hover {
    background-color: rgba(255, 255, 255, 0.08);
}

html[data-ikmf-theme="dark"] .e-quick-popup-wrapper {
    background-color: #262626;
    color: #E2E2E2;
    border-color: rgba(255, 255, 255, 0.1);
}

html[data-ikmf-theme="dark"] .e-quick-popup-wrapper .e-event-header,
html[data-ikmf-theme="dark"] .e-quick-popup-wrapper .e-event-content {
    background-color: #262626;
    color: #E2E2E2;
}

html[data-ikmf-theme="dark"] .theme-card--active {
    border-color: var(--ikmf-primary-light, #818CF8);
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.25);
}
