/* Loaded after the theme and existing product UI patches. */
body.single-product .entry-summary .meui-shipping-note {
    margin: 14px 0; padding: 10px 12px; border: 1px solid #e6e6e6;
    border-radius: 6px; background: #fafafa; color: #555;
}
body.single-product .entry-summary .meui-shipping-note .meui-shipping-title {
    display: block; font-size: 12px !important; font-weight: 600; line-height: 1.5 !important;
    color: #444; margin: 0 0 3px; text-transform: none;
}
body.single-product .entry-summary .meui-shipping-note .meui-shipping-copy {
    font-size: 12px !important; line-height: 1.6 !important; font-weight: 400;
    margin: 0 !important; color: #555;
}
body.single-product .entry-summary .meui-shipping-note .meui-shipping-help {
    display: inline-block; font-size: 12px !important; line-height: 1.6 !important;
    margin-top: 4px; text-decoration: underline; text-underline-offset: 2px; color: #666;
}

/* Text swatches: equal height, width follows the full size label. No oval rings. */
body.single-product .product-type-variable .summary.entry-summary .variations_form.cart table.variations tr td.value .tawcvs-swatches {
    display: flex !important; flex-wrap: wrap !important; gap: 8px; padding: 0 !important; margin: 0 !important;
}
body.single-product .product-type-variable .summary.entry-summary .variations_form.cart table.variations .swatch-item-wrapper {
    width: auto !important; max-width: 100%; flex: 0 0 auto; margin: 0 !important; padding: 0 !important;
}
body.single-product .product-type-variable .summary.entry-summary .variations_form.cart table.variations .tawcvs-swatches .swatch:not(.swatch-color):not(.swatch-image) {
    display: inline-flex !important; align-items: center; justify-content: center;
    box-sizing: border-box; width: auto !important; min-width: 44px !important;
    height: auto !important; min-height: 44px !important; max-width: 100%;
    margin: 0 !important; padding: 10px 14px !important;
    border: 1px solid #cfcfcf !important; border-radius: 6px !important;
    box-shadow: none !important; background: #fff; color: #333; font-size: 13px !important;
    line-height: 1.5 !important; white-space: normal !important; overflow-wrap: anywhere;
    text-indent: 0 !important; text-align: center;
}
body.single-product .product-type-variable .summary.entry-summary .variations_form.cart table.variations .tawcvs-swatches .swatch:not(.swatch-color):not(.swatch-image)::before,
body.single-product .product-type-variable .summary.entry-summary .variations_form.cart table.variations .tawcvs-swatches .swatch:not(.swatch-color):not(.swatch-image)::after {
    content: none !important; display: none !important;
}
body.single-product .product-type-variable .summary.entry-summary .variations_form.cart table.variations .tawcvs-swatches .swatch:not(.swatch-color):not(.swatch-image).selected {
    background: #242424 !important; border-color: #242424 !important; color: #fff !important;
}
body.single-product .product-type-variable .summary.entry-summary .variations_form.cart table.variations .tawcvs-swatches .swatch:not(.swatch-color):not(.swatch-image).disabled {
    opacity: .4 !important; text-decoration: line-through; cursor: not-allowed;
}
/* Outline rather than background overrides: white remains white, every color stays intact. */
body #bwp_form_filter_product .content_filter li.filter_color > span {
    box-sizing: border-box !important; border: 1px solid #a6a6a6 !important;
    outline: 1px solid transparent !important; outline-offset: 3px;
}
body #bwp_form_filter_product .content_filter li.filter_color.active > span,
body #bwp_form_filter_product .content_filter li.filter_color:hover > span,
body #bwp_form_filter_product .content_filter li.filter_color:focus-within > span {
    border: 1px solid #777 !important; outline-color: #555 !important;
}
/* Match the gallery above and the information container below. */
body.single-product .meui-return { clear: both; box-sizing: border-box; text-align: left; }
body.single-product .meui-return--top {
    width: 100%; max-width: 1440px; padding: 0 15px; margin: 4px auto 22px;
}
body.single-product .meui-return--bottom {
    width: calc(100% - 40px); max-width: 1180px; margin: 24px auto 36px;
    padding: 18px 0 0; border-top: 1px solid #e5e5e5;
}
body.single-product .meui-return .meui-back-link {
    display: inline-flex !important; align-items: center; justify-content: center; gap: 10px;
    min-height: 46px; max-width: 100%; padding: 11px 18px; box-sizing: border-box;
    border: 1px solid #b48b2b; border-radius: 6px; background: #fff8e7;
    color: #49370c !important; font-size: 14px !important; line-height: 1.5 !important;
    font-weight: 600 !important; text-transform: none; text-decoration: none !important;
    transition: background-color .15s, border-color .15s;
}
body.single-product .meui-back-label { overflow-wrap: anywhere; }
body.single-product .meui-return .meui-back-link > span:first-child { font-size: 20px; line-height: 1; }
body.single-product .meui-return .meui-back-link:hover { background: #f8e9bd; border-color: #8b6719; }
body.single-product .meui-back-link:focus-visible { outline: 2px solid #916600; outline-offset: 3px; }
/* The theme names colors in label.count; the catalogue's generic count rule hid it. */
body #bwp_form_filter_product .content_filter li.filter_color { position: relative; overflow: visible !important; }
body #bwp_form_filter_product .content_filter li.filter_color > label.count {
    display: block !important; position: absolute !important; left: 50% !important;
    top: auto !important; bottom: calc(100% + 8px) !important;
    transform: translateX(-50%) !important; margin: 0 !important; padding: 5px 9px !important;
    width: max-content; max-width: 180px; border: 0; border-radius: 4px; z-index: 20;
    background: #252525 !important; color: #fff !important; font-size: 12px !important;
    line-height: 1.4 !important; font-weight: 500; text-transform: none;
    pointer-events: none; opacity: 0 !important; visibility: hidden !important;
}
body #bwp_form_filter_product .content_filter li.filter_color:hover > label.count,
body #bwp_form_filter_product .content_filter li.filter_color:focus-within > label.count {
    opacity: 1 !important; visibility: visible !important;
}
@media (max-width: 767px) {
    body.single-product .meui-return--top { margin-bottom: 18px; }
    body.single-product .meui-return--bottom { width: calc(100% - 30px); }
    body.single-product .meui-return .meui-back-link { min-height: 46px; }
    body.single-product .meui-return--bottom .meui-back-link { width: 100%; }
}
