/* ============================================================
   Dabuller — Typography tokens
   Pretendard for everything Korean + Latin; JetBrains Mono for
   numeric/code data. Tight, dense, high-legibility scale built
   for on-site reading at arm's length.
   ============================================================ */

:root {
  /* Families */
  --font-sans: 'Pretendard', -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo',
               'Malgun Gothic', system-ui, sans-serif;
  --font-mono: 'JetBrains Mono', 'SF Mono', ui-monospace, 'Cascadia Code', monospace;

  /* Weights — Pretendard supports the full variable range */
  --fw-regular:  400; /* @kind font */
  --fw-medium:   500; /* @kind font */
  --fw-semibold: 600; /* @kind font */
  --fw-bold:     700; /* @kind font */
  --fw-extra:    800; /* @kind font */

  /* Type scale (px) */
  --fs-display:  44px;   /* hero / marketing */
  --fs-h1:       32px;
  --fs-h2:       26px;
  --fs-h3:       21px;
  --fs-h4:       18px;
  --fs-lg:       17px;
  --fs-body:     15px;   /* default UI body */
  --fs-sm:       13px;
  --fs-xs:       12px;
  --fs-2xs:      11px;   /* labels, captions */

  /* Line heights */
  --lh-tight:    1.15; /* @kind font */
  --lh-snug:     1.3;  /* @kind font */
  --lh-normal:   1.5;  /* @kind font */
  --lh-relaxed:  1.65; /* @kind font */

  /* Letter spacing — Korean reads best near 0 / slightly negative */
  --ls-tight:   -0.02em; /* @kind font */
  --ls-snug:    -0.01em; /* @kind font */
  --ls-normal:   0;      /* @kind font */
  --ls-wide:     0.02em; /* @kind font */
  --ls-caps:     0.06em; /* @kind font */

  /* Semantic roles */
  --text-display-size:   var(--fs-display);
  --text-display-weight: var(--fw-extra);
  --text-display-lh:     var(--lh-tight);
  --text-display-ls:     var(--ls-tight);

  --text-heading-weight: var(--fw-bold);
  --text-heading-lh:     var(--lh-snug);
  --text-heading-ls:     var(--ls-snug);

  --text-body-size:      var(--fs-body);
  --text-body-weight:    var(--fw-regular);
  --text-body-lh:        var(--lh-normal);

  --text-label-size:     var(--fs-2xs);
  --text-label-weight:   var(--fw-semibold);
  --text-label-ls:       var(--ls-caps);
}
