/**
 * Theme-aware UI components — menus, tables, DataTables, pills.
 * Guard uses fallbacks in dgs-premium.css (unchanged default).
 */

body.dgs-premium .dgs-topnav-link {
    color: var(--dgs-topnav-link-color, var(--dgs-p-muted)) !important;
}

body.dgs-premium .dgs-topnav-link:hover {
    color: var(--dgs-accent) !important;
}

body.dgs-premium .dgs-topnav-link.active {
    color: var(--dgs-topnav-link-active-fg, #fff) !important;
}

body.dgs-premium #layout-wrapper .dgs-sidenav .sub-menu li a {
    color: var(--dgs-p-muted) !important;
}

body.dgs-premium #layout-wrapper .dgs-sidenav .sub-menu li a:hover,
body.dgs-premium #layout-wrapper .dgs-sidenav .sub-menu li.active > a {
    color: var(--dgs-accent) !important;
    background: var(--dgs-accent-dim) !important;
}

body.dgs-premium .card .card-title,
body.dgs-premium .card h4,
body.dgs-premium .card h5,
body.dgs-premium .card h6 {
    color: var(--dgs-p-text);
}

body.dgs-premium .text-muted,
body.dgs-premium small.text-muted {
    color: var(--dgs-p-muted) !important;
}

body.dgs-premium .dataTables_wrapper,
body.dgs-premium .dataTables_wrapper .dataTables_info,
body.dgs-premium .dataTables_wrapper .dataTables_length,
body.dgs-premium .dataTables_wrapper .dataTables_filter label {
    color: var(--dgs-p-muted) !important;
}

body.dgs-premium table.dataTable thead th,
body.dgs-premium table.dataTable thead td {
    background: var(--dgs-p-surface-2) !important;
    color: var(--dgs-p-muted) !important;
    border-color: var(--dgs-p-border) !important;
}

body.dgs-premium table.dataTable tbody tr {
    background: transparent !important;
    color: var(--dgs-p-text) !important;
}

body.dgs-premium table.dataTable.stripe tbody tr.odd,
body.dgs-premium table.dataTable.display tbody tr.odd {
    background: var(--dgs-table-stripe-odd, rgba(22, 29, 46, 0.85)) !important;
}

body.dgs-premium table.dataTable.stripe tbody tr.even,
body.dgs-premium table.dataTable.display tbody tr.even {
    background: var(--dgs-table-stripe-even, rgba(18, 24, 38, 0.45)) !important;
}

body.dgs-premium table.dataTable.hover tbody tr:hover,
body.dgs-premium table.dataTable.display tbody tr:hover {
    background: var(--dgs-table-hover, rgba(59, 130, 246, 0.12)) !important;
}

body.dgs-premium .dataTables_wrapper .dataTables_paginate .paginate_button {
    background: var(--dgs-p-surface-2) !important;
    border-color: var(--dgs-p-border) !important;
    color: var(--dgs-p-text) !important;
}

body.dgs-premium .dataTables_wrapper .dataTables_paginate .paginate_button.current {
    background: var(--dgs-accent) !important;
    border-color: var(--dgs-accent) !important;
    color: #fff !important;
}

body.dgs-premium .dgs-live-chip:hover {
    border-color: var(--dgs-accent-border) !important;
    background: color-mix(in srgb, var(--dgs-strip-chip-bg) 85%, var(--dgs-accent)) !important;
}

body.dgs-premium .dgs-live-chip i {
    color: color-mix(in srgb, var(--dgs-accent) 75%, white) !important;
}

body.dgs-premium .dgs-live-val {
    color: var(--dgs-p-text) !important;
}

body.dgs-premium .dgs-live-clock-val {
    color: var(--dgs-metrics-value, #f8fafc) !important;
}

body.dgs-premium .dgs-tbm-traffic-btn {
    border-color: var(--dgs-accent-border) !important;
    background: var(--dgs-accent-dim) !important;
    color: var(--dgs-p-text) !important;
}

body.dgs-premium .dgs-tbm-pill {
    border-color: var(--dgs-p-border);
    color: var(--dgs-p-muted);
}

body.dgs-premium .dgs-tbm-pill.is-hot {
    border-color: var(--dgs-accent-border);
    color: var(--dgs-accent);
}

body.dgs-premium .list-group-item {
    background: var(--dgs-p-surface) !important;
    border-color: var(--dgs-p-border) !important;
    color: var(--dgs-p-text) !important;
}

body.dgs-premium .modal-content.dgs-modal-dark,
body.dgs-premium .modal.dgs-modal-dark .modal-content {
    background: var(--dgs-p-surface) !important;
    border-color: var(--dgs-p-border) !important;
    color: var(--dgs-p-text) !important;
}

html[data-theme="lumen"] body.dgs-premium .dgs-live-label,
html[data-theme="lumen"] body.dgs-premium .dgs-live-clock-label {
    color: var(--dgs-p-muted) !important;
}

html[data-theme="lumen"] body.dgs-premium .dgs-topnav-link.active {
    background: var(--dgs-accent-dim) !important;
    border-color: var(--dgs-accent-border) !important;
}

/* -------------------------------------------------------------------------
   Lumen — unified light workspace (sidebar + shell + components)
   ------------------------------------------------------------------------- */
html[data-theme="lumen"] body.dgs-premium #layout-wrapper .dgs-sidenav.vertical-menu {
    box-shadow:
        inset -1px 0 0 rgba(79, 70, 229, 0.08),
        4px 0 18px rgba(15, 23, 42, 0.05);
}

html[data-theme="lumen"] #layout-wrapper .navbar-brand-box .logo.logo-dark {
    display: flex !important;
}

html[data-theme="lumen"] #layout-wrapper .navbar-brand-box .logo.logo-light {
    display: none !important;
}

html[data-theme="lumen"] #layout-wrapper .dgs-brand-plate {
    border-color: rgba(79, 70, 229, 0.16);
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.98) 0%, rgba(238, 242, 255, 0.94) 55%, rgba(248, 250, 252, 0.92) 100%);
    box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.98) inset,
        0 4px 14px rgba(79, 70, 229, 0.08);
}

html[data-theme="lumen"] #layout-wrapper .dgs-topbar .header-item,
html[data-theme="lumen"] #layout-wrapper .dgs-topbar .header-item i {
    color: #475569 !important;
}

html[data-theme="lumen"] #layout-wrapper .dgs-topbar .app-search .form-control {
    background: #f8fafc !important;
    border-color: rgba(148, 163, 184, 0.28) !important;
    color: #0f172a !important;
}

html[data-theme="lumen"] #dgs-live-strip {
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.06);
}

html[data-theme="lumen"] body.dgs-premium #layout-wrapper .dgs-sidenav #sidebar-menu .menu-title {
    color: #94a3b8 !important;
}

html[data-theme="lumen"] body.dgs-premium #layout-wrapper .dgs-sidenav #sidebar-menu ul li > a {
    color: #475569 !important;
}

html[data-theme="lumen"] body.dgs-premium #layout-wrapper .dgs-sidenav #sidebar-menu ul li > a:hover,
html[data-theme="lumen"] body.dgs-premium #layout-wrapper .dgs-sidenav #sidebar-menu ul li > a:focus {
    color: var(--dgs-accent) !important;
    background: var(--dgs-accent-dim) !important;
}

html[data-theme="lumen"] body.dgs-premium #layout-wrapper .dgs-sidenav #sidebar-menu ul li.mm-active > a,
html[data-theme="lumen"] body.dgs-premium #layout-wrapper .dgs-sidenav #sidebar-menu ul li.active > a {
    color: #312e81 !important;
    background: rgba(79, 70, 229, 0.12) !important;
    box-shadow: inset 3px 0 0 var(--dgs-accent), 0 0 0 1px rgba(79, 70, 229, 0.16) !important;
}

html[data-theme="lumen"] body.dgs-premium .dgs-dash-quick-card {
    background: var(--dgs-quick-card-bg) !important;
    color: var(--dgs-quick-card-fg) !important;
    border-color: var(--dgs-quick-card-border) !important;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06) !important;
}

html[data-theme="lumen"] body.dgs-premium .dgs-dash-quick-card:hover {
    box-shadow: 0 10px 24px rgba(79, 70, 229, 0.1) !important;
}

html[data-theme="lumen"] body.dgs-premium .dgs-dash-quick-card--danger {
    background: var(--dgs-quick-card-danger-bg) !important;
    border-left-color: #f43f5e;
}

html[data-theme="lumen"] body.dgs-premium .dgs-dash-quick-card--info {
    background: var(--dgs-quick-card-info-bg) !important;
    border-left-color: #3b82f6;
}

html[data-theme="lumen"] body.dgs-premium .dgs-dash-quick-card--warning {
    background: var(--dgs-quick-card-warning-bg) !important;
    border-left-color: #f59e0b;
}

html[data-theme="lumen"] body.dgs-premium .dgs-dash-quick-title {
    color: var(--dgs-quick-card-fg) !important;
}

html[data-theme="lumen"] body.dgs-premium .dgs-dash-quick-desc {
    color: var(--dgs-quick-card-muted) !important;
}

html[data-theme="lumen"] body.dgs-premium .dgs-dash-quick-stat {
    color: var(--dgs-quick-card-fg) !important;
    background: rgba(148, 163, 184, 0.14);
}

html[data-theme="lumen"] body.dgs-premium .dgs-dash-quick-card--danger .dgs-dash-quick-stat {
    color: #be123c !important;
    background: rgba(244, 63, 94, 0.12);
}

html[data-theme="lumen"] body.dgs-premium .dgs-dash-quick-card--info .dgs-dash-quick-stat {
    color: #1d4ed8 !important;
    background: rgba(59, 130, 246, 0.12);
}

html[data-theme="lumen"] body.dgs-premium .dgs-dash-quick-card--warning .dgs-dash-quick-stat {
    color: #b45309 !important;
    background: rgba(245, 158, 11, 0.14);
}

/* -------------------------------------------------------------------------
   Nord — soft polar gray shell + themed quick cards
   ------------------------------------------------------------------------- */
html[data-theme="nord"] body.dgs-premium #layout-wrapper .dgs-sidenav.vertical-menu {
    box-shadow:
        inset -1px 0 0 color-mix(in srgb, var(--dgs-accent) 12%, transparent),
        4px 0 24px rgba(0, 0, 0, 0.18);
}

html[data-theme="nord"] body.dgs-premium .dgs-dash-quick-card {
    background: var(--dgs-quick-card-bg) !important;
    color: var(--dgs-quick-card-fg) !important;
    border-color: var(--dgs-quick-card-border) !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.16) !important;
}

html[data-theme="nord"] body.dgs-premium .dgs-dash-quick-card--danger {
    background: var(--dgs-quick-card-danger-bg) !important;
    border-left-color: #bf616a;
}

html[data-theme="nord"] body.dgs-premium .dgs-dash-quick-card--info {
    background: var(--dgs-quick-card-info-bg) !important;
    border-left-color: #88c0d0;
}

html[data-theme="nord"] body.dgs-premium .dgs-dash-quick-card--warning {
    background: var(--dgs-quick-card-warning-bg) !important;
    border-left-color: #ebcb8b;
}

html[data-theme="nord"] body.dgs-premium .dgs-dash-quick-title {
    color: var(--dgs-quick-card-fg) !important;
}

html[data-theme="nord"] body.dgs-premium .dgs-dash-quick-desc {
    color: var(--dgs-quick-card-muted) !important;
}

html[data-theme="nord"] body.dgs-premium .dgs-dash-quick-stat {
    color: var(--dgs-quick-card-fg) !important;
    background: color-mix(in srgb, var(--dgs-p-bg) 55%, transparent);
}

html[data-theme="nord"] body.dgs-premium .dgs-dash-quick-card--danger .dgs-dash-quick-stat {
    color: #f5c6cb !important;
    background: color-mix(in srgb, #bf616a 22%, transparent);
}

html[data-theme="nord"] body.dgs-premium .dgs-dash-quick-card--info .dgs-dash-quick-stat {
    color: #d8dee9 !important;
    background: color-mix(in srgb, #88c0d0 20%, transparent);
}

html[data-theme="nord"] body.dgs-premium .dgs-dash-quick-card--warning .dgs-dash-quick-stat {
    color: #f0e6c4 !important;
    background: color-mix(in srgb, #ebcb8b 18%, transparent);
}

/* Form controls in dark cards: Bootstrap white bg + card light text = invisible. */
body.dgs-premium #layout-wrapper .form-control,
body.dgs-premium #layout-wrapper .form-control-sm,
body.dgs-premium #layout-wrapper .form-select,
body.dgs-premium #layout-wrapper .form-select-sm,
body.dgs-premium #layout-wrapper input.form-control,
body.dgs-premium #layout-wrapper input[type="text"],
body.dgs-premium #layout-wrapper input[type="number"],
body.dgs-premium #lhNginxCapacity .form-control,
body.dgs-premium #lhNginxCapacity .form-control-sm {
    background-color: #121a28 !important;
    background: #121a28 !important;
    color: #e8eef8 !important;
    border-color: rgba(255, 255, 255, 0.18) !important;
    -webkit-text-fill-color: #e8eef8 !important;
    caret-color: #e8eef8;
}

body.dgs-premium #layout-wrapper .form-control::placeholder,
body.dgs-premium #layout-wrapper .form-control-sm::placeholder,
body.dgs-premium #lhNginxCapacity .form-control::placeholder,
body.dgs-premium #lhNginxCapacity .form-control-sm::placeholder {
    color: rgba(232, 238, 248, 0.55) !important;
    -webkit-text-fill-color: rgba(232, 238, 248, 0.55) !important;
    opacity: 1;
}

body.dgs-premium #layout-wrapper .form-control:focus,
body.dgs-premium #layout-wrapper .form-control-sm:focus {
    background-color: #121a28 !important;
    color: #e8eef8 !important;
    border-color: rgba(56, 189, 248, 0.55) !important;
    box-shadow: 0 0 0 0.15rem rgba(56, 189, 248, 0.2);
    -webkit-text-fill-color: #e8eef8 !important;
}

/* Lumen theme: readable dark text on light inputs */
html[data-theme="lumen"] body.dgs-premium #layout-wrapper .form-control,
html[data-theme="lumen"] body.dgs-premium #layout-wrapper .form-control-sm,
html[data-theme="lumen"] body.dgs-premium #layout-wrapper input[type="text"],
html[data-theme="lumen"] body.dgs-premium #layout-wrapper input[type="number"],
html[data-theme="lumen"] body.dgs-premium #lhNginxCapacity .form-control,
html[data-theme="lumen"] body.dgs-premium #lhNginxCapacity .form-control-sm {
    background-color: #ffffff !important;
    background: #ffffff !important;
    color: #0f172a !important;
    border-color: rgba(148, 163, 184, 0.35) !important;
    -webkit-text-fill-color: #0f172a !important;
}

html[data-theme="lumen"] body.dgs-premium #layout-wrapper .form-control::placeholder,
html[data-theme="lumen"] body.dgs-premium #lhNginxCapacity .form-control::placeholder {
    color: #94a3b8 !important;
    -webkit-text-fill-color: #94a3b8 !important;
}
