/* =========================================
   MODULE: PRODUCT PAGINATION
   Transforms the default Query Pagination 
   block into the custom Vortex UI natively.
   ========================================= */

/* 1. MAIN CONTAINER */
.wp-block-query-pagination {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center;
    justify-content: center;
    gap: 8px !important;
    margin: 40px auto 0 !important;
    margin-top: 40px !important;
    margin-bottom: 0 !important;
    width: max-content !important;
    max-width: 100%;
}

/* 2. NUMBERS WRAPPER */
.wp-block-query-pagination-numbers {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center;
    gap: 8px !important;
}

/* 3. UNIVERSAL ITEM STYLING */
.wp-block-query-pagination .page-numbers,
.wp-block-query-pagination-previous,
.wp-block-query-pagination-next {
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 10px;
    border-radius: 12px;

    background-color: transparent;
    color: var(--md-sys-color-on-surface);

    font-size: 1rem;
    font-weight: 700;
    text-decoration: none !important;
    box-sizing: border-box;

    transition: background-color 0.2s ease, color 0.2s ease;
}

/* 4. ACTIVE STATE (Current Page) */
.wp-block-query-pagination .page-numbers.current {
    background-color: var(--md-sys-color-primary) !important;
    color: var(--md-sys-color-on-primary) !important;
    pointer-events: none;
    border-radius: 12px;
}

/* 5. HOVER STATE */
.wp-block-query-pagination .page-numbers:not(.current):not(.dots):hover,
.wp-block-query-pagination-previous:hover,
.wp-block-query-pagination-next:hover {
    background-color: var(--md-sys-color-surface-container-high) !important;
    color: var(--md-sys-color-on-surface);
}

/* 6. ELLIPSIS (Dots) */
.wp-block-query-pagination .page-numbers.dots {
    min-width: auto;
    padding: 0 4px;
    pointer-events: none;
    background: transparent !important;
    color: var(--md-sys-color-on-surface-variant);
}

/* 7. TEXT-TO-ARROW REPLACEMENT */
.wp-block-query-pagination-previous,
.wp-block-query-pagination-next {
    font-size: 0 !important;
    position: relative;
    padding: 0 !important;
    width: 40px;
}

/* Base CSS Chevron */
.wp-block-query-pagination-previous::after,
.wp-block-query-pagination-next::after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid var(--md-sys-color-on-surface);
    position: absolute;
    top: 50%;
    left: 50%;
    transition: inherit;
}

/* Previous Arrow (<) */
.wp-block-query-pagination-previous::after {
    border-left: 2px solid var(--md-sys-color-on-surface);
    transform: translate(-30%, -50%) rotate(-45deg);
}

/* Next Arrow (>) */
.wp-block-query-pagination-next::after {
    border-right: 2px solid var(--md-sys-color-on-surface);
    transform: translate(-70%, -50%) rotate(45deg);
}
