/* Signal Clarity — foundation tokens.
   This file is intentionally not connected to the production landing yet. */
@font-face {
  font-family: "Rawline";
  src: url("./fonts/rawline-400.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Rawline";
  src: url("./fonts/rawline-500.woff2") format("woff2");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}
@font-face {
  font-family: "Rawline";
  src: url("./fonts/rawline-600.woff2") format("woff2");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}
@font-face {
  font-family: "Rawline";
  src: url("./fonts/rawline-700.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
:root {
  color-scheme: light;

  /* Brand */
  --kd-brand-ai: #651fff;
  --kd-brand-ai-hover: #5016d8;
  --kd-brand-ai-soft: #eee8ff;
  --kd-brand-signal: #f53675;
  --kd-brand-signal-strong: #b81752;
  --kd-brand-signal-soft: #ffe7ef;

  /* Neutral */
  --kd-neutral-0: #ffffff;
  --kd-neutral-50: #f6f6f8;
  --kd-neutral-100: #ececf1;
  --kd-neutral-300: #c7c7d0;
  --kd-neutral-500: #797985;
  --kd-neutral-600: #62626d;
  --kd-neutral-900: #17171c;
  --kd-neutral-950: #0b0b10;

  /* Semantic surfaces and text */
  --kd-surface-page: var(--kd-neutral-0);
  --kd-surface-subtle: var(--kd-neutral-50);
  --kd-surface-product: var(--kd-neutral-950);
  --kd-surface-ai: var(--kd-brand-ai-soft);
  --kd-surface-signal: var(--kd-brand-signal-soft);
  --kd-text-primary: var(--kd-neutral-900);
  --kd-text-secondary: var(--kd-neutral-600);
  --kd-text-tertiary: var(--kd-neutral-500);
  --kd-text-inverse: var(--kd-neutral-0);
  --kd-border-subtle: var(--kd-neutral-100);
  --kd-border-strong: var(--kd-neutral-300);
  --kd-action-primary: var(--kd-brand-ai);
  --kd-action-primary-hover: var(--kd-brand-ai-hover);
  --kd-data-raw: var(--kd-neutral-300);
  --kd-data-processed: var(--kd-brand-ai);
  --kd-data-anomaly: var(--kd-brand-signal);
  --kd-data-confirmed: var(--kd-neutral-900);

  /* Typography */
  --kd-font-sans: "Rawline", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --kd-font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  --kd-weight-regular: 400;
  --kd-weight-medium: 500;
  --kd-weight-semibold: 600;
  --kd-type-display: clamp(4.5rem, 4.55vw, 5.5rem);
  --kd-type-heading: clamp(3rem, 3.33vw, 4rem);
  --kd-type-subheading: clamp(1.75rem, 1.88vw, 2.25rem);
  --kd-type-card: clamp(1.375rem, 1.46vw, 1.75rem);
  --kd-type-body-lg: clamp(1.125rem, 1.04vw, 1.25rem);
  --kd-type-body: 1rem;
  --kd-type-ui: 0.875rem;
  --kd-type-caption: 0.75rem;
  --kd-leading-tight: 0.98;
  --kd-leading-heading: 1.08;
  --kd-leading-body: 1.55;
  --kd-tracking-tight: -0.045em;

  /* Spacing: 8 px base */
  --kd-space-1: 0.5rem;
  --kd-space-2: 1rem;
  --kd-space-3: 1.5rem;
  --kd-space-4: 2rem;
  --kd-space-5: 2.5rem;
  --kd-space-6: 3rem;
  --kd-space-8: 4rem;
  --kd-space-10: 5rem;
  --kd-space-12: 6rem;
  --kd-space-16: 8rem;
  --kd-space-20: 10rem;
  --kd-space-24: 12rem;

  /* Grid and readable measures */
  --kd-grid-max: 120rem;
  --kd-grid-columns: 12;
  --kd-grid-gutter: 1.5rem;
  --kd-page-gutter: 6rem;
  --kd-measure-copy: 45rem;
  --kd-measure-heading: 75rem;
  --kd-section-space: clamp(6rem, 7vw, 8rem);

  /* Shape, border, elevation */
  --kd-radius-sm: 0.5rem;
  --kd-radius-md: 0.75rem;
  --kd-radius-card: 1.125rem;
  --kd-radius-pill: 999px;
  --kd-border-width: 1px;
  --kd-shadow-product: 0 2rem 5rem rgb(11 11 16 / 18%);
  --kd-shadow-signal: 0 1rem 2.5rem rgb(245 54 117 / 18%);

  /* Motion */
  --kd-duration-fast: 160ms;
  --kd-duration-base: 240ms;
  --kd-duration-story: 10s;
  --kd-ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --kd-ease-emphasized: cubic-bezier(0.2, 0.8, 0.2, 1);
}

@media (max-width: 119.9375rem) {
  :root { --kd-page-gutter: clamp(4rem, 4.17vw, 5rem); }
}

@media (max-width: 89.9375rem) {
  :root { --kd-page-gutter: clamp(2.5rem, 3.9vw, 3.5rem); }
}

@media (max-width: 63.9375rem) {
  :root { --kd-page-gutter: 2rem; }
}

@media (max-width: 47.9375rem) {
  :root {
    --kd-page-gutter: 1.25rem;
    --kd-grid-gutter: 1rem;
    --kd-section-space: 5rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --kd-duration-fast: 0ms;
    --kd-duration-base: 0ms;
    --kd-duration-story: 0ms;
  }
}
