/* Xavigate Training Runtime — Design Tokens */
/* Inherited from SR Design System (Dusk Ember) */

@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=IBM+Plex+Sans:wght@300;400;500;600;700&display=swap');

:root {
  /* Thread Colors */
  --thread-renergence: #0D1164;
  --thread-hnr: #640D5F;
  --thread-engagement: #EA2264;
  --thread-mn: #F78D60;
  --thread-mn-deep: #C96B3C;

  /* Text */
  --text-primary: #1e1a28;
  --text-body: #383340;
  --text-secondary: #706878;
  --text-muted: #6b6272;
  --text-quiet: #827a89;

  /* Surfaces */
  --surface-page: #f7f4f6;
  --surface-card: #ffffff;
  --surface-card-border: #e4dde2;
  --surface-divider: #dad4d8;
  --surface-panel: #eeebef;
  --border: #d4cdd6;

  /* Typography */
  --font-title: 'Libre Baskerville', serif;
  --font-body: 'IBM Plex Sans', sans-serif;

  /* Type Scale */
  --text-xs: 0.75rem;
  --text-sm: 0.85rem;
  --text-base: clamp(0.875rem, 0.82rem + 0.2vw, 0.95rem);
  --text-md: clamp(0.9375rem, 0.87rem + 0.25vw, 1rem);
  --text-lg: clamp(1rem, 0.9rem + 0.4vw, 1.15rem);
  --text-xl: clamp(1.125rem, 0.95rem + 0.6vw, 1.35rem);
  --text-2xl: clamp(1.5rem, 1.1rem + 1.5vw, 2rem);

  /* Spacing */
  --space-xs: 0.5rem;
  --space-sm: 1rem;
  --space-md: 1.5rem;
  --space-lg: 2.5rem;
  --space-xl: 4rem;

  /* Layout */
  --layout-max: 1200px;
  --content-narrow: 640px;
  --content-mid: 760px;
  --content-wide: 900px;

  /* Components */
  --radius: 8px;
  --radius-lg: 12px;
  --shadow-card: 0 2px 8px rgba(0,0,0,0.06);
  --shadow-elevated: 0 8px 32px rgba(0,0,0,0.1);

  /* Status colors */
  --status-pass: #1a7a4c;
  --status-pass-bg: #edfcf2;
  --status-revise: #b45309;
  --status-revise-bg: #fffbeb;
  --status-review: #6b7280;
  --status-review-bg: #f3f4f6;
  --status-error: #c0392b;
  --status-error-bg: #fdf0ef;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

body {
  font-family: var(--font-body);
  font-size: var(--text-base);
  color: var(--text-body);
  background: var(--surface-page);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3 { font-family: var(--font-title); color: var(--text-primary); line-height: 1.3; }
h1 { font-size: var(--text-2xl); }
h2 { font-size: var(--text-xl); margin-bottom: var(--space-sm); }
h3 { font-size: var(--text-lg); }

a { color: var(--thread-renergence); text-decoration: none; }
a:hover { text-decoration: underline; }
