/* Checkout payment look: PayPal button, card option, store credit line (Oct 30 2026) */
.vb-paychoice.ppr-button-choice { height: auto; min-height: 52px; max-width: 440px; margin: 8px 0; }
.vb-paychoice.ppr-button-choice label.ppr-choice-label { position: relative; display: block; }
.vb-pp-btn, .vb-card-btn { display: flex; align-items: center; justify-content: center; gap: .5em; min-height: 50px; border-radius: 8px; font-size: 17px; line-height: 1.2; cursor: pointer; transition: box-shadow .15s; }
.vb-pp-btn { background: #0070e0; color: #fff; font-weight: 400; }
.vb-pp-btn b { font-style: italic; font-weight: 800; letter-spacing: .01em; }
.vb-card-btn { justify-content: space-between; padding: 0 14px; background: #fff; color: #2b2522; border: 1px solid #cfc7bc; }
.vb-card-logos { display: flex; gap: 6px; }
.vb-card-logos img { height: 24px; width: auto; border-radius: 3px; }
.ppr-choice:checked + label .vb-pp-btn { box-shadow: 0 0 0 3px #fff, 0 0 0 5px #0070e0; }
.ppr-choice:checked + label .vb-card-btn { border-color: #6d1f2f; box-shadow: 0 0 0 1px #6d1f2f; }
.ppr-choice:focus-visible + label > span { outline: 2px solid #6d1f2f; outline-offset: 3px; }
@media (max-width: 420px) { .vb-card-btn { flex-wrap: wrap; justify-content: center; padding: 8px; } }
.checkoutOneGv .vb-gv { margin: 4px 0 8px; }
.checkoutOneGv .vb-gv__line { display: flex; align-items: center; gap: .6em; font-size: 17px; cursor: pointer; }
.checkoutOneGv .vb-gv__line input { width: 20px; height: 20px; margin: 0; accent-color: #6d1f2f; }
.checkoutOneGv .vb-gv__amt { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin: 10px 0 0 30px; }
.checkoutOneGv .vb-gv__amt[hidden], .checkoutOneGv .vb-gv__code[hidden] { display: none; }
.checkoutOneGv .vb-gv__amt input { width: 7em; font-size: 17px; padding: 6px 8px; }
.checkoutOneGv .vb-gv__off, .checkoutOneGv .vb-gv__codelink { background: none; border: 0; padding: 0; color: #6d1f2f; text-decoration: underline; cursor: pointer; font-size: 15px; }
.checkoutOneGv .vb-gv__codelink { display: block; margin-top: 10px; }
.checkoutOneGv .vb-gv__code { margin-top: 8px; }
.vb-paychoice.ppr-button-choice { width: 100%; max-width: 380px; margin: 10px auto; }
.vb-paychoice.ppr-button-choice label.ppr-choice-label { border: 0; padding: 0; width: 100%; background: none; box-shadow: none; }
.vb-paychoice .vb-pp-btn, .vb-paychoice .vb-card-btn { width: 100%; box-sizing: border-box; }
.vb-hide { display: none !important; }
#checkoutPaymentMethod .vb-hide { display: none !important; }
#checkoutPaymentMethod .vb-ccfields { display: none; max-width: 380px; margin: 4px auto 0; text-align: left; }
#checkoutPaymentMethod .vb-ccfields.vb-on { display: block; }
#checkoutPaymentMethod .vb-ccfields br { display: none; }
#checkoutPaymentMethod .vb-ccfields label.inputLabelPayment { display: block !important; float: none; width: auto; margin: 12px 0 4px; padding: 0; text-align: left; }
#checkoutPaymentMethod .vb-ccfields input.ppr-cc { display: block !important; float: none; width: 100%; box-sizing: border-box; margin: 0; }
#checkoutPaymentMethod .vb-ccfields select.ppr-cc { display: inline-block !important; float: none; width: calc(50% - 8px); box-sizing: border-box; margin: 0; }
#checkoutPaymentMethod .vb-ccfields #paypalr-cc-expires-month { margin-right: 8px; }
#checkoutPaymentMethod .vb-ccfields #paypalr-cc-cvv { width: 50%; }
#checkoutPaymentMethod .vb-ccfields label.vb-hide, #checkoutPaymentMethod .vb-ccfields input.vb-hide, #checkoutPaymentMethod .vb-ccfields small.vb-hide { display: none !important; }
.vb-paychoice .vb-pp-btn span, .vb-paychoice .vb-card-btn span, .vb-paychoice .vb-card-btn img { border: 0 !important; box-shadow: none !important; padding: 0 !important; background: none !important; margin: 0 !important; }
.vb-paychoice .vb-card-txt { white-space: nowrap; }
/* three payment tiles across (Oct 30 pm) */
.vb-paygrid { display: flex; gap: 12px; width: 100%; max-width: 780px; margin: 12px auto; align-items: stretch; }
.vb-paygrid > .vb-paychoice, .vb-paygrid > .vb-paychoice.ppr-button-choice { flex: 1 1 0; min-width: 0; width: auto; max-width: none; margin: 0; height: auto; }
.vb-paygrid .vb-pp-btn, .vb-paygrid .vb-card-btn, .vb-paygrid .vb-ck-btn { min-height: 64px; height: 100%; }
.vb-pp-btn { background: #0070ba; font-size: 18px; font-weight: 600; }
.vb-pp-btn img { height: 24px !important; width: auto; }
.vb-paygrid .vb-card-btn { flex-direction: column; justify-content: center; gap: 6px; padding: 8px 10px; }
.vb-ck-btn { display: flex; align-items: center; justify-content: center; gap: .55em; box-sizing: border-box; width: 100%; padding: 8px 10px; border-radius: 8px; background: #fff; color: #2b2522; border: 1px solid #cfc7bc; font-size: 17px; line-height: 1.2; cursor: pointer; text-align: center; }
.vb-ck-btn img { height: 26px; width: auto; flex: none; }
.vb-ck.vb-sel .vb-ck-btn { border-color: #6d1f2f; box-shadow: 0 0 0 1px #6d1f2f; }
@media (max-width: 640px) { .vb-paygrid { flex-direction: column; } }
#checkoutPaymentMethod .vb-paychoice label.ppr-choice-label { border: 0 !important; background: none !important; box-shadow: none !important; }
#checkoutPaymentMethod .vb-paychoice .vb-card-btn { background: #fff !important; }
#checkoutPaymentMethod .vb-paychoice .vb-card-btn span { outline: 0 !important; }
/* address edit form (Oct 30 pm) */
.vb-af { display: grid; grid-template-columns: 1fr 1fr; gap: 2px 14px; max-width: 520px; }
.vb-af > * { grid-column: 1 / -1; }
.vb-af > .vb-af__f { grid-column: auto; position: relative; min-width: 0; }
.vb-af > .vb-af__f.vb-wide { grid-column: 1 / -1; }
.vb-af > div.clearBoth, .vb-af > br, .vb-af__f br { display: none; }
.vb-af select#select-address-bill, .vb-af select#select-address-ship, .vb-af #choices-bill select, .vb-af #choices-ship select { width: 100%; max-width: 100%; box-sizing: border-box; text-overflow: ellipsis; }
.vb-af__f label.inputLabel { display: block; float: none; width: auto; margin: 10px 0 4px; padding: 0; text-align: left; }
.vb-af__f input:not([type=hidden]), .vb-af__f select { display: block; float: none; width: 100%; max-width: 100%; box-sizing: border-box; margin: 0; }
.vb-af__f input[style*="display: none"] { display: none; }
.vb-af__f .alert { position: absolute; top: 8px; right: 0; }
@media (max-width: 560px) { .vb-af { grid-template-columns: 1fr; } }
/* slimmer tiles (Paul 12:53) */
.vb-paygrid .vb-pp-btn, .vb-paygrid .vb-card-btn, .vb-paygrid .vb-ck-btn { min-height: 44px; font-size: 15px; }
.vb-paygrid .vb-pp-btn img { height: 19px !important; }
.vb-paygrid .vb-card-btn { gap: 3px; padding: 4px 8px; }
.vb-paygrid .vb-card-logos img { height: 15px; }
.vb-paygrid .vb-ck-btn { padding: 4px 8px; }
.vb-paygrid .vb-ck-btn img { height: 20px; }
/* card boxes: expiry month, year and CVV on one row, smaller (Paul 12:55) */
#checkoutPaymentMethod .vb-ccfields.vb-on { display: grid; grid-template-columns: 1fr 1fr 1fr; column-gap: 8px; max-width: 420px; }
#checkoutPaymentMethod .vb-ccfields > * { grid-column: 1 / -1; }
#checkoutPaymentMethod .vb-ccfields label[for=paypalr-cc-expires-month] { grid-column: 1 / 3; grid-row: 5; }
#checkoutPaymentMethod .vb-ccfields #paypalr-cc-expires-month { grid-column: 1; grid-row: 6; width: 100%; margin: 0; }
#checkoutPaymentMethod .vb-ccfields #paypalr-cc-expires-year { grid-column: 2; grid-row: 6; width: 100%; }
#checkoutPaymentMethod .vb-ccfields label[for=paypalr-cc-cvv] { grid-column: 3; grid-row: 5; }
#checkoutPaymentMethod .vb-ccfields #paypalr-cc-cvv { grid-column: 3; grid-row: 6; width: 100%; }
#checkoutPaymentMethod .vb-ccfields input.ppr-cc, #checkoutPaymentMethod .vb-ccfields select.ppr-cc { height: 38px; padding: 4px 10px; font-size: 15px; min-width: 0; }
#checkoutPaymentMethod .vb-ccfields label.inputLabelPayment { margin: 8px 0 3px; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#checkoutPaymentMethod .vb-ccfields #paypalr-cc-expires-month, #checkoutPaymentMethod .vb-ccfields #paypalr-cc-expires-year, #checkoutPaymentMethod .vb-ccfields #paypalr-cc-cvv { height: 32px !important; min-height: 0 !important; padding: 2px 8px !important; font-size: 15px; line-height: 1.2 !important; box-sizing: border-box; }
html body:not(#vbx):not(#vby):not(#vbz) #checkoutPaymentMethod .vb-ccfields #paypalr-cc-expires-month, html body:not(#vbx):not(#vby):not(#vbz) #checkoutPaymentMethod .vb-ccfields #paypalr-cc-expires-year, html body:not(#vbx):not(#vby):not(#vbz) #checkoutPaymentMethod .vb-ccfields #paypalr-cc-cvv { height: 32px !important; min-height: 0 !important; padding: 0 8px !important; line-height: 30px !important; font-size: 15px !important; }
