/* Uniforma Product Grid V5 */
.upg-grid,.upg-grid *{box-sizing:border-box}.upg-grid{--upg-border:#d9dde2;--upg-heading:#071b31;--upg-text:#243447;--upg-orange:#f4801f;--upg-columns:4;--upg-tablet-columns:2;--upg-mobile-columns:1;display:grid;grid-template-columns:repeat(var(--upg-columns),minmax(0,1fr));width:100%;margin:0;padding:0;overflow:hidden;background:#fff;border-top:1px solid var(--upg-border);border-left:1px solid var(--upg-border)}.upg-card{position:relative;display:flex;min-width:0;min-height:0;flex-direction:column;overflow:hidden;background:#fff;border-right:1px solid var(--upg-border);border-bottom:1px solid var(--upg-border)}.upg-card__header{position:relative;z-index:2;min-height:0;padding:20px 22px 0}.upg-card__title{margin:0!important;color:var(--upg-heading)!important;font-family:"Roboto Condensed","Arial Narrow",Arial,sans-serif!important;font-size:clamp(18px,1.25vw,25px)!important;font-weight:800!important;line-height:1.08!important;letter-spacing:-.02em!important;text-transform:uppercase!important}.upg-card__title a,.upg-card__title a:hover{color:inherit!important;text-decoration:none!important}.upg-card__accent{display:block;width:26px;height:3px;margin:10px 0 11px;background:var(--upg-orange)}.upg-card__description{max-width:250px;margin:0;color:var(--upg-text)!important;font-size:13px!important;line-height:1.4!important}.upg-card__price{margin:7px 0 3px!important;color:var(--upg-orange)!important;font-size:18px!important;font-weight:900!important;line-height:1.15!important}.upg-card__price .amount,.upg-card__price bdi{color:inherit!important;font-size:inherit!important;font-weight:inherit!important}.upg-card__price del{margin-right:5px;color:#8a97a8!important;font-size:.78em!important;opacity:.8}.upg-card__price ins{color:inherit!important;text-decoration:none!important}.upg-card__image-link{display:flex;min-height:0;flex:0 0 auto;align-items:flex-start;justify-content:center;margin:0;padding:0 14px 26px;background:#fff;text-decoration:none!important}.upg-card__image{display:block!important;width:auto!important;max-width:88%!important;height:265px!important;max-height:265px!important;margin:0 auto!important;object-fit:contain!important;object-position:center top!important;background:transparent!important;transition:opacity .16s ease,transform .2s ease}.upg-card:hover .upg-card__image{transform:scale(1.01)}.upg-card.is-changing .upg-card__image{opacity:.32}.upg-swatches{position:absolute;z-index:5;bottom:15px;left:20px;display:flex;max-width:calc(100% - 40px);flex-wrap:wrap;gap:7px}.upg-grid button.upg-swatch{display:inline-block!important;width:19px!important;min-width:19px!important;max-width:19px!important;height:19px!important;min-height:19px!important;max-height:19px!important;margin:0!important;padding:0!important;cursor:pointer!important;appearance:none!important;background-image:none!important;border:2px solid #fff!important;border-radius:50%!important;box-shadow:0 0 0 1px rgba(7,27,49,.55)!important}.upg-grid button.upg-swatch.is-active{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--upg-heading)!important}
body.upg-v5-product{--upg-navy:#071b31;--upg-orange:#f4801f}body.upg-v5-product div.product{display:block!important;grid-template-columns:none!important;gap:normal!important;max-width:none!important;padding:0!important}body.upg-v5-product div.product:after{display:table;clear:both;content:""}body.upg-v5-product .woocommerce-product-gallery,body.upg-v5-product div.product .woocommerce-product-gallery{position:relative!important;top:auto!important;padding:14px!important;overflow:hidden;background:#fff!important;border:1px solid rgba(7,27,49,.10)!important;border-radius:14px!important;box-shadow:0 10px 30px rgba(0,0,0,.10)!important}body.upg-v5-product .woocommerce-product-gallery__wrapper,body.upg-v5-product .woocommerce-product-gallery__image{width:100%!important;margin:0!important;background:#fff!important}body.upg-v5-product .woocommerce-product-gallery__image img,body.upg-v5-product .woocommerce-product-gallery img{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;max-height:620px!important;margin:0 auto!important;object-fit:contain!important;object-position:center!important;background:#fff!important}body.upg-v5-product .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:9px!important;width:100%!important;margin:12px 0 0!important;padding:0!important}body.upg-v5-product .flex-control-thumbs li{float:none!important;width:auto!important;margin:0!important;padding:0!important}body.upg-v5-product .flex-control-thumbs img{display:block!important;width:100%!important;height:82px!important;padding:3px!important;object-fit:contain!important;background:#fff!important;border:1px solid rgba(7,27,49,.12)!important;border-radius:8px!important;opacity:.72!important}body.upg-v5-product .flex-control-thumbs img.flex-active,body.upg-v5-product .flex-control-thumbs img:hover{border-color:var(--upg-orange)!important;opacity:1!important}body.upg-v5-product div.product .summary{padding:28px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:14px!important}body.upg-v5-product .summary .product_title{margin:0 0 11px!important;font-family:"Roboto Condensed","Arial Narrow",Arial,sans-serif!important;font-size:clamp(29px,3vw,43px)!important;font-weight:800!important;line-height:1.03!important;letter-spacing:-.025em!important;text-transform:uppercase!important}body.upg-v5-product .summary>p.price,body.upg-v5-product .summary>span.price{display:none!important}.upg-unit-price{display:flex;align-items:baseline;gap:10px;margin:18px 0 14px;padding:12px 14px;background:rgba(244,128,31,.10);border:1px solid rgba(244,128,31,.34);border-radius:9px}.upg-unit-price__label{color:var(--upg-orange)!important;font-size:16px!important;font-weight:800!important}.upg-unit-price__value,.upg-unit-price__value .amount,.upg-unit-price__value bdi{color:var(--upg-orange)!important;font-size:28px!important;font-weight:900!important;line-height:1!important}body.upg-v5-product .woocommerce-variation-price{display:none!important}body.upg-v5-product .woocommerce-product-details__short-description{margin-bottom:16px!important;font-size:15px!important;line-height:1.65!important}
body.single-product.upg-v5-product .product .summary table.variations th.label,body.single-product.upg-v5-product .product .summary table.variations th.label label,body.single-product.upg-v5-product .product .summary .variations .label,body.single-product.upg-v5-product .product .summary .variations label,body.single-product.upg-v5-product .product .summary .product_meta .sku_wrapper,body.single-product.upg-v5-product .product .summary .product_meta .posted_in,body.single-product.upg-v5-product .product .summary .product_meta .tagged_as,body.single-product.upg-v5-product .product .summary .product_meta .meta-label,body.single-product.upg-v5-product .product .summary .social-share .share-title,body.single-product.upg-v5-product .product .summary .share-title,body.single-product.upg-v5-product .product .summary .product-share-title,body.single-product.upg-v5-product .product .summary .reset_variations,body.single-product.upg-v5-product .product .summary .upg-orange-label{color:var(--upg-orange)!important;font-weight:800!important}body.single-product.upg-v5-product .product .summary .product_meta .sku,body.single-product.upg-v5-product .product .summary .product_meta .posted_in a,body.single-product.upg-v5-product .product .summary .product_meta .tagged_as a{color:#fff!important;font-weight:400!important}body.single-product.upg-v5-product .woocommerce-tabs ul.tabs li.active>a,body.single-product.upg-v5-product .woocommerce-tabs .tabs li.active>a,body.single-product.upg-v5-product .woocommerce-tabs ul.tabs li>a:hover{color:var(--upg-orange)!important}
.upg-single-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0 8px}.upg-single-benefit{display:flex;min-width:0;align-items:center;gap:8px;padding:10px;color:inherit;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.13);border-radius:9px}.upg-benefit-mark{display:inline-flex;width:28px;height:28px;flex:0 0 28px;align-items:center;justify-content:center;color:var(--upg-orange);border:1px solid var(--upg-orange);border-radius:50%;font-size:14px;font-weight:800}.upg-single-benefit>span:last-child{display:flex;min-width:0;flex-direction:column}.upg-single-benefit strong{font-size:11px;line-height:1.2;text-transform:uppercase}.upg-single-benefit small{margin-top:2px;font-size:9px;line-height:1.2;opacity:.72}.upg-single-color-picker{margin:4px 0 12px;padding:14px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.13);border-radius:10px}.upg-single-color-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;font-size:12px}.upg-single-color-top>span,.upg-selected-color-name{color:var(--upg-orange)!important;font-weight:800!important}.upg-single-color-top>span{text-transform:uppercase}.upg-single-swatches{display:flex;flex-wrap:wrap;gap:10px}body.upg-v5-product button.upg-single-swatch{display:inline-block!important;width:31px!important;min-width:31px!important;max-width:31px!important;height:31px!important;min-height:31px!important;max-height:31px!important;margin:0!important;padding:0!important;cursor:pointer!important;appearance:none!important;background-image:none!important;border:3px solid #fff!important;border-radius:50%!important;box-shadow:0 0 0 1px rgba(255,255,255,.45)!important}body.upg-v5-product button.upg-single-swatch.is-active{box-shadow:0 0 0 2px #0b1e33,0 0 0 4px var(--upg-orange)!important}.upg-native-select{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}
body.upg-v5-product .quantity input.qty{min-height:46px!important;border-radius:7px!important}body.upg-v5-product .single_add_to_cart_button,body.upg-v5-product button.single_add_to_cart_button{min-height:46px!important;color:#fff!important;background:var(--upg-navy)!important;border:0!important;border-radius:7px!important;font-weight:800!important}body.upg-v5-product .summary a[class*="personal"],body.upg-v5-product .summary button[class*="personal"],body.upg-v5-product .summary .wcdp-button,body.upg-v5-product .summary .wcdp-btn,body.upg-v5-product .summary [class*="wcdp"] a.button,body.upg-v5-product .summary [class*="wcdp"] button{min-height:46px!important;color:#fff!important;background:var(--upg-orange)!important;border:0!important;border-radius:7px!important;font-weight:800!important}.upg-action-pair{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;width:100%;margin:10px 0}.upg-action-pair>*{width:100%!important;margin:0!important}.upg-support-button{display:inline-flex!important;min-height:46px;align-items:center;justify-content:center;gap:8px;padding:10px 14px;color:#fff!important;background:#128c7e!important;border:0!important;border-radius:7px!important;font-weight:800!important;text-decoration:none!important}.upg-support-button:hover{color:#fff!important;background:#0f7d71!important}.upg-support-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.upg-v5-product .woocommerce-tabs,body.upg-v5-product div.product .woocommerce-tabs{display:block!important;clear:both!important;width:100%!important;max-width:none!important;margin-top:38px!important;padding:0!important}body.upg-v5-product .woocommerce-tabs .panel{width:100%!important;min-height:0!important;padding:24px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:10px!important}
body.upg-v5-product .related.products,body.upg-v5-product .upsells.products{display:block!important;clear:both!important;width:100%!important;max-width:none!important;margin-top:40px!important}body.upg-v5-product .related.products ul.products,body.upg-v5-product .upsells.products ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;width:100%!important}body.upg-v5-product .related.products ul.products li.product,body.upg-v5-product .upsells.products ul.products li.product{position:relative!important;float:none!important;width:auto!important;min-width:0!important;margin:0!important;padding:14px 14px 18px!important;overflow:hidden;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:10px!important}body.upg-v5-product .related.products ul.products li.product a img,body.upg-v5-product .upsells.products ul.products li.product a img,body.upg-v5-product .related.products img,body.upg-v5-product .upsells.products img{display:block!important;width:100%!important;height:220px!important;max-width:100%!important;margin:0 auto 12px!important;object-fit:contain!important;background:#fff!important;border-radius:7px!important}body.upg-v5-product .related.products form.variations_form,body.upg-v5-product .related.products .variations_form,body.upg-v5-product .related.products .variable-items-wrapper,body.upg-v5-product .related.products .woo-variation-swatches,body.upg-v5-product .related.products .wd-swatches-grid,body.upg-v5-product .related.products .wd-swatches-product,body.upg-v5-product .related.products .swatches-on-grid,body.upg-v5-product .related.products .product-swatches,body.upg-v5-product .related.products .variation-swatches,body.upg-v5-product .related.products .swatchly_loop_variation_form,body.upg-v5-product .related.products .wvs-archive-variation-wrapper,body.upg-v5-product .upsells.products form.variations_form,body.upg-v5-product .upsells.products .variable-items-wrapper,body.upg-v5-product .upsells.products .wd-swatches-grid,body.upg-v5-product .upsells.products .swatches-on-grid{display:none!important}.upg-related-swatches{display:flex!important;flex-wrap:wrap;gap:7px;margin-top:10px}body.upg-v5-product button.upg-related-swatch{display:inline-block!important;width:20px!important;min-width:20px!important;max-width:20px!important;height:20px!important;min-height:20px!important;max-height:20px!important;margin:0!important;padding:0!important;cursor:pointer!important;appearance:none!important;background-image:none!important;border:2px solid #fff!important;border-radius:50%!important;box-shadow:0 0 0 1px rgba(255,255,255,.45)!important}body.upg-v5-product button.upg-related-swatch.is-active{box-shadow:0 0 0 2px #0b1e33,0 0 0 4px var(--upg-orange)!important}
@media(max-width:1024px){.upg-grid{grid-template-columns:repeat(var(--upg-tablet-columns),minmax(0,1fr))}body.upg-v5-product .related.products ul.products,body.upg-v5-product .upsells.products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}.upg-single-benefits{grid-template-columns:1fr}}@media(max-width:767px){.upg-grid{grid-template-columns:repeat(var(--upg-mobile-columns),minmax(0,1fr))}.upg-card__image{height:250px!important;max-height:250px!important}body.upg-v5-product div.product .summary{padding:20px!important}.upg-action-pair{grid-template-columns:1fr}body.upg-v5-product .related.products ul.products,body.upg-v5-product .upsells.products ul.products{grid-template-columns:1fr!important}}


/* =========================================================
   V5.3 HARD FIXES
   ========================================================= */

/* 1) Never show the theme/WooCommerce price in summary.
      The only visible price must be .upg-unit-price. */
body.single-product.upg-v5-product .summary .price,
body.single-product.upg-v5-product .summary p.price,
body.single-product.upg-v5-product .summary span.price,
body.single-product.upg-v5-product .summary div.price,
body.single-product.upg-v5-product .summary .product-price,
body.single-product.upg-v5-product .summary .woocommerce-Price-amount.price {
    display: none !important;
}

/* Our own price must remain visible. */
body.single-product.upg-v5-product .summary .upg-unit-price {
    display: flex !important;
}

body.single-product.upg-v5-product .summary .upg-unit-price .woocommerce-Price-amount,
body.single-product.upg-v5-product .summary .upg-unit-price .amount,
body.single-product.upg-v5-product .summary .upg-unit-price bdi {
    display: inline !important;
}

/* 2) Force requested labels orange even against theme !important rules. */
body.single-product.upg-v5-product .summary table.variations th.label,
body.single-product.upg-v5-product .summary table.variations th.label *,
body.single-product.upg-v5-product .summary .variations label,
body.single-product.upg-v5-product .summary .reset_variations,
body.single-product.upg-v5-product .summary .product_meta > span,
body.single-product.upg-v5-product .summary .product_meta .sku_wrapper,
body.single-product.upg-v5-product .summary .product_meta .posted_in,
body.single-product.upg-v5-product .summary .product_meta .tagged_as,
body.single-product.upg-v5-product .summary .share-title,
body.single-product.upg-v5-product .summary .social-share-title,
body.single-product.upg-v5-product .summary .product-share-title {
    color: #F4801F !important;
}

/* Values remain light, labels remain orange. */
body.single-product.upg-v5-product .summary .product_meta .sku,
body.single-product.upg-v5-product .summary .product_meta .posted_in a,
body.single-product.upg-v5-product .summary .product_meta .tagged_as a {
    color: #FFFFFF !important;
}

/* Active Woo tabs orange. */
body.single-product.upg-v5-product .woocommerce-tabs ul.tabs li.active > a,
body.single-product.upg-v5-product .woocommerce-tabs .tabs li.active > a,
body.single-product.upg-v5-product .woocommerce-tabs ul.tabs li > a:hover {
    color: #F4801F !important;
}

/* 3) Related: hide practically all native variation UI.
      Our .upg-related-swatches are explicitly re-enabled below. */
body.single-product.upg-v5-product .related.products li.product form,
body.single-product.upg-v5-product .related.products li.product select,
body.single-product.upg-v5-product .related.products li.product button:not(.upg-related-swatch),
body.single-product.upg-v5-product .related.products li.product [class*="swatch"]:not(.upg-related-swatches):not(.upg-related-swatch),
body.single-product.upg-v5-product .related.products li.product [class*="variation"]:not(.upg-related-variation-data),
body.single-product.upg-v5-product .related.products li.product [class*="attribute"]:not(.upg-related-swatches),
body.single-product.upg-v5-product .upsells.products li.product form,
body.single-product.upg-v5-product .upsells.products li.product select,
body.single-product.upg-v5-product .upsells.products li.product button:not(.upg-related-swatch),
body.single-product.upg-v5-product .upsells.products li.product [class*="swatch"]:not(.upg-related-swatches):not(.upg-related-swatch),
body.single-product.upg-v5-product .upsells.products li.product [class*="variation"]:not(.upg-related-variation-data),
body.single-product.upg-v5-product .upsells.products li.product [class*="attribute"]:not(.upg-related-swatches) {
    display: none !important;
}

body.single-product.upg-v5-product .related.products li.product .upg-related-swatches,
body.single-product.upg-v5-product .upsells.products li.product .upg-related-swatches {
    display: flex !important;
}

body.single-product.upg-v5-product .related.products li.product button.upg-related-swatch,
body.single-product.upg-v5-product .upsells.products li.product button.upg-related-swatch {
    display: inline-block !important;
}

/* Related heading requested in Albanian/orange-friendly styling */
body.single-product.upg-v5-product .related.products > h2,
body.single-product.upg-v5-product .upsells.products > h2 {
    color: #FFFFFF !important;
}

/* Main grid price remains visible and stronger. */
.upg-grid .upg-card__price {
    display: block !important;
    color: #F4801F !important;
    font-size: 19px !important;
    font-weight: 900 !important;
}


/* =========================================================
   V5.4 – BUTTONS / READABILITY / RELATED SWATCH CLEANUP
   ========================================================= */

/* Personalizo + Kontakto = exact equal cells */
body.single-product.upg-v5-product .upg-action-pair {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 12px !important;
    width: 100% !important;
}

body.single-product.upg-v5-product .upg-action-pair > a,
body.single-product.upg-v5-product .upg-action-pair > button,
body.single-product.upg-v5-product .upg-action-pair .button,
body.single-product.upg-v5-product .upg-action-pair .wcdp-button,
body.single-product.upg-v5-product .upg-action-pair .wcdp-btn,
body.single-product.upg-v5-product .upg-support-button {
    display: inline-flex !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 54px !important;
    height: 54px !important;
    margin: 0 !important;
    padding: 0 18px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    border-radius: 9px !important;
    box-sizing: border-box !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-align: center !important;
    white-space: nowrap !important;
}

/* Compare gets same visual rectangle as Contact. */
body.single-product.upg-v5-product .summary a.compare,
body.single-product.upg-v5-product .summary button.compare,
body.single-product.upg-v5-product .summary .compare.button,
body.single-product.upg-v5-product .summary [class*="compare"] > a,
body.single-product.upg-v5-product .summary [class*="compare"] > button {
    display: inline-flex !important;
    width: calc(50% - 6px) !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 54px !important;
    height: 54px !important;
    margin: 10px 0 !important;
    padding: 0 18px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    color: #fff !important;
    background: #F4801F !important;
    border: 0 !important;
    border-radius: 9px !important;
    box-sizing: border-box !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
}

/* Wishlist was still black on dark background. */
body.single-product.upg-v5-product .summary .yith-wcwl-add-button a,
body.single-product.upg-v5-product .summary .add_to_wishlist,
body.single-product.upg-v5-product .summary [class*="wishlist"] a,
body.single-product.upg-v5-product .summary [class*="wishlist"] button,
body.single-product.upg-v5-product .summary [class*="wishlist"] span {
    color: #fff !important;
}

body.single-product.upg-v5-product .summary [class*="wishlist"] svg,
body.single-product.upg-v5-product .summary [class*="wishlist"] i {
    color: #F4801F !important;
    fill: currentColor !important;
}

/* Labels that must never be black. */
body.single-product.upg-v5-product .summary .product_meta .sku_wrapper,
body.single-product.upg-v5-product .summary .product_meta .posted_in,
body.single-product.upg-v5-product .summary .product_meta .tagged_as,
body.single-product.upg-v5-product .summary .reset_variations,
body.single-product.upg-v5-product .summary table.variations th.label,
body.single-product.upg-v5-product .summary table.variations th.label label,
body.single-product.upg-v5-product .summary .share-title,
body.single-product.upg-v5-product .summary .product-share-title,
body.single-product.upg-v5-product .summary .social-share-title {
    color: #F4801F !important;
}

/* Share icons stay readable. */
body.single-product.upg-v5-product .summary .social-share a,
body.single-product.upg-v5-product .summary [class*="share"] a {
    color: #fff !important;
}

/* Related title + prices. */
body.single-product.upg-v5-product .related.products > h2,
body.single-product.upg-v5-product .upsells.products > h2 {
    color: #fff !important;
}

body.single-product.upg-v5-product .related.products li.product .price,
body.single-product.upg-v5-product .upsells.products li.product .price,
body.single-product.upg-v5-product .related.products li.product .price *,
body.single-product.upg-v5-product .upsells.products li.product .price * {
    color: #F4801F !important;
    font-weight: 800 !important;
}

/* Hide text/chip swatch systems broadly; re-enable ONLY ours. */
body.single-product.upg-v5-product .related.products li.product .wd-swatches-grid,
body.single-product.upg-v5-product .related.products li.product .wd-swatches-product,
body.single-product.upg-v5-product .related.products li.product .swatches-on-grid,
body.single-product.upg-v5-product .related.products li.product .product-swatches,
body.single-product.upg-v5-product .related.products li.product .variation-swatches,
body.single-product.upg-v5-product .related.products li.product .variable-items-wrapper,
body.single-product.upg-v5-product .related.products li.product .wvs-archive-variation-wrapper,
body.single-product.upg-v5-product .related.products li.product .swatchly_loop_variation_form,
body.single-product.upg-v5-product .related.products li.product [class*="swatch"]:not(.upg-related-swatches):not(.upg-related-swatch),
body.single-product.upg-v5-product .upsells.products li.product .wd-swatches-grid,
body.single-product.upg-v5-product .upsells.products li.product .wd-swatches-product,
body.single-product.upg-v5-product .upsells.products li.product .swatches-on-grid,
body.single-product.upg-v5-product .upsells.products li.product .product-swatches,
body.single-product.upg-v5-product .upsells.products li.product .variation-swatches,
body.single-product.upg-v5-product .upsells.products li.product .variable-items-wrapper,
body.single-product.upg-v5-product .upsells.products li.product .wvs-archive-variation-wrapper,
body.single-product.upg-v5-product .upsells.products li.product .swatchly_loop_variation_form,
body.single-product.upg-v5-product .upsells.products li.product [class*="swatch"]:not(.upg-related-swatches):not(.upg-related-swatch) {
    display: none !important;
}

body.single-product.upg-v5-product .related.products li.product .upg-related-swatches,
body.single-product.upg-v5-product .upsells.products li.product .upg-related-swatches {
    display: flex !important;
}

body.single-product.upg-v5-product .related.products li.product .upg-related-swatch,
body.single-product.upg-v5-product .upsells.products li.product .upg-related-swatch {
    display: inline-block !important;
}

@media (max-width: 767px) {
    body.single-product.upg-v5-product .upg-action-pair {
        grid-template-columns: 1fr !important;
    }

    body.single-product.upg-v5-product .summary a.compare,
    body.single-product.upg-v5-product .summary button.compare,
    body.single-product.upg-v5-product .summary .compare.button,
    body.single-product.upg-v5-product .summary [class*="compare"] > a,
    body.single-product.upg-v5-product .summary [class*="compare"] > button {
        width: 100% !important;
    }
}


/* =========================================================
   V5.5 – FINAL TARGETED FIXES
   ========================================================= */

/* Explicit meta labels created by JS. */
body.single-product.upg-v5-product .summary .upg-meta-label {
    color: #F4801F !important;
    font-weight: 800 !important;
}

/* Values stay white. */
body.single-product.upg-v5-product .summary .product_meta .sku,
body.single-product.upg-v5-product .summary .product_meta .posted_in > a,
body.single-product.upg-v5-product .summary .product_meta .tagged_as > a {
    color: #FFFFFF !important;
}

/* Compare: completely normalize YITH/theme styling. */
body.single-product.upg-v5-product .summary .upg-compare-fixed,
body.single-product.upg-v5-product .summary a.upg-compare-fixed,
body.single-product.upg-v5-product .summary button.upg-compare-fixed {
    display: inline-flex !important;
    width: calc(50% - 6px) !important;
    min-width: calc(50% - 6px) !important;
    max-width: calc(50% - 6px) !important;
    height: 54px !important;
    min-height: 54px !important;
    max-height: 54px !important;
    margin: 10px 0 !important;
    padding: 0 18px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    color: #FFFFFF !important;
    background: #F4801F !important;
    border: 0 !important;
    border-radius: 9px !important;
    box-shadow: none !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;
    box-sizing: border-box !important;
}

body.single-product.upg-v5-product .summary .upg-compare-fixed::before,
body.single-product.upg-v5-product .summary .upg-compare-fixed::after {
    display: none !important;
    content: none !important;
}

/* Remove any theme icon inside compare after JS normalizes its markup. */
body.single-product.upg-v5-product .summary .upg-compare-fixed i,
body.single-product.upg-v5-product .summary .upg-compare-fixed svg,
body.single-product.upg-v5-product .summary .upg-compare-fixed [class*="icon"] {
    display: none !important;
}

/* Related section: only our circles can appear as variation controls. */
body.single-product.upg-v5-product .related.products li.product .upg-related-swatches,
body.single-product.upg-v5-product .upsells.products li.product .upg-related-swatches {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    margin-top: 10px !important;
}

body.single-product.upg-v5-product .related.products li.product .upg-related-swatch,
body.single-product.upg-v5-product .upsells.products li.product .upg-related-swatch {
    display: inline-block !important;
    width: 20px !important;
    min-width: 20px !important;
    max-width: 20px !important;
    height: 20px !important;
    min-height: 20px !important;
    max-height: 20px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 50% !important;
}

/* Related prices readable on dark background. */
body.single-product.upg-v5-product .related.products li.product .price,
body.single-product.upg-v5-product .related.products li.product .price *,
body.single-product.upg-v5-product .upsells.products li.product .price,
body.single-product.upg-v5-product .upsells.products li.product .price * {
    color: #F4801F !important;
}

@media (max-width: 767px) {
    body.single-product.upg-v5-product .summary .upg-compare-fixed,
    body.single-product.upg-v5-product .summary a.upg-compare-fixed,
    body.single-product.upg-v5-product .summary button.upg-compare-fixed {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
    }
}


/* =========================================================
   V5.6 – HARU exact fixes
   ========================================================= */

/* Exact Haru color variation list: NEVER show in Related/Upsells.
   Only our circular .upg-related-swatches remain. */
body.single-product.upg-v5-product .related.products .haru-variations-list.pa_ngjyra,
body.single-product.upg-v5-product .upsells.products .haru-variations-list.pa_ngjyra,
body.single-product.upg-v5-product .related.products .haru-variations-list,
body.single-product.upg-v5-product .upsells.products .haru-variations-list {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Re-enable ONLY our circles. */
body.single-product.upg-v5-product .related.products .upg-related-swatches,
body.single-product.upg-v5-product .upsells.products .upg-related-swatches {
    display: flex !important;
    visibility: visible !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}

/* Explicit final SKU/Category labels. */
body.single-product.upg-v5-product .summary .upg-meta-final {
    display: inline !important;
    color: #F4801F !important;
    font-weight: 800 !important;
}

body.single-product.upg-v5-product .summary .upg-meta-value,
body.single-product.upg-v5-product .summary .upg-meta-value a {
    color: #FFFFFF !important;
    font-weight: 400 !important;
}

/* New compare button created outside the Haru/YITH wrapper. */
body.single-product.upg-v5-product .summary .upg-compare-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 12px 0 !important;
}

body.single-product.upg-v5-product .summary .upg-compare-spacer {
    min-height: 54px !important;
}

body.single-product.upg-v5-product .summary .upg-compare-new {
    display: inline-flex !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 54px !important;
    min-height: 54px !important;
    max-height: 54px !important;
    margin: 0 !important;
    padding: 0 18px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    color: #FFFFFF !important;
    background: #F4801F !important;
    border: 0 !important;
    border-radius: 9px !important;
    box-shadow: none !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/* Hide old compare UI completely once the new button exists. */
body.single-product.upg-v5-product .summary .upg-old-compare-hidden {
    display: none !important;
    visibility: hidden !important;
}

/* Related product price must be visible in orange. */
body.single-product.upg-v5-product .related.products li.product .price,
body.single-product.upg-v5-product .related.products li.product .price *,
body.single-product.upg-v5-product .upsells.products li.product .price,
body.single-product.upg-v5-product .upsells.products li.product .price * {
    color: #F4801F !important;
}

@media (max-width: 767px) {
    body.single-product.upg-v5-product .summary .upg-compare-row {
        grid-template-columns: 1fr !important;
    }

    body.single-product.upg-v5-product .summary .upg-compare-spacer {
        display: none !important;
    }
}


/* =========================================================
   V5.7 – PRICE+QTY / COMPARE / SKU
   ========================================================= */

/* Çmimi / Copë physically next to quantity. */
body.single-product.upg-v5-product .summary .upg-price-qty-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 150px !important;
    gap: 12px !important;
    width: 100% !important;
    align-items: stretch !important;
    margin: 12px 0 !important;
}

body.single-product.upg-v5-product .summary .upg-price-qty-row .upg-unit-price {
    display: flex !important;
    width: 100% !important;
    min-height: 54px !important;
    height: 54px !important;
    margin: 0 !important;
    padding: 0 16px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    box-sizing: border-box !important;
}

body.single-product.upg-v5-product .summary .upg-price-qty-row .quantity {
    display: flex !important;
    width: 150px !important;
    min-width: 150px !important;
    max-width: 150px !important;
    height: 54px !important;
    margin: 0 !important;
    align-items: stretch !important;
}

body.single-product.upg-v5-product .summary .upg-price-qty-row .quantity input.qty {
    height: 54px !important;
    min-height: 54px !important;
}

/* New neutral compare button, not a YITH/Haru compare element. */
body.single-product.upg-v5-product .summary .upg-compare-v57-row {
    display: flex !important;
    width: 100% !important;
    margin: 12px 0 !important;
    justify-content: flex-end !important;
}

body.single-product.upg-v5-product .summary button.upg-compare-v57 {
    display: inline-flex !important;
    width: calc(50% - 6px) !important;
    min-width: calc(50% - 6px) !important;
    max-width: calc(50% - 6px) !important;
    height: 54px !important;
    min-height: 54px !important;
    max-height: 54px !important;
    margin: 0 !important;
    padding: 0 18px !important;
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    background: #F4801F !important;
    border: 0 !important;
    border-radius: 9px !important;
    box-shadow: none !important;
    appearance: none !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-transform: none !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

/* The real YITH/Haru compare control remains in DOM for functionality, but invisible. */
body.single-product.upg-v5-product .summary .upg-compare-original-v57 {
    position: absolute !important;
    left: -99999px !important;
    top: auto !important;
    width: 1px !important;
    height: 1px !important;
    min-width: 1px !important;
    min-height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* SKU and Category final markup. */
body.single-product.upg-v5-product .summary .product_meta .upg-meta-label-v57 {
    color: #F4801F !important;
    font-weight: 800 !important;
}

body.single-product.upg-v5-product .summary .product_meta .upg-meta-value-v57,
body.single-product.upg-v5-product .summary .product_meta .upg-meta-value-v57 a {
    color: #FFFFFF !important;
    font-weight: 400 !important;
}

@media (max-width: 767px) {
    body.single-product.upg-v5-product .summary .upg-price-qty-row {
        grid-template-columns: minmax(0, 1fr) 125px !important;
    }

    body.single-product.upg-v5-product .summary .upg-price-qty-row .quantity {
        width: 125px !important;
        min-width: 125px !important;
        max-width: 125px !important;
    }

    body.single-product.upg-v5-product .summary button.upg-compare-v57 {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
    }
}


/* =========================================================
   V5.8 – PHP DIRECT COMPARE + META
   ========================================================= */

/* Old Haru / YITH compare controls are no longer used visually. */
body.single-product.upg-v5-product .summary a.compare:not(.upg-compare-v58),
body.single-product.upg-v5-product .summary button.compare,
body.single-product.upg-v5-product .summary .compare.button,
body.single-product.upg-v5-product .summary .upg-compare-v57-row,
body.single-product.upg-v5-product .summary .upg-compare-row,
body.single-product.upg-v5-product .summary .upg-compare-new,
body.single-product.upg-v5-product .summary .upg-compare-fixed {
    display: none !important;
}

/* PHP-rendered compare button: same visual size as Contact. */
body.single-product.upg-v5-product .summary .upg-compare-v58-row {
    display: flex !important;
    width: 100% !important;
    margin: 12px 0 !important;
    justify-content: flex-end !important;
}

body.single-product.upg-v5-product .summary a.upg-compare-v58 {
    display: inline-flex !important;
    width: calc(50% - 6px) !important;
    min-width: calc(50% - 6px) !important;
    max-width: calc(50% - 6px) !important;
    height: 54px !important;
    min-height: 54px !important;
    max-height: 54px !important;
    margin: 0 !important;
    padding: 0 18px !important;
    align-items: center !important;
    justify-content: center !important;
    color: #FFFFFF !important;
    background: #F4801F !important;
    border: 0 !important;
    border-radius: 9px !important;
    box-shadow: none !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

/* Hide the theme's SKU/category wrappers completely.
   V5.8 outputs fresh data directly from WooCommerce. */
body.single-product.upg-v5-product .summary .product_meta .sku_wrapper,
body.single-product.upg-v5-product .summary .product_meta .posted_in {
    display: none !important;
}

/* The clean PHP-rendered SKU / Category block. */
body.single-product.upg-v5-product .summary .upg-meta-v58 {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    width: 100% !important;
    margin: 18px 0 0 !important;
    padding: 18px 0 0 !important;
    border-top: 1px solid rgba(255,255,255,.72) !important;
}

body.single-product.upg-v5-product .summary .upg-meta-v58__row {
    display: flex !important;
    align-items: baseline !important;
    gap: 8px !important;
    width: 100% !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
}

body.single-product.upg-v5-product .summary .upg-meta-v58__label {
    color: #F4801F !important;
    font-weight: 800 !important;
}

body.single-product.upg-v5-product .summary .upg-meta-v58__value,
body.single-product.upg-v5-product .summary .upg-meta-v58__value a {
    color: #FFFFFF !important;
    font-weight: 400 !important;
    text-decoration: none !important;
}

/* Preserve price + quantity row from V5.7. */
body.single-product.upg-v5-product .summary .upg-price-qty-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 150px !important;
    gap: 12px !important;
    align-items: stretch !important;
    width: 100% !important;
}

@media (max-width: 767px) {
    body.single-product.upg-v5-product .summary a.upg-compare-v58 {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
    }

    body.single-product.upg-v5-product .summary .upg-meta-v58__row {
        flex-wrap: wrap !important;
    }
}


/* =========================================================
   V5.10 – Wishlist + Compare compact action row
   ========================================================= */

body.single-product.upg-v5-product .summary .upg-wishlist-compare-row {
    display: flex !important;
    width: 100% !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    margin: 12px 0 16px !important;
}

/* Wishlist keeps its natural/link style but stays aligned vertically. */
body.single-product.upg-v5-product .summary .upg-wishlist-compare-row .upg-wishlist-slot {
    display: flex !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    align-items: center !important;
}

body.single-product.upg-v5-product .summary .upg-wishlist-compare-row .upg-wishlist-slot a,
body.single-product.upg-v5-product .summary .upg-wishlist-compare-row .upg-wishlist-slot button,
body.single-product.upg-v5-product .summary .upg-wishlist-compare-row .upg-wishlist-slot span {
    color: #FFFFFF !important;
}

/* Compare becomes a compact secondary action. */
body.single-product.upg-v5-product .summary .upg-wishlist-compare-row .upg-compare-v58-row {
    display: flex !important;
    width: auto !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    justify-content: flex-end !important;
}

body.single-product.upg-v5-product .summary .upg-wishlist-compare-row a.upg-compare-v58 {
    display: inline-flex !important;
    width: auto !important;
    min-width: 118px !important;
    max-width: none !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    margin: 0 !important;
    padding: 0 15px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    color: #FFFFFF !important;
    background: #F4801F !important;
    border: 0 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

body.single-product.upg-v5-product .summary .upg-compare-icon {
    display: block !important;
    width: 19px !important;
    height: 19px !important;
    flex: 0 0 19px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

/* Disable old 50%-width rules when button is moved beside wishlist. */
body.single-product.upg-v5-product .summary .upg-wishlist-compare-row .upg-compare-v58 {
    min-width: 118px !important;
    width: auto !important;
    max-width: none !important;
}

/* If theme applies huge wishlist margins, normalize them inside our row. */
body.single-product.upg-v5-product .summary .upg-wishlist-compare-row .yith-wcwl-add-to-wishlist,
body.single-product.upg-v5-product .summary .upg-wishlist-compare-row .yith-wcwl-add-button,
body.single-product.upg-v5-product .summary .upg-wishlist-compare-row [class*="wishlist"] {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

@media (max-width: 480px) {
    body.single-product.upg-v5-product .summary .upg-wishlist-compare-row {
        gap: 9px !important;
    }

    body.single-product.upg-v5-product .summary .upg-wishlist-compare-row a.upg-compare-v58 {
        min-width: 106px !important;
        height: 40px !important;
        min-height: 40px !important;
        max-height: 40px !important;
        padding: 0 12px !important;
        font-size: 13px !important;
    }
}


/* =========================================================
   V5.11 – persistent Compare after Stripe AJAX rendering
   ========================================================= */

body.single-product.upg-v5-product .summary .upg-wishlist-compare-v511 {
    display: flex !important;
    width: 100% !important;
    min-height: 42px !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    margin: 12px 0 16px !important;
    position: relative !important;
    z-index: 2 !important;
}

body.single-product.upg-v5-product .summary .upg-wishlist-v511 {
    display: flex !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    align-items: center !important;
}

body.single-product.upg-v5-product .summary .upg-wishlist-v511 a,
body.single-product.upg-v5-product .summary .upg-wishlist-v511 button,
body.single-product.upg-v5-product .summary .upg-wishlist-v511 span {
    color: #FFFFFF !important;
}

/* Compare is built by JS directly from productId, so Stripe can't permanently remove it. */
body.single-product.upg-v5-product .summary a.upg-compare-v511 {
    display: inline-flex !important;
    width: auto !important;
    min-width: 118px !important;
    max-width: none !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 15px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    color: #FFFFFF !important;
    background: #F4801F !important;
    border: 0 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

body.single-product.upg-v5-product .summary a.upg-compare-v511:hover {
    color: #FFFFFF !important;
    background: #D96C12 !important;
}

body.single-product.upg-v5-product .summary .upg-compare-v511-icon {
    display: block !important;
    width: 19px !important;
    height: 19px !important;
    flex: 0 0 19px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

/* Hide all older plugin-generated compare controls. */
body.single-product.upg-v5-product .summary .upg-compare-v58-row,
body.single-product.upg-v5-product .summary .upg-wishlist-compare-row,
body.single-product.upg-v5-product .summary .upg-compare-v57-row,
body.single-product.upg-v5-product .summary .upg-compare-row {
    display: none !important;
}

/* Do NOT let Stripe / payment wrappers overlap our secondary action row. */
body.single-product.upg-v5-product .summary .upg-wishlist-compare-v511 + .wc-stripe-product-checkout-container,
body.single-product.upg-v5-product .summary .upg-wishlist-compare-v511 + .payment-request-button,
body.single-product.upg-v5-product .summary .upg-wishlist-compare-v511 + [class*="payment-request"] {
    clear: both !important;
}

@media (max-width: 480px) {
    body.single-product.upg-v5-product .summary .upg-wishlist-compare-v511 {
        gap: 9px !important;
    }

    body.single-product.upg-v5-product .summary a.upg-compare-v511 {
        min-width: 106px !important;
        height: 40px !important;
        min-height: 40px !important;
        max-height: 40px !important;
        padding: 0 12px !important;
        font-size: 13px !important;
    }
}


/* =========================================================
   V5.12 – Compare removed completely
   ========================================================= */

/* Hide every compare control from Haru, YITH and older UPG versions. */
body.single-product.upg-v5-product .summary a.compare,
body.single-product.upg-v5-product .summary button.compare,
body.single-product.upg-v5-product .summary .compare.button,
body.single-product.upg-v5-product .summary [class*="compare"] a,
body.single-product.upg-v5-product .summary [class*="compare"] button,
body.single-product.upg-v5-product .summary [class*="compare-button"],
body.single-product.upg-v5-product .summary [class*="product-compare"],
body.single-product.upg-v5-product .summary a[href*="woocompare"],
body.single-product.upg-v5-product .summary a[href*="yith-woocompare"],
body.single-product.upg-v5-product .summary a[href*="action=yith-woocompare-add-product"],
body.single-product.upg-v5-product .summary .upg-compare-v58-row,
body.single-product.upg-v5-product .summary .upg-compare-v58,
body.single-product.upg-v5-product .summary .upg-compare-v57-row,
body.single-product.upg-v5-product .summary .upg-compare-row,
body.single-product.upg-v5-product .summary .upg-compare-new,
body.single-product.upg-v5-product .summary .upg-compare-fixed,
body.single-product.upg-v5-product .summary .upg-compare-v511,
body.single-product.upg-v5-product .summary .upg-wishlist-compare-row,
body.single-product.upg-v5-product .summary .upg-wishlist-compare-v511 {
    display: none !important;
    visibility: hidden !important;
}

/* Wishlist is allowed to display normally again. */
body.single-product.upg-v5-product .summary .yith-wcwl-add-to-wishlist,
body.single-product.upg-v5-product .summary .yith-wcwl-add-button,
body.single-product.upg-v5-product .summary .add_to_wishlist,
body.single-product.upg-v5-product .summary [class*="wishlist"] {
    display: block !important;
    visibility: visible !important;
}


/* =========================================================
   V5.13 – SHOP / CATALOG
   ========================================================= */

/* Requested Haru/WooCommerce shop labels -> brand orange */
body.upg-v5-shop .woocommerce-result-count,
body.upg-v5-shop .shop-filter__label,
body.upg-v5-shop .shop-filter__grid.active,
body.upg-v5-shop .shop-filter__grid.active *,
body.upg-v5-shop .products li.product .price,
body.upg-v5-shop .products li.product .price *,
body.upg-v5-shop .price .from,
body.upg-v5-shop .price .to,
body.upg-v5-shop .price_slider_amount .price_label,
body.upg-v5-shop .price_slider_amount .price_label .from,
body.upg-v5-shop .price_slider_amount .price_label .to,
body.upg-v5-shop .widget_price_filter .price_label,
body.upg-v5-shop .widget_price_filter .from,
body.upg-v5-shop .widget_price_filter .to {
    color: #F4801F !important;
}

/* Haru grid active icon can use SVG fill/stroke rather than text color */
body.upg-v5-shop .shop-filter__grid.active svg,
body.upg-v5-shop .shop-filter__grid.active svg *,
body.upg-v5-shop .shop-filter__grid.active i,
body.upg-v5-shop .shop-filter__grid.active [class*="icon"] {
    color: #F4801F !important;
    fill: #F4801F !important;
    stroke: #F4801F !important;
}

/* Remove Haru textual variation chips from shop cards. */
body.upg-v5-shop ul.products li.product .haru-variations-list.pa_ngjyra,
body.upg-v5-shop .products li.product .haru-variations-list.pa_ngjyra,
body.upg-v5-shop ul.products li.product .haru-variations-list[class*="pa_ngjyra"],
body.upg-v5-shop .products li.product .haru-variations-list[class*="pa_ngjyra"] {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Our Shop picker mirrors upg-single-color-picker. */
body.upg-v5-shop .upg-shop-color-picker {
    display: block !important;
    width: 100% !important;
    margin: 10px 0 12px !important;
    padding: 12px !important;
    background: rgba(255,255,255,.055) !important;
    border: 1px solid rgba(255,255,255,.13) !important;
    border-radius: 10px !important;
    box-sizing: border-box !important;
}

body.upg-v5-shop .upg-shop-color-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin-bottom: 10px !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
}

body.upg-v5-shop .upg-shop-color-top > span,
body.upg-v5-shop .upg-shop-selected-color-name {
    color: #F4801F !important;
    font-weight: 800 !important;
}

body.upg-v5-shop .upg-shop-color-top > span {
    text-transform: uppercase !important;
}

body.upg-v5-shop .upg-shop-swatches {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 9px !important;
    min-height: 31px !important;
}

body.upg-v5-shop button.upg-shop-swatch {
    display: inline-block !important;
    width: 31px !important;
    min-width: 31px !important;
    max-width: 31px !important;
    height: 31px !important;
    min-height: 31px !important;
    max-height: 31px !important;
    margin: 0 !important;
    padding: 0 !important;
    cursor: pointer !important;
    appearance: none !important;
    background-image: none !important;
    border: 3px solid #FFFFFF !important;
    border-radius: 50% !important;
    box-shadow: 0 0 0 1px rgba(255,255,255,.45) !important;
    transition: transform .15s ease, box-shadow .15s ease !important;
}

body.upg-v5-shop button.upg-shop-swatch:hover {
    transform: translateY(-1px) !important;
}

body.upg-v5-shop button.upg-shop-swatch.is-active {
    box-shadow:
        0 0 0 2px #0B1E33,
        0 0 0 4px #F4801F !important;
}

/* Keep WooCommerce price orange after variation click. */
body.upg-v5-shop .products li.product .price .woocommerce-Price-amount,
body.upg-v5-shop .products li.product .price .woocommerce-Price-currencySymbol,
body.upg-v5-shop .products li.product .price bdi,
body.upg-v5-shop .products li.product .price del,
body.upg-v5-shop .products li.product .price ins {
    color: #F4801F !important;
}

/* Compact on smaller screens. */
@media (max-width: 767px) {
    body.upg-v5-shop .upg-shop-color-picker {
        padding: 10px !important;
    }

    body.upg-v5-shop button.upg-shop-swatch {
        width: 28px !important;
        min-width: 28px !important;
        max-width: 28px !important;
        height: 28px !important;
        min-height: 28px !important;
        max-height: 28px !important;
    }
}


/* =========================================================
   V5.14 – SHOP PRICE / HARU VARIATIONS / COMPACT SWATCHES
   ========================================================= */

/* 1) Force WooCommerce monetary amount orange everywhere in Shop/catalog.
      Haru sometimes renders the amount outside a normal .price wrapper. */
body.upg-v5-shop .woocommerce-Price-amount.amount,
body.upg-v5-shop .woocommerce-Price-amount.amount bdi,
body.upg-v5-shop .woocommerce-Price-amount.amount .woocommerce-Price-currencySymbol,
body.upg-v5-shop .price .woocommerce-Price-amount.amount,
body.upg-v5-shop .price .woocommerce-Price-amount.amount bdi,
body.upg-v5-shop ul.products li.product .woocommerce-Price-amount.amount,
body.upg-v5-shop ul.products li.product .woocommerce-Price-amount.amount bdi,
body.upg-v5-shop .products li.product .woocommerce-Price-amount.amount,
body.upg-v5-shop .products li.product .woocommerce-Price-amount.amount bdi,
body.upg-v5-shop .product-item .woocommerce-Price-amount.amount,
body.upg-v5-shop .product-item .woocommerce-Price-amount.amount bdi {
    color: #F4801F !important;
}

/* If the currency symbol is a sibling/span with its own theme rule. */
body.upg-v5-shop .woocommerce-Price-currencySymbol {
    color: #F4801F !important;
}

/* 2) Remove Haru's old product variations block from Shop.
      User's actual class is product-varations (Haru typo), but cover
      common naming variants too. */
body.upg-v5-shop ul.products li.product .product-varations,
body.upg-v5-shop .products li.product .product-varations,
body.upg-v5-shop ul.products li.product .product-variations,
body.upg-v5-shop .products li.product .product-variations,
body.upg-v5-shop ul.products li.product .haru-product-varations,
body.upg-v5-shop .products li.product .haru-product-varations,
body.upg-v5-shop ul.products li.product .haru-product-variations,
body.upg-v5-shop .products li.product .haru-product-variations,
body.upg-v5-shop ul.products li.product .haru-variations-list.pa_ngjyra,
body.upg-v5-shop .products li.product .haru-variations-list.pa_ngjyra {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* 3) More compact shop color picker.
      Keep five or more colors on one line on normal product cards. */
body.upg-v5-shop .upg-shop-color-picker {
    margin: 8px 0 10px !important;
    padding: 8px 9px !important;
    border-radius: 8px !important;
}

body.upg-v5-shop .upg-shop-color-top {
    margin-bottom: 7px !important;
    gap: 6px !important;
    font-size: 10px !important;
}

body.upg-v5-shop .upg-shop-swatches {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
}

body.upg-v5-shop button.upg-shop-swatch {
    display: inline-block !important;
    flex: 0 0 21px !important;
    width: 21px !important;
    min-width: 21px !important;
    max-width: 21px !important;
    height: 21px !important;
    min-height: 21px !important;
    max-height: 21px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-width: 2px !important;
}

body.upg-v5-shop button.upg-shop-swatch.is-active {
    box-shadow:
        0 0 0 1px #0B1E33,
        0 0 0 3px #F4801F !important;
}

@media (max-width: 767px) {
    body.upg-v5-shop .upg-shop-color-picker {
        padding: 7px 8px !important;
    }

    body.upg-v5-shop .upg-shop-swatches {
        gap: 5px !important;
    }

    body.upg-v5-shop button.upg-shop-swatch {
        flex-basis: 19px !important;
        width: 19px !important;
        min-width: 19px !important;
        max-width: 19px !important;
        height: 19px !important;
        min-height: 19px !important;
        max-height: 19px !important;
    }
}


/* =========================================================
   V5.15 – HARU product-varations global removal
   ========================================================= */

/* Haru may render this wrapper outside li.product.
   Kill it everywhere on WooCommerce shop/product archives. */
body.upg-v5-shop .product-varations,
body.upg-v5-shop .product-variations,
body.upg-v5-shop .haru-product-varations,
body.upg-v5-shop .haru-product-variations,
body.upg-v5-shop .haru-variations-list.pa_ngjyra,
body.woocommerce-shop .product-varations,
body.woocommerce-shop .product-variations,
body.woocommerce-shop .haru-product-varations,
body.woocommerce-shop .haru-product-variations,
body.post-type-archive-product .product-varations,
body.post-type-archive-product .product-variations,
body.tax-product_cat .product-varations,
body.tax-product_cat .product-variations,
body.tax-product_tag .product-varations,
body.tax-product_tag .product-variations {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
}
