@media screen and (max-width: 768px) {

    .main-title {
    font-size: 26px;
    margin-bottom: 16px;
  }

  .main-title::after {
    width: 80%;
  }

  .genre-tabs {
    flex-wrap: wrap;
    gap: 6px;
    padding: 0 10px;
  }

  .genre-tabs a {
    font-size: 14px;
    padding: 6px 12px;
  }

  .book-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    padding: 10px;
  }

  .book-card {
    flex-direction: column;
    align-items: center;
    width: calc(33.333% - 10px);
    max-width: none;
    box-sizing: border-box;
  }

  .cover {
    width: 100%;
    height: auto;
  }

  .info {
    padding: 8px;
    text-align: center;
  }

  .info h2 {
    font-size: 0.9em;
  }

  .pickup-tag {
    font-size: 0.7em;
  }
}