.callout {
  margin: 1.4rem 0 1.6rem;
  padding: 0.9rem 1.1rem 1rem;
  border: none !important;
  border-radius: 1.05rem;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
  position: relative;
}

.callout::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 0.42rem;
  border-radius: 1.05rem 0 0 1.05rem;
  background: currentColor;
  opacity: 0.16;
}

.callout .callout-header {
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.35rem;
  padding: 0;
  background: transparent !important;
  border: none !important;
}

.callout .callout-icon-container {
  display: none;
}

.callout .callout-title-container {
  font-family: "Lato", "IBM Plex Sans", sans-serif;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  line-height: 1.2;
  text-transform: uppercase;
}

.callout .callout-body-container {
  font-size: 0.98rem;
}

.callout .callout-body-container > :last-child {
  margin-bottom: 0;
}

.callout.callout-note {
  background: linear-gradient(135deg, #f3f1e8 0%, #faf8ef 100%) !important;
  color: #3e5666 !important;
}

.callout.callout-note .callout-title-container {
  color: #3e5666 !important;
}

.callout.math-detail {
  background: linear-gradient(135deg, #eef4f8 0%, #f8fbfd 100%) !important;
  color: #355467 !important;
}

.callout.math-detail .callout-title-container {
  color: #355467 !important;
}

.callout.callout-important {
  background: linear-gradient(135deg, #fff1c9 0%, #fff8e3 100%) !important;
  color: #8b6300 !important;
}

.callout.callout-important .callout-title-container {
  color: #8b6300 !important;
}

.callout[id^="self-assessment-task-"] {
  background: linear-gradient(135deg, #eaf2e9 0%, #f5faf4 100%) !important;
  color: #335948 !important;
}

.callout[id^="self-assessment-task-"] .callout-title-container {
  color: #335948 !important;
}

.callout.callout-style-default {
  padding-top: 1rem;
}

@media (max-width: 900px) {
  .callout {
    padding: 0.9rem 1rem 0.95rem;
    border-radius: 0.9rem;
  }
}
