/* Only FC-generated children need base styles. Native Bricks elements keep all
   their own Style settings, classes, widths, spacing and responsive rules. */
:where([data-fcepb-qv-template="1"] .fcepb-template-actions) { display:flex; flex-direction:column; gap:10px; }
:where([data-fcepb-qv-template="1"] .fcepb-template-variant-row) { display:flex; flex-wrap:wrap; gap:6px; margin-block-end:10px; }
:where([data-fcepb-qv-template="1"] .fcepb-template-add-cart, [data-fcepb-qv-template="1"] .fcepb-template-view-product) { display:flex; justify-content:space-between; align-items:center; gap:8px; padding:10px 16px; font:inherit; color:inherit; border:1px solid currentColor; border-radius:4px; cursor:pointer; text-decoration:none; }
:where([data-fcepb-qv-template="1"] .fcepb-template-view-product) { justify-content:center; }
:where([data-fcepb-qv-template="1"] .fcepb-template-variant) { font:inherit; color:inherit; background:transparent; border:1px solid currentColor; border-radius:999px; padding:2px 10px; cursor:pointer; }
:where([data-fcepb-qv-template="1"] .fcepb-template-variant[aria-checked="true"]) { outline:1px solid currentColor; outline-offset:1px; }
:where([data-fcepb-qv-template="1"] .mlhs-old-price) { text-decoration:line-through; opacity:.65; margin-inline-end:.5em; }
:where([data-fcepb-qv-template="1"] [aria-disabled="true"]) { cursor:wait; }

/* 7.0.276: Use the selected Bricks popup's actual open/closed state. Bricks
   owns body.no-scroll and multi-popup cleanup. The root guard also protects
   against another Suite controller clearing that class while Quick View is
   still open. No fixed-body offsets, scrollTo, wheel/touch interception, or
   permanent overflow changes. Native popup/content scrolling is unchanged. */
@supports selector(html:has(.brx-popup)) {
  html:has(.brx-popup[data-fcepb-qv-scroll-lock="1"]:not(.hide)) {
    overflow: hidden !important;
    overscroll-behavior: none;
    scrollbar-gutter: stable;
  }
  html:has(.brx-popup[data-fcepb-qv-scroll-lock="1"]:not(.hide)) body {
    overflow: hidden !important;
    overscroll-behavior: none;
  }
}
.brx-popup[data-fcepb-qv-scroll-lock="1"]:not(.hide) {
  overscroll-behavior: contain;
}

/* 7.0.777: reserve the same gutter before and during opening. Prevent the
   scrollbar disappearing from crossing a responsive breakpoint. */
@supports (scrollbar-gutter: stable) {
  html:has(.brx-popup[data-fcepb-qv-scroll-lock="1"]) { scrollbar-gutter:stable; }
}
