/* Callalo design tokens v1.0.1 (2026-09-16)
   Source of truth: callalo-tokens.json. Fonts: Manrope, Noto Sans Arabic (Google Fonts). */
:root {
  --cl-midnight-50: #F1F2F4;
  --cl-midnight-100: #DFE1E5;
  --cl-midnight-200: #BEC3CB;
  --cl-midnight-300: #9097A6;
  --cl-midnight-400: #667084;
  --cl-midnight-500: #414E66;
  --cl-midnight-600: #2A3854;
  --cl-midnight-700: #172745;
  --cl-midnight-800: #111D34;
  --cl-midnight-900: #0D1526;
  --cl-saffron-50: #FDF9F2;
  --cl-saffron-100: #F9F1E0;
  --cl-saffron-200: #F3E2BC;
  --cl-saffron-300: #EBCE90;
  --cl-saffron-400: #E1B658;
  --cl-saffron-500: #D79D21;
  --cl-saffron-600: #B1831F;
  --cl-saffron-700: #906B1D;
  --cl-saffron-800: #6E541A;
  --cl-saffron-900: #4C3C18;
  --cl-teal-50: #F2F7F6;
  --cl-teal-100: #E0ECEA;
  --cl-teal-200: #BCD7D3;
  --cl-teal-300: #8EBCB6;
  --cl-teal-400: #569B91;
  --cl-teal-500: #1E7A6C;
  --cl-teal-600: #1A665C;
  --cl-teal-700: #16544E;
  --cl-teal-800: #124240;
  --cl-teal-900: #0E3032;
  --cl-sand-50: #FDFBF6;
  --cl-sand-100: #FBF7EE;
  --cl-sand-200: #F1EADC;
  --cl-sand-300: #E3D9C6;
  --cl-sand-400: #C9BCA5;
  --cl-sand-500: #A1947E;
  --cl-sand-600: #7B705E;
  --cl-sand-700: #5A5245;
  --cl-sand-800: #3D3830;
  --cl-sand-900: #27231E;
  --cl-brand-midnight: #172745;
  --cl-brand-saffron: #D79D21;
  --cl-brand-ivory: #FBF7EE;
  --cl-brand-teal: #1E7A6C;
  --cl-semantic-success-base: #1A665C;
  --cl-semantic-success-soft: #F2F7F6;
  --cl-semantic-success-text: #16544E;
  --cl-semantic-warning-base: #D79D21;
  --cl-semantic-warning-soft: #FDF9F2;
  --cl-semantic-warning-text: #6E541A;
  --cl-semantic-error-base: #B5412E;
  --cl-semantic-error-soft: #FBEAE6;
  --cl-semantic-error-text: #8F3222;
  --cl-semantic-info-base: #3767A6;
  --cl-semantic-info-soft: #E8EFF8;
  --cl-semantic-info-text: #2A4F80;
  --cl-status-verified-fg: #16544E;
  --cl-status-verified-bg: #F2F7F6;
  --cl-status-verified-dot: #1E7A6C;
  --cl-status-wants-human-fg: #6E541A;
  --cl-status-wants-human-bg: #FDF9F2;
  --cl-status-wants-human-dot: #D79D21;
  --cl-status-callback-fg: #2A4F80;
  --cl-status-callback-bg: #E8EFF8;
  --cl-status-callback-dot: #3767A6;
  --cl-status-no-answer-fg: #5A5245;
  --cl-status-no-answer-bg: #F1EADC;
  --cl-status-no-answer-dot: #A1947E;
  --cl-status-not-interested-fg: #414E66;
  --cl-status-not-interested-bg: #F1F2F4;
  --cl-status-not-interested-dot: #9097A6;
  --cl-status-rejected-fg: #8F3222;
  --cl-status-rejected-bg: #FBEAE6;
  --cl-status-rejected-dot: #B5412E;
  --cl-chart-1: #172745;
  --cl-chart-2: #D79D21;
  --cl-chart-3: #1E7A6C;
  --cl-chart-4: #3767A6;
  --cl-chart-5: #A1947E;
  --cl-chart-6: #B5412E;
  --cl-font-family-sans: 'Manrope', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
  --cl-font-family-arabic: 'Noto Sans Arabic', 'Segoe UI', Tahoma, sans-serif;
  --cl-font-family-urdu-display: 'Noto Nastaliq Urdu', 'Noto Sans Arabic', serif;
  --cl-font-family-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
  --cl-font-weight-regular: 400;
  --cl-font-weight-medium: 500;
  --cl-font-weight-semibold: 600;
  --cl-font-weight-bold: 700;
  --cl-font-weight-extrabold: 800;
  --cl-font-size-xs: 0.75rem;
  --cl-font-size-sm: 0.875rem;
  --cl-font-size-base: 1rem;
  --cl-font-size-lg: 1.125rem;
  --cl-font-size-xl: 1.375rem;
  --cl-font-size-2xl: 1.75rem;
  --cl-font-size-3xl: 2.25rem;
  --cl-font-size-4xl: 3rem;
  --cl-font-size-5xl: 4rem;
  --cl-font-lineHeight-tight: 1.15;
  --cl-font-lineHeight-snug: 1.3;
  --cl-font-lineHeight-normal: 1.55;
  --cl-font-lineHeight-arabic: 1.8;
  --cl-font-letterSpacing-display: -0.025em;
  --cl-font-letterSpacing-heading: -0.015em;
  --cl-font-letterSpacing-body: 0;
  --cl-font-letterSpacing-caps: 0.02em;
  --cl-space-0: 0;
  --cl-space-1: 0.25rem;
  --cl-space-2: 0.5rem;
  --cl-space-3: 0.75rem;
  --cl-space-4: 1rem;
  --cl-space-5: 1.25rem;
  --cl-space-6: 1.5rem;
  --cl-space-8: 2rem;
  --cl-space-10: 2.5rem;
  --cl-space-12: 3rem;
  --cl-space-16: 4rem;
  --cl-space-20: 5rem;
  --cl-space-24: 6rem;
  --cl-radius-sm: 6px;
  --cl-radius-md: 10px;
  --cl-radius-lg: 16px;
  --cl-radius-xl: 24px;
  --cl-radius-pill: 999px;
  --cl-shadow-sm: 0 1px 2px rgba(23,39,69,.06);
  --cl-shadow-md: 0 4px 14px rgba(23,39,69,.08);
  --cl-shadow-lg: 0 14px 40px rgba(23,39,69,.12);
  --cl-duration-fast: 120ms;
  --cl-duration-base: 200ms;
  --cl-duration-slow: 320ms;
  --cl-easing-standard: cubic-bezier(.2,.0,.0,1);
  --cl-easing-out: cubic-bezier(0,0,.2,1);
  --cl-layout-container: 1200px;
  --cl-layout-reading: 72ch;
  --cl-layout-gutter: 1.5rem;
}

/* Semantic theme: light (default) */
:root {
  --cl-bg: #FBF7EE;
  --cl-surface: #FFFFFF;
  --cl-surface-sunken: #F1EADC;
  --cl-border: #E3D9C6;
  --cl-border-strong: #C9BCA5;
  --cl-text: #172745;
  --cl-text-muted: #667084;
  --cl-text-subtle: #7B705E;
  --cl-accent: #D79D21;
  --cl-accent-text: #6E541A;
  --cl-primary: #172745;
  --cl-primary-hover: #2A3854;
  --cl-on-primary: #FBF7EE;
  --cl-focus: #172745;
  color-scheme: light;
}

/* Dark theme: follows the OS unless data-theme="light" is set */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
  --cl-bg: #0D1628;
  --cl-surface: #142038;
  --cl-surface-sunken: #0A1120;
  --cl-border: #24324D;
  --cl-border-strong: #34466A;
  --cl-text: #F4EFE4;
  --cl-text-muted: #AEB8C9;
  --cl-text-subtle: #8592A8;
  --cl-accent: #E4AE3A;
  --cl-accent-text: #EDC063;
  --cl-primary: #F4EFE4;
  --cl-primary-hover: #FFFFFF;
  --cl-on-primary: #172745;
  --cl-focus: #E4AE3A;
    color-scheme: dark;
  }
}
:root[data-theme="dark"] {
  --cl-bg: #0D1628;
  --cl-surface: #142038;
  --cl-surface-sunken: #0A1120;
  --cl-border: #24324D;
  --cl-border-strong: #34466A;
  --cl-text: #F4EFE4;
  --cl-text-muted: #AEB8C9;
  --cl-text-subtle: #8592A8;
  --cl-accent: #E4AE3A;
  --cl-accent-text: #EDC063;
  --cl-primary: #F4EFE4;
  --cl-primary-hover: #FFFFFF;
  --cl-on-primary: #172745;
  --cl-focus: #E4AE3A;
  color-scheme: dark;
}

/* Arabic-script languages (Arabic, Dari, Urdu) */
:lang(ar), :lang(fa), :lang(prs), :lang(ur), [dir="rtl"] {
  font-family: var(--cl-font-family-arabic);
  line-height: var(--cl-font-lineHeight-arabic);
  letter-spacing: 0;
}
