/* Base reset — minimal. Applies sane defaults to the body so pages
   feel like Claude even before components mount. */

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

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--bg-page);
  color: var(--text-primary);
  font-family: var(--font-sans);
  font-size: var(--text-body);
  line-height: var(--leading-relaxed);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-serif);
  font-weight: var(--weight-medium);
  margin: 0;
  color: var(--text-primary);
  letter-spacing: 0;
}

p { margin: 0; }

a {
  color: var(--text-link);
  text-decoration: none;
  transition: color 120ms ease;
}
a:hover { color: var(--accent-brand-hover); }

code, kbd, pre, samp {
  font-family: var(--font-mono);
  font-size: var(--text-small);
  letter-spacing: var(--tracking-tight);
}

button { font-family: inherit; }

::selection {
  background: rgba(201, 100, 66, 0.2);
  color: var(--text-primary);
}
