/* Compare page — same L/R margins as wishlist via shared .vitsa-wishlist-page__* shell */
.vitsa-compare-page {
    --vitsa-compare-label-width: 8rem;
    --vitsa-compare-col-width: 14rem;
    padding: 0 0 2.5rem !important;
}

body.vitsa-compare-page-active .vitsa-compare-mobile,
.vitsa-compare-page .vitsa-compare-mobile {
    display: none !important;
}

/* Same container gutters as wishlist (head + table each in .container-shop) */
body.vitsa-compare-page-active .vitsa-wishlist-page__head.container-shop,
body.vitsa-compare-page-active .vitsa-compare-page__head.container-shop,
body.vitsa-compare-page-active .vitsa-compare-page > .container-shop {
    max-width: 1650px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: clamp(1.25rem, 3vw, 3.5rem) !important;
    padding-right: clamp(1.25rem, 3vw, 3.5rem) !important;
    box-sizing: border-box !important;
}

@media (max-width: 639px) {
    body.vitsa-compare-page-active .vitsa-wishlist-page__head.container-shop,
    body.vitsa-compare-page-active .vitsa-compare-page__head.container-shop,
    body.vitsa-compare-page-active .vitsa-compare-page > .container-shop {
        padding-left: calc(clamp(1.25rem, 3vw, 3.5rem) + 0.5rem) !important;
        padding-right: calc(clamp(1.25rem, 3vw, 3.5rem) + 0.5rem) !important;
    }
}

/* Shared cluster with wishlist — identical width / centering */
.vitsa-compare-page__cluster,
body.vitsa-compare-page-active .vitsa-wishlist-page__cluster {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

@media (min-width: 1280px) {
    body.vitsa-compare-page-active .vitsa-wishlist-page__cluster,
    body.vitsa-compare-page-active .vitsa-compare-page__cluster {
        width: calc(4 * ((100% - 5rem) / 5) + 3.75rem) !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

@media (min-width: 992px) {
    body.vitsa-compare-page-active,
    .vitsa-compare-page {
        --vitsa-compare-label-width: 8rem;
        /* 4 product slots inside the wishlist-sized cluster */
        --vitsa-compare-col-width: calc((100% - var(--vitsa-compare-label-width)) / 4);
    }

    body.vitsa-compare-page-active .vitsa-wishlist-page__cluster,
    body.vitsa-compare-page-active .vitsa-compare-page__cluster {
        --vitsa-compare-col-width: calc((100% - var(--vitsa-compare-label-width)) / 4);
    }
}

.vitsa-compare-page .vitsa-compare-page__heading,
body.vitsa-compare-page-active .vitsa-compare-page__heading {
    margin: 0 0 1.5rem !important;
    font-weight: 700 !important;
    color: hsl(150, 15%, 12%) !important;
    text-align: left !important;
}

.vitsa-compare-page .vitsa-compare-page__breadcrumb,
body.vitsa-compare-page-active .vitsa-compare-page__breadcrumb {
    text-align: left !important;
}

.vitsa-compare-page .vitsa-compare-page__table-wrap {
    width: max-content;
    max-width: 100%;
    background: #fff;
    border: 1px solid hsl(150, 12%, 88%);
    border-radius: 0.75rem;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
    overflow: hidden;
}

.vitsa-compare-page .vitsa-compare-page__empty-wrap {
    width: 100%;
    max-width: 100%;
    text-align: center;
    padding: 3rem 1rem;
    background: #fff;
    border: 1px solid hsl(150, 12%, 88%);
    border-radius: 0.75rem;
    box-sizing: border-box;
}

.vitsa-compare-page .vitsa-compare-page__scroll {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
}

/* Delete — top-right corner of product card (old design) */
.vitsa-compare-page .vitsa-compare-table__product-card {
    position: relative !important;
}

.vitsa-compare-page .vitsa-compare-table__remove {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    z-index: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 2rem !important;
    height: 2rem !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid hsl(150, 12%, 86%) !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: hsl(150, 8%, 42%) !important;
    cursor: pointer !important;
}

.vitsa-compare-page .vitsa-compare-table__remove:hover {
    color: hsl(0, 55%, 45%) !important;
    border-color: hsl(0, 55%, 75%) !important;
    background: hsl(0, 70%, 97%) !important;
}

.vitsa-compare-page .vitsa-compare-table__image-link {
    padding-right: 2.25rem !important;
}

/* Table sized to product count — does NOT stretch a single card across the row */
.vitsa-compare-page .vitsa-compare-page__scroll .vitsa-compare-table,
.vitsa-compare-page .vitsa-compare-table {
    width: calc(
        var(--vitsa-compare-label-width) + (var(--vitsa-compare-col-width) * var(--vitsa-compare-cols, 1))
    ) !important;
    min-width: calc(
        var(--vitsa-compare-label-width) + (var(--vitsa-compare-col-width) * var(--vitsa-compare-cols, 1))
    ) !important;
    max-width: none !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
    margin: 0 !important;
}

.vitsa-compare-page .vitsa-compare-table col.vitsa-compare-table__label-col {
    width: var(--vitsa-compare-label-width) !important;
}

.vitsa-compare-page .vitsa-compare-table col.vitsa-compare-table__data-col {
    width: var(--vitsa-compare-col-width) !important;
}

.vitsa-compare-page .vitsa-compare-table tr {
    display: table-row !important;
}

.vitsa-compare-page .vitsa-compare-table th,
.vitsa-compare-page .vitsa-compare-table td {
    display: table-cell !important;
    text-align: left !important;
    vertical-align: top !important;
    box-sizing: border-box !important;
    font-size: 0.75rem !important;
    line-height: 1.45 !important;
}

.vitsa-compare-page .vitsa-compare-table th.vitsa-compare-table__label {
    position: sticky;
    left: 0;
    z-index: 3;
    width: var(--vitsa-compare-label-width) !important;
    min-width: var(--vitsa-compare-label-width) !important;
    max-width: var(--vitsa-compare-label-width) !important;
    padding: 0.85rem 0.75rem !important;
    background: hsl(150, 10%, 96%) !important;
    box-shadow: 1px 0 0 hsl(150, 12%, 90%);
    font-weight: 600 !important;
    font-size: 0.75rem !important;
    color: hsl(150, 12%, 22%) !important;
}

.vitsa-compare-page .vitsa-compare-table td.vitsa-compare-table__col {
    width: var(--vitsa-compare-col-width) !important;
    min-width: var(--vitsa-compare-col-width) !important;
    max-width: var(--vitsa-compare-col-width) !important;
    padding: 0.85rem 0.85rem !important;
    overflow: hidden !important;
    isolation: isolate;
}

.vitsa-compare-page .vitsa-compare-table__product-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    text-align: left !important;
}

.vitsa-compare-page .vitsa-compare-table__remove-row {
    display: none !important;
}

.vitsa-compare-page .vitsa-compare-table__image-link {
    display: block !important;
    width: 100% !important;
    max-width: 8.5rem !important;
    margin: 0 !important;
    padding-right: 2.25rem !important;
    box-sizing: border-box !important;
}

.vitsa-compare-page .vitsa-compare-table__image,
.vitsa-compare-page .vitsa-compare-table .img-fluid-eq img {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    max-height: 8.5rem !important;
    height: auto !important;
    object-fit: contain !important;
}

.vitsa-compare-page .vitsa-compare-table__product-name {
    margin: 0.4rem 0 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

.vitsa-compare-page .vitsa-compare-table__product-name a {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow: hidden !important;
    color: #111 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.vitsa-compare-page .vitsa-compare-table__stock {
    display: inline-block !important;
    margin-top: 0.3rem;
    font-size: 0.6875rem !important;
}

.vitsa-compare-page .vitsa-compare-table__value,
.vitsa-compare-page .vitsa-compare-table__empty-value {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    text-align: left !important;
    font-size: 0.75rem !important;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.vitsa-compare-page .vitsa-compare-table__description-text {
    max-width: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    overflow-wrap: anywhere;
    word-break: break-word;
    font-size: 0.75rem !important;
    line-height: 1.45 !important;
    color: hsl(150, 8%, 35%);
}

.vitsa-compare-page .vitsa-compare-table__description-text,
.vitsa-compare-page .vitsa-compare-table__description-text p,
.vitsa-compare-page .vitsa-compare-table__description-text li,
.vitsa-compare-page .vitsa-compare-table__description-text span {
    text-align: left !important;
    font-size: 0.75rem !important;
}

/* Price */
.vitsa-compare-page .vitsa-compare-table__price,
.vitsa-compare-page .vitsa-compare-table__price-wrap,
.vitsa-compare-page .vitsa-compare-table__price .product-price,
.vitsa-compare-page .vitsa-compare-table__price .vitsa-product-card__price {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    overflow: hidden !important;
    position: relative;
    z-index: 1;
}

.vitsa-compare-page .vitsa-compare-table__price .product-price-sale:not(.d-none),
.vitsa-compare-page .vitsa-compare-table__price .product-price-original:not(.d-none) {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: baseline !important;
    gap: 0.2rem 0.35rem !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: normal !important;
}

.vitsa-compare-page .vitsa-compare-table__price .product-price-sale.d-none,
.vitsa-compare-page .vitsa-compare-table__price .product-price-original.d-none {
    display: none !important;
}

.vitsa-compare-page .vitsa-compare-table__price .product-price-sale:not(.d-none) ins,
.vitsa-compare-page .vitsa-compare-table__price .product-price-sale:not(.d-none) del,
.vitsa-compare-page .vitsa-compare-table__price .product-price-sale:not(.d-none) .product-price-discount {
    flex: 0 1 auto !important;
    max-width: 100% !important;
    white-space: nowrap !important;
}

.vitsa-compare-page .vitsa-compare-table__price ins {
    text-decoration: none !important;
}

.vitsa-compare-page .vitsa-compare-table__price ins .amount,
.vitsa-compare-page .vitsa-compare-table__price ins .bb-product-price-text,
.vitsa-compare-page .vitsa-compare-table__price .product-price-original:not(.d-none) .amount,
.vitsa-compare-page .vitsa-compare-table__price .product-price-original:not(.d-none) .bb-product-price-text {
    font-size: 0.8125rem !important;
    font-weight: 700 !important;
    color: var(--vitsa-sell-price, #111) !important;
    white-space: nowrap !important;
}

.vitsa-compare-page .vitsa-compare-table__price del .amount,
.vitsa-compare-page .vitsa-compare-table__price del .bb-product-price-text-old {
    font-size: 0.6875rem !important;
    font-weight: 500 !important;
    color: hsl(150, 8%, 42%) !important;
    text-decoration: line-through !important;
    white-space: nowrap !important;
}

.vitsa-compare-page .vitsa-compare-table__price .product-price-discount {
    display: inline-block !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0.1rem 0.3rem !important;
    border-radius: 0.25rem !important;
    background: hsl(0, 85%, 96%) !important;
    color: #e53935 !important;
    font-size: 0.625rem !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
}

.vitsa-compare-page .vitsa-compare-table__cart,
.vitsa-compare-page .vitsa-compare-table__cart .cart-form,
.vitsa-compare-page .vitsa-compare-table__cart .product-button {
    text-align: left !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* CTA — match site product-card green (#72A36B), not darker #367C2B */
.vitsa-compare-page .vitsa-compare-table__cart .btn-primary,
.vitsa-compare-page .vitsa-compare-table__cart .add-to-cart-button,
.vitsa-compare-page .vitsa-compare-table__cart .js-quick-shop-button,
.vitsa-compare-page .vitsa-compare-page__shop-link.btn-primary {
    width: 100% !important;
    max-width: 100% !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    margin: 0 !important;
    min-height: 2.25rem;
    padding: 0.55rem 0.75rem !important;
    border: none !important;
    border-radius: 0.375rem !important;
    background: var(--vitsa-cta, #367C2B) !important;
    color: #fff !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    box-shadow: none !important;
}

.vitsa-compare-page .vitsa-compare-page__shop-link.btn-primary {
    width: auto !important;
    max-width: none !important;
    min-width: 11rem;
    text-decoration: none !important;
}

.vitsa-compare-page .vitsa-compare-table__cart .btn-primary:hover:not(:disabled),
.vitsa-compare-page .vitsa-compare-table__cart .add-to-cart-button:hover:not(:disabled),
.vitsa-compare-page .vitsa-compare-table__cart .js-quick-shop-button:hover:not(:disabled),
.vitsa-compare-page .vitsa-compare-page__shop-link.btn-primary:hover {
    background: var(--vitsa-cta-hover, #2F5E27) !important;
    border-color: var(--vitsa-cta-hover, #2F5E27) !important;
    color: #fff !important;
}

.vitsa-compare-page .vitsa-compare-table__cart .btn-primary:disabled,
.vitsa-compare-page .vitsa-compare-table__cart .add-to-cart-button:disabled,
.vitsa-compare-page .vitsa-compare-table__cart .js-quick-shop-button:disabled {
    opacity: 0.55;
    cursor: not-allowed;
}

.vitsa-compare-page .vitsa-compare-table__cart .add-to-cart-text {
    color: inherit !important;
}

.vitsa-compare-page .vitsa-compare-page__empty {
    margin: 0 0 1.25rem;
    color: hsl(150, 8%, 42%);
    font-size: 1rem;
}

@media (max-width: 991.98px) {
    .vitsa-compare-page,
    .vitsa-compare-page .vitsa-compare-table {
        --vitsa-compare-col-width: 12.5rem;
        --vitsa-compare-label-width: 4.725rem;
    }

    .vitsa-compare-page {
        padding-bottom: 1.5rem;
    }

    body.vitsa-compare-page-active .vitsa-compare-page__heading {
        font-size: 1.5rem !important;
        margin-bottom: 0.85rem !important;
    }

    .vitsa-compare-page .vitsa-compare-table col.vitsa-compare-table__label-col,
    .vitsa-compare-page .vitsa-compare-table th.vitsa-compare-table__label {
        width: 4.725rem !important;
        min-width: 4.725rem !important;
        max-width: 4.725rem !important;
        padding: 0.75rem 0.45rem !important;
        font-size: 0.6875rem !important;
    }

    .vitsa-compare-page .vitsa-compare-table td.vitsa-compare-table__col {
        padding: 0.75rem !important;
    }

    .vitsa-compare-page .vitsa-compare-table__image-link {
        max-width: 7rem !important;
    }

    .vitsa-compare-page .vitsa-compare-table__image,
    .vitsa-compare-page .vitsa-compare-table .img-fluid-eq img {
        max-height: 7rem !important;
    }

    .vitsa-compare-page .vitsa-compare-table__product-name a {
        font-size: 14px !important;
    }
}
