/* DragonBox Payment Branding 0.2.7: product-only shared Express grid. */
/* The working 0.2.5 opt-in guard remains: don't expose Revolut unvalidated. */
#ps-revolut-payment-request-container {
  visibility: hidden !important; pointer-events: none !important;
}
.product-add-to-cart.dbxpb-grid-active #ps-revolut-payment-request-container {
  display: block !important; position: static !important; height: 0 !important;
  min-height: 0 !important; padding: 0 !important; margin: 0 !important;
  overflow: visible !important; width: 100%;
}
.product-add-to-cart.dbxpb-grid-active {
  position: relative; container-type: inline-size;
}
.product-add-to-cart.dbxpb-grid-active .product-quantity {
  overflow: visible !important;
}
.product-actions .dbxpb-positioned-express {
  position: absolute !important; display: block;
  float: none !important; clear: none !important;
  padding: 0 !important; margin: 0 !important;
  z-index: 2;
  pointer-events: auto !important; visibility: visible !important;
  max-width: none !important; min-width: 0 !important; box-sizing: border-box;
}
/* SDK mount points must remain measurable even before iframe initialization.
   display:none can prevent the PayPal SDK from rendering at all. */
.product-actions .dbxpb-positioned-express[data-dbxpb-visible="0"] {
  visibility: hidden !important; pointer-events: none !important;
}
.product-add-to-cart .dbxpb-shared-express-grid {
  display: none; box-sizing: border-box; width: 100%; max-width: 100%;
  padding: 0; margin: 10px 0 14px; gap: 9px; clear: both;
  grid-template-columns: minmax(0, 1fr);
}
.product-add-to-cart .dbxpb-shared-express-grid[data-dbxpb-ready="1"][data-dbxpb-buyable="1"]:not([data-dbxpb-count="0"]) {
  display: grid;
}
.product-add-to-cart .dbxpb-express-cell {
  box-sizing: border-box; min-width: 0; width: 100%; pointer-events: none;
}
/* The SDK manages its own iframe; we only remove restrictive ancestor widths. */
.product-actions .dbxpb-positioned-express [paypal-button-container],
.product-actions .dbxpb-positioned-express [paypal-bnpl-button-container] {
  box-sizing: border-box; width: 100% !important; max-width: none !important;
  min-width: 0 !important;
}
.product-actions .dbxpb-positioned-express iframe {
  width: 100% !important; max-width: 100% !important; min-width: 0 !important;
}
.product-actions .dbxpb-positioned-express .dbxpb-paypal-pair {
  display: grid !important; grid-template-columns: minmax(0, 1fr);
  gap: 9px; width: 100% !important; max-width: none !important;
  min-width: 0 !important; height: auto !important;
}
/* Chromium Revolut may render a fallback Google iframe in the Apple slot. */
html.dbxpb-product-no-applepay .product-actions #revolut-payment-request-button-applepay,
.product-actions #revolut-payment-request-button-applepay.dbxpb-no-applepay {
  display: none !important; pointer-events: none !important;
}
@container (min-width: 525px) {
  .product-add-to-cart .dbxpb-shared-express-grid[data-dbxpb-count="2"],
  .product-add-to-cart .dbxpb-shared-express-grid[data-dbxpb-count="3"],
  .product-add-to-cart .dbxpb-shared-express-grid[data-dbxpb-count="4"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .product-actions .dbxpb-positioned-express .dbxpb-paypal-pair {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .product-add-to-cart .dbxpb-express-cell[data-dbxpb-units="2"] {
    grid-column: span 2;
  }
  .product-add-to-cart .dbxpb-shared-express-grid[data-dbxpb-count="3"] > .dbxpb-express-cell:last-child:not([data-dbxpb-units="2"]) {
    grid-column: 1 / -1;
  }
}
@container (min-width: 750px) {
  .product-add-to-cart .dbxpb-shared-express-grid[data-dbxpb-count="3"] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .product-add-to-cart .dbxpb-shared-express-grid[data-dbxpb-count="3"] > .dbxpb-express-cell:last-child:not([data-dbxpb-units="2"]) {
    grid-column: auto;
  }
}
