/* johnglassey.com — shared site styles */

:root {
  --paper: #f5f1ea;
  --paper-soft: #efe9de;
  --paper-tint: #faf5e9;
  --ink: #1a1a1a;
  --ink-soft: #3a3530;
  --muted: #8a847c;
  --line: #e3ddd2;

  --accent-photo: #2d4a6b;
  --accent-write: #1a1a1a;
  --accent-colour: #c4622d;
  --accent-blog: #6b7a3a;

  --serif: 'Instrument Serif', 'Times New Roman', serif;
  --sans: 'Instrument Sans', ui-sans-serif, system-ui, -apple-system, sans-serif;
  --mono: 'JetBrains Mono', ui-monospace, 'SF Mono', monospace;

  --rail: 96px;
  --pad: 28px;
  --motion-base: 1;
}

html[data-dark="true"] {
  --paper: #1a1817;
  --paper-soft: #211e1c;
  --paper-tint: #252220;
  --ink: #f5f1ea;
  --ink-soft: #c9c2b6;
  --muted: #786f64;
  --line: #2e2a26;
}

html, body {
  margin: 0;
  padding: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--sans);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  min-height: 100svh;
  overflow-x: hidden;
}
*, *::before, *::after { box-sizing: border-box; }
a { color: inherit; }

/* hide scrollbar but keep scrolling on mobile when content overflows */
@media (max-width: 800px) {
  html, body { overflow-x: hidden; }
}

/* mono */
.mono { font-family: var(--mono); letter-spacing: 0.1em; text-transform: uppercase; }
.serif { font-family: var(--serif); }
.italic { font-style: italic; }

/* Reduced motion */
html[data-motion="minimal"] *,
html[data-motion="minimal"] *::before,
html[data-motion="minimal"] *::after {
  transition-duration: 0ms !important;
  animation-duration: 0ms !important;
  animation-iteration-count: 1 !important;
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition-duration: 0ms !important; animation-duration: 0ms !important; }
}
