/* v95.3f layout fixes. Push mapping lives in app.py. */
.home-book-covers {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
  width: 100%;
  margin-bottom: 22px;
  box-sizing: border-box;
}
.home-book-covers .owner-cover-link.home {
  display: block;
  width: 100%;
  min-width: 0;
  line-height: 0;
  border-radius: 12px;
}
.home-book-covers .owner-cover-link.home img,
.home-book-covers .owner-cover-link.home .owner-cover-missing {
  width: 100% !important;
  max-width: none !important;
  height: auto;
  border-radius: 12px;
}
@media (min-width: 900px) {
  .home-book-covers { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1200px) {
  .home-book-covers { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (min-width: 768px) {
  body.avatar-viewer #avatarDeck > .avatar-snap-card.cheerdi-avatar-deck-ad {
    display: flex !important;
    flex-direction: column !important;
    align-self: stretch !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    padding: 0 0 19px !important;
    gap: 8px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    border-radius: 18px !important;
    background: #12182a !important;
    border: 1px solid rgba(0, 212, 255, 0.22) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.28) !important;
    scroll-snap-align: unset !important;
  }
  body.avatar-viewer #avatarDeck > .cheerdi-avatar-deck-ad .cheerdi-deck-ad-cover {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 3 / 4 !important;
    object-fit: contain !important;
    object-position: center center !important;
    border-radius: 18px 18px 0 0 !important;
    background: #0b0f19 !important;
  }
  body.avatar-viewer #avatarDeck > .cheerdi-avatar-deck-ad .cheerdi-deck-ad-title {
    margin: 0 !important;
    max-width: 100% !important;
    height: 2.6em !important;
    overflow: hidden !important;
    padding: 0 10px !important;
    font-size: 0.95rem !important;
    line-height: 1.3 !important;
    box-sizing: border-box !important;
  }
  body.avatar-viewer #avatarDeck > .cheerdi-avatar-deck-ad .cheerdi-deck-ad-btn {
    align-self: center !important;
    margin: 0 10px !important;
    max-width: calc(100% - 20px) !important;
    box-sizing: border-box !important;
  }
}

.reel-caption { pointer-events: auto; }
.reel-meta:has(.reel-caption.is-open) {
  left: 12px;
  right: 84px;
  bottom: 12px;
  top: auto;
  max-height: 60%;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  background: rgba(8, 10, 18, 0.84) !important;
  color: #f4f4f8;
  border-radius: 16px;
  padding: 14px 14px 12px;
  pointer-events: auto;
  z-index: 5;
  box-sizing: border-box;
}
.reel-caption.is-open {
  display: block !important;
  -webkit-line-clamp: unset !important;
  overflow: visible !important;
  max-height: none !important;
  color: #f4f4f8 !important;
}
.reel-meta:has(.reel-caption.is-open) .reel-more {
  display: inline-block !important;
  margin-top: 10px;
  padding: 8px 14px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important;
  background: rgba(255, 255, 255, 0.14) !important;
  color: #fff !important;
  font-weight: 800 !important;
}
@media (min-width: 1024px) {
  .reel-meta:has(.reel-caption.is-open) {
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    top: auto !important;
    width: min(440px, 46%, calc((100dvh - 176px) * 9 / 16)) !important;
    transform: translateX(-50%) !important;
    bottom: 160px !important;
    max-height: calc((100% - 176px) * 0.6) !important;
    margin: 0 !important;
    z-index: 6 !important;
    background: rgba(8, 10, 18, 0.84) !important;
    overflow-y: auto !important;
  }
}
