/* Generated from design/tokens.json by scripts/build-tokens.mjs. Don't edit: change the JSON and rebuild. */
:root {
  --canvas: #f3f2ee; /* Behind everything: warm paper, never grey */
  --surface: #ffffff; /* Cards, panels, dialogs, inputs */
  --surface-sunken: #ecebe7; /* Wells on the canvas: pipeline columns, quiet fills, code */
  --surface-hover: #ecebe7; /* Hover and pressed fill for quiet controls */
  --surface-inverse: #111110; /* Dark stage panels and primary buttons */
  --surface-inverse-hover: #262624; /* Hover on dark buttons and bars */
  --text: #111110; /* Headings and body */
  --text-secondary: #3a3a38; /* Supporting body text */
  --text-muted: #6c6b67; /* Captions, labels, meta */
  --text-faint: #a4a39d; /* Placeholders, disabled */
  --text-on-inverse: #ffffff; /* Text on dark or accent fills */
  --border: #e3e2dd; /* Hairlines between things */
  --border-strong: #d2d1cb; /* Input outlines, dashed drop zones */
  --accent: #2f55d4; /* The one brand colour: links, focus, selection, the mark */
  --accent-hover: #2748b8;
  --accent-strong: #1e3a9e; /* Accent text on accent-soft */
  --accent-soft: #eef2fd; /* Selected and highlighted fills */
  --accent-line: #c3d0f7; /* Borders around accent-soft */
  --success: #15803d; /* Good fit, saved, done */
  --success-soft: #ecf8f0;
  --success-strong: #166534;
  --warning: #b45309; /* Worth a look, estimates, stretch fit */
  --warning-soft: #fdf5e7;
  --warning-strong: #92400e;
  --danger: #c4321c; /* Errors, weak fit, destructive actions */
  --danger-soft: #fdf0ee;
  --danger-strong: #9f1d1d;
  --tag-violet: #6d28d9; /* Category colour for tags only (recruiters), never status */
  --tag-violet-soft: #f3effe;

  --font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;
  --font-brand: "Grand Hotel", cursive;
  --fs-2xs: 11px;
  --fs-xs: 12px;
  --fs-sm: 13px;
  --fs-md: 14px;
  --fs-lg: 16px;
  --fs-xl: 18px;
  --fs-2xl: 22px;
  --fs-3xl: 28px;
  --fs-4xl: 36px;
  --fs-5xl: 48px;
  --fs-6xl: 64px;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --r-xs: 4px;
  --r-sm: 6px;
  --r-md: 8px;
  --r-lg: 12px;
  --r-xl: 16px;
  --r-2xl: 22px;
  --r-pill: 999px;
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 20px;
  --sp-6: 24px;
  --sp-8: 32px;
  --sp-10: 40px;
  --sp-12: 48px;
  --sp-16: 64px;
  --shadow-sm: 0 1px 2px rgb(17 17 16 / .05);
  --shadow-md: 0 1px 3px rgb(17 17 16 / .07), 0 1px 2px rgb(17 17 16 / .04);
  --shadow-lg: 0 16px 40px -8px rgb(17 17 16 / .16), 0 2px 6px rgb(17 17 16 / .05);
  --shadow-focus: 0 0 0 3px rgb(47 85 212 / .18);
  --dur-fast: 120ms;
  --dur-base: 200ms;
  --dur-slow: 320ms;
  --ease: cubic-bezier(.2, .8, .2, 1);
  --cat-stone: #8a8984;
  --cat-stone-soft: #ecebe7;
  --cat-blue: #2f55d4;
  --cat-blue-soft: #e3e9fc;
  --cat-amber: #c9960a;
  --cat-amber-soft: #fbf0cf;
  --cat-violet: #7a55db;
  --cat-violet-soft: #ece5fb;
  --cat-green: #1f9d55;
  --cat-green-soft: #dcf2e4;
  --cat-red: #d6452f;
  --cat-red-soft: #f9e0db;
  --cat-teal: #0e8f86;
  --cat-teal-soft: #d6f0ed;
  --cat-pink: #d23f7d;
  --cat-pink-soft: #fae1ec;
  --cat-sky: #0b83c4;
  --cat-sky-soft: #dcf0fb;
  color-scheme: light;
}
