.cart-drawer.oh-bag{width:min(520px,100%);height:100dvh;padding:0;background:var(--paper,#fff);color:var(--ink,#23211f)}
.oh-bag .drawer-heading{flex:none;gap:16px;padding:19px 24px;margin:0;border-bottom:1px solid var(--line,#e8e3df)}
.oh-bag .drawer-heading h2{display:flex;align-items:center;gap:12px;font-size:29px}
.oh-bag .drawer-heading h2 small{display:inline-flex;align-items:center;justify-content:center;min-width:27px;height:27px;border-radius:50%;background:var(--soft,#f7f6f4);font-size:12px}
.oh-bag .drawer-heading .icon-button{flex:none;width:44px;height:44px}
.oh-bag .drawer-content{min-height:0;padding:0;scrollbar-gutter:stable;overscroll-behavior:contain}
.oh-bag-body-inner{padding:24px}
.oh-bag-options{margin-top:16px}
.oh-bag .cart-item{position:relative;grid-template-columns:100px minmax(0,1fr);gap:18px;padding:0 0 24px;margin:0 0 24px}
.oh-bag .cart-item-image{align-self:start;background:var(--soft,#f7f6f4);border-radius:5px;overflow:hidden}
.oh-bag .cart-item-image img{display:block;aspect-ratio:1;object-fit:cover}
.oh-bag .cart-item h3{padding-right:32px;margin:0 0 8px;font:500 15px/1.45 var(--sans,Arial,sans-serif);overflow-wrap:anywhere}
.oh-bag .cart-item .fine-print{font-size:12px;line-height:1.5;margin:0 0 5px;overflow-wrap:anywhere}
.oh-bag .cart-item .price{font-size:15px;line-height:1.4;margin:10px 0 14px;display:flex;flex-wrap:wrap;gap:8px}
.oh-bag .oh-bag-remove{position:absolute;right:-8px;top:-10px;display:flex;align-items:center;justify-content:center;width:44px;height:44px}
.oh-bag-remove svg{width:16px;height:16px}
.oh-bag-quantity{display:inline-grid;grid-template-columns:44px 44px 44px;align-items:center;max-width:100%;border:1px solid #c9c2bc;border-radius:4px;overflow:hidden}
.oh-bag-quantity button{height:44px;min-width:44px;font-size:18px;background:#fff}
.oh-bag-quantity input{width:44px;min-width:0;height:44px;margin:0;padding:0;border:0;text-align:center;border-radius:0;font-size:16px;appearance:textfield;-moz-appearance:textfield}
.oh-bag-quantity input::-webkit-inner-spin-button,.oh-bag-quantity input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.oh-bag-upsell{padding:18px;background:#f7f4f0;border:1px solid #e8e2da;border-radius:7px}
.oh-bag-upsell>h3{font:22px/1.25 var(--serif,Georgia,serif);margin:0 0 16px}
.oh-bag-upsell-product{display:grid;grid-template-columns:88px minmax(0,1fr);gap:14px;align-items:center}
.oh-bag-upsell-image{border-radius:4px;overflow:hidden;background:#fff}
.oh-bag-upsell-image img{display:block;aspect-ratio:1;object-fit:contain}
.oh-bag-upsell-title{display:block;font-size:13px;line-height:1.5;font-weight:500;overflow-wrap:anywhere}
.oh-bag-upsell .price{font-size:14px;margin:7px 0 0}
.oh-bag-upsell form{margin-top:16px}
.oh-bag-upsell label{display:block;font-size:11px;line-height:1.4;margin:0 0 7px}
.oh-bag-upsell-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}
.oh-bag-upsell select{min-width:0;width:100%;min-height:46px;border-color:#c9c2bc;border-radius:4px;background:#fff;padding:10px;font-size:16px}
.oh-bag-upsell .button{min-height:46px;padding:10px 14px;border-radius:4px;font-size:11px;letter-spacing:.04em;white-space:nowrap}
.oh-bag .drawer-bottom{flex:none;background:#fff;margin:0;padding:14px 24px max(20px,env(safe-area-inset-bottom));border-top:1px solid var(--line,#e8e3df);box-shadow:0 -7px 22px #23211f05}
.oh-bag .cart-total{margin:14px 0 16px;font-size:15px;line-height:1.4}
.oh-bag .cart-total strong{font-size:19px;font-weight:600;white-space:nowrap}
.oh-bag .oh-bag-checkout{min-height:54px;display:flex;align-items:center;justify-content:center;gap:11px;background:var(--ink,#23211f);color:#fff;border:1px solid var(--ink,#23211f);font-size:13px;letter-spacing:.08em}
.oh-bag-checkout svg:first-child{width:16px;height:16px;margin-right:auto}
.oh-bag-checkout svg:last-child{margin-left:auto}
.oh-bag-discount{font-size:12px}
.oh-bag-discount summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;list-style:none;cursor:pointer}
.oh-bag-discount summary::-webkit-details-marker{display:none}
.oh-bag-discount summary span{font-size:20px;font-weight:400;transition:transform .15s}
.oh-bag-discount[open] summary span{transform:rotate(45deg)}
.oh-bag-discount form{display:flex;gap:8px;margin:4px 0 12px}
.oh-bag-discount input{min-width:0;flex:1;min-height:44px;border-radius:3px;padding:9px 12px;font-size:16px}
.oh-bag-apply{min-height:44px;min-width:66px;border:1px solid var(--ink,#23211f);border-radius:3px;padding:8px 14px;font-size:12px}
.oh-bag-code{display:inline-flex;align-items:center;gap:5px;background:#f2f0ed;padding-left:10px;margin:4px 8px 0 0;border-radius:4px;font-size:11px;max-width:100%;overflow-wrap:anywhere}
.oh-bag-code button{width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex:none}
.oh-bag-code svg{width:13px;height:13px}
.oh-bag-discount-total{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin:9px 0 0}
.oh-bag-message{font-size:12px;line-height:1.5;margin:0 0 8px;color:#355540}
.oh-bag-message.is-error{color:#9c2929}
.oh-bag[aria-busy=true] [data-cart-remove]{opacity:.45;cursor:wait}
.oh-bag-empty{padding:40px 0;text-align:center}
.oh-bag-empty p{font:24px/1.5 var(--serif,Georgia,serif);margin:0 0 24px}
.oh-bag-empty .button{min-height:48px}
.oh-bag button:focus-visible,.oh-bag a:focus-visible,.oh-bag input:focus-visible,.oh-bag select:focus-visible,.oh-bag summary:focus-visible{outline:2px solid #8f675b;outline-offset:2px}
@media(max-width:549px){.cart-drawer.oh-bag{width:100vw}.oh-bag .drawer-heading{padding:14px 18px}.oh-bag .drawer-heading h2{font-size:27px}.oh-bag .oh-bag-body-inner{padding:20px 18px}.oh-bag .cart-item{grid-template-columns:92px minmax(0,1fr);gap:14px}.oh-bag .cart-item h3{font-size:14px}.oh-bag .drawer-bottom{padding:10px 18px max(16px,env(safe-area-inset-bottom))}.oh-bag-upsell{padding:15px}.oh-bag-upsell>h3{font-size:21px}.oh-bag-upsell-product{grid-template-columns:80px minmax(0,1fr)}}
@media(max-width:359px){.oh-bag-upsell-actions{grid-template-columns:1fr}.oh-bag-upsell .button{width:100%}.oh-bag .cart-item{grid-template-columns:76px minmax(0,1fr);gap:12px}}
@media(max-height:420px){.oh-bag .drawer-heading{padding-top:6px;padding-bottom:6px}.oh-bag .drawer-heading h2{font-size:25px}.oh-bag .drawer-bottom{padding:8px 18px max(8px,env(safe-area-inset-bottom))}.oh-bag .cart-total{margin:0 0 8px;font-size:14px}.oh-bag .cart-total strong{font-size:17px}.oh-bag .oh-bag-checkout{min-height:46px}.oh-bag .oh-bag-body-inner{padding-top:16px;padding-bottom:16px}}
