/* GENERATED FILE — do not edit by hand.
   Source: tools/tokens/figma-export.json (Figma https://www.figma.com/design/HRQuiziI9FHn25yvYkil7h)
   Regenerate: python3 tools/tokens/generate.py */

:root {
  /* Primitives: brand and status ramps (hex). */
  --primary-50: #EFFAF7;
  --primary-100: #D3F2EB;
  --primary-200: #A8E4D8;
  --primary-300: #6FCDBD;
  --primary-400: #38B09F;
  --primary-500: #1A9484;
  --primary-600: #0F766E;
  --primary-700: #0E5F59;
  --primary-800: #0F4C48;
  --primary-900: #0F3D3A;
  --primary-950: #0A2524;
  --gray-50: #FAF8F4;
  --gray-100: #F3EEE6;
  --gray-200: #E6DFD3;
  --gray-300: #D2C8B8;
  --gray-400: #ABA08E;
  --gray-500: #857A69;
  --gray-600: #685E50;
  --gray-700: #524A3F;
  --gray-800: #3A342C;
  --gray-900: #26221D;
  --gray-950: #16130F;
  --success-50: #F0FDF4;
  --success-100: #DCFCE7;
  --success-200: #BBF7D0;
  --success-300: #86EFAC;
  --success-400: #4ADE80;
  --success-500: #22C55E;
  --success-600: #16A34A;
  --success-700: #15803D;
  --success-800: #166534;
  --success-900: #14532D;
  --success-950: #052E16;
  --warning-50: #FFFBEB;
  --warning-100: #FEF3C7;
  --warning-200: #FDE68A;
  --warning-300: #FCD34D;
  --warning-400: #FBBF24;
  --warning-500: #F59E0B;
  --warning-600: #D97706;
  --warning-700: #B45309;
  --warning-800: #92400E;
  --warning-900: #78350F;
  --warning-950: #451A03;
  --danger-50: #FEF2F2;
  --danger-100: #FEE2E2;
  --danger-200: #FECACA;
  --danger-300: #FCA5A5;
  --danger-400: #F87171;
  --danger-500: #EF4444;
  --danger-600: #DC2626;
  --danger-700: #B91C1C;
  --danger-800: #991B1B;
  --danger-900: #7F1D1D;
  --danger-950: #450A0A;
  --info-50: #EFF6FF;
  --info-100: #DBEAFE;
  --info-200: #BFDBFE;
  --info-300: #93C5FD;
  --info-400: #60A5FA;
  --info-500: #3B82F6;
  --info-600: #2563EB;
  --info-700: #1D4ED8;
  --info-800: #1E40AF;
  --info-900: #1E3A8A;
  --info-950: #172554;
  --review-50: #F5F3FF;
  --review-100: #EDE9FE;
  --review-200: #DDD6FE;
  --review-300: #C4B5FD;
  --review-400: #A78BFA;
  --review-500: #8B5CF6;
  --review-600: #7C3AED;
  --review-700: #6D28D9;
  --review-800: #5B21B6;
  --review-900: #4C1D95;
  --review-950: #2E1065;
  --saffron-50: #FEF8EE;
  --saffron-100: #FCEFDC;
  --saffron-200: #F7DDB2;
  --saffron-300: #F2C47F;
  --saffron-400: #EDB05A;
  --saffron-500: #E8A33D;
  --saffron-600: #CC8526;
  --saffron-700: #A9681D;
  --saffron-800: #87521C;
  --saffron-900: #6E441A;
  --saffron-950: #3D230B;
  /* Graphite: neutral ramp for the dark theme */
  --graphite-50: #EDEFF1;
  --graphite-100: #D3D7DB;
  --graphite-200: #BAC0C5;
  --graphite-300: #A2A9B0;
  --graphite-400: #737B84;
  --graphite-500: #5D656D;
  --graphite-600: #494F57;
  --graphite-700: #353B42;
  --graphite-800: #262B30;
  --graphite-900: #16191C;
  --graphite-950: #0E1113;
  --graphite-850: #1E2226;
  --dark-status-submitted-bg: #1B283B;
  --dark-status-submitted-border: #24416F;
  --dark-status-review-bg: #26223B;
  --dark-status-review-border: #42326F;
  --dark-status-action-bg: #352C1A;
  --dark-status-action-border: #6B4C16;
  --dark-status-completed-bg: #183125;
  --dark-status-completed-border: #1B5A35;
  --dark-status-rejected-bg: #341F22;
  --dark-status-rejected-border: #68292B;
  --white: #FFFFFF;
  --black: #000000;

  /* Semantic roles, light theme */
  --mtd-bg-canvas: var(--gray-50);
  --mtd-bg-surface: var(--white);
  --mtd-bg-surface-muted: var(--gray-100);
  --mtd-bg-inverse: var(--primary-950);
  --mtd-text-primary: var(--gray-900);
  --mtd-text-secondary: var(--gray-600);
  --mtd-text-muted: var(--gray-500);
  --mtd-text-on-action: var(--white);
  --mtd-text-link: var(--primary-700);
  --mtd-text-inverse: var(--white);
  --mtd-border-default: var(--gray-200);
  --mtd-border-strong: var(--gray-300);
  --mtd-border-focus: var(--primary-500);
  --mtd-action-primary: var(--primary-600);
  --mtd-action-primary-hover: var(--primary-700);
  --mtd-action-primary-subtle: var(--primary-50);
  --mtd-action-danger: var(--danger-600);
  --mtd-brand-accent: var(--saffron-500);
  --mtd-status-draft-bg: var(--gray-100);
  --mtd-status-draft-fg: var(--gray-700);
  --mtd-status-draft-border: var(--gray-200);
  --mtd-status-submitted-bg: var(--info-50);
  --mtd-status-submitted-fg: var(--info-700);
  --mtd-status-submitted-border: var(--info-200);
  --mtd-status-review-bg: var(--review-50);
  --mtd-status-review-fg: var(--review-700);
  --mtd-status-review-border: var(--review-200);
  --mtd-status-action-bg: var(--warning-50);
  --mtd-status-action-fg: var(--warning-800);
  --mtd-status-action-border: var(--warning-200);
  --mtd-status-completed-bg: var(--success-50);
  --mtd-status-completed-fg: var(--success-700);
  --mtd-status-completed-border: var(--success-200);
  --mtd-status-rejected-bg: var(--danger-50);
  --mtd-status-rejected-fg: var(--danger-700);
  --mtd-status-rejected-border: var(--danger-200);

  /* Spacing (4px base, matches Tailwind) and radius */
  --mtd-space-0: 0px;
  --mtd-space-0_5: 2px;
  --mtd-space-1: 4px;
  --mtd-space-1_5: 6px;
  --mtd-space-2: 8px;
  --mtd-space-2_5: 10px;
  --mtd-space-3: 12px;
  --mtd-space-3_5: 14px;
  --mtd-space-4: 16px;
  --mtd-space-5: 20px;
  --mtd-space-6: 24px;
  --mtd-space-8: 32px;
  --mtd-space-10: 40px;
  --mtd-space-12: 48px;
  --mtd-space-16: 64px;
  --mtd-radius-none: 0px;
  --mtd-radius-sm: 4px;
  --mtd-radius-md: 6px;
  --mtd-radius-lg: 8px;
  --mtd-radius-xl: 12px;
  --mtd-radius-2xl: 16px;
  --mtd-radius-full: 9999px;

  /* Elevation: soft, teal-tinted shadows */
  --mtd-shadow-sm: 0 1px 2px 0px rgba(10, 38, 36, 0.06);
  --mtd-shadow-md: 0 4px 8px -2px rgba(10, 38, 36, 0.08), 0 2px 4px -2px rgba(10, 38, 36, 0.06);
  --mtd-shadow-lg: 0 12px 24px -6px rgba(10, 38, 36, 0.12), 0 4px 8px -4px rgba(10, 38, 36, 0.06);

  --mtd-font-sans: 'IBM Plex Sans', 'IBM Plex Sans Arabic', ui-sans-serif, system-ui, sans-serif;
  --mtd-font-arabic: 'IBM Plex Sans Arabic', 'IBM Plex Sans', ui-sans-serif, system-ui, sans-serif;
}

/* Dark theme */
:root.dark, .dark {
  --mtd-bg-canvas: var(--graphite-950);
  --mtd-bg-surface: var(--graphite-900);
  --mtd-bg-surface-muted: var(--graphite-850);
  --mtd-bg-inverse: var(--gray-50);
  --mtd-text-primary: var(--graphite-50);
  --mtd-text-secondary: var(--graphite-300);
  --mtd-text-muted: var(--graphite-400);
  --mtd-text-on-action: var(--white);
  --mtd-text-link: var(--primary-300);
  --mtd-text-inverse: var(--graphite-950);
  --mtd-border-default: var(--graphite-800);
  --mtd-border-strong: var(--graphite-700);
  --mtd-border-focus: var(--primary-400);
  --mtd-action-primary: var(--primary-500);
  --mtd-action-primary-hover: var(--primary-400);
  --mtd-action-primary-subtle: var(--primary-950);
  --mtd-action-danger: var(--danger-500);
  --mtd-brand-accent: var(--saffron-500);
  --mtd-status-draft-bg: var(--graphite-850);
  --mtd-status-draft-fg: var(--graphite-300);
  --mtd-status-draft-border: var(--graphite-700);
  --mtd-status-submitted-bg: var(--dark-status-submitted-bg);
  --mtd-status-submitted-fg: var(--info-300);
  --mtd-status-submitted-border: var(--dark-status-submitted-border);
  --mtd-status-review-bg: var(--dark-status-review-bg);
  --mtd-status-review-fg: var(--review-300);
  --mtd-status-review-border: var(--dark-status-review-border);
  --mtd-status-action-bg: var(--dark-status-action-bg);
  --mtd-status-action-fg: var(--warning-300);
  --mtd-status-action-border: var(--dark-status-action-border);
  --mtd-status-completed-bg: var(--dark-status-completed-bg);
  --mtd-status-completed-fg: var(--success-300);
  --mtd-status-completed-border: var(--dark-status-completed-border);
  --mtd-status-rejected-bg: var(--dark-status-rejected-bg);
  --mtd-status-rejected-fg: var(--danger-300);
  --mtd-status-rejected-border: var(--dark-status-rejected-border);
}

:lang(ar), [dir="rtl"] { font-family: var(--mtd-font-arabic); }

.mtd-text-display { font-size: 2.25rem; line-height: 2.75rem; font-weight: 600; letter-spacing: -0.01em; }
:lang(ar) .mtd-text-display, [dir="rtl"] .mtd-text-display { font-size: 2.3125rem; line-height: 3rem; letter-spacing: 0; text-transform: none; }
.mtd-text-h1 { font-size: 1.875rem; line-height: 2.25rem; font-weight: 600; letter-spacing: -0.005em; }
:lang(ar) .mtd-text-h1, [dir="rtl"] .mtd-text-h1 { font-size: 1.9375rem; line-height: 2.5rem; letter-spacing: 0; text-transform: none; }
.mtd-text-h2 { font-size: 1.5rem; line-height: 2rem; font-weight: 600; }
:lang(ar) .mtd-text-h2, [dir="rtl"] .mtd-text-h2 { font-size: 1.5625rem; line-height: 2.25rem; }
.mtd-text-h3 { font-size: 1.25rem; line-height: 1.75rem; font-weight: 600; }
:lang(ar) .mtd-text-h3, [dir="rtl"] .mtd-text-h3 { font-size: 1.3125rem; line-height: 2rem; }
.mtd-text-h4 { font-size: 1rem; line-height: 1.5rem; font-weight: 600; }
:lang(ar) .mtd-text-h4, [dir="rtl"] .mtd-text-h4 { font-size: 1.0625rem; line-height: 1.75rem; }
.mtd-text-body-large { font-size: 1rem; line-height: 1.5rem; font-weight: 400; }
:lang(ar) .mtd-text-body-large, [dir="rtl"] .mtd-text-body-large { font-size: 1.0625rem; line-height: 1.75rem; }
.mtd-text-body-default { font-size: 0.875rem; line-height: 1.25rem; font-weight: 400; }
:lang(ar) .mtd-text-body-default, [dir="rtl"] .mtd-text-body-default { font-size: 0.9375rem; line-height: 1.5rem; }
.mtd-text-body-medium { font-size: 0.875rem; line-height: 1.25rem; font-weight: 500; }
:lang(ar) .mtd-text-body-medium, [dir="rtl"] .mtd-text-body-medium { font-size: 0.9375rem; line-height: 1.5rem; }
.mtd-text-body-small { font-size: 0.75rem; line-height: 1rem; font-weight: 400; }
:lang(ar) .mtd-text-body-small, [dir="rtl"] .mtd-text-body-small { font-size: 0.8125rem; line-height: 1.25rem; }
.mtd-text-label-default { font-size: 0.875rem; line-height: 1.25rem; font-weight: 500; }
:lang(ar) .mtd-text-label-default, [dir="rtl"] .mtd-text-label-default { font-size: 0.9375rem; line-height: 1.5rem; }
.mtd-text-label-small { font-size: 0.75rem; line-height: 1rem; font-weight: 500; }
:lang(ar) .mtd-text-label-small, [dir="rtl"] .mtd-text-label-small { font-size: 0.8125rem; line-height: 1.25rem; }
.mtd-text-overline { font-size: 0.75rem; line-height: 1rem; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; }
:lang(ar) .mtd-text-overline, [dir="rtl"] .mtd-text-overline { font-size: 0.8125rem; line-height: 1.25rem; letter-spacing: 0; text-transform: none; }
