/* Scoped to the existing opted-in purchase flow. */
[data-cmpc-customizer] .cmui-no-frame-grid[hidden],
[data-cmpc-customizer] .cmui-comparison[hidden] { display: none !important; }
[data-cmpc-customizer] .cmui-no-frame-grid { margin-top: 16px; }
[data-cmpc-customizer] .cmui-no-frame-card { text-align: left; }
[data-cmpc-customizer] .cmui-no-frame-card.is-selected {
    border-color: #996548; box-shadow: 0 0 0 1px #996548;
}
[data-cmpc-customizer] .cmpc-subtotal { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
[data-cmpc-customizer] .cmui-comparison { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 7px; }
[data-cmpc-customizer] .cmui-sale-price { color: #9a4d31; }
[data-cmpc-customizer] .cmui-regular-total { color: #76706c; font-size: .85em; font-weight: 400; }
[data-cmpc-customizer] .cmui-saving {
    display: inline-block; background: #9a4d31; color: #fff; border-radius: 5px;
    padding: 4px 7px; font-size: .75em; font-weight: 600; line-height: 1.3;
}
@media (max-width: 600px) {
    [data-cmpc-customizer] .cmui-comparison { flex-basis: 100%; }
}

/* Never flash the old global size pictures before the product-specific binding runs. */
[data-cmpc-customizer]:not([data-cmui-size-images-ready]) .cmpc-size-card img { visibility: hidden; }
[data-cmpc-customizer] .cmpc-size-card img[data-cmui-product-size-image] { object-fit: contain; }
[data-cmpc-customizer] .cmui-size-image-note { color: #766b63; font-size: .72em; }
[data-cmpc-customizer] .cmui-size-image-note[hidden] { display: none !important; }

/* Preview floats without changing card geometry or intercepting the mouse. */
.cmui-size-zoom { position: fixed; z-index: 100010; pointer-events: none; box-sizing: border-box;
    padding: 12px; background: #fff; border: 1px solid #d8c9bd; border-radius: 12px;
    box-shadow: 0 12px 36px #30231c33; max-width: calc(100vw - 24px); }
.cmui-size-zoom[hidden] { display: none !important; }
.cmui-size-zoom img { display: block; width: 100%; max-height: calc(100vh - 100px); object-fit: contain; }
.cmui-size-zoom strong { display: block; text-align: center; color: #30231c; margin-top: 8px; }
.cmui-size-dialog { width: min(680px, calc(100vw - 32px)); box-sizing: border-box;
    max-height: calc(100vh - 32px); border: 1px solid #d8c9bd; border-radius: 14px; padding: 16px; }
.cmui-size-dialog::backdrop { background: #30231c88; }
.cmui-size-dialog img { display: block; width: 100%; max-height: calc(100vh - 130px); object-fit: contain; }
.cmui-size-dialog button { display: block; margin: 0 0 12px auto; }
[data-cmpc-customizer] .cmui-view-size { margin: 12px 0 0; padding: 6px 0;
    border: 0; background: transparent; color: #79523c; text-decoration: underline; font-size: .85rem; }
[data-cmpc-customizer] .cmui-delivery { display: flex; align-items: center; gap: 10px;
    margin: 12px 0; padding: 12px 14px; border: 1px solid #dfd1c6; border-radius: 8px;
    background: #fffdf9; color: #514034; line-height: 1.4; }
[data-cmpc-customizer] .cmui-delivery img { flex: 0 0 30px; width: 30px; height: 30px; object-fit: contain; }
[data-cmpc-customizer] .cmui-delivery strong { display: block; font-size: .85rem; font-weight: 600; }
[data-cmpc-customizer] .cmui-delivery small { display: block; color: #796d64; font-size: .75rem; }
/* Leave enough space for honest sale totals without squeezing the Next label. */
[data-cmpc-customizer] .cmpc-panel-footer { flex-wrap: wrap; gap: 12px; }
[data-cmpc-customizer] .cmpc-panel-footer .cmpc-subtotal { flex: 1 1 200px; min-width: 0; }
[data-cmpc-customizer] .cmpc-panel-footer .cmpc-primary-button { flex: 0 0 auto;
    width: auto; min-width: 170px; white-space: nowrap; padding-left: 20px; padding-right: 20px; }
@media (max-width: 600px) {
    [data-cmpc-customizer] .cmpc-panel-footer .cmpc-subtotal { flex-basis: 100%; }
    [data-cmpc-customizer] .cmpc-panel-footer .cmpc-primary-button { margin-left: auto; }
}
