/*
 * Xcom customer prices - prevent the catalog price from flashing before the customer price loads.
 *
 * Only active for logged-in customers on cacheable pages (the async loader puts "async" on <body>,
 * which is present in the server HTML at first paint). Each price box is hidden until it gets the
 * "async-loaded" class; xcom-customerprice.js adds that class once the price has settled.
 * !important is required because the theme sets its own opacity on the price box.
 */
body.async [data-role="priceBox"] {
    transition: opacity 0.15s ease;
}

body.async [data-role="priceBox"]:not(.async-loaded) {
    opacity: 0 !important;
}

body.async [data-role="priceBox"].async-loaded {
    opacity: 1 !important;
}
