/* The basket uses Bootstrap's dialog engine, independently of SmartMenus. */
body .bj-cart-wrap .bj-cart-toggle { position:relative; display:block; width:44px; height:44px; padding:0; border:0; background:none; box-shadow:none; text-decoration:none; }
body .bj-cart-toggle::before, body .bj-cart-toggle::after { content:none; }
body .bj-cart-toggle .bag-c i { position:absolute; top:4px; right:0; color:#e3d394; font-size:34px; line-height:1; }
body .bj-cart-toggle .header-cart-count { position:absolute; z-index:1; top:17px; right:7px; width:24px; height:16px; color:#5a5a5a; background:#e3d394; font-size:14px; font-weight:700; line-height:17px; text-align:center; }
/* Keep returned pointer focus quiet; keyboard focus follows the icon's touch target. */
body .bj-cart-wrap .bj-cart-toggle { border-radius:8px; }
body .bj-cart-wrap .bj-cart-toggle:focus { outline:none; box-shadow:none; }
body .bj-cart-wrap .bj-cart-toggle:focus-visible { background:#f2f2f2; box-shadow:0 0 0 2px #808080; }
@media (forced-colors:active) { body .bj-cart-wrap .bj-cart-toggle:focus-visible { outline:2px solid Highlight; outline-offset:2px; } }
body #bj-cart-drawer { --bs-offcanvas-width:420px; position:fixed; inset:0 0 0 auto; width:420px !important; max-width:100% !important; height:100vh; height:100dvh; margin:0; padding:0; border:0; background:#fff; color:#353535; box-shadow:-8px 0 32px #0000001a; overflow:hidden; text-align:left; }
body #bj-cart-drawer[hidden], #bj-cart-drawer [hidden] { display:none !important; }
#bj-cart-drawer *, #bj-cart-drawer *::before, #bj-cart-drawer *::after { box-sizing:border-box; }
#bj-cart-drawer .bj-cart-header { display:flex; flex:0 0 60px; align-items:center; justify-content:space-between; gap:16px; min-height:60px; padding:8px 16px 8px 24px; border-bottom:1px solid #e7e7e7; }
#bj-cart-drawer .bj-cart-header h2 { margin:0; padding:0; border:0; color:#353535; font-size:22px; font-weight:500; line-height:1.25; text-transform:none; }
#bj-cart-drawer .bj-cart-header h2::before, #bj-cart-drawer .bj-cart-header h2::after { content:none; }
#bj-cart-drawer .bj-cart-title-count { color:#737373; font-size:17px; }
#bj-cart-drawer button, #bj-cart-drawer a { font-style:normal; text-transform:none; letter-spacing:normal; }
#bj-cart-drawer a { border:0; background:none; box-shadow:none; color:#353535; text-decoration:none; }
#bj-cart-drawer a::before, #bj-cart-drawer a::after, #bj-cart-drawer button::before, #bj-cart-drawer button::after { content:none; }
#bj-cart-drawer button:focus, #bj-cart-drawer a:focus { outline:none; }
#bj-cart-drawer button:focus-visible, #bj-cart-drawer a:focus-visible { outline:2px solid #404040; outline-offset:3px; }
#bj-cart-drawer .bj-cart-close { display:grid; flex:0 0 44px; place-items:center; width:44px; height:44px; margin:0; padding:10px; border:0; border-radius:4px; background:transparent; box-shadow:none; color:#353535; }
#bj-cart-drawer .bj-cart-close svg { width:24px; height:24px; }
#bj-cart-drawer .bj-cart-close:hover { background:#f0f0f0; color:#202020; }
#bj-cart-drawer .bj-cart-close:active { background:#e5e5e5; }
#bj-cart-drawer .bj-cart-content, #bj-cart-drawer .bj-cart-widget, #bj-cart-drawer .widget_shopping_cart_content { display:flex; flex:1 1 auto; flex-direction:column; min-height:0; min-width:0; margin:0; padding:0; border:0; }
#bj-cart-drawer .bj-cart-content { overflow:hidden; }
#bj-cart-drawer .bj-cart-content:not([data-state="ready"]) .bj-cart-widget { display:none; }
#bj-cart-drawer .bj-cart-state { padding:32px 24px; text-align:center; }
#bj-cart-drawer .bj-cart-state p { margin:0 0 16px; line-height:1.6; }
#bj-cart-drawer .bj-cart-state > a { display:flex; align-items:center; justify-content:center; min-height:44px; padding:8px; text-decoration:underline; text-underline-offset:3px; }
#bj-cart-drawer .woocommerce-mini-cart { flex:1 1 auto; min-height:0; margin:0; padding:0 24px; overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; }
#bj-cart-drawer .woocommerce-mini-cart-item { position:relative; display:grid; grid-template-columns:80px minmax(0,1fr) 44px; align-items:start; gap:14px; margin:0; padding:24px 0; border:0; border-bottom:1px solid #e7e7e7; background:#fff; font-size:14px; line-height:1.5; }
#bj-cart-drawer .woocommerce-mini-cart-item:last-child { border-bottom:0; }
#bj-cart-drawer .bj-mini-cart-image { grid-column:1; grid-row:1; display:flex; align-items:center; justify-content:center; width:80px; height:96px; margin:0; padding:0; }
#bj-cart-drawer .bj-mini-cart-image img { display:block; float:none; width:80px; height:96px; max-width:100%; max-height:100%; margin:0; border:0; border-radius:0; object-fit:contain; }
#bj-cart-drawer .bj-mini-cart-image-unavailable { background:#f5f5f5; }
#bj-cart-drawer .bj-mini-cart-image-unavailable::after { content:'Image unavailable'; display:block; padding:8px; color:#777; font-size:11px; font-weight:400; line-height:1.5; text-align:center; }
#bj-cart-drawer .bj-mini-cart-details { grid-column:2; grid-row:1; min-width:0; padding:5px 0 0; overflow-wrap:anywhere; }
#bj-cart-drawer .bj-mini-cart-name { display:block; margin:0 0 8px; padding:0; font-size:14px; font-weight:600; line-height:1.5; }
#bj-cart-drawer a.bj-mini-cart-name { margin:-4px -6px 4px; padding:4px 6px; border-radius:3px; transition:color .15s ease,background-color .15s ease; }
#bj-cart-drawer a.bj-mini-cart-name:hover { background:#f4f4f5; color:#202022; text-decoration:none; }
#bj-cart-drawer a.bj-mini-cart-name:active { background:#eaeaec; color:#202022; text-decoration:none; }
#bj-cart-drawer .variation { display:block; margin:0 0 8px; padding:0; border:0; color:#666; font-size:12px; line-height:1.6; }
#bj-cart-drawer .variation dt { float:left; clear:left; margin:0 4px 0 0; font-weight:400; }
#bj-cart-drawer .variation dd { margin:0; padding:0; }
#bj-cart-drawer .variation p { margin:0; }
#bj-cart-drawer .quantity { display:block; margin:0; padding:0; color:#404040; font-size:14px; line-height:1.5; }
#bj-cart-drawer a.remove { position:static; grid-column:3; grid-row:1; display:grid; place-items:center; width:44px; height:44px; min-width:44px; min-height:44px; margin:0; padding:0; border:0 !important; border-radius:50%; background:transparent !important; box-shadow:none; color:#404041 !important; font-size:24px; font-weight:400; line-height:1; text-decoration:none; text-shadow:none; }
#bj-cart-drawer a.remove:hover { background:#f1f1f2 !important; color:#202022 !important; }
#bj-cart-drawer a.remove:active { background:#e7e7e9 !important; color:#202022 !important; }
#bj-cart-drawer a.remove:focus { outline:none !important; }
#bj-cart-drawer a.remove:focus-visible { outline:2px solid #404041 !important; outline-offset:2px; }
#bj-cart-drawer a.remove svg { display:block; flex:none; width:20px; height:20px; margin:0; pointer-events:none; }
#bj-cart-drawer .remove::before, #bj-cart-drawer .remove::after { content:none !important; }
#bj-cart-drawer .remove[aria-disabled="true"] { opacity:.45; cursor:wait; }
#bj-cart-drawer .bj-mini-cart-footer { flex:none; margin:0; padding:20px 24px max(24px,env(safe-area-inset-bottom)); border-top:1px solid #e7e7e7; background:#fff; }
#bj-cart-drawer .woocommerce-mini-cart__total { display:flex; justify-content:space-between; align-items:baseline; gap:16px; margin:0 0 16px; padding:0; border:0; color:#353535; font-size:17px; }
#bj-cart-drawer .woocommerce-mini-cart__total strong { font-weight:600; }
#bj-cart-drawer .woocommerce-mini-cart__buttons { display:grid; gap:8px; margin:0; padding:0; }
#bj-cart-drawer .woocommerce-mini-cart__buttons > a, #bj-cart-drawer .bj-mini-cart-browse, #bj-cart-drawer .bj-cart-retry { display:flex; align-items:center; justify-content:center; width:100%; min-height:44px; margin:0; padding:11px 16px; border:1px solid #404040; border-radius:4px; background:#404040; box-shadow:none; color:#fff; font-size:14px; font-weight:500; line-height:1.5; text-align:center; text-decoration:none; }
#bj-cart-drawer .woocommerce-mini-cart__buttons > .bj-mini-cart-view { background:#fff; border-color:#d8d8d8; color:#404040; }
#bj-cart-drawer .woocommerce-mini-cart__buttons > a:hover, #bj-cart-drawer .bj-mini-cart-browse:hover, #bj-cart-drawer .bj-cart-retry:hover { background:#252525; border-color:#252525; color:#fff; }
#bj-cart-drawer .woocommerce-mini-cart__buttons > .bj-mini-cart-view:hover { background:#f2f2f2; border-color:#bcbcbc; color:#252525; }
#bj-cart-drawer .woocommerce-mini-cart__buttons > a:active, #bj-cart-drawer .bj-mini-cart-browse:active, #bj-cart-drawer .bj-cart-retry:active { background:#161616; color:#fff; }
#bj-cart-drawer .bj-mini-cart-empty { padding:40px 28px; overflow:auto; text-align:center; }
#bj-cart-drawer .bj-mini-cart-empty > i { margin-bottom:20px; color:#858585; font-size:38px; }
#bj-cart-drawer .bj-mini-cart-empty p { margin:0 0 20px; color:#666; font-size:14px; line-height:1.6; }
#bj-cart-drawer .bj-mini-cart-empty .woocommerce-mini-cart__empty-message { margin-bottom:12px; color:#353535; font-size:20px; font-weight:500; }
@media (max-width:480px) { body #bj-cart-drawer { width:100% !important; } #bj-cart-drawer .bj-cart-header { padding-left:20px; } #bj-cart-drawer .woocommerce-mini-cart { padding:0 20px; } #bj-cart-drawer .woocommerce-mini-cart-item { gap:10px; } #bj-cart-drawer .bj-mini-cart-footer { padding-left:20px; padding-right:20px; } }
@media (max-height:480px) { #bj-cart-drawer .bj-mini-cart-footer { padding-top:10px; padding-bottom:max(10px,env(safe-area-inset-bottom)); } #bj-cart-drawer .woocommerce-mini-cart__total { margin-bottom:8px; } #bj-cart-drawer .woocommerce-mini-cart__buttons { grid-template-columns:1fr 1fr; } }
@media (prefers-reduced-motion:reduce) { body #bj-cart-drawer, #bj-cart-drawer a.bj-mini-cart-name { transition:none !important; } }
