/*
 * Theme: Classical
 * ----------------
 * Off-white paper, serif throughout. Academic, conservative, Tufte-ish.
 * Tweak the variables at the top to taste.
 */

:root {
  --bg:           #faf8f3;
  --bg-dark:      #1a1916;
  --ink:          #1a1a1a;
  --ink-soft:     #4b4b4b;
  --muted:        #7a7569;
  --rule:         #d9d3c6;
  --accent:       #1d4e89;
  --accent-soft:  #6a8caf;
  --warn:         #b85450;

  --font-body:    "Source Serif Pro", "EB Garamond", Charter, Georgia, "Times New Roman", serif;
  --font-head:    "Source Serif Pro", "EB Garamond", Charter, Georgia, serif;
  --font-mono:    "JetBrains Mono", "SF Mono", Menlo, monospace;

  --size-base:    30px;
  --size-h1:      1.55em;
  --size-h2:      1.20em;
  --size-h3:      1.00em;
  --size-small:   0.72em;

  --weight-body:  400;
  --weight-head:  600;
}

@import url('https://fonts.googleapis.com/css2?family=Source+Serif+Pro:wght@400;600;700&display=swap');

html, body { background: var(--bg); }
.reveal { font-family: var(--font-body); font-weight: var(--weight-body); font-size: var(--size-base); color: var(--ink); }

.reveal h1, .reveal h2, .reveal h3 {
  font-family: var(--font-head);
  font-weight: var(--weight-head);
  color: var(--ink);
  text-transform: none;
  letter-spacing: -0.005em;
  line-height: 1.15;
  margin-bottom: 0.45em;
}
.reveal h1 { font-size: var(--size-h1); }
.reveal h2 { font-size: var(--size-h2); }
.reveal h3 { font-size: var(--size-h3); font-weight: 400; font-style: italic; color: var(--ink-soft); }

.reveal p { line-height: 1.45; }
.reveal .muted { color: var(--muted); }
.reveal .small { font-size: var(--size-small); }

.reveal a { color: var(--accent); }
.reveal strong { font-weight: 700; color: var(--ink); }
.reveal em { color: var(--ink-soft); }

.reveal ul, .reveal ol { line-height: 1.5; }
.reveal li + li { margin-top: 0.25em; }

.reveal hr { border: none; border-top: 1px solid var(--rule); margin: 1em 0; }

.reveal section.dark, .reveal section[data-background-color]:not([data-background-color="#fff"]):not([data-background-color="#ffffff"]) {
  color: #f5efe0;
}
.reveal section.dark h1, .reveal section.dark h2, .reveal section.dark h3 { color: #f5efe0; }
.reveal section.dark .accent { color: var(--accent-soft); }

/* MathJax tuning */
.reveal mjx-container { color: var(--ink); }
.reveal section.dark mjx-container { color: #f5efe0; }
