/* 固定幅の画像や長いURLも、各カラムと画面の幅に収める。 */
body {
  overflow-wrap: anywhere;
}

img {
  max-width: 100%;
  height: auto;
}

.media-body {
  min-width: 0;
}

.profile-avatar {
  margin-bottom: 1rem;
}

.profile-links {
  padding-left: 1.25rem;
}

.profile-links a {
  display: flex;
  align-items: flex-start;
  gap: 0.25rem;
}

.profile-links img {
  flex-shrink: 0;
  margin-top: 0.1875rem;
}

.profile-links span {
  min-width: 0;
}

.recent-book {
  margin-bottom: 1.5rem;
}

.recent-cover {
  display: block;
  margin-bottom: 1rem;
}

.book-details {
  gap: 1rem;
}

.book-cover {
  flex-shrink: 0;
}

/* スマホでは本文の幅を確保するため、表紙の下に説明を置く。 */
@media (max-width: 575.98px) {
  .book-details {
    flex-direction: column;
  }

  .book-details > .media-body {
    width: 100%;
    flex: 0 1 auto;
  }
}
