/* Generated from docs/design/tokens.json by scripts/build-tokens.py. Do not edit by hand. */
:root {
  --font-sans: "Vazirmatn", "Tahoma", system-ui, sans-serif;
  --font-math: "STIX Two Text", "Latin Modern Math", "Times New Roman", serif;
  --text-display-xl-size: 56px;
  --text-display-xl-line: 72px;
  --text-display-xl-weight: 800;
  --text-display-lg-size: 40px;
  --text-display-lg-line: 56px;
  --text-display-lg-weight: 800;
  --text-h1-size: 32px;
  --text-h1-line: 48px;
  --text-h1-weight: 800;
  --text-h2-size: 26px;
  --text-h2-line: 40px;
  --text-h2-weight: 700;
  --text-h3-size: 20px;
  --text-h3-line: 32px;
  --text-h3-weight: 700;
  --text-h4-size: 17px;
  --text-h4-line: 28px;
  --text-h4-weight: 700;
  --text-body-lg-size: 18px;
  --text-body-lg-line: 34px;
  --text-body-lg-weight: 400;
  --text-body-size: 16px;
  --text-body-line: 28px;
  --text-body-weight: 400;
  --text-body-sm-size: 14px;
  --text-body-sm-line: 24px;
  --text-body-sm-weight: 400;
  --text-caption-size: 13px;
  --text-caption-line: 22px;
  --text-caption-weight: 400;
  --text-label-size: 14px;
  --text-label-line: 22px;
  --text-label-weight: 600;
  --text-eyebrow-size: 13px;
  --text-eyebrow-line: 20px;
  --text-eyebrow-weight: 700;
  --text-price-size: 24px;
  --text-price-line: 32px;
  --text-price-weight: 800;
  --text-math-block-size: 21px;
  --text-math-block-line: 40px;
  --text-math-block-weight: 400;
  --text-math-inline-size: 18px;
  --text-math-inline-line: 28px;
  --text-math-inline-weight: 400;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --space-24: 96px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-pill: 999px;
  --container-max: 1200px;
  --reading-width: 68ch;
  --header-height: 72px;
  --sidebar-width: 272px;
  --tap-target: 44px;
  --z-sticky: 20;
  --z-header: 30;
  --z-drawer: 40;
  --z-modal: 50;
}

:root,
[data-theme="light"] {
  --surface-100: #f6f3ea;
  --surface-200: #ffffff;
  --surface-300: #ebe6d8;
  --surface-deep: #0f3a33;
  --on-deep: #f6f3ea;
  --ink: #14262b;
  --ink-muted: #4a5a5e;
  --line: #d8d1bd;
  --line-strong: #7d7a68;
  --brand: #165a4f;
  --brand-hover: #0f453c;
  --on-brand: #ffffff;
  --brand-tint: #dcebe5;
  --accent: #b93a14;
  --accent-hover: #963010;
  --on-accent: #ffffff;
  --accent-tint: #fbe3d8;
  --highlight: #f2c744;
  --on-highlight: #14262b;
  --success: #14683f;
  --success-tint: #dff1e6;
  --danger: #a1261c;
  --danger-tint: #fbe1de;
  --warning: #7a4f00;
  --warning-tint: #fbefc4;
  --info: #1d5a8a;
  --info-tint: #dcebf7;
  --type-print: #7a4a22;
  --type-file: #1d5a8a;
  --type-video: #b93a14;
  --type-course: #165a4f;
  --on-type: #ffffff;
  --focus: #1a4fc4;
  --scrim: #0b1416b8;
  --shadow-card: 0 1px 2px #14262b14, 0 4px 14px #14262b0f;
  --shadow-pop: 0 8px 28px #14262b26;
}

[data-theme="dark"] {
  --surface-100: #10191b;
  --surface-200: #172326;
  --surface-300: #1d2d30;
  --surface-deep: #0a1f1c;
  --on-deep: #eef0e8;
  --ink: #eef0e8;
  --ink-muted: #a9b9b6;
  --line: #2f4144;
  --line-strong: #6d8387;
  --brand: #6fcdb8;
  --brand-hover: #8fe0cd;
  --on-brand: #08201b;
  --brand-tint: #17332e;
  --accent: #ff8e66;
  --accent-hover: #ffab8a;
  --on-accent: #2a0e04;
  --accent-tint: #3a2018;
  --highlight: #f2c744;
  --on-highlight: #14262b;
  --success: #7fd8a3;
  --success-tint: #173225;
  --danger: #ff9a90;
  --danger-tint: #3d1c19;
  --warning: #f0c36a;
  --warning-tint: #3a2f12;
  --info: #8cc3ee;
  --info-tint: #142b3d;
  --type-print: #e0a878;
  --type-file: #8cc3ee;
  --type-video: #ff8e66;
  --type-course: #6fcdb8;
  --on-type: #10191b;
  --focus: #8ab4ff;
  --scrim: #000000cc;
  --shadow-card: 0 1px 2px #00000066;
  --shadow-pop: 0 8px 28px #000000aa;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --surface-100: #10191b;
    --surface-200: #172326;
    --surface-300: #1d2d30;
    --surface-deep: #0a1f1c;
    --on-deep: #eef0e8;
    --ink: #eef0e8;
    --ink-muted: #a9b9b6;
    --line: #2f4144;
    --line-strong: #6d8387;
    --brand: #6fcdb8;
    --brand-hover: #8fe0cd;
    --on-brand: #08201b;
    --brand-tint: #17332e;
    --accent: #ff8e66;
    --accent-hover: #ffab8a;
    --on-accent: #2a0e04;
    --accent-tint: #3a2018;
    --highlight: #f2c744;
    --on-highlight: #14262b;
    --success: #7fd8a3;
    --success-tint: #173225;
    --danger: #ff9a90;
    --danger-tint: #3d1c19;
    --warning: #f0c36a;
    --warning-tint: #3a2f12;
    --info: #8cc3ee;
    --info-tint: #142b3d;
    --type-print: #e0a878;
    --type-file: #8cc3ee;
    --type-video: #ff8e66;
    --type-course: #6fcdb8;
    --on-type: #10191b;
    --focus: #8ab4ff;
    --scrim: #000000cc;
    --shadow-card: 0 1px 2px #00000066;
    --shadow-pop: 0 8px 28px #000000aa;
  }
}
