.bb-drawer-open{overflow:hidden}
.bb-cart-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(520px,100%);height:100%;height:100dvh;max-width:100%;max-height:100%;padding:0;border:0;background:var(--cream);color:var(--navy-deep);box-shadow:-12px 0 48px #0003}
.bb-cart-drawer::backdrop{background:#061d2ccc}
.bb-drawer-shell{height:100%;display:flex;flex-direction:column}
.bb-drawer-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid var(--border)}
.bb-drawer-header h2{font:1.8rem/1.2 var(--font-heading)}
.bb-drawer-header button{font-size:2rem;line-height:1;width:44px;height:44px;cursor:pointer}
.bb-drawer-message{padding:12px 28px;font-size:.85rem;border-bottom:1px solid var(--border)}
[data-cart-drawer-content]{min-height:0;flex:1;overflow:auto}
.bb-drawer-form{min-height:100%;display:flex;flex-direction:column}
.bb-drawer-items{padding:20px 28px;flex:1}
.bb-drawer-text-button{font-size:.75rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.bb-drawer-item{display:grid;grid-template-columns:90px minmax(0,1fr);gap:20px;padding-block:24px;border-bottom:1px solid var(--border)}
.bb-drawer-image{align-self:start;background:var(--cream-deep);padding:8px}
.bb-drawer-image img{width:100%;height:110px;object-fit:contain}
.bb-drawer-item h3{font:1rem/1.4 var(--font-heading)}
.bb-drawer-item-info>p{margin-top:8px;font-size:.8rem;overflow-wrap:anywhere}
.bb-drawer-price{font-weight:700}.bb-drawer-price s{font-weight:400;opacity:.6}
.bb-drawer-item-actions{display:flex;align-items:center;gap:20px;margin-top:14px}
.bb-drawer-item-actions input{border:1px solid var(--border);width:70px;padding:8px;font-size:.85rem}
.bb-drawer-gift{margin-top:24px}.bb-drawer-gift label{display:block;font-size:.85rem;font-weight:600}
.bb-drawer-gift input{width:100%;border:1px solid var(--border);padding:12px;margin-top:8px;font-size:.8rem}
.bb-drawer-gift p{font-size:.75rem;line-height:1.6;margin-top:8px;opacity:.75}
.bb-drawer-footer{position:sticky;bottom:0;background:var(--cream);padding:24px 28px;border-top:1px solid var(--border)}
.bb-drawer-subtotal{display:flex;justify-content:space-between;gap:16px;font-size:1.1rem}
.bb-drawer-footer .bb-product-note{margin-top:12px;font-size:.75rem}
.bb-drawer-footer .btn-gold{width:100%;margin-top:18px}
.bb-drawer-view-cart{display:block;text-align:center;margin-top:12px;font-size:.8rem;text-decoration:underline}
.bb-drawer-empty{padding:40px 28px;text-align:center}.bb-drawer-empty .btn-gold{margin-top:24px}
.bb-cart-add-error{color:#9b2525;font-size:.85rem;margin-top:12px}
.bb-cart-drawer button:disabled,.bb-cart-drawer input:disabled{opacity:.55;cursor:wait}
@media(max-width:479px){.bb-drawer-header,.bb-drawer-footer{padding:18px 20px}.bb-drawer-items{padding:16px 20px}.bb-drawer-item{grid-template-columns:72px minmax(0,1fr);gap:14px}}
@media(prefers-reduced-motion:no-preference){.bb-cart-drawer[open]{animation:bb-drawer-enter .22s ease-out}@keyframes bb-drawer-enter{from{transform:translateX(100%)}to{transform:translateX(0)}}}
