.iframe-container {
    overflow: hidden;
    /* border: 1px solid #ddd; */
    /* margin: 8px 0; */
    clear: both;
    /* display: inline-block; */
    /* min-width: 100%; */
    /* min-height: 400px; */
    /* position: relative; */
    /* width: calc(100% - 170px); */
    width: 100%;
    min-height: 432px;
    min-width: 180px;
}

.skeleton-detail-product-attribute {
    /* padding: 16px; */
    height: 100%;
    position: relative;
    top: 3px;
    left: 8px;
}

@keyframes perch-loading {
    to {
        background-position-x: -20%;
    }
}

.skeleton-detail-product-price .skeleton-detail-price {
    margin-bottom: 16px;
    /* padding: 8px 16px; */
    list-style: none;
    border-radius: 4px;
    margin: 0;
    height: 100%;
    overflow: hidden;
    /* padding: 0; */
    all: unset;
}

.skeleton-detail-product-price .skeleton-detail-price>li {
    border-radius: 4px;
    background-color: #F5F5F5;
    background: linear-gradient(100deg,
            rgba(255, 255, 255, 0) 40%,
            rgba(255, 255, 255, .5) 50%,
            rgba(255, 255, 255, 0) 60%) #F5F5F5;
    background-size: 200% 100%;
    background-position-x: 180%;
    animation: 1.5s perch-loading ease-in-out infinite;
    /* margin-bottom: 3px; */
    height: 24px;
    list-style: none;
}

.skeleton-detail-product-price .skeleton-detail-price>li:nth-child(1) {
    width: 24%;
}

.skeleton-detail-product-attribute .skeleton-detail-attribute {
    margin-bottom: 16px;
    /* padding: 8px 16px; */
    list-style: none;
    border-radius: 4px;
    margin: 0;
    height: 100%;
    overflow: hidden;
    /* padding: 0; */
    all: unset;
}

.skeleton-detail-product-attribute .skeleton-detail-attribute>li {
    border-radius: 4px;
    background-color: #F5F5F5;
    background: linear-gradient(100deg,
            rgba(255, 255, 255, 0) 40%,
            rgba(255, 255, 255, .5) 50%,
            rgba(255, 255, 255, 0) 60%) #F5F5F5;
    background-size: 200% 100%;
    background-position-x: 180%;
    animation: 1.5s perch-loading ease-in-out infinite;
    margin-bottom: 8px;
    height: 24px;
    list-style: none;
}

.skeleton-detail-product-attribute .skeleton-detail-attribute>li:nth-child(3n+1) {
    width: 60%;
}

.skeleton-detail-product-attribute .skeleton-detail-attribute>li:nth-child(1) {
    width: 90%;
}

#product-attribut-frame {
    /* width: 100%;
    height: 100%; */
    /* display: none; */
    border: none;
    /* visibility:hidden; */
    /* width: 0;
    height: 0; */
    /* min-height: 200px; */
    margin: 0;
    visibility: hidden;
    height: 0;
    /* position: absolute; */
    min-width: 180px;
}

.qp-loading {
    position: absolute;
    z-index: 999999;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    display: none;
}

.qp-loading__mask {
    opacity: 0.10;
    width: 100%;
    height: 100%;
    background-color: #333;
    overflow-x: hidden;
    overflow-y: auto;
}

.qp-loading__img {
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -10px;
    margin-top: -10px;
    width: 24px;
    height: 24px;
    border: 3px solid #ffffff;
    border-top-color: transparent;
    border-radius: 100%;
    animation: circle infinite 0.75s linear;
}

@keyframes circle {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}

.single_add_to_cart_button {
    margin-bottom: 4px !important;
}

/* Hide MOQ hint near price on product page */
.single-product #qpmn-product-price-moq {
    display: none !important;
}

/* Hide inline MOQ hint next to price (theme-injected) */
.single-product .summary.entry-summary > div[style*="display: flex"] > div[style*="color:red"],
.single-product .summary.entry-summary > div[style*="display: flex"] > div[style*="color: red"] {
    display: none !important;
}

/* Keep design button active even if WooCommerce disables add-to-cart UI */
#qpson-sku-design-button,
#qpson-sku-design-button.disabled,
#qpson-sku-design-button[disabled],
#qpson-sku-design-button[aria-disabled="true"],
.woocommerce-variation-add-to-cart.disabled #qpson-sku-design-button,
.woocommerce-variation-add-to-cart.disabled #qpson-sku-design-button.disabled {
    opacity: 1;
    pointer-events: auto;
    filter: none;
}

.single-product div.product form.cart .quantity {
    float: none;
    margin-bottom: 24px;
}


/* Place add-to-cart + design buttons below the quantity selector */
.single-product .woocommerce-variation-add-to-cart {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-end;
    column-gap: 8px;
    row-gap: 12px;
}

/* Apply the same button layout to simple/other product types */
.single-product form.cart {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    column-gap: 8px;
    row-gap: 12px;
}

.single-product .woocommerce-variation-add-to-cart .quantity {
    flex: 0 0 100%;
    width: 100%;
    margin-bottom: 24px;
}

.single-product form.cart .quantity {
    flex: 0 0 100%;
    width: 100%;
    margin-bottom: 24px;
}

.single-product #qpson-variation-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: flex-end;
}

/* Add spacing between price table and quantity selector */
.single-product #qpson-price-list-container {
    margin-bottom: 16px;
}

/* Show variation summary block (price, availability) */
.single-product .single_variation_wrap .woocommerce-variation {
    display: block !important;
}

/* Hide variation description only, keep price visible */
.single-product .single_variation_wrap .woocommerce-variation-description {
    display: none !important;
}



/* WooCommerce variation select: prevent overflow */
.woocommerce div.product form.cart .variations td.value,
.woocommerce div.product form.cart .variations td.value * {
    box-sizing: border-box;
}

.woocommerce div.product form.cart .variations select {
    width: 100%;
    max-width: 100%;
    display: block;
    overflow: hidden;
    /* important */
    text-overflow: ellipsis;
    /* show ... */
    white-space: nowrap;
    /* single line */
    padding-right: 2.2em;
    /* leave space for arrow */
}

/* Some themes wrap select in a custom container */
.woocommerce div.product form.cart .variations td.value {
    max-width: 100%;
    overflow: hidden;
}

/* If your theme uses a custom arrow / appearance */
.woocommerce div.product form.cart .variations select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-clip: padding-box;
}
