/* Course preferences use the academy's green and gold palette. */
.course-preferences {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin-block: 0 16px;
  min-width: 0;
}
.course-like,
.category-follow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-width: 44px;
  min-height: 44px;
  max-width: 100%;
  padding: 9px 13px;
  border: 1px solid #b7c5bd;
  border-radius: 5px;
  background: transparent;
  color: var(--ink, #153c3d);
  font: inherit;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.6;
  cursor: pointer;
  transition: background-color .18s, color .18s, border-color .18s;
}
.course-like:hover,
.category-follow:hover {
  background: #eeeee3;
  border-color: var(--ink, #153c3d);
}
.course-like[aria-pressed="true"],
.category-follow[aria-pressed="true"] {
  background: var(--ink, #153c3d);
  border-color: var(--ink, #153c3d);
  color: var(--gold, #d3b377);
}
.course-like-heart {
  flex: 0 0 21px;
}
.course-like[aria-pressed="true"] .course-like-heart {
  fill: currentColor;
}
.course-like-total {
  font-variant-numeric: lining-nums tabular-nums;
}
.course-like:focus-visible,
.category-follow:focus-visible,
#filters .filter:focus-visible {
  outline: 3px solid var(--terra, #a05239);
  outline-offset: 3px;
}
.course-like[aria-busy="true"],
.category-follow[aria-busy="true"] {
  cursor: progress;
}
.course-like[aria-disabled="true"],
.category-follow[aria-disabled="true"] {
  cursor: wait;
  opacity: .65;
}
.course-preference-badge {
  display: inline-flex;
  align-self: flex-start;
  width: fit-content;
  max-width: 100%;
  padding: 4px 8px;
  margin-block-end: 10px;
  border: 1px solid #d7d5c9;
  border-radius: 4px;
  background: #eeeee3;
  color: var(--ink, #153c3d);
  font-size: 11px;
  font-weight: 650;
  line-height: 1.7;
  overflow-wrap: anywhere;
}
.course-card.is-liked .course-preference-badge {
  border-color: var(--gold, #d3b377);
  background: var(--gold, #d3b377);
}
.course-preference-badge[hidden] {
  display: none;
}
.course-intro .course-preferences {
  margin-block: 6px 18px;
}
.course-category-preferences {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 14px;
}
.category-follow:not([hidden]) {
  margin-block-end: 18px;
}
.category-follow[hidden] {
  display: none;
}
.course-preferences-status {
  margin: 0 0 18px;
  color: var(--ink, #153c3d);
  font-size: 13px;
  line-height: 1.8;
  overflow-wrap: anywhere;
}
.course-preferences-status:empty {
  display: none;
}
#filters .filter {
  min-height: 44px;
}
#filters .filter.is-followed {
  background: var(--gold, #d3b377);
  border-color: #a38042;
  color: var(--ink, #153c3d);
}
#filters .filter.is-followed.active {
  box-shadow: inset 0 0 0 2px var(--ink, #153c3d);
}
.course-category.is-followed {
  align-self: flex-start;
  width: fit-content;
  max-width: 100%;
  padding: 3px 8px;
  border-radius: 4px;
  background: var(--gold, #d3b377);
  color: var(--ink, #153c3d);
}

/* Keep the previous price directly above the unchanged sale price. */
.course-card .course-price.course-price-stacked,
.course-sidebar .course-price.course-price-stacked,
.course-showcase .showcase-pricing.course-price-stacked {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.course-card .course-price.course-price-stacked > .course-price-values,
.course-sidebar .course-price.course-price-stacked > .course-price-values,
.course-showcase .showcase-pricing.course-price-stacked > .course-price-values {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-end;
  gap: 1px;
  min-width: 0;
  margin-inline-start: auto;
}
.course-price-stacked > .course-preferences {
  flex: 0 0 auto;
  margin: 0;
}
.course-price-before {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}
.course-price-before .discount-badge,
.course-price-before del {
  white-space: nowrap;
}
.course-price-values del {
  color: #606c65;
  font-size: 13px;
  line-height: 1.6;
  text-decoration-thickness: 1.5px;
}
.course-price-values strong {
  line-height: 1.5;
}
.course-showcase .course-price-values del {
  color: #f3e8d6;
}
.course-showcase .showcase-pricing #featured-sale-price {
  margin-inline-start: 0;
}
@media (max-width: 380px) {
  .course-like,
  .category-follow {
    padding-inline: 11px;
    font-size: 13px;
  }
  .course-card .course-price.course-price-stacked,
  .course-sidebar .course-price.course-price-stacked {
    gap: 8px;
  }
  .course-price-values del {
    font-size: 12px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .course-like,
  .category-follow {
    transition: none;
  }
}
