/* ===== 主题切换 CSS 变量 ===== */
:root {
  /* 默认深色主题 */
  --bg-gradient: linear-gradient(135deg, #0f0f1a 0%, #1a1a2e 50%, #16213e 100%);
  --card-bg: rgba(26, 26, 46, 0.9);
  --card-border: rgba(42, 42, 74, 0.8);
  --text-primary: #e0e0e0;
  --text-secondary: #888;
  --text-muted: #666;
  --input-bg: rgba(15, 15, 26, 0.8);
  --input-border: #2a2a4a;
  --input-text: #e0e0e0;
  --btn-bg: linear-gradient(135deg, #667eea, #764ba2);
  --btn-text: #fff;
  --btn-secondary-bg: #2a2a4a;
  --btn-secondary-text: #aaa;
  --status-active: #27ae60;
  --status-active-bg: rgba(39, 174, 96, 0.15);
  --status-disabled: #e74c3c;
  --status-disabled-bg: rgba(231, 76, 60, 0.15);
  --status-whitelist: #f39c12;
  --status-whitelist-bg: rgba(243, 156, 18, 0.15);
  --empty-tip: #666;
  --error-bg: rgba(244, 67, 54, 0.15);
  --error-border: rgba(244, 67, 54, 0.3);
  --error-text: #f44336;
  --success-bg: rgba(39, 174, 96, 0.15);
  --success-border: #27ae60;
  --success-text: #27ae60;
  --toast-bg: #2a2a4a;
  --toast-success-bg: #27ae60;
  --toast-error-bg: #e74c3c;
  --modal-bg: rgba(26, 26, 46, 0.95);
  --modal-border: rgba(42, 42, 74, 0.8);
  --upload-border: #2a2a4a;
  --upload-hover-bg: rgba(102, 126, 234, 0.05);
  --file-info-bg: rgba(42, 42, 74, 0.5);
  --breadcrumb-bg: rgba(42, 42, 74, 0.5);
  --badge-bg: rgba(42, 42, 74, 0.5);
  --link-color: #667eea;
  --footer-text: #444;
  --checkbox-border: #2a2a4a;
  --checkbox-bg: rgba(15, 15, 26, 0.8);
  --switch-bg: #2a2a4a;
  --switch-checked-bg: #667eea;
  --switch-thumb: #fff;
}

[data-theme="light"] {
  --bg-gradient: linear-gradient(135deg, #f0f4f8 0%, #e2e8f0 50%, #d1d9e0 100%);
  --card-bg: rgba(255, 255, 255, 0.95);
  --card-border: rgba(200, 200, 210, 0.8);
  --text-primary: #333333;
  --text-secondary: #666666;
  --text-muted: #999999;
  --input-bg: rgba(248, 250, 252, 0.95);
  --input-border: #d1d5db;
  --input-text: #333333;
  --btn-bg: linear-gradient(135deg, #667eea, #764ba2);
  --btn-text: #fff;
  --btn-secondary-bg: #e5e7eb;
  --btn-secondary-text: #6b7280;
  --status-active: #16a34a;
  --status-active-bg: rgba(22, 163, 74, 0.1);
  --status-disabled: #dc2626;
  --status-disabled-bg: rgba(220, 38, 38, 0.1);
  --status-whitelist: #d97706;
  --status-whitelist-bg: rgba(217, 119, 6, 0.1);
  --empty-tip: #999999;
  --error-bg: rgba(244, 67, 54, 0.1);
  --error-border: rgba(244, 67, 54, 0.2);
  --error-text: #f44336;
  --success-bg: rgba(39, 174, 96, 0.1);
  --success-border: #27ae60;
  --success-text: #27ae60;
  --toast-bg: #e5e7eb;
  --toast-success-bg: #27ae60;
  --toast-error-bg: #e74c3c;
  --modal-bg: rgba(255, 255, 255, 0.98);
  --modal-border: rgba(200, 200, 210, 0.8);
  --upload-border: #d1d5db;
  --upload-hover-bg: rgba(102, 126, 234, 0.08);
  --file-info-bg: rgba(229, 231, 235, 0.8);
  --breadcrumb-bg: rgba(229, 231, 235, 0.8);
  --badge-bg: rgba(229, 231, 235, 0.8);
  --link-color: #4f46e5;
  --footer-text: #9ca3af;
  --checkbox-border: #d1d5db;
  --checkbox-bg: #f9fafb;
  --switch-bg: #d1d5db;
  --switch-checked-bg: #667eea;
  --switch-thumb: #fff;
}
