/* aya - SNC theme system (light/dark) */
:root,
[data-theme="light"] {
    --snc-bg: #f8f9fa;
    --snc-bg-elevated: #ffffff;
    --snc-bg-muted: #f1f3f5;
    --snc-text: #1f2937;
    --snc-text-muted: #6b7280;
    --snc-border: #e5e7eb;
    --snc-primary: #2d5a5e;
    --snc-primary-hover: #1e4044;
    --snc-accent: #f3b33d;
    --snc-success: #10b981;
    --snc-danger: #ef4444;
    --snc-warning: #f59e0b;
    --snc-info: #3b82f6;
    --snc-card-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    --snc-navbar-bg: #ffffff;
    --snc-footer-bg: #1f2937;
    --snc-footer-text: #f3f4f6;
    --snc-link: #2d5a5e;
}

[data-theme="dark"] {
    --snc-bg: #0f172a;
    --snc-bg-elevated: #1e293b;
    --snc-bg-muted: #1a2438;
    --snc-text: #e5e7eb;
    --snc-text-muted: #9ca3af;
    --snc-border: #334155;
    --snc-primary: #4ade80;
    --snc-primary-hover: #22c55e;
    --snc-accent: #fbbf24;
    --snc-success: #10b981;
    --snc-danger: #f87171;
    --snc-warning: #fbbf24;
    --snc-info: #60a5fa;
    --snc-card-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
    --snc-navbar-bg: #1e293b;
    --snc-footer-bg: #020617;
    --snc-footer-text: #cbd5e1;
    --snc-link: #4ade80;
}

/* Body and root */
body {
    background-color: var(--snc-bg) !important;
    color: var(--snc-text) !important;
    transition: background-color 0.3s ease, color 0.3s ease;
}

/* Cards and containers */
[data-theme="dark"] .card,
[data-theme="dark"] .form-box,
[data-theme="dark"] .bg-white,
[data-theme="dark"] .bg-light {
    background-color: var(--snc-bg-elevated) !important;
    color: var(--snc-text) !important;
    border-color: var(--snc-border);
}

[data-theme="dark"] .text-muted {
    color: var(--snc-text-muted) !important;
}

[data-theme="dark"] .text-dark,
[data-theme="dark"] .text-snc-dark {
    color: var(--snc-text) !important;
}

/* Forms */
[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select,
[data-theme="dark"] .input-group-text {
    background-color: var(--snc-bg-muted);
    color: var(--snc-text);
    border-color: var(--snc-border);
}

[data-theme="dark"] .form-control::placeholder {
    color: var(--snc-text-muted);
}

[data-theme="dark"] .form-control:focus {
    background-color: var(--snc-bg-muted);
    color: var(--snc-text);
    border-color: var(--snc-primary);
    box-shadow: 0 0 0 0.25rem rgba(74, 222, 128, 0.25);
}

/* Tables */
[data-theme="dark"] .table {
    color: var(--snc-text);
    --bs-table-bg: var(--snc-bg-elevated);
    --bs-table-color: var(--snc-text);
    --bs-table-striped-bg: var(--snc-bg-muted);
    --bs-table-striped-color: var(--snc-text);
    --bs-table-border-color: var(--snc-border);
}

/* Modals */
[data-theme="dark"] .modal-content {
    background-color: var(--snc-bg-elevated);
    color: var(--snc-text);
    border-color: var(--snc-border);
}

[data-theme="dark"] .modal-header,
[data-theme="dark"] .modal-footer {
    border-color: var(--snc-border);
}

/* Dropdown */
[data-theme="dark"] .dropdown-menu {
    background-color: var(--snc-bg-elevated);
    border-color: var(--snc-border);
}

[data-theme="dark"] .dropdown-item {
    color: var(--snc-text);
}

[data-theme="dark"] .dropdown-item:hover,
[data-theme="dark"] .dropdown-item:focus {
    background-color: var(--snc-bg-muted);
    color: var(--snc-text);
}

[data-theme="dark"] .dropdown-divider {
    border-color: var(--snc-border);
}

/* Navbar */
[data-theme="dark"] .navbar {
    background-color: var(--snc-navbar-bg);
    border-color: var(--snc-border);
}

[data-theme="dark"] .nav-link {
    color: var(--snc-text);
}

[data-theme="dark"] .nav-link:hover,
[data-theme="dark"] .nav-link.active {
    color: var(--snc-primary);
}

/* Sidebar */
[data-theme="dark"] .mobile-sidebar {
    background-color: var(--snc-bg-elevated);
    color: var(--snc-text);
}

[data-theme="dark"] .sidebar-link {
    color: var(--snc-text);
}

[data-theme="dark"] .sidebar-link:hover,
[data-theme="dark"] .sidebar-link.active {
    background-color: var(--snc-bg-muted);
    color: var(--snc-primary);
}

/* Borders */
[data-theme="dark"] .border,
[data-theme="dark"] .border-top,
[data-theme="dark"] .border-bottom,
[data-theme="dark"] .border-start,
[data-theme="dark"] .border-end {
    border-color: var(--snc-border) !important;
}

/* Buttons */
[data-theme="dark"] .btn-outline-secondary {
    color: var(--snc-text-muted);
    border-color: var(--snc-border);
}

[data-theme="dark"] .btn-outline-secondary:hover {
    background-color: var(--snc-bg-muted);
    color: var(--snc-text);
}

/* Toggle switch (theme button) */
.theme-toggle-btn {
    background: transparent;
    border: 1px solid var(--snc-border);
    color: var(--snc-text);
    padding: 6px 10px;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.theme-toggle-btn:hover {
    background-color: var(--snc-bg-muted);
}

.theme-toggle-btn .bi {
    font-size: 1.1rem;
}

/* Language pill */
.lang-switch {
    background: transparent;
    border: 1px solid var(--snc-border);
    color: var(--snc-text);
    padding: 6px 12px;
    border-radius: 8px;
    text-decoration: none;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.9rem;
}

.lang-switch:hover {
    background-color: var(--snc-bg-muted);
    color: var(--snc-text);
}

/* Office dashboard adjustments for dark mode */
[data-theme="dark"] .balance-box,
[data-theme="dark"] .money-inf,
[data-theme="dark"] .stat-card,
[data-theme="dark"] .info-card {
    background-color: var(--snc-bg-elevated) !important;
    color: var(--snc-text) !important;
    border-color: var(--snc-border) !important;
}

[data-theme="dark"] .footer-premium {
    background-color: var(--snc-footer-bg) !important;
    color: var(--snc-footer-text) !important;
}

[data-theme="dark"] .footer-premium a {
    color: var(--snc-footer-text) !important;
}

[data-theme="dark"] .footer-premium a:hover {
    color: var(--snc-primary) !important;
}

/* Alerts in dark mode */
[data-theme="dark"] .alert-info {
    background-color: rgba(96, 165, 250, 0.1);
    color: #93c5fd;
    border-color: rgba(96, 165, 250, 0.3);
}

[data-theme="dark"] .alert-success {
    background-color: rgba(16, 185, 129, 0.1);
    color: #6ee7b7;
    border-color: rgba(16, 185, 129, 0.3);
}

[data-theme="dark"] .alert-danger {
    background-color: rgba(248, 113, 113, 0.1);
    color: #fca5a5;
    border-color: rgba(248, 113, 113, 0.3);
}

[data-theme="dark"] .alert-warning {
    background-color: rgba(251, 191, 36, 0.1);
    color: #fde68a;
    border-color: rgba(251, 191, 36, 0.3);
}

/* Code/inputs scrollbar dark */
[data-theme="dark"] ::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

[data-theme="dark"] ::-webkit-scrollbar-track {
    background: var(--snc-bg);
}

[data-theme="dark"] ::-webkit-scrollbar-thumb {
    background: var(--snc-border);
    border-radius: 5px;
}

[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
    background: var(--snc-text-muted);
}
