/* ============================================
   DONATE PAGE
   ============================================ */

.donate-levels {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-md);
  margin-bottom: var(--space-xl);
}

.donate-level {
  padding: var(--space-lg);
  background: var(--color-white);
  border: 2px solid var(--color-border);
  border-radius: var(--radius-xl);
  text-align: center;
  transition: var(--transition);
  cursor: pointer;
}

.donate-level:hover,
.donate-level.active {
  border-color: var(--color-primary);
  box-shadow: var(--shadow-green);
  transform: translateY(-2px);
}

.donate-level__amount {
  font-size: 2rem;
  font-weight: 800;
  color: var(--color-primary);
  margin-bottom: 8px;
}

.donate-level__description {
  font-size: 0.85rem;
  color: var(--color-body);
  line-height: 1.5;
}

.donate-impact {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-md);
}

.donate-impact__item {
  text-align: center;
  padding: var(--space-lg);
}

.donate-impact__number {
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--color-primary);
  margin-bottom: 8px;
}

.donate-impact__label {
  font-size: 0.9rem;
  color: var(--color-body);
}

@media (max-width: 768px) {
  .donate-levels {
    grid-template-columns: repeat(2, 1fr);
  }

  .donate-impact {
    grid-template-columns: 1fr;
  }
}
/* ---- Frequency Tabs ---- */
#tab-onetime,
#tab-monthly {
  outline: none;
}

#tab-onetime:hover,
#tab-monthly:hover {
  opacity: 0.9;
}

/* ---- Monthly /mo text ---- */
.donate-level__amount span {
  display: inline;
}

/* ---- Selected Amount Display ---- */
#selected-display {
  padding: var(--space-md);
  background: var(--color-mint);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  display: inline-block;
}

/* ---- Champion Badge ---- */
.donate-level__badge[style*="background:var(--color-accent)"] {
  background-color: var(--color-accent) !important;
}

/* ---- Responsive Tabs ---- */
@media (max-width: 768px) {
  #tab-onetime,
  #tab-monthly {
    padding: 10px 20px;
    font-size: 0.9rem;
  }
}
