/* ================================================================================
   Platform Dark Theme — global overrides for legacy modern-theme.css classes.
   Loaded AFTER modern-theme.css so these rules win.
   Goal: every admin / doctor / reception / technician page renders with the same
         dark glassmorphic palette as the navbar, login, and dashboard.
   Palette:
     bg            #080f1f
     card          rgba(255,255,255,.028)
     card-border   rgba(255,255,255,.065)
     text          #e2e8f0
     text-muted    #94a3b8
     text-dim      #64748b
     primary       #00b4d8 / #0078d4
     success       #10b981
     warning       #f26419
     danger        #ef4444
     accent        #8b5cf6
   ================================================================================ */

/* ── Global body background ──────────────────────────────────────────────────── */
body { background:#080f1f !important; color:#e2e8f0; }

/* Animated background tint */
.animated-bg { background: radial-gradient(circle at 20% 0%, rgba(0,120,212,.08) 0%, transparent 50%),
                            radial-gradient(circle at 80% 100%, rgba(16,185,129,.06) 0%, transparent 50%),
                            #080f1f !important; }

/* ── Page headers ───────────────────────────────────────────────────────────── */
.page-header-modern,
.page-header {
    background: linear-gradient(135deg, rgba(0,120,212,.18) 0%, rgba(0,180,216,.10) 100%),
                rgba(8,15,31,.86) !important;
    backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255,255,255,.07) !important;
    border-radius: 20px !important;
    color: #e2e8f0 !important;
    box-shadow: 0 16px 48px rgba(0,0,0,.45) !important;
    position: relative; overflow: hidden;
}
.page-header-modern::before, .page-header::before {
    content:''; position:absolute; top:-60px; right:-60px;
    width: 240px; height: 240px; border-radius:50%;
    background: radial-gradient(circle, rgba(0,180,216,.22) 0%, transparent 70%);
    pointer-events:none;
}
.page-title { color:#e2e8f0 !important; font-weight:800; letter-spacing:-.01em; }
.page-title i { color:#00b4d8 !important; opacity:1 !important; }
.page-subtitle { color:#94a3b8 !important; }

/* ── KPI cards ──────────────────────────────────────────────────────────────── */
.kpi-card-modern {
    background: rgba(255,255,255,.028) !important;
    border: 1px solid rgba(255,255,255,.065) !important;
    border-radius: 16px !important;
    box-shadow: none !important;
    color: #e2e8f0;
}
.kpi-card-modern::before { display:none !important; }
.kpi-card-modern:hover {
    transform: translateY(-3px) !important;
    border-color: rgba(0,180,216,.35) !important;
    box-shadow: 0 16px 36px rgba(0,0,0,.4) !important;
}
.kpi-icon-modern { background: rgba(0,180,216,.14) !important; color:#00b4d8 !important; box-shadow:none !important; }
.kpi-label-modern { color:#94a3b8 !important; font-size:.72rem !important; text-transform:uppercase; letter-spacing:.07em; }
.kpi-value-modern { color:#e2e8f0 !important; }
.kpi-subtitle-modern { color:#64748b !important; }
.kpi-card-modern.kpi-primary .kpi-icon-modern { background: rgba(0,180,216,.14) !important; color:#00b4d8 !important; }
.kpi-card-modern.kpi-success .kpi-icon-modern { background: rgba(16,185,129,.14) !important; color:#10b981 !important; }
.kpi-card-modern.kpi-warning .kpi-icon-modern { background: rgba(242,100,25,.14) !important; color:#f26419 !important; }
.kpi-card-modern.kpi-danger  .kpi-icon-modern { background: rgba(239,68,68,.14)  !important; color:#ef4444 !important; }
.kpi-card-modern.kpi-info    .kpi-icon-modern { background: rgba(139,92,246,.14) !important; color:#8b5cf6 !important; }

/* ── Generic content / chart / info cards ──────────────────────────────────── */
.content-card,
.chart-card,
.action-card,
.stat-card-modern,
.filter-card,
.search-card,
.info-card,
.dashboard-card,
.card-modern {
    background: rgba(255,255,255,.028) !important;
    border: 1px solid rgba(255,255,255,.065) !important;
    border-radius: 16px !important;
    color: #e2e8f0 !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.30) !important;
}
.content-card .card-header,
.card-header,
.card-header-modern,
.chart-header {
    background: rgba(0,0,0,.18) !important;
    border-bottom: 1px solid rgba(255,255,255,.07) !important;
    color: #e2e8f0 !important;
}
.content-card .card-header h5,
.card-header h5,
.card-header-modern h5,
.chart-header h5 {
    color:#e2e8f0 !important; font-weight:700;
}
.content-card .card-header i,
.card-header i,
.card-header-modern i,
.chart-header i {
    color:#00b4d8 !important;
}
.content-card .card-body,
.card-body { background: transparent !important; color:#cbd5e1; }

/* ── Buttons ────────────────────────────────────────────────────────────────── */
.btn-modern,
.btn-primary-modern,
.btn-create,
.btn-action-primary {
    background: linear-gradient(135deg, #0078d4 0%, #00b4d8 100%) !important;
    color:#fff !important; border:none !important;
    box-shadow: 0 8px 22px rgba(0,180,216,.32) !important;
    border-radius: 11px !important;
    transition: transform .2s, box-shadow .2s !important;
}
.btn-modern:hover, .btn-primary-modern:hover, .btn-create:hover {
    transform: translateY(-2px); box-shadow: 0 12px 28px rgba(0,180,216,.45) !important;
    color:#fff !important;
}
.btn-success-modern { background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important; color:#fff !important; box-shadow: 0 8px 22px rgba(16,185,129,.32) !important; }
.btn-warning-modern { background: linear-gradient(135deg, #f26419 0%, #d4540d 100%) !important; color:#fff !important; box-shadow: 0 8px 22px rgba(242,100,25,.32) !important; }
.btn-danger-modern  { background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important; color:#fff !important; box-shadow: 0 8px 22px rgba(239,68,68,.32)  !important; }
.btn-secondary-modern,
.btn-outline-modern {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    color:#e2e8f0 !important;
}
.btn-secondary-modern:hover, .btn-outline-modern:hover { background: rgba(255,255,255,.08) !important; border-color: rgba(0,180,216,.4) !important; color:#fff !important; }

/* Bootstrap btn overrides for dashboard pages (low-specificity) */
.dashboard-page .btn-primary,
.content-card .btn-primary,
.btn.btn-primary {
    background: linear-gradient(135deg, #0078d4 0%, #00b4d8 100%) !important;
    border:none !important; color:#fff !important;
}
.dashboard-page .btn-outline-primary,
.content-card .btn-outline-primary {
    background: rgba(255,255,255,.04) !important; border: 1px solid rgba(0,180,216,.35) !important; color:#00b4d8 !important;
}

/* ── Forms ──────────────────────────────────────────────────────────────────── */
.form-control-modern,
.form-select-modern,
select.form-control-modern,
.form-control,
.form-select,
input.form-control,
select.form-select,
textarea.form-control {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    color: #e2e8f0 !important;
    border-radius: 10px !important;
    transition: border-color .2s, box-shadow .2s !important;
}
.form-control:focus, .form-select:focus, .form-control-modern:focus, .form-select-modern:focus {
    outline:none !important;
    border-color: #00b4d8 !important;
    box-shadow: 0 0 0 3px rgba(0,180,216,.18) !important;
    background: rgba(0,180,216,.04) !important;
    color: #e2e8f0 !important;
}
.form-control::placeholder, .form-control-modern::placeholder { color:#475569 !important; }
.form-select option, .form-select-modern option, select option { background:#0d1a2e; color:#e2e8f0; }
.form-label-modern, .form-label { color:#94a3b8 !important; font-weight:600; text-transform:uppercase; letter-spacing:.05em; font-size:.78rem; }

.input-group-text {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    color: #94a3b8 !important;
}

/* ── Tables ─────────────────────────────────────────────────────────────────── */
.table-modern,
.table {
    color: #cbd5e1 !important;
    background: transparent !important;
    --bs-table-color: #cbd5e1;
    --bs-table-bg: transparent;
    --bs-table-striped-bg: rgba(255,255,255,.02);
    --bs-table-hover-bg: rgba(0,180,216,.05);
    --bs-table-border-color: rgba(255,255,255,.06);
}
.table-modern thead th, .table thead th {
    background: rgba(255,255,255,.03) !important;
    color: #94a3b8 !important;
    font-size:.72rem !important;
    text-transform: uppercase;
    letter-spacing:.06em;
    font-weight: 700 !important;
    border-color: rgba(255,255,255,.07) !important;
    border-bottom: 1px solid rgba(255,255,255,.07) !important;
}
.table-modern tbody td, .table tbody td {
    background: transparent !important;
    color: #cbd5e1 !important;
    border-color: rgba(255,255,255,.05) !important;
    vertical-align: middle;
}
.table-modern tbody tr:hover td, .table tbody tr:hover td { background: rgba(0,180,216,.04) !important; }
.table-striped > tbody > tr:nth-of-type(odd) > * { background: rgba(255,255,255,.015) !important; color:#cbd5e1 !important; }

/* DataTables theming */
.dataTables_wrapper, .dataTables_wrapper label, .dataTables_wrapper .dataTables_info { color:#94a3b8 !important; }
.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select {
    background: rgba(255,255,255,.05) !important; border:1px solid rgba(255,255,255,.12) !important; color:#e2e8f0 !important; border-radius:8px !important;
}
.dataTables_wrapper .paginate_button {
    color:#94a3b8 !important;
    background: rgba(255,255,255,.04) !important;
    border:1px solid rgba(255,255,255,.08) !important;
    border-radius:8px !important;
    margin:0 2px;
}
.dataTables_wrapper .paginate_button.current,
.dataTables_wrapper .paginate_button.current:hover {
    background: linear-gradient(135deg, #0078d4, #00b4d8) !important;
    color:#fff !important; border-color: transparent !important;
}
.dataTables_wrapper .paginate_button:hover { background: rgba(0,180,216,.12) !important; color:#e2e8f0 !important; border-color: rgba(0,180,216,.35) !important; }

/* ── Badges ─────────────────────────────────────────────────────────────────── */
.badge-modern,
.badge {
    font-size:.7rem !important;
    font-weight: 700 !important;
    padding:.35rem .65rem !important;
    border-radius: 999px !important;
    letter-spacing:.04em;
    text-transform: uppercase;
}
.badge.bg-primary, .badge-primary { background: rgba(0,180,216,.16) !important; color:#00b4d8 !important; }
.badge.bg-success, .badge-success { background: rgba(16,185,129,.16) !important; color:#10b981 !important; }
.badge.bg-warning, .badge-warning { background: rgba(242,100,25,.16) !important; color:#f26419 !important; }
.badge.bg-danger,  .badge-danger  { background: rgba(239,68,68,.16) !important;  color:#ef4444 !important; }
.badge.bg-info,    .badge-info    { background: rgba(139,92,246,.16) !important; color:#8b5cf6 !important; }
.badge.bg-secondary { background: rgba(148,163,184,.16) !important; color:#94a3b8 !important; }

/* ── Tabs ───────────────────────────────────────────────────────────────────── */
.nav-tabs { border-bottom: 1px solid rgba(255,255,255,.07) !important; gap: .15rem; }
.nav-tabs .nav-link {
    color: #94a3b8 !important;
    background: transparent !important;
    border: none !important;
    padding:.65rem 1rem;
    font-size:.88rem; font-weight:600;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
}
.nav-tabs .nav-link:hover { color:#e2e8f0 !important; }
.nav-tabs .nav-link.active {
    color:#00b4d8 !important;
    background: transparent !important;
    border-bottom-color:#00b4d8 !important;
}

/* ── Modals ────────────────────────────────────────────────────────────────── */
.modal-content {
    background: #0d1a2e !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    color:#e2e8f0;
    border-radius: 16px !important;
    box-shadow: 0 32px 80px rgba(0,0,0,.55) !important;
}
.modal-header { border-bottom: 1px solid rgba(255,255,255,.06) !important; }
.modal-footer { border-top: 1px solid rgba(255,255,255,.06) !important; }
.modal-title { color:#e2e8f0 !important; }
.btn-close { filter: invert(1) brightness(.85); }

/* ── Alerts ────────────────────────────────────────────────────────────────── */
.alert {
    background: rgba(255,255,255,.04) !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    color: #e2e8f0;
    border-radius: 12px;
}
.alert-success { background: rgba(16,185,129,.08) !important; border-color: rgba(16,185,129,.25) !important; color:#10b981; }
.alert-warning { background: rgba(242,100,25,.08) !important; border-color: rgba(242,100,25,.25) !important; color:#f26419; }
.alert-danger,
.alert-error   { background: rgba(239,68,68,.08)  !important; border-color: rgba(239,68,68,.25) !important; color:#ef4444; }
.alert-info    { background: rgba(0,180,216,.08)  !important; border-color: rgba(0,180,216,.25) !important; color:#00b4d8; }

/* ── Empty states / muted text ─────────────────────────────────────────────── */
.empty-state { color:#64748b !important; }
.empty-state i { opacity:.6; color:#64748b !important; }
.text-muted { color:#64748b !important; }

/* ── Generic heading + label fixes on dark bg ──────────────────────────────── */
h1, h2, h3, h4, h5, h6 { color:#e2e8f0; }
label { color:#94a3b8; }

/* ── Pagination ────────────────────────────────────────────────────────────── */
.pagination .page-link {
    background: rgba(255,255,255,.04) !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    color: #94a3b8 !important;
    margin: 0 2px; border-radius: 8px;
}
.pagination .page-link:hover { background: rgba(0,180,216,.12) !important; color:#e2e8f0 !important; border-color: rgba(0,180,216,.35) !important; }
.pagination .page-item.active .page-link {
    background: linear-gradient(135deg, #0078d4, #00b4d8) !important;
    border-color: transparent !important; color:#fff !important;
}

/* ── List groups ───────────────────────────────────────────────────────────── */
.list-group-item {
    background: rgba(255,255,255,.028) !important;
    color: #cbd5e1 !important;
    border: 1px solid rgba(255,255,255,.06) !important;
}
.list-group-item:hover { background: rgba(0,180,216,.05) !important; }

/* ── Breadcrumbs ───────────────────────────────────────────────────────────── */
.breadcrumb { background: transparent !important; color:#94a3b8; }
.breadcrumb-item a { color:#00b4d8; text-decoration: none; }
.breadcrumb-item.active { color:#94a3b8; }

/* ── Dropdowns (non-navbar) ────────────────────────────────────────────────── */
.dropdown-menu:not(.dropdown-menu-ris) {
    background: #0d1a2e !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    color: #e2e8f0;
}
.dropdown-menu:not(.dropdown-menu-ris) .dropdown-item { color:#cbd5e1 !important; }
.dropdown-menu:not(.dropdown-menu-ris) .dropdown-item:hover { background: rgba(0,180,216,.08) !important; color:#fff !important; }

/* ── Progress bars ─────────────────────────────────────────────────────────── */
.progress { background: rgba(255,255,255,.06) !important; }
.progress-bar { background: linear-gradient(135deg, #0078d4, #00b4d8) !important; }

/* ── Action cards (quick-action tiles on role landing pages) ──────────────── */
.action-card,
.action-tile,
.quick-action {
    background: rgba(255,255,255,.028) !important;
    border: 1px solid rgba(255,255,255,.065) !important;
    color: #e2e8f0 !important;
    border-radius: 16px;
    transition: transform .25s, border-color .25s, box-shadow .25s;
}
.action-card:hover, .action-tile:hover, .quick-action:hover {
    transform: translateY(-3px);
    border-color: rgba(0,180,216,.35) !important;
    box-shadow: 0 16px 36px rgba(0,0,0,.4) !important;
}
.action-card .action-icon, .action-tile .icon {
    background: rgba(0,180,216,.14) !important; color:#00b4d8 !important;
}

/* ── Anchor color in general content ───────────────────────────────────────── */
.content-card a:not(.btn):not(.dropdown-item):not(.nav-link),
.dashboard-page a:not(.btn):not(.dropdown-item):not(.nav-link) {
    color: #00b4d8;
}
.content-card a:hover, .dashboard-page a:hover { color: #38bdf8; }

/* ── Misc loading overlay ──────────────────────────────────────────────────── */
#loadingOverlay { background: rgba(8,15,31,.85) !important; }
#loadingOverlay .spinner-border { color:#00b4d8 !important; }

/* ================================================================================
   LEGACY CSS FAMILIES — override here so every existing view inherits the dark theme
   without needing per-page edits. Targets:
     - ris-bootstrap.css (.card-ris, .form-control-ris, .alert-ris-*, .btn-ris-*, ...)
     - dashboard.css     (.dashboard-container, .dashboard-header, .kpi-card, ...)
     - modern-tables.css (any -table or -filter classes)
     - hard-coded white / bg-light containers
   ================================================================================ */

/* ── .card-ris family (ris-bootstrap.css) ─────────────────────────────────── */
.card-ris {
    background: rgba(255,255,255,.028) !important;
    border: 1px solid rgba(255,255,255,.065) !important;
    border-radius: 16px !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.30) !important;
    overflow: hidden;
}
.card-ris:hover {
    transform: translateY(-3px) !important;
    border-color: rgba(0,180,216,.35) !important;
    box-shadow: 0 16px 36px rgba(0,0,0,.4) !important;
}
.card-header-ris {
    background: linear-gradient(135deg, rgba(0,120,212,.18) 0%, rgba(0,180,216,.10) 100%),
                rgba(0,0,0,.18) !important;
    color: #e2e8f0 !important;
    border-bottom: 1px solid rgba(255,255,255,.07) !important;
    padding: 1.15rem 1.5rem !important;
    font-weight: 700;
    display: flex; align-items: center; gap: .65rem;
}
.card-header-ris i { color: #00b4d8 !important; }
.card-body-ris {
    background: transparent !important;
    color: #cbd5e1 !important;
    padding: 1.5rem !important;
}

/* ── .form-control-ris / .form-label-ris / .form-section-title ─────────────── */
.form-control-ris {
    background: rgba(255,255,255,.05) !important;
    border: 2px solid rgba(255,255,255,.12) !important;
    color: #e2e8f0 !important;
    border-radius: 10px !important;
}
.form-control-ris:focus {
    border-color: #00b4d8 !important;
    box-shadow: 0 0 0 3px rgba(0,180,216,.18) !important;
    background: rgba(0,180,216,.04) !important;
}
.form-control-ris::placeholder { color: #475569 !important; }
.form-control-ris.is-invalid { border-color: #ef4444 !important; }
.form-control-ris.is-valid   { border-color: #10b981 !important; }
.form-label-ris {
    color: #94a3b8 !important;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: .82rem !important;
}
.form-label-ris i { color: #00b4d8 !important; }
.form-section-title {
    color: #e2e8f0 !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
}
.form-section-title i { color: #00b4d8 !important; }
.input-group-icon { color: #64748b !important; }
.form-group-ris label,
.form-check-label { color: #cbd5e1 !important; }

.form-check-input {
    background-color: rgba(255,255,255,.06) !important;
    border-color: rgba(255,255,255,.18) !important;
}
.form-check-input:checked {
    background-color: #00b4d8 !important;
    border-color: #00b4d8 !important;
}
.form-check-input:focus {
    border-color: #00b4d8 !important;
    box-shadow: 0 0 0 3px rgba(0,180,216,.18) !important;
}

/* ── .alert-ris family ─────────────────────────────────────────────────────── */
.alert-ris {
    background: rgba(255,255,255,.04) !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    border-left: 4px solid #94a3b8 !important;
    color: #e2e8f0 !important;
    border-radius: 12px !important;
}
.alert-ris-success {
    background: rgba(16,185,129,.08) !important;
    border-color: rgba(16,185,129,.25) !important;
    border-left-color: #10b981 !important;
    color: #10b981 !important;
}
.alert-ris-danger {
    background: rgba(239,68,68,.08) !important;
    border-color: rgba(239,68,68,.25) !important;
    border-left-color: #ef4444 !important;
    color: #ef4444 !important;
}
.alert-ris-warning {
    background: rgba(242,100,25,.08) !important;
    border-color: rgba(242,100,25,.25) !important;
    border-left-color: #f26419 !important;
    color: #f26419 !important;
}
.alert-ris-info {
    background: rgba(0,180,216,.08) !important;
    border-color: rgba(0,180,216,.25) !important;
    border-left-color: #00b4d8 !important;
    color: #00b4d8 !important;
}

/* ── .btn-ris family (ris-bootstrap.css) ───────────────────────────────────── */
.btn-ris-primary {
    background: linear-gradient(135deg, #0078d4 0%, #00b4d8 100%) !important;
    border: none !important;
    color: #fff !important;
    box-shadow: 0 8px 22px rgba(0,180,216,.32) !important;
}
.btn-ris-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(0,180,216,.45) !important;
    color: #fff !important;
}
.btn-ris-outline {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    color: #e2e8f0 !important;
}
.btn-ris-outline:hover {
    background: rgba(0,180,216,.08) !important;
    border-color: rgba(0,180,216,.35) !important;
    color: #fff !important;
}
.btn-ris-lg { border-radius: 12px !important; }

/* ── Service / Hero / Stats cards (ris-bootstrap.css) ──────────────────────── */
.service-card-ris {
    background: rgba(255,255,255,.028) !important;
    border: 1px solid rgba(255,255,255,.065) !important;
    color: #e2e8f0 !important;
}
.service-icon-ris        { background: rgba(0,180,216,.14) !important; color: #00b4d8 !important; }
.service-title-ris       { color: #e2e8f0 !important; }
.service-description-ris { color: #94a3b8 !important; }
.hero-section-ris        { background: linear-gradient(135deg, rgba(0,120,212,.18) 0%, rgba(0,180,216,.10) 100%), rgba(8,15,31,.86) !important; color: #e2e8f0 !important; }
.hero-title-ris          { color: #e2e8f0 !important; }
.hero-subtitle-ris       { color: #94a3b8 !important; }
.hero-badge-ris          { background: rgba(0,180,216,.14) !important; color: #00b4d8 !important; border: 1px solid rgba(0,180,216,.35) !important; }
.stats-section-ris       { background: rgba(255,255,255,.028) !important; color: #e2e8f0 !important; }
.stat-item-ris           { color: #e2e8f0 !important; }
.stat-number-ris         { color: #00b4d8 !important; }
.stat-label-ris          { color: #94a3b8 !important; }

/* ── dashboard.css overrides (dashboard-container / -header / kpi-card) ────── */
.dashboard-container {
    background: transparent !important;
    color: #e2e8f0 !important;
}
.dashboard-header {
    background: linear-gradient(135deg, rgba(0,120,212,.18) 0%, rgba(0,180,216,.10) 100%),
                rgba(8,15,31,.86) !important;
    color: #e2e8f0 !important;
    border: 1px solid rgba(255,255,255,.07) !important;
    border-radius: 20px !important;
    box-shadow: 0 16px 48px rgba(0,0,0,.45) !important;
    padding: 1.75rem 2rem !important;
}
.dashboard-header h1,
.dashboard-header h2,
.dashboard-header h3 { color: #e2e8f0 !important; }
.dashboard-header p { color: #94a3b8 !important; }
.dashboard-header i { color: #00b4d8 !important; }
.dashboard-content {
    background: transparent !important;
    color: #cbd5e1 !important;
}
.kpi-card {
    background: rgba(255,255,255,.028) !important;
    border: 1px solid rgba(255,255,255,.065) !important;
    border-radius: 16px !important;
    color: #e2e8f0 !important;
    box-shadow: none !important;
}
.kpi-card:hover {
    transform: translateY(-3px) !important;
    border-color: rgba(0,180,216,.35) !important;
    box-shadow: 0 16px 36px rgba(0,0,0,.4) !important;
}
.kpi-icon  { background: rgba(0,180,216,.14) !important; color: #00b4d8 !important; }
.kpi-label { color: #94a3b8 !important; text-transform: uppercase; letter-spacing: .07em; font-size: .72rem !important; }
.kpi-value { color: #e2e8f0 !important; }
.kpi-subtitle { color: #64748b !important; }
.kpi-card-primary .kpi-icon { background: rgba(0,180,216,.14) !important;  color: #00b4d8 !important; }
.kpi-card-success .kpi-icon { background: rgba(16,185,129,.14) !important; color: #10b981 !important; }
.kpi-card-info    .kpi-icon { background: rgba(139,92,246,.14) !important; color: #8b5cf6 !important; }
.kpi-card-warning .kpi-icon { background: rgba(242,100,25,.14) !important; color: #f26419 !important; }
.kpi-card-danger  .kpi-icon { background: rgba(239,68,68,.14) !important;  color: #ef4444 !important; }

.stats-grid { color: #e2e8f0 !important; }
.stats-card {
    background: rgba(255,255,255,.028) !important;
    border: 1px solid rgba(255,255,255,.065) !important;
    color: #e2e8f0 !important;
    border-radius: 16px !important;
}
.stats-card .card-header,
.stats-card-header {
    background: rgba(0,0,0,.18) !important;
    border-bottom: 1px solid rgba(255,255,255,.07) !important;
    color: #e2e8f0 !important;
}
.stats-card h1, .stats-card h2, .stats-card h3,
.stats-card h4, .stats-card h5, .stats-card h6 { color: #e2e8f0 !important; }
.stat-item {
    background: transparent !important;
    border-bottom: 1px solid rgba(255,255,255,.05) !important;
    color: #cbd5e1 !important;
}
.stat-item-label { color: #94a3b8 !important; }
.stat-item-value { color: #e2e8f0 !important; font-weight: 700; }

/* ── modern-tables.css overrides (used by Admin/Reception list pages) ───────── */
.filter-card,
.modern-table-card,
.modern-table-wrapper,
.table-filter-card {
    background: rgba(255,255,255,.028) !important;
    border: 1px solid rgba(255,255,255,.065) !important;
    color: #e2e8f0 !important;
    border-radius: 16px !important;
}
.modern-table thead th,
.modern-table-header th {
    background: rgba(255,255,255,.03) !important;
    color: #94a3b8 !important;
    border-color: rgba(255,255,255,.07) !important;
}
.modern-table tbody td {
    background: transparent !important;
    color: #cbd5e1 !important;
    border-color: rgba(255,255,255,.05) !important;
}
.modern-table tbody tr:hover td { background: rgba(0,180,216,.04) !important; }
.table-action-bar,
.search-bar {
    background: rgba(255,255,255,.028) !important;
    border: 1px solid rgba(255,255,255,.065) !important;
    color: #e2e8f0 !important;
}

/* ── Bootstrap "bg-light" / "bg-white" defaults that shouldn't be bright ───── */
.bg-light, .bg-white {
    background: rgba(255,255,255,.028) !important;
    color: #e2e8f0 !important;
}
.bg-light *, .bg-white * { color: inherit; }
.text-dark { color: #e2e8f0 !important; }
.text-black { color: #e2e8f0 !important; }

/* ── Generic Bootstrap .card without -modern or -ris suffix ────────────────── */
.card:not(.card-ris):not(.card-modern):not([class*="bg-"]) {
    background: rgba(255,255,255,.028) !important;
    border: 1px solid rgba(255,255,255,.065) !important;
    color: #e2e8f0 !important;
    border-radius: 16px !important;
}
.card:not(.card-ris):not(.card-modern) > .card-header {
    background: rgba(0,0,0,.18) !important;
    border-bottom: 1px solid rgba(255,255,255,.07) !important;
    color: #e2e8f0 !important;
}
.card:not(.card-ris):not(.card-modern) > .card-header.bg-info,
.card:not(.card-ris):not(.card-modern) > .card-header.bg-primary {
    background: linear-gradient(135deg, rgba(0,120,212,.22) 0%, rgba(0,180,216,.16) 100%) !important;
    color: #fff !important;
}
.card:not(.card-ris):not(.card-modern) > .card-body {
    background: transparent !important;
    color: #cbd5e1 !important;
}

/* ── .bg-particles section background ──────────────────────────────────────── */
.bg-particles {
    background: linear-gradient(135deg, rgba(0,120,212,.05) 0%, rgba(16,185,129,.04) 100%),
                #080f1f !important;
}

/* ── body itself if a legacy file forced it to white ───────────────────────── */
body { background: #080f1f !important; color: #e2e8f0 !important; }

