.alkon-book-details {
    margin: 28px 0;
    padding: 22px 24px;
    border: 1px solid rgba(0, 0, 0, .10);
    border-radius: 8px;
    background: rgba(255, 255, 255, .72);
}

.alkon-book-details h2 {
    margin: 0 0 16px;
    font-size: 1.15em;
    line-height: 1.35;
}

.alkon-book-details-list {
    margin: 0;
}

.alkon-book-detail-row {
    display: grid;
    grid-template-columns: minmax(130px, 34%) 1fr;
    gap: 16px;
    padding: 9px 0;
    border-top: 1px solid rgba(0, 0, 0, .075);
}

.alkon-book-detail-row:first-child {
    border-top: 0;
    padding-top: 0;
}

.alkon-book-detail-row:last-child {
    padding-bottom: 0;
}

.alkon-book-detail-row dt,
.alkon-book-detail-row dd {
    margin: 0;
}

.alkon-book-detail-row dt {
    font-weight: 600;
}

.alkon-book-detail-row dd {
    overflow-wrap: anywhere;
}

@media (max-width: 520px) {
    .alkon-book-details {
        padding: 18px;
    }

    .alkon-book-detail-row {
        grid-template-columns: 1fr;
        gap: 3px;
    }
}

.alkon-book-term-link { text-decoration: none; }
.alkon-book-term-link:hover, .alkon-book-term-link:focus { text-decoration: underline; }


/* Filtered catalog archive: the custom title already explains the result set. */
.alkon-filtered-shop .woocommerce-result-count {
    display: none;
}

/* Keep filtered catalog pages compact without changing normal WooCommerce archives. */
.alkon-filtered-shop .hero-section[data-type="type-1"],
.alkon-filtered-shop .hero-section[data-type="type-2"] {
    padding-top: 20px;
    padding-bottom: 20px;
    min-height: 0;
}

.alkon-filtered-shop .hero-section + .site-main,
.alkon-filtered-shop .hero-section + .ct-container,
.alkon-filtered-shop .site-main {
    margin-top: 0;
}


/* v0.5.5: filtered archives should not inherit Blocksy's large hero spacing. */
.alkon-filtered-shop .hero-section {
    min-height: 0 !important;
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}

.alkon-filtered-shop .hero-section .ct-container,
.alkon-filtered-shop .hero-section .entry-header {
    min-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.alkon-filtered-shop .site-main,
.alkon-filtered-shop #main,
.alkon-filtered-shop [data-content="normal"] {
    padding-top: 24px !important;
    margin-top: 0 !important;
}

/* With one filtered book there is nothing useful to sort. */
.alkon-filtered-shop.alkon-single-filter-result .woocommerce-ordering {
    display: none !important;
}


/* v0.5.6: compact the Blocksy content container on filtered catalog pages.
 * Blocksy adds archive spacing to the inner content container, not only to site-main. */
.alkon-filtered-shop .site-main > .ct-container,
.alkon-filtered-shop #main > .ct-container,
.alkon-filtered-shop .site-main > [class*="ct-container"] {
    padding-top: 32px !important;
    margin-top: 0 !important;
}

/* Avoid an extra top offset on the WooCommerce loop itself. */
.alkon-filtered-shop .woocommerce-products-header + .woocommerce-notices-wrapper + .woocommerce-result-count,
.alkon-filtered-shop ul.products {
    margin-top: 0 !important;
}


/* v0.5.7: cleaner main shop and richer book cards. */
.alkon-book-shop .woocommerce-result-count {
    display: none;
}

.alkon-book-shop.alkon-single-catalog-result .woocommerce-ordering,
.alkon-filtered-shop.alkon-single-catalog-result .woocommerce-ordering {
    display: none !important;
}

.alkon-book-shop .hero-section {
    min-height: 0 !important;
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}

.alkon-book-shop .hero-section .ct-container,
.alkon-book-shop .hero-section .entry-header {
    min-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.alkon-book-shop .site-main,
.alkon-book-shop #main,
.alkon-book-shop [data-content="normal"] {
    padding-top: 24px !important;
    margin-top: 0 !important;
}

.alkon-book-shop .site-main > .ct-container,
.alkon-book-shop #main > .ct-container,
.alkon-book-shop .site-main > [class*="ct-container"] {
    padding-top: 32px !important;
    margin-top: 0 !important;
}

.alkon-book-shop ul.products {
    margin-top: 0 !important;
}

.alkon-loop-book-meta {
    margin: 5px 0 8px;
    font-size: .92em;
    line-height: 1.45;
}

.alkon-loop-book-meta > div + div {
    margin-top: 2px;
}

.alkon-loop-book-meta a {
    text-decoration: none;
}

.alkon-loop-book-meta a:hover,
.alkon-loop-book-meta a:focus {
    text-decoration: underline;
}

.alkon-loop-condition span {
    font-weight: 600;
}

/* BookCatalog supplies the useful bibliographic metadata; keep category clutter out of cards. */
.alkon-book-shop ul.products .product .product-categories,
.alkon-filtered-shop ul.products .product .product-categories {
    display: none !important;
}


/* v0.5.8: labelled author/publisher metadata and suppress category output in cards. */
.alkon-loop-author > span,
.alkon-loop-publisher > span {
    font-weight: 600;
}

.alkon-book-shop ul.products .product .posted_in,
.alkon-filtered-shop ul.products .product .posted_in,
.alkon-book-shop ul.products .product [class*="product-categor"],
.alkon-filtered-shop ul.products .product [class*="product-categor"],
.alkon-book-shop ul.products .product [class*="categories"],
.alkon-filtered-shop ul.products .product [class*="categories"] {
    display: none !important;
}


/* v0.7.0: bookstore search on the main shop archive. */
.alkon-book-search {
    display: flex;
    align-items: stretch;
    gap: 10px;
    margin: 0 0 28px;
    max-width: 820px;
}

.alkon-book-search input[type="search"] {
    flex: 1 1 420px;
    min-width: 0;
}

.alkon-book-search button {
    white-space: nowrap;
}

.alkon-book-search-clear {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}

@media (max-width: 620px) {
    .alkon-book-search {
        flex-wrap: wrap;
    }
    .alkon-book-search input[type="search"] {
        flex-basis: 100%;
    }
}


/* v0.8.0: combinable bookstore filters. */
.alkon-book-filters{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;margin:-12px 0 30px}.alkon-book-filters label{margin:0}.alkon-book-filters select{min-width:165px;height:100%}.alkon-book-filters button{white-space:nowrap}.alkon-book-filters-clear{display:inline-flex;align-items:center;white-space:nowrap}@media(max-width:720px){.alkon-book-filters label{flex:1 1 45%}.alkon-book-filters select{width:100%}}@media(max-width:520px){.alkon-book-filters label{flex-basis:100%}}


/* v0.11.0: structured single-book presentation. */
.alkon-book-description {
    margin: 28px 0;
    padding: 22px 24px;
    border: 1px solid rgba(0, 0, 0, .10);
    border-radius: 8px;
    background: rgba(255, 255, 255, .72);
}
.alkon-book-description h2 {
    margin: 0 0 16px;
    font-size: 1.15em;
    line-height: 1.35;
}
.alkon-book-description-content > :first-child { margin-top: 0; }
.alkon-book-description-content > :last-child { margin-bottom: 0; }
@media (max-width: 520px) {
    .alkon-book-description { padding: 18px; }
}
