/*
 * Typography profiles are token mappings only. They never import font files:
 * a consumer imports only the matching family CSS from @avds/ui-kit/fonts/.
 * Without data-avds-typography, AVDS 5.x keeps its existing token values.
 */

[data-avds-typography] {
  --avds-type-body-line-height: 1.55;
  --avds-type-reading-line-height: 1.65;
  --avds-type-display-line-height: 1.08;
  --avds-type-ui-line-height: 1.3;
  --avds-type-reading-measure: 68ch;
  --avds-type-display-tracking: -0.018em;
  --avds-type-ui-tracking: 0;
  --avds-type-micro-tracking: 0.012em;
  --avds-type-tabular-nums: tabular-nums;
  --avds-type-label-transform: none;
}

[data-avds-typography] :where([data-avds-type-role="italic"]) {
  font-family: var(--font-sans);
}

[data-avds-typography="source-neutral"] {
  --font-sans: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-serif: "Source Serif 4", Georgia, "Times New Roman", serif;
  --font-display: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-micro: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-dashboard: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", "JetBrains Mono", "Fira Code", Menlo, monospace;
}

[data-avds-typography="editorial-source"] {
  --font-sans: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-serif: "Source Serif 4", Georgia, "Times New Roman", serif;
  --font-display: "Source Serif 4", Georgia, "Times New Roman", serif;
  --font-micro: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-dashboard: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", "JetBrains Mono", "Fira Code", Menlo, monospace;
  --avds-type-reading-line-height: 1.7;
  --avds-type-reading-measure: 66ch;
  --avds-type-display-tracking: -0.014em;
}

[data-avds-typography="editorial-bitter"] {
  --font-sans: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-serif: "Bitter", Georgia, "Times New Roman", serif;
  --font-display: "Bitter", Georgia, "Times New Roman", serif;
  --font-micro: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-dashboard: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", "JetBrains Mono", "Fira Code", Menlo, monospace;
  --avds-type-reading-line-height: 1.68;
  --avds-type-reading-measure: 64ch;
}

[data-avds-typography="editorial-spectral"] {
  --font-sans: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-serif: "Spectral", Georgia, "Times New Roman", serif;
  --font-display: "Spectral", Georgia, "Times New Roman", serif;
  --font-micro: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-dashboard: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", "JetBrains Mono", "Fira Code", Menlo, monospace;
  --avds-type-reading-line-height: 1.7;
  --avds-type-reading-measure: 66ch;
}

[data-avds-typography="public-rubik"] {
  --font-sans: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-serif: "Source Serif 4", Georgia, "Times New Roman", serif;
  --font-display: "Rubik", "Helvetica Neue", Arial, sans-serif;
  --font-micro: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-dashboard: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", "JetBrains Mono", "Fira Code", Menlo, monospace;
  --avds-type-display-tracking: -0.024em;
}

[data-avds-typography="humanist-onest"] {
  --font-sans: "Onest", "Helvetica Neue", Arial, sans-serif;
  --font-serif: "Source Serif 4", Georgia, "Times New Roman", serif;
  --font-display: "Onest", "Helvetica Neue", Arial, sans-serif;
  --font-micro: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-dashboard: "Onest", "Helvetica Neue", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", "JetBrains Mono", "Fira Code", Menlo, monospace;
  --avds-type-body-line-height: 1.48;
  --avds-type-reading-measure: 70ch;
  font-synthesis: none;
}

[data-avds-typography="heritage-forum"] {
  --font-sans: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-serif: "Source Serif 4", Georgia, "Times New Roman", serif;
  --font-display: "Forum", Georgia, "Times New Roman", serif;
  --font-micro: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-dashboard: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", "JetBrains Mono", "Fira Code", Menlo, monospace;
  --avds-type-display-tracking: 0.006em;
  --avds-type-display-line-height: 1.02;
  font-synthesis: none;
}

[data-avds-typography="editorial-source"] :where(.avds-prose, [data-avds-type-role="reading"]),
[data-avds-typography="source-neutral"] :where(.avds-prose, [data-avds-type-role="reading"]) {
  font-optical-sizing: auto;
  font-variant-numeric: var(--avds-type-tabular-nums);
}

[data-avds-typography="humanist-onest"] :where(em, i, .italic, [data-avds-type-role="italic"]),
[data-avds-typography="heritage-forum"] :where(em, i, .italic, [data-avds-type-role="italic"]) {
  font-family: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
}
