:root,
[data-theme="graphite-premium"] {
  color-scheme: dark;

  --color-primary: #60a5fa;
  --color-primary-hover: #3b82f6;
  --color-secondary: #38bdf8;
  --color-bg: #0b1220;
  --color-bg-soft: #0f172a;
  --bg-1: #040c1c;
  --bg-2: #071224;
  --bg-3: #0a1630;
  --color-surface: #0f172a;
  --color-surface-2: #111b30;
  --color-card: #111b30;
  --color-card-strong: #16213a;
  --color-text-strong: #e2e8f0;
  --color-text: #e2e8f0;
  --color-text-muted: #94a3b8;
  --color-clock-main: #f5f8ff;
  --color-border: rgba(148, 163, 184, 0.32);
  --color-success: #22c55e;
  --color-warning: #f59e0b;
  --color-danger: #ef4444;
  --color-primary-strong: #3b82f6;
  --color-primary-soft: rgba(59, 130, 246, 0.18);
  --color-accent: #38bdf8;
  --shadow-color: rgba(2, 6, 23, 0.42);
  --gradient-page: var(--color-bg);
  --gradient-card: radial-gradient(circle at 12% 0, var(--color-primary-soft), transparent 44%), linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  --gradient-hero: radial-gradient(900px 420px at 6% -20%, var(--color-primary-soft), transparent 62%), linear-gradient(180deg, var(--surface-raised), var(--surface-subtle));
  --gradient-panel: var(--gradient-card);
  --gradient-button: linear-gradient(180deg, var(--color-primary-strong), #2563eb);

  --surface-raised: #111b30;
  --surface-subtle: #0f172a;
  --surface-soft: #16213a;
  --surface-brand-soft: rgba(59, 130, 246, 0.18);
  --surface-brand-strong: linear-gradient(180deg, #3b82f6, #2563eb);

  --text-inverse: #ffffff;

  --border-strong: rgba(148, 163, 184, 0.44);
  --color-border-strong: var(--border-strong);
  --border-brand: rgba(96, 165, 250, 0.5);

  --icon-bg: rgba(59, 130, 246, 0.18);
  --icon-border: rgba(96, 165, 250, 0.4);
  --icon-fg: #bfdbfe;

  --menu-hover-bg: #16233e;
  --menu-active-bg: linear-gradient(90deg, rgba(59, 130, 246, 0.24), rgba(59, 130, 246, 0.08));
  --menu-active-border: rgba(96, 165, 250, 0.48);
  --menu-active-text: #e8f2ff;

  --btn-bg: #111b30;
  --btn-border: rgba(148, 163, 184, 0.35);
  --btn-text: #e2e8f0;
  --btn-hover-bg: #16233e;
  --btn-hover-border: rgba(148, 163, 184, 0.5);
  --btn-primary-shadow: 0 10px 20px rgba(59, 130, 246, 0.34);

  --field-bg: #111b30;
  --field-border: rgba(148, 163, 184, 0.35);
  --field-placeholder: #94a3b8;
  --select-arrow: #cbd5e1;
  --file-btn-bg: rgba(59, 130, 246, 0.18);
  --file-btn-border: rgba(96, 165, 250, 0.45);
  --file-btn-text: #dbeafe;

  --table-row-hover: #182745;

  --badge-bg: #16233e;
  --badge-border: rgba(148, 163, 184, 0.35);
  --badge-text: #cbd5e1;
  --badge-solid-bg: #3b82f6;
  --badge-solid-text: #ffffff;

  --success-bg: rgba(34, 197, 94, 0.14);
  --success-border: rgba(34, 197, 94, 0.42);
  --success-text: #bbf7d0;
  --warning-bg: rgba(245, 158, 11, 0.14);
  --warning-border: rgba(245, 158, 11, 0.46);
  --warning-text: #fde68a;
  --danger-bg: rgba(239, 68, 68, 0.15);
  --danger-border: rgba(239, 68, 68, 0.45);
  --danger-text: #fecaca;

  --overlay-bg: rgba(2, 6, 23, 0.66);

  --shadow-xs: 0 1px 2px rgba(2, 6, 23, 0.38);
  --shadow-soft: 0 8px 20px rgba(2, 6, 23, 0.35);
  --shadow-strong: 0 18px 36px var(--shadow-color);
  --shadow-sm: var(--shadow-soft);
  --shadow-md: var(--shadow-strong);
}


[data-theme="professional-neutral"] {
  color-scheme: dark;

  --color-primary: #e5e7eb;
  --color-primary-hover: #d1d5db;
  --color-secondary: #9ca3af;
  --color-bg: #0f1115;
  --color-bg-soft: #12151b;
  --bg-1: #0f1115;
  --bg-2: #12151b;
  --bg-3: #181b22;
  --color-surface: #181b22;
  --color-surface-2: #20242d;
  --color-card: #1f232b;
  --color-card-strong: #252a33;
  --color-text-strong: #f5f5f5;
  --color-text: #f5f5f5;
  --color-text-muted: #a7aab3;
  --color-clock-main: #f5f8ff;
  --color-border: #343a46;
  --color-success: #22c55e;
  --color-warning: #d6b13f;
  --color-danger: #ef4444;
  --color-primary-strong: #f9fafb;
  --color-primary-soft: rgba(229, 231, 235, 0.12);
  --color-accent: #d1d5db;
  --shadow-color: rgba(0, 0, 0, 0.42);
  --gradient-page: var(--color-bg);
  --gradient-card: radial-gradient(circle at 12% 0, var(--color-primary-soft), transparent 44%), linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.018));
  --gradient-hero: radial-gradient(900px 420px at 6% -20%, var(--color-primary-soft), transparent 62%), linear-gradient(180deg, var(--color-card), var(--color-surface));
  --gradient-panel: var(--gradient-card);
  --gradient-button: linear-gradient(180deg, var(--color-primary-strong), var(--color-primary));

  --surface-raised: #181b22;
  --surface-subtle: #12151b;
  --surface-soft: #20242d;
  --surface-brand-soft: rgba(229, 231, 235, 0.12);
  --surface-brand-strong: linear-gradient(180deg, #f3f4f6, #d1d5db);

  --text-inverse: #111827;
  --border-strong: #4b5563;
  --color-border-strong: var(--border-strong);
  --border-brand: #6b7280;
  --icon-bg: rgba(229, 231, 235, 0.1);
  --icon-border: #4b5563;
  --icon-fg: #f5f5f5;
  --menu-hover-bg: #20242d;
  --menu-active-bg: linear-gradient(90deg, rgba(229, 231, 235, 0.16), rgba(229, 231, 235, 0.06));
  --menu-active-border: #6b7280;
  --menu-active-text: #ffffff;
  --btn-bg: #181b22;
  --btn-border: #343a46;
  --btn-text: #f5f5f5;
  --btn-hover-bg: #20242d;
  --btn-hover-border: #4b5563;
  --btn-primary-shadow: 0 10px 20px rgba(229, 231, 235, 0.14);
  --field-bg: #181b22;
  --field-border: #343a46;
  --field-placeholder: #8b909b;
  --select-arrow: #e5e7eb;
  --file-btn-bg: rgba(229, 231, 235, 0.12);
  --file-btn-border: #4b5563;
  --file-btn-text: #f5f5f5;
  --table-row-hover: #20242d;
  --badge-bg: #20242d;
  --badge-border: #343a46;
  --badge-text: #d1d5db;
  --badge-solid-bg: #e5e7eb;
  --badge-solid-text: #111827;
  --success-bg: rgba(34, 197, 94, 0.14);
  --success-border: rgba(34, 197, 94, 0.42);
  --success-text: #bbf7d0;
  --warning-bg: rgba(214, 177, 63, 0.14);
  --warning-border: rgba(214, 177, 63, 0.42);
  --warning-text: #f5df8e;
  --danger-bg: rgba(239, 68, 68, 0.15);
  --danger-border: rgba(239, 68, 68, 0.45);
  --danger-text: #fecaca;
  --overlay-bg: rgba(5, 7, 10, 0.7);
  --shadow-soft: 0 8px 20px rgba(0, 0, 0, 0.34);
  --shadow-strong: 0 18px 36px var(--shadow-color);
}

[data-theme="brazil-corporate"] {
  color-scheme: dark;

  --color-primary: #1f8f4d;
  --color-primary-hover: #17743e;
  --color-secondary: #d6b13f;
  --color-bg: #07130d;
  --color-bg-soft: #0b1710;
  --bg-1: #07130d;
  --bg-2: #0b1710;
  --bg-3: #102018;
  --color-surface: #102018;
  --color-surface-2: #152a1d;
  --color-card: #13291d;
  --color-card-strong: #183824;
  --color-text-strong: #f8fafc;
  --color-text: #f8fafc;
  --color-text-muted: #b7c8bd;
  --color-clock-main: #f2c94c;
  --color-border: #1f3d2a;
  --color-success: #22c55e;
  --color-warning: #d6b13f;
  --color-danger: #ef4444;
  --color-primary-strong: #2fbf68;
  --color-primary-soft: rgba(31, 143, 77, 0.16);
  --color-accent: #d6b13f;
  --shadow-color: rgba(0, 0, 0, 0.42);
  --gradient-page: var(--color-bg);
  --gradient-card: radial-gradient(circle at 12% 0, var(--color-primary-soft), transparent 44%), linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.018));
  --gradient-hero: radial-gradient(900px 420px at 6% -20%, var(--color-primary-soft), transparent 62%), linear-gradient(180deg, var(--color-card), var(--color-surface));
  --gradient-panel: var(--gradient-card);
  --gradient-button: linear-gradient(180deg, var(--color-primary-strong), var(--color-primary));

  --surface-raised: #102018;
  --surface-subtle: #0b1710;
  --surface-soft: #152a1d;
  --surface-brand-soft: rgba(31, 143, 77, 0.18);
  --surface-brand-strong: linear-gradient(180deg, #1f8f4d, #17743e);
  --text-inverse: #f8fafc;
  --border-strong: #2f6b45;
  --color-border-strong: var(--border-strong);
  --border-brand: rgba(31, 143, 77, 0.62);
  --icon-bg: rgba(31, 143, 77, 0.16);
  --icon-border: rgba(214, 177, 63, 0.35);
  --icon-fg: #d6b13f;
  --menu-hover-bg: #152a1d;
  --menu-active-bg: linear-gradient(90deg, rgba(31, 143, 77, 0.24), rgba(214, 177, 63, 0.08));
  --menu-active-border: rgba(31, 143, 77, 0.55);
  --menu-active-text: #f8fafc;
  --btn-bg: #102018;
  --btn-border: #1f3d2a;
  --btn-text: #f8fafc;
  --btn-hover-bg: #152a1d;
  --btn-hover-border: #2f6b45;
  --btn-primary-shadow: 0 10px 20px rgba(31, 143, 77, 0.3);
  --field-bg: #102018;
  --field-border: #1f3d2a;
  --field-placeholder: #8fa99a;
  --select-arrow: #d6b13f;
  --file-btn-bg: rgba(31, 143, 77, 0.16);
  --file-btn-border: rgba(214, 177, 63, 0.35);
  --file-btn-text: #f8fafc;
  --table-row-hover: #152a1d;
  --badge-bg: #152a1d;
  --badge-border: #1f3d2a;
  --badge-text: #b7c8bd;
  --badge-solid-bg: #1f8f4d;
  --badge-solid-text: #f8fafc;
  --success-bg: rgba(31, 143, 77, 0.16);
  --success-border: rgba(31, 143, 77, 0.5);
  --success-text: #bbf7d0;
  --warning-bg: rgba(214, 177, 63, 0.14);
  --warning-border: rgba(214, 177, 63, 0.44);
  --warning-text: #f5df8e;
  --danger-bg: rgba(239, 68, 68, 0.15);
  --danger-border: rgba(239, 68, 68, 0.45);
  --danger-text: #fecaca;
  --overlay-bg: rgba(3, 9, 6, 0.72);
  --shadow-soft: 0 8px 20px rgba(0, 0, 0, 0.34);
  --shadow-strong: 0 18px 36px var(--shadow-color);
}

[data-theme="rubro-professional"] {
  color-scheme: dark;

  --color-primary: #d71920;
  --color-primary-hover: #e11d2e;
  --color-secondary: #ffffff;
  --color-bg: #050505;
  --color-bg-soft: #0b0b0d;
  --bg-1: #050505;
  --bg-2: #0b0b0d;
  --bg-3: #141414;
  --color-surface: #0b0b0d;
  --color-surface-2: #1c1c1c;
  --color-card: #141414;
  --color-card-strong: #1c1c1c;
  --color-text-strong: #ffffff;
  --color-text: #ffffff;
  --color-text-muted: #c9c9c9;
  --color-clock-main: #f5f5f5;
  --color-border: #3a1a1a;
  --color-success: #22c55e;
  --color-warning: #facc15;
  --color-danger: #ef4444;
  --color-primary-strong: #e11d2e;
  --color-primary-soft: rgba(215, 25, 32, 0.16);
  --color-accent: #d71920;
  --shadow-color: rgba(0, 0, 0, 0.62);
  --gradient-page: linear-gradient(180deg, #050505 0%, #0b0b0d 45%, #141414 100%);
  --gradient-card: linear-gradient(180deg, rgba(255,255,255,0.045), rgba(215,25,32,0.06));
  --gradient-hero: radial-gradient(circle at top left, rgba(215,25,32,0.22), transparent 38%), linear-gradient(180deg, #141414, #0b0b0d);
  --gradient-panel: linear-gradient(180deg, #141414, #0b0b0d);
  --gradient-button: linear-gradient(135deg, #d71920, #8b0000);

  --surface-raised: #141414;
  --surface-subtle: #0b0b0d;
  --surface-soft: #1c1c1c;
  --surface-brand-soft: rgba(215, 25, 32, 0.12);
  --surface-brand-strong: linear-gradient(135deg, #d71920, #8b0000);
  --text-inverse: #ffffff;
  --border-strong: #7f1d1d;
  --color-border-strong: var(--border-strong);
  --border-brand: rgba(215, 25, 32, 0.45);
  --icon-bg: rgba(215, 25, 32, 0.14);
  --icon-border: rgba(215, 25, 32, 0.4);
  --icon-fg: #f5f5f5;
  --menu-hover-bg: #1c1c1c;
  --menu-active-bg: linear-gradient(90deg, rgba(215, 25, 32, 0.28), rgba(215, 25, 32, 0.08));
  --menu-active-border: rgba(215, 25, 32, 0.5);
  --menu-active-text: #ffffff;
  --btn-bg: #141414;
  --btn-border: #3a1a1a;
  --btn-text: #f5f5f5;
  --btn-hover-bg: #1c1c1c;
  --btn-hover-border: #7f1d1d;
  --btn-primary-shadow: 0 10px 22px rgba(215, 25, 32, 0.3);
  --field-bg: #0b0b0d;
  --field-border: #3a1a1a;
  --field-placeholder: #9ca3af;
  --select-arrow: #f5f5f5;
  --file-btn-bg: rgba(215, 25, 32, 0.12);
  --file-btn-border: rgba(215, 25, 32, 0.4);
  --file-btn-text: #f5f5f5;
  --table-row-hover: #1c1c1c;
  --badge-bg: #1c1c1c;
  --badge-border: #3a1a1a;
  --badge-text: #c9c9c9;
  --badge-solid-bg: #d71920;
  --badge-solid-text: #ffffff;
  --success-bg: rgba(34, 197, 94, 0.14);
  --success-border: rgba(34, 197, 94, 0.42);
  --success-text: #bbf7d0;
  --warning-bg: rgba(250, 204, 21, 0.14);
  --warning-border: rgba(250, 204, 21, 0.44);
  --warning-text: #fef3c7;
  --danger-bg: rgba(239, 68, 68, 0.18);
  --danger-border: rgba(239, 68, 68, 0.5);
  --danger-text: #fecaca;
  --overlay-bg: rgba(5, 5, 7, 0.75);
  --shadow-soft: 0 8px 20px rgba(0, 0, 0, 0.36);
  --shadow-strong: 0 18px 36px var(--shadow-color);
}

:root,
[data-theme] {
  --primary: var(--color-primary);
  --border: var(--color-border);
  --line: var(--color-border);
  --line-soft: color-mix(in oklab, var(--color-border) 60%, transparent);
  --text: var(--color-text);
  --muted: var(--color-text-muted);
  --panel: color-mix(in oklab, var(--color-card) 88%, transparent);
  --panel-strong: color-mix(in oklab, var(--color-card-strong) 94%, transparent);
  --radius: 16px;
  --radius-md: 12px;
  --radius-lg: 18px;
  --radius-xl: 24px;
  --focus-ring: 0 0 0 3px var(--color-primary-soft);
}
