.books-shelf{max-width:1420px;margin-inline:auto;padding:24px clamp(12px,3vw,32px) 48px}.books-shelf-header{padding:22px 0 16px}.books-shelf-header h1{font-size:clamp(28px,4vw,44px);line-height:1.12;margin:8px 0 12px}.books-shelf-header p{margin:0}.books-shelf-tabs{display:flex;gap:10px;margin:12px 0 22px;padding:6px;border:1px solid rgba(128,128,128,.25);background:var(--panel,rgba(255,255,255,.94));border-radius:16px}.books-shelf-tabs a{flex:1;text-align:center;padding:14px 18px;border-radius:11px;color:inherit;text-decoration:none;font-size:17px;font-weight:750;display:flex;justify-content:center;align-items:center;gap:9px}.books-shelf-tabs a[aria-current]{background:#303547;color:#fff}.books-shelf-tabs span{border-radius:18px;background:rgba(128,128,128,.18);padding:2px 8px;font-size:12px}.books-shelf-notice{padding:13px 16px;border-radius:12px;background:#eaf3ff;color:#233e60;border:1px solid #c1d4ef;font-size:14px}.books-shelf-subtitle{margin-top:-5px}.book-shelf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:24px;align-items:stretch}.book-shelf-card{min-width:0;display:flex;flex-direction:column;padding:16px;border-radius:18px;background:var(--panel,rgba(255,255,255,.96));border:1px solid rgba(128,128,128,.22);box-shadow:0 5px 16px rgba(0,0,0,.07)}.book-shelf-art{width:100%;aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:8px;background:rgba(100,108,120,.11);text-decoration:none}.book-shelf-art img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;image-rendering:auto}.book-shelf-info{display:flex;flex-direction:column;flex:1;padding-top:15px;min-width:0}.book-shelf-label{font-size:12px;font-weight:700;letter-spacing:.04em;opacity:.75}.book-shelf-info h3{font-size:21px;line-height:1.25;margin:7px 0;overflow-wrap:break-word}.book-shelf-info h3 a{color:inherit;text-decoration:none}.book-shelf-author{font-size:14px;margin:0 0 10px;opacity:.8}.book-shelf-access{font-size:13px;margin:0 0 14px}.book-shelf-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.book-shelf-buttons .btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 13px;line-height:1.3;min-height:40px;text-decoration:none;border:1px solid currentColor;border-radius:9px;font-size:14px}.book-shelf-buttons .primary{background:#303547;border-color:#303547;color:#fff}.book-shelf-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:space-between;text-align:center;box-sizing:border-box;padding:26px 20px;background:linear-gradient(145deg,#3e354d,#1d2330);color:#f7e4b0;box-shadow:inset 0 0 0 7px #c4a368,inset 0 0 0 10px #3e354d}.book-shelf-placeholder strong{font:700 clamp(22px,2vw,29px)/1.25 Georgia,serif;overflow-wrap:break-word}.book-shelf-placeholder small,.book-shelf-placeholder span{font-size:11px;letter-spacing:.1em}.books-shelf a:focus-visible{outline:3px solid #416fbe;outline-offset:4px}.book-detail-layout .book-detail-cover{width:100%;max-width:300px;height:auto;aspect-ratio:3/4;background-size:contain;background-repeat:no-repeat;background-position:center}.book-detail-layout .book-detail-cover:has(+.book-cover-note){background-size:contain}.book-detail-cover[data-art-layout]::before,.book-edition-cover[data-art-layout]::before{background-size:contain!important;background-repeat:no-repeat!important}.book-edition-cover{aspect-ratio:3/4!important;max-width:250px;height:auto!important;min-height:0!important;margin-inline:auto;background-size:contain!important;background-repeat:no-repeat!important}.books-edition-empty{padding:22px;border:1px solid rgba(128,128,128,.25);border-radius:14px;background:var(--panel,rgba(255,255,255,.95))}@media(max-width:600px){.book-shelf-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.book-shelf-card{padding:10px;border-radius:12px}.book-shelf-info h3{font-size:17px}.book-shelf-buttons .btn{font-size:12px;padding:9px}.book-shelf-label{font-size:10px}.books-shelf-tabs a{padding:12px 6px;font-size:15px}.books-shelf{padding-inline:12px}.book-shelf-placeholder{padding:20px 12px}.book-shelf-placeholder strong{font-size:19px}.book-shelf-placeholder small,.book-shelf-placeholder span{font-size:9px}}@media(max-width:340px){.book-shelf-grid{grid-template-columns:1fr}}
