.book-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.book-shelf-card{display:grid;grid-template-columns:minmax(150px,.72fr) 1fr;gap:24px;min-width:0;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:14px;transition:transform .18s ease,box-shadow .18s ease}.book-shelf-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.book-shelf-cover{display:flex;align-items:stretch}.book-shelf-cover .book-cover{width:100%;min-width:0;padding:24px;aspect-ratio:3/4.05}.book-shelf-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start;justify-content:center}.book-shelf-copy h2{margin:10px 0 6px;font-size:28px;line-height:1.2}.book-shelf-copy p{margin:0;color:var(--muted);line-height:1.75}.book-shelf-copy .book-subtitle{font-size:17px;color:var(--text);margin-bottom:13px}.book-progress{margin-top:16px;color:var(--accent);font-size:14px}.empty-state{padding:24px 0;color:var(--muted);line-height:1.8}.button.disabled{opacity:.55;cursor:default}.library-head{padding-bottom:16px}@media(max-width:760px){.book-grid{grid-template-columns:1fr;gap:16px}.book-shelf-card{grid-template-columns:120px 1fr;gap:16px;padding:14px}.book-shelf-cover .book-cover{padding:16px}.book-shelf-cover .book-cover strong{font-size:23px}.book-shelf-copy h2{font-size:23px}.book-shelf-copy .book-subtitle{font-size:15px;margin-bottom:8px}.book-shelf-copy p{font-size:14px}.book-progress{margin-top:10px}}
