/* ==========================================================
   base.css — Body defaults, typography
   ========================================================== */

html {
  font-size: 16px;
}

body {
  font-family: var(--font-family-base);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-base);
  line-height: 1.6;
  background-color: var(--color-bg-primary);
  color: var(--color-text-primary);
}

/* --- Headings --- */

h1, h2, h3, h4 {
  font-weight: var(--font-weight-light);
  line-height: 1.15;
  letter-spacing: -0.02em;
}

/* Inline emphasis: keep readable but stay in the light family. */
strong, b {
  font-weight: var(--font-weight-regular);
}

/* --- Focus --- */

:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: 3px;
  border-radius: 3px;
}

/* --- Skip link --- */

.skip-to-content {
  position: absolute;
  top: -100%;
  left: var(--space-4);
  padding: var(--space-2) var(--space-4);
  background: var(--color-accent);
  color: var(--color-bg-primary);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-sm);
  border-radius: var(--radius-sm);
  z-index: 9999;
  transition: top var(--transition-fast);
}

.skip-to-content:focus {
  top: var(--space-4);
}
