:root {
  --ink: #111111;
  --body: #374151;
  --muted: #4b5563;
  --line: #e5e7eb;
  --card: #f5f5f5;
  --quiet: #f8f9fa;
  --blue: #1d4ed8;
  --deep: #101010;
  --paper: #ffffff;
  --wrap: 1200px;
  --sans: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --display: ui-rounded, "Arial Rounded MT Bold", "Avenir Next", var(--sans);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--body); background: var(--paper); font-family: var(--sans); font-size: 16px; line-height: 1.5; -webkit-font-smoothing: antialiased; }
img, svg { max-width: 100%; height: auto; }
button, input { font: inherit; }
a { color: inherit; text-underline-offset: .18em; }
:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
::selection { color: var(--ink); background: #dbeafe; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
