/* ============================================================================
   DARK THEME - Matches recovery.rccams.in color scheme
   ============================================================================
   Include this in all mng/ pages for consistent dark theme.
   Primary: #00d4ff (cyan)   Dark BG: #1a1a2e   Card BG: #16213e
   ============================================================================ */

:root {
    --primary-color: #00d4ff;
    --primary-hover: #00b8e6;
    --dark-bg: #1a1a2e;
    --card-bg: #16213e;
    --secondary-bg: #1e1e3a;
    --text-color: #e2e8f0;
    --text-muted: #a0aec0;
    --border-color: rgba(255, 255, 255, 0.1);
    --input-bg: #1f2940;
    --input-border: #2d3a4f;
}

/* Base */
body {
    background-color: var(--dark-bg) !important;
    color: var(--text-color) !important;
}

/* Typography */
h1, h2, h3, h4, h5, h6 { color: var(--text-color); }
p, span, div, td, th, li, label { color: var(--text-color); }
a { color: var(--primary-color); }
a:hover { color: var(--primary-hover); }
small, .small { color: var(--text-muted) !important; }
.subtitle, .text-muted { color: var(--text-muted) !important; }

/* Cards & Containers */
.login-container,
.card,
.contact-info,
.stat-card,
.info-card,
.detail-card {
    background: var(--card-bg) !important;
    color: var(--text-color) !important;
    border-color: var(--border-color) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2) !important;
}

/* Page containers with white backgrounds */
div[style*="background: white"],
div[style*="background:white"],
div[style*="background: #fff"],
div[style*="background:#fff"] {
    background: var(--card-bg) !important;
}

/* Tables */
table { color: var(--text-color) !important; }
table thead th {
    background: rgba(0, 212, 255, 0.1) !important;
    color: var(--primary-color) !important;
    border-bottom: 2px solid var(--primary-color) !important;
}
table tbody tr { border-color: var(--border-color) !important; }
table tbody tr:hover { background: rgba(0, 212, 255, 0.05) !important; }
table td, table th {
    color: var(--text-color) !important;
    border-color: var(--border-color) !important;
}
table.table-striped tbody tr:nth-child(odd) {
    background: rgba(255, 255, 255, 0.02) !important;
}

/* Forms */
input[type="text"],
input[type="password"],
input[type="email"],
input[type="number"],
input[type="tel"],
input[type="date"],
input[type="search"],
input[type="url"],
textarea,
select,
.form-control,
.form-select {
    background: var(--input-bg) !important;
    border-color: var(--input-border) !important;
    color: var(--text-color) !important;
}

input:focus,
textarea:focus,
select:focus,
.form-control:focus,
.form-select:focus {
    border-color: var(--primary-color) !important;
    box-shadow: 0 0 0 0.2rem rgba(0, 212, 255, 0.25) !important;
}

input::placeholder,
textarea::placeholder {
    color: var(--text-muted) !important;
}

label {
    color: var(--text-color) !important;
}

/* Buttons */
.btn, button[type="submit"] {
    font-weight: 600;
}

.btn-primary, .btn {
    background: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    color: var(--dark-bg) !important;
}

.btn-primary:hover, .btn:hover {
    background: var(--primary-hover) !important;
    border-color: var(--primary-hover) !important;
}

/* Navigation */
.top-navigation {
    background: linear-gradient(135deg, #16213e 0%, #0f1629 100%) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3) !important;
}

.nav-link {
    color: var(--text-color) !important;
}

.nav-link:hover {
    background: rgba(0, 212, 255, 0.08) !important;
    color: var(--primary-color) !important;
    border-bottom-color: var(--primary-color) !important;
}

/* Dropdowns */
.dropdown-menu {
    background: var(--card-bg) !important;
    border: 1px solid var(--border-color) !important;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3) !important;
}

.dropdown-item {
    color: var(--text-color) !important;
}

.dropdown-item:hover {
    background: rgba(0, 212, 255, 0.1) !important;
    color: var(--primary-color) !important;
    border-left-color: var(--primary-color) !important;
}

.dropdown-item .description {
    color: var(--text-muted) !important;
}

.dropdown-header {
    background: linear-gradient(135deg, #16213e 0%, #0f1629 100%) !important;
    color: var(--primary-color) !important;
}

/* Hover indicator arrow */
.nav-item:hover::after {
    border-bottom-color: var(--card-bg) !important;
}

/* Menu items / Dashboard cards */
.menu-item {
    background: var(--card-bg) !important;
    color: var(--text-color) !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2) !important;
}

.menu-item:hover {
    box-shadow: 0 8px 25px rgba(0, 212, 255, 0.15) !important;
    border-color: var(--primary-color) !important;
}

.menu-item h3 {
    color: var(--primary-color) !important;
}

.menu-item p {
    color: var(--text-muted) !important;
}

.menu-item::before {
    background: var(--primary-color) !important;
}

.menu-section h3 {
    color: var(--primary-color) !important;
    border-bottom-color: var(--primary-color) !important;
}

/* Quick action buttons */
.menu-item.quick-action {
    background: var(--primary-color) !important;
    color: var(--dark-bg) !important;
}

.menu-item.quick-action h3 {
    color: var(--dark-bg) !important;
}

.dropdown-item.quick-action {
    background: var(--primary-color) !important;
    color: var(--dark-bg) !important;
}

.dropdown-item.quick-action:hover {
    background: var(--primary-hover) !important;
}

.dropdown-item.quick-action .title,
.dropdown-item.quick-action .description {
    color: var(--dark-bg) !important;
}

/* Alerts */
.alert-success, .success {
    background: rgba(72, 187, 120, 0.15) !important;
    color: var(--text-color) !important;
    border-color: #48bb78 !important;
}

.alert-error, .error {
    background: rgba(245, 101, 101, 0.15) !important;
    color: var(--text-color) !important;
    border-color: #f56565 !important;
}

.alert-warning {
    background: rgba(236, 201, 75, 0.15) !important;
    color: var(--text-color) !important;
    border-color: #ecc94b !important;
}

.alert-info {
    background: rgba(0, 212, 255, 0.15) !important;
    color: var(--text-color) !important;
    border-color: var(--primary-color) !important;
}

/* Pagination */
.pagination a, .pagination span {
    background: var(--card-bg) !important;
    color: var(--text-color) !important;
    border-color: var(--border-color) !important;
}

.pagination .active, .pagination a:hover {
    background: var(--primary-color) !important;
    color: var(--dark-bg) !important;
}

/* Stat/Dashboard widgets */
.stat-box, .stat-card, .dashboard-card, .widget {
    background: var(--card-bg) !important;
    color: var(--text-color) !important;
    border-color: var(--border-color) !important;
}

/* Badges */
.badge {
    font-weight: 500;
}

/* Sections with light backgrounds */
.demo-credentials,
.section-light,
div[style*="background: #f8f9fa"],
div[style*="background:#f8f9fa"],
div[style*="background: #f5f5f5"],
div[style*="background: #eee"] {
    background: var(--secondary-bg) !important;
    color: var(--text-color) !important;
}

/* Footer */
.footer, footer {
    background: var(--card-bg) !important;
    color: var(--text-color) !important;
}

/* Dividers */
hr, .divider, .dropdown-divider {
    border-color: var(--border-color) !important;
    background: var(--border-color) !important;
}

/* Modal */
.modal-content {
    background: var(--card-bg) !important;
    color: var(--text-color) !important;
}

.modal-header, .modal-footer {
    border-color: var(--border-color) !important;
}

/* Code blocks */
code {
    background: rgba(0, 212, 255, 0.1);
    color: var(--primary-color);
    padding: 2px 6px;
    border-radius: 4px;
}

/* Mobile menu */
.mobile-menu-toggle {
    color: var(--text-color) !important;
}

@media (max-width: 768px) {
    .nav-menu {
        background: var(--card-bg) !important;
        box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3) !important;
    }
}

/* Scrollbar styling */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: var(--dark-bg); }
::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.15); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: rgba(255, 255, 255, 0.25); }

/* Selection */
::selection {
    background: rgba(0, 212, 255, 0.3);
    color: white;
}
