/* Single product: gallery, summary, purchase controls, facts and live availability.
 * Native templates/data remain intact. Disable whiteonline_editorial_single_product to roll back. */
.wo-single-product .single-product-page { --wo-line:#e5e5e5; --wo-ink:#171717; --wo-muted:#747474; }
.wo-single-product .product-image-summary-inner { --wd-gap-lg:48px!important; align-items:start; }
.wo-single-product .product-image-summary-wrap { margin-bottom:20px; }
.wo-single-product .single-product-page .woocommerce-product-gallery__image { border:1px solid var(--wo-line); border-radius:18px!important; overflow:hidden; background:#f4f4f4; }
.wo-single-product .woocommerce-product-gallery__image img { border-radius:0; }
.wo-single-product .wd-gallery-thumb .wd-carousel-item img { border:1px solid var(--wo-line); border-radius:8px; }
.wo-single-product .summary-inner { text-align:start; }
.wo-single-product .single-breadcrumbs-wrapper { margin-bottom:24px; padding-bottom:16px; border-bottom:1px solid var(--wo-line); gap:12px; }
.wo-single-product .woocommerce-breadcrumb { font-size:12px; line-height:1.8; color:var(--wo-muted); }
.wo-single-product .woocommerce-breadcrumb .wd-last { display:none; }
.wo-single-product .wd-products-nav { flex-shrink:0; }
.wo-single-product .summary h1.product_title { font-size:30px; line-height:1.45; font-weight:500; letter-spacing:-.5px; text-transform:none; margin-bottom:18px; unicode-bidi:plaintext; overflow-wrap:anywhere; }
html[dir="rtl"] .wo-single-product .summary h1.product_title { text-align:right; }
html:not([dir="rtl"]) .wo-single-product .summary h1.product_title { text-align:left; }
.wo-single-product .summary-inner > .price { font-size:21px; line-height:1.7; font-weight:500; color:var(--wo-ink); margin-bottom:24px; }
.wo-single-product .summary .price bdi { unicode-bidi:isolate; }
.wo-single-product .summary form.cart { padding-top:12px; border-top:1px solid var(--wo-line); margin-bottom:12px; }
.wo-single-product .summary .variations { margin-bottom:10px; }
.wo-single-product .summary .variations label { font-size:14px; font-weight:500; }
.wo-single-product .summary .wd-swatches-single { gap:8px; }
.wo-single-product .summary .wd-swatch.wd-text { min-width:42px; min-height:42px; padding:8px 12px; margin:0; border:1px solid #dcdcdc; border-radius:8px; background:transparent; box-shadow:none; color:var(--wo-ink); }
.wo-single-product .summary .wd-swatch.wd-text.wd-active { background:#171717; border-color:#171717; color:#fff; }
.wo-single-product .summary .wd-swatch.wd-text::after { box-shadow:none; }
.wo-single-product .summary .wd-swatch-text { font-size:14px; font-weight:500; }
.wo-single-product .summary .stock { border-radius:8px; font-size:13px; line-height:1.7; padding:8px 12px; }
.wo-single-product .summary .single_add_to_cart_button { min-height:46px; border-radius:9px; background:#171717; color:#fff; font-size:14px; font-weight:500; padding:12px 24px; box-shadow:none; }
.wo-single-product .summary .single_add_to_cart_button:hover { background:#303030; }
.wo-single-product .summary .quantity { height:46px; border:1px solid #dcdcdc; border-radius:9px; overflow:hidden; }
.wo-single-product .summary .quantity :is(input,button) { height:44px; min-height:44px; border:0; border-radius:0; background:transparent; box-shadow:none; }
.wo-single-product .summary table.shop_attributes { border-top:0; margin-bottom:6px; }
.wo-single-product .summary table.shop_attributes tr { margin:0; padding:0; border-bottom:1px solid #ededed; }
.wo-single-product .summary table.shop_attributes tr:last-child { border-bottom:0; }
.wo-single-product .summary table.shop_attributes :is(th,td) { padding:6px 0; border:0; font-size:13px; line-height:1.8; }
.wo-single-product .summary table.shop_attributes th { font-weight:500; }
.wo-single-product .summary table.shop_attributes td { color:#666; }
.wo-single-product .summary .product_meta { font-size:12px; color:var(--wo-muted); }
.wo-single-product .summary-inner .product_meta { padding-top:8px; row-gap:6px; margin-bottom:0; }
.wo-single-product .product-tabs-wrapper { border-color:var(--wo-line); }
.wo-single-product :is(.related-products,.upsells-products) { margin-top:20px; }
.wo-single-product :is(.related-products,.upsells-products) h2 { font-size:24px; line-height:1.6; font-weight:500; margin-bottom:20px; }
.wo-single-product .single-product-page :is(a,button,input,select,.wd-swatch):focus-visible { outline:2px solid #171717; outline-offset:3px; }
/* Native availability remains the fallback when the enhanced status is absent. */
html body.wo-single-product .summary .stock.in-stock.syncify-has-inventory-location.wd-style-bordered { display:inline-flex; align-items:center; gap:8px; max-width:100%; border:0; border-radius:0; background:transparent; box-shadow:none; padding:4px 0; margin:0 0 16px; color:#245b40; font-size:14px; font-weight:500; line-height:1.8; text-align:start; }
html body.wo-single-product .summary .stock.in-stock.syncify-has-inventory-location::before { color:#555; margin:0; flex-shrink:0; }
html body.wo-single-product .summary .stock.in-stock.syncify-has-inventory-location.wd-style-bordered > span { display:inline-flex; align-items:center; gap:8px; border:0; border-radius:0; padding:0; background:transparent; color:inherit; font-size:inherit; line-height:inherit; box-shadow:none; }
html body.wo-single-product .summary .stock.in-stock.syncify-has-inventory-location > span::before { margin:0; opacity:1; filter:none; flex-shrink:0; }
html body.wo-single-product .summary .wo-showroom-status:not([hidden]) { display:flex; align-items:center; gap:12px; margin:0 0 12px; padding:0; color:#242424; font-size:15px; font-weight:500; line-height:1.8; text-align:start; }
.wo-single-product .wo-showroom-icons { display:inline-flex; align-items:center; gap:8px; flex-shrink:0; }
.wo-single-product .wo-showroom-icons:empty { display:none; }
.wo-single-product .wo-showroom-icons img { display:block; width:34px; height:34px; object-fit:contain; border-radius:0; }
.wo-single-product .summary .wo-showroom-ready .stock.in-stock.syncify-has-inventory-location { display:none!important; }
.wo-single-product .summary .wo-showroom-ready .woocommerce-variation-availability { display:none; }
.wo-single-product .summary .wo-showroom-ready .single_variation { margin-bottom:0; }
.wo-single-product .summary .wo-showroom-ready .woocommerce-variation-add-to-cart { margin-top:0; padding-top:0; }
html body.wo-single-product .summary .wd-product-brands a,
html body.wo-single-product .summary .wd-product-brands a:hover { opacity:1; transform:none; transition:none; box-shadow:none; }
html body.wo-single-product .summary .wd-product-brands a img,
html body.wo-single-product .summary .wd-product-brands a:hover img { opacity:1; transform:none; transition:none; filter:none; }
@media(max-width:1024px) {
 .wo-single-product .product-image-summary-inner { --wd-gap-lg:28px!important; }
 .wo-single-product .summary h1.product_title { font-size:25px; }
}
@media(max-width:767px) {
 .wo-single-product .product-image-summary-inner { --wd-gap-sm:24px!important; }
 .wo-single-product .product-image-summary-wrap { margin-bottom:16px; }
 .wo-single-product .single-product-page .woocommerce-product-gallery__image { border-radius:14px!important; }
 .wo-single-product .single-breadcrumbs-wrapper { margin-bottom:18px; padding-bottom:12px; }
 .wo-single-product .summary h1.product_title { font-size:23px; line-height:1.5; margin-bottom:12px; letter-spacing:-.3px; }
 .wo-single-product .summary-inner > .price { font-size:19px; margin-bottom:18px; }
 .wo-single-product .summary .variations { margin-bottom:8px; }
 .wo-single-product .summary .single_add_to_cart_button { flex:1; padding-inline:16px; }
 html body.wo-single-product .summary .wo-showroom-status:not([hidden]) { gap:10px; }
 .wo-single-product :is(.related-products,.upsells-products) { margin-top:16px; }
 .wo-single-product :is(.related-products,.upsells-products) h2 { font-size:21px; margin-bottom:16px; }
}
