/* Single UI font stack site-wide (`table_config.js` / JS may override `--app-font-family` on the main page). */
:root {
  --app-font-family: Arial, Helvetica, sans-serif;
}

/* Shell / site title (above tab-level headings). */
h1.app-h0 {
  box-sizing: border-box;
  font-family: var(--app-h0-font-family, inherit);
  font-size: var(--app-h0-font-size, calc(var(--app-font-size, 14px) + 10px));
  font-weight: var(--app-h0-font-weight, 700);
  font-variant-caps: var(--app-h0-font-variant-caps, all-small-caps);
  text-transform: var(--app-h0-text-transform, none);
  letter-spacing: var(--app-h0-letter-spacing, 0.02em);
  line-height: var(--app-h0-line-height, 1.2);
  margin: 0 0 var(--app-h0-margin-bottom, 14px) 0;
  color: var(--app-h0-color, inherit);
}

h1.app-h0.app-h0--brand {
  margin: 0 0 8px 0;
}

/* Tab panels and in-page section titles (one step below app-h0). */
h1.app-h1 {
  box-sizing: border-box;
  font-family: var(--app-h1-font-family, inherit);
  font-size: var(--app-h1-font-size, calc(var(--app-font-size, 14px) + 2px));
  font-weight: var(--app-h1-font-weight, 700);
  font-variant-caps: var(--app-h1-font-variant-caps, all-small-caps);
  text-transform: var(--app-h1-text-transform, none);
  letter-spacing: var(--app-h1-letter-spacing, 0.02em);
  line-height: var(--app-h1-line-height, 1.25);
  margin: 0 0 var(--app-h1-margin-bottom, 14px) 0;
  color: var(--app-h1-color, inherit);
}

/* Accent blue only when the user has not set --app-h1-color (Summary / Day by day in daily prep, dashboard). */
h1.app-h1.app-h1--accent {
  color: var(--app-h1-color, #1e40af);
}

h1.app-h1.app-h1--flush {
  margin: 0;
}

h1.app-h1.app-h1--tight-top {
  margin-top: 0;
}
