.fable-library {
  padding-top: 16px;
}
.fable-library > h1 {
  font-size: 28px;
  margin: 10px 0;
}
.fable-library > p {
  margin: 10px 0;
}
.fable-library .fable-reading-path {
  margin: 14px 0;
}
.fable-library .fable-reading-path span {
  font-size: 15px;
  padding: 8px 12px;
}
.fable-library .fable-book-cover {
  padding: 16px 22px;
}
.fable-library .fable-book-cover h2 {
  font-size: 26px;
}
.fable-library .fable-book-art {
  font-size: 48px;
}
.fable-library .fable-audio {
  padding: 12px 22px;
}
.fable-library .fable-book-text {
  padding: 8px 24px 20px;
}
.fable-library .fable-book-cover p {
  margin: 8px 0;
}

.fable-rules {
  display: grid;
  gap: 12px;
  margin: 18px 0;
}
.fable-rule {
  display: flex;
  gap: 14px;
  padding: 16px;
  background: #eef5eb;
  border: 1px solid #ccdcd0;
  border-radius: 16px;
}
.fable-rule > span {
  font-size: 28px;
  flex-shrink: 0;
}
.fable-rule h3 {
  margin: 0 0 6px;
  font-size: 21px;
}
.fable-rule p {
  margin: 0;
  line-height: 1.5;
  font-size: 18px;
}
.fable-rules-intro {
  font-size: 20px;
  line-height: 1.5;
}
.large .fable-rule p {
  font-size: 23px;
}
@media (min-width: 900px) {
  .fable-rules {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .fable-rule {
    padding: 14px;
  }
  .fable-rule h3 {
    font-size: 20px;
  }
  .fable-rule p {
    font-size: 17px;
  }
}
.fable-lesson {
  display: grid;
  gap: 12px;
  margin: 18px 0;
}
