.product-type-sunpics_bundle > .woocommerce-product-gallery,
.product-type-sunpics_bundle > div > .woocommerce-product-gallery {
    display: none;
}

/*.product-type-sunpics_bundle > .summary,
.product-type-sunpics_bundle > div > .summary {
    width: 100%;
}*/

.woocommerce-page #content div.product.product-type-sunpics_bundle > div.summary {
    width: 100%;
}

.product-type-sunpics_bundle .sunpics-bundle-product .up-sells {
    display: none;
}

.sun-term-hidden {
    display: none !important;
}

.woocommerce.boxed #content.site-content article.zita-article:before, .woocommerce.contentbox #content.site-content article.zita-article:before {
    background: transparent;
}

.product-type-sunpics_bundle .sb-back-to-grouped {
    display: flex;
    align-items: center;
    padding: 10px 20px;
    gap: 15px;
    margin-bottom: 10px;
    border-radius: 4px;
}

.sunpics-bundle-product {
    display: flex;
    flex-direction: column;
}

.sunpics-bundle-item {
    display: block;
    float: left;
    position: relative;
    background-color: #fff;
    border-radius: 10px;
    padding: 40px;
    margin: 20px 0;
    width: 100%;
}

.sun-group-product-parent {
    background-color: #fff;
    border-radius: 10px;
}

.woocommerce div.product {
    display: block;
    margin-top: 0;
}

.sb-price-wrap{
    margin-bottom: 5%;
    font-size: 20px;
}

.sunpics-bundle .woocommerce-tabs, .sunpics-bundle .related.products {
    display: none !important;
}

/*.sunpics-bundle .woocommerce-product-gallery {
    display: block;
}*/

.woocommerce .entry-summary .product_meta {
    display: none;
}

/*.sunpics-bundle .summary {
    width: 48% !important;
}*/

.woocommerce #content div.product div.summary, .woocommerce div.product div.summary, .woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary,
.woocommerce #content div.product div.images, .woocommerce div.product div.images, .woocommerce-page #content div.product div.images, .woocommerce-page div.product div.images {
    margin-bottom: 0;
}

.sun-configure-product-panel .sun-configure-panel-content {
    padding: 4% 0 0 0;
}

.sun-configure-product-panel-left:empty {
    display: none;
}

.woocommerce div.product .product_title {
    font-size: 32px;
}

.woocommerce .sunpics-bundle-product .sunpics-bundle-item div.product .product_title,
.woocommerce .sunpics-bundle-product .sunpics-bundle-item div.product .price {
    font-size: 20px;
    margin-top: 10px;
    margin-left: 0;
}

.woocommerce div.product form.cart {
    margin: 0 !important;
}

.woocommerce div.product-type-sunpics_bundle .cart:not(.variations_form) {
    width: 480px;
    float: right;
    background-color: #fff;
    padding: 40px;
    border-radius: 10px;
    margin-bottom: 80px !important;
}

.product-type-sunpics_bundle .cart .sunpics-project-name {
    margin-top: 10px !important;
    border-radius: 10px;
    width: 100%;
}

.woocommerce div.product form.cart .button {
    border-radius: 10px;
}

.woocommerce-variation-add-to-cart, form.cart {
    flex-wrap: nowrap !important;
}

.sunpics-disabled-childs {
    opacity: 0.4;
}

/* childs gallery image */
.sun-groups-products .sunpics-bundle-item.show-bundle-child-gallery .woocommerce-product-gallery {
    display: block !important;
    width: 10% !important;
    border: 1px solid #eaeaea;
    margin-top: 10px;
    box-shadow: 0 0 10px 0 #9A9A9A52;
}

.sun-groups-products .sunpics-bundle-item.show-bundle-child-gallery .woocommerce-product-gallery .flex-control-nav.flex-control-thumbs {
    display: none;
}

.sun-groups-products .sunpics-bundle-item.show-bundle-child-gallery .woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
    pointer-events: none;
}

.sun-groups-products .sunpics-bundle-item.show-bundle-child-gallery .woocommerce-product-gallery__trigger {
    width: 30px !important;
    height: 30px !important;
    border: 1px solid #777777!important;
    top: 5px !important;
    right: 5px !important;
}

.sun-groups-products .sunpics-bundle-item.show-bundle-child-gallery .woocommerce-product-gallery__trigger:before {
    width: 7px !important;
    height: 7px !important;
    top: 6px !important;
    left: 6px !important;
    border: 2px solid #777777 !important;
}

.sun-groups-products .sunpics-bundle-item.show-bundle-child-gallery .woocommerce-product-gallery__trigger:after {
    width: 2px !important;
    height: 8px !important;
    top: 14px !important;
    left: 17px !important;
    background: #777777 !important;
}
/* childs gallery image */

/** Discount price refresh loader **/
.sb-total-price-refresh {
    display: flex;
    align-items: center;
    position: relative;
    padding: 5px 0;
}

.sb-refresh-icon:not(.dashicons-update) {
    display: inline-block;
    width: 20px;
    min-width: 20px;
    height: 20px;
    margin-right: 8px;
    vertical-align: middle;
    cursor: pointer;
    position: relative;
}

.sb-refresh-icon:not(.dashicons-update)::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 3px solid #ccc;
    border-top-color: #d4313a;
    border-left-color: #d4313a;
    border-radius: 50%;
    box-sizing: border-box;
}

.sb-refresh-icon:not(.dashicons-update)::after {
    content: "";
    position: absolute;
    top: 0px;
    right: -1px;
    width: 8px;
    height: 8px;
    background: #d4313a;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    transform: rotate(-60deg);
}

.sb-refresh-icon.loading {
    animation: sb-rotate 1s linear infinite;
    pointer-events: none;
}

@keyframes sb-rotate {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

/** Discount price refresh return message **/
.sb-refresh-message {
    position: absolute;
    background: #ccc;
    color: white;
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 4px;
    white-space: nowrap;
    z-index: 1000;
    pointer-events: none;
    animation: sb-pulse-fade 2.5s ease-out forwards;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.sb-refresh-message.sb-refresh-error {
    background: #d4313a;
}

.sb-refresh-message.sb-refresh-success {
    background: darkgreen;
}

@keyframes sb-pulse-fade {
    0%   { opacity: 0; transform: translateY(0) scale(0.9); }
    10%  { opacity: 1; transform: translateY(-5px) scale(1); }
    90%  { opacity: 1; transform: translateY(-5px) scale(1); }
    100% { opacity: 0; transform: translateY(-10px) scale(0.95); }
}

/** Discounts notice **/
.sun-discount-warning {
    padding: 0px 5px;
}

.sb-price-wrap.has-discounts::after {
    content: '*';
    color: red;
}

.sb-price-wrap.has-discounts {
    display: flex;
}

.sb-price-wrap.has-discounts .loading {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    margin: 0px 5px;
    background: conic-gradient(
            from 0deg,
            #ffffff 0deg,
            #f0f0f0 90deg,
            #e0e0e0 180deg,
            #d0d0d0 270deg,
            #ffffff 360deg
    );
    animation: rotate 1.2s linear infinite;
    position: relative;
}

.sb-price-wrap.has-discounts .loading::before {
    content: '';
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    bottom: 10px;
    border-radius: 50%;
    background: #ffffff;
}

/* Loading Animation */
@keyframes rotate {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}