/* Maximiliano Véjares — design tokens
   Adapted from the Historical Atlas of Chile design system.
   Editorial light mode. Warm paper + deep navy ink + oxblood accent. */

:root {
  /* Surface */
  --paper:        #FAFAF7;
  --surface:      #FFFFFF;
  --rule:         #D9D2C2;
  --rule-strong:  #C9C0AC;
  --hairline:     #E8E4DA;

  /* Ink */
  --ink:          #0E1A2B;
  --ink-muted:    #4A5568;
  --ink-faint:    #94918A;

  /* Accent (oxblood) */
  --accent:       #7A1E2B;
  --accent-muted: #B8696F;
  --accent-soft:  #F5EFE6;

  /* Type — Spectral for body + Fraunces for display accents + Manrope for UI */
  --serif:        'Spectral', Georgia, 'Times New Roman', serif;
  --display:      'Fraunces', 'Spectral', Georgia, 'Times New Roman', serif;
  --sans:         'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  --mono:         'IBM Plex Mono', 'SF Mono', Menlo, Consolas, monospace;

  /* Layout */
  --max-w:       1200px;
  --gutter:      40px;
  --gutter-sm:   24px;
  --header-h:    72px;
}

* { margin: 0; padding: 0; box-sizing: border-box; }

html, body {
  background: var(--paper);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 15px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

button, input, select { font-family: inherit; color: inherit; }

a {
  color: var(--accent);
  text-decoration: underline;
  text-decoration-color: var(--rule-strong);
  text-underline-offset: 3px;
}
a:hover { text-decoration-color: var(--accent); }

/* Utility classes */
.serif {
  font-family: var(--serif); font-weight: 500;
  font-variation-settings: "opsz" 36, "SOFT" 30;
  letter-spacing: -0.005em;
}
.serif-i {
  font-family: var(--serif); font-style: italic; font-weight: 400;
  font-variation-settings: "opsz" 14, "SOFT" 50;
}
.overline {
  font-family: var(--serif); font-weight: 600;
  font-size: 11px; line-height: 1.3;
  letter-spacing: 0.08em;
  color: var(--ink-muted);
  font-variation-settings: "opsz" 14, "SOFT" 0;
  font-feature-settings: "smcp", "c2sc", "lnum", "tnum";
  font-variant-caps: all-small-caps;
  text-transform: lowercase;
}
.caption  { font-size: 12px; line-height: 1.45; color: var(--ink-muted); }
.muted    { color: var(--ink-muted); }
.faint    { color: var(--ink-faint); }
.rule     { border-top: 1px solid var(--rule); }
.hairline { border-top: 1px solid var(--hairline); }
.num {
  font-family: var(--serif);
  font-feature-settings: "tnum", "lnum";
  font-variation-settings: "opsz" 14, "SOFT" 0;
}
