/* The same checkout flow inherits each storefront's colors and typography. */
dialog.checkout-mode{width:1040px;padding:28px 36px;overflow-y:auto}
.checkout-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:44px;padding:30px 0}
.checkout-main{min-width:0}
.checkout-progress{display:flex;gap:20px;list-style:none;margin:0 0 28px;padding:0;font-size:.8125rem}
.checkout-progress li{display:flex;align-items:center;gap:7px;opacity:.6}
.checkout-progress [aria-current]{opacity:1;font-weight:600}
.checkout-progress span{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border:1px solid var(--line);border-radius:50%;flex-shrink:0}
.checkout-progress [aria-current] span{background:var(--ink);color:var(--bg)}
.checkout-main h3,.checkout-unavailable h3{font-family:var(--display);font-size:2.5rem;line-height:1.1;margin:0 0 20px;overflow-wrap:break-word}
.checkout-caption{font-size:.8125rem;line-height:1.6;margin:0 0 20px}
.checkout-main fieldset{border:0;padding:0;margin:24px 0;min-width:0}
.checkout-main legend{font-size:1.05rem;font-weight:600;margin-bottom:14px;padding:0}
.checkout-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 14px}
.checkout-field{display:flex;flex-direction:column;gap:7px;min-width:0}
.checkout-field-wide{grid-column:1/-1}
.checkout-field label{font-size:.8125rem;font-weight:600;line-height:1.5}
.checkout-field label span{font-weight:400}
.checkout-field input{display:block;width:100%;min-width:0;min-height:48px;border:1px solid var(--line);border-radius:5px;padding:12px;font:inherit;font-size:16px;color:var(--ink);background:var(--bg)}
.checkout-field input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.checkout-field input[aria-invalid]{border-color:#9f2334}
.checkout-field-error{color:#9f2334;font-size:.8125rem;line-height:1.5}
.checkout-field-error:empty{display:none}
.checkout-summary{align-self:start;background:var(--panel);padding:24px;border-radius:12px;position:sticky;top:0}
.checkout-summary h3{font-family:inherit;font-size:1.1rem;margin-bottom:20px}
.checkout-product{display:flex;gap:15px;align-items:center;margin-bottom:22px}
.checkout-product>img{width:70px;height:90px;object-fit:cover;flex-shrink:0;border-radius:6px}
.checkout-product .brivva-photo-crop{width:70px;height:90px;aspect-ratio:auto;flex-shrink:0;border-radius:6px}
.checkout-product>div:last-child{min-width:0;font-size:.875rem;line-height:1.5}
.checkout-product p{font-size:.8125rem;margin:5px 0 0}
.checkout-summary dl{margin:0}
.checkout-summary dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:15px;font-size:.875rem;margin:12px 0}
.checkout-summary dd{margin:0;white-space:nowrap}
.checkout-summary .checkout-total{border-top:1px solid var(--line);margin-top:18px;padding-top:18px;font-size:1.15rem;font-weight:600}
.checkout-total dt span{font-size:.75rem;font-weight:400}
.checkout-primary{width:100%;justify-content:center;margin:8px 0 0}
.checkout-back,.checkout-edit{background:none;text-decoration:underline;text-underline-offset:4px;font-size:.8125rem;padding:12px 0;min-height:44px}
.checkout-back{display:block;margin:8px auto 0}
.checkout-review-card{border:1px solid var(--line);border-radius:10px;padding:20px;margin:24px 0}
.checkout-review-card>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:6px}
.checkout-review-card h4{font-size:.9375rem;margin:0 0 10px}
.checkout-review-card>div h4{margin:0}
.checkout-review-card p,.checkout-review-card address{font-size:.9375rem;line-height:1.7;overflow-wrap:anywhere}
.checkout-review-card address{font-style:normal}
.checkout-unavailable{max-width:580px;margin:50px auto;padding:25px 0;text-align:center}
.checkout-stock-icon{display:flex;align-items:center;justify-content:center;width:58px;height:58px;margin:0 auto 24px;border:2px solid currentColor;border-radius:50%;font-size:2rem}
.brivva .checkout-main h3,.brivva .checkout-unavailable h3{font-size:2rem;letter-spacing:-.035em}
.brivva .checkout-field input,.brivva .checkout-review-card{border-radius:12px}
.brivva .checkout-progress [aria-current] span{background:#d5095c;color:white}
@media(max-width:760px){dialog.checkout-mode{padding:22px;width:100%}.checkout-layout{grid-template-columns:minmax(0,1fr);gap:24px;padding:24px 0}.checkout-summary{position:static;grid-row:1;padding:18px}.checkout-summary .checkout-product{margin-bottom:16px}.checkout-summary h3{margin-bottom:14px}.checkout-progress{gap:16px}.checkout-main h3,.checkout-unavailable h3{font-size:2.2rem}.checkout-unavailable{margin:30px auto}}
@media(max-width:380px){dialog.checkout-mode{padding:18px}.checkout-fields{grid-template-columns:minmax(0,1fr)}.checkout-progress{font-size:.75rem;gap:12px}.checkout-main h3,.brivva .checkout-main h3,.brivva .checkout-unavailable h3{font-size:1.8rem}}
