:root {
    
    --tatabundle-colors-best-seller: "#FF3131";

    --tatabundle-colors-border-radius: 1px;

    --tatabundle-most-popular-badge-right: 5px;
    --tatabundle-padding-offer: 30px 0 10px 0;

    --tatabundle-gift-label-font-size: 10px;
    --tatabundle-gift-label-font-weight: 500;
    /*
    --tatabundle-gift-border: dashed;
    --tatabundle-gift-border-color: #aaaaaa */
}

.tatabundle-box {
    width: 100% !important;
    letter-spacing: normal !important;
    line-height: normal !important;
}

.tatabundle-box .tatabundle-title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: var(--tatabundle-title-margin-bottom);
    color: var(--tb-qty-headerTitle-color);
    font-size: var(--tb-qty-headerTitle-font-size);
    font-weight: var(--tb-qty-headerTitle-font-weight);
}

.tatabundle-box .tatabundle-title .before,
.tatabundle-box .tatabundle-title .after {
    background-color: var(--tb-qty-before-after-background-color);
    height: 2px;
    flex-grow: 1;
    min-width: 20px;
    display: block;
}

.tatabundle-box .tatabundle-title .after {
    background-color: var(--tb-qty-before-after-background-color);
    content: "";
}

.tatabundle-box .tatabundle-subtitle {
    color: var(--tb-qty-subtitle-color);
    font-size: var(--tb-qty-subtitle-font-size);
    font-weight: var(--tb-qty-subtitle-weight);
    padding: 0 0 20px 0;
    text-align: center;
}


.tatabundle-option {
    background-color: var(--tb-qty-option-bg-color, #ffffff);
    border: var(--tb-qty-option-border, 2px solid #000000);
    padding-top: var(--tb-qty-option-padding-top, 5px);
    padding-bottom: 5px;
}

.tatabundle-option-overlay{
    left: '0';
    right: '0';
    bottom: '0';
    background-color: 'rgba(250,250,250,0.7)';
    z-index: 10;
    height: '100%';
    position: 'absolute';
    display: 'flex';
    justify-content: 'center';
    align-items: 'center';
}


.tatabundle-option-overlay .tatabundle-sold-out{
    background-color: var(--tb-qty-sold-out-bg, #000);
    color: var(--tb-qty-sold-out-color, #fff);
    border: var(--tb-qty-sold-out-border, 0px);
    padding: 9px 14px;
    border-radius: var(--tb-qty-sold-out-border-radius, 12px);
    cursor: not-allowed;
    font-size: var(--tb-qty-sold-out-font-size, 12px);
    font-weight: var(--tb-qty-sold-out-font-weight, normal);
    z-index: 10;
}


.tatabundle-options-horizontal .tatabundle-best-seller-left {

}
/* Vertical Options */

.tatabundle-box .tatabundle-options-vertical {
    display: flex !important;
    gap: 10px;
    margin-bottom: 20px;
}

.tatabundle-options-vertical .tatabundle-option-first-column{
    margin-top: 5px;
    margin-bottom: 10px !important;
}

.tatabundle-options-vertical .tatabundle-option {
    flex-grow: 1;
    flex-basis: 0;
    text-align: center;
    position: relative;
}

.tatabundle-options-vertical .tatabundle-option-checkbox {
    margin: 7px 0;
}

.tatabundle-options-vertical .tatabundle-option-thumbnail {
    align-content: start;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.tatabundle-options-vertical .tatabundle-option-thumbnail img {
    max-width: 50px;
    max-height: 50px;
}

.tatabundle-options-vertical .tatabundle-option-title {
    /* font-weight: var(--tatabundle-title-weight); */
    /* font-size: var(--tatabundle-title-font-size); */
    /* color: var(--tatabundle-title-color); */
    margin: 7px 0;
    display: unset !important;
}

.tatabundle-options-vertical .tatabundle-option-subtitle {
    /* color: var(--tatabundle-subtitle-color); */
    /* font-size: var(--tatabundle-subtitle-font-size); */
    /* font-weight: var(--tatabundle-subtitle-weight); */
    margin: 7px 0;
}

.tatabundle-options-vertical .tatabundle-option-single-price {
    /* font-size: var(--tatabundle-price-font-size);
    font-weight: var(--tatabundle-price-weight);
    color: var(--tatabundle-price-color); */
    margin: 7px 0;
}

.tatabundle-options-vertical .tatabundle-option-new-price {
    /* font-size: var(--tatabundle-price-font-size);
    font-weight: var(--tatabundle-price-weight);
    color: var(--tatabundle-price-color); */
    margin: 7px 0;
}

.tatabundle-options-vertical .tatabundle-option-old-price {
    text-decoration: line-through;
    /* font-size: var(--tatabundle-compare-at-price-font-size);
    color: var(--tatabundle-compare-at-price-color);
    font-weight: var(--tatabundle-compare-at-price-weight); */
    margin: 7px 0;
}

.tatabundle-options-vertical .tatabundle-option-active {
    /* background-color: var(--tatabundle-colors-selected-bg); */
    /* border-color: var(--tatabundle-colors-selected-border); */
}

.tatabundle-options-vertical {
    .tatabundle-best-seller-box-block {
        position: absolute;
        z-index: 1;
        top: -9px;
        width: 100%;
        right: 0px
            /* left: calc(50%);
        transform: translateX(-50%); */
    }

    .tatabundle-best-seller-box-sticker {
        position: absolute;
        z-index: 1;
        top: -9px;
        left: calc(50%);
        transform: translateX(-50%);
    }

    .tatabundle-best-seller-box-model {
        width: 103%;
        position: absolute;
        z-index: 1;
        top: -2px;
        left: calc(50%);
        transform: translateX(-50%);
    }

    .tatabundle-best-seller-box-left {
        left: calc(0%);
        position: absolute;
        z-index: 1;
        top: -25px;
    }
}

.tatabundle-options-vertical .tatabundle-best-seller-block {
    margin: 0 8px;
    padding: 2px 20px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    /* color: var(--tatabundle-best-seller-text-color);
    font-size: var(--tatabundle-best-seller-text-font-size);
    font-weight: var(--tatabundle-best-seller-text-weight); */
    /* background-color: var(--tatabundle-colors-best-seller); */
}

.tatabundle-options-vertical .tatabundle-best-seller-block:before,
.tatabundle-options-vertical .tatabundle-best-seller-block:after {
    display: block;
    position: absolute;
    top: 0;
    width: 0;
    height: 0;
    content: "";
    border-bottom-width: 8px;
    border-bottom-style: solid;
    border-bottom-color: transparent;
    filter: brightness(0.7);
}

.tatabundle-options-vertical .tatabundle-best-seller-block:before {
    left: 0;
    border-left: 8px solid transparent;
    border-bottom-color: var(--tatabundle-colors-best-seller);
}

.tatabundle-options-vertical .tatabundle-best-seller-block:after {
    right: 0;
    border-right: 8px solid transparent;
    border-bottom-color: var(--tatabundle-colors-best-seller);
}

.tatabundle-options-vertical .tatabundle-best-seller-sticker {
    position: relative;
    right: -15px;
    transform: rotate(7deg);
    padding: 4px 10px;
    border-radius: 5px;
    /* color: var(--tatabundle-best-seller-text-color);
    font-size: var(--tatabundle-best-seller-text-font-size);
    font-weight: var(--tatabundle-best-seller-text-weight); */
    /* background-color: var(--tatabundle-colors-best-seller); */
}

.tatabundle-options-vertical .tatabundle-best-seller-model {
    padding: 4px 10px;
    /* border-radius: var(--tatabundle-colors-border-radius) var(--tatabundle-colors-border-radius) 0 0; */
    /* color: var(--tatabundle-best-seller-text-color);
    font-size: var(--tatabundle-best-seller-text-font-size);
    font-weight: var(--tatabundle-best-seller-text-weight); */
    /* background-color: var(--tatabundle-colors-best-seller); */
}

.tatabundle-options-vertical .tatabundle-best-seller-left {
    padding: 4px 10px;
    /* border-radius: var(--tatabundle-colors-border-radius) var(--tatabundle-colors-border-radius) 0 0; */
    /* color: var(--tatabundle-best-seller-text-color);
    font-size: var(--tatabundle-best-seller-text-font-size);
    font-weight: var(--tatabundle-best-seller-text-weight); */
    /* background-color: var(--tatabundle-colors-best-seller); */
}

.tatabundle-options-vertical .tatabundle-label-inside {
    padding: 3px 5px;
    margin: 5px 5px;
    width: 90%
    /* color: var(--tatabundle-label-text-color);
    font-size: var(--tatabundle-label-text-font-size);
    font-weight: var(--tatabundle-label-text-weight); */
    /* background-color: var(--tatabundle-colors-bg-label); */
}

.tatabundle-options-vertical .tatabundle-label-right_of_title {
    padding: 3px 5px;
    /* margin: 5px 5px; */
    width: 90%
    /* color: var(--tatabundle-label-text-color);
    font-size: var(--tatabundle-label-text-font-size);
    font-weight: var(--tatabundle-label-text-weight); */
    /* background-color: var(--tatabundle-colors-bg-label); */
}

.tatabundle-options-vertical .tatabundle-label-outside {
    left: 0px;
    position: absolute;
    bottom: 0;
    /* color: var(--tatabundle-label-text-color);
    font-size: var(--tatabundle-label-text-font-size);
    font-weight: var(--tatabundle-label-text-weight); */
    /* background-color: var(--tatabundle-colors-bg-label); */
    /* border-radius: 0 0 var(--tatabundle-colors-border-radius) var(--tatabundle-colors-border-radius); */
    width: 100%;
}

/* Horizontal options */

.tatabundle-box .tatabundle-options-horizontal {
    display: block;
}

.tatabundle-options-horizontal .tatabundle-option {
    /* border: 2px solid var(--tatabundle-colors-border); */
    border-radius: var(--tatabundle-colors-border-radius) !important;
    /* background-color: var(--tatabundle-colors-bg); */
    margin-bottom: 10px;
    padding: 20px;
    position: relative;
    /* overflow: hidden; */
}
.tatabundle-options-horizontal .tatabundle-option:has(.tatabundle-upsells) .tatabundle-option-details{
    padding: 20px !important;
}
.tatabundle-options-horizontal .tatabundle-option:has(.tatabundle-upsells){
    padding: 0px !important;
}

.tatabundle-options-horizontal .tatabundle-option-details {
    display: flex;
    padding: 5px 5px 0 5px;
    /* align-items: center; */
    /* align-items: baseline; */
}
.tatabundle-options-horizontal .tatabundle-option-details .tatabundle-option-checkbox{
    margin: 1px 5px 0px 0px;
}

.tatabundle-options-horizontal .tatabundle-option-checkbox {
    width: 10%;
    align-content: start;
    display: flex;
    flex-direction: row;
}

.tatabundle-options-horizontal .tatabundle-option-price {
    width: 30%;
    align-content: end;
    display: flex;
    flex-direction: column;
    text-align: right;
}

.tatabundle-options-horizontal .tatabundle-option-col {
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    align-items: start;
}

.tatabundle-options-horizontal .tatabundle-option-thumbnail {
    align-content: start;
    display: flex;
    flex-direction: row;
    align-items: center;
}

.tatabundle-options-horizontal .tatabundle-option-thumbnail img {
    max-width: 50px;
    max-height: 50px;
}

.tatabundle-options-horizontal .tatabundle-option-image {
    margin-right: 10px;
}

.tatabundle-options-horizontal .tatabundle-option-title {
    /* font-weight: var(--tatabundle-title-weight); */
    /* font-size: var(--tatabundle-title-font-size); */
    /* color: var(--tatabundle-title-color); */
}

.tatabundle-options-horizontal .tatabundle-option-subtitle {
    /* color: var(--tatabundle-subtitle-color); */
    /* font-size: var(--tatabundle-subtitle-font-size); */
    /* font-weight: var(--tatabundle-subtitle-weight); */
}

.tatabundle-options-horizontal .tatabundle-option-single-price {
    /* font-size: var(--tatabundle-price-font-size);
    font-weight: var(--tatabundle-price-weight);
    color: var(--tatabundle-price-color); */
}

.tatabundle-options-horizontal .tatabundle-option-new-price {
    /* font-size: var(--tatabundle-price-font-size);
    font-weight: var(--tatabundle-price-weight);
    color: var(--tatabundle-price-color); */
    text-align: right;
}

.tatabundle-options-horizontal .tatabundle-option-old-price {
    text-decoration: line-through;
    /* font-size: var(--tatabundle-compare-at-price-font-size);
    color: var(--tatabundle-compare-at-price-color);
    font-weight: var(--tatabundle-compare-at-price-weight); */
    text-align: right;
}

.tatabundle-options-horizontal .tatabundle-option-each-price {
    /* font-size: var(--tatabundle-compare-at-price-font-size);
    color: var(--tatabundle-compare-at-price-color);
    font-weight: var(--tatabundle-compare-at-price-weight); */
    text-align: right;
}

.tatabundle-options-vertical .tatabundle-option-each-price {
    /* font-size: var(--tatabundle-compare-at-price-font-size);
    color: var(--tatabundle-compare-at-price-color);
    font-weight: var(--tatabundle-compare-at-price-weight); */
    margin: 7px 0;
}

.tatabundle-options-horizontal .tatabundle-option-active {
    /* background-color: var(--tatabundle-colors-selected-bg); */
    /* border-color: var(--tatabundle-colors-selected-border); */
}

.tatabundle-best-seller-box-block .tatabundle-best-seller-content-before{
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    content: "";
    border-bottom-width: 8px;
    border-bottom-style: solid;
    border-left: 8px solid transparent;
    filter: brightness(0.7);
}
.tatabundle-best-seller-box-block .tatabundle-best-seller-content-after{
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    content: "";
    border-bottom-width: 8px;
    border-bottom-style: solid;
    border-right: 8px solid transparent;
}

.tatabundle-options-horizontal {
    .tatabundle-best-seller-box-block {
        position: absolute;
        z-index: 1;
        top: -9px;
        /* right: var(--tatabundle-most-popular-badge-right); */
    }
    .tatabundle-best-seller-box-sticker {
        position: absolute;
        z-index: 1;
        top: -9px;
        /* right: var(--tatabundle-most-popular-badge-right); */
    }

    .tatabundle-best-seller-box-model {
        width: 101%;
        left: calc(50%);
        transform: translateX(-50%);
        position: absolute;
        z-index: 1;
        top: -2px;
        /* right: var(--tatabundle-most-popular-badge-right); */
    }

    .tatabundle-best-seller-box-left {
        width: fit-content;
        /* margin-left: var(--tatabundle-most-popular-badge-right) !important; */
    }
}

.tatabundle-options-horizontal .tatabundle-best-seller-block {
    margin: 0 8px;
    padding: 4px 12px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    /* color: var(--tatabundle-best-seller-text-color);
    font-size: var(--tatabundle-best-seller-text-font-size);
    font-weight: var(--tatabundle-best-seller-text-weight); */
    /* background-color: var(--tatabundle-colors-best-seller); */
}

/* .tatabundle-options-horizontal .tatabundle-best-seller-block:before,
.tatabundle-options-horizontal .tatabundle-best-seller-block:after {
    display: block;
    position: absolute;
    top: 0;
    width: 0;
    height: 0;
    content: "";
    border-bottom-width: 8px;
    border-bottom-style: solid;
    border-bottom-color: transparent;
    filter: brightness(0.7);
} */

.tatabundle-options-horizontal .tatabundle-best-seller-block:before {
    left: 0;
    border-left: 8px solid transparent;
    border-bottom-color: var(--tatabundle-colors-best-seller);
}

.tatabundle-options-horizontal .tatabundle-best-seller-block:after {
    right: 0;
    border-right: 8px solid transparent;
    border-bottom-color: var(--tatabundle-colors-best-seller);
}

.tatabundle-options-horizontal .tatabundle-best-seller-sticker {
    position: relative;
    right: -15px;
    transform: rotate(7deg);
    padding: 4px 10px;
    border-radius: 5px;
    /* color: var(--tatabundle-best-seller-text-color);
    font-size: var(--tatabundle-best-seller-text-font-size);
    font-weight: var(--tatabundle-best-seller-text-weight); */
    /* background-color: var(--tatabundle-colors-best-seller); */
}

.tatabundle-options-horizontal .tatabundle-best-seller-model {
    display: flex;
    justify-content: center;
    padding: 4px 10px;
    /* border-radius: var(--tatabundle-colors-border-radius) var(--tatabundle-colors-border-radius) 0 0; */
    /* color: var(--tatabundle-best-seller-text-color);
    font-size: var(--tatabundle-best-seller-text-font-size);
    font-weight: var(--tatabundle-best-seller-text-weight); */
    /* background-color: var(--tatabundle-colors-best-seller); */
}

.tatabundle-options-horizontal .tatabundle-best-seller-left {
    left: 20px;
    display: flex;
    justify-content: center;
    padding: 4px 10px;
    
}
.tatabundle-best-seller-content{
    color: var(--tb-qty-best-seller-color, black);
    font-size: var(--tb-qty-best-seller-font-size, 12px);
    font-weight: var(--tb-qty-best-seller-font-weight, normal);
    background-color: var(--tb-qty-best-seller-bg-color, #ffffff);
}

.tatabundle-options-horizontal .tatabundle-label-inside {
    padding: 5px 8px;
    margin: 5px 0;
    /* color: var(--tatabundle-label-text-color);
    font-size: var(--tatabundle-label-text-font-size);
    font-weight: var(--tatabundle-label-text-weight); */
    /* background-color: var(--tatabundle-colors-bg-label); */
    /* border-radius: var(--tatabundle-colors-border-radius); */
}

.tatabundle-options-horizontal .tatabundle-label-right_of_title {
    padding: 5px 8px;
    /* margin: 5px 0; */
    /* color: var(--tatabundle-label-text-color);
    font-size: var(--tatabundle-label-text-font-size);
    font-weight: var(--tatabundle-label-text-weight); */
    /* background-color: var(--tatabundle-colors-bg-label); */
    /* border-radius: var(--tatabundle-colors-border-radius); */
}

.tatabundle-options-horizontal .tatabundle-label-outside {
    position: absolute;
    left: calc(50%);
    transform: translateX(-50%);
    bottom: -8px;
    padding: 3px 5px;
    /* color: var(--tatabundle-label-text-color);
    font-size: var(--tatabundle-label-text-font-size);
    font-weight: var(--tatabundle-label-text-weight); */
    /* background-color: var(--tatabundle-colors-bg-label); */
}

.tatabundle-options-horizontal .tatabundle-variants-box {
    display: none;
    margin-top: 10px;
    padding: 5px 10px !important;
}

.tatabundle-options-vertical .tatabundle-variants-box {
    display: none;
    margin-top: 10px;
    padding: 5px 10px !important;
}

.tatabundle-options-horizontal .tatabundle-variant-row {
    display: flex;
    margin: 3px 0;
    gap: 6px;
    align-items: center;
}

.tatabundle-options-vertical .tatabundle-variant-row {
    display: flex;
    margin: 3px 0;
    gap: 6px;
    align-items: center;
}

.tatabundle-options-horizontal .tatabundle-variant-id,
.tatabundle-options-horizontal .tatabundle-variant-select {
    align-items: center;
}

.tatabundle-options-horizontal .tatabundle-variant-id {
    align-content: start;
    display: flex;
    flex-direction: row;
    width: 10%;
}

.tatabundle-options-horizontal .tatabundle-variant-select {
    flex-grow: 1;
}

.tatabundle-options-vertical .tatabundle-variant-select {
    align-items: center;
    flex-grow: 1;
    /* margin: 0px 8px; */
}

.tatabundle-options-horizontal .tatabundle-variant-select select {
    /* border: 1px solid var(--tatabundle-colors-selected-border) !important; */
    padding: 8px 20px 8px 10px;
    background-color: rgb(255, 255, 255) !important;
    margin-right: 4px;
    /* border-radius: var(--tatabundle-colors-border-radius) !important; */
    color: rgb(28, 29, 29) !important;

    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url('../images/dropdown-icon.svg');
    background-size: 7px;
    background-repeat: no-repeat;
    background-position: calc(100% - 7px) center;
}

.tatabundle-options-vertical .tatabundle-variant-select select {
    width: 90%;
    /* border: 1px solid var(--tatabundle-colors-selected-border) !important; */
    padding: 7px 2px 7px 2px;
    background-color: rgb(255, 255, 255) !important;
    /* border-radius: var(--tatabundle-colors-border-radius) !important; */
    color: rgb(28, 29, 29) !important;

    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url('../images/dropdown-icon.svg');
    background-size: 7px;
    background-repeat: no-repeat;
    background-position: calc(100% - 5px) center;

    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tatabundle-options-horizontal .tatabundle-variant-select select:focus,
.tatabundle-options-horizontal .tatabundle-variant-select select:focus-visible {
    outline: none;
    outline-offset: 0;
    box-shadow: none;
}

.tatabundle-options-vertical .tatabundle-variant-select select:focus,
.tatabundle-options-vertical .tatabundle-variant-select select:focus-visible {
    outline: none;
    outline-offset: 0;
    box-shadow: none;
}

/* square layout */

.tatabundle-box .tatabundle-options-square {
    flex-flow: wrap;
    display: flex !important;
    gap: 10px;
    margin-bottom: 20px;
}

.tatabundle-options-square .tatabundle-option {
    width: 48% !important;
    margin-bottom: 10px;
    position: relative;
}

.tatabundle-options-square .tatabundle-option-details {
    display: flex;
    padding: 1px 5px;
}

.tatabundle-options-square .tatabundle-option-checkbox {
    width: 10%;
    margin-right: 5px;
    align-content: start;
    display: flex;
    flex-direction: row;
}

.tatabundle-options-square .tatabundle-option-price {
    padding-left: 5px;
    word-break: break-all;
    width: 40%;
    align-content: end;
    display: flex;
    flex-direction: column;
    text-align: left;
}

.tatabundle-options-square .tatabundle-option-col {
    padding-left: 5px;
    display: flex;
    flex-grow: 1;
    width: 50%;
    flex-direction: column;
    align-items: start;
    justify-content: center;
}

.tatabundle-options-square .tatabundle-option-thumbnail {
    align-content: start;
    display: flex;
    flex-direction: row;
    align-items: center;
}

.tatabundle-options-square .tatabundle-option-thumbnail img {
    max-width: 50px;
    max-height: 50px;
}

.tatabundle-options-square .tatabundle-option-title {
    /* font-weight: var(--tatabundle-title-weight); */
    /* font-size: var(--tatabundle-title-font-size); */
    /* color: var(--tatabundle-title-color); */
}

.tatabundle-options-square .tatabundle-option-subtitle {
    /* color: var(--tatabundle-subtitle-color); */
    /* font-size: var(--tatabundle-subtitle-font-size); */
    /* font-weight: var(--tatabundle-subtitle-weight); */
}

.tatabundle-options-square .tatabundle-option-single-price {
    /* font-size: var(--tatabundle-price-font-size);
    font-weight: var(--tatabundle-price-weight);
    color: var(--tatabundle-price-color); */
}

.tatabundle-options-square .tatabundle-option-new-price {
    /* font-size: var(--tatabundle-price-font-size);
    font-weight: var(--tatabundle-price-weight);
    color: var(--tatabundle-price-color); */
}

.tatabundle-options-square .tatabundle-option-old-price {
    text-decoration: line-through;
    /* font-size: var(--tatabundle-compare-at-price-font-size);
    color: var(--tatabundle-compare-at-price-color);
    font-weight: var(--tatabundle-compare-at-price-weight); */
}

.tatabundle-options-square .tatabundle-option-each-price {
    /* font-size: var(--tatabundle-compare-at-price-font-size);
    color: var(--tatabundle-compare-at-price-color);
    font-weight: var(--tatabundle-compare-at-price-weight); */
}

.tatabundle-options-square .tatabundle-option-active {
    /* background-color: var(--tatabundle-colors-selected-bg); */
    /* border-color: var(--tatabundle-colors-selected-border); */
}

.tatabundle-options-square {
    .tatabundle-best-seller-box-block {
        position: absolute;
        z-index: 1;
        top: -9px;
        /* right: var(--tatabundle-most-popular-badge-right); */
    }

    .tatabundle-best-seller-box-sticker {
        position: absolute;
        z-index: 1;
        top: -9px;
        /* right: var(--tatabundle-most-popular-badge-right); */
    }

    .tatabundle-best-seller-box-model {
        width: 101%;
        left: calc(50%);
        transform: translateX(-50%);
        position: absolute;
        z-index: 1;
        top: -2px;
        /* right: var(--tatabundle-most-popular-badge-right); */
    }

    .tatabundle-best-seller-box-left {
        left: calc(0%);
        position: absolute;
        z-index: 1;
        top: -25px;
        width: fit-content;
        /* margin-left: var(--tatabundle-most-popular-badge-right) !important; */
    }
}

.tatabundle-options-square .tatabundle-best-seller-block {
    margin: 0 8px;
    padding: 4px 12px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    /* color: var(--tatabundle-best-seller-text-color);
    font-size: var(--tatabundle-best-seller-text-font-size);
    font-weight: var(--tatabundle-best-seller-text-weight); */
    /* background-color: var(--tatabundle-colors-best-seller); */
}

.tatabundle-options-square .tatabundle-best-seller-block:before,
.tatabundle-options-square .tatabundle-best-seller-block:after {
    display: block;
    position: absolute;
    top: 0;
    width: 0;
    height: 0;
    content: "";
    border-bottom-width: 8px;
    border-bottom-style: solid;
    border-bottom-color: transparent;
    filter: brightness(0.7);
}

.tatabundle-options-square .tatabundle-best-seller-block:before {
    left: 0;
    border-left: 8px solid transparent;
    border-bottom-color: var(--tatabundle-colors-best-seller);
}

.tatabundle-options-square .tatabundle-best-seller-block:after {
    right: 0;
    border-right: 8px solid transparent;
    border-bottom-color: var(--tatabundle-colors-best-seller);
}

.tatabundle-options-square .tatabundle-best-seller-sticker {
    position: relative;
    right: -15px;
    transform: rotate(7deg);
    padding: 4px 10px;
    border-radius: 5px;
    /* color: var(--tatabundle-best-seller-text-color);
    font-size: var(--tatabundle-best-seller-text-font-size);
    font-weight: var(--tatabundle-best-seller-text-weight); */
    /* background-color: var(--tatabundle-colors-best-seller); */
}

.tatabundle-options-square .tatabundle-best-seller-model {
    display: flex;
    justify-content: center;
    padding: 4px 10px;
    /* border-radius: var(--tatabundle-colors-border-radius) var(--tatabundle-colors-border-radius) 0 0; */
    /* color: var(--tatabundle-best-seller-text-color);
    font-size: var(--tatabundle-best-seller-text-font-size);
    font-weight: var(--tatabundle-best-seller-text-weight); */
    /* background-color: var(--tatabundle-colors-best-seller); */
}

.tatabundle-options-square .tatabundle-best-seller-left {
    display: flex;
    justify-content: center;
    padding: 4px 10px;
    /* border-radius: var(--tatabundle-colors-border-radius) var(--tatabundle-colors-border-radius) 0 0; */
    /* color: var(--tatabundle-best-seller-text-color);
    font-size: var(--tatabundle-best-seller-text-font-size);
    font-weight: var(--tatabundle-best-seller-text-weight); */
    /* background-color: var(--tatabundle-colors-best-seller); */
}

.tatabundle-options-square .tatabundle-label-inside {
    padding: 3px 5px;
    margin: 5px 0;
    /* color: var(--tatabundle-label-text-color);
    font-size: var(--tatabundle-label-text-font-size);
    font-weight: var(--tatabundle-label-text-weight); */
    /* background-color: var(--tatabundle-colors-bg-label); */
    /* border-radius: var(--tatabundle-colors-border-radius); */
}

.tatabundle-options-square .tatabundle-label-right_of_title {
    padding: 3px 5px;
    /* margin: 5px 0; */
    /* color: var(--tatabundle-label-text-color);
    font-size: var(--tatabundle-label-text-font-size);
    font-weight: var(--tatabundle-label-text-weight); */
    /* background-color: var(--tatabundle-colors-bg-label); */
    /* border-radius: var(--tatabundle-colors-border-radius); */
}

.tatabundle-options-square .tatabundle-label-outside {
    position: absolute;
    left: calc(50%);
    transform: translateX(-50%);
    bottom: -8px;
    padding: 3px 5px;
    /* color: var(--tatabundle-label-text-color);
    font-size: var(--tatabundle-label-text-font-size);
    font-weight: var(--tatabundle-label-text-weight); */
    /* background-color: var(--tatabundle-colors-bg-label); */
    /* border-radius: var(--tatabundle-colors-border-radius); */
}

.tatabundle-options-square .tatabundle-variants-box {
    display: none;
    margin-top: 10px;
}

.tatabundle-options-square .tatabundle-variant-row {
    display: flex;
    margin: 3px 0;
    gap: 6px;
    align-items: center;
}

.tatabundle-options-square .tatabundle-variant-id,
.tatabundle-options-square .tatabundle-variant-select {
    align-items: center;
}

.tatabundle-options-square .tatabundle-variant-id {
    align-content: start;
    display: flex;
    flex-direction: row;
    width: 10%;
}

.tatabundle-options-square .tatabundle-variant-select {
    flex-grow: 1;
    padding: 1px 5px;
}

.tatabundle-options-square .tatabundle-variant-select select {
    width: 100%;
    /* border: 1px solid var(--tatabundle-colors-selected-border) !important; */
    padding: 7px 20px 7px 10px;
    background-color: rgb(255, 255, 255) !important;
    margin-right: 4px;
    /* border-radius: var(--tatabundle-colors-border-radius) !important; */
    color: rgb(28, 29, 29) !important;

    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url('../images/dropdown-icon.svg');
    background-size: 7px;
    background-repeat: no-repeat;
    background-position: calc(100% - 7px) center;

    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tatabundle-options-square .tatabundle-variant-select select:focus,
.tatabundle-options-square .tatabundle-variant-select select:focus-visible {
    outline: none;
    outline-offset: 0;
    box-shadow: none;
}

.tatabundle-box .tatabundle-atc {
    width: 100%;
    color: #000;
    background-color: #fff;
    border: 1px solid #000;
    font-size: 16px;
    padding: 15px 2px;
    font-weight: normal;
    border-radius: var(--tatabundle-colors-border-radius);
}

.tatabundle-box .tatabundle-atc:hover {
    border: 2px solid #000;
    padding: 14px 1px;
}

.tatabundle-option-active .tatabundle-variants-box {
    display: block;
    overflow: hidden;
    padding-bottom: 5px;
}

.tatabundle-quantity-input {
    display: none;
}

.tatabundle-not-available-warning {
    margin-bottom: 10px;
    border: 1px solid #ff2c2c;
    padding: 15px;
    color: #ff2c2c;
    background-color: #ffc0be;
    /* border-radius: var(--tatabundle-colors-border-radius); */
}

.tatabundle-product-card {
    /* border: 3px var(--tatabundle-gift-border) var(--tatabundle-gift-border-color); */
    text-align: center;
    position: relative;
    width: 105px;
    /* border-radius: var(--tatabundle-colors-border-radius); */
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.tatabundle-price-tag {
    /* font-size: var(--tatabundle-gift-label-font-size); */
    /* border-radius: var(--tatabundle-colors-border-radius); */
    margin: -22px 0px 0px 0px;
    position: absolute;
    top: 5px;
    padding: 1px 10px 1px 10px;
    /* font-weight: var(--tatabundle-gift-label-font-weight); */
}

.tatabundel-gift-img {
    width: 100%;
    height: 88px;
    /* border-top-right-radius: var(--tatabundle-colors-border-radius);
    border-top-left-radius: var(--tatabundle-colors-border-radius); */
}

.tatabundle-gift-columns {
    display: flex;
    align-items: flex-start;
    justify-content: space-around;
    margin: 15px 0px 10px 0px;
    /* flex-direction: row-reverse; */
    margin-bottom: 20px;
}

.tatabundle-gift-column {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.tatabundle-gift-locked-text {
    position: relative;
    top: -4px;
    /* margin-bottom: 10px !important; */
}

.tatabundle-gift-selected-variant {
    width: 115px !important;
    margin-top: 5px;
    margin-bottom: 3px;
}

.inline-gift-flex .tatabundle-gift-selected-variant {
    width: auto !important;
}

.tatabundle-gift-footer-text {
    width: -webkit-fill-available;
    text-align: center;
    background-color: #F7F5D9;
    margin: 10px 0px 0px 0px;
    padding: 1px 2px 1px 2px;
    /* border-radius: var(--tatabundle-colors-border-radius); */
}

.tatabundle-gift-title-div {
    display: flex;
    align-items: center;
    justify-content: center;
    color: black;
}

.tatabundle-gift-title {
    text-align: center;
    font-weight: bold;
    font-size: var(--tatabundle-gift-title-font-size);
    margin: 10px 0px;
    padding: 1px 15px 1px 15px;
    /* border-radius: var(--tatabundle-colors-border-radius); */
    max-width: max-content;
}


@keyframes blinking {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}


.tatabundle-upsell-checkbox {
  appearance: none;
  padding: 9px;
  width: 12px;
  height: 12px;
  border: 2px solid #707070;
  border-radius: 4px;
  outline: none;
  cursor: pointer;
  background-color: white;
  position: relative;
  transition: all 0.3s ease;
}

.tatabundle-upsell-checkbox:checked {
  background-color: #ffffff;
  border-color: #d6d6d6;
}

.tatabundle-upsell-checkbox:checked::after {
  content: '✔';
  color:var(--tatabundle-colors-selected-border);
  font-size: 14px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: checkAnimation 0.3s ease-in-out;
}

@keyframes checkAnimation {
  0% { transform: translate(-50%, -50%) scale(0); opacity: 0; }
  50% { transform: translate(-50%, -50%) scale(1.2); opacity: 1; }
  100% { transform: translate(-50%, -50%) scale(1); opacity: 1; }
}

.tatabundle-upsell-checkbox:not(:checked)::after {
  content: '';
  animation: uncheckAnimation 0.3s ease-in-out;
}

@keyframes uncheckAnimation {
  0% { transform: translate(-50%, -50%) scale(1); opacity: 1; }
  100% { transform: translate(-50%, -50%) scale(0); opacity: 0; }
}

.tatabundle-upsells-select {
    padding: 3px 13px 3px 4px;
    background-color: rgb(255, 255, 255) !important;
    border-radius: var(--tatabundle-colors-border-radius) !important;
    color: rgb(28, 29, 29) !important;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url('../images/dropdown-icon.svg');
    background-size: 7px;
    background-repeat: no-repeat;
    background-position: calc(100% - 7px) center;
}
.zoom-effect {
    animation: zoomIn 0.4s ease forwards;
  }
  
  @keyframes zoomIn {
    from {
      transform: scale(0.1);
    }
    to {
      transform: scale(1);
      
    }
  }

.zoom-out {
    animation: zoomOut 0.4s ease forwards;
  }
  
  @keyframes zoomOut {
    from {
      transform: scale(3);
    }
    to {
      transform: scale(1);
    }
  }

.tatabundle-plus-icon-white svg path{
    fill: #ffffff;
}

.loader {
  border: 2px solid #f3f3f3; 
  border-top: 2px solid #fff; 
  border-radius: 50%;
  width: 14px;
  height: 14px;
  display: inline-block;
  animation: spin 0.8s linear infinite;
  margin-right: 8px;
  vertical-align: middle;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.tatabundle-giftlayout-horizontal-container {
    border: 2px solid var(--tatabundle-colors-border);
    /* border-bottom-left-radius: var(--tatabundle-colors-border-radius);
    border-bottom-right-radius: var(--tatabundle-colors-border-radius); */
    background-color: var(--tatabundle-colors-border);
    /* top: -2px; */
    position: relative;
    align-items: center;
    overflow: hidden;
    border-top: "none"
}

.tatabundle-giftlayout-horizontal-active {
    background-color: '#eeeeee';
    /* border-color: var(--tatabundle-colors-selected-border); */
    /* border-top: "none" */
}

.tatabundle-upsells{
    border-bottom-left-radius: calc(var(--tatabundle-colors-border-radius) - 2px);
    border-bottom-right-radius: calc(var(--tatabundle-colors-border-radius) - 2px);
}

.tatabundle-gift-container{
    padding:10px;
}


.tatabundle-inline-gift-select {
    padding: 3px 13px 3px 4px;
    background-color: rgb(255, 255, 255) !important;
    border-radius: var(--tatabundle-colors-border-radius) !important;
    color: rgb(28, 29, 29) !important;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url('../images/dropdown-icon.svg');
    background-size: 7px;
    background-repeat: no-repeat;
    background-position: calc(100% - 7px) center;
}
.inline-gift-container{
    padding: 10px;
}

.tatabundle-inline-gift-select:focus,
.tatabundle-inline-gift-select:focus-visible {
    outline: none;
    outline-offset: 0;
    box-shadow: none;
}

.tatabundle-options-horizontal .tatabundle-option:has(.tatabundle-gifts) .tatabundle-option-details{
    margin-top: 0px !important;
}

.tatabundle-options-horizontal .tatabundle-option > .tatabundle-gifts {
    margin-left: -20px;
    margin-right: -20px;
    margin-bottom: -20px;
} 


.tatabundle-gifts:has(.tatabundle-gifts-active) hr, .tatabundle-upsells:has(.tatabundle-upsells-active) hr{
    border: 1px solid var(--tatabundle-border-color) !important;
}

.tatabundle-options-horizontal .tatabundle-option-details:has(.tatabundle-best-seller-model){
    margin-top: 15px;
}

.tata-radio {
    transform: scale(1.2);
}

/* --- Swatch variant picker styles --- */
.tatabundle-variant-row-swatch {
    align-items: flex-start !important;
}
.tatabundle-variant-row-swatch .tatabundle-variant-id {
    width: auto !important;
    min-width: 22px;
    flex-shrink: 0;
    margin-left: 5px;
    font-size: 12px;
    font-weight: 600;
    color: #555;
}
.tatabundle-variant-row-swatch .tatabundle-variant-select {
    flex-direction: column;
    width: 100%;
    overflow: hidden;
}
.tatabundle-swatch-group {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    margin-bottom: 4px;
}
.tatabundle-swatch-group-label {
    font-size: 11px;
    color: #666;
    margin-bottom: 2px;
    width: 100%;
}
.tatabundle-swatch-item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 32px;
    padding: 0 8px;
    border: 1.5px solid #d1d5db;
    border-radius: 4px;
    font-size: 12px;
    cursor: pointer;
    background: #fff;
    transition: border-color 0.15s, background-color 0.15s;
    user-select: none;
}
.tatabundle-swatch-item:hover { border-color: #9ca3af; }
.tatabundle-swatch-item.tatabundle-swatch-selected {
    border-color: var(--tatabundle-colors-selected-border, #000);
    background-color: var(--tatabundle-colors-selected-bg, #0000000f);
}
.tatabundle-swatch-color {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid #d1d5db;
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s;
    user-select: none;
}
.tatabundle-swatch-color:hover { border-color: #9ca3af; }
.tatabundle-swatch-color.tatabundle-swatch-selected {
    border-color: var(--tatabundle-colors-selected-border, #000);
    box-shadow: 0 0 0 2px var(--tatabundle-colors-selected-border, #000);
}
.tatabundle-swatch-color-inner {
    width: 20px;
    height: 20px;
    border-radius: 50%;
}
.tatabundle-swatch-color-text {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 32px;
    padding: 0 8px;
    border: 1.5px solid #d1d5db;
    border-radius: 50px;
    font-size: 11px;
    cursor: pointer;
    background: #fff;
    transition: border-color 0.15s, background-color 0.15s;
    user-select: none;
}
.tatabundle-swatch-color-text:hover { border-color: #9ca3af; }
.tatabundle-swatch-color-text.tatabundle-swatch-selected {
    border-color: var(--tatabundle-colors-selected-border, #000);
    background-color: var(--tatabundle-colors-selected-bg, #0000000f);
}
.tatabundle-swatch-image {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 4px;
    border: 1.5px solid #d1d5db;
    cursor: pointer;
    overflow: hidden;
    transition: border-color 0.15s, box-shadow 0.15s;
    user-select: none;
}
.tatabundle-swatch-image:hover { border-color: #9ca3af; }
.tatabundle-swatch-image.tatabundle-swatch-selected {
    border-color: var(--tatabundle-colors-selected-border, #000);
    box-shadow: 0 0 0 1px var(--tatabundle-colors-selected-border, #000);
}
.tatabundle-swatch-image-inner {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tatabundle-dropdown-with-indicator {
    display: flex;
    align-items: center;
    gap: 5px;
    flex-grow: 1;
}
.tatabundle-dropdown-with-indicator select { flex-grow: 1; }
.tatabundle-dropdown-indicator {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
}
.tatabundle-dropdown-indicator-img {
    width: 22px;
    height: 22px;
    object-fit: cover;
    border-radius: 3px;
    border: 1px solid #d1d5db;
}

/* Gift variant button */
.tatabundle-gift-variant-btn {
    margin-top: 5px;
    margin-bottom: 3px;
    padding: 4px 12px;
    font-size: 11px;
    font-weight: 500;
    border: 1px solid var(--tatabundle-colors-selected-border, #000);
    border-radius: 4px;
    background: #fff;
    color: #333;
    cursor: pointer;
    transition: background 0.15s;
}
.tatabundle-gift-variant-btn:hover:not(:disabled) {
    background: #f3f4f6;
}
.tatabundle-gift-variant-btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}

/* Subscription widget */
.tatabundle-subscription-widget {
    font-family: inherit;
}
.tatabundle-subscription-widget label {
    cursor: pointer;
}
.tatabundle-subscription-widget input[type="radio"] {
    width: 16px;
    height: 16px;
    margin: 0;
}
.tatabundle-subscription-frequency select {
    cursor: pointer;
}

/* Gift popup apply button */
.tatabundle-gift-popup-apply {
    width: 100%;
    padding: 10px;
    margin-top: 12px;
    background: #111827;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s;
}
.tatabundle-gift-popup-apply:hover {
    background: #1f2937;
}

/* Combo swatch layout */
.tatabundle-combo-variant-select .tatabundle-swatch-group {
    margin-bottom: 2px;
}
.tatabundle-combo-variant-select .tatabundle-dropdown-with-indicator select {
    flex-grow: 1;
}
.tatabundle-product-details .tatabundle-combo-variant-select {
    overflow: hidden;
}

/* Gift variant popup */
.tatabundle-gift-popup-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}
.tatabundle-gift-popup {
    background: #fff;
    border-radius: 10px;
    padding: 20px;
    max-width: 360px;
    width: 90%;
    max-height: 80vh;
    overflow-y: auto;
    position: relative;
    box-shadow: 0 8px 30px rgba(0,0,0,0.2);
}
.tatabundle-gift-popup-close {
    position: absolute;
    top: 8px;
    right: 12px;
    background: none;
    border: none;
    font-size: 22px;
    cursor: pointer;
    color: #666;
    line-height: 1;
}
.tatabundle-gift-popup-close:hover {
    color: #000;
}
.tatabundle-gift-popup-img {
    width: 100%;
    max-height: 200px;
    object-fit: contain;
    border-radius: 6px;
    margin-bottom: 12px;
}
.tatabundle-gift-popup-title {
    font-size: 15px;
    font-weight: 600;
    color: #111;
    margin-bottom: 6px;
}
.tatabundle-gift-popup-label {
    display: inline-block;
    padding: 2px 10px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 500;
    margin-bottom: 6px;
}
.tatabundle-gift-popup-footer {
    font-size: 11px;
    color: #666;
    margin-bottom: 10px;
}
.tatabundle-gift-popup-variants {
    margin-top: 8px;
}
.tatabundle-gift-popup-variants .tatabundle-swatch-group {
    justify-content: flex-start;
}