
:root {
  --cea-primary-50: #f2f6fa;
  --cea-primary-100: #dfe8f2;
  --cea-primary-200: #bccde0;
  --cea-primary-300: #8aa7c4;
  --cea-primary-400: #5b7fa6;
  --cea-primary-500: #335f8c;
  --cea-primary-600: #264f78;
  --cea-primary-700: #1c3f61;
  --cea-primary-800: #16334f;
  --cea-primary-900: #102940;
  --cea-primary-950: #0b1f33;

  --cea-neutral-0: #ffffff;
  --cea-neutral-50: #faf9f7;
  --cea-neutral-100: #f4f2ee;
  --cea-neutral-200: #e3ded6;
  --cea-neutral-300: #cfc8bd;
  --cea-neutral-400: #a8a89f;
  --cea-neutral-500: #7f7e76;
  --cea-neutral-600: #5c5b55;
  --cea-neutral-700: #3f3e3a;
  --cea-neutral-800: #2a2926;
  --cea-neutral-900: #171614;

  --state-success: #3b7a5d;
  --state-success-50: #eef6f1;
  --state-warning: #c7742e;
  --state-warning-50: #fdf3e8;
  --state-error: #b34a42;
  --state-error-50: #fbecea;
  --state-info: #335f8c;
  --state-info-50: #eef3f9;

  --cea-background: var(--cea-neutral-50);
  --cea-foreground: #171614;
  --cea-card: #ffffff;
  --cea-card-foreground: #171614;
  --cea-primary: #102940;
  --cea-primary-foreground: #ffffff;
  --cea-secondary: #f4f2ee;
  --cea-secondary-foreground: #2a2926;
  --cea-muted: #f4f2ee;
  --cea-muted-foreground: #5c5b55;
  --cea-border: #e3ded6;
  --cea-input: #cfc8bd;
  --cea-ring: #335f8c;

  --cea-radius-small: 3px;
  --cea-radius-medium: 6px;
  --cea-radius-large: 10px;
  --cea-radius-full: 9999px;

  --cea-paper-shadow: 0 12px 28px rgba(16, 41, 64, .08);
  --cea-paper-shadow-soft: 0 4px 12px rgba(16, 41, 64, .045);
  --cea-torn-edge: #d8d1c6;

  /* One sans-serif system keeps Chinese and Latin content visually consistent across the Alpha. */
  --font-display: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  --font-heading: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  --font-body: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  --font-label: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  --font-caption: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  --type-display-large: clamp(60px, 4.9vw, 72px);
  --type-display-medium: clamp(40px, 3.2vw, 48px);
  --type-page-title: clamp(30px, 3vw, 36px);
  --type-report-title: clamp(26px, 2.8vw, 34px);
  --type-results-title: clamp(24px, 2.6vw, 32px);
  --type-decision-title: clamp(22px, 2.2vw, 28px);
  --type-login-title: clamp(30px, 3vw, 36px);
  --type-heading: 20px;
  --type-subheading: 17px;
  --type-claim: clamp(19px, 2vw, 25px);
  --type-body: 16px;
  --type-caption: 13px;
  --type-label: 12px;
  --type-metadata: 11px;
}

@theme inline {
  --color-background: var(--cea-background);
  --color-foreground: var(--cea-foreground);
  --color-card: var(--cea-card);
  --color-primary: var(--cea-primary);
  --color-primary-foreground: var(--cea-primary-foreground);
  --color-muted: var(--cea-muted);
  --color-muted-foreground: var(--cea-muted-foreground);
  --color-border: var(--cea-border);
  --color-input: var(--cea-input);
  --color-ring: var(--cea-ring);
  --radius-sm: var(--cea-radius-small);
  --radius-md: var(--cea-radius-medium);
  --radius-lg: var(--cea-radius-large);
  --radius-full: var(--cea-radius-full);
}

*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; padding: 0; }
