/* Bouden House DS — Typography tokens
 * Modern editorial pairing: Newsreader + Noto Serif SC for display &
 * reading (contemporary, high legibility); Archivo + Noto Sans SC — a
 * clean grotesque — for labels, UI, nav and mastheads. Serif leads for
 * reading; the grotesque carries the fashionable New-York register.
 */

:root {
  /* ---- Families -------------------------------------------------- */
  --font-serif: "Newsreader", "Noto Serif SC", "Songti SC", "Source Han Serif SC", serif;
  --font-sans:  "Archivo", "Noto Sans SC", system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
  --font-mono:  "SFMono-Regular", ui-monospace, monospace;

  /* ---- Type scale (1.2 ratio, editorial) ------------------------- */
  --text-7xl: 64px;   /* hero display */
  --text-6xl: 52px;
  --text-5xl: 42px;   /* page title */
  --text-4xl: 34px;   /* section title */
  --text-3xl: 28px;
  --text-2xl: 23px;   /* card / book title */
  --text-xl:  20px;
  --text-lg:  18px;   /* lead / large body */
  --text-md:  16px;   /* base body */
  --text-sm:  14px;   /* meta, captions */
  --text-xs:  13px;   /* labels, tags */

  /* ---- Weights --------------------------------------------------- */
  --weight-regular: 400;
  --weight-medium:  500;
  --weight-semibold:600;
  --weight-bold:    700;
  --weight-black:   900;  /* Noto Serif SC heavy — for stamps/marks only */

  /* ---- Line heights ---------------------------------------------- */
  --leading-tight:  1.15;  /* display headings */
  --leading-snug:   1.3;   /* titles */
  --leading-normal: 1.5;   /* UI text */
  --leading-relaxed:1.75;  /* long-form reading (CJK comfortable) */

  /* ---- Letter spacing -------------------------------------------- */
  --tracking-tight:  -0.025em;  /* large display, modern tight set */
  --tracking-normal: 0;
  --tracking-wide:   0.04em;
  --tracking-label:  0.18em;  /* wide-tracked uppercase labels — fashion editorial */

  /* ---- Semantic roles -------------------------------------------- */
  --display-font:   var(--font-serif);
  --display-weight: var(--weight-semibold);
  --heading-font:   var(--font-serif);
  --heading-weight: var(--weight-semibold);
  --body-font:      var(--font-serif);
  --body-weight:    var(--weight-regular);
  --ui-font:        var(--font-sans);
  --label-font:     var(--font-sans);
}
