/* FbPush Design System: tokens generados desde tokens.json. No editar a mano. */
:root, [data-theme="light"] {
  color-scheme: light;
  --bg: #f8fafc;
  --surface: #ffffff;
  --surface-muted: #f1f5f9;
  --border: #e2e8f0;
  --border-control: #8392a7;
  --text: #0f172a;
  --text-muted: #58667b;
  --accent: #2250c8;
  --accent-hover: #1b43ad;
  --on-accent: #ffffff;
  --accent-bg: #e8eefc;
  --accent-text: #1e40af;
  --success: #047857;
  --success-bg: #e7f6ef;
  --warning: #92400e;
  --warning-bg: #fef3e2;
  --danger: #b42318;
  --danger-bg: #fef0ee;
  --danger-fill: #c0281b;
  --danger-fill-hover: #a32015;
  --on-danger: #ffffff;
  --log-bg: #0f172a;
  --log-text: #cbd5e1;
  --chart-1: #2250c8;
  --chart-2: #0e7490;
  --chart-3: #64748b;
  --chart-4: #b45309;
  --trend-down-3: #a3231b;
  --trend-down-2: #b8392f;
  --trend-down-1: #9c5a5f;
  --trend-flat: #5f6672;
  --trend-up-1: #3f7d5a;
  --trend-up-2: #1f7a45;
  --trend-up-3: #14612f;
  --on-trend: #ffffff;
  --shadow-popover: 0 8px 24px rgba(15, 23, 42, 0.12), 0 2px 6px rgba(15, 23, 42, 0.08);
  --shadow-dialog: 0 24px 64px rgba(15, 23, 42, 0.18), 0 4px 12px rgba(15, 23, 42, 0.1);
}
[data-theme="dark"] {
  color-scheme: dark;
  --bg: #0b1220;
  --surface: #111a2c;
  --surface-muted: #172238;
  --border: #1f2b42;
  --border-control: #60708c;
  --text: #f1f5f9;
  --text-muted: #94a3b8;
  --accent: #6c95f5;
  --accent-hover: #8daef8;
  --on-accent: #06101f;
  --accent-bg: #16264a;
  --accent-text: #a5c0fa;
  --success: #4ade9b;
  --success-bg: #10281e;
  --warning: #fbbf24;
  --warning-bg: #2a2010;
  --danger: #f97066;
  --danger-bg: #2b1614;
  --danger-fill: #f97066;
  --danger-fill-hover: #fa8a82;
  --on-danger: #1a0705;
  --log-bg: #070d18;
  --log-text: #cbd5e1;
  --chart-1: #6c95f5;
  --chart-2: #5cc8e0;
  --chart-3: #94a3b8;
  --chart-4: #f5b14a;
  --trend-down-3: #a3231b;
  --trend-down-2: #b8392f;
  --trend-down-1: #9c5a5f;
  --trend-flat: #5f6672;
  --trend-up-1: #3f7d5a;
  --trend-up-2: #1f7a45;
  --trend-up-3: #14612f;
  --on-trend: #ffffff;
  --shadow-popover: 0 8px 24px rgba(0, 0, 0, 0.5), 0 2px 6px rgba(0, 0, 0, 0.4);
  --shadow-dialog: 0 24px 64px rgba(0, 0, 0, 0.6), 0 4px 12px rgba(0, 0, 0, 0.5);
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --radius-control: 6px;
  --radius-card: 10px;
  --radius-pill: 999px;
  --font-sans: "Geist", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono: "Geist Mono", ui-monospace, "Cascadia Code", Consolas, monospace;
  --heading-xl-size: 32px; --heading-xl-line: 40px; --heading-xl-weight: 600; --heading-xl-tracking: -0.02em;
  --heading-lg-size: 24px; --heading-lg-line: 32px; --heading-lg-weight: 600; --heading-lg-tracking: -0.02em;
  --heading-md-size: 20px; --heading-md-line: 28px; --heading-md-weight: 600; --heading-md-tracking: -0.01em;
  --heading-sm-size: 16px; --heading-sm-line: 24px; --heading-sm-weight: 600; --heading-sm-tracking: -0.005em;
  --body-lg-size: 16px; --body-lg-line: 24px; --body-lg-weight: 400;
  --body-size: 14px; --body-line: 22px; --body-weight: 400;
  --label-size: 13px; --label-line: 20px; --label-weight: 500;
  --caption-size: 12px; --caption-line: 16px; --caption-weight: 400;
  --code-size: 13px; --code-line: 20px; --code-weight: 400;
}
/* Estilos de texto como clases utilitarias */
.fb-text-heading-xl { font-family: var(--font-sans); font-size: var(--heading-xl-size); line-height: var(--heading-xl-line); font-weight: var(--heading-xl-weight); letter-spacing: var(--heading-xl-tracking); }
.fb-text-heading-lg { font-family: var(--font-sans); font-size: var(--heading-lg-size); line-height: var(--heading-lg-line); font-weight: var(--heading-lg-weight); letter-spacing: var(--heading-lg-tracking); }
.fb-text-heading-md { font-family: var(--font-sans); font-size: var(--heading-md-size); line-height: var(--heading-md-line); font-weight: var(--heading-md-weight); letter-spacing: var(--heading-md-tracking); }
.fb-text-heading-sm { font-family: var(--font-sans); font-size: var(--heading-sm-size); line-height: var(--heading-sm-line); font-weight: var(--heading-sm-weight); letter-spacing: var(--heading-sm-tracking); }
.fb-text-body-lg { font-family: var(--font-sans); font-size: var(--body-lg-size); line-height: var(--body-lg-line); font-weight: var(--body-lg-weight); }
.fb-text-body { font-family: var(--font-sans); font-size: var(--body-size); line-height: var(--body-line); font-weight: var(--body-weight); }
.fb-text-label { font-family: var(--font-sans); font-size: var(--label-size); line-height: var(--label-line); font-weight: var(--label-weight); }
.fb-text-caption { font-family: var(--font-sans); font-size: var(--caption-size); line-height: var(--caption-line); font-weight: var(--caption-weight); }
.fb-text-code { font-family: var(--font-mono); font-size: var(--code-size); line-height: var(--code-line); font-weight: var(--code-weight); }
