html, body {
  background-color: var(--color-bg);
  color: var(--color-text-primary);
  font-family: var(--font-body);
  font-size: 16px;
  overflow: hidden; /* App is SPA, screens handle scroll */
  touch-action: pan-x pan-y; /* Allows scrolling but blocks pinch-zoom */
}

h1, h2, h3 {
  font-family: var(--font-display);
  font-weight: 700;
}

h1 {
  font-size: 28px;
  margin-bottom: var(--space-4);
}

h2 {
  font-size: 22px;
  margin-bottom: var(--space-3);
}

.text-secondary {
  color: var(--color-text-secondary);
}

.text-muted {
  color: var(--color-text-muted);
}

.text-center {
  text-align: center;
}

.price, .mono {
  font-family: var(--font-mono);
}

.hidden {
  display: none !important;
}

a {
  color: var(--color-accent);
  text-decoration: none;
}
