/**
 * Bookshelf Styles
 *
 * Uses unified collection components:
 * - collection-stats.css for stats cards
 * - collection-card.css as foundation for book cards
 */

.book-year-count {
  font-size: var(--size-step-min-1);
  padding: 0 0.25rem 0.5rem;
}

/* Book Cards - follows unified collection-card pattern */

.book-card {
  --book-width: 150px;
  --book-height: 225px;

  position: relative;
  width: var(--book-width);
  height: var(--book-height);
  overflow: hidden;
}

.book-card__link {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  text-decoration: none;
  color: inherit;
}

.book-card__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}

.book-card:hover .book-card__image {
  transform: scale(1.05);
}

.book-card__meta {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.95));
  color: white;
  padding: var(--space-m) var(--space-s) var(--space-s);
  transform: translateY(100%);
  transition: transform 0.3s ease;
}

.book-card:hover .book-card__meta {
  transform: translateY(0);
}

.book-card__title {
  font-size: var(--size-step-min-1);
  font-weight: var(--font-bold);
  line-height: 1.2;
  margin: 0 0 var(--space-3xs) 0;
  color: white;
}

.book-card__author {
  font-size: var(--size-step-min-2);
  opacity: 0.9;
  line-height: 1.1;
  margin: 0;
  color: white;
}

.book-details {
  --flow-space: var(--space-s);
}

.book-author {
  color: var(--color-text-accent);
  font-size: var(--size-step-min-2);
  text-transform: uppercase;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
}

.book-title {
  font-weight: 600;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
}

.book-description {
  font-size: var(--size-step-min-1);
}

.book-reading-status {
  font-size: var(--size-step-min-1);
  -moz-column-break-inside: avoid;
       break-inside: avoid;
}

.featured-book-cover {
  --book-featured-width: 200px;

  max-width: var(--book-featured-width);
  height: auto;
}