/* ============ تم روشن (پیش‌فرض — تکمیل متغیرها) ============ */
:root {
    --surface-2:       #f8fafc;
    --surface-3:       #f1f5f9;
    --surface-hover:   #fafbff;
    --border-strong:   #cbd5e1;
    --text-3:          #94a3b8;
    --input-bg:        #ffffff;
    --input-border:    #e2e8f0;
    --table-head-bg:   #f8fafc;
    --table-row-hover: #fafbff;
    --subs-row-hover-bg:     #eef2ff;
    --subs-row-hover-accent: inset -3px 0 0 #a5b4fc;
    --table-row-border:#f1f5f9;
    --overlay-bg:      rgba(15, 23, 42, 0.48);
    --modal-loading-bg:rgba(255, 255, 255, 0.88);
    --filter-bar-bg:   linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    --filter-bar-border:#e2e8f0;
    --chip-bg:         var(--primary-light);
    --scrollbar-thumb: #cbd5e1;
    --scrollbar-track: transparent;
    --topbar-bg:       transparent;
    --focus-ring:      rgba(79, 70, 229, 0.12);
    --btn-ghost-hover: #e2e8f0;
    --btn-danger-hover:#fee2e2;
    --code-bg:         #0f172a;
    --code-fg:         #e2e8f0;
    --login-card-bg:   rgba(255, 255, 255, 0.97);
    --theme-toggle-bg: #ffffff;
    --theme-toggle-border: var(--border);
    --panel-box-bg:        linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
    --panel-box-border:    #e2e8f0;
    --panel-card-bg:       #ffffff;
    --panel-section-bg:    #f8fafc;
    --panel-section-head-bg:#ffffff;
    --panel-muted-bg:      #f8fafc;
    --panel-accent-bg:     linear-gradient(135deg, #fafbff 0%, #f8fafc 100%);
    --panel-item-bg:       #ffffff;
    --panel-item-checked-bg:#eef2ff;
    --panel-item-checked-border:#c7d2fe;
    --menu-trigger-bg:     #ffffff;
    --menu-trigger-hover-bg:#f8fafc;
    --menu-trigger-active-bg:#eef2ff;
    --menu-dropdown-bg:    #ffffff;
    --menu-item-hover-bg:  #f8fafc;
    --menu-icon-bg:        #f1f5f9;
    --menu-sep-bg:         #f1f5f9;
    --row-highlight-bg:    linear-gradient(90deg, #f5f3ff 0%, #ffffff 100%);
    --table-head-gradient: linear-gradient(180deg, #f8fafc, #f1f5f9);
    --accent-dashed-border:#c7d2fe;
    --um-tab-bg:           #ffffff;
    --um-tab-hover-bg:     #f8fafc;
    --um-tab-active-bg:    linear-gradient(135deg, #eef2ff 0%, #ffffff 100%);
    --um-tab-icon-bg:      #f1f5f9;
    --user-pick-card-bg:   linear-gradient(145deg, #ffffff 0%, #f8fafc 55%, #eef2ff 100%);
    --user-pick-search-bg: #ffffff;
    --user-pick-dropdown-bg:#ffffff;
    --user-pick-meta-bg:     rgba(255, 255, 255, .82);
    --user-pick-meta-border: #e2e8f0;
    --user-pick-meta-label:  #64748b;
    --user-pick-meta-value:  #1e293b;
    --user-pick-selected-head-border: rgba(199, 210, 254, .55);
    --radix-modal-head-bg: linear-gradient(180deg, #fafbff 0%, #ffffff 100%);
    --subs-sort-active-bg: linear-gradient(180deg, #eef2ff 0%, #e0e7ff 100%);
    --danger-zone-bg:      linear-gradient(180deg, #fffbfb 0%, #ffffff 100%);
    --danger-zone-border:  #fecaca;
    --danger-zone-shadow:  0 8px 24px -12px rgba(220, 38, 38, .2);
    --danger-zone-title:   #b91c1c;
    color-scheme: light;
}

/* ============ تم تیره ============ */
[data-theme="dark"] {
    --bg:            #0a0f1a;
    --surface:       #111827;
    --surface-2:     #1a2332;
    --surface-3:     #1f2937;
    --surface-hover: #1e2640;
    --border:        #2a3548;
    --border-strong: #3d4d66;
    --text:          #e8edf5;
    --text-2:        #94a3b8;
    --text-3:        #64748b;
    --primary:       #818cf8;
    --primary-dark:  #a5b4fc;
    --primary-light: #1e1b4b;
    --success:       #34d399;
    --success-bg:    #064e3b;
    --danger:        #f87171;
    --danger-bg:     #450a0a;
    --warning:       #fbbf24;
    --warning-bg:    #451a03;
    --info:          #38bdf8;
    --info-bg:       #0c4a6e;
    --shadow:        0 1px 3px rgba(0, 0, 0, 0.35), 0 8px 24px rgba(0, 0, 0, 0.25);
    --input-bg:      #1a2332;
    --input-border:  #2a3548;
    --table-head-bg: #1a2332;
    --table-row-hover:#1e2640;
    --subs-row-hover-bg:     #283350;
    --subs-row-hover-accent: inset -3px 0 0 rgba(129, 140, 248, 0.72);
    --table-row-border:#222d3f;
    --overlay-bg:    rgba(0, 0, 0, 0.65);
    --modal-loading-bg:rgba(17, 24, 39, 0.92);
    --filter-bar-bg: linear-gradient(180deg, #1a2332 0%, #111827 100%);
    --filter-bar-border:#2a3548;
    --chip-bg:         #1e1b4b;
    --scrollbar-thumb: #3d4d66;
    --topbar-bg:       transparent;
    --focus-ring:      rgba(129, 140, 248, 0.2);
    --btn-ghost-hover: #2a3548;
    --btn-danger-hover:#450a0a;
    --code-bg:         #0f172a;
    --code-fg:         #cbd5e1;
    --login-card-bg:   rgba(17, 24, 39, 0.95);
    --theme-toggle-bg: #1a2332;
    --theme-toggle-border:#2a3548;
    --panel-box-bg:        linear-gradient(180deg, #1a2332 0%, #111827 100%);
    --panel-box-border:    #2a3548;
    --panel-card-bg:       #1a2332;
    --panel-section-bg:    #1a2332;
    --panel-section-head-bg:#111827;
    --panel-muted-bg:      #1a2332;
    --panel-accent-bg:     linear-gradient(135deg, #1e2640 0%, #1a2332 100%);
    --panel-item-bg:       #111827;
    --panel-item-checked-bg:#1e1b4b;
    --panel-item-checked-border:#4338ca;
    --menu-trigger-bg:     #1a2332;
    --menu-trigger-hover-bg:#222d3f;
    --menu-trigger-active-bg:#1e1b4b;
    --menu-dropdown-bg:    #111827;
    --menu-item-hover-bg:  #1e2640;
    --menu-icon-bg:        #222d3f;
    --menu-sep-bg:         #2a3548;
    --row-highlight-bg:    linear-gradient(90deg, #1e1b4b 0%, #1a2332 100%);
    --table-head-gradient: linear-gradient(180deg, #1a2332, #111827);
    --accent-dashed-border:#4338ca;
    --um-tab-bg:           #1a2332;
    --um-tab-hover-bg:     #222d3f;
    --um-tab-active-bg:    linear-gradient(135deg, #1e1b4b 0%, #1a2332 100%);
    --um-tab-icon-bg:      #222d3f;
    --user-pick-card-bg:   linear-gradient(145deg, #1a2332 0%, #111827 55%, #1e1b4b 100%);
    --user-pick-search-bg: #1a2332;
    --user-pick-dropdown-bg:#111827;
    --user-pick-meta-bg:     #222d3f;
    --user-pick-meta-border: #3d4d66;
    --user-pick-meta-label:  #94a3b8;
    --user-pick-meta-value:  #f1f5f9;
    --user-pick-selected-head-border: rgba(67, 56, 202, .45);
    --radix-modal-head-bg: linear-gradient(180deg, #1a2332 0%, #111827 100%);
    --subs-sort-active-bg: linear-gradient(180deg, #1e1b4b 0%, #312e81 100%);
    --danger-zone-bg:      linear-gradient(180deg, #1a1215 0%, #111827 100%);
    --danger-zone-border:  #7f1d1d;
    --danger-zone-shadow:  0 8px 24px -12px rgba(0, 0, 0, .35);
    --danger-zone-title:   #fca5a5;
    color-scheme: dark;
}

[data-theme="dark"] body {
    background: var(--bg);
    color: var(--text);
}

/* --- ورودی‌ها و فرم --- */
[data-theme="dark"] input[type="text"],
[data-theme="dark"] input[type="password"],
[data-theme="dark"] input[type="number"],
[data-theme="dark"] input[type="search"],
[data-theme="dark"] input[type="url"],
[data-theme="dark"] input[type="email"],
[data-theme="dark"] input[type="tel"],
[data-theme="dark"] select,
[data-theme="dark"] textarea,
[data-theme="dark"] .sms-logs-filter-field input,
[data-theme="dark"] .sms-logs-filter-field select,
[data-theme="dark"] .sms-logs-filter-field .jp-wrap,
[data-theme="dark"] .inv-filter-field input,
[data-theme="dark"] .inv-filter-field select,
[data-theme="dark"] .inv-filter-field .jp-wrap,
[data-theme="dark"] .subs-filter-field input,
[data-theme="dark"] .subs-filter-field select,
[data-theme="dark"] .subs-filter-field .jp-wrap,
[data-theme="dark"] .um-filter-field input,
[data-theme="dark"] .um-filter-field select,
[data-theme="dark"] .um-filter-field .jp-wrap,
[data-theme="dark"] .recip-filter-grid-dates .jp-wrap,
[data-theme="dark"] .field .jp-wrap,
[data-theme="dark"] .users-live-input {
    background: var(--input-bg);
    border-color: var(--input-border);
    color: var(--text);
}

[data-theme="dark"] input:focus,
[data-theme="dark"] select:focus,
[data-theme="dark"] textarea:focus,
[data-theme="dark"] .jp-wrap:focus-within {
    box-shadow: 0 0 0 3px var(--focus-ring);
}

/* --- جدول --- */
[data-theme="dark"] .table-wrap table thead th,
[data-theme="dark"] .sms-logs-table thead th,
[data-theme="dark"] .um-user-table th,
[data-theme="dark"] #users-table thead th,
[data-theme="dark"] #invoices-table thead th,
[data-theme="dark"] .invoices-data-table thead th {
    background: var(--table-head-bg);
    color: var(--text-2);
    border-color: var(--border);
}

[data-theme="dark"] .table-wrap table tbody td,
[data-theme="dark"] .sms-logs-table tbody td,
[data-theme="dark"] .um-user-table td,
[data-theme="dark"] #users-table tbody td,
[data-theme="dark"] #invoices-table tbody td,
[data-theme="dark"] .invoices-data-table tbody td {
    border-color: var(--table-row-border);
}

[data-theme="dark"] .table-wrap table tbody tr:hover,
[data-theme="dark"] .sms-logs-table tbody tr:hover,
[data-theme="dark"] .um-user-table tbody tr:hover,
[data-theme="dark"] .invoices-data-table tbody tr:hover {
    background: var(--table-row-hover);
}

[data-theme="dark"] .inv-act-btn {
    background: var(--surface-2);
    border-color: var(--border);
    color: var(--text-2);
}
[data-theme="dark"] .inv-act-edit:hover {
    background: rgba(99, 102, 241, 0.15);
    color: #a5b4fc;
}
[data-theme="dark"] .inv-act-view:hover {
    background: rgba(14, 165, 233, 0.15);
    color: #7dd3fc;
}
[data-theme="dark"] .inv-act-del:hover {
    background: rgba(239, 68, 68, 0.15);
    color: #fca5a5;
}
[data-theme="dark"] .inv-act-cancel:hover {
    background: rgba(217, 119, 6, 0.18);
    color: #fcd34d;
}
[data-theme="dark"] .inv-act-restore:hover {
    background: rgba(16, 185, 129, 0.15);
    color: #6ee7b7;
}
[data-theme="dark"] tr.inv-row-cancelled { background: var(--table-row-hover); }
[data-theme="dark"] tr.inv-row-cancelled:hover { background: var(--table-row-hover); }
[data-theme="dark"] .badge.inv-status-cancelled {
    background: var(--danger-bg);
    color: var(--danger);
}
[data-theme="dark"] .inv-amount-cancelled { color: var(--text-3); }

[data-theme="dark"] .inv-detail-header {
    background: linear-gradient(180deg, var(--surface-2) 0%, var(--surface) 100%);
    border-color: var(--border);
}
[data-theme="dark"] .inv-detail-icon {
    background: rgba(99, 102, 241, 0.15);
    color: #a5b4fc;
}
[data-theme="dark"] .inv-detail-hero,
[data-theme="dark"] .inv-detail-field,
[data-theme="dark"] .inv-detail-timeline-body,
[data-theme="dark"] .inv-detail-timeline-dot {
    background: var(--surface-2);
    border-color: var(--border);
}
[data-theme="dark"] .inv-detail-status--active {
    background: rgba(16, 185, 129, 0.15);
    color: #6ee7b7;
    border-color: rgba(16, 185, 129, 0.35);
}
[data-theme="dark"] .inv-detail-status--cancelled {
    background: var(--danger-bg);
    color: var(--danger);
    border-color: rgba(239, 68, 68, 0.35);
}
[data-theme="dark"] .inv-detail-tone--indigo { background: rgba(99, 102, 241, 0.12); border-color: rgba(99, 102, 241, 0.35); }
[data-theme="dark"] .inv-detail-tone--amber { background: rgba(217, 119, 6, 0.12); border-color: rgba(217, 119, 6, 0.35); }
[data-theme="dark"] .inv-detail-tone--rose { background: rgba(239, 68, 68, 0.12); border-color: rgba(239, 68, 68, 0.35); }
[data-theme="dark"] .inv-detail-tone--emerald { background: rgba(16, 185, 129, 0.12); border-color: rgba(16, 185, 129, 0.35); }
[data-theme="dark"] .inv-detail-tone--sky { background: rgba(14, 165, 233, 0.12); border-color: rgba(14, 165, 233, 0.35); }
[data-theme="dark"] .inv-detail-tone--slate { background: var(--surface-2); border-color: var(--border); }
[data-theme="dark"] .inv-detail-error {
    background: var(--danger-bg);
    color: var(--danger);
}

[data-theme="dark"] .groups-count-badge {
    background: rgba(99, 102, 241, 0.15);
    color: #a5b4fc;
    border-color: rgba(99, 102, 241, 0.35);
}
[data-theme="dark"] .groups-data-table thead th {
    background: var(--table-head-bg);
    color: var(--text-2);
    border-color: var(--border);
}
[data-theme="dark"] .groups-data-table tbody td {
    border-color: var(--table-row-border);
}
[data-theme="dark"] .groups-data-table tbody tr:hover {
    background: var(--table-row-hover);
}
[data-theme="dark"] .grp-plan-badge {
    background: rgba(99, 102, 241, 0.15);
    color: #a5b4fc;
}
[data-theme="dark"] .badge.grp-users-badge--empty {
    background: var(--surface-2);
    color: var(--text-2);
}
[data-theme="dark"] .badge.grp-users-badge--active {
    background: rgba(16, 185, 129, 0.15);
    color: #6ee7b7;
}
[data-theme="dark"] .grp-act-btn {
    background: var(--surface-2);
    border-color: var(--border);
    color: var(--text-2);
}
[data-theme="dark"] .grp-act-edit:hover {
    background: rgba(99, 102, 241, 0.15);
    color: #a5b4fc;
}
[data-theme="dark"] .grp-act-del:hover {
    background: rgba(239, 68, 68, 0.15);
    color: #fca5a5;
}
[data-theme="dark"] .grp-price-fallback { color: var(--text-3); }
[data-theme="dark"] .grp-act-del--disabled,
[data-theme="dark"] .grp-act-del--disabled:hover {
    background: var(--surface-2);
    color: var(--text-3);
    border-color: var(--border);
}

[data-theme="dark"] .sms-log-row--fail { background: #1a1215; }
[data-theme="dark"] .sms-log-row--fail:hover { background: #251418; }

[data-theme="dark"] .sms-logs-table--retry thead th.sms-col-check,
[data-theme="dark"] .sms-logs-table--retry tbody td.sms-col-check {
    background: var(--surface);
    box-shadow: -1px 0 0 var(--border);
}
[data-theme="dark"] .sms-logs-table--retry thead th.sms-col-check {
    background: var(--table-head-bg);
    box-shadow: -1px 0 0 var(--border), 0 1px 0 var(--border);
}
[data-theme="dark"] .sms-logs-table--retry tbody tr:hover td.sms-col-check {
    background: var(--table-row-hover);
}
[data-theme="dark"] .sms-logs-table--retry .sms-log-row--fail td.sms-col-check {
    background: #1a1215;
}
[data-theme="dark"] .sms-logs-table--retry .sms-log-row--fail:hover td.sms-col-check {
    background: #251418;
}
[data-theme="dark"] .sms-logs-table--retry .sms-log-row--selected td.sms-col-check {
    background: rgba(251, 191, 36, .08) !important;
}
[data-theme="dark"] .sms-logs-table--retry .sms-log-row--retryable.sms-log-row--fail td.sms-col-check {
    box-shadow: inset -3px 0 0 rgba(251, 146, 60, .75), -1px 0 0 var(--border);
}
[data-theme="dark"] .sms-logs-table--retry .sms-log-row--retryable.sms-log-row--fail.sms-log-row--selected td.sms-col-check {
    box-shadow: inset -3px 0 0 #fb923c, -1px 0 0 var(--border);
}

/* --- فیلتر بارها --- */
[data-theme="dark"] .sms-logs-filter-field label {
    color: var(--text-2);
}
[data-theme="dark"] .sms-logs-filter-icon {
    color: var(--text-3);
}
[data-theme="dark"] .sms-logs-filter-spinner {
    border-color: var(--border-strong);
    border-top-color: var(--primary);
}
[data-theme="dark"] .sms-logs-filter-bar,
[data-theme="dark"] .inv-filter-bar,
[data-theme="dark"] .subs-filter-bar,
[data-theme="dark"] .um-filter-bar {
    background: var(--filter-bar-bg);
    border-color: var(--filter-bar-border);
}

[data-theme="dark"] .subs-filter-row-secondary,
[data-theme="dark"] .um-filter-row-secondary {
    border-color: var(--border);
}

[data-theme="dark"] .subs-filter-field select,
[data-theme="dark"] .subs-filter-field input,
[data-theme="dark"] .subs-filter-field .jp-wrap,
[data-theme="dark"] .um-filter-field select,
[data-theme="dark"] .um-filter-field input,
[data-theme="dark"] .um-filter-field .jp-wrap {
    background: var(--input-bg);
    border-color: var(--input-border);
    color: var(--text);
}

[data-theme="dark"] .subs-search-combo {
    background: var(--input-bg);
    border-color: var(--input-border);
}
[data-theme="dark"] .subs-search-combo:focus-within {
    border-color: var(--primary, #6366f1);
    box-shadow: 0 0 0 3px rgba(99, 102, 241, .22);
}
[data-theme="dark"] .subs-search-scope-wrap::after {
    background: var(--border);
}
[data-theme="dark"] .subs-search-scope-wrap::before {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23cbd5e1' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat center / 14px 14px;
}
[data-theme="dark"] .subs-filter-field .subs-search-scope,
[data-theme="dark"] .subs-search-scope {
    color-scheme: dark;
    background: var(--surface-2) !important;
    background-image: none !important;
    color: var(--text) !important;
    -webkit-text-fill-color: var(--text);
}
[data-theme="dark"] .subs-filter-field .subs-search-scope option,
[data-theme="dark"] .subs-search-scope option {
    background-color: var(--surface-2);
    color: var(--text);
}
[data-theme="dark"] .subs-filter-field .subs-search-scope:hover,
[data-theme="dark"] .subs-search-scope:hover {
    background: var(--btn-ghost-hover) !important;
    background-image: none !important;
    color: var(--text) !important;
}
[data-theme="dark"] .subs-filter-field .subs-search-scope:focus,
[data-theme="dark"] .subs-search-scope:focus {
    background: rgba(99, 102, 241, .18) !important;
    background-image: none !important;
    color: #e0e7ff !important;
}
[data-theme="dark"] .subs-search-input-wrap input[type="search"] {
    color: var(--text);
    background: transparent !important;
}
[data-theme="dark"] .subs-search-combo[data-scope]:not([data-scope="all"]) .subs-search-scope {
    color: #e0e7ff !important;
    background: rgba(99, 102, 241, .2) !important;
    background-image: none !important;
}

/* --- دکمه‌ها --- */
[data-theme="dark"] .btn-ghost {
    background: var(--surface-2);
    color: var(--text);
    border: 1px solid var(--border);
}
[data-theme="dark"] .btn-ghost:hover { background: var(--btn-ghost-hover); }
[data-theme="dark"] .btn-danger:hover { background: var(--btn-danger-hover); }

[data-theme="dark"] .btn-secondary {
    background: var(--surface-2);
    color: var(--text);
    border: 1px solid var(--border);
}
[data-theme="dark"] .btn-secondary:hover {
    background: var(--btn-ghost-hover, rgba(255, 255, 255, .06));
}

/* --- مودال --- */
[data-theme="dark"] .modal-overlay { background: var(--overlay-bg); }
[data-theme="dark"] .modal-save-loading {
    background: rgba(10, 15, 26, 0.9);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}
[data-theme="dark"] .modal-save-loading-box {
    background: var(--surface-2);
    border-color: var(--border-strong);
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(129, 140, 248, 0.12);
}
[data-theme="dark"] .modal-save-title {
    color: #f1f5f9;
}
[data-theme="dark"] .modal-save-hint {
    color: #cbd5e1;
}
[data-theme="dark"] .modal-save-spinner {
    border-color: rgba(129, 140, 248, 0.28);
    border-top-color: #a5b4fc;
}

/* --- نشان‌ها --- */
[data-theme="dark"] .badge-muted { background: var(--surface-3); color: var(--text-2); }
[data-theme="dark"] .badge-warning { background: rgba(245, 158, 11, 0.18); color: #fbbf24; }
[data-theme="dark"] .svc-simul-custom { background: rgba(16, 185, 129, 0.15); color: #6ee7b7; border-color: rgba(16, 185, 129, 0.35); }
[data-theme="dark"] .svc-simul-group { background: rgba(249, 115, 22, 0.15); color: #fdba74; border-color: rgba(249, 115, 22, 0.35); }
[data-theme="dark"] .svc-simul-loading { background: rgba(99, 102, 241, 0.15); color: #a5b4fc; border-color: rgba(99, 102, 241, 0.35); }
[data-theme="dark"] .svc-simul-idle { background: var(--surface-3); color: var(--text-3); border-color: var(--border); }
[data-theme="dark"] .svc-simul-none,
[data-theme="dark"] .svc-simul-na { background: var(--surface-3); color: var(--text-3); border-color: var(--border); }
[data-theme="dark"] .svc-simul-error { background: rgba(239, 68, 68, 0.15); color: #fca5a5; border-color: rgba(239, 68, 68, 0.35); }
[data-theme="dark"] .svc-cstyle-dot {
    box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.95), 0 0 0 2px rgba(148, 163, 184, 0.35);
}
[data-theme="dark"] .svc-note-chip {
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.28);
    color: #fbbf24;
}
[data-theme="dark"] .subs-note-modal-icon {
    background: rgba(245, 158, 11, 0.14);
    color: #fbbf24;
}
[data-theme="dark"] .subs-note-full {
    background: rgba(245, 158, 11, 0.08);
    border-color: rgba(245, 158, 11, 0.22);
    color: #fde68a;
}
[data-theme="dark"] .subs-note-input {
    background: rgba(245, 158, 11, 0.08);
    border-color: rgba(245, 158, 11, 0.22);
    color: #fde68a;
}
[data-theme="dark"] .subs-note-input.is-readonly {
    background: var(--surface-3);
    border-color: var(--border);
    color: var(--text-2);
}
[data-theme="dark"] #svc-edit-username.is-readonly {
    background: var(--surface-3);
    border-color: var(--border);
    color: var(--text-2);
}
[data-theme="dark"] .subs-modal-note-input {
    background: var(--surface-2);
    border-color: var(--border);
    color: var(--text);
}
[data-theme="dark"] .subs-note-field-label { color: #fbbf24; }
[data-theme="dark"] .svc-note-add {
    background: rgba(245, 158, 11, 0.06);
    border-color: rgba(245, 158, 11, 0.28);
    color: #fbbf24;
}
[data-theme="dark"] .subs-note-modal-footer {
    border-top-color: rgba(245, 158, 11, 0.22);
    background: linear-gradient(180deg, rgba(245, 158, 11, 0.04) 0%, rgba(245, 158, 11, 0.1) 100%);
}
[data-theme="dark"] .subs-note-btn-cancel {
    background: var(--surface-2);
    border-color: var(--border);
    color: var(--text-2);
}
[data-theme="dark"] .subs-note-btn-cancel:hover:not(:disabled) {
    background: var(--surface-3);
    color: var(--text);
}
[data-theme="dark"] .subs-note-btn-save {
    background: linear-gradient(135deg, #d97706 0%, #b45309 100%);
    border-color: #b45309;
    box-shadow: 0 4px 14px rgba(180, 83, 9, 0.35);
}
[data-theme="dark"] .subs-note-btn-delete {
    background: rgba(239, 68, 68, 0.08);
    border-color: rgba(239, 68, 68, 0.28);
    color: #fca5a5;
}
[data-theme="dark"] .subs-note-btn-delete:hover:not(:disabled) {
    background: rgba(239, 68, 68, 0.14);
    border-color: rgba(239, 68, 68, 0.4);
    color: #fecaca;
}

/* --- مودال لینک OpenVPN --- */
[data-theme="dark"] .openvpn-link-modal {
    --ovpn-accent: #2dd4bf;
    --ovpn-accent-2: #38bdf8;
    --ovpn-accent-deep: #0f766e;
    --ovpn-accent-soft: rgba(45, 212, 191, 0.12);
    --ovpn-accent-border: rgba(45, 212, 191, 0.24);
    --ovpn-surface: linear-gradient(165deg, rgba(15, 118, 110, 0.18) 0%, rgba(8, 47, 73, 0.22) 48%, var(--surface) 100%);
    --ovpn-footer-bg: linear-gradient(180deg, rgba(15, 118, 110, 0.06) 0%, rgba(15, 118, 110, 0.12) 100%);
    border-color: rgba(45, 212, 191, 0.2);
    box-shadow:
        0 28px 70px rgba(0, 0, 0, 0.45),
        0 0 0 1px rgba(45, 212, 191, 0.08) inset;
}
[data-theme="dark"] .openvpn-link-loading {
    background: rgba(15, 23, 42, 0.82);
}
[data-theme="dark"] .openvpn-link-loading-box {
    background: var(--surface-2);
    border-color: rgba(45, 212, 191, 0.24);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);
}
[data-theme="dark"] .openvpn-link-loading-text {
    color: #5eead4;
}
[data-theme="dark"] .openvpn-link-spinner {
    border-color: rgba(45, 212, 191, 0.18);
    border-top-color: #2dd4bf;
}
[data-theme="dark"] .openvpn-link-modal-header {
    border-bottom-color: rgba(45, 212, 191, 0.12);
}
[data-theme="dark"] .openvpn-link-modal-titles h2 {
    color: var(--text);
}
[data-theme="dark"] .openvpn-link-modal-sub {
    color: var(--text-2);
}
[data-theme="dark"] .openvpn-link-feature {
    background: rgba(45, 212, 191, 0.1);
    border-color: rgba(45, 212, 191, 0.22);
    color: #99f6e4;
}
[data-theme="dark"] .openvpn-link-feature-icon {
    color: #2dd4bf;
}
[data-theme="dark"] .openvpn-link-label {
    color: #5eead4;
}
[data-theme="dark"] .openvpn-link-input-wrap {
    background: var(--surface-2);
    border-color: rgba(45, 212, 191, 0.24);
    box-shadow: none;
}
[data-theme="dark"] .openvpn-link-input-wrap:focus-within {
    border-color: rgba(45, 212, 191, 0.55);
    box-shadow: 0 0 0 3px rgba(45, 212, 191, 0.12);
}
[data-theme="dark"] .openvpn-link-input {
    color: #ecfdf5;
}
[data-theme="dark"] .openvpn-link-input::placeholder {
    color: var(--text-3);
}
[data-theme="dark"] .openvpn-link-copy-btn {
    background: rgba(45, 212, 191, 0.12);
    border-inline-start-color: rgba(45, 212, 191, 0.2);
    color: #99f6e4;
}
[data-theme="dark"] .openvpn-link-copy-btn:hover {
    background: rgba(45, 212, 191, 0.2);
    color: #ccfbf1;
}
[data-theme="dark"] .openvpn-link-copy-btn.is-copied {
    background: rgba(16, 185, 129, 0.18);
    color: #6ee7b7;
}
[data-theme="dark"] .openvpn-link-hint {
    color: var(--text-2);
}
[data-theme="dark"] .openvpn-link-modal-footer {
    border-top-color: rgba(45, 212, 191, 0.14);
}
[data-theme="dark"] .openvpn-link-btn--ghost {
    background: var(--surface-2);
    border-color: var(--border);
    color: var(--text-2);
}
[data-theme="dark"] .openvpn-link-btn--ghost:hover:not(:disabled) {
    background: var(--surface-3);
    color: var(--text);
}
[data-theme="dark"] .openvpn-link-btn--open {
    background: linear-gradient(135deg, #14b8a6 0%, #0f766e 100%);
    border-color: #0f766e;
    box-shadow: 0 6px 18px rgba(15, 118, 110, 0.35);
}
[data-theme="dark"] .openvpn-link-btn--open:hover:not(:disabled) {
    background: linear-gradient(135deg, #2dd4bf 0%, #0f766e 100%);
    box-shadow: 0 8px 22px rgba(15, 118, 110, 0.42);
}
@media (max-width: 380px) {
    [data-theme="dark"] .openvpn-link-copy-btn {
        border-top-color: rgba(45, 212, 191, 0.2);
    }
}

[data-theme="dark"] .radix-result-box {
    background: rgba(16, 185, 129, 0.1);
    border-color: rgba(16, 185, 129, 0.28);
}
[data-theme="dark"] .radix-result-title,
[data-theme="dark"] .svc-extend-result-lead { color: #86efac; }
[data-theme="dark"] .radix-cred-row {
    border-bottom-color: rgba(16, 185, 129, 0.18);
}
[data-theme="dark"] .radix-cred-row dt {
    color: #a7f3d0;
}
[data-theme="dark"] .radix-cred-row code {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(16, 185, 129, 0.28);
    color: #ecfdf5;
}
[data-theme="dark"] .btn-copy {
    background: rgba(15, 23, 42, 0.85);
    color: #86efac;
    border-color: rgba(16, 185, 129, 0.42);
}
[data-theme="dark"] .btn-copy:hover {
    background: rgba(16, 185, 129, 0.18);
    border-color: rgba(16, 185, 129, 0.55);
    color: #a7f3d0;
}
[data-theme="dark"] .btn-bulk-create {
    box-shadow: 0 3px 10px rgba(13, 148, 136, .25);
}
[data-theme="dark"] .radix-bulk-creds-wrap {
    background: var(--surface-2);
    border-color: rgba(16, 185, 129, 0.28);
}
[data-theme="dark"] .radix-bulk-creds-table th,
[data-theme="dark"] .radix-bulk-creds-table td {
    border-bottom-color: rgba(16, 185, 129, 0.16);
    color: var(--text);
}
[data-theme="dark"] .radix-bulk-creds-table thead th {
    background: rgba(16, 185, 129, 0.12);
    color: #86efac;
}
[data-theme="dark"] .radix-bulk-creds-table code {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(16, 185, 129, 0.28);
    color: #ecfdf5;
}
[data-theme="dark"] .radix-bulk-fails {
    background: rgba(239, 68, 68, 0.12);
    border-color: rgba(239, 68, 68, 0.3);
}
[data-theme="dark"] .radix-bulk-fails-title,
[data-theme="dark"] .radix-bulk-fails-list {
    color: #fca5a5;
}
[data-theme="dark"] .radix-result-actions {
    border-top-color: rgba(16, 185, 129, 0.18);
}
[data-theme="dark"] .radix-result-box .radix-copy-all-btn {
    background: rgba(15, 23, 42, 0.85);
    color: #86efac;
    border: 1px solid rgba(16, 185, 129, 0.42);
    box-shadow: 0 1px 2px rgba(0, 0, 0, .25);
}
[data-theme="dark"] .radix-result-box .radix-copy-all-btn:hover {
    background: rgba(16, 185, 129, 0.18);
    border-color: rgba(16, 185, 129, 0.55);
    color: #a7f3d0;
}
[data-theme="dark"] .svc-group-modal-username {
    background: var(--primary-light);
    color: var(--primary-dark);
}
[data-theme="dark"] .svc-owner-gate-alert {
    border-color: rgba(251, 191, 36, .35);
    background: linear-gradient(180deg, rgba(69, 26, 3, .35) 0%, rgba(17, 24, 39, .2) 100%);
}
[data-theme="dark"] .svc-owner-gate-alert strong { color: #fcd34d; }
[data-theme="dark"] .svc-owner-gate-alert p { color: #fbbf24; }
[data-theme="dark"] .svc-date-panel-heading { color: var(--text); }
[data-theme="dark"] .svc-date-panel-card {
    border-color: var(--border);
    background: linear-gradient(180deg, var(--surface-2) 0%, var(--surface) 100%);
    box-shadow: none;
}
[data-theme="dark"] .svc-firstlogin-card {
    border-color: rgba(129, 140, 248, 0.32);
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.14) 0%, rgba(15, 23, 42, 0.55) 100%);
}
[data-theme="dark"] .svc-firstlogin-card.is-empty {
    border-color: var(--border);
    background: linear-gradient(180deg, var(--surface-2) 0%, var(--surface) 100%);
}
[data-theme="dark"] .svc-firstlogin-icon {
    background: linear-gradient(135deg, rgba(129, 140, 248, 0.22) 0%, rgba(99, 102, 241, 0.12) 100%);
    color: #c7d2fe;
    box-shadow: inset 0 0 0 1px rgba(129, 140, 248, 0.22);
}
[data-theme="dark"] .svc-firstlogin-card.is-empty .svc-firstlogin-icon {
    background: rgba(148, 163, 184, 0.12);
    color: #64748b;
    box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.18);
}
[data-theme="dark"] .svc-firstlogin-label { color: var(--text-2); }
[data-theme="dark"] .svc-firstlogin-value { color: #c7d2fe; }
[data-theme="dark"] .svc-firstlogin-value.is-empty { color: #64748b; }

[data-theme="dark"] .subs-expire-hit:hover,
[data-theme="dark"] .subs-expire-hit.is-open {
    color: #c7d2fe;
}
[data-theme="dark"] .subs-expire-hit:hover {
    background: rgba(99, 102, 241, 0.16);
}
[data-theme="dark"] .subs-expire-hit.is-open {
    background: rgba(99, 102, 241, 0.22);
    box-shadow: inset 0 0 0 1px rgba(129, 140, 248, 0.28);
}
[data-theme="dark"] .subs-firstlogin-pop-card {
    background: var(--surface);
    border-color: var(--border);
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.35);
}
[data-theme="dark"] .subs-firstlogin-pop-spinner {
    border-color: var(--border);
    border-top-color: #fbbf24;
}

[data-theme="dark"] .svc-expire-card {
    border-color: rgba(16, 185, 129, 0.32);
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.12) 0%, rgba(15, 23, 42, 0.55) 100%);
}
[data-theme="dark"] .svc-expire-card:focus-within {
    border-color: rgba(52, 211, 153, 0.5);
    box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.14);
}
[data-theme="dark"] .svc-expire-card .jp-trigger {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.2) 0%, rgba(52, 211, 153, 0.1) 100%);
    color: #6ee7b7;
    box-shadow: inset 0 0 0 1px rgba(16, 185, 129, 0.22);
}
[data-theme="dark"] .svc-expire-card .jp-trigger:hover {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.28) 0%, rgba(52, 211, 153, 0.16) 100%);
}
[data-theme="dark"] .svc-expire-card .jp-wrap--focus .jp-trigger,
[data-theme="dark"] .svc-expire-card .jp-wrap:focus-within .jp-trigger {
    color: #86efac;
}
[data-theme="dark"] .svc-expire-card .jp-input,
[data-theme="dark"] .svc-expire-input {
    color: #86efac;
    background: transparent;
}
[data-theme="dark"] .svc-expire-card .jp-input::placeholder,
[data-theme="dark"] .svc-expire-input::placeholder { color: #64748b; }

[data-theme="dark"] .svc-extend-expire-card {
    border-color: rgba(16, 185, 129, 0.35);
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.14) 0%, rgba(15, 23, 42, 0.6) 100%);
    box-shadow: none;
}
[data-theme="dark"] .svc-extend-expire-card.is-expired {
    border-color: rgba(248, 113, 113, 0.35);
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.12) 0%, rgba(15, 23, 42, 0.6) 100%);
}
[data-theme="dark"] .svc-extend-expire-card-icon {
    background: rgba(16, 185, 129, 0.18);
    color: #6ee7b7;
}
[data-theme="dark"] .svc-extend-expire-card.is-expired .svc-extend-expire-card-icon {
    background: rgba(239, 68, 68, 0.18);
    color: #fca5a5;
}
[data-theme="dark"] .svc-extend-expire-card-label,
[data-theme="dark"] .svc-extend-expire-card-badge-label { color: var(--text-2); }
[data-theme="dark"] .svc-extend-expire-card-date { color: #86efac; }
[data-theme="dark"] .svc-extend-expire-card.is-expired .svc-extend-expire-card-date { color: #fca5a5; }
[data-theme="dark"] .radix-cred-row { border-bottom-color: rgba(16, 185, 129, 0.18); }
[data-theme="dark"] .radix-cred-row code { background: var(--surface-2); color: var(--text); }
[data-theme="dark"] .sms-log-stat {
    background: var(--surface-2);
    border-color: var(--border);
    color: var(--text-2);
}
[data-theme="dark"] .sms-log-stat strong { color: var(--text); }
[data-theme="dark"] .sms-log-stat--ok { background: #064e3b; border-color: #065f46; color: #6ee7b7; }
[data-theme="dark"] .sms-log-stat--ok strong { color: #a7f3d0; }
[data-theme="dark"] .sms-log-stat--fail { background: #450a0a; border-color: #7f1d1d; color: #fca5a5; }
[data-theme="dark"] .sms-log-stat--fail strong { color: #fecaca; }
[data-theme="dark"] .sms-log-stat--invalid-mobile { background: rgba(154, 52, 18, .22); border-color: rgba(251, 146, 60, .35); color: #fdba74; }
[data-theme="dark"] .sms-log-stat--invalid-mobile strong { color: #fed7aa; }
[data-theme="dark"] .sms-log-stat--retryable {
    background: rgba(154, 52, 18, .22);
    border-color: rgba(251, 146, 60, .35);
    color: #fdba74;
}
[data-theme="dark"] .sms-log-stat--retryable strong { color: #fed7aa; }

[data-theme="dark"] .sms-logs-bulk-bar {
    background: linear-gradient(135deg, rgba(67, 56, 202, .18) 0%, rgba(17, 24, 39, .85) 100%);
    border-color: rgba(129, 140, 248, .35);
    box-shadow: 0 10px 28px -18px rgba(0, 0, 0, .55);
}
[data-theme="dark"] .sms-logs-bulk-bar-icon {
    background: var(--surface-2);
    border-color: rgba(129, 140, 248, .35);
    color: #c7d2fe;
}
[data-theme="dark"] .sms-logs-bulk-bar-meta { color: var(--text-2); }
[data-theme="dark"] .sms-logs-bulk-bar-meta strong { color: #c7d2fe; }

[data-theme="dark"] .sms-log-check-box {
    background: var(--surface-2);
    border-color: var(--border-strong);
}
[data-theme="dark"] .sms-log-check-label input:checked + .sms-log-check-box {
    background: linear-gradient(135deg, #6366f1, #4338ca);
    border-color: #818cf8;
}
[data-theme="dark"] .sms-log-check-label input:indeterminate + .sms-log-check-box {
    background: linear-gradient(135deg, #6366f1, #4f46e5);
    border-color: #818cf8;
}

[data-theme="dark"] .sms-log-retry-btn {
    background: linear-gradient(180deg, rgba(154, 52, 18, .28) 0%, rgba(69, 26, 3, .45) 100%);
    border-color: rgba(251, 146, 60, .42);
    color: #fdba74;
}
[data-theme="dark"] .sms-log-retry-btn:hover:not(:disabled) {
    background: linear-gradient(180deg, rgba(234, 88, 12, .24) 0%, rgba(154, 52, 18, .38) 100%);
    box-shadow: 0 4px 14px -8px rgba(251, 146, 60, .55);
}
[data-theme="dark"] .sms-log-status-cell .sms-log-retry-btn--inline {
    box-shadow: 0 2px 10px -6px rgba(0, 0, 0, .45);
}
[data-theme="dark"] .sms-log-row--selected { background: rgba(251, 191, 36, .08) !important; }
[data-theme="dark"] .sms-log-check-empty { color: var(--text-3); }
[data-theme="dark"] .sms-log-param-name { color: var(--text-3); }
[data-theme="dark"] .sms-log-param-sep { color: var(--border-strong); }
[data-theme="dark"] .sms-log-api-msg { color: var(--text-2); }
[data-theme="dark"] .sms-logs-empty { color: var(--text-2); }
[data-theme="dark"] .sms-log-message-panel-close:hover {
    background: var(--surface-3);
    color: var(--text);
}

[data-theme="dark"] .sms-log-row--invalid-mobile .sms-log-api-msg { color: #fca5a5; }

[data-theme="dark"] .sms-logs-retry-panel {
    background: var(--surface);
    border-color: var(--border);
}
[data-theme="dark"] .sms-logs-retry-head {
    background: var(--radix-modal-head-bg);
    border-bottom-color: var(--border);
}
[data-theme="dark"] .sms-logs-retry-head h3 { color: var(--text); }
[data-theme="dark"] .sms-logs-retry-sub { color: var(--text-2); }
[data-theme="dark"] .sms-logs-retry-foot {
    background: var(--surface-2);
    border-top-color: var(--border);
}
[data-theme="dark"] .sms-logs-retry-result-row {
    border-color: var(--border);
    background: var(--surface-2);
}
[data-theme="dark"] .sms-logs-retry-result-row.is-ok {
    background: rgba(6, 78, 59, .28);
    border-color: rgba(52, 211, 153, .28);
}
[data-theme="dark"] .sms-logs-retry-result-row.is-fail {
    background: rgba(69, 10, 10, .28);
    border-color: rgba(248, 113, 113, .28);
}
[data-theme="dark"] .sms-logs-retry-result-mobile { color: var(--text); }
[data-theme="dark"] .sms-logs-retry-result-msg { color: var(--text-2); }

[data-theme="dark"] .sms-log-type-pattern { background: #1e1b4b; color: #a5b4fc; }
[data-theme="dark"] .sms-log-type-bulk { background: #2e1065; color: #c4b5fd; }
[data-theme="dark"] .sms-log-type-payment { background: #431407; color: #fdba74; }
[data-theme="dark"] .sms-log-type-reminder { background: #083344; color: #67e8f9; }
[data-theme="dark"] .sms-log-type-other { background: var(--surface-3); color: var(--text-2); }

[data-theme="dark"] .sms-log-status--ok { background: #064e3b; color: #6ee7b7; }
[data-theme="dark"] .sms-log-status--fail { background: #450a0a; color: #fca5a5; }

[data-theme="dark"] .sms-log-message-hit {
    background: linear-gradient(180deg, var(--surface-2) 0%, var(--surface-3) 100%);
    border-color: var(--border);
    color: #a5b4fc;
}
[data-theme="dark"] .sms-log-message-hit:hover {
    border-color: #4338ca;
    box-shadow: 0 4px 14px rgba(99, 102, 241, .2);
}
[data-theme="dark"] .sms-log-message-panel {
    border-color: var(--border);
    box-shadow: 0 28px 72px rgba(0, 0, 0, .45);
}
[data-theme="dark"] .sms-log-message-panel-head {
    background: linear-gradient(135deg, #1e1b4b 0%, var(--surface-2) 60%, var(--surface) 100%);
    border-bottom-color: var(--border);
}
[data-theme="dark"] .sms-log-message-panel-head h3 { color: var(--text); }
[data-theme="dark"] .sms-log-message-panel-close {
    background: var(--surface-3);
    border-color: var(--border);
    color: var(--text-2);
}
[data-theme="dark"] .sms-log-message-panel-body {
    background: var(--surface-2);
    color: var(--text);
}
[data-theme="dark"] .sms-log-message-panel-foot {
    background: var(--surface);
    border-top-color: var(--border);
}

/* --- یادآوری / rem tpl --- */
[data-theme="dark"] .rem-tpl-card {
    background: var(--surface);
    border-color: var(--border);
}
[data-theme="dark"] .rem-tpl-card-title { color: var(--text); }
[data-theme="dark"] .rem-tpl-card-desc { color: var(--text-2); }
[data-theme="dark"] .rem-tpl-card-note {
    background: var(--surface-2);
    border-color: var(--border);
    color: var(--text-2);
}
[data-theme="dark"] .rem-cron-table thead th {
    background: var(--table-head-bg);
    color: var(--text-2);
    border-color: var(--border);
}
[data-theme="dark"] .rem-cron-table tbody td {
    border-color: var(--table-row-border);
    color: var(--text);
}
[data-theme="dark"] .rem-cron-table tbody tr:hover {
    background: var(--table-row-hover);
}
[data-theme="dark"] .rem-cron-table .badge:not(.badge-success):not(.badge-danger) {
    background: var(--surface-3);
    color: var(--text-2);
}
[data-theme="dark"] .rem-cron-total-badge {
    background: var(--surface-2);
    border-color: var(--border);
    color: var(--text-2);
}
[data-theme="dark"] .rem-cron-pagination {
    background: var(--surface-2);
    border-top-color: var(--border);
}

/* --- داشبورد --- */
[data-theme="dark"] .dash-card {
    background: var(--surface);
    border-color: var(--border);
}
[data-theme="dark"] .dash-card-label { color: var(--text-2); }
[data-theme="dark"] .dash-card-value { color: var(--text); }
[data-theme="dark"] .dash-period-card {
    background: var(--surface);
    border-color: var(--border);
}
[data-theme="dark"] .dash-sms-card {
    background: linear-gradient(135deg, #0f2744 0%, #152238 100%);
    border-color: #1e4976;
    box-shadow: 0 8px 24px -12px rgba(0, 0, 0, .45);
}
[data-theme="dark"] .dash-sms-card--err {
    background: linear-gradient(135deg, #3f1515 0%, #2a1212 100%);
    border-color: #7f1d1d;
}
[data-theme="dark"] .dash-sms-glow {
    background: radial-gradient(circle, rgba(56, 189, 248, .14), transparent 70%);
}
[data-theme="dark"] .dash-sms-card--err .dash-sms-glow {
    background: radial-gradient(circle, rgba(248, 113, 113, .12), transparent 70%);
}
[data-theme="dark"] .dash-sms-label { color: #94a3b8; }
[data-theme="dark"] .dash-sms-value { color: #f0f9ff; }
[data-theme="dark"] .dash-sms-value--err { color: #fecaca; }
[data-theme="dark"] .dash-sms-unit { color: #7dd3fc; }
[data-theme="dark"] .dash-sms-hint { color: #94a3b8; }
[data-theme="dark"] .dash-sms-hint--err { color: #fca5a5; }
[data-theme="dark"] .dash-block-badge { background: var(--primary-light); color: var(--primary-dark); }
[data-theme="dark"] .dash-block-badge--muted { background: var(--surface-3); color: var(--text-2); }

/* --- مدیریت کاربران --- */
[data-theme="dark"] .users-manage-tabs {
    background: var(--surface-2);
    border-color: var(--border);
}
[data-theme="dark"] .um-tab:hover {
    border-color: #6366f1;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .25);
}
[data-theme="dark"] .um-tab.active {
    border-color: #6366f1;
    box-shadow: 0 4px 18px rgba(99, 102, 241, .25);
}
[data-theme="dark"] .um-cstyle-badge--bad {
    background: rgba(239, 68, 68, 0.16);
    border-color: rgba(239, 68, 68, 0.32);
    color: #fca5a5;
}
[data-theme="dark"] .um-cstyle-badge--debtor {
    background: rgba(245, 158, 11, 0.14);
    border-color: rgba(245, 158, 11, 0.32);
    color: #fcd34d;
}
[data-theme="dark"] .um-cstyle-badge--good {
    background: rgba(34, 197, 94, 0.14);
    border-color: rgba(34, 197, 94, 0.3);
    color: #86efac;
}
[data-theme="dark"] .svc-owner-section {
    background: var(--surface-2);
    border-color: var(--border);
}
[data-theme="dark"] .um-tab.active .um-tab-text strong { color: var(--primary-dark); }
[data-theme="dark"] .um-reminder-section {
    border-top-color: var(--border);
}
[data-theme="dark"] .um-price-section {
    border-top-color: var(--border);
}
[data-theme="dark"] .um-svc-reminder-table th,
[data-theme="dark"] .um-svc-reminder-table td {
    border-color: var(--table-row-border);
}
[data-theme="dark"] .um-svc-batch-label { color: var(--text-2); }
[data-theme="dark"] .users-import-section {
    background: var(--panel-muted-bg);
    border-color: var(--border);
}
[data-theme="dark"] .users-import-section--bulk,
[data-theme="dark"] .card-sub {
    background: var(--panel-muted-bg);
    border-color: var(--border);
}
[data-theme="dark"] .csv-import-step {
    background: var(--surface-2);
    color: var(--text-2);
    border-color: var(--border);
}
[data-theme="dark"] .csv-import-step.is-active {
    background: rgba(99, 102, 241, .15);
    color: #a5b4fc;
    border-color: rgba(99, 102, 241, .35);
}
[data-theme="dark"] .csv-import-step.is-done {
    background: rgba(16, 185, 129, .12);
    color: #6ee7b7;
    border-color: rgba(16, 185, 129, .3);
}
[data-theme="dark"] .csv-import-drop {
    background: var(--surface);
    border-color: var(--border);
}
[data-theme="dark"] .csv-import-drop.is-dragover,
[data-theme="dark"] .csv-import-drop.has-file {
    border-color: #818cf8;
    background: rgba(99, 102, 241, .08);
}
[data-theme="dark"] .csv-import-drop-inner strong { color: var(--text); }
[data-theme="dark"] .csv-import-option-card {
    background: var(--surface);
    border-color: var(--border);
}
[data-theme="dark"] .csv-import-option-card:has(input:checked) {
    background: rgba(245, 158, 11, .1);
    border-color: rgba(245, 158, 11, .4);
}
[data-theme="dark"] .csv-import-option-body strong { color: var(--text); }
[data-theme="dark"] .csv-import-stat,
[data-theme="dark"] .csv-import-panel {
    background: var(--surface);
    border-color: var(--border);
}
[data-theme="dark"] .csv-import-stat-val,
[data-theme="dark"] .csv-import-panel-head h4,
[data-theme="dark"] .csv-import-mini-stat strong { color: var(--text); }
[data-theme="dark"] .csv-import-table th { background: var(--surface-2); }
[data-theme="dark"] .csv-import-table th,
[data-theme="dark"] .csv-import-table td { border-color: var(--border); }
[data-theme="dark"] .csv-import-mini-stat,
[data-theme="dark"] .csv-import-sample-chip {
    background: var(--surface-2);
    border-color: var(--border);
    color: var(--text-2);
}
[data-theme="dark"] .csv-import-sample-chip--legacy {
    background: rgba(245, 158, 11, .1);
    border-color: rgba(245, 158, 11, .25);
}
[data-theme="dark"] .csv-import-progress-card,
[data-theme="dark"] .csv-import-modal-card {
    background: var(--surface);
    border: 1px solid var(--border);
}
[data-theme="dark"] .csv-import-modal-head,
[data-theme="dark"] .csv-import-modal-foot {
    border-color: var(--border);
    background: var(--surface-2);
}
[data-theme="dark"] .csv-import-progress-track { background: var(--surface-2); }
[data-theme="dark"] .csv-import-result--err {
    background: rgba(239, 68, 68, .12);
    border-color: rgba(239, 68, 68, .3);
    color: #fca5a5;
}
[data-theme="dark"] .csv-import-done {
    background: linear-gradient(180deg, rgba(16, 185, 129, .12) 0%, var(--surface) 50%);
    border-color: rgba(16, 185, 129, .28);
    box-shadow: 0 8px 28px rgba(0, 0, 0, .25);
}
[data-theme="dark"] .csv-import-done-head {
    border-color: rgba(16, 185, 129, .2);
    background: rgba(0, 0, 0, .15);
}
[data-theme="dark"] .csv-import-done-head-text strong { color: #6ee7b7; }
[data-theme="dark"] .csv-import-done-head-text span { color: #94a3b8; }
[data-theme="dark"] .csv-import-done-section--warn {
    background: rgba(245, 158, 11, .1);
    border-color: rgba(245, 158, 11, .25);
}
[data-theme="dark"] .csv-import-done-section--dedupe {
    background: rgba(14, 165, 233, .1);
    border-color: rgba(14, 165, 233, .25);
}
[data-theme="dark"] .csv-import-done-section--muted {
    background: var(--surface-2);
    border-color: var(--border);
}
[data-theme="dark"] .csv-import-done-section-head strong { color: #fbbf24; }
[data-theme="dark"] .csv-import-done-section--dedupe .csv-import-done-section-head strong { color: #7dd3fc; }
[data-theme="dark"] .csv-import-done-sample {
    background: var(--surface);
    border-color: rgba(245, 158, 11, .3);
}
[data-theme="dark"] .csv-import-done-tip { color: var(--text-2); }
[data-theme="dark"] .csv-import-done--error {
    background: linear-gradient(180deg, rgba(239, 68, 68, .12) 0%, var(--surface) 60%);
    border-color: rgba(239, 68, 68, .28);
}
[data-theme="dark"] .csv-import-done--error .csv-import-done-head-text strong { color: #fca5a5; }
[data-theme="dark"] .csv-import-confirm-dedupe {
    background: rgba(239, 68, 68, .1);
    border-color: rgba(239, 68, 68, .25);
    color: #fca5a5;
}
[data-theme="dark"] .csv-import-confirm-warn {
    background: rgba(245, 158, 11, .1);
    color: #fbbf24;
}
[data-theme="dark"] .csv-import-analyze-title { color: var(--text); }
[data-theme="dark"] .csv-import-analyze-sub { color: var(--text-2); }
[data-theme="dark"] .csv-import-analyze-track { background: var(--surface-2); }
[data-theme="dark"] .csv-import-analyze-spinner-svg circle { stroke: #818cf8; }
[data-theme="dark"] .csv-import-mobile-search,
[data-theme="dark"] .csv-import-mobile-filter {
    background: var(--surface);
    border-color: var(--border);
    color: var(--text);
}
[data-theme="dark"] .csv-import-reason-chip {
    background: var(--surface-2);
    border-color: var(--border);
    color: var(--text-2);
}
[data-theme="dark"] .csv-import-reason-chip.is-active,
[data-theme="dark"] .csv-import-reason-chip:hover {
    background: rgba(245, 158, 11, .12);
    border-color: rgba(245, 158, 11, .35);
}

/* --- قالب‌ها --- */
[data-theme="dark"] .tpl-item {
    background: var(--surface-2);
    border-color: var(--border);
}
[data-theme="dark"] .tpl-sample {
    background: var(--surface);
    border-color: var(--border);
    color: var(--text-2);
}

/* --- صفحه‌بندی --- */
[data-theme="dark"] .pagination-wrap,
[data-theme="dark"] .sms-logs-pagination {
    background: var(--surface-2);
    border-color: var(--border);
}
[data-theme="dark"] .page-link {
    background: var(--surface);
    border-color: var(--border);
    color: var(--text);
}
[data-theme="dark"] .page-link:hover { background: var(--surface-3); }
[data-theme="dark"] .page-link.active {
    background: var(--primary);
    color: #fff;
    border-color: var(--primary);
}
[data-theme="dark"] .activity-pagination {
    background: var(--surface-2);
    border-color: var(--border);
    box-shadow: none;
}
[data-theme="dark"] .activity-pagination .pagination {
    background: var(--surface-3);
}
[data-theme="dark"] .activity-pagination .page-link {
    background: transparent;
    border-color: transparent;
    color: var(--text);
}
[data-theme="dark"] .activity-pagination .page-link:hover:not(.disabled):not(.active) {
    background: var(--surface);
    border-color: var(--border);
    box-shadow: none;
}
[data-theme="dark"] .activity-pagination .page-link.active {
    background: var(--primary);
    color: #fff;
    border-color: var(--primary);
}

/* --- سرویس آنلاین --- */
[data-theme="dark"] .svc-online-unknown,
[data-theme="dark"] .svc-online-no { background: var(--surface-3); color: var(--text-2); }
[data-theme="dark"] #users-table.users-data-table .svc-online-pill.svc-online-placeholder {
    background: transparent;
    color: var(--text-3);
}
[data-theme="dark"] .svc-online-loading { background: #422006; color: #fcd34d; }
[data-theme="dark"] .svc-online-yes { background: #064e3b; color: #6ee7b7; }

/* --- inv sum --- */
[data-theme="dark"] .inv-sum-badge {
    background: var(--surface-2);
    border-color: var(--border);
    color: var(--text);
}

/* --- login --- */
[data-theme="dark"] .login-body {
    background: linear-gradient(135deg, #0a0f1a 0%, #1e1b4b 45%, #312e81 100%);
}
[data-theme="dark"] .login-card {
    background: var(--login-card-bg);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.5);
}

/* --- scrollbar --- */
[data-theme="dark"] ::-webkit-scrollbar-thumb { background: var(--scrollbar-thumb); }
[data-theme="dark"] ::-webkit-scrollbar-track { background: var(--scrollbar-track); }

/* --- تم toggle --- */
.theme-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 1px solid var(--theme-toggle-border);
    border-radius: 12px;
    background: var(--theme-toggle-bg);
    color: var(--text-2);
    cursor: pointer;
    transition: background .2s, border-color .2s, color .2s, transform .15s;
    flex-shrink: 0;
}
.theme-toggle:hover {
    border-color: var(--primary);
    color: var(--primary);
    transform: translateY(-1px);
}
.theme-toggle svg { width: 20px; height: 20px; }
.theme-toggle .icon-moon { display: none; }
.theme-toggle .icon-sun  { display: block; }
[data-theme="dark"] .theme-toggle .icon-moon { display: block; }
[data-theme="dark"] .theme-toggle .icon-sun  { display: none; }

.theme-toggle[data-theme-mode="auto"]::after {
    content: '';
    position: absolute;
    top: 6px;
    left: 6px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--primary);
    box-shadow: 0 0 0 2px var(--theme-toggle-bg);
}
.theme-toggle { position: relative; }

[data-theme="dark"] .profile-theme-option-icon { background: var(--surface-2); }
[data-theme="dark"] .profile-theme-option-body { background: var(--surface); }

[data-theme="dark"] .dash-kpi {
    background: var(--surface);
    border-color: var(--border);
    box-shadow: 0 4px 18px -8px rgba(0, 0, 0, 0.35);
}
[data-theme="dark"] .dash-kpi-icon {
    background: color-mix(in srgb, var(--accent) 18%, var(--surface-2));
}
[data-theme="dark"] .dash-kpi-value { color: var(--text); }
[data-theme="dark"] .dash-kpi-label { color: var(--text-2); }
[data-theme="dark"] .dash-kpi-hint { color: var(--text-3); }
[data-theme="dark"] .dash-kpi-unit { color: var(--text-3); }

[data-theme="dark"] .dash-admin-hub {
    background: var(--surface);
    border-color: var(--border);
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.25);
}
[data-theme="dark"] .dash-admin-hub-top {
    background: linear-gradient(135deg, color-mix(in srgb, var(--primary) 12%, var(--surface)) 0%, var(--surface) 55%);
}
[data-theme="dark"] .dash-admin-side {
    background: var(--surface-2);
    border-color: var(--border);
}
[data-theme="dark"] .dash-admin-kpi,
[data-theme="dark"] .dash-admin-insights,
[data-theme="dark"] .dash-admin-stat {
    background: var(--surface);
    border-color: var(--border);
}
[data-theme="dark"] .dash-admin-kpi--blue,
[data-theme="dark"] .dash-admin-kpi--indigo,
[data-theme="dark"] .dash-admin-kpi--green,
[data-theme="dark"] .dash-admin-kpi--slate {
    background: var(--surface);
}
[data-theme="dark"] .dash-admin-kpi-value { color: var(--text); }
[data-theme="dark"] .dash-admin-stat-val { color: var(--primary); }
[data-theme="dark"] .dash-admin-insights-head {
    background: var(--surface-2);
}
[data-theme="dark"] .dash-admin-feed {
    background: var(--surface);
}
[data-theme="dark"] .dash-act-row {
    background: var(--surface-2);
    border-color: var(--border);
}
[data-theme="dark"] .dash-act-row:hover {
    background: var(--surface);
    border-color: color-mix(in srgb, var(--primary) 40%, var(--border));
}
[data-theme="dark"] .dash-act-row-tag {
    background: var(--primary-light);
    color: var(--primary);
}
[data-theme="dark"] .dash-act-row-rel {
    background: var(--surface-3);
}
[data-theme="dark"] .dash-act-modal-hero {
    background: var(--surface-2);
    border-color: var(--border);
}
[data-theme="dark"] .dash-act-modal-dl dt { color: var(--text-2); }
[data-theme="dark"] .dash-act-modal-dl dd { color: var(--text); }

[data-theme="dark"] tbody tr:hover {
    background: var(--table-row-hover);
}
[data-theme="dark"] #users-table.users-data-table tbody tr.svc-table-row:hover {
    background: var(--subs-row-hover-bg);
    box-shadow: var(--subs-row-hover-accent);
}

[data-theme="dark"] .users-data-table thead th {
    background: var(--table-head-bg);
    color: var(--text-2);
}

[data-theme="dark"] .svc-table-row.is-selected,
[data-theme="dark"] .user-row.is-selected {
    background: var(--primary-light) !important;
}

[data-theme="dark"] .subs-check-box {
    background: var(--surface);
    border-color: var(--panel-box-border);
}
[data-theme="dark"] .subs-check input:checked + .subs-check-box {
    background: linear-gradient(145deg, #3b82f6, #1d4ed8);
    border-color: #3b82f6;
}
[data-theme="dark"] .subs-bulk-bar {
    background: linear-gradient(135deg, rgba(37, 99, 235, .14) 0%, var(--panel-box-bg) 55%, rgba(99, 102, 241, .1) 100%);
    border-color: rgba(96, 165, 250, .28);
    box-shadow: 0 4px 20px rgba(0, 0, 0, .25);
}
[data-theme="dark"] .subs-bulk-count { color: #93c5fd; }
[data-theme="dark"] .subs-bulk-count-label { color: var(--text-2); }
[data-theme="dark"] .subs-bulk-btn {
    background: var(--surface);
    color: var(--text);
    border-color: var(--panel-box-border);
    box-shadow: none;
}
[data-theme="dark"] .subs-bulk-btn:hover {
    background: var(--menu-trigger-hover-bg);
}
[data-theme="dark"] .subs-bulk-btn--delete { color: #fca5a5; border-color: rgba(248, 113, 113, .25); }
[data-theme="dark"] .subs-bulk-btn--delete:hover { background: rgba(127, 29, 29, .35); color: #fecaca; }
[data-theme="dark"] .subs-bulk-deselect {
    background: rgba(15, 23, 42, .55);
    border-color: var(--panel-box-border);
    color: var(--text-2);
}
[data-theme="dark"] .subs-bulk-deselect:hover {
    background: var(--menu-trigger-hover-bg);
    border-color: #64748b;
    color: var(--text);
}
[data-theme="dark"] .subs-bulk-confirm-list {
    background: var(--panel-box-bg);
    border-color: var(--panel-box-border);
}
[data-theme="dark"] .subs-bulk-group-badge {
    background: rgba(59, 130, 246, .15);
    color: #93c5fd;
    border-color: rgba(96, 165, 250, .25);
}
[data-theme="dark"] .subs-bulk-stat--ok { background: rgba(6, 78, 59, .35); color: #6ee7b7; border-color: rgba(52, 211, 153, .25); }
[data-theme="dark"] .subs-bulk-stat--fail { background: rgba(127, 29, 29, .35); color: #fca5a5; border-color: rgba(248, 113, 113, .25); }
[data-theme="dark"] .subs-bulk-stat--total { background: var(--panel-box-bg); color: var(--text-2); border-color: var(--panel-box-border); }
[data-theme="dark"] .subs-bulk-result-table thead th { background: var(--table-head-bg); }
[data-theme="dark"] .subs-bulk-result-ok { background: rgba(6, 78, 59, .18); }
[data-theme="dark"] .subs-bulk-result-fail { background: rgba(127, 29, 29, .18); }
[data-theme="dark"] .subs-bulk-pill--ok { background: rgba(6, 78, 59, .45); color: #6ee7b7; }
[data-theme="dark"] .subs-bulk-pill--fail { background: rgba(127, 29, 29, .45); color: #fca5a5; }
[data-theme="dark"] .subs-bulk-modal-icon--warn { background: rgba(180, 83, 9, .25); color: #fcd34d; }
[data-theme="dark"] .subs-bulk-modal-icon--sms { background: rgba(29, 78, 216, .25); color: #93c5fd; }
[data-theme="dark"] .subs-bulk-modal-icon--result { background: rgba(4, 120, 87, .25); color: #6ee7b7; }
[data-theme="dark"] .subs-bulk-modal-footer {
    background: var(--surface-2);
    border-color: var(--border);
    box-shadow: 0 -8px 24px -16px rgba(0, 0, 0, .35);
}

[data-theme="dark"] .subs-reminder-block.is-disabled {
    opacity: 0.55;
}
[data-theme="dark"] .subs-reminder-templates-label { color: var(--text-2); }
[data-theme="dark"] .subs-reminder-hint { color: var(--text-2); }
[data-theme="dark"] .subs-reminder-block {
    background: var(--panel-box-bg);
    border-color: var(--panel-box-border);
}
[data-theme="dark"] .subs-sort-btn { color: var(--text-2); }
[data-theme="dark"] .subs-sort-btn.is-active { color: var(--primary-dark); }

/* --- منوی عملیات اشتراک --- */
[data-theme="dark"] .svc-td-actions { background: transparent; }
[data-theme="dark"] .users-data-table tbody td.svc-td-actions { background: inherit; }
[data-theme="dark"] .svc-menu-trigger {
    background: var(--menu-trigger-bg);
    border-color: var(--panel-box-border);
    color: var(--text-2);
}
[data-theme="dark"] .svc-menu-trigger:hover {
    background: var(--menu-trigger-hover-bg);
    color: var(--text);
}
[data-theme="dark"] .svc-menu-trigger[aria-expanded="true"] {
    background: var(--menu-trigger-active-bg);
    border-color: var(--panel-item-checked-border);
    color: var(--primary);
}
[data-theme="dark"] .svc-menu-dropdown {
    background: var(--menu-dropdown-bg);
    border-color: var(--panel-box-border);
    box-shadow: 0 10px 40px rgba(0, 0, 0, .45), 0 2px 8px rgba(0, 0, 0, .3);
}
[data-theme="dark"] .svc-menu-item { color: var(--text); }
[data-theme="dark"] .svc-menu-item:hover { background: var(--menu-item-hover-bg); }
[data-theme="dark"] .svc-menu-del:hover { background: var(--danger-bg); color: var(--danger); }
[data-theme="dark"] .svc-menu-edit .svc-menu-icon { background: #312e81; color: #c4b5fd; }
[data-theme="dark"] .svc-menu-extend .svc-menu-icon { background: #1e3a5f; color: #93c5fd; }
[data-theme="dark"] .svc-menu-group .svc-menu-icon { background: #064e3b; color: #6ee7b7; }
[data-theme="dark"] .svc-menu-toggle .svc-menu-icon { background: #451a03; color: #fcd34d; }
[data-theme="dark"] .svc-menu-online .svc-menu-icon { background: #0c4a6e; color: #7dd3fc; }
[data-theme="dark"] .svc-menu-kick .svc-menu-icon { background: #431407; color: #fdba74; }
[data-theme="dark"] .svc-menu-del .svc-menu-icon { background: #450a0a; color: #fca5a5; }
[data-theme="dark"] .svc-row-primary { background: var(--row-highlight-bg); }

/* --- انتقال اکانت / user-pick --- */
[data-theme="dark"] .svc-transfer-block {
    background: var(--panel-accent-bg);
    border-color: var(--accent-dashed-border);
}
[data-theme="dark"] .svc-owner-card {
    background: var(--panel-card-bg);
    border-color: var(--border);
}
[data-theme="dark"] .svc-transfer-badge {
    background: var(--primary-light);
    color: var(--primary-dark);
}
[data-theme="dark"] .user-pick-search-box {
    background: var(--user-pick-search-bg);
}
[data-theme="dark"] .user-pick-dropdown {
    background: var(--user-pick-dropdown-bg);
    box-shadow: 0 16px 40px rgba(0, 0, 0, .45);
}
[data-theme="dark"] .user-pick-selected-card {
    background: var(--user-pick-card-bg);
    border-color: var(--panel-item-checked-border);
    box-shadow: 0 4px 20px rgba(0, 0, 0, .35), 0 1px 3px rgba(0, 0, 0, .25);
}
[data-theme="dark"] .user-pick-selected-badge {
    background: rgba(30, 27, 75, .9);
    border-color: var(--panel-item-checked-border);
    color: var(--primary-dark);
}
[data-theme="dark"] .user-pick-avatar-lg { border-color: var(--surface-2); }
[data-theme="dark"] .user-pick-meta-row {
    background: var(--user-pick-meta-bg);
    border-color: var(--user-pick-meta-border);
}
[data-theme="dark"] .user-pick-meta-label { color: var(--user-pick-meta-label); }
[data-theme="dark"] .user-pick-meta-value,
[data-theme="dark"] .user-pick-meta-value--mobile { color: var(--user-pick-meta-value); }
[data-theme="dark"] .user-pick-meta-mobile { color: var(--user-pick-meta-value); }
[data-theme="dark"] .radix-user-mode { background: var(--primary-light); border-color: var(--panel-item-checked-border); }
[data-theme="dark"] .radix-user-mode-btn { color: var(--text-2); }
[data-theme="dark"] .radix-user-mode-btn:hover { color: var(--text); }
[data-theme="dark"] .radix-user-mode-btn.active {
    background: var(--panel-card-bg);
    color: var(--primary-dark);
}
[data-theme="dark"] .radix-section {
    background: var(--panel-section-bg);
    border-color: var(--panel-box-border);
}
[data-theme="dark"] .radix-section-head {
    background: var(--panel-section-head-bg);
    border-color: var(--border);
}
[data-theme="dark"] .radix-section-title { color: var(--text); }
[data-theme="dark"] .radix-section-num {
    background: var(--primary-light);
    color: var(--primary-dark);
}
[data-theme="dark"] .radix-modal-header {
    background: var(--radix-modal-head-bg);
    border-color: var(--border);
}
[data-theme="dark"] .radix-modal-footer {
    background: var(--panel-section-head-bg);
    border-color: var(--border);
}
[data-theme="dark"] .radix-invoice-field {
    background: var(--panel-card-bg);
    border-color: var(--panel-box-border);
}
[data-theme="dark"] .radix-modal {
    border-color: var(--border);
}
[data-theme="dark"] .svc-pass-toggle {
    background: var(--surface-2);
    border-color: var(--border);
    color: var(--text);
}
[data-theme="dark"] .svc-pass-toggle:hover {
    background: var(--surface-3);
    border-color: #6366f1;
    color: #e0e7ff;
}
[data-theme="dark"] .radix-section-body .subs-reminder-block {
    border-top-color: var(--border);
}

/* --- مدیریت کاربران: ویرایش --- */
[data-theme="dark"] .um-svc-reminder-wrap {
    background: var(--panel-card-bg);
    border-color: var(--panel-box-border);
}
[data-theme="dark"] .um-svc-batch-bar {
    background: var(--panel-muted-bg);
    border-color: var(--panel-box-border);
}
[data-theme="dark"] .um-group-prices-table .um-group-price-input {
    background: var(--input-bg);
    border-color: var(--input-border);
    color: var(--text);
}
[data-theme="dark"] .um-filter-bar {
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
}
[data-theme="dark"] .um-filter-row-secondary {
    border-color: var(--border);
}
[data-theme="dark"] .um-filter-field label { color: var(--text-2); }
[data-theme="dark"] .um-svc-search-input {
    background: var(--input-bg);
    border-color: var(--input-border);
    color: var(--text);
}
[data-theme="dark"] .jalali-datetime-field { background: var(--panel-accent-bg); }
[data-theme="dark"] .jalali-datetime-input { color: var(--text); }
[data-theme="dark"] .pr-send-mode { background: var(--surface-3); }
[data-theme="dark"] .pr-send-mode-btn { color: var(--text-2); }
[data-theme="dark"] .pr-send-mode-btn:hover { color: var(--text); }
[data-theme="dark"] .pr-send-mode-btn.active {
    background: var(--panel-card-bg);
    color: var(--primary-dark);
}
[data-theme="dark"] .pr-var-chip {
    background: linear-gradient(180deg, rgba(49, 46, 129, .45) 0%, rgba(30, 27, 75, .35) 100%);
    border-color: rgba(129, 140, 248, .35);
    color: #c7d2fe;
}
[data-theme="dark"] .pr-var-chip:hover {
    background: linear-gradient(180deg, rgba(67, 56, 202, .5) 0%, rgba(49, 46, 129, .4) 100%);
    border-color: rgba(165, 180, 252, .45);
    color: #e0e7ff;
    box-shadow: 0 3px 12px rgba(99, 102, 241, .2);
}
[data-theme="dark"] .svc-table-wrap { background: var(--surface); }
[data-theme="dark"] .svc-table thead th { background: var(--table-head-gradient); }
[data-theme="dark"] .svc-table tbody td { border-color: var(--table-row-border); }
[data-theme="dark"] .svc-table-row:hover { background: var(--table-row-hover); }

/* --- تنظیمات --- */
[data-theme="dark"] .settings-page-header {
    background: linear-gradient(135deg, rgba(99, 102, 241, .12) 0%, rgba(15, 23, 42, .85) 55%);
    border-color: var(--border);
    box-shadow: none;
}
[data-theme="dark"] .settings-page-icon {
    background: rgba(99, 102, 241, .18);
    border-color: rgba(99, 102, 241, .25);
    color: #a5b4fc;
}
[data-theme="dark"] .settings-chip--ok {
    background: rgba(6, 78, 59, .35);
    color: #6ee7b7;
    border-color: rgba(16, 185, 129, .25);
}
[data-theme="dark"] .settings-chip--muted {
    background: rgba(51, 65, 85, .45);
    color: #94a3b8;
    border-color: var(--border);
}
[data-theme="dark"] .settings-chip--bad {
    background: rgba(127, 29, 29, .35);
    color: #fca5a5;
    border-color: rgba(239, 68, 68, .25);
}
[data-theme="dark"] .settings-danger-card {
    background: var(--danger-zone-bg);
    border-color: var(--danger-zone-border);
    box-shadow: var(--danger-zone-shadow);
}
[data-theme="dark"] .settings-danger-card .card-header h2,
[data-theme="dark"] .settings-danger-head h2 { color: var(--danger-zone-title); }
[data-theme="dark"] .settings-card--profile .settings-card-head {
    background: linear-gradient(90deg, rgba(59, 130, 246, .12) 0%, transparent 72%);
}
[data-theme="dark"] .settings-card--openvpn .settings-card-head {
    background: linear-gradient(90deg, rgba(20, 184, 166, .12) 0%, transparent 72%);
}
[data-theme="dark"] .settings-card--webhook .settings-card-head {
    background: linear-gradient(90deg, rgba(245, 158, 11, .12) 0%, transparent 72%);
}
[data-theme="dark"] .settings-card--sms .settings-card-head {
    background: linear-gradient(90deg, rgba(16, 185, 129, .12) 0%, transparent 72%);
}
[data-theme="dark"] .settings-card-icon--profile { background: rgba(59, 130, 246, .15); color: #93c5fd; }
[data-theme="dark"] .settings-card-icon--sms     { background: rgba(16, 185, 129, .15); color: #6ee7b7; }
[data-theme="dark"] .settings-card-icon--webhook { background: rgba(245, 158, 11, .15); color: #fcd34d; }
[data-theme="dark"] .settings-card-icon--openvpn { background: rgba(20, 184, 166, .15); color: #5eead4; }
[data-theme="dark"] .settings-card-icon--danger  { background: rgba(239, 68, 68, .15); color: #fca5a5; }
[data-theme="dark"] .settings-status-dot--ok    { background: rgba(22, 101, 52, .35); color: #86efac; }
[data-theme="dark"] .settings-status-dot--muted { background: rgba(51, 65, 85, .55); color: #94a3b8; }
[data-theme="dark"] .settings-status-dot--bad   { background: rgba(127, 29, 29, .35); color: #fca5a5; }
[data-theme="dark"] .settings-tag,
[data-theme="dark"] .settings-sms-stat,
[data-theme="dark"] .settings-kv-item {
    background: var(--surface);
    border-color: var(--border);
}
[data-theme="dark"] .settings-copy-input {
    background: var(--surface);
    border-color: var(--border);
    color: var(--text);
}
[data-theme="dark"] .settings-check:hover {
    background: rgba(99, 102, 241, .08);
    border-color: rgba(99, 102, 241, .15);
}
[data-theme="dark"] .settings-check-box {
    background: var(--surface);
    border-color: #475569;
}
[data-theme="dark"] .settings-toggle-ui { background: #475569; }
[data-theme="dark"] .settings-toggle input:checked + .settings-toggle-ui { background: #6366f1; }
[data-theme="dark"] .settings-kv-pill--ok   { background: rgba(22, 101, 52, .25); color: #86efac; }
[data-theme="dark"] .settings-kv-pill--fail { background: rgba(185, 28, 28, .25); color: #fca5a5; }
[data-theme="dark"] .settings-inline-alert--warn,
[data-theme="dark"] .settings-alert--warn {
    background: rgba(154, 52, 18, .15);
    border-color: rgba(251, 146, 60, .35);
    color: #fdba74;
}
[data-theme="dark"] .settings-footnote code { background: rgba(0, 0, 0, .25); }
[data-theme="dark"] .settings-note {
    background: var(--info-bg);
    border-color: var(--border);
}
[data-theme="dark"] .settings-note code { background: rgba(0, 0, 0, .25); }
[data-theme="dark"] .settings-danger-block {
    background: rgba(17, 24, 39, .35);
    border-color: var(--border);
}
[data-theme="dark"] .settings-danger-block--remove {
    border-color: rgba(127, 29, 29, .55);
    background: rgba(69, 10, 10, .25);
}
[data-theme="dark"] .settings-danger-block--remove h3 { color: #fca5a5; }
[data-theme="dark"] .settings-danger-block--keep {
    border-color: rgba(21, 128, 61, .45);
    background: rgba(5, 46, 22, .25);
}
[data-theme="dark"] .settings-danger-block--keep h3 { color: #86efac; }
[data-theme="dark"] .settings-danger-action {
    background: rgba(17, 24, 39, .45);
    border-color: var(--danger-zone-border);
}

[data-theme="dark"] .chip {
    background: var(--chip-bg);
    color: var(--primary-dark);
}

[data-theme="dark"] .sample-box {
    background: var(--info-bg);
    border-color: var(--border);
    color: var(--info);
}

[data-theme="dark"] .send-preview-panel {
    background: linear-gradient(160deg, rgba(30, 41, 59, .65) 0%, rgba(49, 46, 129, .22) 55%, rgba(15, 23, 42, .75) 100%);
    border-color: rgba(129, 140, 248, .22);
    box-shadow: 0 8px 28px rgba(0, 0, 0, .28);
}
[data-theme="dark"] .send-preview-panel--bulk {
    background: linear-gradient(160deg, rgba(69, 26, 3, .35) 0%, rgba(120, 53, 15, .2) 55%, rgba(15, 23, 42, .7) 100%);
    border-color: rgba(251, 191, 36, .2);
}
[data-theme="dark"] .send-preview-head {
    border-bottom-color: rgba(148, 163, 184, .12);
}
[data-theme="dark"] .send-preview-phone-screen {
    background: linear-gradient(180deg, #1e293b, #0f172a);
}
[data-theme="dark"] .send-preview-sender { color: #94a3b8; }
[data-theme="dark"] .send-preview-bubble {
    background: #334155;
    border-color: #475569;
    color: #f1f5f9;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .25);
}
[data-theme="dark"] .send-preview-bubble--bulk {
    background: linear-gradient(135deg, #422006, #334155);
    border-color: #92400e;
}
[data-theme="dark"] .send-preview-bubble.is-empty { color: #94a3b8; }
[data-theme="dark"] .send-preview-missing-sample { color: #fbbf24; }
[data-theme="dark"] .send-preview-phone-meta { color: #94a3b8; }
[data-theme="dark"] .send-preview-meta-row {
    background: rgba(15, 23, 42, .55);
    border-color: var(--panel-box-border);
}
[data-theme="dark"] .send-preview-param-chip {
    background: rgba(15, 23, 42, .5);
    border-color: var(--panel-box-border);
}
[data-theme="dark"] .send-preview-param-name { color: #a5b4fc; }
[data-theme="dark"] .send-preview-warning {
    background: rgba(120, 53, 15, .35);
    border-color: rgba(251, 191, 36, .25);
    color: #fcd34d;
}
[data-theme="dark"] .send-preview-count-note { color: var(--text-2); }

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

[data-theme="dark"] .quick-btn {
    background: var(--primary-light);
    color: var(--primary-dark);
}

[data-theme="dark"] .roles-hero {
    background: linear-gradient(135deg, #0f0a2e 0%, #1e1b4b 50%, #312e81 100%);
    border-color: rgba(129, 140, 248, 0.25);
}
[data-theme="dark"] .roles-form-card,
[data-theme="dark"] .role-card {
    background: var(--surface);
    border-color: var(--border);
}
[data-theme="dark"] .roles-form-card--locked {
    background: linear-gradient(180deg, rgba(245, 158, 11, 0.08) 0%, var(--surface) 120px);
    border-color: rgba(245, 158, 11, 0.35);
}
[data-theme="dark"] .roles-form-head {
    background: var(--surface-2);
}
[data-theme="dark"] .roles-lock-badge {
    background: rgba(245, 158, 11, 0.15);
    color: #fcd34d;
    border-color: rgba(245, 158, 11, 0.35);
}
[data-theme="dark"] .perm-scroll-shell {
    background: linear-gradient(180deg, var(--surface-2) 0%, var(--surface) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
[data-theme="dark"] .perm-scroll-body.perm-tree-v2 {
    scrollbar-color: rgba(129, 140, 248, 0.5) transparent;
}
[data-theme="dark"] .perm-scroll-fade--top {
    background: linear-gradient(to bottom, var(--surface) 0%, transparent 100%);
}
[data-theme="dark"] .perm-scroll-fade--bottom {
    background: linear-gradient(to top, var(--surface) 0%, transparent 100%);
}
[data-theme="dark"] .perm-tree-group-head-v2 {
    background: rgba(30, 41, 59, 0.92);
}
[data-theme="dark"] .perm-tree-v2 {
    background: var(--surface-2);
}
[data-theme="dark"] .perm-tree-group-v2 {
    background: var(--surface);
}
[data-theme="dark"] .perm-tree-group-icon {
    background: var(--primary-light);
}
[data-theme="dark"] .perm-tree-check {
    background: var(--surface-2);
    border-color: var(--border);
}
[data-theme="dark"] .perm-tree-sub-v2 {
    background: var(--surface-2);
}
[data-theme="dark"] .role-card--system {
    background: linear-gradient(145deg, rgba(245, 158, 11, 0.08) 0%, var(--surface) 50%);
    border-color: rgba(245, 158, 11, 0.35);
}
[data-theme="dark"] .role-card--system .role-card-icon {
    background: rgba(245, 158, 11, 0.2);
}
[data-theme="dark"] .role-card-icon {
    background: var(--primary-light);
}

/* --- پنل سریع کاربر --- */
[data-theme="dark"] .users-quick-header {
    background: linear-gradient(180deg, var(--surface-2) 0%, var(--surface) 100%);
}
[data-theme="dark"] .users-quick-footer { background: var(--surface-2); }
[data-theme="dark"] .users-quick-edit-btn {
    background: linear-gradient(180deg, rgba(6, 78, 59, .42) 0%, rgba(6, 95, 70, .28) 100%);
    border-color: rgba(52, 211, 153, .38);
    color: #6ee7b7;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
}
[data-theme="dark"] .users-quick-edit-btn:hover {
    background: linear-gradient(180deg, rgba(6, 95, 70, .55) 0%, rgba(5, 150, 105, .4) 100%);
    border-color: rgba(74, 222, 128, .5);
    color: #a7f3d0;
    box-shadow: 0 4px 16px rgba(16, 185, 129, .18);
}
[data-theme="dark"] .subs-tpl-pick {
    background: var(--surface-2);
    border-color: var(--border);
}
[data-theme="dark"] .subs-tpl-pick:hover {
    border-color: rgba(52, 211, 153, .35);
    background: rgba(6, 78, 59, .18);
}
[data-theme="dark"] .subs-tpl-pick:has(.subs-tpl-pick-input:checked) {
    border-color: rgba(52, 211, 153, .55);
    background: linear-gradient(180deg, rgba(6, 78, 59, .38) 0%, rgba(6, 95, 70, .22) 100%);
    box-shadow: 0 2px 12px rgba(16, 185, 129, .15);
}
[data-theme="dark"] .subs-tpl-pick-text { color: var(--text); }
[data-theme="dark"] .subs-tpl-pick:has(.subs-tpl-pick-input:checked) .subs-tpl-pick-text {
    color: #6ee7b7;
}
[data-theme="dark"] .subs-tpl-pick-box {
    background: var(--surface-3);
    border-color: var(--border);
}
[data-theme="dark"] .subs-tpl-pick-input:checked + .subs-tpl-pick-box {
    background: linear-gradient(145deg, #10b981 0%, #059669 100%);
    border-color: #34d399;
}
[data-theme="dark"] .uq-hero {
    background: linear-gradient(135deg, #1e2640 0%, #1a2332 55%, #111827 100%);
    border-color: var(--border);
}
[data-theme="dark"] .uq-hero-icon {
    background: var(--surface-3);
    border-color: var(--border);
    color: var(--primary);
}
[data-theme="dark"] button.subs-mobile-wrap:hover,
[data-theme="dark"] .subs-mobile-hit:hover {
    background: var(--subs-row-hover-bg);
    box-shadow: inset 0 0 0 1px rgba(129, 140, 248, .18);
}
[data-theme="dark"] .subs-mobile-status--ok {
    background: rgba(22, 101, 52, .28);
    color: #86efac;
}
[data-theme="dark"] .subs-mobile-status--invalid {
    background: rgba(185, 28, 28, .28);
    color: #fca5a5;
}
[data-theme="dark"] .subs-mobile-status--missing {
    background: rgba(100, 116, 139, .2);
    color: #cbd5e1;
}
[data-theme="dark"] .subs-mobile-wrap--invalid .subs-mobile-text {
    color: #fca5a5;
}

[data-theme="dark"] .subs-remain--ok {
    background: linear-gradient(180deg, rgba(16, 185, 129, .16) 0%, rgba(16, 185, 129, .08) 100%);
    color: #6ee7b7;
    border-color: rgba(16, 185, 129, .32);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
}
[data-theme="dark"] .subs-remain--warning {
    background: linear-gradient(180deg, rgba(245, 158, 11, .18) 0%, rgba(245, 158, 11, .08) 100%);
    color: #fcd34d;
    border-color: rgba(245, 158, 11, .34);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
}
[data-theme="dark"] .subs-remain--critical,
[data-theme="dark"] .subs-remain--today {
    background: linear-gradient(180deg, rgba(239, 68, 68, .18) 0%, rgba(239, 68, 68, .08) 100%);
    color: #fca5a5;
    border-color: rgba(239, 68, 68, .34);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
}
[data-theme="dark"] .subs-remain--overdue {
    background: linear-gradient(180deg, rgba(244, 63, 94, .2) 0%, rgba(244, 63, 94, .1) 100%);
    color: #fda4af;
    border-color: rgba(244, 63, 94, .38);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
}
[data-theme="dark"] .subs-remain--none {
    color: var(--text-3);
}

[data-theme="dark"] .svc-status-loading {
    background: linear-gradient(180deg, rgba(37, 99, 235, .2) 0%, rgba(37, 99, 235, .1) 100%);
    color: #93c5fd;
    border-color: rgba(59, 130, 246, .35);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
}
[data-theme="dark"] .svc-status-loading--online {
    background: transparent;
    border: none;
    box-shadow: none;
}
[data-theme="dark"] .svc-status-spinner {
    border-color: rgba(147, 197, 253, .25);
    border-top-color: #60a5fa;
}
[data-theme="dark"] .subs-toast--success {
    background: linear-gradient(180deg, rgba(16, 185, 129, .18) 0%, rgba(16, 185, 129, .1) 100%);
    color: #6ee7b7;
    border-color: rgba(16, 185, 129, .35);
    box-shadow: 0 10px 28px rgba(0, 0, 0, .35);
}
[data-theme="dark"] .subs-toast--error {
    background: linear-gradient(180deg, rgba(239, 68, 68, .18) 0%, rgba(239, 68, 68, .1) 100%);
    color: #fca5a5;
    border-color: rgba(239, 68, 68, .35);
    box-shadow: 0 10px 28px rgba(0, 0, 0, .35);
}

.login-theme-wrap {
    position: fixed;
    top: 16px;
    left: 16px;
    z-index: 10;
}

/* --- تقویم شمسی --- */
[data-theme="dark"] .jp-popup-card {
    border-color: var(--border);
    box-shadow: 0 28px 64px rgba(0, 0, 0, .45);
}
[data-theme="dark"] .jp-head {
    background: linear-gradient(135deg, #1e1b4b 0%, var(--surface-2) 55%, var(--surface) 100%);
    border-bottom-color: var(--border);
}
[data-theme="dark"] .jp-period-month {
    background: var(--surface-3);
    border-color: var(--border);
}
[data-theme="dark"] .jp-period-month:hover {
    border-color: #4338ca;
    background: rgba(30, 27, 75, .35);
}
[data-theme="dark"] .jp-period-month:focus-within {
    border-color: #4338ca;
    box-shadow: 0 0 0 3px rgba(99, 102, 241, .18);
}
[data-theme="dark"] .jp-month-label { color: var(--text-2); }
[data-theme="dark"] .jp-month-num {
    color: #c7d2fe;
    background: linear-gradient(135deg, rgba(99, 102, 241, .24) 0%, rgba(79, 70, 229, .12) 100%);
    box-shadow: inset 0 0 0 1px rgba(129, 140, 248, .28);
}
[data-theme="dark"] .jp-period-year {
    background: var(--surface-3);
    border-color: var(--border);
}
[data-theme="dark"] .jp-period-year:focus-within {
    border-color: #4338ca;
    box-shadow: 0 0 0 3px rgba(99, 102, 241, .18);
}
[data-theme="dark"] .jp-year-label { color: var(--text-2); }
[data-theme="dark"] .jp-year-input {
    background: transparent;
    border: none;
    color: var(--text);
}
[data-theme="dark"] .jp-nav,
[data-theme="dark"] .jp-time-part,
[data-theme="dark"] .jp-foot-btn {
    background: var(--surface-3);
    border-color: var(--border);
    color: var(--text);
}
[data-theme="dark"] .jp-nav:hover,
[data-theme="dark"] .jp-foot-btn:hover {
    background: var(--surface-2);
    border-color: #4338ca;
    color: #a5b4fc;
}
[data-theme="dark"] .jp-day { color: var(--text); }
[data-theme="dark"] .jp-day:hover:not(.jp-day--blank) {
    background: rgba(99, 102, 241, .18);
    color: #c7d2ff;
}
[data-theme="dark"] .jp-day--today {
    box-shadow: inset 0 0 0 1.5px #4338ca;
    color: #a5b4fc;
}
[data-theme="dark"] .jp-time {
    background: var(--surface-2);
    border-color: var(--border);
}
[data-theme="dark"] .jp-foot {
    border-top-color: var(--border);
}
[data-theme="dark"] .jp-foot-primary {
    background: linear-gradient(145deg, #6366f1 0%, #4f46e5 100%);
    color: #fff;
}
[data-theme="dark"] .jp-trigger:hover {
    background: rgba(99, 102, 241, .2);
}
