/* Scoped safeguards: avoid overriding third-party checkout/payment layouts. */
.vb-cart-status { padding:0 20px; margin:8px 0; font-size:14px; line-height:1.45; }
.vb-cart-status:empty { display:none; }
.vb-cart-drawer-panel { height:100dvh; max-height:100dvh; padding-bottom:env(safe-area-inset-bottom,0px); }
.vb-cart-drawer-panel header { padding-top:max(20px,env(safe-area-inset-top,0px)); }
.vb-cart-drawer-panel :is(button,.button) { min-height:44px; }
.vb-cart-drawer-panel [data-vb-cart-drawer-close] { min-width:44px; }
.vb-app-help { max-width:450px; margin:14px 0; }
.vb-app-help summary { min-height:44px; padding:12px 0; cursor:pointer; }
.vb-app-help p { line-height:1.6; }
.vb-app-help button { min-height:44px; padding:10px 16px; cursor:pointer; }
.vb-app-help [hidden] { display:none!important; }
:is(.vb-finder,.vb-pdp,.vb-cart-drawer,.vb-header,.vb-catalog) :is(a,button,input,select):focus-visible { outline:3px solid #0073aa; outline-offset:3px; }
@media(max-width:900px) {
 .vb-header input[type=search],.vb-finder input,.vb-finder select,.vb-pdp input,.vb-pdp select { font-size:16px; }
 .vb-header :is(button,.vb-cart-link),.vb-finder button,.vb-pdp :is(button,.button) { min-height:44px; }
 .vb-pdp :is(.quantity input.qty,.vb-qty-button) { min-height:44px; }
 .vb-cart-drawer-panel { width:min(100%,440px); }
 .vb-pdp-sticky-cart { padding-bottom:max(10px,env(safe-area-inset-bottom,0px)); }
 .vb-finder table { min-width:0; }
 .vb-finder-product-quantity input { min-height:44px; }
}
@media(prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto!important; }
 .vb-cart-drawer,.vb-cart-drawer-panel,.vb-pdp *,.vb-finder * { animation-duration:0.01ms!important; transition-duration:0.01ms!important; scroll-behavior:auto!important; }
}

.vb-skip-link{position:fixed;top:8px;left:8px;transform:translateY(-180%);z-index:999999;background:#fff;color:#005a8b;border:2px solid currentColor;padding:12px 18px;}
.vb-skip-link:focus{transform:none;}

/* Technical labels remain readable on a phone; no tiny 7-11px purchase details. */
@media(max-width:900px) {
 .vb-finder-product-copy strong,.vb-finder-product-availability strong,.vb-finder-tree-level a>span,.vb-finder-child-grid strong { font-size:14px; }
 .vb-finder-product-price>strong { font-size:18px; }
 .vb-finder-product-copy small,.vb-finder-product-availability small,.vb-finder-product-price>small,.vb-finder-product-position small,.vb-finder-root-card small,.vb-finder-breadcrumb { font-size:12px; }
 .vb-finder-product-position>span,.vb-finder-section-head>small,.vb-finder-tree-level-label,.vb-finder-tree-level a>small { font-size:11px; }
 .vb-finder-add-button,.vb-finder-details-button { min-height:44px; font-size:13px!important; }
 .vb-finder-tree-head button { min-width:44px; min-height:44px; }
 .vb-finder-tree-level li a { min-height:44px; }
 .vb-finder-product-copy small { white-space:normal; overflow-wrap:anywhere; }
 .vb-finder-product-position { min-width:0; overflow-wrap:anywhere; }
 .vb-finder-tree { padding-top:env(safe-area-inset-top,0px); padding-bottom:env(safe-area-inset-bottom,0px); }
}
