/* FredianIA Design System — generated from tokens.json */
:root, [data-theme="default"] {
  --fia-midnight-navy: #081838;
  --fia-signal-blue: #0848e8;
  --fia-electric-blue: #135bff;
  --fia-white: #ffffff;
  --fia-ice: #f5f8ff;
  --fia-cloud: #e8eef8;
  --fia-slate: #53627a;
  --fia-success: #0f8a5f;
  --fia-warning: #9a5b00;
  --fia-error: #b4232c;
  --fia-logo-navy: var(--fia-midnight-navy);
  --fia-logo-blue: var(--fia-electric-blue);
  --fia-logo-tagline: var(--fia-slate);
  --fia-logo-blue-negative: #7da0ff;
  --fia-logo-tagline-negative: #c7d1e3;
  --fia-navy-alpha-08: rgba(8, 24, 56, 0.08);
  --fia-navy-alpha-12: rgba(8, 24, 56, 0.12);
  --fia-navy-alpha-64: rgba(8, 24, 56, 0.64);
  --fia-on-navy-alpha-08: rgba(255, 255, 255, 0.08);
  --fia-on-navy-alpha-16: rgba(255, 255, 255, 0.16);
  --fia-on-navy-alpha-72: rgba(255, 255, 255, 0.72);
  --fia-border-strong: #bec3cc;
  --fia-signal-tint: #e6edfd;
  --fia-success-tint: #e7f3ef;
  --fia-warning-tint: #f3ebe0;
  --fia-error-tint: #f8e9ea;
  --text-primary: var(--fia-midnight-navy);
  --text-secondary: var(--fia-slate);
  --text-inverse: var(--fia-white);
  --text-on-navy-muted: var(--fia-on-navy-alpha-72);
  --text-link: var(--fia-signal-blue);
  --text-accent: var(--fia-electric-blue);
  --text-success: var(--fia-success);
  --text-warning: var(--fia-warning);
  --text-error: var(--fia-error);
  --surface-page: var(--fia-ice);
  --surface-card: var(--fia-white);
  --surface-muted: var(--fia-cloud);
  --surface-inverse: var(--fia-midnight-navy);
  --surface-inverse-raised: #0c2148;
  --border-subtle: var(--fia-cloud);
  --border-default: var(--fia-border-strong);
  --border-focus: var(--fia-electric-blue);
  --border-on-navy: var(--fia-on-navy-alpha-16);
  --action-primary: var(--fia-signal-blue);
  --action-primary-hover: #0840cc;
  --action-primary-active: #0839b0;
  --action-secondary-hover: var(--fia-ice);
  --action-disabled-surface: var(--fia-cloud);
  --action-disabled-text: #949ead;
  --chart-01: #0848e8;
  --chart-02: #6d4aff;
  --chart-03: #008f7a;
  --chart-04: #c87400;
  --chart-05: #c33c54;
  --chart-06: #53627a;
  --chart-grid: var(--fia-cloud);
  --chart-axis: var(--fia-slate);
  --elevation-01: 0 8px 24px rgba(8, 24, 56, 0.12);
}
:root {
  --sp-4: 4px;
  --sp-8: 8px;
  --sp-12: 12px;
  --sp-16: 16px;
  --sp-24: 24px;
  --sp-32: 32px;
  --sp-48: 48px;
  --sp-64: 64px;
  --sp-96: 96px;
  --grid-margin-desktop: 64px;
  --grid-gutter-desktop: 24px;
  --grid-margin-mobile: 16px;
  --grid-gutter-mobile: 16px;
  --slide-width: 1280px;
  --slide-height: 720px;
  --slide-margin: 72px;
  --border-width: 1px;
  --border-width-strong: 2px;
  --icon-size: 24px;
  --radius-data: 0;
  --radius-control: 8px;
  --radius-panel: 16px;
  --radius-status: 999px;
  --dur-fast: 120ms;
  --dur-base: 200ms;
  --dur-slow: 320ms;
  --ease-standard: cubic-bezier(0.2, 0, 0.2, 1);
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --fia-gradient: linear-gradient(90deg, #081838 0%, #0848E8 57%, #135BFF 100%);
  --grid-columns-desktop: 12;
  --grid-columns-mobile: 4;
  --focus-ring: 0 0 0 2px #FFFFFF, 0 0 0 4px #135BFF;
  --focus-ring-on-navy: 0 0 0 2px #081838, 0 0 0 4px #135BFF;
  --icon-stroke: 2px;
  --fw-regular: 400;
  --fw-semibold: 600;
  --fw-bold: 700;
  --tracking-caps: 0.12em;
  --font-sans: "Segoe UI", "Open Sans", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
  --font-mono: Consolas, Inconsolata, "Liberation Mono", Menlo, monospace;
  --text-fs-display: 400 56px/64px var(--font-sans);
  --text-fs-h1: 400 40px/48px var(--font-sans);
  --text-fs-h2: 400 28px/36px var(--font-sans);
  --text-fs-h3: 400 22px/30px var(--font-sans);
  --text-fs-body: 400 18px/28px var(--font-sans);
  --text-fs-body-sm: 400 16px/24px var(--font-sans);
  --text-fs-label: 400 14px/20px var(--font-sans);
  --text-fs-micro: 400 12px/16px var(--font-sans);
  --text-body: 400 18px/28px var(--font-sans); /* From `body` in css/base.css. */
}
.fs-display {
  font-family: var(--font-sans);
  font-size: 56px;
  line-height: 64px;
  font-weight: 400;
  letter-spacing: -0.01em;
}
.fs-h1 {
  font-family: var(--font-sans);
  font-size: 40px;
  line-height: 48px;
  font-weight: 400;
  letter-spacing: 0;
}
.fs-h2 {
  font-family: var(--font-sans);
  font-size: 28px;
  line-height: 36px;
  font-weight: 400;
  letter-spacing: 0;
}
.fs-h3 {
  font-family: var(--font-sans);
  font-size: 22px;
  line-height: 30px;
  font-weight: 400;
  letter-spacing: 0;
}
.fs-body {
  font-family: var(--font-sans);
  font-size: 18px;
  line-height: 28px;
  font-weight: 400;
  letter-spacing: 0em;
}
.fs-body-sm {
  font-family: var(--font-sans);
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  letter-spacing: 0;
}
.fs-label {
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
  letter-spacing: 0;
}
.fs-micro {
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
  letter-spacing: 0;
}
.body {
  font-family: var(--font-sans);
  font-size: 18px;
  line-height: 28px;
  font-weight: 400;
  letter-spacing: 0em;
}
