/* 缪斯创想 MUSEAGENT —— Design Tokens
   配色：冷蓝 + 深灰科技风。浅色主导，深色块 ≤3 处 + 页尾。
   主色 hue 210–214，避开撞脸的 SaaS 蓝(220–250)。
*/

/* ── 自托管 Inter（拉丁子集，4 档共 95KB）───────────────────────
   不用 Google Fonts：fonts.googleapis.com 在国内会超时，
   B 端客户在办公网打开会出现数秒白字/字体闪烁。
   unicode-range 限定拉丁，中文自动落回系统字体，不产生额外请求。
*/
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/inter-400.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/inter-500.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/inter-600.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/inter-700.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215;
}

:root {
  /* ── Brand: 冷蓝 ───────────────────────────────────────────── */
  --brand-50:  #F0F6FD;
  --brand-100: #DCEBF8;
  --brand-200: #BCD7F1;
  --brand-300: #8CBAE8;
  --brand-400: #4F93D6;
  --brand-500: #2079C9;
  --brand-600: #1466C4;  /* 主按钮/链接/图标，白底 AA */
  --brand-700: #0E52A0;
  --brand-800: #0C407D;
  --brand-900: #0D2E59;
  --ice:       #C9E2F5;

  --brand-a06: rgba(20, 102, 196, 0.06);
  --brand-a10: rgba(20, 102, 196, 0.10);
  --brand-a16: rgba(20, 102, 196, 0.16);
  --brand-a28: rgba(20, 102, 196, 0.28);
  --brand-a45: rgba(20, 102, 196, 0.45);

  /* ── Gray: 冷灰中性轴 (hue ~214, S 8–14%) ────────────────────── */
  --gray-0:   #FFFFFF;
  --gray-25:  #FBFCFD;
  --gray-50:  #F5F7FA;
  --gray-100: #EDF1F5;
  --gray-200: #E1E7EE;
  --gray-300: #CBD4DE;
  --gray-400: #93A1B0;
  --gray-500: #626F7D;
  --gray-600: #4B5866;  /* 次正文 AAA */
  --gray-700: #333E4A;
  --gray-800: #212932;
  --gray-900: #12161B;
  --gray-950: #0A0D11;

  /* ── Dark surfaces ──────────────────────────────────────────── */
  --d-bg:        #10151A;  /* 深色区块底；带蓝相，衔接浅底不发脏 */
  --d-bg-deep:   #0A0D11;  /* 页尾 */
  --d-surface:   #171E25;
  --d-surface-2: #1E262F;
  --d-line:      rgba(255, 255, 255, 0.10);
  --d-bevel:     rgba(255, 255, 255, 0.07);  /* 金属倒角顶部内高光 */
  --d-ink:       #FFFFFF;
  --d-ink-2:     rgba(255, 255, 255, 0.72);
  --d-ink-3:     rgba(255, 255, 255, 0.52);  /* 可读性下限 */
  --d-ink-4:     rgba(255, 255, 255, 0.34);  /* 仅装饰 */

  /* ── Functional ─────────────────────────────────────────────── */
  --fn-run:  #0A72AE; --fn-run-d:  #4FB3E8;  /* 运行中 */
  --fn-ok:   #0B7A61; --fn-ok-d:   #3FCBA4;  /* 成功，青绿 */
  --fn-warn: #9A6410; --fn-warn-d: #E5A742;  /* 告警 */
  --fn-ban:  #B3322F; --fn-ban-d:  #F08A86;  /* 禁用/失败 */

  /* ── Typography ─────────────────────────────────────────────── */
  /* 中文栈按 Mac→国产→设计师常装→Windows 兜底 排序。
     Windows 只有微软雅黑时，600 会被合成假粗；故正文中文避免 600，标题用 700。 */
  --font-sans:  "Inter", "PingFang SC", "HarmonyOS Sans SC", "Source Han Sans SC",
                "Noto Sans SC", "Microsoft YaHei UI", "Microsoft YaHei",
                -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  /* Consolas 是 Windows 自带，缺它会掉到 Courier New，规格角标的科技感全毁 */
  --font-mono:  "SF Mono", "SFMono-Regular", "JetBrains Mono", "Cascadia Mono",
                "Consolas", "Menlo", monospace;

  --fs-micro:   11px;
  --fs-xs:      12px;
  --fs-sm:      13px;
  --fs-base:    15px;
  --fs-md:      17px;
  --fs-lg:      19px;
  --fs-xl:      22px;
  --fs-2xl:     clamp(24px, 2.2vw, 30px);
  --fs-3xl:     clamp(28px, 2.8vw, 38px);
  --fs-4xl:     clamp(34px, 3.6vw, 48px);
  --fs-5xl:     clamp(42px, 4.6vw, 60px);
  --fs-display: clamp(38px, 5.2vw, 72px);
  --fs-metric:  clamp(56px, 7vw, 110px);

  --lh-tight: 1.10;
  --lh-snug:  1.30;
  --lh-base:  1.60;
  --lh-loose: 1.80;

  --tr-display: -0.035em;
  --tr-title:   -0.020em;
  --tr-body:     0em;
  --tr-mono:     0.18em;

  /* ── Spacing (4px base) ─────────────────────────────────────── */
  --sp-1:  4px;   --sp-2:  8px;   --sp-3:  12px;  --sp-4:  16px;
  --sp-5:  20px;  --sp-6:  24px;  --sp-7:  28px;  --sp-8:  32px;
  --sp-9:  36px;  --sp-10: 40px;  --sp-11: 44px;  --sp-12: 48px;
  --sp-13: 56px;  --sp-14: 64px;

  --sec-y:     clamp(72px, 7vw, 120px);
  --sec-y-lg:  clamp(96px, 10vw, 160px);
  --head-gap:  clamp(36px, 4vw, 64px);
  --grid-gap:  clamp(20px, 2.4vw, 32px);

  /* ── Containers ─────────────────────────────────────────────── */
  --max:        1240px;
  --max-narrow: 920px;
  --max-wide:   1440px;
  --pad:        clamp(20px, 4vw, 40px);
  --nav-h:      72px;

  /* ── Radius ─────────────────────────────────────────────────── */
  --r-xs:  6px;   /* chip */
  --r-sm:  10px;  /* input */
  --r-md:  14px;  /* DAG node */
  --r-lg:  20px;  /* main card */
  --r-xl:  28px;  /* dark panel */
  --r-2xl: 36px;  /* raised section top */
  --r-pill: 999px;

  /* ── Shadows (冷色阴影，非纯黑) ──────────────────────────────── */
  --sh-1:  0 1px  2px  rgba(16, 24, 32, 0.05);
  --sh-2:  0 4px  12px rgba(16, 24, 32, 0.08);
  --sh-3:  0 12px 32px rgba(16, 24, 32, 0.12);
  --sh-4:  0 24px 60px rgba(16, 24, 32, 0.16);
  --sh-brand: 0 12px 40px rgba(20, 102, 196, 0.22);
  --sh-glow:  0 0 28px rgba(20, 102, 196, 0.35);
  --sh-bevel: inset 0 1px 0 var(--d-bevel);
  --ring:     0 0 0 3px var(--brand-a28);

  /* ── Motion ─────────────────────────────────────────────────── */
  --d-1: 120ms;   /* color */
  --d-2: 200ms;   /* border */
  --d-3: 320ms;   /* transform/hover */
  --d-4: 480ms;   /* node/accordion */
  --d-5: 700ms;   /* entrance */
  --d-6: 1100ms;  /* countUp */

  --e-out:    cubic-bezier(0.16, 1, 0.30, 1);
  --e-inout:  cubic-bezier(0.65, 0, 0.35, 1);
  --e-soft:   cubic-bezier(0.33, 1, 0.68, 1);
  --e-linear: linear;
}

/* ── Reduced motion ───────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  :root {
    --d-3: 0ms; --d-4: 0ms; --d-5: 0ms; --d-6: 0ms;
    --e-out: step-end;
  }
}

/* ── Mobile tokens ────────────────────────────────────────────── */
@media (max-width: 560px) {
  :root {
    --nav-h: 60px;
    --pad: 20px;
    --sec-y: 64px;
  }
}
