/* Read-only native learning progress, shared by the course, catalogue and portal. */
.stem-learning-summary {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:24px;
  padding:clamp(18px,2.2vw,28px);
  margin:24px 0;
  border:1px solid #b9d4c8;
  border-radius:16px;
  background:#f0f7f3;
  color:#173b4b;
  box-sizing:border-box;
}
.stem-learning-summary__body { min-width:0; overflow-wrap:anywhere; }
.stem-learning-summary__body h2 { margin:0 0 10px; font-size:1.25rem; line-height:1.35; color:#0c344b; }
.stem-learning-summary__body p { margin:8px 0; font-size:1rem; line-height:1.6; }
.stem-learning-summary .stem-progress { width:100%; max-width:560px; height:8px; margin:12px 0; background:#d5e4dc; }
.stem-learning-summary > .stem-btn { max-width:100%; min-width:0; white-space:normal; text-align:center; }
.stem-learning-summary > .stem-btn svg { flex-shrink:0; }
.stem-learning-summary .stem-learning-last-activity { color:#456372; }
.stem-learning-summary .stem-learning-last-activity small { font-size:.875rem; }
.stem-learning-encouragement { border-left:3px solid #7fae97; padding-left:12px; color:#345b4a; }
/* The catalogue already supplies its own enrolment card; keep one visual box. */
.stem-enrol-card .stem-learning-summary {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:12px;
  padding:0;
  margin:0 0 22px;
  border:0;
  border-radius:0;
  background:transparent;
}
.stem-enrol-card .stem-learning-summary__body h2 { font-size:1.125rem; }
.stem-enrol-card .stem-learning-summary > .stem-btn { width:100%; }
/* Richer My STEMMING rows keep the action and recorded progress easy to scan. */
.stem-active-course { align-items:start; }
.stem-active-course__body { overflow-wrap:anywhere; }
.stem-active-course__body h3 { margin:4px 0 12px; font-size:1.2rem; line-height:1.4; }
.stem-active-course__body > p:not(.stem-eyebrow) { margin:8px 0; font-size:.9375rem; line-height:1.6; }
.stem-active-course__body .stem-learning-last-activity small { font-size:.8125rem; color:#456372; }
.stem-active-course__progress { grid-template-columns:minmax(0,240px) auto; margin:8px 0; }
.stem-active-course__progress > span { font-size:.875rem; font-weight:700; color:#173b4b; }
.stem-active-course__actions { display:flex; flex-direction:column; align-items:stretch; justify-content:center; align-self:center; min-width:0; gap:12px; }
.stem-active-course__actions .stem-btn { white-space:normal; text-align:center; }
.stem-active-course__actions .stem-text-link { justify-content:center; text-align:center; font-size:.9rem; }
@media(max-width:960px) {
  .stem-learning-summary { grid-template-columns:minmax(0,1fr); gap:16px; }
  .stem-learning-summary > .stem-btn { justify-self:start; }
}
@media(max-width:680px) {
  .stem-learning-summary > .stem-btn { width:100%; }
  .stem-active-course__actions { width:100%; align-items:stretch; }
  .stem-active-course__actions .stem-btn { width:100%; }
}
