[id^="sis-bundle-"]{
    margin:24px 0 18px;
    padding:0;
    background:transparent;
    border:0;
    box-shadow:none;
    color:inherit;
}

[id^="sis-bundle-"] .sis-bundle-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:16px;
}

[id^="sis-bundle-"] .sis-bundle-header__content{
    min-width:0;
}

[id^="sis-bundle-"] .sis-bundle-title{
    margin:0;
    font:inherit;
    font-size:1.02rem;
    font-weight:600;
    line-height:1.3;
}

[id^="sis-bundle-"] .sis-bundle-subtitle{
    margin:6px 0 0;
    font-size:.86rem;
    line-height:1.45;
    opacity:.72;
}

[id^="sis-bundle-"] .sis-bundle-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:30px;
    padding:0 11px;
    border:1px solid rgba(0,0,0,.12);
    border-radius:999px;
    font-size:.77rem;
    font-weight:600;
    white-space:nowrap;
}

[id^="sis-bundle-"] .sis-bundle-products{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:18px;
}

[id^="sis-bundle-"] .sis-bundle-item{
    display:grid;
    grid-template-columns:88px minmax(0, 1fr);
    gap:14px;
    align-items:start;
    min-width:0;
}

[id^="sis-bundle-"] .sis-bundle-item__image{
    display:block;
    text-decoration:none;
    color:inherit;
}

[id^="sis-bundle-"] .sis-bundle-item__image img{
    display:block;
    width:88px;
    aspect-ratio:3/4;
    object-fit:cover;
    border-radius:8px;
    box-shadow:none;
}

[id^="sis-bundle-"] .sis-bundle-item__content{
    min-width:0;
}

[id^="sis-bundle-"] .sis-bundle-item__title{
    margin:0 0 4px;
    font:inherit;
    font-size:.94rem;
    font-weight:600;
    line-height:1.35;
}

[id^="sis-bundle-"] .sis-bundle-item__title a{
    color:inherit;
    text-decoration:none;
}

[id^="sis-bundle-"] .sis-bundle-item__title a:hover{
    text-decoration:underline;
}

[id^="sis-bundle-"] .sis-product-price{
    margin:0 0 10px;
    font-size:.92rem;
    line-height:1.3;
}

[id^="sis-bundle-"] .sis-product-price .price,
[id^="sis-bundle-"] .sis-product-price .woocommerce-Price-amount,
[id^="sis-bundle-"] .sis-product-price .amount,
[id^="sis-bundle-"] .sis-product-price bdi{
    font-size:inherit;
}

[id^="sis-bundle-"] .sis-simple-product-note{
    margin:0;
    font-size:.82rem;
    line-height:1.45;
    opacity:.72;
}

[id^="sis-bundle-"] .sis-current-product-jump{
    display:inline-flex;
    align-items:center;
    margin:0;
    padding:0;
    border:0;
    background:transparent;
    color:inherit;
    font:inherit;
    font-size:.82rem;
    line-height:1.45;
    opacity:.78;
    text-decoration:underline;
    text-underline-offset:.18em;
    cursor:pointer;
}

[id^="sis-bundle-"] .sis-current-product-jump:hover{
    opacity:1;
}

[id^="sis-bundle-"] .sis-current-product-jump:focus-visible{
    outline:2px solid currentColor;
    outline-offset:2px;
}

[id^="sis-bundle-"] form.cart{
    margin:0;
}

[id^="sis-bundle-"] table.variations{
    width:100%;
    margin:0;
    border:0;
    border-spacing:0;
}

[id^="sis-bundle-"] table.variations tbody,
[id^="sis-bundle-"] table.variations tr,
[id^="sis-bundle-"] table.variations th,
[id^="sis-bundle-"] table.variations td{
    display:block;
    width:100%;
}

[id^="sis-bundle-"] table.variations tr + tr{
    margin-top:9px;
}

[id^="sis-bundle-"] table.variations th,
[id^="sis-bundle-"] table.variations td{
    padding:0;
    vertical-align:top;
}

[id^="sis-bundle-"] table.variations th label{
    display:flex !important;
    align-items:center;
    gap:4px;
    margin:0 0 6px !important;
    font-size:.74rem !important;
    font-weight:600 !important;
    line-height:1.2 !important;
    letter-spacing:.02em;
    text-transform:uppercase;
    opacity:.72;
}

[id^="sis-bundle-"] table.variations .wc-selected-attr{
    font-size:.68rem !important;
    text-transform:none;
    opacity:.72;
}

[id^="sis-bundle-"] .woo-variation-items-wrapper,
[id^="sis-bundle-"] .variable-items-wrapper{
    display:flex !important;
    flex-wrap:wrap;
    gap:6px !important;
    margin:0;
}

[id^="sis-bundle-"] .button-variable-item,
[id^="sis-bundle-"] .variable-item.button-variable-item{
    min-width:34px !important;
    min-height:34px !important;
    margin:0 !important;
    padding:6px 10px !important;
    border-radius:8px !important;
    font-size:.78rem !important;
    line-height:1 !important;
    box-shadow:none !important;
}

[id^="sis-bundle-"] .color-variable-item,
[id^="sis-bundle-"] .color-variable-item .variable-item-span,
[id^="sis-bundle-"] .variable-item-span.variable-item-span-color{
    width:30px !important;
    height:30px !important;
    min-width:30px !important;
    min-height:30px !important;
    border-radius:999px !important;
}

[id^="sis-bundle-"] .reset_variations{
    display:inline-block !important;
    margin-top:7px;
    font-size:.74rem !important;
    line-height:1.2;
    opacity:.72;
}

[id^="sis-bundle-"] .single_variation,
[id^="sis-bundle-"] .woocommerce-variation-price,
[id^="sis-bundle-"] .woocommerce-variation-description,
[id^="sis-bundle-"] .woocommerce-variation-availability,
[id^="sis-bundle-"] .stock,
[id^="sis-bundle-"] .quantity,
[id^="sis-bundle-"] .single_add_to_cart_button,
[id^="sis-bundle-"] .added_to_cart,
[id^="sis-bundle-"] .pdf-coupon-fields,
[id^="sis-bundle-"] .bde-quantity-button,
[id^="sis-bundle-"] .woocommerce-variation-add-to-cart .quantity,
[id^="sis-bundle-"] .woocommerce-variation-add-to-cart button:not([type="hidden"]){
    display:none !important;
}

[id^="sis-bundle-"] .woocommerce-variation-add-to-cart{
    margin:0 !important;
    padding:0 !important;
}

[id^="sis-bundle-"] .woocommerce-variation-add-to-cart .variation_id,
[id^="sis-bundle-"] .woocommerce-variation-add-to-cart input[name="product_id"],
[id^="sis-bundle-"] .woocommerce-variation-add-to-cart input[name="add-to-cart"]{
    display:none;
}

[id^="sis-bundle-"] .sis-bundle-summary{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:16px;
    margin-top:18px;
    padding-top:14px;
    border-top:1px solid rgba(0,0,0,.08);
}

[id^="sis-bundle-"] .sis-bundle-total{
    display:flex;
    flex-direction:column;
    gap:5px;
    min-width:0;
}

[id^="sis-bundle-"] .sis-bundle-total__label{
    font-size:.75rem;
    font-weight:600;
    line-height:1.2;
    letter-spacing:.02em;
    text-transform:uppercase;
    opacity:.72;
}

[id^="sis-bundle-"] .sis-total-price{
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    gap:8px;
    font-size:1rem;
    line-height:1.25;
}

[id^="sis-bundle-"] .sis-total-price__current{
    font-weight:700;
}

[id^="sis-bundle-"] .sis-total-price__old{
    font-size:.9rem;
    text-decoration:line-through;
    opacity:.56;
}

[id^="sis-bundle-"] .sis-total-note{
    display:block;
    min-height:1.1em;
    font-size:.8rem;
    line-height:1.35;
    opacity:.72;
}

[id^="sis-bundle-"] .sis-add-bundle{
    flex:0 0 auto;
    min-width:180px;
    margin:0 !important;
    padding:.95em 1.6em !important;
    line-height:1.1 !important;
    border-radius:8px !important;
}

[id^="sis-bundle-"] .sis-add-bundle.is-loading{
    opacity:.8;
    pointer-events:none;
}

[id^="sis-bundle-"] .sis-bundle-message{
    min-height:1.2em;
    margin-top:10px;
    font-size:.84rem;
    line-height:1.4;
}

[id^="sis-bundle-"] .sis-bundle-message.is-success{
    color:#146c43;
}

[id^="sis-bundle-"] .sis-bundle-message.is-error{
    color:#b42318;
}

@media (max-width: 1024px){
    [id^="sis-bundle-"] .sis-bundle-products{
        gap:16px;
    }

    [id^="sis-bundle-"] .sis-bundle-item{
        grid-template-columns:78px minmax(0, 1fr);
        gap:12px;
    }

    [id^="sis-bundle-"] .sis-bundle-item__image img{
        width:78px;
    }
}

@media (max-width: 767px){
    [id^="sis-bundle-"]{
        margin:18px 0 14px;
    }

    [id^="sis-bundle-"] .sis-bundle-header{
        flex-direction:column;
        align-items:flex-start;
        gap:8px;
        margin-bottom:14px;
    }

    [id^="sis-bundle-"] .sis-bundle-subtitle{
        font-size:.82rem;
    }

    [id^="sis-bundle-"] .sis-bundle-products{
        grid-template-columns:1fr;
        gap:14px;
    }

    [id^="sis-bundle-"] .sis-bundle-item{
        grid-template-columns:72px minmax(0, 1fr);
        gap:11px;
    }

    [id^="sis-bundle-"] .sis-bundle-item__image img{
        width:72px;
        border-radius:7px;
    }

    [id^="sis-bundle-"] .sis-bundle-item__title{
        font-size:.9rem;
    }

    [id^="sis-bundle-"] .button-variable-item,
    [id^="sis-bundle-"] .variable-item.button-variable-item{
        min-width:32px !important;
        min-height:32px !important;
        padding:5px 8px !important;
        font-size:.74rem !important;
    }

    [id^="sis-bundle-"] .color-variable-item,
    [id^="sis-bundle-"] .color-variable-item .variable-item-span,
    [id^="sis-bundle-"] .variable-item-span.variable-item-span-color{
        width:28px !important;
        height:28px !important;
        min-width:28px !important;
        min-height:28px !important;
    }

    [id^="sis-bundle-"] .sis-bundle-summary{
        flex-direction:column;
        align-items:stretch;
    }

    [id^="sis-bundle-"] .sis-add-bundle{
        width:100%;
        min-width:0;
    }
}


.kivi-mini-coupon-box--bundle {
    margin-top:16px;
}

.kivi-mini-coupon-chip--bundle {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    width:100%;
}

.kivi-mini-coupon-chip--bundle .kivi-mini-coupon-chip-text {
    display:flex;
    align-items:center;
    gap:8px;
    min-width:0;
}

.kivi-mini-coupon-chip--bundle .kivi-mini-coupon-chip-value {
    flex:0 0 auto;
    font-weight:600;
    white-space:nowrap;
}

.sis-bundle-cart-discount-row th,
.sis-bundle-cart-discount-row td {
    font-weight:600;
}

[id^="sis-bundle-"] .sis-bundle-products{
    align-items:start;
}

[id^="sis-bundle-"][data-bundle-count="2"] .sis-bundle-products{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:34px;
}

[id^="sis-bundle-"][data-bundle-count="3"] .sis-bundle-products{
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:24px;
}

[id^="sis-bundle-"][data-bundle-count="2"] .sis-bundle-item{
    grid-template-columns:112px minmax(0, 1fr);
    gap:16px;
}

[id^="sis-bundle-"][data-bundle-count="2"] .sis-bundle-item__image img{
    width:112px;
    border-radius:10px;
}

[id^="sis-bundle-"][data-bundle-count="3"] .sis-bundle-item{
    grid-template-columns:78px minmax(0, 1fr);
    gap:12px;
}

[id^="sis-bundle-"][data-bundle-count="3"] .sis-bundle-item__image img{
    width:78px;
}

[id^="sis-bundle-"] .sis-bundle-summary{
    margin-top:26px;
    padding:18px 22px;
    border:1px solid rgba(0,0,0,.08);
    border-radius:16px;
    background:rgba(255,255,255,.48);
    backdrop-filter:saturate(125%) blur(1px);
}

[id^="sis-bundle-"] .sis-bundle-total{
    gap:6px;
}

[id^="sis-bundle-"] .sis-bundle-total__label{
    font-size:.82rem;
    letter-spacing:.08em;
    opacity:.74;
}

[id^="sis-bundle-"] .sis-total-price{
    font-size:1.22rem;
    font-weight:700;
}

[id^="sis-bundle-"] .sis-add-bundle{
    width:100%;
    max-width:238px;
    min-width:0;
    min-height:66px;
    padding:14px 22px !important;
    border:1.5px solid rgba(20,20,28,.62) !important;
    border-radius:10px !important;
    background:transparent !important;
    color:#121212 !important;
    font-size:1rem !important;
    font-weight:500 !important;
    line-height:1.15 !important;
    box-shadow:none !important;
    transition:all .18s ease;
}

[id^="sis-bundle-"] .sis-add-bundle:hover:not(:disabled){
    border-color:#121212 !important;
}

[id^="sis-bundle-"] .sis-add-bundle:disabled,
[id^="sis-bundle-"] .sis-add-bundle.is-disabled{
    opacity:1;
    color:#aaa8ad !important;
    border-color:#bcb9c0 !important;
    background:transparent !important;
    cursor:not-allowed;
}

@media (max-width: 1320px){
    [id^="sis-bundle-"][data-bundle-count="3"] .sis-bundle-products{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1024px){
    [id^="sis-bundle-"][data-bundle-count="2"] .sis-bundle-item{
        grid-template-columns:96px minmax(0, 1fr);
    }

    [id^="sis-bundle-"][data-bundle-count="2"] .sis-bundle-item__image img{
        width:96px;
    }
}

@media (max-width: 767px){
    .kivi-mini-coupon-chip--bundle{
        flex-wrap:wrap;
        align-items:flex-start;
    }

    [id^="sis-bundle-"] .sis-bundle-summary{
        padding:16px;
        border-radius:14px;
    }

    [id^="sis-bundle-"] .sis-total-price{
        font-size:1.1rem;
    }

    [id^="sis-bundle-"] .sis-add-bundle{
        max-width:none;
        min-height:58px;
        font-size:.96rem !important;
    }
}

@media (max-width: 1199px){
    [id^="sis-bundle-"][data-bundle-count="3"] .sis-bundle-products{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px){
    [id^="sis-bundle-"] .sis-bundle-products,
    [id^="sis-bundle-"][data-bundle-count="2"] .sis-bundle-products,
    [id^="sis-bundle-"][data-bundle-count="3"] .sis-bundle-products{
        grid-template-columns:1fr !important;
        gap:14px;
    }

    [id^="sis-bundle-"] .sis-bundle-products > .sis-bundle-item,
    [id^="sis-bundle-"][data-bundle-count="2"] .sis-bundle-products > .sis-bundle-item,
    [id^="sis-bundle-"][data-bundle-count="3"] .sis-bundle-products > .sis-bundle-item{
        grid-column:1 / -1 !important;
    }

    [id^="sis-bundle-"] .sis-bundle-item,
    [id^="sis-bundle-"][data-bundle-count="2"] .sis-bundle-item,
    [id^="sis-bundle-"][data-bundle-count="3"] .sis-bundle-item{
        grid-template-columns:72px minmax(0, 1fr) !important;
        gap:11px !important;
    }

    [id^="sis-bundle-"] .sis-bundle-item__image img,
    [id^="sis-bundle-"][data-bundle-count="2"] .sis-bundle-item__image img,
    [id^="sis-bundle-"][data-bundle-count="3"] .sis-bundle-item__image img{
        width:72px !important;
        border-radius:7px;
    }
}

/* =========================================================
 * Custom ("build your own") bundle shortcode
 * Styling deliberately mirrors the fixed single-product bundle:
 * charcoal text on white tiles, thin hairline borders, 3:4 images,
 * red accent for sale prices. Double class + !important scoping
 * defends against theme/page-builder overrides.
 * ======================================================= */

.sis-custom-bundle.sis-custom-bundle{
    margin:32px 0 20px !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    color:#121316 !important;
    font-family:inherit !important;
}

.sis-custom-bundle.sis-custom-bundle *,
.sis-custom-bundle.sis-custom-bundle *::before,
.sis-custom-bundle.sis-custom-bundle *::after{
    box-sizing:border-box !important;
}

/* ---- Header ---- */
.sis-custom-bundle.sis-custom-bundle .sis-cb-header{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:flex-end !important;
    justify-content:space-between !important;
    gap:16px !important;
    margin:0 0 22px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-title{
    margin:0 !important;
    font-family:inherit !important;
    font-size:1.9rem !important;
    font-weight:600 !important;
    line-height:1.1 !important;
    letter-spacing:-.005em !important;
    color:#111 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-title::after{
    content:"" !important;
    display:block !important;
    width:70px !important;
    height:1px !important;
    margin-top:10px !important;
    background:#111 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-subtitle{
    margin:9px 0 0 !important;
    max-width:680px !important;
    font-size:12px !important;
    line-height:1.45 !important;
    color:#777 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-tiers{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:6px !important;
    flex-shrink:0 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-tier{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:28px !important;
    padding:0 12px !important;
    border:1px solid #9e1818 !important;
    border-radius:6px !important;
    background:#fff !important;
    color:#9e1818 !important;
    font-size:12px !important;
    font-weight:600 !important;
    letter-spacing:.01em !important;
    white-space:nowrap !important;
}

/* ---- Slots (match .sis-bundle-item shape) ---- */
.sis-custom-bundle.sis-custom-bundle .sis-cb-slots{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
    gap:3px !important;
    margin:0 0 24px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot{
    position:relative !important;
    min-height:190px !important;
    padding:0 !important;
    border:1px solid rgba(17,17,17,.10) !important;
    border-radius:3px !important;
    background:#fff !important;
    transition:border-color .15s, background .15s !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot.is-empty{
    border-style:dashed !important;
    border-color:rgba(17,17,17,.22) !important;
    background:#fafafa !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot.needs-variation{
    border-style:solid !important;
    border-color:#d97706 !important;
    background:#fff8ed !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__empty{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:10px !important;
    height:100% !important;
    min-height:190px !important;
    padding:20px !important;
    text-align:center !important;
}
/* Class-based show/hide — immune to `hidden` attribute being overridden by
 * !important display rules. Toggled by the JS via is-empty / is-filled. */
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot.is-filled .sis-cb-slot__empty{
    display:none !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot.is-empty .sis-cb-slot__filled{
    display:none !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__number{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:34px !important;
    height:34px !important;
    border-radius:999px !important;
    border:1px solid rgba(17,17,17,.18) !important;
    background:#fff !important;
    color:#111 !important;
    font-weight:600 !important;
    font-size:14px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__hint{
    font-size:13px !important;
    color:#777 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__flag{
    display:inline-block !important;
    font-size:10px !important;
    text-transform:uppercase !important;
    letter-spacing:.08em !important;
    color:#9aa0a6 !important;
}

/* Filled slot = exact shape of .sis-bundle-item */
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__filled{
    display:grid !important;
    grid-template-columns:130px minmax(0,1fr) !important;
    gap:14px !important;
    padding:16px !important;
    padding-right:38px !important;
    align-items:start !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__image{
    display:block !important;
    width:130px !important;
    aspect-ratio:3/4 !important;
    overflow:hidden !important;
    border-radius:2px !important;
    background:#f1f1f1 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__image img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__meta{
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    gap:5px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__name{
    font-size:14px !important;
    font-weight:600 !important;
    line-height:1.25 !important;
    color:#111 !important;
    text-decoration:none !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__name:hover{
    text-decoration:underline !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__type{
    font-size:10px !important;
    text-transform:uppercase !important;
    letter-spacing:.08em !important;
    color:#9e1818 !important;
    font-weight:600 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__price{
    font-size:13px !important;
    color:#111 !important;
    margin-top:2px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__price del{
    opacity:.55 !important;
    font-weight:400 !important;
    margin-right:5px !important;
    color:#6b6b6b !important;
    text-decoration:line-through !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__price ins{
    background:transparent !important;
    text-decoration:none !important;
    font-weight:600 !important;
    color:#b91c1c !important;
}
/* Variation groups — rendered as button/color swatch pills mirroring the
 * look of WooVariationSwatches on the existing single-product bundle. */
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__variations{
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
    margin-top:8px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__var-group{
    display:flex !important;
    flex-direction:column !important;
    gap:4px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__var-label{
    font-size:10px !important;
    text-transform:uppercase !important;
    letter-spacing:.06em !important;
    color:#777 !important;
    font-weight:600 !important;
    line-height:1.2 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__var-label-val{
    color:#111 !important;
    text-transform:none !important;
    letter-spacing:0 !important;
    font-size:11px !important;
    font-weight:600 !important;
    margin-left:2px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__var-options{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:4px !important;
    margin:2px 0 0 !important;
    padding:0 !important;
    list-style:none !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__var-opt{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:34px !important;
    height:30px !important;
    padding:0 9px !important;
    border:1px solid #d7d4ce !important;
    background:#fff !important;
    color:#111 !important;
    font-size:12px !important;
    font-weight:500 !important;
    line-height:1 !important;
    border-radius:3px !important;
    cursor:pointer !important;
    transition:border-color .15s, background .15s !important;
    box-shadow:none !important;
    text-transform:none !important;
    letter-spacing:0 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__var-opt:hover{
    border-color:#111 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__var-opt.is-selected{
    border-color:#111 !important;
    background:#fbfaf8 !important;
    color:#111 !important;
}
/* Color swatch variant — circular with colored fill */
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__var-opt--color{
    width:26px !important;
    height:26px !important;
    min-width:26px !important;
    padding:0 !important;
    border-radius:999px !important;
    position:relative !important;
    background:#fff !important;
    border:1px solid rgba(17,17,17,.18) !important;
    overflow:visible !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__var-swatch{
    display:block !important;
    width:22px !important;
    height:22px !important;
    border-radius:999px !important;
    border:1px solid rgba(17,17,17,.08) !important;
    background:#eee;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__var-opt--color.is-selected{
    background:#fff !important;
    border-color:#fff !important;
    box-shadow:0 0 0 2px #111 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__remove{
    position:absolute !important;
    top:8px !important;
    right:8px !important;
    width:24px !important;
    height:24px !important;
    border:0 !important;
    border-radius:999px !important;
    background:rgba(17,17,17,.06) !important;
    color:#111 !important;
    font-size:16px !important;
    line-height:1 !important;
    cursor:pointer !important;
    padding:0 !important;
    transition:background .15s, color .15s !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-slot__remove:hover{
    background:rgba(158,24,24,.12) !important;
    color:#9e1818 !important;
}

/* ---- Search ---- */
.sis-custom-bundle.sis-custom-bundle .sis-cb-search{
    position:relative !important;
    margin:0 0 14px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-search__input{
    width:100% !important;
    padding:12px 44px 12px 14px !important;
    border:1px solid rgba(17,17,17,.14) !important;
    border-radius:3px !important;
    background:#fff !important;
    font-size:14px !important;
    line-height:1.4 !important;
    color:#111 !important;
    outline:none !important;
    transition:border-color .15s !important;
}
/* Hide native clear in webkit-based browsers — we draw our own for consistency */
.sis-custom-bundle.sis-custom-bundle .sis-cb-search__input::-webkit-search-cancel-button{
    -webkit-appearance:none !important;
    appearance:none !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-search__input:focus{
    border-color:#111 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-search__clear{
    position:absolute !important;
    right:10px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    width:26px !important;
    height:26px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:999px !important;
    background:rgba(17,17,17,.08) !important;
    color:#111 !important;
    font-size:16px !important;
    line-height:1 !important;
    cursor:pointer !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    transition:background .15s, color .15s !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-search__clear:hover{
    background:rgba(158,24,24,.12) !important;
    color:#9e1818 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-search__clear[hidden]{
    display:none !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-search__status{
    position:absolute !important;
    right:44px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    font-size:12px !important;
    color:#777 !important;
    pointer-events:none !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-results{
    margin:0 0 20px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-results__empty{
    padding:14px !important;
    text-align:center !important;
    color:#777 !important;
    font-size:13px !important;
    border:1px dashed rgba(17,17,17,.15) !important;
    border-radius:3px !important;
    background:#fafafa !important;
}

/* ---- Recommended ---- */
.sis-custom-bundle.sis-custom-bundle .sis-cb-recommended{
    margin:0 0 24px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-recommended__title{
    margin:0 0 14px !important;
    font-size:13px !important;
    font-weight:600 !important;
    text-transform:uppercase !important;
    letter-spacing:.08em !important;
    color:#111 !important;
}

/* ---- Cards (match .sis-bundle-item look as a compact tile) ---- */
.sis-custom-bundle.sis-custom-bundle .sis-cb-grid{
    display:grid !important;
    grid-template-columns:repeat(auto-fill, minmax(180px, 1fr)) !important;
    gap:3px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card{
    position:relative !important;
    display:flex !important;
    flex-direction:column !important;
    border:1px solid rgba(17,17,17,.10) !important;
    border-radius:3px !important;
    background:#fff !important;
    overflow:hidden !important;
    transition:border-color .15s, box-shadow .15s !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card:hover{
    border-color:rgba(17,17,17,.25) !important;
    box-shadow:0 2px 10px rgba(18,19,22,.05) !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card.is-selected{
    border-color:#111 !important;
    box-shadow:inset 0 0 0 1px #111 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card.is-soldout{
    opacity:.5 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__thumb{
    position:relative !important;
    width:100% !important;
    aspect-ratio:3/4 !important;
    background:#f4f4f4 !important;
    overflow:hidden !important;
}
/* Padding-bottom fallback for browsers without aspect-ratio support (Safari <15 etc.) */
@supports not (aspect-ratio: 3/4){
    .sis-custom-bundle.sis-custom-bundle .sis-cb-card__thumb{
        height:0 !important;
        padding-bottom:133.333% !important;
    }
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__thumb img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__type-pill{
    position:absolute !important;
    top:8px !important;
    left:8px !important;
    padding:2px 7px !important;
    border-radius:3px !important;
    background:rgba(255,255,255,.94) !important;
    color:#111 !important;
    font-size:10px !important;
    font-weight:600 !important;
    text-transform:uppercase !important;
    letter-spacing:.06em !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card.is-clothes .sis-cb-card__type-pill{
    color:#111 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card.is-accessory .sis-cb-card__type-pill{
    color:#7a5200 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__soldout{
    position:absolute !important;
    top:8px !important;
    right:8px !important;
    padding:2px 7px !important;
    border-radius:3px !important;
    background:#fef2f2 !important;
    border:1px solid #fecaca !important;
    color:#b91c1c !important;
    font-size:10px !important;
    font-weight:700 !important;
    text-transform:uppercase !important;
    letter-spacing:.06em !important;
}
/* "AKCIJA" pill on products blocked from custom bundle due to existing sale. */
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__sale-pill{
    position:absolute !important;
    top:8px !important;
    right:8px !important;
    padding:2px 7px !important;
    border-radius:3px !important;
    background:#9e1818 !important;
    color:#fff !important;
    font-size:10px !important;
    font-weight:700 !important;
    text-transform:uppercase !important;
    letter-spacing:.06em !important;
    border:0 !important;
}
/* Sale-blocked cards: slightly desaturate to read as "unavailable for bundle". */
.sis-custom-bundle.sis-custom-bundle .sis-cb-card.is-on-sale{
    opacity:.85 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card.is-on-sale .sis-cb-card__add{
    background:#fef2f2 !important;
    border-color:#fecaca !important;
    color:#9e1818 !important;
    cursor:not-allowed !important;
    text-transform:none !important;
    letter-spacing:0 !important;
    font-size:11px !important;
    font-weight:600 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card.is-on-sale .sis-cb-card__add:hover{
    background:#fef2f2 !important;
    border-color:#fecaca !important;
    color:#9e1818 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__body{
    display:flex !important;
    flex-direction:column !important;
    gap:6px !important;
    padding:10px 12px 12px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__title{
    margin:0 !important;
    font-size:13px !important;
    font-weight:600 !important;
    line-height:1.3 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__title a{
    color:#111 !important;
    text-decoration:none !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__title a:hover{
    text-decoration:underline !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__price{
    font-size:13px !important;
    color:#111 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__price del{
    opacity:.55 !important;
    font-weight:400 !important;
    margin-right:4px !important;
    color:#6b6b6b !important;
    text-decoration:line-through !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__price ins{
    background:transparent !important;
    text-decoration:none !important;
    font-weight:600 !important;
    color:#b91c1c !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__add{
    margin-top:4px !important;
    padding:9px 10px !important;
    border:1px solid #8e8f9a !important;
    border-radius:3px !important;
    background:#fff !important;
    color:#17181d !important;
    font-size:12px !important;
    font-weight:600 !important;
    cursor:pointer !important;
    transition:background .15s, border-color .15s, color .15s !important;
    text-transform:uppercase !important;
    letter-spacing:.04em !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__add:hover:not(:disabled){
    background:#111 !important;
    border-color:#111 !important;
    color:#fff !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card__add:disabled{
    background:#f4f4f4 !important;
    border-color:#d7d4ce !important;
    color:#9aa0a6 !important;
    cursor:not-allowed !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-card.is-selected .sis-cb-card__add{
    background:#111 !important;
    border-color:#111 !important;
    color:#fff !important;
}

/* ---- Sticky summary bar — fixed full-width, no border radius ----
 * We break out of any container by using position: fixed. An inner
 * wrapper constrains content width so huge displays don't stretch.
 * Body gets padding-bottom to make room for the bar (JS sets it).
 */
.sis-custom-bundle.sis-custom-bundle .sis-cb-sticky{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    /* Below common cart drawers (Woo blocks use ~999, Breakdance drawers ~9999+).
     * Themes should override if their cart drawer needs to sit above this. */
    z-index:90 !important;
    background:#fbfaf8 !important;
    border-top:1px solid #e6e1d8 !important;
    box-shadow:0 -8px 24px rgba(18,19,22,.10) !important;
    border-radius:0 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-sticky__inner{
    max-width:1400px !important;
    margin:0 auto !important;
    padding:14px 22px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-summary{
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:28px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

/* -- Left column: label + count + discount chips -- */
.sis-custom-bundle.sis-custom-bundle .sis-cb-summary__meta{
    display:flex !important;
    flex-direction:column !important;
    gap:5px !important;
    min-width:0 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-summary__label{
    display:block !important;
    font-size:10px !important;
    color:#777 !important;
    text-transform:uppercase !important;
    letter-spacing:.08em !important;
    margin:0 !important;
    font-weight:600 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-summary__chips{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:6px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-summary__count{
    display:inline-flex !important;
    align-items:center !important;
    padding:3px 10px !important;
    border:1px solid rgba(17,17,17,.15) !important;
    border-radius:999px !important;
    background:#fff !important;
    font-size:11px !important;
    font-weight:600 !important;
    color:#111 !important;
    line-height:1.2 !important;
    transition:opacity .15s !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-summary__count.is-zero{
    opacity:.55 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-summary__discount{
    display:inline-flex !important;
    align-items:center !important;
    padding:3px 10px !important;
    border:1px solid #9e1818 !important;
    border-radius:999px !important;
    background:#9e1818 !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:700 !important;
    line-height:1.2 !important;
    letter-spacing:.01em !important;
}

/* -- Middle column: price block -- */
.sis-custom-bundle.sis-custom-bundle .sis-cb-summary__totals{
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    gap:2px !important;
    padding:0 0 0 12px !important;
    border-left:1px solid rgba(17,17,17,.08) !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-summary__price{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:baseline !important;
    gap:12px !important;
    font-size:1.6rem !important;
    font-weight:700 !important;
    line-height:1.1 !important;
    color:#111 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-summary__placeholder{
    font-size:.95rem !important;
    font-weight:500 !important;
    color:#9aa0a6 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-summary__current{
    color:#111 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-summary__old{
    opacity:.55 !important;
    font-weight:400 !important;
    font-size:1rem !important;
    text-decoration:line-through !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-summary__note{
    display:block !important;
    margin:0 !important;
    font-size:12px !important;
    color:#9e1818 !important;
    font-weight:600 !important;
}

/* -- Right column: CTA -- */
.sis-custom-bundle.sis-custom-bundle .sis-cb-cta{
    min-width:160px !important;
    min-height:48px !important;
    padding:12px 22px !important;
    border:1.5px solid #111 !important;
    border-radius:3px !important;
    background:#111 !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:600 !important;
    line-height:1.15 !important;
    cursor:pointer !important;
    transition:background .15s, color .15s, border-color .15s, opacity .15s !important;
    text-transform:uppercase !important;
    letter-spacing:.04em !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-cta:hover:not(:disabled){
    background:#fff !important;
    border-color:#111 !important;
    color:#111 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-cta:disabled{
    background:#e5e3df !important;
    border-color:#d7d4ce !important;
    color:#888 !important;
    cursor:not-allowed !important;
}

/* ---- Message ---- */
.sis-custom-bundle.sis-custom-bundle .sis-cb-message{
    margin-top:14px !important;
    padding:12px 14px !important;
    border-radius:3px !important;
    font-size:13px !important;
    line-height:1.4 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-message.is-success{
    background:#effcf6 !important;
    border:1px solid #ccefdc !important;
    color:#0f766e !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-message.is-error{
    background:#fef2f2 !important;
    border:1px solid #fecaca !important;
    color:#b91c1c !important;
}

/* ---- Config error (admin-only) ---- */
.sis-custom-bundle--error{
    margin:32px 0 !important;
    padding:12px 14px !important;
    border-radius:3px !important;
    background:#fef2f2 !important;
    border:1px solid #fecaca !important;
    color:#b91c1c !important;
    font-size:13px !important;
}
.sis-custom-bundle--error a{
    color:#111 !important;
    text-decoration:underline !important;
}

/* Persistent coupon-active notice — appears above the sticky summary whenever
 * the cart already carries a discount code (akcijos nesumuojamos). */
.sis-custom-bundle.sis-custom-bundle .sis-cb-coupon-notice{
    margin-top:16px !important;
    padding:12px 14px !important;
    border:1px solid #fecaca !important;
    background:#fef2f2 !important;
    color:#9e1818 !important;
    font-size:13px !important;
    font-weight:500 !important;
    line-height:1.4 !important;
    border-radius:3px !important;
}

/* ---- Mobile ---- */
@media (max-width: 767px){
    .sis-custom-bundle.sis-custom-bundle{
        margin:20px 0 12px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-header{
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:10px !important;
        margin-bottom:16px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-title{
        font-size:1.35rem !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-title::after{
        width:50px !important;
        margin-top:8px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-subtitle{
        font-size:11px !important;
    }

    /* Slots — single column, compact */
    .sis-custom-bundle.sis-custom-bundle .sis-cb-slots{
        grid-template-columns:1fr !important;
        gap:3px !important;
        margin-bottom:14px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-slot{
        min-height:150px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-slot__empty{
        min-height:auto !important;
        padding:18px 14px !important;
        flex-direction:row !important;
        justify-content:flex-start !important;
        gap:12px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-slot__filled{
        grid-template-columns:90px minmax(0,1fr) !important;
        gap:12px !important;
        padding:12px !important;
        padding-right:34px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-slot__image{
        width:90px !important;
    }

    /* Search — 16px font to stop iOS from zooming on focus */
    .sis-custom-bundle.sis-custom-bundle .sis-cb-search{
        margin-bottom:10px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-search__input{
        padding:11px 42px 11px 12px !important;
        font-size:16px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-search__status{
        font-size:11px !important;
        right:40px !important;
    }

    /* Recommended grid: 2 columns */
    .sis-custom-bundle.sis-custom-bundle .sis-cb-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        gap:3px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-card__body{
        padding:8px 10px 10px !important;
        gap:4px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-card__title{
        font-size:12px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-card__price{
        font-size:12px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-card__add{
        padding:8px 8px !important;
        font-size:10.5px !important;
        letter-spacing:.03em !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-card__type-pill{
        top:6px !important;
        left:6px !important;
        padding:1px 5px !important;
        font-size:9px !important;
    }

    /* Sticky bar: compact two-row layout — price left, CTA right, chips above */
    .sis-custom-bundle.sis-custom-bundle .sis-cb-sticky__inner{
        padding:10px 12px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-summary{
        grid-template-columns:minmax(0,1fr) auto !important;
        grid-template-rows:auto auto !important;
        gap:4px 12px !important;
        align-items:center !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-summary__meta{
        grid-column:1 / -1 !important;
        grid-row:1 !important;
        flex-direction:row !important;
        align-items:center !important;
        gap:6px !important;
        flex-wrap:wrap !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-summary__label{
        font-size:9px !important;
        margin-right:4px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-summary__chips{
        gap:4px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-summary__count,
    .sis-custom-bundle.sis-custom-bundle .sis-cb-summary__discount{
        padding:2px 8px !important;
        font-size:10px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-summary__totals{
        grid-column:1 !important;
        grid-row:2 !important;
        border-left:0 !important;
        padding-left:0 !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-summary__price{
        gap:8px !important;
        font-size:1.2rem !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-summary__old{
        font-size:.85rem !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-summary__note{
        display:none !important; /* space is tight; savings show in the chip + price delta */
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-summary__placeholder{
        font-size:.9rem !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-cta{
        grid-column:2 !important;
        grid-row:2 !important;
        min-width:120px !important;
        min-height:42px !important;
        padding:10px 14px !important;
        font-size:12px !important;
    }

    /* Coupon notice — position under title, not hugging the fixed bar */
    .sis-custom-bundle.sis-custom-bundle .sis-cb-coupon-notice{
        margin-top:12px !important;
        padding:10px 12px !important;
        font-size:12px !important;
    }

    /* Toast */
    .sis-custom-bundle.sis-custom-bundle .sis-cb-message{
        font-size:12px !important;
        padding:10px 12px !important;
    }
}

/* ---- Spacer: reserve viewport bottom room for the fixed sticky bar ----
 * JS sets this dynamically based on the actual bar height, but we give
 * sensible defaults so there's no flash of content hidden under the bar. */
body.sis-cb-has-sticky{
    padding-bottom:96px !important;
}
@media (max-width: 767px){
    body.sis-cb-has-sticky{
        padding-bottom:108px !important;
    }
}

/* ---- Toast message (success with view-cart link) ---- */
.sis-custom-bundle.sis-custom-bundle .sis-cb-message{
    display:flex !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    margin-top:14px !important;
    padding:12px 14px !important;
    border-radius:3px !important;
    font-size:13px !important;
    line-height:1.4 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-message__icon{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:20px !important;
    height:20px !important;
    border-radius:999px !important;
    background:#0f766e !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:700 !important;
    line-height:1 !important;
    flex-shrink:0 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-message.is-error .sis-cb-message__icon{
    background:#b91c1c !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-message__text{
    flex:1 !important;
    min-width:0 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-message__link{
    color:#0f766e !important;
    font-weight:600 !important;
    text-decoration:underline !important;
    white-space:nowrap !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-message__link:hover{
    color:#0a5852 !important;
}

/* =========================================================
 * Success modal — shown after adding a bundle to cart.
 * Much more prominent than the old toast; shows the complete
 * breakdown including the "Komplekto nuolaida" discount.
 * ======================================================= */
.sis-cb-success-overlay{
    position:fixed !important;
    inset:0 !important;
    z-index:100000 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:20px !important;
    background:rgba(17,17,17,.55) !important;
    opacity:0 !important;
    transition:opacity .2s !important;
}
.sis-cb-success-overlay.is-visible{
    opacity:1 !important;
}
.sis-cb-success-modal{
    position:relative !important;
    width:100% !important;
    max-width:480px !important;
    max-height:90vh !important;
    overflow-y:auto !important;
    padding:28px 28px 22px !important;
    background:#fff !important;
    border-radius:6px !important;
    box-shadow:0 24px 60px rgba(18,19,22,.25) !important;
    color:#111 !important;
    font-family:inherit !important;
    transform:translateY(12px) scale(.98) !important;
    transition:transform .2s !important;
}
.sis-cb-success-overlay.is-visible .sis-cb-success-modal{
    transform:translateY(0) scale(1) !important;
}
.sis-cb-success-close{
    position:absolute !important;
    top:10px !important;
    right:10px !important;
    width:32px !important;
    height:32px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:999px !important;
    background:rgba(17,17,17,.06) !important;
    color:#111 !important;
    font-size:20px !important;
    line-height:1 !important;
    cursor:pointer !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    transition:background .15s !important;
}
.sis-cb-success-close:hover{
    background:rgba(17,17,17,.12) !important;
}
.sis-cb-success-icon{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:64px !important;
    height:64px !important;
    margin:4px auto 14px !important;
    border-radius:999px !important;
    background:#effcf6 !important;
    color:#0f766e !important;
}
.sis-cb-success-icon span{
    font-size:34px !important;
    line-height:1 !important;
    font-weight:700 !important;
}
.sis-cb-success-title{
    margin:0 0 16px !important;
    text-align:center !important;
    font-family:inherit !important;
    font-size:1.25rem !important;
    font-weight:600 !important;
    color:#111 !important;
    line-height:1.3 !important;
}
.sis-cb-success-body{
    margin:0 0 20px !important;
}
.sis-cb-success-list{
    list-style:none !important;
    margin:0 0 14px !important;
    padding:0 !important;
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
}
.sis-cb-success-item{
    display:grid !important;
    grid-template-columns:48px minmax(0,1fr) auto !important;
    gap:12px !important;
    align-items:center !important;
    padding:10px !important;
    background:#fafaf7 !important;
    border:1px solid #e6e1d8 !important;
    border-radius:4px !important;
}
.sis-cb-success-item img{
    width:48px !important;
    height:64px !important;
    object-fit:cover !important;
    border-radius:2px !important;
    background:#f4f4f4 !important;
}
.sis-cb-success-item-meta{
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    gap:2px !important;
}
.sis-cb-success-item-meta strong{
    font-size:13px !important;
    font-weight:600 !important;
    color:#111 !important;
    line-height:1.25 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
}
.sis-cb-success-item-meta span{
    font-size:10px !important;
    text-transform:uppercase !important;
    letter-spacing:.06em !important;
    color:#9e1818 !important;
    font-weight:600 !important;
}
.sis-cb-success-item-price{
    font-size:13px !important;
    font-weight:600 !important;
    color:#111 !important;
    white-space:nowrap !important;
}
.sis-cb-success-totals{
    padding:14px 14px 2px !important;
    border-top:1px solid #e6e1d8 !important;
}
.sis-cb-success-row{
    display:flex !important;
    justify-content:space-between !important;
    align-items:baseline !important;
    margin-bottom:6px !important;
    font-size:13px !important;
}
.sis-cb-success-row--discount{
    color:#9e1818 !important;
    font-weight:500 !important;
}
.sis-cb-success-row--discount strong{
    color:#9e1818 !important;
}
.sis-cb-success-row--total{
    margin-top:10px !important;
    padding-top:10px !important;
    border-top:1px solid #e6e1d8 !important;
    font-size:15px !important;
    font-weight:700 !important;
}
.sis-cb-success-row--total span,
.sis-cb-success-row--total strong{
    color:#111 !important;
    font-size:15px !important;
    font-weight:700 !important;
}
.sis-cb-success-actions{
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
}
.sis-cb-success-continue,
.sis-cb-success-cart{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:46px !important;
    padding:12px 18px !important;
    border-radius:3px !important;
    font-size:13px !important;
    font-weight:600 !important;
    text-transform:uppercase !important;
    letter-spacing:.04em !important;
    cursor:pointer !important;
    text-decoration:none !important;
    transition:background .15s, color .15s, border-color .15s !important;
    line-height:1.15 !important;
    box-sizing:border-box !important;
}
.sis-cb-success-continue{
    border:1.5px solid #d7d4ce !important;
    background:#fff !important;
    color:#111 !important;
}
.sis-cb-success-continue:hover{
    border-color:#111 !important;
}
.sis-cb-success-cart{
    border:1.5px solid #111 !important;
    background:#111 !important;
    color:#fff !important;
}
.sis-cb-success-cart:hover{
    background:#fff !important;
    color:#111 !important;
}

@media (max-width: 480px){
    .sis-cb-success-modal{
        padding:22px 18px 18px !important;
    }
    .sis-cb-success-icon{
        width:56px !important;
        height:56px !important;
    }
    .sis-cb-success-icon span{
        font-size:28px !important;
    }
    .sis-cb-success-title{
        font-size:1.1rem !important;
    }
    .sis-cb-success-item img{
        width:40px !important;
        height:52px !important;
    }
    .sis-cb-success-actions{
        flex-direction:column !important;
    }
}

/* =========================================================
 * Guided stepper (mobile only)
 * Hidden on desktop; renders above the slots on mobile to
 * guide the user through step 1 → 2 → 3.
 * ======================================================= */
.sis-custom-bundle.sis-custom-bundle .sis-cb-stepper{
    display:none !important;
}
@media (max-width: 767px){
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stepper{
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        gap:10px !important;
        margin:0 0 14px !important;
        padding:12px 14px !important;
        background:#fbfaf8 !important;
        border:1px solid #e6e1d8 !important;
        border-radius:4px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stepper__track{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        gap:8px !important;
        width:100% !important;
        max-width:260px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stepper__step{
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        width:32px !important;
        height:32px !important;
        border-radius:999px !important;
        border:1.5px solid #d7d4ce !important;
        background:#fff !important;
        color:#9aa0a6 !important;
        font-size:13px !important;
        font-weight:700 !important;
        line-height:1 !important;
        flex-shrink:0 !important;
        transition:border-color .15s, background .15s, color .15s !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stepper__step.is-active{
        border-color:#111 !important;
        background:#111 !important;
        color:#fff !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stepper__step.is-complete{
        border-color:#0f766e !important;
        background:#0f766e !important;
        color:#fff !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stepper__step.is-complete span{
        visibility:hidden !important;
        position:relative !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stepper__step.is-complete::after{
        content:"✓" !important;
        position:absolute !important;
        color:#fff !important;
        font-size:15px !important;
        font-weight:700 !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stepper__connector{
        flex:1 !important;
        height:1.5px !important;
        background:#d7d4ce !important;
        transition:background .15s !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stepper__step.is-complete + .sis-cb-stepper__connector{
        background:#0f766e !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stepper__hint{
        font-size:13px !important;
        font-weight:600 !important;
        color:#111 !important;
        text-align:center !important;
        line-height:1.35 !important;
        min-height:18px !important;
    }

    /* Filtered cards (mobile guided mode) — keep visible but dim,
     * so user understands they exist but aren't right for this step. */
    .sis-custom-bundle.sis-custom-bundle .sis-cb-card.is-step-filtered{
        opacity:.35 !important;
        filter:grayscale(.4) !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-card.is-step-filtered .sis-cb-card__add{
        pointer-events:none !important;
    }
}

/* =========================================================
 * Rec rows v2 — separate sections for clothes / accessories / stylist
 * ======================================================= */

.sis-custom-bundle.sis-custom-bundle .sis-cb-recommended{
    margin:0 0 24px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-recommended__title{
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    margin:0 0 14px !important;
    font-size:13px !important;
    font-weight:600 !important;
    text-transform:uppercase !important;
    letter-spacing:.08em !important;
    color:#111 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-recommended__title::after{
    content:"" !important;
    flex:1 !important;
    height:1px !important;
    background:rgba(17,17,17,.1) !important;
}

/* ---- Stylist tiles ---- */
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist{
    margin:0 0 28px !important;
    padding:22px 22px 18px !important;
    background:linear-gradient(180deg, #fbfaf8 0%, #f6f4ef 100%) !important;
    border:1px solid #e6e1d8 !important;
    border-radius:6px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist__title{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    margin:0 0 4px !important;
    font-size:14px !important;
    font-weight:700 !important;
    text-transform:uppercase !important;
    letter-spacing:.08em !important;
    color:#111 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist__title::before{
    content:"✦" !important;
    color:#9e1818 !important;
    font-size:16px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist__lede{
    margin:0 0 16px !important;
    font-size:12px !important;
    color:#777 !important;
    line-height:1.4 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist__grid{
    display:grid !important;
    grid-template-columns:repeat(auto-fill, minmax(320px, 1fr)) !important;
    gap:14px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:0 !important;
    padding:0 !important;
    background:#fff !important;
    border:1px solid rgba(17,17,17,.10) !important;
    border-radius:4px !important;
    overflow:hidden !important;
    transition:border-color .15s, box-shadow .15s !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card:hover{
    border-color:rgba(17,17,17,.25) !important;
    box-shadow:0 6px 18px rgba(18,19,22,.06) !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__images{
    display:grid !important;
    grid-template-columns:repeat(3, 1fr) !important;
    gap:2px !important;
    background:#f4f4f4 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card[data-stylist-count="2"] .sis-cb-stylist-card__images{
    grid-template-columns:repeat(2, 1fr) !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__img{
    position:relative !important;
    aspect-ratio:3/4 !important;
    overflow:hidden !important;
    background:#f4f4f4 !important;
}
@supports not (aspect-ratio: 3/4){
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__img{
        height:0 !important;
        padding-bottom:133.333% !important;
    }
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__img img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__meta{
    display:flex !important;
    flex-direction:column !important;
    gap:6px !important;
    padding:12px 14px 14px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__count{
    font-size:10px !important;
    font-weight:700 !important;
    text-transform:uppercase !important;
    letter-spacing:.08em !important;
    color:#9e1818 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__names{
    font-size:12px !important;
    font-weight:500 !important;
    color:#111 !important;
    line-height:1.4 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__price{
    display:flex !important;
    align-items:baseline !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    margin-top:4px !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__old{
    font-size:12px !important;
    color:#777 !important;
    text-decoration:line-through !important;
    font-weight:400 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__final{
    font-size:15px !important;
    font-weight:700 !important;
    color:#111 !important;
    line-height:1 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__disc{
    display:inline-flex !important;
    align-items:center !important;
    padding:2px 7px !important;
    background:#9e1818 !important;
    color:#fff !important;
    font-size:10px !important;
    font-weight:700 !important;
    border-radius:3px !important;
    line-height:1.3 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__apply{
    margin-top:4px !important;
    padding:10px 14px !important;
    border:1.5px solid #111 !important;
    border-radius:3px !important;
    background:#111 !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:600 !important;
    text-transform:uppercase !important;
    letter-spacing:.06em !important;
    cursor:pointer !important;
    transition:background .15s, color .15s !important;
    line-height:1.2 !important;
}
.sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__apply:hover{
    background:#fff !important;
    color:#111 !important;
}

/* ---- Mobile: stylist row responsive ---- */
@media (max-width: 767px){
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stylist{
        padding:16px 14px 14px !important;
        margin-bottom:20px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stylist__title{
        font-size:12px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stylist__lede{
        font-size:11px !important;
        margin-bottom:12px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stylist__grid{
        grid-template-columns:1fr !important;
        gap:10px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__meta{
        padding:10px 12px 12px !important;
    }
    .sis-custom-bundle.sis-custom-bundle .sis-cb-stylist-card__apply{
        font-size:10.5px !important;
        padding:10px 10px !important;
    }
}

/* ---- Mobile guided flow: hide stylist until user starts building ---- */
@media (max-width: 767px){
    /* By default show stylist row on mobile. Once the user has picked at
     * least one item, the stepper takes over — hide the stylist cards then
     * to keep the guided flow focused. */
    .sis-custom-bundle.sis-custom-bundle.is-in-progress .sis-cb-stylist{
        display:none !important;
    }
}
