/* Copyright 2025 Renofy Ltd. All rights reserved. */
/* === Typography System === */

/* --- Headings --- */
.heading-1 {
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-semibold);
}

.heading-2 {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-semibold);
}

.heading-3 {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
}

.heading-4 {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
}

/* --- Subheadings / Section Titles --- */
.subheading {
  font-size: var(--font-size-lg);
  color: var(--color-text-secondary);
}

/* --- Body Text --- */
.body-large {
  font-size: var(--font-size-lg);
  line-height: var(--line-height-normal);
}

.body-regular {
  color: var(--color-text-secondary);
  line-height: var(--line-height-normal);
}

.body-bold {
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-normal);
}

/* --- Captions / Small Text --- */
.caption {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
}

/* --- Input Labels --- */
.input-label {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-secondary);
  display: block;
  user-select: none;
}

/* --- Helper / Hint Text --- */
.helper-text {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  flex-shrink: 0;
}

/* --- Error Text --- */
.error-text {
  color: var(--color-danger);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  margin-top: 0.25rem;
  display: block;
}
