:root {
  /* Primitive colour tokens */
  --telha-cream-50: #fffcf5;
  --telha-cream-100: #fbf6ee;
  --telha-cream-200: #f4eee5;
  --telha-cream-300: #e8ded1;
  --telha-white: #ffffff;
  --telha-black: #020812;

  --telha-ink-950: #05101e;
  --telha-ink-900: #071727;
  --telha-ink-800: #101a2a;
  --telha-ink-700: #17263a;
  --telha-ink-600: #26384f;
  --telha-ink-500: #40516a;
  --telha-ink-400: #68758a;
  --telha-ink-300: #97a1b0;
  --telha-ink-200: #c7cfda;
  --telha-ink-100: #e9eef4;
  --telha-ink-50: #f5f8fb;

  --telha-stone-50: #faf7f0;
  --telha-stone-100: #e7dfd3;
  --telha-stone-200: #d5cabd;
  --telha-stone-300: #b8aea2;
  --telha-stone-400: #81766e;
  --telha-stone-500: #5c5551;

  --telha-blue-50: #eff6ff;
  --telha-blue-100: #dbeaff;
  --telha-blue-200: #bbd7ff;
  --telha-blue-300: #78b5ff;
  --telha-blue-400: #3f93ff;
  --telha-blue-500: #1677ff;
  --telha-blue-600: #115cd6;
  --telha-blue-700: #0d46a8;
  --telha-blue-900: #0a245f;

  --telha-red-50: #fff0ee;
  --telha-red-100: #ffdcd7;
  --telha-red-300: #ff8f83;
  --telha-red-500: #e1261c;
  --telha-red-600: #c61f18;
  --telha-red-700: #9f1713;

  --telha-green-50: #ecfdf5;
  --telha-green-100: #d1fae5;
  --telha-green-500: #10a66a;
  --telha-green-700: #047852;
  --telha-amber-50: #fff8e6;
  --telha-amber-100: #ffe8a3;
  --telha-amber-500: #f59e0b;
  --telha-amber-700: #b45309;
  --telha-orange-50: #fff4e8;
  --telha-orange-500: #f97316;
  --telha-orange-700: #c2410c;
  --telha-teal-50: #ecfeff;
  --telha-teal-500: #14b8a6;
  --telha-teal-700: #0f766e;
  --telha-purple-50: #f5f0ff;
  --telha-purple-500: #8b5cf6;
  --telha-purple-700: #6d28d9;

  /* Semantic colour tokens */
  --telha-bg-marketing: var(--telha-cream-100);
  --telha-bg-app: #fbfaf7;
  --telha-bg-canvas: #f8f7f3;
  --telha-bg-surface: var(--telha-white);
  --telha-bg-surface-warm: var(--telha-cream-50);
  --telha-bg-surface-muted: #f6f4ef;
  --telha-bg-sidebar: #fcfbf8;
  --telha-bg-topbar: rgba(255, 255, 255, 0.86);
  --telha-bg-selected: var(--telha-blue-50);
  --telha-bg-inverse: var(--telha-ink-950);
  --telha-bg-brand-soft: var(--telha-blue-50);
  --telha-bg-ai-soft: var(--telha-purple-50);
  --telha-bg-risk-soft: var(--telha-red-50);
  --telha-bg-success-soft: var(--telha-green-50);
  --telha-bg-warning-soft: var(--telha-amber-50);

  --telha-text-primary: var(--telha-ink-900);
  --telha-text-secondary: var(--telha-ink-600);
  --telha-text-muted: var(--telha-ink-400);
  --telha-text-subtle: var(--telha-ink-300);
  --telha-text-inverse: #f8f5ee;
  --telha-text-brand: var(--telha-blue-600);
  --telha-text-accent: var(--telha-red-500);
  --telha-text-success: var(--telha-green-700);
  --telha-text-warning: var(--telha-amber-700);
  --telha-text-danger: var(--telha-red-600);

  --telha-border-default: #e8e2d8;
  --telha-border-subtle: #f0ece4;
  --telha-border-strong: #d2c8ba;
  --telha-border-inverse: rgba(255, 255, 255, 0.14);
  --telha-border-focus: var(--telha-blue-500);
  --telha-border-selected: var(--telha-blue-400);

  --telha-action-primary: var(--telha-red-500);
  --telha-action-primary-hover: var(--telha-red-600);
  --telha-action-brand: var(--telha-blue-500);
  --telha-action-brand-hover: var(--telha-blue-600);
  --telha-action-secondary: var(--telha-ink-900);
  --telha-action-ghost: transparent;

  --telha-status-success: var(--telha-green-500);
  --telha-status-warning: var(--telha-amber-500);
  --telha-status-danger: var(--telha-red-500);
  --telha-status-info: var(--telha-blue-500);
  --telha-status-ai: var(--telha-purple-500);
  --telha-status-neutral: var(--telha-ink-400);

  --telha-domain-hse: var(--telha-ink-600);
  --telha-domain-sales: var(--telha-green-500);
  --telha-domain-customer-care: var(--telha-teal-500);
  --telha-domain-complaints: var(--telha-red-500);
  --telha-domain-finance: var(--telha-green-700);
  --telha-domain-leadership: var(--telha-blue-500);
  --telha-domain-personal: var(--telha-amber-500);

  --telha-chart-series-1: var(--telha-blue-500);
  --telha-chart-series-2: var(--telha-green-500);
  --telha-chart-series-3: var(--telha-purple-500);
  --telha-chart-series-4: var(--telha-orange-500);
  --telha-chart-series-5: var(--telha-ink-300);
  --telha-chart-grid: #e9edf2;

  /* Typography */
  --telha-font-display: Canela, "IvyPresto Display", "Playfair Display", Georgia, serif;
  --telha-font-body: Inter, "Suisse Intl", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --telha-font-mono: SFMono-Regular, ui-monospace, Menlo, Consolas, monospace;
  --telha-type-2xs: 11px;
  --telha-type-xs: 12px;
  --telha-type-sm: 13px;
  --telha-type-md: 14px;
  --telha-type-base: 16px;
  --telha-type-lg: 18px;
  --telha-type-xl: 22px;
  --telha-type-2xl: 28px;
  --telha-type-3xl: 40px;
  --telha-type-4xl: 56px;
  --telha-type-5xl: 76px;
  --telha-leading-tight: 0.96;
  --telha-leading-compact: 1.1;
  --telha-leading-normal: 1.45;
  --telha-leading-loose: 1.65;
  --telha-tracking-eyebrow: 0.16em;
  --telha-tracking-tight: -0.04em;

  /* Space */
  --telha-space-0: 0px;
  --telha-space-1: 4px;
  --telha-space-2: 8px;
  --telha-space-3: 12px;
  --telha-space-4: 16px;
  --telha-space-5: 20px;
  --telha-space-6: 24px;
  --telha-space-8: 32px;
  --telha-space-10: 40px;
  --telha-space-12: 48px;
  --telha-space-14: 56px;
  --telha-space-16: 64px;
  --telha-space-20: 80px;
  --telha-space-24: 96px;
  --telha-space-32: 128px;

  /* Shape */
  --telha-radius-xs: 4px;
  --telha-radius-sm: 8px;
  --telha-radius-md: 12px;
  --telha-radius-lg: 16px;
  --telha-radius-xl: 22px;
  --telha-radius-2xl: 28px;
  --telha-radius-pill: 999px;

  /* Layout */
  --telha-container: 1180px;
  --telha-app-max: 1600px;
  --telha-nav-height: 72px;
  --telha-app-topbar: 60px;
  --telha-sidebar-width: 280px;
  --telha-assistant-width: 360px;
  --telha-canvas-max: 980px;
  --telha-command-width: 460px;
  --telha-icon-sm: 18px;
  --telha-icon-md: 24px;
  --telha-icon-lg: 40px;

  /* Effects */
  --telha-shadow-xs: 0 1px 2px rgba(7, 23, 39, 0.05);
  --telha-shadow-sm: 0 8px 28px rgba(7, 23, 39, 0.08);
  --telha-shadow-md: 0 18px 60px rgba(7, 23, 39, 0.12);
  --telha-shadow-app: 0 12px 40px rgba(7, 23, 39, 0.07);
  --telha-shadow-focus: 0 0 0 3px rgba(22, 119, 255, 0.18);
  --telha-shadow-blue-glow: 0 0 0 1px rgba(22, 119, 255, 0.24), 0 18px 60px rgba(22, 119, 255, 0.22);
  --telha-shadow-red-glow: 0 14px 34px rgba(225, 38, 28, 0.24);

  /* Motion and layers */
  --telha-ease-standard: cubic-bezier(0.2, 0.8, 0.2, 1);
  --telha-ease-entrance: cubic-bezier(0.16, 1, 0.3, 1);
  --telha-motion-fast: 120ms;
  --telha-motion-base: 180ms;
  --telha-motion-slow: 320ms;
  --telha-z-base: 0;
  --telha-z-sticky: 10;
  --telha-z-overlay: 40;
  --telha-z-modal: 60;
  --telha-z-toast: 80;
}
