﻿/* WPG Analytics — Dark mode component overrides */

html[data-wpg-theme="dark"] body.wpg-app .main-header,
html[data-wpg-theme="dark"] body.wpg-admin .wpg-admin-mobile-bar {
    background: var(--wpg-header-glass);
    border-bottom-color: var(--wpg-border);
}

html[data-wpg-theme="dark"] .card,
html[data-wpg-theme="dark"] .modal-content,
html[data-wpg-theme="dark"] .wpg-table-wrap,
html[data-wpg-theme="dark"] .plan-card,
html[data-wpg-theme="dark"] .stat-card,
html[data-wpg-theme="dark"] .wpg-metric-card,
html[data-wpg-theme="dark"] .wpg-stat-tile,
html[data-wpg-theme="dark"] .wpg-info-box,
html[data-wpg-theme="dark"] .info-box,
html[data-wpg-theme="dark"] .chart-container {
    background: var(--wpg-surface);
    border-color: var(--wpg-border);
    color: var(--wpg-text);
}

html[data-wpg-theme="dark"] .card-header,
html[data-wpg-theme="dark"] .wpg-table-wrap .table thead th,
html[data-wpg-theme="dark"] .wpg-table-toolbar,
html[data-wpg-theme="dark"] .wpg-table-pagination {
    background: transparent;
    color: var(--wpg-text-muted);
    border-color: var(--wpg-border);
}

html[data-wpg-theme="dark"] .wpg-table-toolbar {
    background: transparent;
}

html[data-wpg-theme="dark"] .table,
html[data-wpg-theme="dark"] .table td,
html[data-wpg-theme="dark"] .table th {
    color: var(--wpg-text);
    border-color: var(--wpg-border);
    --bs-table-bg: transparent;
    --bs-table-striped-bg: rgba(255,255,255,.03);
    --bs-table-hover-bg: rgba(59,130,246,.08);
}

html[data-wpg-theme="dark"] .form-control,
html[data-wpg-theme="dark"] .form-select {
    background: var(--wpg-surface-2);
    border-color: var(--wpg-border);
    color: var(--wpg-text);
}

html[data-wpg-theme="dark"] .form-control:focus,
html[data-wpg-theme="dark"] .form-select:focus {
    background: var(--wpg-surface-2);
    color: var(--wpg-text);
    border-color: rgba(59,130,246,.5);
}

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

html[data-wpg-theme="dark"] .btn-outline-secondary {
    border-color: var(--wpg-border-strong);
    color: var(--wpg-text-muted);
}

html[data-wpg-theme="dark"] .btn-outline-secondary:hover {
    background: var(--wpg-surface-2);
    color: var(--wpg-text);
}

html[data-wpg-theme="dark"] .alert-info,
html[data-wpg-theme="dark"] .wpg-help-banner {
    background: linear-gradient(135deg, rgba(59,130,246,.14), rgba(6,182,212,.08));
    border-color: rgba(59,130,246,.28);
    color: var(--wpg-text);
}

html[data-wpg-theme="dark"] .alert-success {
    background: rgba(34,197,94,.12);
    border-color: rgba(34,197,94,.25);
    color: #86efac;
}

html[data-wpg-theme="dark"] .alert-danger {
    background: rgba(239,68,68,.12);
    border-color: rgba(239,68,68,.25);
    color: #fca5a5;
}

html[data-wpg-theme="dark"] .bg-light {
    background: var(--wpg-surface-2) !important;
}

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

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

html[data-wpg-theme="dark"] .wpg-modal .modal-header {
    background: linear-gradient(180deg, rgba(59,130,246,.08), transparent);
}

html[data-wpg-theme="dark"] .btn-close {
    filter: invert(1) grayscale(1);
    opacity: .65;
}

/* ─── Toast ─── */
html[data-wpg-theme="dark"] .wpg-auth-theme .ti-sun { display: none; }
html[data-wpg-theme="dark"] .wpg-auth-theme .ti-moon { display: inline; }
html[data-wpg-theme="light"] .wpg-auth-theme .ti-sun,
:root:not([data-wpg-theme="dark"]) .wpg-auth-theme .ti-sun { display: inline; }
html[data-wpg-theme="light"] .wpg-auth-theme .ti-moon,
:root:not([data-wpg-theme="dark"]) .wpg-auth-theme .ti-moon { display: none; }

html[data-wpg-theme="dark"] .wpg-toast {
    background: var(--wpg-surface);
    border-color: var(--wpg-border);
    color: var(--wpg-text);
    box-shadow: var(--wpg-shadow-md);
}

html[data-wpg-theme="dark"] body.wpg-auth #wpgToastContainer .wpg-toast {
    background: var(--wpg-surface);
    border-color: var(--wpg-border);
    color: var(--wpg-text);
    box-shadow: var(--wpg-shadow-md);
}

html[data-wpg-theme="dark"] .wpg-toast-success {
    background: rgba(6,78,59,.92);
    color: #a7f3d0;
    border-color: rgba(16,185,129,.35);
}

html[data-wpg-theme="dark"] .wpg-toast-danger {
    background: rgba(127,29,29,.92);
    color: #fecaca;
    border-color: rgba(239,68,68,.35);
}

html[data-wpg-theme="dark"] .wpg-toast-warning {
    background: rgba(120,53,15,.92);
    color: #fde68a;
    border-color: rgba(245,158,11,.35);
}

html[data-wpg-theme="dark"] .wpg-toast-info {
    background: rgba(30,58,138,.92);
    color: #bfdbfe;
    border-color: rgba(59,130,246,.35);
}

/* ─── Loaders & overlays ─── */
html[data-wpg-theme="dark"] .wpg-page-spinner {
    border-color: rgba(255,255,255,.12);
    border-top-color: var(--wpg-accent);
}

html[data-wpg-theme="dark"] .wpg-loader-wrap.wpg-loading::before,
html[data-wpg-theme="dark"] body.wpg-app .loader-section {
    background: var(--wpg-loader-overlay);
}

html[data-wpg-theme="dark"] #wpgPageOverlay {
    background: rgba(0,0,0,.55);
}

html[data-wpg-theme="dark"] .wpg-subscription-banner--warning {
    background: linear-gradient(135deg, rgba(245,158,11,.14), rgba(245,158,11,.04));
    border-color: rgba(245,158,11,.32);
    color: #fcd34d;
}

html[data-wpg-theme="dark"] .wpg-subscription-banner--warning .wpg-subscription-banner__cta {
    background: rgba(255,255,255,.06);
    border-color: rgba(245,158,11,.35);
    color: #fbbf24;
}

html[data-wpg-theme="dark"] .wpg-subscription-banner--danger {
    background: linear-gradient(135deg, rgba(239,68,68,.16), rgba(239,68,68,.05));
    border-color: rgba(239,68,68,.35);
    color: #fca5a5;
}

html[data-wpg-theme="dark"] .wpg-subscription-banner--danger .wpg-subscription-banner__cta {
    background: rgba(255,255,255,.06);
    border-color: rgba(239,68,68,.35);
    color: #f87171;
}

html[data-wpg-theme="dark"] .wpg-subscription-banner--info {
    background: linear-gradient(135deg, rgba(59,130,246,.14), rgba(59,130,246,.04));
    border-color: rgba(59,130,246,.3);
    color: #93c5fd;
}

html[data-wpg-theme="dark"] .wpg-gsc-fetch-card {
    background: var(--wpg-surface);
    border-color: var(--wpg-border);
}

html[data-wpg-theme="dark"] .wpg-gsc-guide-type {
    background: var(--wpg-surface-2);
    border-color: var(--wpg-border);
}

html[data-wpg-theme="dark"] .wpg-gsc-inline-note {
    background: linear-gradient(135deg, rgba(59,130,246,.1), rgba(6,182,212,.05));
    border-color: rgba(59,130,246,.22);
}

html[data-wpg-theme="dark"] .wpg-empty-state {
    color: var(--wpg-text);
}

html[data-wpg-theme="dark"] .wpg-empty-state .wpg-empty-icon {
    background: var(--wpg-empty-icon-bg);
    border: 1px solid var(--wpg-empty-icon-border);
    color: #93c5fd;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}

html[data-wpg-theme="dark"] .wpg-table-empty {
    color: var(--wpg-text-muted);
}

html[data-wpg-theme="dark"] .wpg-table-empty i {
    opacity: .5;
}

/* ─── Theme toggle icons ─── */
html[data-wpg-theme="dark"] .wpg-theme-toggle .ti-sun { display: none; }
html[data-wpg-theme="dark"] .wpg-theme-toggle .ti-moon { display: inline; }
html[data-wpg-theme="light"] .wpg-theme-toggle .ti-sun,
:root:not([data-wpg-theme="dark"]) .wpg-theme-toggle .ti-sun { display: inline; }
html[data-wpg-theme="light"] .wpg-theme-toggle .ti-moon,
:root:not([data-wpg-theme="dark"]) .wpg-theme-toggle .ti-moon { display: none; }

html[data-wpg-theme="dark"] .snippet-box {
    background: #0d1117;
    border-color: var(--wpg-border);
    color: #e2e8f0;
}

html[data-wpg-theme="dark"] .wpg-table-wrap .table tbody tr:hover {
    background: rgba(59,130,246,.08);
}

html[data-wpg-theme="dark"] .dropdown-menu {
    background: var(--wpg-surface);
    border-color: var(--wpg-border);
}

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

html[data-wpg-theme="dark"] .dropdown-item:hover {
    background: var(--wpg-surface-2);
}

/* ─── Pagination ─── */
html[data-wpg-theme="dark"] .wpg-pagination .page-btn {
    background: var(--wpg-surface-2);
    border-color: var(--wpg-border);
    color: var(--wpg-text);
}

html[data-wpg-theme="dark"] .wpg-pagination .page-btn:hover:not(:disabled):not(.active) {
    background: rgba(59,130,246,.12);
    border-color: rgba(59,130,246,.35);
    color: #93c5fd;
}

/* ─── Accordion & list ─── */
html[data-wpg-theme="dark"] .accordion-item {
    background: var(--wpg-surface);
    border-color: var(--wpg-border);
    color: var(--wpg-text);
}

html[data-wpg-theme="dark"] .accordion-button {
    background: var(--wpg-surface-2);
    color: var(--wpg-text);
}

html[data-wpg-theme="dark"] .accordion-button:not(.collapsed) {
    background: rgba(59,130,246,.12);
    color: #93c5fd;
}

html[data-wpg-theme="dark"] .accordion-button::after {
    filter: invert(1) opacity(.7);
}

html[data-wpg-theme="dark"] .list-group-item {
    background: var(--wpg-surface);
    border-color: var(--wpg-border);
    color: var(--wpg-text);
}

/* ─── Skeleton shimmer ─── */
html[data-wpg-theme="dark"] .wpg-skeleton {
    background: linear-gradient(
        90deg,
        var(--wpg-surface-2) 0%,
        rgba(148,163,184,.22) 50%,
        var(--wpg-surface-2) 100%
    );
    background-size: 200% 100%;
}

/* ─── Jalali datepicker ─── */
html[data-wpg-theme="dark"] jdp-container {
    --text-color: #b6bee3;
    background: #1a2234;
    box-shadow: 0 0.25rem 1rem rgba(0,0,0,.55);
}

html[data-wpg-theme="dark"] jdp-container .jdp-day-name {
    color: #94a3b8;
}

html[data-wpg-theme="dark"] jdp-container .jdp-month,
html[data-wpg-theme="dark"] jdp-container .jdp-month input,
html[data-wpg-theme="dark"] jdp-container .jdp-month select,
html[data-wpg-theme="dark"] jdp-container .jdp-time,
html[data-wpg-theme="dark"] jdp-container .jdp-time input,
html[data-wpg-theme="dark"] jdp-container .jdp-time select,
html[data-wpg-theme="dark"] jdp-container .jdp-year,
html[data-wpg-theme="dark"] jdp-container .jdp-year input,
html[data-wpg-theme="dark"] jdp-container .jdp-year select {
    color: #e2e8f0;
}

html[data-wpg-theme="dark"] jdp-container .jdp-icon-minus,
html[data-wpg-theme="dark"] jdp-container .jdp-icon-plus {
    fill: #e2e8f0;
}

html[data-wpg-theme="dark"] jdp-container .jdp-btn-empty {
    color: #94a3b8;
}

/* Legacy style.css overrides inside app shell */
html[data-wpg-theme="dark"] body.wpg-app .table {
    background: var(--wpg-surface);
    box-shadow: var(--wpg-shadow-xs);
}

html[data-wpg-theme="dark"] body.wpg-app .card-header {
    color: var(--wpg-text);
}

html[data-wpg-theme="dark"] body.wpg-app .online-users-card {
    background: var(--wpg-surface);
    border: 1px solid var(--wpg-border);
    box-shadow: var(--wpg-shadow-md);
}

html[data-wpg-theme="dark"] body.wpg-app .online-number {
    color: var(--wpg-text);
}

html[data-wpg-theme="dark"] body.wpg-app .online-label,
html[data-wpg-theme="dark"] body.wpg-app .current-pages-title {
    color: var(--wpg-text-muted);
}

html[data-wpg-theme="dark"] .wpg-app .onboard-step span {
    background: var(--wpg-surface-2);
    color: var(--wpg-text-muted);
    border-color: var(--wpg-border);
}

html[data-wpg-theme="dark"] .wpg-app .onboard-step span.done {
    background: rgba(59,130,246,.15);
    color: #93c5fd;
    border-color: rgba(59,130,246,.28);
}

html[data-wpg-theme="dark"] .wpg-modal .modal-content {
    background: var(--wpg-surface);
    color: var(--wpg-text);
}

html[data-wpg-theme="dark"] #mobileFilterModal .modal-content {
    background: var(--wpg-surface);
    color: var(--wpg-text);
}

html[data-wpg-theme="dark"] #mobileFilterModal .modal-title {
    color: var(--wpg-text);
}
