/**
 * Cards — First Aid Fast
 * UX Spec §Component Library › 3. Course Card
 */

/* --------------------------------------------------------------------------
   BASE CARD
   -------------------------------------------------------------------------- */
.card {
  background: var(--color-surface-raised);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: var(--space-6);
  box-shadow: var(--shadow-sm);
  transition:
    border-color var(--transition-base),
    box-shadow var(--transition-base),
    transform var(--transition-base);
}

.card:hover {
  border-color: var(--color-primary-500);
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
}

.card:focus-within {
  outline: 3px solid var(--color-primary-500);
  outline-offset: 2px;
}

/* --------------------------------------------------------------------------
   COURSE CARD
   UX Spec §Component Library › 3. Course Card
   -------------------------------------------------------------------------- */
.course-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  background: var(--color-neutral-50);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: var(--space-6);
  box-shadow: var(--shadow-sm);
  transition:
    border-color var(--transition-base),
    box-shadow var(--transition-base),
    transform var(--transition-base);
}

[data-theme="dark"] .course-card {
  background: var(--color-neutral-50);
  border-color: var(--color-border);
}

.course-card:hover {
  border-color: var(--color-primary-500);
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
}

.course-card:focus-within {
  outline: 3px solid var(--color-primary-500);
  outline-offset: 2px;
}

/* Level badge */
.course-card__badge {
  display: inline-flex;
  align-items: center;
  background: var(--color-primary-500);
  color: var(--color-white);
  font-family: var(--font-body);
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  letter-spacing: var(--tracking-widest);
  text-transform: uppercase;
  padding: 4px 12px;
  border-radius: var(--radius-full);
  width: fit-content;
}

.course-card__badge--renewal {
  background: var(--color-accent-500);
}

.course-card__badge--planning {
  background: var(--color-info);
}

/* Title */
.course-card__title {
  font-size: var(--text-xl);
  font-weight: var(--font-bold);
  color: var(--color-text-primary);
  font-family: var(--font-heading);
  margin: 0;
}

/* Duration */
.course-card__duration {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  display: flex;
  align-items: center;
  gap: var(--space-1);
}

/* Spacer to push price + CTA down */
.course-card__body {
  flex: 1;
  font-size: var(--text-sm);
  color: var(--color-text-secondary);
  line-height: var(--leading-base);
}

/* Price */
.course-card__price-wrapper {
  display: flex;
  align-items: baseline;
  gap: var(--space-1);
}

.course-card__price {
  font-family: var(--font-heading);
  font-size: 28px;
  font-weight: var(--font-bold);
  color: var(--color-accent-500);
  line-height: 1;
}

.course-card__price-unit {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

/* CTA */
.course-card__cta {
  margin-top: auto;
}

/* --------------------------------------------------------------------------
   TESTIMONIAL CARD
   -------------------------------------------------------------------------- */
.testimonial-card {
  background: var(--color-surface-raised);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: var(--space-6);
  box-shadow: var(--shadow-sm);
}

.testimonial-card__quote {
  font-size: var(--text-base);
  line-height: var(--leading-base);
  color: var(--color-text-secondary);
  font-style: italic;
  margin-bottom: var(--space-4);
  position: relative;
  padding-left: var(--space-5);
}

.testimonial-card__quote::before {
  content: '"';
  position: absolute;
  left: 0;
  top: -4px;
  font-size: 40px;
  font-family: var(--font-heading);
  color: var(--color-primary-100);
  line-height: 1;
}

[data-theme="dark"] .testimonial-card__quote::before {
  color: var(--color-primary-100);
}

.testimonial-card__author {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.testimonial-card__name {
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  color: var(--color-text-primary);
}

.testimonial-card__company {
  font-size: var(--text-xs);
  color: var(--color-text-muted);
}

/* --------------------------------------------------------------------------
   VALUE PROPOSITION CARD (Why First Aid Fast section)
   -------------------------------------------------------------------------- */
.value-card {
  text-align: center;
  padding: var(--space-8) var(--space-6);
}

.value-card__icon {
  width: 56px;
  height: 56px;
  background: var(--color-primary-50);
  border-radius: var(--radius-xl);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-inline: auto;
  margin-bottom: var(--space-4);
}

[data-theme="dark"] .value-card__icon {
  background: var(--color-primary-100);
}

.value-card__icon svg {
  width: 28px;
  height: 28px;
  color: var(--color-primary-500);
}

.value-card__title {
  font-size: var(--text-xl);
  font-weight: var(--font-bold);
  font-family: var(--font-heading);
  margin-bottom: var(--space-3);
}

.value-card__body {
  font-size: var(--text-sm);
  color: var(--color-text-secondary);
  line-height: var(--leading-base);
}
