/* ============================================================
   dkton — 设计系统 tokens
   品牌色九级色阶用 color-mix() 派生，不用 Sass
   字号全部 clamp() 流体映射，视口区间 20rem(320px) ↔ 90rem(1440px)
   ============================================================ */

:root {
  /* ---- 基色 ---- */
  --brand-500: #ffb800;
  --purple:    #a67eff;
  --red:       #ff4337;
  --bg:        #000000;
  --fg:        #ffffff;
  --muted:     #98938c;
  --surface:   #2f2b2d;

  /* ---- brand 九级色阶（color-mix 派生） ---- */
  --brand-50:  color-mix(in srgb, var(--brand-500)  6%, #ffffff);
  --brand-100: color-mix(in srgb, var(--brand-500) 14%, #ffffff);
  --brand-200: color-mix(in srgb, var(--brand-500) 28%, #ffffff);
  --brand-300: color-mix(in srgb, var(--brand-500) 45%, #ffffff);
  --brand-400: color-mix(in srgb, var(--brand-500) 68%, #ffffff);
  --brand-600: color-mix(in srgb, var(--brand-500) 82%, #3a2600);
  --brand-700: color-mix(in srgb, var(--brand-500) 66%, #3a2600);
  --brand-800: color-mix(in srgb, var(--brand-500) 48%, #2a1c00);
  --brand-900: color-mix(in srgb, var(--brand-500) 28%, #150e00);

  /* ---- 语义色 ---- */
  --accent:      var(--brand-500);
  --accent-soft: rgba(255, 184, 0, .14);
  --accent-line: rgba(255, 184, 0, .42);
  --line:        rgba(255, 255, 255, .12);
  --line-soft:   rgba(255, 255, 255, .07);
  --veil:        rgba(0, 0, 0, .82);   /* 替代 backdrop-filter 的实色 */
  --veil-soft:   rgba(0, 0, 0, .55);

  /* ---- 流体字号 ---- */
  --fs-display: clamp(4rem,    calc(4rem    + (100vw - 320px) * 8     / 1120), 12rem);
  --fs-h1:      clamp(3rem,    calc(3rem    + (100vw - 320px) * 4.375 / 1120), 7.375rem);
  --fs-h2:      clamp(2.5rem,  calc(2.5rem  + (100vw - 320px) * 1.5   / 1120), 4rem);
  --fs-h3:      clamp(2rem,    calc(2rem    + (100vw - 320px) * 1     / 1120), 3rem);
  --fs-lead:    clamp(1.25rem, calc(1.25rem + (100vw - 320px) * .5    / 1120), 1.75rem);
  --fs-body:    clamp(1rem,    calc(1rem    + (100vw - 320px) * .125  / 1120), 1.125rem);
  --fs-sm:      clamp(.8125rem,calc(.8125rem+ (100vw - 320px) * .0625 / 1120), .875rem);
  --fs-xs:      .75rem;

  /* ---- 字体 ---- */
  --font-display: "Anton", "Archivo Expanded", "Bebas Neue", "Haettenschweiler",
                  "Impact", "PingFang SC", "Microsoft YaHei", sans-serif;
  --font-sans:    "Archivo", "Inter", "Helvetica Neue", "PingFang SC",
                  "Microsoft YaHei", sans-serif;
  --font-mono:    "JetBrains Mono", "SFMono-Regular", "Consolas", monospace;

  /* ---- 间距 ---- */
  --gutter:  clamp(1.25rem, calc(1.25rem + (100vw - 320px) * 2.75 / 1120), 4rem);
  --section: clamp(6rem,    calc(6rem    + (100vw - 320px) * 8     / 1120), 14rem);
  --bar:     2px;

  /* ---- 缓动 ---- */
  --ease-settle: cubic-bezier(.16, 1, .3, 1);
  --ease-duck:   cubic-bezier(.3, .12, .2, 1);
  --ease-ride:   cubic-bezier(.22, 1.02, .28, 1);
  --ease-flip:   cubic-bezier(.45, 0, .15, 1);

  /* ---- 层级 ---- */
  --z-content: 1;
  --z-nav:     400;
  --z-pill:    600;
  --z-lightbox:800;
  --z-gate:    900;

  /* ---- 自定义光标（运行时由 JS 写入 data-URI） ---- */
  --cur: auto;
}
