/* Typography system — single source of truth for fonts across the app.
   To change a typeface, weight, style, or size: edit the variables below only.
   Do not add font-family/weight/style overrides anywhere else in styles.css —
   route all typography changes through this file so it stays the one place to look. */

:root {
  /* H1 — App / hero title (currently-reading book title, search page hero heading) */
  --font-h1-family: 'Limelight', system-ui, sans-serif;
  --font-h1-weight: 500;
  --font-h1-style: italic;
  --font-h1-size: clamp(1.3rem, 5vw, 2rem);

  /* H2 — Section heading (dialog headers, results heading, calendar month title) */
  --font-h2-family: 'Fraunces', system-ui, sans-serif;
  --font-h2-weight: 700;
  --font-h2-style: normal;
  --font-h2-size: clamp(.85rem, 3vw, 1rem);

  /* H3 — Card / book title (search result cards, library cards, series list) */
  --font-h3-family: 'Fraunces', system-ui, sans-serif;
  --font-h3-weight: 800;
  --font-h3-style: normal;
  --font-h3-size: clamp(.95rem, 3.5vw, 1.1rem);

  /* Kicker / eyebrow label (small uppercase labels like "CURRENTLY READING") */
  --font-kicker-family: 'Quicksand', system-ui, sans-serif;
  --font-kicker-weight: 700;
  --font-kicker-style: normal;
  --font-kicker-size: .7rem;

  /* Body text */
  --font-body-family: 'Quicksand', system-ui, sans-serif;
  --font-body-weight: 400;
  --font-body-style: normal;
  --font-body-size: .95rem;

  /* Caption / muted small text */
  --font-caption-family: 'Quicksand', system-ui, sans-serif;
  --font-caption-weight: 500;
  --font-caption-style: normal;
  --font-caption-size: .75rem;

  /* Buttons */
  --font-button-family: 'Quicksand', system-ui, sans-serif;
  --font-button-weight: 700;
  --font-button-style: normal;
  --font-button-size: .85rem;

  /* Stat / tile number (home shortcut tiles like "Search", "1", "0") — deliberately NOT
     a serif display font, so it doesn't visually compete with real headings (H1/H2/H3) */
  --font-stat-family: 'Quicksand', system-ui, sans-serif;
  --font-stat-weight: 700;
  --font-stat-style: normal;
  --font-stat-size: 1.1rem;
}

body {
  font-family: var(--font-body-family);
  font-weight: var(--font-body-weight);
  font-style: var(--font-body-style);
  font-size: var(--font-body-size);
}

.hero h2, .hero-current-book h2 {
  font-family: var(--font-h1-family);
  font-weight: var(--font-h1-weight);
  font-style: var(--font-h1-style);
  font-size: var(--font-h1-size);
}

h2, .mvp-calendar-title {
  font-family: var(--font-h2-family);
  font-weight: var(--font-h2-weight);
  font-style: var(--font-h2-style);
  font-size: var(--font-h2-size);
}

h3, .book-title {
  font-family: var(--font-h3-family);
  font-weight: var(--font-h3-weight);
  font-style: var(--font-h3-style);
  font-size: var(--font-h3-size);
}

.home-kicker, .eyebrow, .hero-kicker {
  font-family: var(--font-kicker-family);
  font-weight: var(--font-kicker-weight);
  font-style: var(--font-kicker-style);
  font-size: var(--font-kicker-size);
}

.mvp-muted, .home-progress, .reading-progress-label {
  font-family: var(--font-caption-family);
  font-weight: var(--font-caption-weight);
  font-style: var(--font-caption-style);
  font-size: var(--font-caption-size);
}

.primary-button, .log-today-button {
  font-family: var(--font-button-family);
  font-weight: var(--font-button-weight);
  font-style: var(--font-button-style);
  font-size: var(--font-button-size);
}

.home-links b {
  font-family: var(--font-stat-family);
  font-weight: var(--font-stat-weight);
  font-style: var(--font-stat-style);
  font-size: var(--font-stat-size);
}
