.book-card{height:100%;background-color:#fff;border-radius:1.5rem;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;justify-content:flex-start;box-shadow:0 1px 2px #362c2a0d;transition:transform .2s ease,box-shadow .2s ease;position:relative}.book-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #362c2a14}.book-card__cover-box{position:relative;aspect-ratio:1 / 1;background-color:#fff;display:flex;align-items:center;justify-content:center;padding:.5rem;overflow:hidden}.book-card__cover-img{max-height:100%;max-width:100%;object-fit:contain;border-radius:.375rem;box-shadow:none}.book-card__no-cover{display:none;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;color:#8c7d79;background-color:#f8f7f4;border-radius:.5rem;border:1px dashed rgba(54,44,42,.15)}.book-card__cover-box.has-no-cover .book-card__no-cover{display:flex}.book-card__no-cover-icon{width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;opacity:.7}.book-card__no-cover-text{font-size:.6875rem;font-weight:700;letter-spacing:.05em;opacity:.7}.book-card__badge{position:absolute;top:.75rem;left:.75rem;color:#fff!important;font-size:.75rem;font-weight:700;padding:.25rem .75rem;border-radius:9999px;box-shadow:0 1px 2px #00000026;display:flex;align-items:center;gap:.375rem;z-index:10;white-space:nowrap}.book-card__badge--available{background-color:#059669!important}.book-card__badge--sub-available{background-color:#526656!important}.book-card__badge--unavailable{background-color:#8c7d79!important}.book-card__badge--loading{background-color:#4b5563!important;opacity:.9}.book-card__badge-dot{width:.375rem;height:.375rem;border-radius:9999px;background-color:#fff;display:inline-block;flex-shrink:0}.book-card__badge-dot.animate-pulse{animation:badge-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes badge-pulse{0%,to{opacity:1}50%{opacity:.3}}.book-card__body{padding:.75rem 1rem 1rem;display:flex;flex-direction:column;gap:.5rem;flex-grow:1}.book-card__title{font-size:1rem;font-weight:700;color:#362c2a;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.book-card__author{font-size:.875rem;color:#655855;font-weight:500;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
