/* Page-specific anime grid: same visual card as Home, but normal vertical grid. */
body[data-route-page="library"] .library-page,
body[data-route-page="bookmark"] .bookmark-page,
body[data-route-page="favorite"] .bookmark-page,
body[data-route-page="genre"] .genre-page {
  padding-bottom: 104px;
}

body[data-route-page="library"] .page .anime-grid,
body[data-route-page="bookmark"] .page .anime-grid,
body[data-route-page="favorite"] .page .anime-grid,
body[data-route-page="genre"] .page .anime-grid {
  display: grid;
  grid-auto-flow: row;
  grid-template-columns: repeat(auto-fill, minmax(145px, 1fr));
  gap: 18px 16px;
  overflow: visible;
  padding: 4px 2px 16px;
}

body[data-route-page="library"] .anime-card,
body[data-route-page="bookmark"] .anime-card,
body[data-route-page="favorite"] .anime-card,
body[data-route-page="genre"] .anime-card {
  min-width: 0;
  background: transparent;
  box-shadow: none;
  border-radius: 2px;
}

body[data-route-page="library"] .anime-card .poster-wrap,
body[data-route-page="library"] .anime-card .poster,
body[data-route-page="library"] .anime-card .poster img,
body[data-route-page="bookmark"] .anime-card .poster-wrap,
body[data-route-page="bookmark"] .anime-card .poster,
body[data-route-page="bookmark"] .anime-card .poster img,
body[data-route-page="favorite"] .anime-card .poster-wrap,
body[data-route-page="favorite"] .anime-card .poster,
body[data-route-page="favorite"] .anime-card .poster img,
body[data-route-page="genre"] .anime-card .poster-wrap,
body[data-route-page="genre"] .anime-card .poster,
body[data-route-page="genre"] .anime-card .poster img {
  border-radius: 2px;
  overflow: hidden;
}

body[data-route-page="library"] .anime-card .card-body,
body[data-route-page="bookmark"] .anime-card .card-body,
body[data-route-page="favorite"] .anime-card .card-body,
body[data-route-page="genre"] .anime-card .card-body {
  padding: 10px 3px 0;
  overflow: hidden;
}

body[data-route-page="library"] .anime-card .card-body h3,
body[data-route-page="bookmark"] .anime-card .card-body h3,
body[data-route-page="favorite"] .anime-card .card-body h3,
body[data-route-page="genre"] .anime-card .card-body h3 {
  min-height: 42px;
  height: auto;
  max-height: none;
  margin: 0 0 7px;
  font-size: .98rem;
  line-height: 1.35;
  letter-spacing: -.02em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

body[data-route-page="library"] .anime-card .card-body h3 a,
body[data-route-page="bookmark"] .anime-card .card-body h3 a,
body[data-route-page="favorite"] .anime-card .card-body h3 a,
body[data-route-page="genre"] .anime-card .card-body h3 a {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.eric-page-label {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 16px;
  min-height: 40px;
}

.eric-page-label-bar {
  width: 10px;
  height: 36px;
  flex: 0 0 10px;
  border-radius: 999px;
  background: linear-gradient(180deg, #a78bfa, #6d5dfc 55%, #4c1d95);
  box-shadow: 0 0 18px rgba(139, 92, 246, .38);
}

.eric-page-label h1 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.32rem, 5.4vw, 2.12rem);
  line-height: 1.06;
  font-weight: 950;
  letter-spacing: -.035em;
}

.library-page-label,
.bookmark-page-label,
.genre-page-label {
  margin-top: 6px;
}

@media (max-width: 640px) {
  body[data-route-page="library"] .page .anime-grid,
  body[data-route-page="bookmark"] .page .anime-grid,
  body[data-route-page="favorite"] .page .anime-grid,
  body[data-route-page="genre"] .page .anime-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px 14px;
  }

  body[data-route-page="library"] .anime-card .card-body h3,
  body[data-route-page="bookmark"] .anime-card .card-body h3,
  body[data-route-page="favorite"] .anime-card .card-body h3,
  body[data-route-page="genre"] .anime-card .card-body h3 {
    min-height: 38px;
    font-size: .86rem;
    line-height: 1.27;
  }
}

@media (max-width: 430px) {
  body[data-route-page="library"] .page .anime-grid,
  body[data-route-page="bookmark"] .page .anime-grid,
  body[data-route-page="favorite"] .page .anime-grid,
  body[data-route-page="genre"] .page .anime-grid {
    gap: 14px 10px;
  }

  body[data-route-page="library"] .anime-card .card-body h3,
  body[data-route-page="bookmark"] .anime-card .card-body h3,
  body[data-route-page="favorite"] .anime-card .card-body h3,
  body[data-route-page="genre"] .anime-card .card-body h3 {
    min-height: 34px;
    font-size: .78rem;
  }
}
