/* =========================================================
   CATEGORIES.CSS
   "BMI Categories" section — underweight / normal /
   overweight / obese cards, with active-state highlighting.
   ========================================================= */

.categories-section { padding: 56px 0 10px; }
.categories-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
.category-card {
  border-radius: var(--radius-lg);
  padding: 22px;
  border: 1px solid transparent;
}
.category-card .cat-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px; height: 40px;
  border-radius: 50%;
  font-size: 1.1rem;
  margin-bottom: 14px;
}
.category-card h3 { font-size: 1rem; margin-bottom: 4px; }
.cat-range { font-weight: 700; font-size: 0.85rem; margin-bottom: 10px; }
.cat-desc { font-size: 0.82rem; color: var(--gray-500); }

.cat-under { background: var(--blue-bg); }
.cat-under .cat-icon { background: #bfdbfe; color: var(--blue); }
.cat-under h3, .cat-under .cat-range { color: var(--blue); }

.cat-normal { background: var(--green-bg); }
.cat-normal .cat-icon { background: #bbf7d0; color: var(--green); }
.cat-normal h3, .cat-normal .cat-range { color: var(--green); }
.cat-normal.active-cat { outline: 2px solid var(--green); }

.cat-over { background: var(--orange-bg); }
.cat-over .cat-icon { background: #fed7aa; color: var(--orange); }
.cat-over h3, .cat-over .cat-range { color: var(--orange); }

.cat-obese { background: #fee2e2; }
.cat-obese .cat-icon { background: #fecaca; color: #dc2626; }
.cat-obese h3, .cat-obese .cat-range { color: #dc2626; }

.category-card.active-cat { box-shadow: 0 0 0 2px currentColor inset; transform: translateY(-2px); }

.disclaimer {
  text-align: center;
  font-size: 0.82rem;
  color: var(--gray-500);
  margin-top: 24px;
}

/* ---------- Responsive ---------- */
@media (max-width: 980px) {
  .categories-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {
  .categories-grid { grid-template-columns: 1fr; }
}
