/* ==========================================================================
   BOOTSTRAP BRIDGE — maps --rz-* tokens onto Bootstrap / Sneat variables.
   The palette itself is already baked into routerizon/sneat/*.css by
   scripts/build-routerizon-theme.mjs; this file sets the variables those
   files read at runtime plus base typography.
   ========================================================================== */
:root {
  --bs-primary: var(--rz-primary);
  --bs-primary-rgb: var(--rz-primary-rgb);
  --bs-body-bg: var(--rz-surface-canvas);
  --bs-body-color: var(--rz-text-secondary);
  --bs-heading-color: var(--rz-text-primary);
  --bs-emphasis-color: var(--rz-text-primary);
  --bs-secondary-color: var(--rz-text-tertiary);
  --bs-border-color: var(--rz-border-subtle);
  --bs-border-radius: var(--rz-radius);
  --bs-border-radius-sm: var(--rz-radius);
  --bs-border-radius-lg: var(--rz-radius);
  --bs-border-radius-xl: var(--rz-radius);
  --bs-font-sans-serif: var(--rz-font-sans);
  --bs-body-font-family: var(--rz-font-sans);
  --bs-body-font-size: 0.8125rem;
  --bs-link-color: var(--rz-primary);
  --bs-link-color-rgb: var(--rz-primary-rgb);
  --bs-link-hover-color: var(--rz-primary-700);
}

body {
  font-family: var(--rz-font-sans);
  font-size: 0.8125rem;
  color: var(--rz-text-secondary);
  background: var(--rz-surface-canvas);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  color: var(--rz-text-primary);
  font-weight: 700;
  letter-spacing: -0.01em;
}
h4, .h4 { font-size: 1.25rem; }
h5, .h5 { font-size: 1rem; }
h6, .h6 { font-size: 0.875rem; }

.text-heading { color: var(--rz-text-primary) !important; }
.text-body { color: var(--rz-text-secondary) !important; }
.text-muted { color: var(--rz-text-tertiary) !important; }

code, kbd, pre, samp, .font-monospace, .rz-mono {
  font-family: var(--rz-font-mono);
}

.rz-num, .table td.text-end { font-variant-numeric: tabular-nums; }

::selection { background: var(--rz-primary-100); color: var(--rz-primary-800); }

/* Materio's ripple adds noise on a flat UI */
.waves-effect .waves-ripple { display: none !important; }
