/* === SAM · Inovynx design tokens === */
:root {
  /* Brand — from Inovynx charter */
  --azur: #1F78B4;
  --azur-dark: #155A8A;
  --azur-deep: #0F3E66;
  --azur-light: #4A9BD1;
  --azur-pale: #E8F2F9;
  --azur-paler: #F3F8FC;
  --ink: #0F2847;
  --ink-soft: #1A3A5F;
  --gold: #D4A574;
  --gold-dark: #A87E4A;
  --gold-light: #E8C89A;
  --gold-pale: #FBF5EC;
  --ivory: #FAF7F2;

  /* Neutrals */
  --white: #FFFFFF;
  --page: #F5F2EC;        /* warm page bg = ivoire tinted */
  --surface: #FFFFFF;
  --surface-2: #FAF7F2;
  --surface-3: #F3EEE5;
  --border: #E5DED2;
  --border-soft: #EFE9DE;
  --border-strong: #D7CFBF;

  /* Text */
  --text: #0F2847;
  --text-2: #4A4A4A;
  --text-3: #8C8C8C;
  --text-inv: #FFFFFF;

  /* Status */
  --success: #27AE60;
  --success-soft: #E8F5EC;
  --warning: #C88620;    /* desaturated to match brand warmth */
  --warning-soft: #FBF0DB;
  --danger: #C0392B;
  --danger-soft: #FBEBE8;
  --info: var(--azur);
  --info-soft: var(--azur-pale);

  /* Type */
  --font-display: 'Space Grotesk', 'Inter', -apple-system, sans-serif;
  --font-sans: 'Inter', -apple-system, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, 'SF Mono', monospace;

  /* Radii */
  --r-sm: 6px;
  --r-md: 8px;
  --r-lg: 12px;
  --r-xl: 16px;
  --r-pill: 999px;

  /* Shadows */
  --sh-sm: 0 1px 2px rgba(15, 40, 71, 0.06);
  --sh-md: 0 2px 8px rgba(15, 40, 71, 0.08);
  --sh-lg: 0 12px 32px -8px rgba(15, 40, 71, 0.14);
  --sh-xl: 0 24px 60px -12px rgba(15, 40, 71, 0.22);

  /* Spacing base 4 */
  --s1: 4px; --s2: 8px; --s3: 12px; --s4: 16px; --s5: 20px; --s6: 24px; --s7: 32px; --s8: 40px; --s9: 48px; --s10: 64px;

  /* Motion */
  --ease: cubic-bezier(.2,.7,.2,1);
  --dur-fast: 150ms;
  --dur: 220ms;
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 400;
  color: var(--text);
  background: var(--page);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  letter-spacing: -0.005em;
}
h1, h2, h3, h4, h5 {
  font-family: var(--font-display);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--ink);
  margin: 0;
  line-height: 1.15;
}
a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; border: none; background: none; color: inherit; }
input, select, textarea { font-family: inherit; font-size: inherit; color: inherit; }
::selection { background: var(--azur-pale); color: var(--ink); }

/* Scrollbar */
*::-webkit-scrollbar { width: 10px; height: 10px; }
*::-webkit-scrollbar-track { background: transparent; }
*::-webkit-scrollbar-thumb { background: var(--border-strong); border-radius: 999px; border: 2px solid var(--page); }
*::-webkit-scrollbar-thumb:hover { background: var(--text-3); }
