/**
 * Bulbasoft Tuning — пресеты пагинации каталога WooCommerce.
 * Цвета и размеры задаются CSS-переменными из настроек (inline).
 *
 * Важно: ul.page-numbers — обёртка списка, не кнопка. Стили кнопок только на a/span.
 */

.bsfttune-pagination-styling .woocommerce-pagination {
    margin-top: 24px;
    margin-bottom: 8px;
    clear: both;
}

.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    box-shadow: none;
    outline: none;
}

.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers:hover,
.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers:focus,
.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers:focus-within {
    background: transparent;
    border: none;
    box-shadow: none;
    outline: none;
}

.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers li {
    display: inline-flex;
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    box-shadow: none;
    outline: none;
}

.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers li:hover,
.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers li:focus,
.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers li:focus-within {
    background: transparent;
    border: none;
    box-shadow: none;
    outline: none;
}

.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers a.page-numbers,
.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers span.page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 12px;
    box-sizing: border-box;
    text-decoration: none;
    line-height: 1;
}

.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers a.page-numbers:hover,
.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers a.page-numbers:focus,
.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers a.page-numbers:focus-visible,
.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers span.page-numbers:hover,
.bsfttune-pagination-styling .woocommerce-pagination ul.page-numbers span.page-numbers:focus {
    outline: none;
    box-shadow: none;
}

/* 1. Classic */
.bsfttune-pagination-preset-classic .woocommerce-pagination ul.page-numbers {
    gap: var(--bsfttune-pg-gap, 6px);
}

.bsfttune-pagination-preset-classic .woocommerce-pagination ul.page-numbers a.page-numbers,
.bsfttune-pagination-preset-classic .woocommerce-pagination ul.page-numbers span.page-numbers {
    font-size: var(--bsfttune-pg-font-size, 14px);
    min-width: var(--bsfttune-pg-item-size, 38px);
    height: var(--bsfttune-pg-item-size, 38px);
    color: var(--bsfttune-pg-text-color, #333);
    background: var(--bsfttune-pg-bg-color, #fff);
    border: var(--bsfttune-pg-border-width, 1px) solid var(--bsfttune-pg-border-color, #d0d0d0);
    border-radius: var(--bsfttune-pg-border-radius, 4px);
}

.bsfttune-pagination-preset-classic .woocommerce-pagination ul.page-numbers span.page-numbers.current {
    color: var(--bsfttune-pg-current-text-color, #fff);
    background: var(--bsfttune-pg-current-bg-color, #555);
    border-color: var(--bsfttune-pg-current-border-color, #555);
}

.bsfttune-pagination-preset-classic .woocommerce-pagination ul.page-numbers a.page-numbers:hover,
.bsfttune-pagination-preset-classic .woocommerce-pagination ul.page-numbers a.page-numbers:focus {
    color: var(--bsfttune-pg-hover-text-color, #111);
    background: var(--bsfttune-pg-hover-bg-color, #f5f5f5);
    border-color: var(--bsfttune-pg-hover-border-color, #b8b8b8);
}

.bsfttune-pagination-preset-classic .woocommerce-pagination ul.page-numbers span.page-numbers.dots {
    border-color: transparent;
    background: transparent;
    min-width: auto;
    padding: 0 4px;
}

/* 2. Pills */
.bsfttune-pagination-preset-pills .woocommerce-pagination ul.page-numbers {
    gap: var(--bsfttune-pg-gap, 6px);
}

.bsfttune-pagination-preset-pills .woocommerce-pagination ul.page-numbers a.page-numbers,
.bsfttune-pagination-preset-pills .woocommerce-pagination ul.page-numbers span.page-numbers {
    font-size: var(--bsfttune-pg-font-size, 14px);
    min-width: var(--bsfttune-pg-item-size, 38px);
    height: var(--bsfttune-pg-item-size, 38px);
    color: var(--bsfttune-pg-text-color, #333);
    background: var(--bsfttune-pg-bg-color, #f0f0f0);
    border: 1px solid transparent;
    border-radius: 999px;
}

.bsfttune-pagination-preset-pills .woocommerce-pagination ul.page-numbers span.page-numbers.current {
    color: var(--bsfttune-pg-current-text-color, #fff);
    background: var(--bsfttune-pg-current-bg-color, #2271b1);
    border-color: var(--bsfttune-pg-current-bg-color, #2271b1);
    box-shadow: 0 2px 6px rgba(34, 113, 177, .25);
}

.bsfttune-pagination-preset-pills .woocommerce-pagination ul.page-numbers a.page-numbers:hover,
.bsfttune-pagination-preset-pills .woocommerce-pagination ul.page-numbers a.page-numbers:focus {
    color: var(--bsfttune-pg-hover-text-color, #111);
    background: var(--bsfttune-pg-hover-bg-color, #e4e4e4);
}

.bsfttune-pagination-preset-pills .woocommerce-pagination ul.page-numbers span.page-numbers.dots {
    background: transparent;
    min-width: auto;
    padding: 0 4px;
}

/* 3. Minimal */
.bsfttune-pagination-preset-minimal .woocommerce-pagination ul.page-numbers {
    gap: var(--bsfttune-pg-gap, 2px);
}

.bsfttune-pagination-preset-minimal .woocommerce-pagination ul.page-numbers a.page-numbers,
.bsfttune-pagination-preset-minimal .woocommerce-pagination ul.page-numbers span.page-numbers {
    font-size: var(--bsfttune-pg-font-size, 14px);
    min-width: auto;
    height: auto;
    padding: 6px 10px 8px;
    color: var(--bsfttune-pg-text-color, #666);
    background: transparent;
    border: none;
    border-radius: 0;
    border-bottom: 2px solid transparent;
}

.bsfttune-pagination-preset-minimal .woocommerce-pagination ul.page-numbers span.page-numbers.current {
    color: var(--bsfttune-pg-current-text-color, #2271b1);
    font-weight: 600;
    border-bottom-color: var(--bsfttune-pg-current-accent-color, #2271b1);
}

.bsfttune-pagination-preset-minimal .woocommerce-pagination ul.page-numbers a.page-numbers:hover,
.bsfttune-pagination-preset-minimal .woocommerce-pagination ul.page-numbers a.page-numbers:focus {
    color: var(--bsfttune-pg-hover-text-color, #111);
    border-bottom-color: var(--bsfttune-pg-hover-accent-color, #ccc);
}

.bsfttune-pagination-preset-minimal .woocommerce-pagination ul.page-numbers span.page-numbers.dots {
    padding: 6px 4px;
}

/* 4. Compact */
.bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers {
    gap: var(--bsfttune-pg-gap, 8px);
}

.bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers a.page-numbers.prev,
.bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers a.page-numbers.next {
    min-width: var(--bsfttune-pg-nav-min-width, 108px);
    height: var(--bsfttune-pg-nav-height, 42px);
    padding: 0 16px;
    font-size: var(--bsfttune-pg-font-size, 14px);
    font-weight: 600;
    color: var(--bsfttune-pg-nav-text-color, #222);
    background: var(--bsfttune-pg-nav-bg-color, #fff);
    border: 1px solid var(--bsfttune-pg-nav-border-color, #ccc);
    border-radius: var(--bsfttune-pg-border-radius, 6px);
}

.bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers a.page-numbers.prev:hover,
.bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers a.page-numbers.next:hover,
.bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers a.page-numbers.prev:focus,
.bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers a.page-numbers.next:focus {
    background: var(--bsfttune-pg-nav-hover-bg-color, #f7f7f7);
    border-color: var(--bsfttune-pg-nav-hover-border-color, #999);
}

.bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers a.page-numbers:not(.prev):not(.next),
.bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers span.page-numbers:not(.prev):not(.next):not(.current):not(.dots) {
    min-width: var(--bsfttune-pg-page-size, 32px);
    height: var(--bsfttune-pg-page-size, 32px);
    padding: 0 8px;
    font-size: calc(var(--bsfttune-pg-font-size, 14px) * 0.92);
    color: var(--bsfttune-pg-text-color, #666);
    background: transparent;
    border: 1px solid transparent;
    border-radius: 4px;
}

.bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers span.page-numbers.current {
    min-width: var(--bsfttune-pg-current-size, 36px);
    height: var(--bsfttune-pg-current-size, 36px);
    color: var(--bsfttune-pg-current-text-color, #fff);
    background: var(--bsfttune-pg-current-bg-color, #333);
    border: 1px solid var(--bsfttune-pg-current-bg-color, #333);
    border-radius: var(--bsfttune-pg-border-radius, 6px);
    font-weight: 600;
}

.bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers span.page-numbers.dots {
    min-width: auto;
    height: auto;
    padding: 0 2px;
    border: none;
    background: transparent;
}

@media (max-width: 480px) {
    .bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers a.page-numbers:not(.prev):not(.next),
    .bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers span.page-numbers:not(.prev):not(.next):not(.current):not(.dots) {
        display: none;
    }

    .bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers span.page-numbers.dots {
        display: none;
    }

    .bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers a.page-numbers.prev,
    .bsfttune-pagination-preset-compact .woocommerce-pagination ul.page-numbers a.page-numbers.next {
        flex: 1 1 auto;
        min-width: 0;
    }
}

/* 5. Outline */
.bsfttune-pagination-preset-outline .woocommerce-pagination ul.page-numbers {
    gap: var(--bsfttune-pg-gap, 6px);
}

.bsfttune-pagination-preset-outline .woocommerce-pagination ul.page-numbers a.page-numbers,
.bsfttune-pagination-preset-outline .woocommerce-pagination ul.page-numbers span.page-numbers {
    font-size: var(--bsfttune-pg-font-size, 14px);
    min-width: var(--bsfttune-pg-item-size, 38px);
    height: var(--bsfttune-pg-item-size, 38px);
    color: var(--bsfttune-pg-text-color, #333);
    background: transparent;
    border: var(--bsfttune-pg-border-width, 2px) solid var(--bsfttune-pg-border-color, #555);
    border-radius: var(--bsfttune-pg-border-radius, 6px);
}

.bsfttune-pagination-preset-outline .woocommerce-pagination ul.page-numbers span.page-numbers.current {
    color: var(--bsfttune-pg-current-text-color, #fff);
    background: var(--bsfttune-pg-current-bg-color, #222);
    border-color: var(--bsfttune-pg-current-border-color, #222);
}

.bsfttune-pagination-preset-outline .woocommerce-pagination ul.page-numbers a.page-numbers:hover,
.bsfttune-pagination-preset-outline .woocommerce-pagination ul.page-numbers a.page-numbers:focus {
    color: var(--bsfttune-pg-hover-text-color, #fff);
    background: var(--bsfttune-pg-hover-bg-color, #555);
}

.bsfttune-pagination-preset-outline .woocommerce-pagination ul.page-numbers span.page-numbers.dots {
    border-color: transparent;
    background: transparent;
    min-width: auto;
    padding: 0 4px;
}
