/* ================================================
   WBG Modern Skin v1.2
   ================================================ */

/* ── Page layout fix — constrain to content area ── */
.wp-block-post-content {
    overflow-x: hidden !important;
}

.wbg-archive-page-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
}

.wbg-parent-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow-x: hidden !important;
}

.wbg-main-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    grid-gap: 14px !important;
    overflow-x: hidden !important;
    /* Let WBG control columns — just ensure items don't overflow */
}

.wbg-main-wrapper .wbg-item {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* ── Search bar ────────────────────────────────── */
.wbg-search-container {
    background: rgba(255,255,255,0.05) !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    border-radius: 12px !important;
    padding: 14px 16px !important;
    margin-bottom: 24px !important;
    grid-gap: 8px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Text inputs */
.wbg-search-container .wbg-search-item input[type='text'] {
    background: rgba(255,255,255,0.08) !important;
    border: 1px solid rgba(255,255,255,0.14) !important;
    border-radius: 7px !important;
    color: #fff !important;
    padding: 10px 12px !important;
    font-size: 13px !important;
    height: auto !important;
    width: 100% !important;
    box-sizing: border-box !important;
    transition: border-color 0.2s, background 0.2s !important;
}

.wbg-search-container .wbg-search-item input[type='text']:focus {
    border-color: rgba(255,255,255,0.35) !important;
    background: rgba(255,255,255,0.11) !important;
    outline: none !important;
}

.wbg-search-container .wbg-search-item input[type='text']::placeholder {
    color: rgba(255,255,255,0.38) !important;
}

/* Selectize wrapper */
.wbg-search-container .selectize-control {
    width: 100% !important;
}

/* Selectize input box */
.wbg-search-container .selectize-input,
.wbg-search-container .selectize-control.single .selectize-input {
    background: rgba(255,255,255,0.08) !important;
    border: 1px solid rgba(255,255,255,0.14) !important;
    border-radius: 7px !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: 13px !important;
    min-height: 40px !important;
    line-height: 20px !important;
    padding: 10px 32px 10px 12px !important;
    transition: border-color 0.2s, background 0.2s !important;
}

.wbg-search-container .selectize-input.focus,
.wbg-search-container .selectize-input:hover {
    border-color: rgba(255,255,255,0.35) !important;
    background: rgba(255,255,255,0.11) !important;
    box-shadow: none !important;
}

.wbg-search-container .selectize-input input {
    color: #fff !important;
    font-size: 13px !important;
}

.wbg-search-container .selectize-input input::placeholder {
    color: rgba(255,255,255,0.38) !important;
}

/* Dropdown arrow */
.wbg-search-container .selectize-control.single .selectize-input:after {
    border-top-color: rgba(255,255,255,0.5) !important;
    right: 12px !important;
}

/* Dropdown panel */
.wbg-search-container .selectize-dropdown,
.wbg-search-container + .selectize-dropdown {
    background: #1c1c1e !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    border-radius: 8px !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.5) !important;
    margin-top: 4px !important;
    overflow: hidden !important;
    z-index: 9999 !important;
}

.wbg-search-container .selectize-dropdown .selectize-dropdown-content {
    padding: 4px !important;
}

.wbg-search-container .selectize-dropdown [data-selectable].option {
    color: rgba(255,255,255,0.85) !important;
    font-size: 13px !important;
    padding: 8px 10px !important;
    border-radius: 5px !important;
}

.wbg-search-container .selectize-dropdown [data-selectable].option:hover,
.wbg-search-container .selectize-dropdown [data-selectable].option.active {
    background: rgba(255,255,255,0.1) !important;
    color: #fff !important;
}

/* Also target selectize dropdowns globally when on this page since they render outside the container */
.selectize-dropdown {
    background: #1c1c1e !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    border-radius: 8px !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.5) !important;
}

.selectize-dropdown [data-selectable].option {
    color: rgba(255,255,255,0.85) !important;
    font-size: 13px !important;
    padding: 8px 10px !important;
}

.selectize-dropdown [data-selectable].option:hover,
.selectize-dropdown [data-selectable].option.active {
    background: rgba(255,255,255,0.1) !important;
    color: #fff !important;
}

/* Zoeken button */
.wbg-search-container .wbg-search-item .submit-btn {
    background: #2563eb !important;
    border: none !important;
    border-radius: 7px !important;
    color: #fff !important;
    cursor: pointer !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    height: 40px !important;
    line-height: 40px !important;
    padding: 0 20px !important;
    transition: background 0.15s !important;
    white-space: nowrap !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.wbg-search-container .wbg-search-item .submit-btn:hover {
    background: #1d4ed8 !important;
}

/* Refresh button */
.wbg-search-container .wbg-search-item a#wbg-search-refresh {
    background: rgba(255,255,255,0.07) !important;
    border: 1px solid rgba(255,255,255,0.14) !important;
    border-radius: 7px !important;
    color: rgba(255,255,255,0.6) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    text-decoration: none !important;
    transition: background 0.15s, color 0.15s !important;
}

.wbg-search-container .wbg-search-item a#wbg-search-refresh:hover {
    background: rgba(255,255,255,0.13) !important;
    color: #fff !important;
}

/* ── Results count ─────────────────────────────── */
div.wbg-total-books-title {
    height: auto !important;
    line-height: 1 !important;
    padding: 0 0 12px !important;
    text-align: left !important;
}

div.wbg-total-books-title,
div.wbg-total-books-title p {
    color: rgba(255,255,255,0.4) !important;
    font-size: 12px !important;
    letter-spacing: 0.03em !important;
    text-transform: uppercase !important;
}

/* ── Book cards ────────────────────────────────── */
.wbg-main-wrapper .wbg-item {
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid rgba(255,255,255,0.09) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    padding: 0 !important;
    text-align: left !important;
    transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease !important;
}

.wbg-main-wrapper .wbg-item:hover {
    background: rgba(255,255,255,0.07) !important;
    border-color: rgba(255,255,255,0.22) !important;
    box-shadow: none !important;
    transform: translateY(-3px) !important;
}

/* Cover image */
.wbg-main-wrapper .wbg-item > a.wgb-item-link img,
.wbg-main-wrapper .wbg-item img {
    display: block !important;
    width: 100% !important;
    height: 500px !important;
    object-fit: cover !important;
    object-position: center top !important;
    margin: 0 !important;
    border-radius: 0 !important;
}

/* Title */
.wbg-main-wrapper .wbg-item a.wgb-item-link,
.wbg-main-wrapper .wbg-item h3.wgb-item-link {
    color: #f0f0f0 !important;
    display: block !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    padding: 10px 11px 4px !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: color 0.15s !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.wbg-main-wrapper .wbg-item a.wgb-item-link:hover {
    color: #93c5fd !important;
    text-decoration: none !important;
}

/* Meta text (org, author, publisher) */
.wbg-main-wrapper .wbg-item span {
    color: rgba(255,255,255,0.62) !important;
    display: block !important;
    font-size: 10px !important;
    line-height: 1.5 !important;
    margin: 0 !important;
    padding: 1px 11px !important;
    text-align: left !important;
    width: 100% !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.wbg-main-wrapper .wbg-item span:last-child {
    padding-bottom: 10px !important;
}

.wbg-main-wrapper .wbg-item span a {
    color: rgba(255,255,255,0.62) !important;
    text-decoration: none !important;
}

.wbg-main-wrapper .wbg-item span a:hover {
    color: rgba(255,255,255,0.7) !important;
}

/* Button container */
.wbg-main-wrapper .wbg-item .wbg-button-container {
    padding: 4px 11px 10px !important;
}

.wbg-main-wrapper .wbg-item a.wbg-btn {
    background: rgba(255,255,255,0.09) !important;
    border: 1px solid rgba(255,255,255,0.16) !important;
    border-radius: 6px !important;
    color: rgba(255,255,255,0.8) !important;
    display: inline-block !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    margin-top: 0 !important;
    padding: 6px 10px !important;
    text-decoration: none !important;
    transition: background 0.15s !important;
    width: auto !important;
}

.wbg-main-wrapper .wbg-item a.wbg-btn:hover {
    background: rgba(255,255,255,0.16) !important;
    color: #fff !important;
}

/* ── Pagination ────────────────────────────────── */
.wbg-pagination {
    margin-top: 32px !important;
    margin-bottom: 32px !important;
}

.wbg-pagination .page-numbers li {
    border: none !important;
    height: auto !important;
    line-height: 1 !important;
    width: auto !important;
}

.wbg-pagination .page-numbers li a.page-numbers {
    background: rgba(255,255,255,0.06) !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    border-radius: 7px !important;
    color: rgba(255,255,255,0.65) !important;
    display: inline-block !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 8px 14px !important;
    text-decoration: none !important;
    transition: background 0.15s, color 0.15s !important;
    width: auto !important;
}

.wbg-pagination .page-numbers li a.page-numbers:hover {
    background: rgba(255,255,255,0.12) !important;
    color: #fff !important;
}

div.wbg-pagination > ul.page-numbers > li > span.page-numbers.current {
    background: #2563eb !important;
    border: 1px solid #2563eb !important;
    border-radius: 7px !important;
    color: #fff !important;
    display: inline-block !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 8px 14px !important;
}

div.wbg-pagination > ul.page-numbers > li:hover {
    background: none !important;
}

/* No books found */
p.wbg-no-books-found {
    color: rgba(255,255,255,0.4) !important;
    font-weight: 400 !important;
}

/* ── Mobile ────────────────────────────────────── */
@media only screen and (max-width: 767px) {
    .wbg-search-container {
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
    }

    .wbg-search-container .wbg-search-item {
        width: 100% !important;
    }
}
