.lesson-flow__container {
  height: 100vh;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.lesson-flow__countdown {
  font-size: 6rem;
  font-weight: 700;
  text-align: center;
  margin: 2rem;
}

.lesson-flow__countdown > div {
  animation: appear-then-fade 3s;
}

.lesson-flow__slides {
  width: 100%;
}

.lesson-flow__slide {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
}

.lesson-flow__slide--current .lesson-flow__content {
  animation: slide-fade-in 300ms ease-out;
}

/**************************************
 * Expression text or image
 **************************************/
.lesson-flow__content {
  flex: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.lesson-flow__slide canvas {
  width: 100%;
  display: block;
}

.lesson-flow__expression {
  font-family: var(--font-children, sans-serif);
  color: var(--color-negative, #c22);
  font-weight: bold;
  font-size: clamp(2.5rem, 14vw, 10rem);
  text-align: center;
  margin-block: 1rem;
}

.lesson-flow__illustration {
  position: relative;
  width: 100%;
  height: 100%;
}

.lesson-flow__illustration img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.lesson-flow__footer {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--block-space)
}

.lesson-flow__actions-left {
  display: flex;
  gap: var(--inline-space-half);
}

.lesson-flow__footer-message {
  font-family: var(--font-children, sans-serif);
  color: var(--color-negative, #c22);
  font-weight: bold;
  flex: 1;
  text-align: center;
  font-size: 2rem;
  margin: 0;
}
