/* Zimam — generated from design/tokens.json. Do not edit by hand; run design/scripts/generate.py. */

@font-face { font-family: 'thmanyah sans'; src: url('../fonts/web/thmanyahsans-Light.woff2') format('woff2'); font-weight: 300; font-style: normal; font-display: swap; }

@font-face { font-family: 'thmanyah sans'; src: url('../fonts/web/thmanyahsans-Regular.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }

@font-face { font-family: 'thmanyah sans'; src: url('../fonts/web/thmanyahsans-Medium.woff2') format('woff2'); font-weight: 500; font-style: normal; font-display: swap; }

@font-face { font-family: 'thmanyah sans'; src: url('../fonts/web/thmanyahsans-Bold.woff2') format('woff2'); font-weight: 700; font-style: normal; font-display: swap; }

@font-face { font-family: 'thmanyah sans'; src: url('../fonts/web/thmanyahsans-Black.woff2') format('woff2'); font-weight: 900; font-style: normal; font-display: swap; }

@font-face { font-family: 'thmanyah serif display'; src: url('../fonts/web/thmanyahserifdisplay-Light.woff2') format('woff2'); font-weight: 300; font-style: normal; font-display: swap; }

@font-face { font-family: 'thmanyah serif display'; src: url('../fonts/web/thmanyahserifdisplay-Regular.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }

@font-face { font-family: 'thmanyah serif display'; src: url('../fonts/web/thmanyahserifdisplay-Medium.woff2') format('woff2'); font-weight: 500; font-style: normal; font-display: swap; }

@font-face { font-family: 'thmanyah serif display'; src: url('../fonts/web/thmanyahserifdisplay-Bold.woff2') format('woff2'); font-weight: 700; font-style: normal; font-display: swap; }

@font-face { font-family: 'thmanyah serif display'; src: url('../fonts/web/thmanyahserifdisplay-Black.woff2') format('woff2'); font-weight: 900; font-style: normal; font-display: swap; }

:root, [data-theme="light"] {
  --surface: #f5f5f7;
  --surface-raised: #ffffff;
  --surface-sunken: #ebebee;
  --line: #dedee3;
  --line-strong: #82828a;
  --ink: #1c1c1f;
  --ink-muted: #5c5c63;
  --ink-faint: #87878e;
  --brand: #3040bf;
  --on-brand: #ffffff;
  --brand-soft: #eaecfd;
  --brand-ink: #2c3cb0;
  --sand: #875a0e;
  --sand-soft: #f7eedb;
  --priority-high: #b93e0c;
  --priority-medium: #8a6100;
  --priority-low: var(--brand);
  --success: #1f6f43;
  --focus-ring: var(--brand);
  --quadrant-urgent-important: var(--priority-high);
  --quadrant-important: #11618a;
  --quadrant-urgent: var(--priority-medium);
  --quadrant-someday: var(--ink-muted);
  --on-quadrant: var(--on-brand);
  --timeline-bar: #1b6e6a;
  --on-timeline-bar: var(--on-brand);
  --timeline-today: var(--priority-high);
  --shadow-lift: 0 8px 24px rgba(0,0,0,0.12);
}

[data-theme="dark"] {
  --surface: #121214;
  --surface-raised: #1c1c1f;
  --surface-sunken: #0b0b0c;
  --line: #2e2e32;
  --line-strong: #6c6c73;
  --ink: #f2f2f4;
  --ink-muted: #a6a6ad;
  --ink-faint: #77777e;
  --brand: #8b98ff;
  --on-brand: #121214;
  --brand-soft: #24284a;
  --brand-ink: #c3caff;
  --sand: #e6bc6c;
  --sand-soft: #372a12;
  --priority-high: #f2925f;
  --priority-medium: #e3b54e;
  --priority-low: var(--brand);
  --success: #62c98f;
  --focus-ring: var(--brand);
  --quadrant-urgent-important: var(--priority-high);
  --quadrant-important: #6cc3e8;
  --quadrant-urgent: var(--priority-medium);
  --quadrant-someday: var(--ink-muted);
  --on-quadrant: var(--on-brand);
  --timeline-bar: #5fc4bb;
  --on-timeline-bar: var(--on-brand);
  --timeline-today: var(--priority-high);
  --shadow-lift: 0 8px 24px rgba(0,0,0,0.5);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --surface: #121214;
    --surface-raised: #1c1c1f;
    --surface-sunken: #0b0b0c;
    --line: #2e2e32;
    --line-strong: #6c6c73;
    --ink: #f2f2f4;
    --ink-muted: #a6a6ad;
    --ink-faint: #77777e;
    --brand: #8b98ff;
    --on-brand: #121214;
    --brand-soft: #24284a;
    --brand-ink: #c3caff;
    --sand: #e6bc6c;
    --sand-soft: #372a12;
    --priority-high: #f2925f;
    --priority-medium: #e3b54e;
    --priority-low: var(--brand);
    --success: #62c98f;
    --focus-ring: var(--brand);
    --quadrant-urgent-important: var(--priority-high);
    --quadrant-important: #6cc3e8;
    --quadrant-urgent: var(--priority-medium);
    --quadrant-someday: var(--ink-muted);
    --on-quadrant: var(--on-brand);
    --timeline-bar: #5fc4bb;
    --on-timeline-bar: var(--on-brand);
    --timeline-today: var(--priority-high);
    --shadow-lift: 0 8px 24px rgba(0,0,0,0.5);
  }
}

:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-11: 44px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-pill: 999px;
  --duration-complete: 250ms;
  --duration-linger: 1000ms;
  --opacity-pressed: 0.8;
  --font-sans: "thmanyah sans", "SF Arabic", "Geeza Pro", system-ui, sans-serif;
  --font-display: "thmanyah serif display", "thmanyah sans", "SF Arabic", system-ui, serif;
}

.display { font-family: var(--font-sans); font-size: 34px; line-height: 50px; font-weight: 700; }

.title { font-family: var(--font-sans); font-size: 22px; line-height: 34px; font-weight: 700; }

.headline { font-family: var(--font-sans); font-size: 17px; line-height: 26px; font-weight: 600; }

.body { font-family: var(--font-sans); font-size: 17px; line-height: 28px; font-weight: 400; }

.callout { font-family: var(--font-sans); font-size: 15px; line-height: 24px; font-weight: 400; }

.caption { font-family: var(--font-sans); font-size: 13px; line-height: 20px; font-weight: 500; }

.hero { font-family: var(--font-display); font-size: 48px; line-height: 70px; font-weight: 700; }
