.catalog-navigation,.pagination-links,.letter-index { display:flex; gap:1.25rem; flex-wrap:wrap; justify-content:center; margin:1.5rem 0; align-items:center; }
.catalog-search { display:flex; max-width:650px; gap:.5rem; margin:1rem auto 2rem; }
.catalog-search input { min-width:0; }
.skip-link { position:absolute; left:-9999px; }.skip-link:focus { left:1rem; top:1rem; z-index:10000; background:white; padding:1rem; }
h1:focus { outline: none; }
button:focus-visible,a:focus-visible,input:focus-visible { outline:3px solid var(--shop-accent, #444); outline-offset:4px; }
.book-description { white-space:pre-line; margin:1.5rem 0; }
.author-link { display:inline-block; margin-right:1rem; }.gallery { display:flex; flex-wrap:wrap; gap:1rem; }.gallery figure { max-width:220px; }.gallery img { max-width:100%; }
.index-list { line-height:2.2; }.letter-index [aria-current=page] { font-weight:bold; text-decoration:underline; }
.added-notice { font-size:.85rem; margin-top:.5rem; }.cart-table input { max-width:5rem; }.cart-total { text-align:right; font-size:1.2rem; }
#blazor-error-ui { display:none; position:fixed; bottom:0; background:#fff3cd; padding:1rem; width:100%; z-index:9999; }
.book-page .content .format-list { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:.4rem; }
.book-page .content .format-list .format { padding:0; min-width:0; cursor:default; }
.book-page .content .format-list .format .icon { margin:0 auto; width:clamp(38px,8vw,75px); height:clamp(38px,8vw,75px); }
.format-action { display:block; width:100%; border:0; background:none; color:inherit; padding:0; font:inherit; text-decoration:none; cursor:pointer; }
.book-page .content .format-list .format.disabled { opacity:.35; }
.book-page .content .format-list .format.disabled img { opacity:1; }
.format-status:empty { display:none; }
.share-controls .btn { margin:0 .5rem .5rem 0; }
.checkout-transition { text-align:center; max-width:650px; margin:3rem auto; }
.checkout-transition > .bi { font-size:5rem; color:var(--shop-accent, #444); }
.checkout-transition p { margin:1.5rem 0; }
.cookie-dialog { border: 0; border-radius: 6px; padding: 1.5rem; max-width: 650px; width: calc(100% - 2rem); max-height: calc(100vh - 2rem); overflow: auto; box-shadow: 0 8px 40px #0005; }
.cookie-dialog::backdrop { background: #0008; }
.cookie-dialog h2 { margin-top: 0; }
.cookie-dialog input { margin-right: .4rem; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.cookie-status { margin: 1rem 0 0; }
.shop-payment-methods { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; height: 100%; }
.shop-payment-methods img { object-fit: contain; max-width: 46px; height: 26px; }
@media(max-width:991px) { .cart-table { font-size:.9rem; } }
