:root {
  --color-brand-primary: #0F172A;
  --color-brand-secondary: #1E3A5F;
  --color-brand-accent: #0F766E;
  --color-brand-accent-bg: #CCFBF1;
  --color-brand-highlight: #16A34A;

  --color-neutral-background: #F8FAFC;
  --color-neutral-surface: #FFFFFF;
  --color-neutral-surface-muted: #F1F5F9;
  --color-neutral-border: #E2E8F0;
  --color-neutral-border-strong: #CBD5E1;
  --color-neutral-text-primary: #111827;
  --color-neutral-text-secondary: #475569;
  --color-neutral-text-muted: #64748B;
  --color-neutral-disabled: #94A3B8;

  --color-semantic-success: #16A34A;
  --color-semantic-success-bg: #DCFCE7;
  --color-semantic-warning: #D97706;
  --color-semantic-warning-bg: #FEF3C7;
  --color-semantic-danger: #DC2626;
  --color-semantic-danger-bg: #FEE2E2;
  --color-semantic-info: #2563EB;
  --color-semantic-info-bg: #DBEAFE;

  --color-financial-income: #2563EB;
  --color-financial-income-bg: #DBEAFE;
  --color-financial-expense: #B91C1C;
  --color-financial-expense-bg: #FEE2E2;

  --color-brand-heading: var(--color-brand-primary);
  --color-action-primary: var(--color-brand-accent);
  --color-action-primary-hover: #115E59;
  --color-action-primary-text: #FFFFFF;
  --color-action-danger: var(--color-semantic-danger);
  --color-action-danger-hover: #B91C1C;
  --color-action-danger-text: var(--color-neutral-surface);
  --color-sidebar-background: var(--color-brand-primary);
  --color-sidebar-background-hover: var(--color-brand-secondary);
  --color-sidebar-border: var(--color-brand-secondary);
  --color-sidebar-text: var(--color-neutral-surface);
  --color-sidebar-text-muted: var(--color-neutral-border);
  --color-sidebar-active-background: var(--color-brand-accent);
  --color-sidebar-active-text: var(--color-neutral-surface);
  --color-overlay-backdrop: rgba(15, 23, 42, 0.48);
  --color-toast-focus-ring: rgba(255, 255, 255, 0.72);
  --color-auth-page-background:
    radial-gradient(circle at 20% 16%, rgba(15, 118, 110, 0.12), transparent 32%),
    radial-gradient(circle at 82% 22%, rgba(37, 99, 235, 0.10), transparent 28%),
    var(--color-neutral-background);
  --color-dashboard-title-background:
    radial-gradient(circle at 14% 24%, rgba(15, 118, 110, 0.18), transparent 34%),
    linear-gradient(135deg, var(--color-neutral-surface) 0%, var(--color-brand-accent-bg) 52%, var(--color-neutral-background) 100%);
  --color-dashboard-title-border: rgba(15, 118, 110, 0.14);
  --color-dashboard-title-decoration-background: linear-gradient(135deg, rgba(15, 118, 110, 0.14), transparent 62%);
  --color-dashboard-title-decoration-border: rgba(15, 118, 110, 0.08);
  --color-dashboard-title-indicator-background: rgba(255, 255, 255, 0.72);
  --color-dashboard-title-indicator-border: rgba(15, 118, 110, 0.16);

  --font-family-base: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-size-heading-lg: 24px;
  --font-size-heading-md: 20px;
  --font-size-body-md: 16px;
  --font-size-body-sm: 14px;
  --font-size-caption: 12px;
  --line-height-heading-lg: 32px;
  --line-height-heading-md: 28px;
  --line-height-body-md: 24px;
  --line-height-body-sm: 20px;
  --line-height-caption: 16px;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;

  --layout-sidebar-width: 264px;
  --layout-sidebar-width-compact: 72px;
  --layout-content-max-width: 1440px;

  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-full: 999px;

  --shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.06);
  --shadow-md: 0 4px 12px rgba(15, 23, 42, 0.08);
  --shadow-lg: 0 12px 32px rgba(15, 23, 42, 0.12);

  --duration-fast: 120ms;
  --duration-base: 180ms;
  --easing-standard: cubic-bezier(0.2, 0, 0, 1);
}

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

  --color-brand-primary: #93C5FD;
  --color-brand-secondary: #38BDF8;
  --color-brand-accent: #0F766E;
  --color-brand-accent-bg: #134E4A;
  --color-brand-highlight: #4ADE80;

  --color-neutral-background: #0B1120;
  --color-neutral-surface: #111827;
  --color-neutral-surface-muted: #1F2937;
  --color-neutral-border: #334155;
  --color-neutral-border-strong: #475569;
  --color-neutral-text-primary: #F8FAFC;
  --color-neutral-text-secondary: #CBD5E1;
  --color-neutral-text-muted: #94A3B8;
  --color-neutral-disabled: #64748B;

  --color-semantic-success: #4ADE80;
  --color-semantic-success-bg: #052E16;
  --color-semantic-warning: #FBBF24;
  --color-semantic-warning-bg: #451A03;
  --color-semantic-danger: #F87171;
  --color-semantic-danger-bg: #450A0A;
  --color-semantic-info: #60A5FA;
  --color-semantic-info-bg: #172554;

  --color-financial-income: #60A5FA;
  --color-financial-income-bg: #172554;
  --color-financial-expense: #F87171;
  --color-financial-expense-bg: #450A0A;

  --color-brand-heading: #F8FAFC;
  --color-action-primary: #0F766E;
  --color-action-primary-hover: #115E59;
  --color-action-primary-text: #FFFFFF;
  --color-action-danger: #DC2626;
  --color-action-danger-hover: #B91C1C;
  --color-action-danger-text: #FFFFFF;
  --color-sidebar-background: #08111F;
  --color-sidebar-background-hover: #172033;
  --color-sidebar-border: #1E293B;
  --color-sidebar-text: #E2E8F0;
  --color-sidebar-text-muted: #94A3B8;
  --color-sidebar-active-background: #0F766E;
  --color-sidebar-active-text: #FFFFFF;
  --color-overlay-backdrop: rgba(2, 6, 23, 0.72);
  --color-toast-focus-ring: rgba(226, 232, 240, 0.72);
  --color-auth-page-background:
    radial-gradient(circle at 20% 16%, rgba(15, 118, 110, 0.14), transparent 32%),
    radial-gradient(circle at 82% 22%, rgba(96, 165, 250, 0.10), transparent 28%),
    var(--color-neutral-background);
  --color-dashboard-title-background:
    radial-gradient(circle at 14% 24%, rgba(15, 118, 110, 0.22), transparent 34%),
    linear-gradient(135deg, #111827 0%, #134E4A 58%, #0B1120 100%);
  --color-dashboard-title-border: rgba(15, 118, 110, 0.28);
  --color-dashboard-title-decoration-background: linear-gradient(135deg, rgba(15, 118, 110, 0.18), transparent 62%);
  --color-dashboard-title-decoration-border: rgba(15, 118, 110, 0.18);
  --color-dashboard-title-indicator-background: rgba(15, 23, 42, 0.72);
  --color-dashboard-title-indicator-border: rgba(15, 118, 110, 0.32);

  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.28);
  --shadow-md: 0 8px 24px rgba(0, 0, 0, 0.30);
  --shadow-lg: 0 18px 48px rgba(0, 0, 0, 0.38);
}
