.vpc-price { font-weight: 600; }
.vpc-price[data-vpc-href] { cursor: pointer; text-decoration: underline; }
.vpc-summary-link { margin: 1em 0; }
.vpc-summary-link[hidden], .vpc-modal[hidden] { display: none !important; }
.vpc-quote-product form.cart .single_add_to_cart_button,
.vpc-quoted-variation form.variations_form .single_add_to_cart_button,
.vpc-quote-product form.composite_form .composite_add_to_cart_button { display: none !important; }
.vpc-modal-open { overflow: hidden; }
.vpc-modal { position: fixed; inset: 0; z-index: 999999; display: flex; align-items: center; justify-content: center; padding: 1rem; box-sizing: border-box; }
.vpc-modal-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.62); }
.vpc-modal-dialog { position: relative; width: min(100%, 38rem); max-height: calc(100vh - 2rem); overflow-y: auto; box-sizing: border-box; padding: 1.5rem; background: #fff; color: #222; border-radius: .35rem; box-shadow: 0 1rem 3rem rgba(0,0,0,.25); }
.vpc-modal-dialog h2 { margin: 0 2rem .75rem 0; }
.vpc-modal-close { position: absolute; top: .5rem; right: .75rem; border: 0; background: transparent; color: inherit; font-size: 2rem; line-height: 1; cursor: pointer; }
.vpc-modal-dialog form p { margin: 0 0 .9rem; }
.vpc-modal-dialog form label { display: block; font-weight: 600; margin-bottom: .25rem; }
.vpc-modal-dialog form input:not([type="hidden"]), .vpc-modal-dialog form textarea { box-sizing: border-box; width: 100%; max-width: none; }
.vpc-feedback { padding: .7rem; background: #eef7ee; }
.vpc-honeypot { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
