/* ═════════════════════════════════════════════════════════════
 * AUTO-GENERATED by scripts/build-tokens.mjs — do not edit.
 * Edit tokens/, then run: node scripts/build-tokens.mjs
 *
 * Two independent axes:
 *   data-brand    who this is — human-signal (company) | label-studio (product)
 *   data-surface  what it sits on — dark | light
 *
 * Brands declare a default surface. Set data-surface explicitly to flip
 * polarity without changing brand — e.g. a dark cover with light body
 * pages inside one HumanSignal document.
 * ══════════════════════════════════════════════════════════════ */

/* human-signal. Default surface: dark.
 * Flip any subtree with data-surface="light" or "dark". */

:root,
[data-brand="human-signal"] {
  --font-heading: "Figtree", ui-sans-serif, system-ui, sans-serif;
  --font-body: "Figtree", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, monospace;
  --color-primary: var(--color-persimmon-400);
  --color-secondary: var(--color-canteloupe-400);
  --color-tertiary: var(--color-cherry-400);
  --color-hs-warm-gray: oklch(67.69% 0.0819 68.20);
  --color-hs-black: oklch(0.00% 0.0000 0.00);
  --color-hs-near-black: oklch(26.03% 0.0000 0.00);
  --color-hs-dark-border: oklch(26.44% 0.0057 91.58);
  --color-hs-off-white: oklch(99.38% 0.0013 106.42);
  --color-hs-body-text: oklch(82.38% 0.0187 89.38);
  --color-hs-gray: oklch(42.76% 0.0000 0.00);
  --color-hs-light-gray: oklch(97.02% 0.0000 0.00);
  --color-logo-ink: oklch(23.09% 0.0259 251.33);
  --color-hs-orange: oklch(68.25% 0.1254 42.29);
  --color-hs-pink: oklch(80.92% 0.1083 19.70);
  --color-hs-maroon: oklch(31.32% 0.0379 8.99);
  --color-hs-purple: oklch(62.36% 0.2523 334.77);
  --color-hs-blue: oklch(42.00% 0.1937 262.74);
  --color-sand-900: oklch(17.73% 0.0081 95.51);
  --color-sand-800: oklch(26.44% 0.0057 91.58);
  --color-sand-700: oklch(38.31% 0.0087 88.72);
  --color-sand-600: oklch(51.75% 0.0129 89.80);
  --color-sand-500: oklch(70.38% 0.0154 84.59);
  --color-sand-400: oklch(82.38% 0.0187 89.38);
  --color-sand-300: oklch(90.05% 0.0126 91.53);
  --color-sand-200: oklch(95.18% 0.0054 95.10);
  --color-sand-100: oklch(97.93% 0.0029 84.56);
  --color-sand-0: oklch(99.38% 0.0013 106.42);
  --color-persimmon-900: oklch(43.99% 0.0992 33.63);
  --color-persimmon-800: oklch(49.75% 0.1156 33.65);
  --color-persimmon-700: oklch(55.68% 0.1313 33.66);
  --color-persimmon-600: oklch(61.30% 0.1453 33.74);
  --color-persimmon-500: oklch(66.78% 0.1614 33.67);
  --color-persimmon-400: oklch(72.17% 0.1748 33.74);
  --color-persimmon-300: oklch(79.49% 0.1195 33.66);
  --color-persimmon-200: oklch(84.87% 0.0836 33.46);
  --color-persimmon-100: oklch(90.84% 0.0478 32.46);
  --color-persimmon-0: oklch(96.83% 0.0157 32.01);
  --color-canteloupe-900: oklch(41.43% 0.0635 55.79);
  --color-canteloupe-800: oklch(55.14% 0.0895 57.86);
  --color-canteloupe-700: oklch(61.57% 0.1013 56.23);
  --color-canteloupe-600: oklch(67.89% 0.1120 56.70);
  --color-canteloupe-500: oklch(74.01% 0.1239 55.94);
  --color-canteloupe-400: oklch(80.06% 0.1341 56.34);
  --color-canteloupe-300: oklch(83.72% 0.1080 57.87);
  --color-canteloupe-200: oklch(89.62% 0.0670 59.47);
  --color-canteloupe-100: oklch(93.57% 0.0400 58.79);
  --color-canteloupe-0: oklch(97.82% 0.0134 60.57);
  --color-plum-900: oklch(44.40% 0.0949 332.94);
  --color-plum-800: oklch(50.29% 0.1110 331.99);
  --color-plum-700: oklch(56.06% 0.1255 332.93);
  --color-plum-600: oklch(61.73% 0.1404 333.14);
  --color-plum-500: oklch(67.29% 0.1526 332.95);
  --color-plum-400: oklch(72.72% 0.1668 333.12);
  --color-plum-300: oklch(77.73% 0.1348 332.51);
  --color-plum-200: oklch(85.80% 0.0825 331.57);
  --color-plum-100: oklch(91.18% 0.0517 331.01);
  --color-plum-0: oklch(97.10% 0.0163 322.69);
  --color-grape-900: oklch(34.51% 0.0749 270.97);
  --color-grape-800: oklch(40.32% 0.0922 271.53);
  --color-grape-700: oklch(50.66% 0.1196 270.79);
  --color-grape-600: oklch(55.59% 0.1339 271.05);
  --color-grape-500: oklch(60.61% 0.1482 270.48);
  --color-grape-400: oklch(65.33% 0.1602 271.02);
  --color-grape-300: oklch(75.59% 0.1087 273.09);
  --color-grape-200: oklch(82.55% 0.0760 273.90);
  --color-grape-100: oklch(89.61% 0.0445 275.71);
  --color-grape-0: oklch(96.51% 0.0151 273.85);
  --color-kale-900: oklch(35.23% 0.0408 190.61);
  --color-kale-800: oklch(39.46% 0.0511 191.51);
  --color-kale-700: oklch(45.41% 0.0648 187.93);
  --color-kale-600: oklch(52.84% 0.0787 185.92);
  --color-kale-500: oklch(59.84% 0.0903 187.32);
  --color-kale-400: oklch(71.81% 0.0927 184.54);
  --color-kale-300: oklch(79.43% 0.0845 183.13);
  --color-kale-200: oklch(87.70% 0.0598 182.91);
  --color-kale-100: oklch(93.55% 0.0314 181.77);
  --color-kale-0: oklch(97.84% 0.0053 197.07);
  --color-fig-900: oklch(31.11% 0.0918 307.22);
  --color-fig-800: oklch(36.62% 0.1157 305.88);
  --color-fig-700: oklch(43.52% 0.1284 306.03);
  --color-fig-600: oklch(58.15% 0.1336 309.16);
  --color-fig-500: oklch(64.78% 0.1296 311.23);
  --color-fig-400: oklch(71.25% 0.1246 313.57);
  --color-fig-300: oklch(78.92% 0.0966 314.00);
  --color-fig-200: oklch(84.73% 0.0740 314.40);
  --color-fig-100: oklch(90.16% 0.0488 310.98);
  --color-fig-0: oklch(95.91% 0.0192 312.80);
  --color-cherry-900: oklch(32.54% 0.0967 24.24);
  --color-cherry-800: oklch(39.26% 0.1220 24.74);
  --color-cherry-700: oklch(46.84% 0.1414 24.41);
  --color-cherry-600: oklch(54.07% 0.1555 23.91);
  --color-cherry-500: oklch(58.49% 0.1598 23.43);
  --color-cherry-400: oklch(62.71% 0.1628 22.99);
  --color-cherry-300: oklch(71.04% 0.1248 20.67);
  --color-cherry-200: oklch(80.04% 0.0854 19.12);
  --color-cherry-100: oklch(89.07% 0.0440 18.01);
  --color-cherry-0: oklch(96.53% 0.0141 17.40);
  --color-gradient: linear-gradient(109.47deg, var(--color-canteloupe-400) 0%, var(--color-persimmon-400) 51.56%, var(--color-plum-400) 100%);
  --section-padding-y: 72px;
  --motion-duration-accent: 200ms;
  --motion-duration-support: 450ms;
  --motion-duration-hero: 800ms;
  --motion-duration-scene: 1200ms;
  --motion-ease-settle: cubic-bezier(0.16, 1, 0.3, 1);
  --motion-ease-carry: cubic-bezier(0.65, 0, 0.35, 1);
  --motion-ease-exit: cubic-bezier(0.5, 0, 0.75, 0);

  --color-background: oklch(0.00% 0.0000 0.00);
  --color-foreground: oklch(99.38% 0.0013 106.42);
  --color-card: rgba(255, 255, 255, 0.05);
  --color-card-hover: rgba(255, 255, 255, 0.08);
  --color-muted: rgba(255, 255, 255, 0.10);
  --color-input: oklch(26.44% 0.0057 91.58);
  --color-dim-foreground: rgba(255, 255, 255, 0.66);
  --color-muted-foreground: rgba(255, 255, 255, 0.58);
  --color-faint-foreground: rgba(255, 255, 255, 0.48);
  --color-ghost-foreground: rgba(255, 255, 255, 0.36);
  --color-border: rgba(255, 255, 255, 0.10);
  --color-border-strong: rgba(255, 255, 255, 0.15);
  --color-border-emphasis: rgba(255, 255, 255, 0.20);
  --color-border-interactive: rgba(255, 255, 255, 0.30);
  --color-ring: rgba(255, 255, 255, 0.30);
  --color-mark-stroke: white;
  --color-grid-stroke: rgba(255, 255, 255, 0.10);
  --corner-mark-opacity: 0.3;
  --color-mark-opacity: 0.3;
  --color-logo-filter: brightness(0) invert(1);
}

[data-surface="dark"] {
  --color-background: oklch(0.00% 0.0000 0.00);
  --color-foreground: oklch(99.38% 0.0013 106.42);
  --color-card: rgba(255, 255, 255, 0.05);
  --color-card-hover: rgba(255, 255, 255, 0.08);
  --color-muted: rgba(255, 255, 255, 0.10);
  --color-input: oklch(26.44% 0.0057 91.58);
  --color-dim-foreground: rgba(255, 255, 255, 0.66);
  --color-muted-foreground: rgba(255, 255, 255, 0.58);
  --color-faint-foreground: rgba(255, 255, 255, 0.48);
  --color-ghost-foreground: rgba(255, 255, 255, 0.36);
  --color-border: rgba(255, 255, 255, 0.10);
  --color-border-strong: rgba(255, 255, 255, 0.15);
  --color-border-emphasis: rgba(255, 255, 255, 0.20);
  --color-border-interactive: rgba(255, 255, 255, 0.30);
  --color-ring: rgba(255, 255, 255, 0.30);
  --color-mark-stroke: white;
  --color-grid-stroke: rgba(255, 255, 255, 0.10);
  --corner-mark-opacity: 0.3;
  --color-mark-opacity: 0.3;
  --color-logo-filter: brightness(0) invert(1);
}

[data-surface="light"] {
  --color-background: oklch(100.00% 0.0000 0.00);
  --color-foreground: var(--color-hs-black);
  --color-card: rgba(0, 0, 0, 0.03);
  --color-card-hover: rgba(0, 0, 0, 0.05);
  --color-muted: rgba(0, 0, 0, 0.06);
  --color-input: oklch(97.02% 0.0000 0.00);
  --color-dim-foreground: rgba(0, 0, 0, 0.66);
  --color-muted-foreground: rgba(0, 0, 0, 0.58);
  --color-faint-foreground: rgba(0, 0, 0, 0.48);
  --color-ghost-foreground: rgba(0, 0, 0, 0.36);
  --color-border: rgba(0, 0, 0, 0.10);
  --color-border-strong: rgba(0, 0, 0, 0.15);
  --color-border-emphasis: rgba(0, 0, 0, 0.20);
  --color-border-interactive: rgba(0, 0, 0, 0.30);
  --color-ring: rgba(0, 0, 0, 0.30);
  --color-mark-stroke: black;
  --color-grid-stroke: rgba(0, 0, 0, 0.10);
  --corner-mark-opacity: 0.15;
  --color-mark-opacity: 0.15;
  --color-logo-filter: none;
}
