/* Shared UI primitives. Artwork, document text and semantic status colors are not UI tokens. */
:root {
  --ui-font-family: "GleamStar Inter", "GleamStar Noto SC", "SF Pro Text", -apple-system, BlinkMacSystemFont, "Segoe UI Variable Text", "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Noto Sans SC", "Noto Sans CJK SC", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;
  --ui-text-caption: 13px;
  --ui-text-control: 14px;
  --ui-text-body: 15px;
  --ui-text-reading: 16px;
  --ui-text-heading: 18px;
  --ui-text-title: 20px;
  --ui-leading-caption: 20px;
  --ui-leading-control: 20px;
  --ui-leading-body: 24px;
  --ui-leading-reading: 26px;
  --ui-leading-heading: 26px;
  --ui-leading-title: 28px;
  --ui-weight-regular: 400;
  --ui-weight-medium: 500;
  --ui-weight-semibold: 600;
  --ui-text-primary: #27272a;
  --ui-text-secondary: #52525b;
  /* 5.40:1 on white; also clears 4.5:1 on the neutral soft surface. */
  --ui-text-muted: #686871;
  --ui-text-inverse: #ffffff;
  --ui-surface: #ffffff;
  --ui-surface-soft: #f4f4f5;
  --ui-surface-subtle: #fafafa;
  --ui-border: #e4e4e7;
  --ui-border-strong: #a1a1aa;
  /* Blue scale (Ant Design / TDesign logic):
     1-3 light surfaces and borders, 4-5 mid tints, 6 brand, 7-8 hover/active text. */
  --blue-1: #f4f8ff;
  --blue-2: #e8f0fe;
  --blue-3: #d3e2fd;
  --blue-4: #a9c6f9;
  --blue-5: #6f9bf0;
  --blue-6: #2f6fe4;
  --blue-7: #1f57c4;
  --blue-8: #17439c;
  --blue-9: #12357a;
  --blue-10: #0d2857;
  --ui-accent: var(--blue-6);
  --ui-accent-hover: var(--blue-7);
  --ui-accent-active: var(--blue-8);
  --ui-accent-soft: var(--blue-1);
  --ui-accent-soft-strong: var(--blue-2);
  --ui-accent-border: var(--blue-3);
  --ui-accent-text: var(--blue-7);
  --ui-accent-ring: rgba(47, 111, 228, 0.12);
  --ui-radius-xs: 4px;
  --ui-radius-sm: 8px;
  --ui-radius-md: 12px;
  --ui-radius-lg: 16px;
  --ui-radius-pill: 999px;
  --ui-space-1: 4px;
  --ui-space-2: 8px;
  --ui-space-3: 12px;
  --ui-space-4: 16px;
  --ui-space-5: 20px;
  --ui-space-6: 24px;
  --ui-space-8: 32px;
  --ui-shadow-sm: 0 4px 12px rgba(24, 24, 27, 0.10);
  --ui-shadow-lg: 0 12px 32px rgba(24, 24, 27, 0.16);
  --ui-shadow-inset: inset 0 0 0 1px var(--ui-border);
  --ui-shadow-inset-strong: inset 0 0 0 1px var(--ui-border-strong);
  --ui-shadow-inset-accent: inset 2px 0 0 var(--ui-accent);
  --ui-focus-ring: 0 0 0 3px rgba(47, 111, 228, 0.24);
}
html { font-synthesis: none; }
/* UA defaults otherwise introduce an untracked 700/bolder weight. */
:where(h1, h2, h3, h4, h5, h6, strong, b) { font-weight: var(--ui-weight-semibold); }
