.checkout-field-error{color:#a52e28;font-size:13px;line-height:1.5;margin:6px 0 0;overflow-wrap:anywhere}
#checkoutWizard [aria-invalid=true]{border-color:#b2362f;outline:1px solid #b2362f}
.checkout-recipient-toggle{display:flex;align-items:center;gap:10px;min-height:44px;margin-bottom:14px}
.checkout-recipient-toggle input,.checkout-dialog .sales-consent input[type=checkbox]{width:24px;height:24px;flex:none;accent-color:#245e47}
.checkout-dialog .sales-consent label{grid-template-columns:24px minmax(0,1fr);padding:8px 0;min-height:44px;cursor:pointer}
.checkout-fee-breakdown{display:flex;flex-wrap:wrap;gap:6px 18px;border-top:1px solid #e1e6df;padding:10px 0;color:#506457;font-size:12px;line-height:1.5}
.checkout-fee-breakdown [hidden]{display:none}
.checkout-fee-breakdown strong{color:#234735}
.cart-price-breakdown{font-size:12px;line-height:1.6;color:#506255;margin:8px 0 0;overflow-wrap:anywhere;font-weight:500}
.cart-drawer-coupon-details{padding:12px 0;font-size:13px}
.cart-drawer-coupon-details summary,.cart-coupon-details summary{min-height:40px;display:flex;align-items:center;cursor:pointer;color:#52645a;font-size:13px}
.cart-drawer-coupon-details .cart-drawer-coupon{padding-top:4px}
.calculator-dialog.calculator-compact .calc-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.calculator-dialog .calc-group{min-width:0}
.calculator-dialog .calc-group label{font-size:13px}
.calculator-dialog .calculator-price-breakdown{display:none}
.steps-dialog.calculator-dialog.calculator-compact{position:fixed;top:8px;bottom:auto;left:0;right:0;margin:0 auto;transform:none;padding:0;max-height:calc(100dvh - 16px);overflow:hidden;scroll-behavior:auto;overflow-anchor:none}
.calculator-dialog.calculator-compact[open]{display:flex;flex-direction:column}
.calculator-dialog-header{display:flex;align-items:center;gap:8px;flex:0 0 auto;padding:8px 12px;border-bottom:1px solid var(--border-light)}
.calculator-dialog .calculator-heading-row{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:0;min-width:0}
.calculator-dialog .calculator-heading-row h3{font-size:16px;line-height:22px;margin:0;gap:6px}
.calculator-dialog .measure-guide-btn{width:auto;min-height:24px;border:0;border-radius:0;padding:0;background:none;box-shadow:none;font-size:11px;gap:5px}
.calculator-dialog .steps-dialog-close{position:static;flex:0 0 40px;width:40px;height:40px}
.calculator-dialog-body{flex:1 1 auto;min-height:0;padding:10px 12px;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:auto;overflow-anchor:none}
.calculator-dialog.calculator-compact .calculator-section{margin:0;padding:0}
.calculator-dialog.calculator-compact .calc-row{margin-bottom:8px}
.calculator-dialog .product-measure-modes{margin-bottom:8px!important;gap:6px 12px!important}
.calculator-dialog .product-measure-modes legend{font-size:12px!important;line-height:16px;margin-bottom:4px!important}
.calculator-dialog .product-measure-modes label{font-size:12px;line-height:20px}
.calculator-dialog .product-measure-modes input[type=radio]{width:18px;height:18px;min-height:18px}
.calculator-dialog .product-size-picker{margin-bottom:8px}
.calculator-dialog .product-size-picker>label{font-size:13px;margin-bottom:4px}
.calculator-dialog .product-size-picker select{height:44px;min-height:44px;padding:0 8px}
.calculator-dialog-options{display:flex;flex-wrap:wrap;align-items:flex-start;gap:0 12px}
.calculator-dialog-options>details{flex:1 1 120px;min-width:0;margin:0;font-size:11px}
.calculator-dialog-options>details[open]{flex-basis:100%}
.calculator-dialog-options summary{padding:4px 0;min-height:28px}
.calculator-dialog-footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(132px,1fr);align-items:center;gap:10px;flex:0 0 auto;position:relative;z-index:1;padding:8px 12px max(8px,env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface);box-shadow:0 -3px 10px #183b2708}
.calculator-dialog-footer .calc-total{margin:0;padding:0;border-radius:0;background:transparent;text-align:left;min-width:0}
.calculator-dialog-footer .calc-total .label{font-size:11px;line-height:14px;margin:0}
.calculator-dialog-footer .calc-total .amount{font-size:22px;line-height:28px;overflow-wrap:anywhere}
.calculator-dialog-footer .calc-total .amount[data-awaiting-measure]{font-size:13px;line-height:18px}
.calculator-dialog-footer .calc-addon-total{font-size:10px;line-height:14px;margin-top:2px}
.calculator-dialog-footer #addToCartBtn{min-height:44px;margin:0;padding:8px 6px;font-size:14px;gap:5px;white-space:normal;line-height:20px}
.calculator-short-viewport .calculator-heading-row{flex-wrap:nowrap;justify-content:space-between}
.calculator-short-viewport .measure-guide-btn{flex:0 0 32px;width:32px;min-height:36px;font-size:18px}
.calculator-short-viewport .measure-guide-btn span{display:none}
.calculator-short-viewport .calculator-dialog-header{padding:4px 12px}
.calculator-short-viewport .calculator-dialog-body{padding-top:6px;padding-bottom:6px}
.calculator-short-viewport .calc-group{gap:3px}
.calculator-short-viewport .calc-group label{font-size:12px;line-height:16px}
.calculator-short-viewport.calculator-compact .calc-row{margin-bottom:6px}
@media(max-width:768px){
 .checkout-dialog.steps-dialog{margin:8px auto;padding-bottom:12px;scroll-padding-top:16px;scroll-padding-bottom:110px}
 .checkout-dialog.steps-dialog,.calculator-dialog.calculator-compact{bottom:auto}
 .checkout-dialog #checkoutWizard{max-height:calc(var(--checkout-viewport-height,100dvh) - 80px)}
 .checkout-dialog input:not([type=checkbox]):not([type=radio]),.checkout-dialog select,.checkout-dialog textarea{font-size:16px;min-height:44px;scroll-margin-block:40px 110px}
 .checkout-dialog .checkout-step-actions{position:sticky;bottom:0;z-index:5;box-shadow:0 -3px 10px #183b2710}
 .checkout-dialog .checkout-fee-breakdown{position:relative;font-size:11px;gap:4px 14px}
 .calculator-dialog input,.calculator-dialog select{font-size:16px;min-height:44px}
 .calculator-dialog .qty-selector button{min-width:36px;min-height:44px}
}
