/* ============================================================
   Unified Design Tokens — Figma 1920px baseline → CSS

   Formula: clamp(≈75% floor, calc(FigmaPx / 1920 * 100vw), FigmaPx)

   All pages share these tokens.  Page-specific --xxx-fs-* / --xxx-space-*
   variable systems should reference these or be replaced by them.

   DO NOT redefine --amicro-pc-root, --amicro-section-h, --real-vh,
   --app-vh here — those are infrastructure variables set by style.css
   and mobile-loader.js.
   ============================================================ */

:root {
  /* ===== Design baselines ===== */
  --amicro-design-width: 1920;
  --amicro-design-height: 1080;

  /* ===== Font-size scale (Figma px → vw) ===== */
  --amicro-fs-10: var(--fs-10);
  --amicro-fs-11: var(--fs-12);
  --amicro-fs-12: var(--fs-12);
  --amicro-fs-13: var(--fs-14);
  --amicro-fs-14: var(--fs-14);
  --amicro-fs-15: var(--fs-15);
  --amicro-fs-16: var(--fs-16);
  --amicro-fs-18: var(--fs-18);
  --amicro-fs-20: var(--fs-20);
  --amicro-fs-22: var(--fs-22);
  --amicro-fs-24: var(--fs-24);
  --amicro-fs-26: var(--fs-27);
  --amicro-fs-28: var(--fs-28);
  --amicro-fs-30: var(--fs-30);
  --amicro-fs-32: var(--fs-32);
  --amicro-fs-34: var(--fs-36);
  --amicro-fs-36: var(--fs-36);
  --amicro-fs-38: var(--fs-36);
  --amicro-fs-42: var(--fs-42);
  --amicro-fs-48: var(--fs-48);
  --amicro-fs-72: var(--fs-72);
  --amicro-fs-96: var(--fs-96);

  /* ===== Spacing scale (Figma px → vw) ===== */
  --amicro-space-4:  clamp(3px,  calc(4  / 1920 * 100vw), 4px);
  --amicro-space-8:  clamp(6px,  calc(8  / 1920 * 100vw), 8px);
  --amicro-space-12: clamp(9px,  calc(12 / 1920 * 100vw), 12px);
  --amicro-space-16: clamp(12px, calc(16 / 1920 * 100vw), 16px);
  --amicro-space-20: clamp(15px, calc(20 / 1920 * 100vw), 20px);
  --amicro-space-24: clamp(18px, calc(24 / 1920 * 100vw), 24px);
  --amicro-space-32: clamp(24px, calc(32 / 1920 * 100vw), 32px);
  --amicro-space-40: clamp(30px, calc(40 / 1920 * 100vw), 40px);
  --amicro-space-48: clamp(36px, calc(48 / 1920 * 100vw), 48px);
  --amicro-space-64: clamp(48px, calc(64 / 1920 * 100vw), 64px);
  --amicro-space-80: clamp(60px, calc(80 / 1920 * 100vw), 80px);
  --amicro-space-120: clamp(90px, calc(120 / 1920 * 100vw), 120px);
  --amicro-space-160: clamp(120px, calc(160 / 1920 * 100vw), 160px);

  /* ===== Content area ===== */
  --amicro-content-max: 1600px;
  --amicro-gutter: clamp(24px, calc(160 / 1920 * 100vw), 160px);
  --amicro-content-width: min(var(--amicro-content-max), calc(100% - var(--amicro-gutter) * 2));
}

/* ===== Global numeric font-size tokens ===== */
:root {
  --fs-10: calc(10 / 1920 * 100vw);
  --fs-12: calc(12 / 1920 * 100vw);
  --fs-14: calc(14 / 1920 * 100vw);
  --fs-15: calc(15 / 1920 * 100vw);
  --fs-16: calc(16 / 1920 * 100vw);
  --fs-18: calc(18 / 1920 * 100vw);
  --fs-20: calc(20 / 1920 * 100vw);
  --fs-21: calc(21 / 1920 * 100vw);
  --fs-22: calc(22 / 1920 * 100vw);
  --fs-24: calc(24 / 1920 * 100vw);
  --fs-25: calc(25 / 1920 * 100vw);
  --fs-27: calc(27 / 1920 * 100vw);
  --fs-28: calc(28 / 1920 * 100vw);
  --fs-30: calc(30 / 1920 * 100vw);
  --fs-32: calc(32 / 1920 * 100vw);
  --fs-36: calc(36 / 1920 * 100vw);
  --fs-42: calc(42 / 1920 * 100vw);
  --fs-48: calc(48 / 1920 * 100vw);
  --fs-56: calc(56 / 1920 * 100vw);
  --fs-60: calc(60 / 1920 * 100vw);
  --fs-63: calc(63 / 1920 * 100vw);
  --fs-72: calc(72 / 1920 * 100vw);
  --fs-96: calc(96 / 1920 * 100vw);
}

html[data-mobile] {
  --fs-10: calc(10 / 1080 * 100vw);
  --fs-12: calc(12 / 1080 * 100vw);
  --fs-14: calc(14 / 1080 * 100vw);
  --fs-15: calc(15 / 1080 * 100vw);
  --fs-16: calc(16 / 1080 * 100vw);
  --fs-18: calc(18 / 1080 * 100vw);
  --fs-20: calc(20 / 1080 * 100vw);
  --fs-21: calc(21 / 1080 * 100vw);
  --fs-22: calc(22 / 1080 * 100vw);
  --fs-24: calc(24 / 1080 * 100vw);
  --fs-25: calc(25 / 1080 * 100vw);
  --fs-27: calc(27 / 1080 * 100vw);
  --fs-28: calc(28 / 1080 * 100vw);
  --fs-30: calc(30 / 1080 * 100vw);
  --fs-32: calc(32 / 1080 * 100vw);
  --fs-36: calc(36 / 1080 * 100vw);
  --fs-42: calc(42 / 1080 * 100vw);
  --fs-48: calc(48 / 1080 * 100vw);
  --fs-56: calc(56 / 1080 * 100vw);
  --fs-60: calc(60 / 1080 * 100vw);
  --fs-63: calc(63 / 1080 * 100vw);
  --fs-72: calc(72 / 1080 * 100vw);
  --fs-96: calc(96 / 1080 * 100vw);
}
/* ===== End global numeric font-size tokens ===== */
