/* --- View toggle bar --- */
.bls-catalog-wrapper {
    margin-bottom: 20px;
}

.bls-view-toggle {
    display: inline-flex;
    border-radius: 999px;
    background: #f2f2f2;
    padding: 2px;
    margin-bottom: 15px;
}

.bls-toggle-btn {
    border: none;
    background: transparent;
    padding: 6px 14px;
    font-size: 14px;
    border-radius: 999px;
    cursor: pointer;
    color: #555;
    transition: background 0.15s ease, color 0.15s ease;
}

.bls-toggle-btn.bls-active {
    background: #ffffff;
    color: #111;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

/* --- Grid / Table view visibility --- */
.bls-view {
    display: none;
}

.bls-view.bls-active {
    display: block;
}

/* --- Table styling --- */
.bls-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
    font-size: 13px;
}

.bls-table thead {
    background: #fafafa;
    border-bottom: 1px solid #e0e0e0;
}

.bls-table th,
.bls-table td {
    padding: 8px 10px;
    text-align: left;
    border-bottom: 1px solid #f0f0f0;
    white-space: nowrap;
}

.bls-table th:first-child,
.bls-table td:first-child {
    padding-left: 0;
}

.bls-table th:last-child,
.bls-table td:last-child {
    padding-right: 0;
}

.bls-table tbody tr:hover {
    background: #f9f9f9;
}

.bls-table th {
    font-weight: 600;
    color: #444;
    position: relative;
}

/* Sort indicators */
.bls-table th.bls-sorted-asc::after,
.bls-table th.bls-sorted-desc::after {
    content: '';
    border: 4px solid transparent;
    position: absolute;
    right: 4px;
    top: 50%;
    transform: translateY(-50%);
}

.bls-table th.bls-sorted-asc::after {
    border-bottom-color: #999;
}

.bls-table th.bls-sorted-desc::after {
    border-top-color: #999;
}

/* Price columns highlight slightly */
.bls-table td:nth-child(11),
.bls-table td:nth-child(12) {
    font-weight: 600;
    color: #222;
}

/* Certificate link & add to cart cell */
.bls-table td a {
    color: #005999;
    text-decoration: none;
}

.bls-table td a:hover {
    text-decoration: underline;
}

/* WooCommerce add-to-cart button inside table */
.bls-table .add_to_cart_button,
.bls-table .single_add_to_cart_button {
    font-size: 12px;
    padding: 6px 10px;
    border-radius: 6px;
    background: #005999 !important;
    color: #fff !important;
    border: none;
    white-space: nowrap;
}

.bls-table .add_to_cart_button:hover,
.bls-table .single_add_to_cart_button:hover {
    background: #003f72 !important;
}

/* Pagination under catalog */
.bls-pagination {
    margin-top: 15px;
}
