/* BB Cart critical geometry: must be available before first paint. */
.bb-cart-shortcode{position:relative;display:inline-flex;align-items:center;justify-content:center;line-height:0;vertical-align:middle}
            [data-bb-cart-open]{position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:30px;height:44px;min-width:30px;min-height:44px;margin:0;padding:0;border:0;background:transparent;color:#1d1d1f;cursor:pointer;line-height:0}
            .bb-cart-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:30px;height:44px;line-height:0}
            .bb-cart-svg{display:block;width:30px;height:44px;fill:currentColor;color:inherit;flex:none}
            [data-bb-cart-count]{position:absolute;z-index:2;top:22px;right:-3px;box-sizing:border-box;width:auto;min-width:15px;height:15px;padding:0 4px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:#1d1d1f;color:#fff;box-shadow:0 0 0 2px #fafafc;font:500 10px/15px -apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",Arial,sans-serif;white-space:nowrap}
            [data-bb-cart-count][hidden],[data-bb-cart-overlay][hidden],[data-bb-cart-drawer][hidden]{display:none}
            #globalnav .globalnav-flyout-scroll-container,#globalnav .globalnav-menu,#globalnav .globalnav-menu-list{scrollbar-width:none;-ms-overflow-style:none}
            #globalnav .globalnav-flyout-scroll-container::-webkit-scrollbar,#globalnav .globalnav-menu::-webkit-scrollbar,#globalnav .globalnav-menu-list::-webkit-scrollbar{display:none;width:0;height:0;background:transparent}
            @media(max-width:833px){html.bb-wc-bag-open.globalnav-noscroll,html.bb-wc-bag-open.globalnav-noscroll body{overscroll-behavior-x:auto;overscroll-behavior-y:none}#globalnav.bb-wc-bag-open .globalnav-content{overflow-y:hidden;touch-action:pan-x pan-y pinch-zoom}#globalnav.bb-wc-bag-open #globalnav-submenu-bag{overflow:hidden;touch-action:pan-x pan-y pinch-zoom}#globalnav.bb-wc-bag-open #globalnav-submenu-bag .globalnav-flyout-scroll-container{box-sizing:border-box;height:100%;max-height:100%;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:auto;overscroll-behavior-y:contain;touch-action:pan-x pan-y pinch-zoom}#globalnav.bb-wc-bag-open #globalnav-submenu-bag .bb-cart-apple-embed,#globalnav.bb-wc-bag-open #globalnav-submenu-bag .bb-cart-drawer__body{overflow:visible;touch-action:pan-x pan-y pinch-zoom}}
            [data-bb-cart-root]{--bb-motion:.32s;--bb-ease:cubic-bezier(.4,0,.6,1)}
            [data-bb-cart-overlay]{position:fixed;inset:44px 0 0;z-index:999998;display:block;visibility:visible;opacity:0;pointer-events:none;background:rgba(232,232,237,0);backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);transition:opacity var(--bb-motion) var(--bb-ease),background-color var(--bb-motion) var(--bb-ease),backdrop-filter var(--bb-motion) var(--bb-ease),-webkit-backdrop-filter var(--bb-motion) var(--bb-ease)}
            [data-bb-cart-drawer]{position:fixed;top:44px;left:0;right:0;z-index:999999;width:100vw;max-width:none;max-height:calc(100vh - 44px);max-height:calc(100dvh - 44px);box-sizing:border-box;display:flex;flex-direction:column;visibility:visible;opacity:1;pointer-events:none;background:transparent;isolation:isolate;overflow:hidden}
            [data-bb-cart-drawer]::before{content:"";position:absolute;inset:0;z-index:0;background:#fafafc;border-bottom:1px solid rgba(0,0,0,.06);clip-path:inset(0 0 100% 0);transition:clip-path var(--bb-motion) var(--bb-ease),background-color var(--bb-motion) var(--bb-ease)}
            [data-bb-cart-drawer]>.bb-cart-drawer__header,[data-bb-cart-drawer]>.bb-cart-notices,[data-bb-cart-drawer]>.bb-cart-drawer__body{position:relative;z-index:1;opacity:0;transform:translate3d(0,-8px,0);transition:opacity var(--bb-motion) var(--bb-ease),transform var(--bb-motion) var(--bb-ease)}
            [data-bb-cart-root].is-open [data-bb-cart-overlay]:not([hidden]){opacity:1;pointer-events:auto;background:rgba(232,232,237,.38);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
            [data-bb-cart-root].is-open [data-bb-cart-drawer]{pointer-events:auto}
            [data-bb-cart-root].is-open [data-bb-cart-drawer]::before{clip-path:inset(0 0 0 0)}
            [data-bb-cart-root].is-open [data-bb-cart-drawer]>.bb-cart-drawer__header,[data-bb-cart-root].is-open [data-bb-cart-drawer]>.bb-cart-notices,[data-bb-cart-root].is-open [data-bb-cart-drawer]>.bb-cart-drawer__body{opacity:1;transform:translate3d(0,0,0)}
            html.bb-cart-lock,body.bb-cart-lock{overflow:hidden;overscroll-behavior:none}
            .theme-dark [data-bb-cart-open],.globalheader-dark [data-bb-cart-open],#globalnav.globalnav-dark [data-bb-cart-open]{color:#f5f5f7}
            .theme-dark [data-bb-cart-count],.globalheader-dark [data-bb-cart-count],#globalnav.globalnav-dark [data-bb-cart-count]{background:#f5f5f7;color:#1d1d1f;box-shadow:0 0 0 2px #161617}
            .theme-dark [data-bb-cart-drawer]::before{background:#161617;border-bottom-color:rgba(255,255,255,.1)}
            @media(max-width:833px){[data-bb-cart-open],.bb-cart-icon{height:48px;min-height:48px}[data-bb-cart-overlay]{inset:48px 0 0}[data-bb-cart-drawer]{top:48px;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px)}[data-bb-cart-count]{top:25px;right:-2px}}
            /* Data-only Apple Bag bridge: suppress transitions only during the few DOM writes
             * that synchronize the WooCommerce count. Native Apple flyout/menu motion is untouched. */
            #globalnav.bb-wc-bag-syncing .globalnav-bag,#globalnav.bb-wc-bag-syncing .globalnav-link-bag,#globalnav.bb-wc-bag-syncing .globalnav-bag-badge,#globalnav.bb-wc-bag-syncing .globalnav-bag-badge:before,#globalnav.bb-wc-bag-syncing .globalnav-bag-badge:after,#globalnav.bb-wc-bag-syncing .globalnav-bag-badge-separator,#globalnav.bb-wc-bag-syncing .globalnav-bag-badge-number,#globalnav.bb-wc-bag-syncing .globalnav-bag-badge-unit{transition:none}
            #globalnav .globalnav-bag:not(.with-badge) .globalnav-bag-badge,#globalnav .globalnav-bag-badge.bb-bag-badge-empty,#globalnav .globalnav-bag-badge[hidden]{display:none}
            /* Keep Apple's native Bag/Search geometry untouched. BB Cart only toggles
             * the native count classes and badge visibility/content. */

/* BB Cart full component styles. */
:root{
  --bb-ink:#1d1d1f;
  --bb-muted:#6e6e73;
  --bb-subtle:#86868b;
  --bb-surface:#fff;
  --bb-soft:#f5f5f7;
  --bb-line:#d2d2d7;
  --bb-line-soft:rgba(0,0,0,.075);
  --bb-blue:#0071e3;
  --bb-blue-hover:#0077ed;
  --bb-font-text:"BB Text","Helvetica Neue","Segoe UI",Arial,sans-serif;
  --bb-font-display:"BB Display","Helvetica Neue","Segoe UI",Arial,sans-serif;
  --bb-font:var(--bb-font-text);
}

.bb-cart-root,.bb-full-cart-page{font-family:var(--bb-font);color:var(--bb-ink)}
#globalnav-submenu-bag .bb-cart-apple-embed{width:100%;min-width:0;align-self:stretch}
.bb-cart-trigger{appearance:none;border:0;background:transparent;padding:0;color:var(--bb-ink);cursor:pointer;gap:8px}
.bb-cart-trigger:focus-visible,.bb-cart-close:focus-visible,.bb-cart-btn:focus-visible,.bb-cart-qty__btn:focus-visible,.bb-cart-coupon button:focus-visible,.bb-cart-coupon input:focus-visible{outline:3px solid rgba(0,113,227,.25);outline-offset:2px}
.bb-cart-count{top:-1px;right:-7px;background:var(--bb-ink);color:#fff;box-shadow:0 0 0 2px #fff}

/* The page remains visible, but becomes soft like the reference when Bag is open. */
.bb-cart-overlay{
  background:rgba(245,245,247,.28);
  backdrop-filter:blur(18px) saturate(115%);
  -webkit-backdrop-filter:blur(18px) saturate(115%);
  transition:opacity .32s cubic-bezier(.4,0,.6,1),visibility .32s step-end
}

/* Full-width white top sheet. The actual UI inside stays centered at 980px. */
.bb-cart-drawer{
  margin:0;
  background:#fff;
  border:0;
  border-bottom:1px solid rgba(0,0,0,.06);
  border-radius:0;
  box-shadow:0 14px 34px rgba(0,0,0,.055);
  overflow:hidden;
  transition:transform .32s cubic-bezier(.4,0,.6,1),opacity .32s cubic-bezier(.4,0,.6,1),visibility .32s step-end
}

.bb-cart-drawer__header,
.bb-cart-drawer__body,
.bb-cart-notices{
  box-sizing:border-box;
  margin-left:auto;
  margin-right:auto
}

.bb-cart-drawer__header{
  flex:0 0 auto;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:18px 0 8px
}
.bb-cart-drawer__title{font-size:24px;line-height:1.12;font-weight:650;letter-spacing:-.025em}
.bb-cart-drawer__meta{margin-top:4px;color:var(--bb-muted);font-size:11px;line-height:1.35}
.bb-cart-root .bb-cart-close{
  appearance:none;-webkit-appearance:none;box-sizing:border-box;
  display:inline-grid;place-items:center;flex:0 0 32px;
  width:32px;min-width:32px;max-width:32px;
  height:32px;min-height:32px;max-height:32px;
  margin:0;padding:0;border:0;border-radius:50%;
  background:var(--bb-soft);color:var(--bb-muted);box-shadow:none;
  font-family:var(--bb-font-display);font-size:21px;font-weight:400;line-height:1;
  text-align:center;text-transform:none;letter-spacing:0;cursor:pointer;
  transition:background .24s cubic-bezier(.4,0,.6,1),color .24s cubic-bezier(.4,0,.6,1)
}
.bb-cart-root .bb-cart-close:hover{background:#e8e8ed;color:var(--bb-ink)}
.bb-cart-root .bb-cart-close:before,.bb-cart-root .bb-cart-close:after{content:none}

.bb-cart-notices{flex:0 0 auto;padding:0}
.bb-cart-notices:empty{display:none}
.bb-cart-notices .woocommerce-message,.bb-cart-notices .woocommerce-error,.bb-cart-inline-error{
  margin:4px 0 8px;padding:10px 12px;border:0;border-radius:10px;background:var(--bb-soft);color:var(--bb-ink);
  font-size:11px;line-height:1.4;list-style:none
}

.bb-cart-drawer__body{
  flex:1 1 auto;
  min-height:0;
  overflow:auto;
  overscroll-behavior:contain;
  padding:0 0 26px
}

/* Compact product rows similar to the reference Bag preview. */
.bb-cart-items{display:flex;flex-direction:column}
.bb-cart-item{
  position:relative;
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  gap:20px;
  align-items:start;
  padding:10px 0 16px;
  border-bottom:1px solid var(--bb-line-soft)
}
.bb-cart-item:last-child{border-bottom:0}
.bb-cart-item__thumb{
  width:58px;height:58px;border-radius:10px;overflow:hidden;background:var(--bb-soft);
  display:flex;align-items:center;justify-content:center
}
.bb-cart-item__thumb img{display:block;width:100%;height:100%;object-fit:contain}
.bb-cart-item__info{min-width:0;padding-right:28px}
.bb-cart-item__top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.bb-cart-item__name,.bb-cart-item__name a{
  color:var(--bb-ink);font-size:13px;line-height:1.38;font-weight:600;letter-spacing:-.012em;text-decoration:none
}
.bb-cart-item__name a:hover{text-decoration:underline;text-underline-offset:2px}
.bb-cart-item__subtotal{font-size:13px;line-height:1.35;font-weight:600;white-space:nowrap}
.bb-cart-item__meta{margin-top:4px;color:var(--bb-muted);font-size:10.5px;line-height:1.45}
.bb-cart-item__meta dl,.bb-cart-item__meta p{margin:0}
.bb-cart-item__bottom{display:flex;align-items:center;justify-content:flex-start;gap:16px;margin-top:9px;flex-wrap:wrap}
.bb-cart-item__price{color:var(--bb-muted);font-size:10.5px;line-height:1.3}
.bb-cart-item__price span{color:var(--bb-subtle)}
.bb-cart-item__remove{position:absolute;top:11px;right:0;color:#8e8e93;text-decoration:none;font-size:17px;line-height:1}
.bb-cart-item__remove:hover{color:var(--bb-ink)}

.bb-cart-root .bb-cart-qty{
  box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 auto;width:auto;height:32px;min-height:32px;
  margin:0;padding:0;border:0;border-radius:999px;background:var(--bb-soft);
  overflow:hidden;box-shadow:none;vertical-align:middle
}
.bb-cart-root .bb-cart-qty__btn{
  appearance:none;-webkit-appearance:none;box-sizing:border-box;display:inline-flex;
  align-items:center;justify-content:center;flex:0 0 32px;
  width:32px;min-width:32px;max-width:32px;height:32px;min-height:32px;max-height:32px;
  margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--bb-ink);
  box-shadow:none;font-family:var(--bb-font);font-size:16px;font-weight:400;line-height:1;
  text-align:center;text-transform:none;letter-spacing:0;cursor:pointer
}
.bb-cart-root .bb-cart-qty__btn:hover,.bb-cart-root .bb-cart-qty__btn:focus{background:rgba(0,0,0,.045);color:var(--bb-ink)}
.bb-cart-root .bb-cart-qty__input{
  appearance:textfield;-moz-appearance:textfield;box-sizing:border-box;display:block;flex:0 0 36px;
  width:36px;min-width:36px;max-width:36px;height:32px;min-height:32px;max-height:32px;
  margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--bb-ink);
  box-shadow:none;outline:0;font-family:var(--bb-font);font-size:14px;font-weight:500;line-height:32px;
  text-align:center;text-indent:0;letter-spacing:0;vertical-align:middle
}
.bb-cart-root .bb-cart-qty__input::-webkit-outer-spin-button,.bb-cart-root .bb-cart-qty__input::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none;margin:0}
.bb-cart-root .bb-cart-qty--single{height:32px;padding:0 12px;font-size:11px;line-height:32px}


/* Apple-like account shortcuts shown in both the popup and [bb_full_cart]. */
.bb-cart-profile{
  margin:18px 0 4px;
  padding:0;
  color:var(--bb-ink)
}
.bb-cart-profile__title{
  margin:0 0 10px;
  color:var(--bb-muted);
  font-size:11px;
  line-height:1.35;
  font-weight:400
}
.bb-cart-profile__links{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 22px
}
.bb-cart-profile__link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:28px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--bb-ink);
  box-shadow:none;
  font-family:var(--bb-font);
  font-size:11.5px;
  font-weight:500;
  line-height:1.25;
  letter-spacing:0;
  text-decoration:none;
  text-transform:none
}
.bb-cart-profile__link:hover{color:var(--bb-blue)}
.bb-cart-profile__icon{
  position:relative;
  box-sizing:border-box;
  display:inline-block;
  width:15px;
  height:15px;
  flex:0 0 15px;
  color:var(--bb-subtle)
}
.bb-cart-profile__link:hover .bb-cart-profile__icon{color:var(--bb-blue)}
.bb-cart-profile__icon:before,
.bb-cart-profile__icon:after{content:"";position:absolute;box-sizing:border-box}
.bb-cart-profile__icon--orders:before{inset:2px;border:1.25px solid currentColor;border-radius:2px;transform:rotate(30deg)}
.bb-cart-profile__icon--orders:after{left:4px;right:4px;top:6.4px;border-top:1.25px solid currentColor}
.bb-cart-profile__icon--downloads:before{left:3px;right:3px;bottom:1px;height:5px;border:1.25px solid currentColor;border-top:0;border-radius:0 0 2px 2px}
.bb-cart-profile__icon--downloads:after{left:7px;top:1px;width:1.25px;height:8px;background:currentColor;box-shadow:-3px 4px 0 -1px currentColor,3px 4px 0 -1px currentColor;transform-origin:center}
.bb-cart-profile__icon--account:before{left:4.6px;top:1px;width:6px;height:6px;border:1.25px solid currentColor;border-radius:50%}
.bb-cart-profile__icon--account:after{left:2px;right:2px;bottom:1px;height:6px;border:1.25px solid currentColor;border-radius:7px 7px 3px 3px}
.bb-cart-profile__icon--bag:before{left:2px;right:2px;top:5px;bottom:1px;border:1.25px solid currentColor;border-radius:3px}
.bb-cart-profile__icon--bag:after{left:5px;top:1px;width:5px;height:6px;border:1.25px solid currentColor;border-bottom:0;border-radius:5px 5px 0 0}
.bb-cart-profile__icon--signin:before{inset:1.5px;border:1.25px solid currentColor;border-radius:50%}
.bb-cart-profile__icon--signin:after{left:4px;right:4px;bottom:3px;height:4px;border:1.25px solid currentColor;border-radius:5px 5px 3px 3px}

/* Lower utility area takes the role of the compact profile/action area in the reference. */
.bb-cart-footer-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);gap:56px;align-items:start;margin-top:14px;padding-top:12px}
.bb-cart-card{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}
.bb-cart-card__title{margin:0 0 8px;color:var(--bb-muted);font-size:11px;line-height:1.3;font-weight:400}
.bb-cart-coupon{padding:0;border:0}
.bb-cart-coupon form{display:flex;align-items:center;gap:8px;max-width:390px}
.bb-cart-coupon input{
  min-width:0;flex:1;height:34px;padding:0 11px;border:1px solid #d2d2d7;border-radius:8px;background:#fff;
  font:400 11px var(--bb-font);color:var(--bb-ink);box-shadow:none
}
.bb-cart-coupon input::placeholder{color:#86868b}
.bb-cart-coupon button{
  height:34px;padding:0 14px;border:0;border-radius:999px;background:var(--bb-ink);color:#fff;font:500 11px var(--bb-font);cursor:pointer
}
.bb-cart-coupon button:disabled{opacity:.5;cursor:default}
.bb-cart-coupons{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.bb-cart-coupon .bb-cart-coupon-chip{
  height:27px;padding:0 9px;border:0;border-radius:999px;background:var(--bb-soft);color:var(--bb-ink);
  font:500 10px var(--bb-font);display:inline-flex;align-items:center;gap:5px;cursor:pointer
}

.bb-cart-summary{padding:0}
.bb-cart-summary__row{display:flex;justify-content:space-between;gap:18px;padding:4px 0;font-size:11.5px;line-height:1.4}
.bb-cart-summary__row span{color:var(--bb-muted)}
.bb-cart-summary__row strong{color:var(--bb-ink);font-weight:600}
.bb-cart-summary__row--total{margin-top:5px;padding-top:9px;border-top:1px solid var(--bb-line-soft);font-size:15px}
.bb-cart-summary__row--total span,.bb-cart-summary__row--total strong{color:var(--bb-ink)}
.bb-cart-summary__note{margin:6px 0 0;color:var(--bb-subtle);font-size:9.5px;line-height:1.4}
.bb-cart-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:11px}
.bb-cart-btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 15px;border-radius:999px;text-decoration:none;
  font-size:11.5px;font-weight:500;transition:background .24s cubic-bezier(.4,0,.6,1),transform .24s cubic-bezier(.4,0,.6,1),color .24s cubic-bezier(.4,0,.6,1)
}
.bb-cart-btn:active{transform:scale(.985)}
.bb-cart-btn--secondary{background:var(--bb-soft);color:var(--bb-ink)}
.bb-cart-btn--secondary:hover{background:#e8e8ed;color:var(--bb-ink)}
.bb-cart-btn--primary{background:var(--bb-blue);color:#fff}
.bb-cart-btn--primary:hover{background:var(--bb-blue-hover);color:#fff}

.bb-cart-empty{text-align:center;padding:30px 0 34px}
.bb-cart-empty__icon{display:inline-flex;opacity:.7}
.bb-cart-empty__icon .bb-cart-svg{display:block;width:46px;height:46px}
.bb-cart-empty p{margin:12px 0 16px;font-size:14px;font-weight:600}

/* Scoped control reset: prevents Elementor/theme form and button styles from overriding this cart UI. */
.bb-cart-root button,
.bb-cart-root input,
.bb-cart-root a.bb-cart-btn{
  box-sizing:border-box;
  font-family:var(--bb-font);
  text-transform:none;
  letter-spacing:0;
}
.bb-cart-root button{
  margin:0;
  box-shadow:none;
  text-shadow:none;
}
.bb-cart-root input{box-shadow:none}
.bb-cart-root .bb-cart-btn{
  margin:0;border:0;box-shadow:none;text-shadow:none;
  line-height:1;white-space:nowrap
}
.bb-cart-root .bb-cart-btn--secondary{background:var(--bb-soft);color:var(--bb-ink)}
.bb-cart-root .bb-cart-btn--secondary:hover{background:#e8e8ed;color:var(--bb-ink)}
.bb-cart-root .bb-cart-btn--primary{background:var(--bb-blue);color:#fff}
.bb-cart-root .bb-cart-btn--primary:hover{background:var(--bb-blue-hover);color:#fff}
.bb-cart-root .bb-cart-coupon input{
  height:34px;min-height:34px;margin:0;padding:0 11px;border:1px solid #d2d2d7;
  border-radius:8px;background:#fff;color:var(--bb-ink);font-size:11px;line-height:34px
}
.bb-cart-root .bb-cart-coupon button{
  height:34px;min-height:34px;margin:0;padding:0 14px;border:0;border-radius:999px;
  background:var(--bb-ink);color:#fff;font-size:11px;font-weight:500;line-height:34px
}
.bb-cart-root .bb-cart-coupon .bb-cart-coupon-chip{
  height:27px;min-height:27px;padding:0 9px;border-radius:999px;background:var(--bb-soft);
  color:var(--bb-ink);font-size:10px;line-height:27px
}

/* Full /cart/ page: use the exact same visual components as the popup. */
.bb-full-cart-page.bb-cart-root{
  box-sizing:border-box;
  width:min(980px,calc(100% - 32px));
  max-width:980px;
  margin:0 auto;
  padding:56px 0 72px;
  background:#fff;
  color:var(--bb-ink)
}
.bb-full-cart-page__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:0 0 26px;
  border-bottom:1px solid var(--bb-line-soft)
}
.bb-full-cart-page__title{
  margin:0;
  padding:0;
  color:var(--bb-ink);
  font-family:var(--bb-font);
  font-size:40px;
  font-weight:650;
  line-height:1.08;
  letter-spacing:-.035em;
  text-transform:none
}
.bb-full-cart-page__meta{
  margin:7px 0 0;
  padding:0;
  color:var(--bb-muted);
  font:400 12px/1.4 var(--bb-font)
}
.bb-full-cart-page__checkout{
  flex:0 0 auto;
  min-height:42px;
  height:42px;
  padding:0 20px;
  font-size:14px;
  line-height:42px
}
.bb-full-cart-page__notices{width:100%;margin:0;padding:12px 0 0}
.bb-full-cart-page__body{padding:22px 0 0}

/* On the full page, let the shared popup components breathe a little more. */
.bb-full-cart-page .bb-cart-item{
  grid-template-columns:86px minmax(0,1fr);
  gap:24px;
  padding:20px 0 24px
}
.bb-full-cart-page .bb-cart-item__thumb{width:86px;height:86px;border-radius:14px}
.bb-full-cart-page .bb-cart-item__info{padding-right:34px}
.bb-full-cart-page .bb-cart-item__name,
.bb-full-cart-page .bb-cart-item__name a{font-size:15px;line-height:1.4}
.bb-full-cart-page .bb-cart-item__subtotal{font-size:15px}
.bb-full-cart-page .bb-cart-item__meta{margin-top:5px;font-size:11px}
.bb-full-cart-page .bb-cart-item__bottom{margin-top:12px}
.bb-full-cart-page .bb-cart-item__price{font-size:11px}
.bb-full-cart-page .bb-cart-item__remove{top:21px;font-size:18px}
.bb-full-cart-page .bb-cart-profile{margin-top:28px;padding-top:20px;border-top:1px solid var(--bb-line-soft)}
.bb-full-cart-page .bb-cart-footer-grid{gap:64px;margin-top:28px;padding-top:20px;border-top:1px solid var(--bb-line-soft)}
.bb-full-cart-page .bb-cart-card__title{font-size:14px;margin-bottom:10px}
.bb-full-cart-page .bb-cart-summary__row{font-size:14px;padding:5px 0}
.bb-full-cart-page .bb-cart-summary__row--total{font-size:17px;padding-top:11px}
.bb-full-cart-page .bb-cart-summary__note{font-size:10px}
.bb-full-cart-page .bb-cart-actions{padding-top:14px}
.bb-full-cart-page .bb-cart-btn{min-height:40px;font-size:14px;padding:0 17px}
.bb-full-cart-page .bb-cart-empty{padding:72px 0 90px}
.bb-full-cart-page .bb-cart-empty p{font-size:18px;margin:16px 0 20px}

/* Full-page controls also use the plugin reset, not Elementor/theme defaults. */
.bb-full-cart-page.bb-cart-root button,
.bb-full-cart-page.bb-cart-root input,
.bb-full-cart-page.bb-cart-root a.bb-cart-btn{
  box-sizing:border-box;
  font-family:var(--bb-font);
  text-transform:none;
  letter-spacing:0
}

@media(max-width:767px){
  .bb-cart-overlay{background:rgba(245,245,247,0);backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}
  .bb-cart-drawer__header{padding:14px 0 8px;gap:12px}
  .bb-cart-drawer__title{font-size:22px}
  .bb-cart-drawer__meta{font-size:10px}
    .bb-cart-root .bb-cart-close{flex-basis:30px;width:30px;min-width:30px;max-width:30px;height:30px;min-height:30px;max-height:30px;font-size:19px}
  .bb-cart-drawer__body{padding-bottom:20px}
  .bb-cart-item{grid-template-columns:52px minmax(0,1fr);gap:12px;padding:9px 0 13px}
  .bb-cart-item__thumb{width:52px;height:52px;border-radius:9px}
  .bb-cart-item__info{padding-right:23px}
  .bb-cart-item__name,.bb-cart-item__name a{font-size:14px}
  .bb-cart-item__subtotal{font-size:11.5px}
  .bb-cart-item__meta{font-size:9.5px}
  .bb-cart-item__bottom{gap:10px;margin-top:7px}
  .bb-cart-item__remove{top:9px;font-size:16px}
  .bb-cart-profile{margin-top:14px}
  .bb-cart-profile__links{display:grid;grid-template-columns:1fr 1fr;gap:5px 18px}
  .bb-cart-profile__link{min-height:30px}
  .bb-cart-footer-grid{grid-template-columns:1fr;gap:18px;margin-top:10px;padding-top:9px}
  .bb-cart-coupon form{max-width:none}
  .bb-cart-actions{grid-template-columns:1fr 1fr}
  .bb-cart-summary__note{max-width:300px}
  .bb-full-cart-page.bb-cart-root{width:calc(100% - 28px);padding:32px 0 48px}
  .bb-full-cart-page__header{align-items:center;padding-bottom:18px}
  .bb-full-cart-page__title{font-size:30px}
  .bb-full-cart-page__meta{font-size:11px;margin-top:5px}
  .bb-full-cart-page__checkout{min-height:38px;height:38px;padding:0 15px;font-size:11px;line-height:38px}
  .bb-full-cart-page__body{padding-top:14px}
  .bb-full-cart-page .bb-cart-item{grid-template-columns:64px minmax(0,1fr);gap:14px;padding:14px 0 17px}
  .bb-full-cart-page .bb-cart-item__thumb{width:64px;height:64px;border-radius:11px}
  .bb-full-cart-page .bb-cart-item__info{padding-right:24px}
  .bb-full-cart-page .bb-cart-item__name,.bb-full-cart-page .bb-cart-item__name a{font-size:13px}
  .bb-full-cart-page .bb-cart-item__subtotal{font-size:14px}
  .bb-full-cart-page .bb-cart-item__remove{top:15px;font-size:17px}
  .bb-full-cart-page .bb-cart-footer-grid{gap:22px;margin-top:18px;padding-top:16px}
}

@media(max-width:430px){
  .bb-cart-item__top{gap:8px}
  .bb-cart-item__bottom{align-items:flex-start;flex-direction:column}
  .bb-cart-actions{grid-template-columns:1fr}
  .bb-cart-coupon form{flex-direction:column;align-items:stretch}
  .bb-cart-coupon button{width:100%}
}


/* Dark theme support. Works when .theme-dark is on html, body, Elementor wrapper, or any ancestor. */
.theme-dark .bb-cart-root,
.theme-dark.bb-cart-root,
.theme-dark .bb-full-cart-page,
.theme-dark.bb-full-cart-page{
  --bb-ink:#f5f5f7;
  --bb-muted:#a1a1a6;
  --bb-subtle:#86868b;
  --bb-surface:#161617;
  --bb-soft:#242426;
  --bb-line:#424245;
  --bb-line-soft:rgba(255,255,255,.11);
  --bb-blue:#2997ff;
  --bb-blue-hover:#40a9ff;
  color:var(--bb-ink)
}
.theme-dark .bb-cart-trigger,.theme-dark.bb-cart-root .bb-cart-trigger{color:var(--bb-ink)}
.theme-dark .bb-cart-count,.theme-dark.bb-cart-root .bb-cart-count{background:#f5f5f7;color:#1d1d1f;box-shadow:0 0 0 2px #161617}
.theme-dark .bb-cart-overlay,.theme-dark.bb-cart-root .bb-cart-overlay{background:rgba(0,0,0,.38)}
.theme-dark .bb-cart-drawer,.theme-dark.bb-cart-root .bb-cart-drawer{background:#161617;border-bottom-color:rgba(255,255,255,.10);box-shadow:0 18px 44px rgba(0,0,0,.38)}
.theme-dark .bb-cart-root .bb-cart-close,.theme-dark.bb-cart-root .bb-cart-close{background:#2c2c2e;color:#a1a1a6}
.theme-dark .bb-cart-root .bb-cart-close:hover,.theme-dark.bb-cart-root .bb-cart-close:hover{background:#3a3a3c;color:#f5f5f7}
.theme-dark .bb-cart-notices .woocommerce-message,
.theme-dark .bb-cart-notices .woocommerce-error,
.theme-dark .bb-cart-inline-error{background:#242426;color:#f5f5f7}
.theme-dark .bb-cart-item__thumb{background:#242426}
.theme-dark .bb-cart-item__name,
.theme-dark .bb-cart-item__name a,
.theme-dark .bb-cart-item__subtotal,
.theme-dark .bb-cart-summary__row strong,
.theme-dark .bb-cart-summary__row--total span,
.theme-dark .bb-cart-summary__row--total strong{color:#f5f5f7}
.theme-dark .bb-cart-item{border-bottom-color:rgba(255,255,255,.10)}
.theme-dark .bb-cart-item__remove{color:#a1a1a6}
.theme-dark .bb-cart-root .bb-cart-qty,
.theme-dark .bb-cart-root .bb-cart-qty--single{background:#242426;border-color:rgba(255,255,255,.12);box-shadow:none}
.theme-dark .bb-cart-root .bb-cart-qty__btn,
.theme-dark .bb-cart-root .bb-cart-qty__input{background:transparent;color:#f5f5f7}
.theme-dark .bb-cart-root .bb-cart-qty__btn:hover{background:#343437}
.theme-dark .bb-cart-root .bb-cart-coupon input{background:#1d1d1f;border-color:#424245;color:#f5f5f7}
.theme-dark .bb-cart-root .bb-cart-coupon input::placeholder{color:#86868b}
.theme-dark .bb-cart-root .bb-cart-coupon button{background:#f5f5f7;color:#1d1d1f}
.theme-dark .bb-cart-root .bb-cart-coupon .bb-cart-coupon-chip{background:#242426;color:#f5f5f7}
.theme-dark .bb-cart-root .bb-cart-btn--secondary{background:#242426;color:#f5f5f7}
.theme-dark .bb-cart-root .bb-cart-btn--secondary:hover{background:#343437;color:#fff}
.theme-dark .bb-cart-root .bb-cart-btn--primary{background:#2997ff;color:#fff}
.theme-dark .bb-cart-root .bb-cart-btn--primary:hover{background:#40a9ff;color:#fff}
.theme-dark .bb-cart-profile__link{color:#f5f5f7}
.theme-dark .bb-cart-profile__link:hover{color:#2997ff}
.theme-dark .bb-cart-profile__icon{color:#a1a1a6}
.theme-dark .bb-cart-profile__link:hover .bb-cart-profile__icon{color:#2997ff}
.theme-dark .bb-full-cart-page.bb-cart-root,.theme-dark.bb-full-cart-page.bb-cart-root{background:transparent}
.theme-dark .bb-full-cart-page__title{color:#f5f5f7}
.theme-dark .bb-full-cart-page__header,
.theme-dark .bb-full-cart-page .bb-cart-profile,
.theme-dark .bb-full-cart-page .bb-cart-footer-grid{border-color:rgba(255,255,255,.10)}


/* Cart bag SVG color: force exact light/dark values against Elementor/theme inheritance. */
.bb-cart-root .bb-cart-svg,
.bb-full-cart-page .bb-cart-svg{
  color:#1d1d1f;
  fill:currentColor;
}
.theme-dark .bb-cart-root .bb-cart-svg,
.theme-dark.bb-cart-root .bb-cart-svg,
.theme-dark .bb-full-cart-page .bb-cart-svg,
.theme-dark.bb-full-cart-page .bb-cart-svg{
  color:#f5f5f7;
  fill:currentColor;
}
@media(prefers-reduced-motion:reduce){.bb-cart-overlay,.bb-cart-drawer,.bb-cart-btn{transition:none}}

/* v1.8.2 unified 0.5s motion, typography, profile layout, quantity sizing and notices. */
.bb-cart-root,
.bb-full-cart-page{
  font-size:14px;
}

/* One motion language everywhere: 0.5s. The WHOLE sheet moves from above the viewport. */
.bb-cart-root{--bb-motion:.5s;--bb-ease:cubic-bezier(.32,.72,0,1)}
.bb-cart-overlay{
  background:rgba(29,29,31,0);
  opacity:0;
  backdrop-filter:blur(0) saturate(100%);
  -webkit-backdrop-filter:blur(0) saturate(100%);
  transition:opacity var(--bb-motion) var(--bb-ease),visibility var(--bb-motion) linear,background-color var(--bb-motion) var(--bb-ease),backdrop-filter var(--bb-motion) var(--bb-ease),-webkit-backdrop-filter var(--bb-motion) var(--bb-ease);
}
.bb-cart-root.is-open .bb-cart-overlay:not([hidden]){
  background:rgba(29,29,31,.10);
  opacity:1;
  backdrop-filter:blur(18px) saturate(115%);
  -webkit-backdrop-filter:blur(18px) saturate(115%);
}
.bb-cart-drawer{
  transform:translate3d(0,calc(-100% - 44px),0) scale(.99);
  opacity:0;
  clip-path:none;
  transition:transform var(--bb-motion) var(--bb-ease),opacity var(--bb-motion) var(--bb-ease),visibility var(--bb-motion) linear,background-color var(--bb-motion) var(--bb-ease),border-color var(--bb-motion) var(--bb-ease),box-shadow var(--bb-motion) var(--bb-ease),backdrop-filter var(--bb-motion) var(--bb-ease),-webkit-backdrop-filter var(--bb-motion) var(--bb-ease);
}
.bb-cart-root.is-open .bb-cart-drawer{
  transform:translate3d(0,0,0) scale(1);
  opacity:1;
}
@media(max-width:767px){
  .bb-cart-drawer{transform:translate3d(0,calc(-100% - 48px),0) scale(.99)}
  .bb-cart-root.is-open .bb-cart-drawer{transform:translate3d(0,0,0) scale(1)}
}

/* All visible interactive state changes use the same 0.5s duration. */
.bb-cart-root .bb-cart-btn,
.bb-cart-root .bb-cart-close,
.bb-cart-root .bb-cart-qty,
.bb-cart-root .bb-cart-qty__btn,
.bb-cart-root .bb-cart-qty__input,
.bb-cart-root .bb-cart-coupon input,
.bb-cart-root .bb-cart-coupon button,
.bb-cart-root .bb-cart-coupon-chip,
.bb-cart-root .bb-cart-profile__link,
.bb-cart-root .bb-cart-profile__icon,
.bb-cart-root .bb-cart-item__remove,
.bb-cart-root a{
  transition-duration:var(--bb-motion);
  transition-timing-function:var(--bb-ease);
}

/* Strict type scale: 12 / 14 / 17 / 28px only. */
.bb-cart-drawer__title,
.bb-full-cart-page__title{
  font-size:28px;
}
.bb-cart-drawer__meta,
.bb-full-cart-page__meta,
.bb-cart-item__meta,
.bb-cart-item__price,
.bb-cart-summary__note,
.bb-cart-profile__title,
.bb-cart-notices .woocommerce-message,
.bb-cart-notices .woocommerce-error,
.bb-cart-inline-error,
.bb-cart-root .bb-cart-qty__input,
.bb-cart-root .bb-cart-qty--single{
  font-size:14px;
}
.bb-cart-item__name,
.bb-cart-item__name a,
.bb-cart-item__subtotal,
.bb-cart-summary__row,
.bb-cart-card__title,
.bb-cart-profile__link,
.bb-cart-btn,
.bb-cart-root .bb-cart-coupon input,
.bb-cart-root .bb-cart-coupon button,
.bb-cart-root .bb-cart-coupon .bb-cart-coupon-chip,
.bb-cart-empty p,
.bb-full-cart-page__checkout{
  font-size:14px;
}
.bb-cart-summary__row--total,
.bb-cart-root .bb-cart-close,
.bb-cart-item__remove{
  font-size:17px;
}

/* WooCommerce error icon stays inline with its message, including [bb_full_cart]. */
.bb-cart-notices ul.woocommerce-error,
.bb-full-cart-page__notices ul.woocommerce-error{
  display:block;
  margin:4px 0 10px;
  padding:10px 12px;
  list-style:none;
}
.bb-cart-notices ul.woocommerce-error::before,
.bb-cart-notices ul.woocommerce-error::after,
.bb-full-cart-page__notices ul.woocommerce-error::before,
.bb-full-cart-page__notices ul.woocommerce-error::after{
  content:none;
  display:none;
}
.bb-cart-notices ul.woocommerce-error > li,
.bb-full-cart-page__notices ul.woocommerce-error > li{
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
  font-size:14px;
  line-height:1.45;
}
.bb-cart-notices ul.woocommerce-error > li::before,
.bb-full-cart-page__notices ul.woocommerce-error > li::before{
  content:"!";
  position:static;
  inset:auto;
  display:inline-grid;
  place-items:center;
  flex:0 0 17px;
  width:17px;
  height:17px;
  margin:0;
  padding:0;
  border:1px solid currentColor;
  border-radius:50%;
  background:transparent;
  color:currentColor;
  font-family:var(--bb-font);
  font-size:14px;
  font-weight:600;
  line-height:1;
  transform:none;
}

/* Exact compact quantity capsule requested: 24px high. */
.bb-cart-root .bb-cart-qty{
  height:24px;
  min-height:24px;
  max-height:24px;
  border-radius:999px;
}
.bb-cart-root .bb-cart-qty__btn{
  flex:0 0 24px;
  width:24px;
  min-width:24px;
  max-width:24px;
  height:24px;
  min-height:24px;
  max-height:24px;
  padding:0;
  font-size:14px;
  line-height:24px;
}
.bb-cart-root .bb-cart-qty__input{
  flex:0 0 30px;
  width:30px;
  min-width:30px;
  max-width:30px;
  height:24px;
  min-height:24px;
  max-height:24px;
  padding:0;
  font-size:14px;
  line-height:24px;
}
.bb-cart-root .bb-cart-qty--single{
  height:24px;
  min-height:24px;
  max-height:24px;
  padding:0 10px;
  font-size:14px;
  line-height:24px;
}

/* Profile is intentionally below .bb-cart-footer-grid and runs top-to-bottom. */
.bb-cart-profile,
.bb-full-cart-page .bb-cart-profile{
  margin:24px 0 4px;
  padding:18px 0 0;
  border-top:1px solid var(--bb-line-soft);
}
.bb-cart-profile__title{
  margin:0 0 8px;
  font-size:14px;
  line-height:1.4;
}
.bb-cart-profile__links{
  display:flex;
  flex-direction:column;
  flex-wrap:nowrap;
  align-items:flex-start;
  justify-content:flex-start;
  gap:2px;
}
.bb-cart-profile__link{
  display:flex;
  width:100%;
  min-height:34px;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  padding:0;
  font-size:14px;
  line-height:1.3;
}
.bb-cart-profile__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:17px;
  height:17px;
  flex:0 0 17px;
  color:var(--bb-subtle);
}
.bb-cart-profile__icon::before,
.bb-cart-profile__icon::after{
  content:none;
  display:none;
}
.bb-cart-profile__svg{
  display:block;
  width:17px;
  height:17px;
  overflow:visible;
  fill:none;
  stroke:currentColor;
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}

/* Keep Elementor/theme CSS from changing the final typography and dimensions. */
.bb-cart-root button,
.bb-cart-root input,
.bb-cart-root a,
.bb-cart-root span,
.bb-cart-root p,
.bb-cart-root strong,
.bb-cart-root h1{
  font-family:var(--bb-font);
}

@media(max-width:767px){
  .bb-cart-drawer__title,
  .bb-full-cart-page__title{font-size:28px}
  .bb-cart-profile__links{display:flex;grid-template-columns:none;gap:2px}
  .bb-cart-profile__link{min-height:34px;font-size:14px}
  .bb-cart-item__name,.bb-cart-item__name a,.bb-cart-item__subtotal{font-size:14px}
  .bb-cart-item__meta,.bb-cart-item__price{font-size:14px}
  .bb-full-cart-page .bb-cart-item__name,.bb-full-cart-page .bb-cart-item__name a{font-size:14px}
  .bb-full-cart-page .bb-cart-item__subtotal{font-size:14px}
}

.theme-dark .bb-cart-notices ul.woocommerce-error > li::before,
.theme-dark .bb-full-cart-page__notices ul.woocommerce-error > li::before{
  color:#ff9f9a;
  border-color:#ff9f9a;
}

@media(prefers-reduced-motion:reduce){
  .bb-cart-overlay,.bb-cart-drawer,.bb-cart-btn{transition:none}
}

/* Dark-mode overlay target participates in the same 0.5s blur/opacity transition. */
.theme-dark .bb-cart-root.is-open .bb-cart-overlay:not([hidden]),
.theme-dark.bb-cart-root.is-open .bb-cart-overlay:not([hidden]){
  background:rgba(0,0,0,.38);
  backdrop-filter:blur(18px) saturate(110%);
  -webkit-backdrop-filter:blur(18px) saturate(110%);
}

/* v1.8.3 Apple-style layered reveal: surface first, content slides in over it. */
.bb-cart-root{--bb-motion:.5s;--bb-ease:cubic-bezier(.32,.72,0,1)}

/* The drawer itself no longer flies in. It stays fixed while its white surface reveals top-to-bottom. */
.bb-cart-drawer{
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  opacity:1;
  transform:none;
  visibility:visible;
  isolation:isolate;
  overflow:hidden;
  transition:none;
}
.bb-cart-drawer::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:#fff;
  border-bottom:1px solid rgba(0,0,0,.06);
  box-shadow:0 14px 34px rgba(0,0,0,.055);
  clip-path:inset(0 0 100% 0);
  will-change:clip-path;
  transition:
    clip-path var(--bb-motion) var(--bb-ease),
    background-color var(--bb-motion) var(--bb-ease),
    border-color var(--bb-motion) var(--bb-ease),
    box-shadow var(--bb-motion) var(--bb-ease);
}
.bb-cart-root.is-open .bb-cart-drawer::before{
  clip-path:inset(0 0 0 0);
}

/* All information is a separate layer: a short slide/fade reveal, not a moving panel. */
.bb-cart-drawer>.bb-cart-drawer__header,
.bb-cart-drawer>.bb-cart-notices,
.bb-cart-drawer>.bb-cart-drawer__body{
  position:relative;
  z-index:1;
  opacity:0;
  transform:translate3d(0,-14px,0);
  will-change:transform,opacity;
  transition:
    opacity var(--bb-motion) var(--bb-ease),
    transform var(--bb-motion) var(--bb-ease);
}
.bb-cart-root.is-open .bb-cart-drawer>.bb-cart-drawer__header,
.bb-cart-root.is-open .bb-cart-drawer>.bb-cart-notices,
.bb-cart-root.is-open .bb-cart-drawer>.bb-cart-drawer__body{
  opacity:1;
  transform:translate3d(0,0,0);
}

/* Overlay blur/opacity follows the same 0.5s timing. */
.bb-cart-overlay{
  visibility:visible;
  opacity:0;
  background:rgba(29,29,31,0);
  backdrop-filter:blur(0) saturate(100%);
  -webkit-backdrop-filter:blur(0) saturate(100%);
  transition:
    opacity var(--bb-motion) var(--bb-ease),
    background-color var(--bb-motion) var(--bb-ease),
    backdrop-filter var(--bb-motion) var(--bb-ease),
    -webkit-backdrop-filter var(--bb-motion) var(--bb-ease);
}
.bb-cart-root.is-open .bb-cart-overlay:not([hidden]){
  opacity:1;
  background:rgba(29,29,31,.10);
  backdrop-filter:blur(18px) saturate(115%);
  -webkit-backdrop-filter:blur(18px) saturate(115%);
}

/* Keep the surface behavior identical on mobile; only the top offset changes. */
@media(max-width:767px){
  .bb-cart-drawer,
  .bb-cart-root.is-open .bb-cart-drawer{transform:none}
}

/* Dark mode animates the same surface, with a dark sheet instead of white. */
.theme-dark .bb-cart-drawer,
.theme-dark.bb-cart-root .bb-cart-drawer{
  background:transparent;
  border:0;
  box-shadow:none;
}
.theme-dark .bb-cart-drawer::before,
.theme-dark.bb-cart-root .bb-cart-drawer::before{
  background:#161617;
  border-bottom-color:rgba(255,255,255,.10);
  box-shadow:0 18px 44px rgba(0,0,0,.38);
}
.theme-dark .bb-cart-root.is-open .bb-cart-overlay:not([hidden]),
.theme-dark.bb-cart-root.is-open .bb-cart-overlay:not([hidden]){
  background:rgba(0,0,0,.38);
  backdrop-filter:blur(18px) saturate(110%);
  -webkit-backdrop-filter:blur(18px) saturate(110%);
}

@media(prefers-reduced-motion:reduce){
  .bb-cart-drawer::before,
  .bb-cart-drawer>.bb-cart-drawer__header,
  .bb-cart-drawer>.bb-cart-notices,
  .bb-cart-drawer>.bb-cart-drawer__body,
  .bb-cart-overlay{transition:none}
}

/* ========================================================================
   v2.0.0 - Shared WordPress header trigger + single Apple-style live flyout
   ======================================================================== */
.bb-cart-shortcode{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  height:44px;
  margin:0;
  padding:0;
  line-height:0;
  vertical-align:middle
}
.bb-cart-shortcode [data-bb-cart-open],
#globalnav .bb-cart-shortcode [data-bb-cart-open]{
  appearance:none;
  -webkit-appearance:none;
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:30px;
  min-width:30px;
  max-width:30px;
  height:44px;
  min-height:44px;
  max-height:44px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:#1d1d1f;
  cursor:pointer;
  line-height:0;
  overflow:visible;
  text-decoration:none;
  -webkit-tap-highlight-color:transparent
}
.bb-cart-shortcode [data-bb-cart-open]:hover,
#globalnav .bb-cart-shortcode [data-bb-cart-open]:hover{color:#000}
.bb-cart-shortcode [data-bb-cart-open]:focus-visible,
#globalnav .bb-cart-shortcode [data-bb-cart-open]:focus-visible{
  outline:2px solid var(--sk-focus-color,#0071e3);
  outline-offset:-5px
}
.bb-cart-shortcode .bb-cart-icon,
#globalnav .bb-cart-shortcode .bb-cart-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:44px;
  margin:0;
  padding:0;
  color:inherit;
  line-height:0
}
.bb-cart-shortcode .bb-cart-svg,
#globalnav .bb-cart-shortcode .bb-cart-svg{
  display:block;
  width:30px;
  height:44px;
  max-width:none;
  margin:0;
  padding:0;
  fill:currentColor;
  color:inherit
}
.bb-cart-shortcode .bb-cart-count,
#globalnav .bb-cart-shortcode .bb-cart-count{
  position:absolute;
  z-index:3;
  top:22px;
  right:-3px;
  bottom:auto;
  left:auto;
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:auto;
  min-width:15px;
  max-width:none;
  height:15px;
  min-height:15px;
  padding:0 4px;
  border:0;
  border-radius:999px;
  background:#1d1d1f;
  color:#fff;
  box-shadow:0 0 0 2px #fafafc;
  font-family:var(--bb-font-text);
  font-size:10px;
  font-weight:500;
  line-height:15px;
  letter-spacing:0;
  text-align:center;
  transform:none
}
.bb-cart-shortcode .bb-cart-count[hidden]{display:none}
.bb-cart-shortcode .bb-cart-label{margin-left:7px;line-height:1.2}

/* Match the Apple global-nav opened surface rather than creating a second card. */
.bb-cart-global-root{--bb-motion:.32s;--bb-ease:cubic-bezier(.4,0,.6,1)}
.bb-cart-global-root .bb-cart-drawer::before{
  background:#fafafc;
  border-bottom:1px solid rgba(0,0,0,.06);
  box-shadow:none;
  transition:clip-path var(--bb-motion) var(--bb-ease),background-color var(--bb-motion) var(--bb-ease),border-color var(--bb-motion) var(--bb-ease)
}
.bb-cart-global-root .bb-cart-overlay{
  inset:44px 0 0;
  background:rgba(232,232,237,0);
  backdrop-filter:blur(0);
  -webkit-backdrop-filter:blur(0);
  transition:opacity var(--bb-motion) var(--bb-ease),background-color var(--bb-motion) var(--bb-ease),backdrop-filter var(--bb-motion) var(--bb-ease),-webkit-backdrop-filter var(--bb-motion) var(--bb-ease)
}
.bb-cart-global-root.is-open .bb-cart-overlay:not([hidden]){
  opacity:1;
  background:rgba(232,232,237,.40);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px)
}
.bb-cart-global-root .bb-cart-drawer{
  top:44px;
  max-height:calc(100vh - 44px);
  max-height:calc(100dvh - 44px)
}
.bb-cart-global-root .bb-cart-drawer__header,
.bb-cart-global-root .bb-cart-drawer__body,
.bb-cart-global-root .bb-cart-notices{
  box-sizing:border-box;
  width:100%;
  max-width:1024px;
  margin-left:auto;
  margin-right:auto;
  padding-left:22px;
  padding-right:22px
}
.bb-cart-global-root .bb-cart-drawer__header{
  padding-top:32px;
  padding-bottom:10px
}
.bb-cart-global-root .bb-cart-drawer__body{
  padding-top:0;
  padding-bottom:64px;
  scrollbar-gutter:stable both-edges
}
.bb-cart-global-root .bb-cart-notices{padding-top:0;padding-bottom:0}
.bb-cart-global-root .bb-cart-drawer__title{font-size:24px;line-height:1.16667;font-weight:600;letter-spacing:.009em}
.bb-cart-global-root .bb-cart-drawer__meta{font-size:14px;line-height:1.33337}

/* Header dark-state compatibility, including copied Apple global-nav classes. */
.theme-dark .bb-cart-shortcode [data-bb-cart-open],
.globalheader-dark .bb-cart-shortcode [data-bb-cart-open],
#globalnav.globalnav-dark .bb-cart-shortcode [data-bb-cart-open]{color:#f5f5f7}
.theme-dark .bb-cart-shortcode [data-bb-cart-open]:hover,
.globalheader-dark .bb-cart-shortcode [data-bb-cart-open]:hover,
#globalnav.globalnav-dark .bb-cart-shortcode [data-bb-cart-open]:hover{color:#fff}
.theme-dark .bb-cart-shortcode .bb-cart-count,
.globalheader-dark .bb-cart-shortcode .bb-cart-count,
#globalnav.globalnav-dark .bb-cart-shortcode .bb-cart-count{
  background:#f5f5f7;
  color:#1d1d1f;
  box-shadow:0 0 0 2px #161617
}
.theme-dark .bb-cart-global-root .bb-cart-drawer::before,
.theme-dark.bb-cart-global-root .bb-cart-drawer::before{
  background:#161617;
  border-bottom-color:rgba(255,255,255,.10);
  box-shadow:none
}
.theme-dark .bb-cart-global-root.is-open .bb-cart-overlay:not([hidden]),
.theme-dark.bb-cart-global-root.is-open .bb-cart-overlay:not([hidden]){
  background:rgba(0,0,0,.40);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px)
}

@media(max-width:833px){
  .bb-cart-shortcode{height:48px}
  .bb-cart-shortcode [data-bb-cart-open],
  #globalnav .bb-cart-shortcode [data-bb-cart-open],
  .bb-cart-shortcode .bb-cart-icon,
  #globalnav .bb-cart-shortcode .bb-cart-icon{
    height:48px;
    min-height:48px;
    max-height:48px
  }
  .bb-cart-shortcode .bb-cart-count,
  #globalnav .bb-cart-shortcode .bb-cart-count{top:25px;right:-2px}
  .bb-cart-global-root .bb-cart-overlay{inset:48px 0 0}
  .bb-cart-global-root .bb-cart-drawer{
    top:48px;
    max-height:calc(100vh - 48px);
    max-height:calc(100dvh - 48px)
  }
  .bb-cart-global-root .bb-cart-drawer__header,
  .bb-cart-global-root .bb-cart-drawer__body,
  .bb-cart-global-root .bb-cart-notices{
    width:100%;
    max-width:none;
    padding-left:24px;
    padding-right:24px
  }
  .bb-cart-global-root .bb-cart-drawer__header{padding-top:26px}
  .bb-cart-global-root .bb-cart-drawer__body{padding-bottom:48px}
}

@media(prefers-reduced-motion:reduce){
  .bb-cart-global-root .bb-cart-drawer::before,
  .bb-cart-global-root .bb-cart-drawer>.bb-cart-drawer__header,
  .bb-cart-global-root .bb-cart-drawer>.bb-cart-notices,
  .bb-cart-global-root .bb-cart-drawer>.bb-cart-drawer__body,
  .bb-cart-global-root .bb-cart-overlay{transition:none}
}
.bb-cart-shortcode .bb-cart-trigger--with-label,
#globalnav .bb-cart-shortcode .bb-cart-trigger--with-label{
  width:auto;
  min-width:30px;
  max-width:none;
  gap:7px
}

/* v2.0.6: exact native-Apple empty Bag integration. */
#globalnav-submenu-bag.bb-wc-bag-data-ready .ac-gn-loading-indicator{display:none}
#globalnav-submenu-bag .bb-cart-empty-apple{width:100%;min-width:0}
#globalnav-submenu-bag .bb-cart-empty-apple svg{display:block}
/* No standalone empty-cart illustration is rendered in v2.0.6. Profile glyphs remain
   because they are part of Apple's My Profile design/reference. */
.bb-full-cart-page .bb-cart-empty-apple{padding:48px 0 72px;color:var(--bb-ink)}
.bb-full-cart-page .bb-cart-empty-apple .ac-bag-flyout-content-left{padding-bottom:24px}
.bb-full-cart-page .bb-cart-empty-apple .ac-gn-bagview-header{margin:0;font-size:24px;line-height:1.2;font-weight:600}
.bb-full-cart-page .bb-cart-empty-apple .ac-gn-bagview-subheader{margin-top:8px;color:var(--bb-muted);font-size:14px}
.bb-full-cart-page .bb-cart-empty-apple .ac-gn-bagview-subheader a{color:var(--bb-blue);text-decoration:none}
.bb-full-cart-page .bb-cart-empty-apple .ac-gn-bagview-nav-item-wrapper{margin-top:20px;padding-top:20px;border-top:1px solid var(--bb-line-soft)}
.bb-full-cart-page .bb-cart-empty-apple .ac-gn-bagview-nav-item-wrapper ul{list-style:none;margin:8px 0 0;padding:0}
.bb-full-cart-page .bb-cart-empty-apple .ac-gn-bagview-nav-item{margin:0}
.bb-full-cart-page .bb-cart-empty-apple .ac-gn-bagview-nav-link{display:flex;align-items:center;gap:9px;padding:7px 0;color:inherit;text-decoration:none}
.bb-full-cart-page .bb-cart-empty-apple .ac-gn-bagview-nav-image-container{width:18px;display:flex;justify-content:center;color:var(--bb-muted)}
.bb-full-cart-page .bb-cart-empty-apple .ac-gn-bagview-nav-image-compact{display:none}

/* Keep Apple's native Search/Bag geometry untouched. BB Cart does not set
   Bag padding, link transforms, fixed slot widths, or badge coordinates. */


/* v2.0.11: [bb_full_cart] — full Apple Bag page proportions.
   IMPORTANT: scoped to .bb-full-cart-page only. Header Bag/flyout styles and JS are untouched. */
.bb-full-cart-page.bb-cart-root{
  box-sizing:border-box;
  width:980px;
  max-width:calc(100% - 44px);
  margin:0 auto;
  padding:50px 0 100px;
  background:transparent;
  color:var(--bb-ink);
  font-family:var(--bb-font);
  font-size:17px;
  line-height:1.4705882353;
}

/* Apple Bag page header: large centered heading + checkout CTA, then keyline. */
.bb-full-cart-page__header{
  box-sizing:border-box;
  display:block;
  margin:0;
  padding:10px 0 60px;
  border:0;
  border-bottom:1px solid var(--bb-line);
  text-align:center;
}
.bb-full-cart-page__header>div{display:block;width:100%}
.bb-full-cart-page__title{
  margin:0;
  padding:0 0 2px;
  color:var(--bb-ink);
  font-family:var(--bb-font-text);
  font-size:40px;
  font-weight:600;
  letter-spacing:0;
  line-height:1.1;
  text-align:center;
}
.bb-full-cart-page__meta{
  margin:13px 0 0;
  padding:0;
  color:var(--bb-muted);
  font-family:var(--bb-font-text);
  font-size:17px;
  font-weight:400;
  letter-spacing:-.022em;
  line-height:1.4705882353;
  text-align:center;
}
.bb-full-cart-page__checkout{
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:290px;
  max-width:100%;
  height:44px;
  min-height:44px;
  margin:31px auto 0;
  padding:0 22px;
  border:0;
  border-radius:980px;
  font-family:var(--bb-font-text);
  font-size:17px;
  font-weight:400;
  letter-spacing:-.022em;
  line-height:44px;
}
.bb-full-cart-page__notices{
  box-sizing:border-box;
  width:100%;
  margin:0;
  padding:24px 0 0;
}
.bb-full-cart-page__body{
  box-sizing:border-box;
  width:100%;
  margin:0;
  padding:0;
  overflow:visible;
}

/* Product rows: Apple uses a large product visual, 24px product/price type,
   and generous 78px/72px vertical rhythm separated by #d2d2d7 keylines. */
.bb-full-cart-page .bb-cart-items{
  display:flex;
  flex-direction:column;
  width:100%;
  margin:0;
  padding:0;
}
.bb-full-cart-page .bb-cart-item,
.bb-full-cart-page .bb-cart-item:last-child{
  box-sizing:border-box;
  position:relative;
  display:grid;
  grid-template-columns:203px minmax(0,1fr);
  gap:36px;
  align-items:start;
  width:100%;
  margin:0;
  padding:78px 0 72px;
  border:0;
  border-bottom:1px solid var(--bb-line);
  background:transparent;
}
.bb-full-cart-page .bb-cart-item__thumb{
  box-sizing:border-box;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  width:203px;
  height:203px;
  margin:2px 0 0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  overflow:visible;
}
.bb-full-cart-page .bb-cart-item__thumb img{
  display:block;
  float:none;
  width:auto;
  height:auto;
  max-width:203px;
  max-height:203px;
  margin:0 auto;
  object-fit:contain;
}
.bb-full-cart-page .bb-cart-item__info{
  box-sizing:border-box;
  min-width:0;
  width:100%;
  margin:0;
  padding:0 34px 0 0;
}
.bb-full-cart-page .bb-cart-item__top{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(170px,36%);
  gap:24px;
  align-items:start;
  width:100%;
  margin:0;
}
.bb-full-cart-page .bb-cart-item__name,
.bb-full-cart-page .bb-cart-item__name a,
.bb-full-cart-page .bb-cart-item__subtotal{
  color:var(--bb-ink);
  font-family:var(--bb-font-text);
  font-size:24px;
  font-weight:600;
  letter-spacing:.009em;
  line-height:1.1666666667;
}
.bb-full-cart-page .bb-cart-item__name a{
  display:inline;
  text-decoration:none;
  overflow-wrap:break-word;
}
.bb-full-cart-page .bb-cart-item__name a:hover{
  color:var(--bb-blue);
  text-decoration:none;
}
.bb-full-cart-page .bb-cart-item__subtotal{
  padding-inline-start:.5882352941rem;
  text-align:end;
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
.bb-full-cart-page .bb-cart-item__meta{
  max-width:620px;
  margin:14px 0 0;
  padding:0;
  color:var(--bb-muted);
  font-family:var(--bb-font-text);
  font-size:14px;
  font-weight:400;
  letter-spacing:-.016em;
  line-height:1.4285914286;
}
.bb-full-cart-page .bb-cart-item__meta dl,
.bb-full-cart-page .bb-cart-item__meta p{margin:0}
.bb-full-cart-page .bb-cart-item__bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  width:100%;
  margin:28px 0 0;
  padding:0;
  flex-wrap:wrap;
}
.bb-full-cart-page .bb-cart-item__price{
  color:var(--bb-muted);
  font-family:var(--bb-font-text);
  font-size:14px;
  font-weight:400;
  letter-spacing:-.016em;
  line-height:1.4285914286;
  font-variant-numeric:tabular-nums;
}
.bb-full-cart-page .bb-cart-item__price span{color:var(--bb-muted)}
.bb-full-cart-page .bb-cart-item__remove{
  position:absolute;
  top:78px;
  right:0;
  z-index:2;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  margin:0;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  color:var(--bb-blue);
  font-family:var(--bb-font-text);
  font-size:21px;
  font-weight:400;
  line-height:28px;
  text-align:center;
  text-decoration:none;
}
.bb-full-cart-page .bb-cart-item__remove:hover{color:var(--bb-blue-hover);text-decoration:none}

/* Keep the user's existing − / input / + DOM exactly; only make it a full-page Apple control. */
.bb-full-cart-page.bb-cart-root .bb-cart-qty{
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:auto;
  height:42px;
  min-height:42px;
  max-height:42px;
  margin:0;
  padding:0;
  border:1px solid #86868b;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
  box-shadow:none;
}
.bb-full-cart-page.bb-cart-root .bb-cart-qty__btn{
  appearance:none;
  -webkit-appearance:none;
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 40px;
  width:40px;
  min-width:40px;
  max-width:40px;
  height:40px;
  min-height:40px;
  max-height:40px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#06c;
  box-shadow:none;
  font-family:var(--bb-font-text);
  font-size:19px;
  font-weight:400;
  line-height:40px;
  text-align:center;
  cursor:pointer;
}
.bb-full-cart-page.bb-cart-root .bb-cart-qty__btn:hover,
.bb-full-cart-page.bb-cart-root .bb-cart-qty__btn:focus{
  background:#f5f5f7;
  color:#06c;
}
.bb-full-cart-page.bb-cart-root .bb-cart-qty__input{
  appearance:textfield;
  -moz-appearance:textfield;
  box-sizing:border-box;
  display:block;
  flex:0 0 46px;
  width:46px;
  min-width:46px;
  max-width:46px;
  height:40px;
  min-height:40px;
  max-height:40px;
  margin:0;
  padding:0;
  border:0;
  border-left:1px solid #d2d2d7;
  border-right:1px solid #d2d2d7;
  border-radius:0;
  background:transparent;
  color:var(--bb-ink);
  box-shadow:none;
  outline:0;
  font-family:var(--bb-font-text);
  font-size:17px;
  font-weight:600;
  line-height:40px;
  letter-spacing:-.022em;
  text-align:center;
  font-variant-numeric:tabular-nums;
}
.bb-full-cart-page.bb-cart-root .bb-cart-qty__input::-webkit-outer-spin-button,
.bb-full-cart-page.bb-cart-root .bb-cart-qty__input::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none;margin:0}
.bb-full-cart-page.bb-cart-root .bb-cart-qty--single{
  height:42px;
  min-height:42px;
  max-height:42px;
  padding:0 16px;
  border:1px solid #86868b;
  border-radius:12px;
  background:#fff;
  color:var(--bb-ink);
  font-size:17px;
  font-weight:600;
  line-height:40px;
}

/* Coupon + order calculation area: no compact cards; use Apple's clean column rhythm. */
.bb-full-cart-page .bb-cart-footer-grid{
  box-sizing:border-box;
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:80px;
  align-items:start;
  width:100%;
  margin:0;
  padding:48px 0 0;
  border:0;
}
.bb-full-cart-page .bb-cart-card{
  box-sizing:border-box;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.bb-full-cart-page .bb-cart-card__title{
  margin:0 0 14px;
  padding:0;
  color:var(--bb-ink);
  font-family:var(--bb-font-text);
  font-size:17px;
  font-weight:600;
  letter-spacing:-.022em;
  line-height:1.2353641176;
}
.bb-full-cart-page .bb-cart-coupon{margin:0;padding:0;border:0}
.bb-full-cart-page .bb-cart-coupon form{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  max-width:460px;
  margin:0;
}
.bb-full-cart-page.bb-cart-root .bb-cart-coupon input{
  box-sizing:border-box;
  flex:1 1 auto;
  min-width:0;
  height:44px;
  min-height:44px;
  margin:0;
  padding:0 15px;
  border:1px solid #86868b;
  border-radius:12px;
  background:#fff;
  color:var(--bb-ink);
  font-family:var(--bb-font-text);
  font-size:17px;
  font-weight:400;
  letter-spacing:-.022em;
  line-height:42px;
}
.bb-full-cart-page.bb-cart-root .bb-cart-coupon button{
  box-sizing:border-box;
  flex:0 0 auto;
  height:44px;
  min-height:44px;
  margin:0;
  padding:0 20px;
  border:0;
  border-radius:980px;
  background:var(--bb-ink);
  color:#fff;
  font-family:var(--bb-font-text);
  font-size:17px;
  font-weight:400;
  letter-spacing:-.022em;
  line-height:44px;
}
.bb-full-cart-page .bb-cart-coupon-list{margin-top:12px}
.bb-full-cart-page.bb-cart-root .bb-cart-coupon .bb-cart-coupon-chip{
  min-height:32px;
  height:32px;
  padding:0 12px;
  font-size:14px;
  line-height:32px;
}
.bb-full-cart-page .bb-cart-summary{width:100%;margin:0;padding:0}
.bb-full-cart-page .bb-cart-summary__row{
  box-sizing:border-box;
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:20px;
  width:100%;
  margin:0;
  padding:4px 0;
  color:var(--bb-ink);
  font-family:var(--bb-font-text);
  font-size:17px;
  font-weight:400;
  letter-spacing:-.022em;
  line-height:1.4705882353;
}
.bb-full-cart-page .bb-cart-summary__row span{color:var(--bb-ink)}
.bb-full-cart-page .bb-cart-summary__row strong{
  color:var(--bb-ink);
  font-weight:400;
  text-align:end;
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
.bb-full-cart-page .bb-cart-summary__row--total{
  margin-top:16px;
  padding-top:19px;
  border-top:1px solid var(--bb-line);
  font-family:var(--bb-font-text);
  font-size:24px;
  font-weight:600;
  letter-spacing:.009em;
  line-height:1.1666666667;
}
.bb-full-cart-page .bb-cart-summary__row--total span,
.bb-full-cart-page .bb-cart-summary__row--total strong{font-weight:600}
.bb-full-cart-page .bb-cart-summary__note{
  max-width:360px;
  margin:15px 0 0;
  padding:0;
  color:var(--bb-muted);
  font-family:var(--bb-font-text);
  font-size:14px;
  font-weight:400;
  letter-spacing:-.016em;
  line-height:1.4285914286;
  text-align:start;
}
.bb-full-cart-page .bb-cart-actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:14px;
  width:360px;
  max-width:100%;
  margin:0 0 0 auto;
  padding:35px 0 0;
}
.bb-full-cart-page .bb-cart-btn{
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:44px;
  height:44px;
  margin:0;
  padding:0 22px;
  border:0;
  border-radius:980px;
  font-family:var(--bb-font-text);
  font-size:17px;
  font-weight:400;
  letter-spacing:-.022em;
  line-height:44px;
  text-decoration:none;
}

/* Profile links remain functionally identical, but breathe like a full Apple account section. */
.bb-full-cart-page .bb-cart-profile{
  box-sizing:border-box;
  width:100%;
  margin:64px 0 0;
  padding:32px 0 0;
  border:0;
  border-top:1px solid var(--bb-line);
}
.bb-full-cart-page .bb-cart-profile__title{
  margin:0 0 14px;
  color:var(--bb-muted);
  font-family:var(--bb-font-text);
  font-size:14px;
  font-weight:400;
  letter-spacing:-.016em;
  line-height:1.4285914286;
}
.bb-full-cart-page .bb-cart-profile__links{gap:10px 28px}
.bb-full-cart-page .bb-cart-profile__link{
  min-height:32px;
  font-family:var(--bb-font-text);
  font-size:17px;
  font-weight:400;
  letter-spacing:-.022em;
  line-height:1.4705882353;
}
.bb-full-cart-page .bb-cart-profile__icon{width:17px;height:17px;flex-basis:17px}

/* Empty state keeps its existing content/logic; only give the full-page version Apple spacing. */
.bb-full-cart-page .bb-cart-empty{padding:78px 0 92px}
.bb-full-cart-page .bb-cart-empty p{
  margin:16px 0 24px;
  font-family:var(--bb-font-text);
  font-size:24px;
  font-weight:600;
  line-height:1.1666666667;
}

/* Dark mode: the full page keeps the same geometry and only swaps surfaces/keylines. */
.theme-dark .bb-full-cart-page.bb-cart-root,
.theme-dark.bb-full-cart-page.bb-cart-root{background:transparent}
.theme-dark .bb-full-cart-page .bb-cart-item,
.theme-dark .bb-full-cart-page .bb-cart-item:last-child,
.theme-dark .bb-full-cart-page__header,
.theme-dark .bb-full-cart-page .bb-cart-profile,
.theme-dark .bb-full-cart-page .bb-cart-summary__row--total{border-color:#424245}
.theme-dark .bb-full-cart-page.bb-cart-root .bb-cart-qty,
.theme-dark .bb-full-cart-page.bb-cart-root .bb-cart-qty--single,
.theme-dark .bb-full-cart-page.bb-cart-root .bb-cart-coupon input{background:#1d1d1f;border-color:#6e6e73}
.theme-dark .bb-full-cart-page.bb-cart-root .bb-cart-qty__input{border-color:#424245;color:#f5f5f7}
.theme-dark .bb-full-cart-page.bb-cart-root .bb-cart-qty__btn:hover{background:#2c2c2e}

/* Apple Bag responsive scale: 87.5% page width, 28px heading, 21px item/total type. */
@media(max-width:736px){
  .bb-full-cart-page.bb-cart-root{
    width:87.5%;
    max-width:420px;
    padding:58px 0 80px;
  }
  .bb-full-cart-page__header{
    padding:0 0 55px;
  }
  .bb-full-cart-page__title{
    padding-bottom:4px;
    font-size:28px;
    font-weight:600;
    letter-spacing:.007em;
    line-height:1.1428571429;
  }
  .bb-full-cart-page__meta{
    margin-top:8px;
    font-size:14px;
    letter-spacing:-.016em;
    line-height:1.4285914286;
  }
  .bb-full-cart-page__checkout{
    width:100%;
    margin-top:25px;
  }
  .bb-full-cart-page__notices{padding-top:20px}
  .bb-full-cart-page .bb-cart-item,
  .bb-full-cart-page .bb-cart-item:last-child{
    grid-template-columns:1fr;
    gap:0;
    padding:55px 0;
  }
  .bb-full-cart-page .bb-cart-item__thumb{
    width:100%;
    height:auto;
    margin:0 0 41px;
  }
  .bb-full-cart-page .bb-cart-item__thumb img{
    max-width:203px;
    max-height:203px;
  }
  .bb-full-cart-page .bb-cart-item__info{padding:0 30px 0 0}
  .bb-full-cart-page .bb-cart-item__top{
    grid-template-columns:minmax(0,1fr) auto;
    gap:14px;
  }
  .bb-full-cart-page .bb-cart-item__name,
  .bb-full-cart-page .bb-cart-item__name a,
  .bb-full-cart-page .bb-cart-item__subtotal{
    font-size:21px;
    font-weight:600;
    letter-spacing:.011em;
    line-height:1.1904761905;
  }
  .bb-full-cart-page .bb-cart-item__subtotal{padding-inline-start:0}
  .bb-full-cart-page .bb-cart-item__meta{margin-top:12px;font-size:14px}
  .bb-full-cart-page .bb-cart-item__bottom{
    align-items:flex-start;
    margin-top:24px;
  }
  .bb-full-cart-page .bb-cart-item__price{font-size:14px;line-height:1.3333733333}
  .bb-full-cart-page .bb-cart-item__remove{top:55px;right:0}
  .bb-full-cart-page.bb-cart-root .bb-cart-qty{height:40px;min-height:40px;max-height:40px}
  .bb-full-cart-page.bb-cart-root .bb-cart-qty__btn{width:38px;min-width:38px;max-width:38px;height:38px;min-height:38px;max-height:38px;line-height:38px}
  .bb-full-cart-page.bb-cart-root .bb-cart-qty__input{width:42px;min-width:42px;max-width:42px;height:38px;min-height:38px;max-height:38px;font-size:17px;line-height:38px}
  .bb-full-cart-page .bb-cart-footer-grid{
    grid-template-columns:1fr;
    gap:48px;
    padding-top:40px;
  }
  .bb-full-cart-page .bb-cart-coupon form{max-width:none}
  .bb-full-cart-page.bb-cart-root .bb-cart-coupon input,
  .bb-full-cart-page.bb-cart-root .bb-cart-coupon button{font-size:17px}
  .bb-full-cart-page .bb-cart-summary__row{font-size:17px}
  .bb-full-cart-page .bb-cart-summary__row--total{
    margin-top:13px;
    padding-top:20px;
    font-size:21px;
    letter-spacing:.011em;
    line-height:1.1904761905;
  }
  .bb-full-cart-page .bb-cart-summary__note{font-size:14px}
  .bb-full-cart-page .bb-cart-actions{width:100%;margin:0;padding-top:34px}
  .bb-full-cart-page .bb-cart-profile{margin-top:55px;padding-top:28px}
  .bb-full-cart-page .bb-cart-profile__links{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
  .bb-full-cart-page .bb-cart-profile__link{width:100%;font-size:17px}
}

@media(max-width:430px){
  .bb-full-cart-page .bb-cart-item__top{
    grid-template-columns:1fr;
    gap:8px;
  }
  .bb-full-cart-page .bb-cart-item__subtotal{text-align:start;white-space:normal}
  .bb-full-cart-page .bb-cart-item__bottom{flex-direction:column;gap:16px}
  .bb-full-cart-page .bb-cart-coupon form{flex-direction:column;align-items:stretch}
  .bb-full-cart-page.bb-cart-root .bb-cart-coupon button{width:100%}
}


/* v2.0.12: full-cart total heading + Apple-style related product recommendations.
   Scoped to [bb_full_cart]; header Bag/flyout remains untouched. */
.bb-full-cart-page__title-total{
  display:inline;
  color:inherit;
  white-space:nowrap;
}
.bb-full-cart-page__title-total .woocommerce-Price-amount,
.bb-full-cart-page__title-total .woocommerce-Price-currencySymbol{
  color:inherit;
  font:inherit;
}
.bb-full-cart-page .bb-cart-recommendations{
  box-sizing:border-box;
  width:100%;
  margin:78px 0 0;
  padding:72px 0 0;
  border-top:1px solid var(--bb-line);
}
.bb-full-cart-page .bb-cart-recommendations__title{
  margin:0 0 40px;
  padding:0;
  color:var(--bb-ink);
  font-family:var(--bb-font-text);
  font-size:32px;
  font-weight:600;
  letter-spacing:.004em;
  line-height:1.125;
  text-align:center;
}
.bb-full-cart-page .bb-cart-recommendations__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  width:100%;
  margin:0;
  padding:0;
}
.bb-full-cart-page .bb-cart-recommendation{
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:100%;
  margin:0;
  padding:30px 24px 24px;
  border:0;
  border-radius:18px;
  background:#f5f5f7;
  box-shadow:none;
  text-align:start;
}
.bb-full-cart-page .bb-cart-recommendation__image{
  display:flex;
  align-items:center;
  justify-content:center;
  width:200px;
  max-width:100%;
  height:200px;
  margin:0 auto 22px;
  padding:0;
  text-decoration:none;
}
.bb-full-cart-page .bb-cart-recommendation__image img{
  display:block;
  width:auto;
  height:auto;
  max-width:200px;
  max-height:200px;
  margin:auto;
  object-fit:contain;
}
.bb-full-cart-page .bb-cart-recommendation__info{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  width:100%;
  min-height:96px;
  margin:0;
  padding:0;
}
.bb-full-cart-page .bb-cart-recommendation__title{
  margin:0;
  padding:0;
  font-family:var(--bb-font-text);
  font-size:17px;
  font-weight:600;
  letter-spacing:-.022em;
  line-height:1.2353641176;
}
.bb-full-cart-page .bb-cart-recommendation__title a{
  color:var(--bb-ink);
  text-decoration:none;
  overflow-wrap:anywhere;
}
.bb-full-cart-page .bb-cart-recommendation__title a:hover{
  color:var(--bb-blue);
  text-decoration:none;
}
.bb-full-cart-page .bb-cart-recommendation__price{
  margin:10px 0 0;
  padding:0;
  color:var(--bb-ink);
  font-family:var(--bb-font-text);
  font-size:17px;
  font-weight:400;
  letter-spacing:-.022em;
  line-height:1.4705882353;
  font-variant-numeric:tabular-nums;
}
.bb-full-cart-page .bb-cart-recommendation__price del{color:var(--bb-muted)}
.bb-full-cart-page .bb-cart-recommendation__price ins{text-decoration:none}
.bb-full-cart-page .bb-cart-recommendation__add{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-width:0;
  height:44px;
  min-height:44px;
  margin:24px 0 0;
  padding:0 18px;
  border:0;
  border-radius:12px;
  background:#0071e3;
  color:#fff;
  cursor:pointer;
  font-family:var(--bb-font-text);
  font-size:17px;
  font-weight:400;
  letter-spacing:-.022em;
  line-height:1;
  text-align:center;
  text-decoration:none;
  transition:background-color .15s ease,opacity .15s ease,transform .15s ease;
}
.bb-full-cart-page .bb-cart-recommendation__add:hover{background:#0077ed}
.bb-full-cart-page .bb-cart-recommendation__add:active{transform:scale(.985)}
.bb-full-cart-page .bb-cart-recommendation__add:disabled,
.bb-full-cart-page .bb-cart-recommendation__add.is-loading{
  cursor:default;
  opacity:.58;
  transform:none;
}

@media(max-width:833px){
  .bb-full-cart-page .bb-cart-recommendations{
    margin-top:55px;
    padding-top:52px;
  }
  .bb-full-cart-page .bb-cart-recommendations__title{
    margin-bottom:30px;
    font-size:28px;
    line-height:1.1428571429;
  }
  .bb-full-cart-page .bb-cart-recommendations__grid{
    grid-template-columns:1fr;
    gap:16px;
  }
  .bb-full-cart-page .bb-cart-recommendation{
    padding:26px 20px 20px;
  }
  .bb-full-cart-page .bb-cart-recommendation__image{
    width:180px;
    height:180px;
    margin-bottom:18px;
  }
  .bb-full-cart-page .bb-cart-recommendation__image img{
    max-width:180px;
    max-height:180px;
  }
  .bb-full-cart-page .bb-cart-recommendation__info{min-height:0}
  .bb-full-cart-page .bb-cart-recommendation__title,
  .bb-full-cart-page .bb-cart-recommendation__price,
  .bb-full-cart-page .bb-cart-recommendation__add{font-size:17px}
}

.theme-dark .bb-full-cart-page .bb-cart-recommendation,
.theme-dark.bb-full-cart-page .bb-cart-recommendation{
  background:#1d1d1f;
}
.theme-dark .bb-full-cart-page .bb-cart-recommendation__title a,
.theme-dark .bb-full-cart-page .bb-cart-recommendation__price,
.theme-dark.bb-full-cart-page .bb-cart-recommendation__title a,
.theme-dark.bb-full-cart-page .bb-cart-recommendation__price{
  color:#f5f5f7;
}

/* v2.0.13: Apple-sized My Profile rows in the global Bag flyout.
   Full-cart recommendations/layout are unchanged. */
#globalnav-submenu-bag .bb-cart-profile{
  box-sizing:border-box;
  width:auto;
  margin:0;
  padding:0;
  border:0;
  color:#333336;
  font-family:var(--bb-font-text);
}
#globalnav-submenu-bag .bb-cart-profile__title{
  box-sizing:border-box;
  margin:36px 0 0;
  padding:0 0 6px;
  color:#6e6e73;
  font-family:var(--bb-font-text);
  font-size:14px;
  font-weight:400;
  letter-spacing:-.01em;
  line-height:1.3333733333;
}
#globalnav-submenu-bag .bb-cart-profile__links{
  display:inline-flex;
  flex-direction:column;
  flex-wrap:nowrap;
  align-items:flex-start;
  justify-content:flex-start;
  gap:0;
  width:auto;
  margin:0;
  padding:0;
}
#globalnav-submenu-bag .bb-cart-profile__link{
  position:relative;
  box-sizing:border-box;
  display:inline-flex;
  align-items:flex-end;
  justify-content:flex-start;
  width:auto;
  max-width:100%;
  min-height:16px;
  margin:6px 0;
  padding:0;
  color:#333336;
  background:transparent;
  border:0;
  border-radius:0;
  font-family:var(--bb-font-text);
  font-size:14px;
  font-weight:600;
  letter-spacing:-.01em;
  line-height:1.3333733333;
  text-decoration:none;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  outline-offset:2px;
}
#globalnav-submenu-bag .bb-cart-profile__link:hover,
#globalnav-submenu-bag .bb-cart-profile__link:focus-visible{
  color:#000;
  text-decoration:none;
}
#globalnav-submenu-bag .bb-cart-profile__icon{
  position:absolute;
  inset-inline-start:1px;
  top:0;
  box-sizing:border-box;
  display:block;
  width:11px;
  height:16px;
  min-width:11px;
  flex:0 0 11px;
  margin:0;
  padding:0;
  color:#6e6e73;
}
#globalnav-submenu-bag .bb-cart-profile__svg{
  display:block;
  width:11px;
  height:16px;
  margin:0;
  fill:none;
  stroke:currentColor;
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
  overflow:visible;
}
#globalnav-submenu-bag .bb-cart-profile__text{
  display:block;
  min-width:0;
  padding-inline-start:24px;
  padding-inline-end:1px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.theme-dark #globalnav-submenu-bag .bb-cart-profile__title,
.globalheader-dark #globalnav-submenu-bag .bb-cart-profile__title,
#globalnav.globalnav-dark #globalnav-submenu-bag .bb-cart-profile__title,
.theme-dark #globalnav-submenu-bag .bb-cart-profile__icon,
.globalheader-dark #globalnav-submenu-bag .bb-cart-profile__icon,
#globalnav.globalnav-dark #globalnav-submenu-bag .bb-cart-profile__icon{color:#86868b}
.theme-dark #globalnav-submenu-bag .bb-cart-profile__link,
.globalheader-dark #globalnav-submenu-bag .bb-cart-profile__link,
#globalnav.globalnav-dark #globalnav-submenu-bag .bb-cart-profile__link{color:#e8e8ed}
.theme-dark #globalnav-submenu-bag .bb-cart-profile__link:hover,
.globalheader-dark #globalnav-submenu-bag .bb-cart-profile__link:hover,
#globalnav.globalnav-dark #globalnav-submenu-bag .bb-cart-profile__link:hover{color:#fff}

@media(max-width:833px){
  #globalnav-submenu-bag .bb-cart-profile__title{
    margin-top:56px;
    padding-bottom:7px;
    font-size:17px;
    font-weight:400;
    letter-spacing:-.022em;
    line-height:1.2353641176;
  }
  #globalnav-submenu-bag .bb-cart-profile__link{
    min-height:25px;
    margin:7px 0;
    font-size:17px;
    font-weight:600;
    letter-spacing:-.022em;
    line-height:1.4705882353;
  }
  #globalnav-submenu-bag .bb-cart-profile__icon{
    inset-inline-start:0;
    width:16px;
    height:25px;
    min-width:16px;
    flex-basis:16px;
  }
  #globalnav-submenu-bag .bb-cart-profile__svg{
    width:16px;
    height:25px;
  }
  #globalnav-submenu-bag .bb-cart-profile__text{
    padding-inline-start:30px;
  }
}

/* Apple-style invisible scrollbars: keep native wheel/touch scrolling, hide only the Y bar. */
#globalnav .globalnav-flyout-scroll-container,
#globalnav .globalnav-menu,
#globalnav .globalnav-menu-list,
html.globalnav-noscroll,
html.globalnav-noscroll body{
  scrollbar-width:none;
  -ms-overflow-style:none;
}
#globalnav .globalnav-flyout-scroll-container::-webkit-scrollbar,
#globalnav .globalnav-menu::-webkit-scrollbar,
#globalnav .globalnav-menu-list::-webkit-scrollbar,
html.globalnav-noscroll::-webkit-scrollbar,
html.globalnav-noscroll body::-webkit-scrollbar{
  display:none;
  width:0;
  height:0;
  background:transparent;
}

/* v2.0.17: on compact layouts, the native Bag owns one dedicated touch scroller.
   Apple's outer globalnav-content stays fixed only while Bag itself is open, so
   cart rows can pan from the first item to the last without nested-scroll fights. */
@media(max-width:833px){
  /* v2.0.30: keep the Bag's vertical scroller, but do not trap horizontal
     visual-viewport panning after pinch zoom. The page can pan left/right
     again while vertical overscroll remains contained inside the Bag. */
  html.bb-wc-bag-open.globalnav-noscroll,
  html.bb-wc-bag-open.globalnav-noscroll body{
    overscroll-behavior-x:auto;
    overscroll-behavior-y:none;
  }
  #globalnav.bb-wc-bag-open .globalnav-content{
    overflow-y:hidden;
    touch-action:pan-x pan-y pinch-zoom;
  }
  #globalnav.bb-wc-bag-open #globalnav-submenu-bag{
    overflow:hidden;
    touch-action:pan-x pan-y pinch-zoom;
  }
  #globalnav.bb-wc-bag-open #globalnav-submenu-bag .globalnav-flyout-scroll-container{
    box-sizing:border-box;
    height:100%;
    max-height:100%;
    overflow-x:hidden;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:auto;
    overscroll-behavior-y:contain;
    touch-action:pan-x pan-y pinch-zoom;
  }
  #globalnav.bb-wc-bag-open #globalnav-submenu-bag .bb-cart-apple-embed,
  #globalnav.bb-wc-bag-open #globalnav-submenu-bag .bb-cart-drawer__body{
    overflow:visible;
    touch-action:pan-x pan-y pinch-zoom;
  }
}

/* ========================================================================
   v2.0.14 - /cart/ uses the same component scale as the open globalnav Bag.
   The page remains a 980px full-cart layout, but product rows, quantity,
   coupon, totals and action typography now use the exact compact flyout sizes.
   No globalnav Bag wrapper/flyout geometry is changed here.
   ======================================================================== */
.bb-full-cart-page.bb-cart-root{
  width:980px;
  max-width:calc(100% - 44px);
  margin:0 auto;
  padding:40px 0 80px;
  font-size:13px;
  line-height:1.4;
}
.bb-full-cart-page__header{
  margin:0;
  padding:18px 0 30px;
  border-bottom:1px solid var(--bb-line-soft);
}
.bb-full-cart-page__title{
  padding:0;
  font-family:var(--bb-font-text);
  font-size:24px;
  font-weight:600;
  letter-spacing:.009em;
  line-height:1.16667;
}
.bb-full-cart-page__meta{
  margin:5px 0 0;
  font-size:14px;
  line-height:1.33337;
}
.bb-full-cart-page__checkout{
  width:auto;
  min-width:138px;
  max-width:100%;
  height:38px;
  min-height:38px;
  margin:18px 0 0;
  padding:0 18px;
  border-radius:999px;
  font-size:11.5px;
  font-weight:500;
  line-height:38px;
}
.bb-full-cart-page__notices{padding-top:12px}
.bb-full-cart-page__body{padding:14px 0 0}

/* Same row geometry as #globalnav-submenu-bag. */
.bb-full-cart-page .bb-cart-items{display:flex;flex-direction:column}
.bb-full-cart-page .bb-cart-item,
.bb-full-cart-page .bb-cart-item:last-child{
  position:relative;
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  gap:20px;
  align-items:start;
  margin:0;
  padding:10px 0 16px;
  border-top:0;
  border-bottom:1px solid var(--bb-line-soft);
}
.bb-full-cart-page .bb-cart-item:last-child{border-bottom:0}
.bb-full-cart-page .bb-cart-item__thumb{
  width:58px;
  min-width:58px;
  max-width:58px;
  height:58px;
  min-height:58px;
  max-height:58px;
  margin:0;
  border-radius:10px;
}
.bb-full-cart-page .bb-cart-item__thumb img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
.bb-full-cart-page .bb-cart-item__info{min-width:0;padding:0 28px 0 0}
.bb-full-cart-page .bb-cart-item__top{
  display:flex;
  flex-direction:row;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.bb-full-cart-page .bb-cart-item__name,
.bb-full-cart-page .bb-cart-item__name a{
  font-size:13px;
  font-weight:600;
  letter-spacing:-.012em;
  line-height:1.38;
}
.bb-full-cart-page .bb-cart-item__subtotal{
  padding:0;
  font-size:13px;
  font-weight:600;
  line-height:1.35;
  text-align:end;
  white-space:nowrap;
}
.bb-full-cart-page .bb-cart-item__meta{
  margin-top:4px;
  font-size:10.5px;
  line-height:1.45;
}
.bb-full-cart-page .bb-cart-item__bottom{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:flex-start;
  gap:16px;
  margin-top:9px;
  flex-wrap:wrap;
}
.bb-full-cart-page .bb-cart-item__price{font-size:10.5px;line-height:1.3}
.bb-full-cart-page .bb-cart-item__remove{
  top:11px;
  right:0;
  font-size:17px;
  line-height:1;
}

/* Exact popup quantity capsule. */
.bb-full-cart-page.bb-cart-root .bb-cart-qty{
  width:auto;
  height:32px;
  min-height:32px;
  max-height:32px;
  border-radius:999px;
}
.bb-full-cart-page.bb-cart-root .bb-cart-qty__btn{
  flex:0 0 32px;
  width:32px;
  min-width:32px;
  max-width:32px;
  height:32px;
  min-height:32px;
  max-height:32px;
  font-size:16px;
  line-height:32px;
}
.bb-full-cart-page.bb-cart-root .bb-cart-qty__input{
  flex:0 0 36px;
  width:36px;
  min-width:36px;
  max-width:36px;
  height:32px;
  min-height:32px;
  max-height:32px;
  font-size:14px;
  font-weight:500;
  line-height:32px;
}
.bb-full-cart-page.bb-cart-root .bb-cart-qty--single{
  height:32px;
  min-height:32px;
  padding:0 12px;
  font-size:11px;
  line-height:32px;
}

/* Same coupon / summary / action scale as the open Bag. */
.bb-full-cart-page .bb-cart-footer-grid{
  grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);
  gap:56px;
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid var(--bb-line-soft);
}
.bb-full-cart-page .bb-cart-card__title{margin:0 0 8px;font-size:11px;line-height:1.3}
.bb-full-cart-page .bb-cart-coupon form{max-width:390px;gap:8px}
.bb-full-cart-page.bb-cart-root .bb-cart-coupon input{
  height:34px;min-height:34px;padding:0 11px;
  border-radius:8px;font-size:11px;line-height:34px
}
.bb-full-cart-page.bb-cart-root .bb-cart-coupon button{
  width:auto;height:34px;min-height:34px;padding:0 14px;
  border-radius:999px;font-size:11px;font-weight:500;line-height:34px
}
.bb-full-cart-page.bb-cart-root .bb-cart-coupon .bb-cart-coupon-chip{
  height:27px;min-height:27px;padding:0 9px;
  font-size:10px;line-height:27px
}
.bb-full-cart-page .bb-cart-summary__row{
  padding:4px 0;
  font-size:11.5px;
  line-height:1.4;
}
.bb-full-cart-page .bb-cart-summary__row--total{
  margin-top:5px;
  padding-top:9px;
  border-top:1px solid var(--bb-line-soft);
  font-size:15px;
  line-height:1.4;
}
.bb-full-cart-page .bb-cart-summary__note{margin-top:6px;font-size:9.5px;line-height:1.4}
.bb-full-cart-page .bb-cart-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  width:100%;
  margin:0;
  padding-top:11px;
}
.bb-full-cart-page .bb-cart-btn{
  min-height:38px;
  height:auto;
  padding:0 15px;
  border-radius:999px;
  font-size:11.5px;
  font-weight:500;
  line-height:1;
}

/* Keep the Apple Bag trigger/wrapper native on the WooCommerce cart page too.
   Page/cart styles may not resize or pad this slot. */
body.woocommerce-cart #globalnav .globalnav-bag-wrapper{
  width:auto;
  min-width:0;
  max-width:none;
  height:auto;
  min-height:0;
  max-height:none;
  margin:0;
  padding:0;
  position:relative;
}
body.woocommerce-cart #globalnav-submenu-bag .globalnav-submenu-content{
  box-sizing:border-box;
  width:100%;
  max-width:1024px;
  margin-left:auto;
  margin-right:auto;
}
body.woocommerce-cart #globalnav-submenu-bag .bb-cart-apple-embed{
  box-sizing:border-box;
  width:100%;
  min-width:0;
  max-width:none;
  margin:0;
  padding:0;
}

@media(max-width:767px){
  .bb-full-cart-page.bb-cart-root{
    width:calc(100% - 28px);
    max-width:none;
    padding:32px 0 48px;
  }
  .bb-full-cart-page__header{padding:14px 0 22px}
  .bb-full-cart-page__title{font-size:22px;line-height:1.18}
  .bb-full-cart-page__meta{font-size:10px;line-height:1.35}
  .bb-full-cart-page__checkout{height:38px;min-height:38px;margin-top:14px;font-size:11px;line-height:38px}
  .bb-full-cart-page__body{padding-top:10px}
  .bb-full-cart-page .bb-cart-item,
  .bb-full-cart-page .bb-cart-item:last-child{
    grid-template-columns:52px minmax(0,1fr);
    gap:12px;
    padding:9px 0 13px;
  }
  .bb-full-cart-page .bb-cart-item__thumb{
    width:52px;min-width:52px;max-width:52px;
    height:52px;min-height:52px;max-height:52px;
    border-radius:9px
  }
  .bb-full-cart-page .bb-cart-item__info{padding-right:23px}
  .bb-full-cart-page .bb-cart-item__top{gap:8px}
  .bb-full-cart-page .bb-cart-item__name,
  .bb-full-cart-page .bb-cart-item__name a{font-size:14px}
  .bb-full-cart-page .bb-cart-item__subtotal{font-size:11.5px}
  .bb-full-cart-page .bb-cart-item__meta{font-size:9.5px}
  .bb-full-cart-page .bb-cart-item__bottom{gap:10px;margin-top:7px}
  .bb-full-cart-page .bb-cart-item__remove{top:9px;font-size:16px}
  .bb-full-cart-page .bb-cart-footer-grid{
    grid-template-columns:1fr;
    gap:18px;
    margin-top:10px;
    padding-top:9px;
  }
  .bb-full-cart-page .bb-cart-coupon form{max-width:none}
  .bb-full-cart-page .bb-cart-actions{grid-template-columns:1fr 1fr}
}

@media(max-width:430px){
  .bb-full-cart-page .bb-cart-item__bottom{align-items:flex-start;flex-direction:column}
  .bb-full-cart-page .bb-cart-actions{grid-template-columns:1fr}
  .bb-full-cart-page .bb-cart-coupon form{flex-direction:column;align-items:stretch}
  .bb-full-cart-page.bb-cart-root .bb-cart-coupon button{width:100%}
}

/* v2.0.21: vertically center BB Cart profile SVGs with their text line boxes.
   Keep the existing five icons, text spacing, colors, and row rhythm unchanged.
   The custom 24x24 stroke artwork must not inherit Apple's +4px/+7px optical SVG shift,
   which was designed for Apple's own asymmetric glyph canvases and pushed these icons low. */
#globalnav-submenu-bag .bb-cart-profile__link{
  position:relative;
  display:inline-flex;
  grid-template-columns:none;
  column-gap:0;
  align-items:center;
  justify-content:flex-start;
  justify-items:normal;
  width:auto;
  max-width:100%;
  min-height:16px;
  margin:6px 0;
  padding:0;
  line-height:1.3333733333;
}
#globalnav-submenu-bag .bb-cart-profile__icon{
  position:absolute;
  inset-inline-start:1px;
  top:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  width:11px;
  height:16px;
  min-width:11px;
  flex:0 0 11px;
  margin:0;
  padding:0;
  line-height:0;
  transform:translateY(-50%);
}
#globalnav-submenu-bag .bb-cart-profile__svg{
  display:block;
  width:11px;
  height:16px;
  min-width:0;
  min-height:0;
  margin:0;
  flex:none;
  transform:none;
  transform-origin:50% 50%;
  vertical-align:middle;
}
#globalnav-submenu-bag .bb-cart-profile__text{
  display:block;
  min-width:0;
  padding-inline-start:24px;
  padding-inline-end:1px;
  line-height:1.3333733333;
  align-self:center;
  transform:none;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Apple-style empty/profile rows use the same custom BB SVGs. Center the absolute
   icon container against the 16px/25px text line box instead of bottom-aligning it. */
#globalnav-submenu-bag .ac-gn-bagview-nav-link{
  position:relative;
  align-items:center;
}
#globalnav-submenu-bag .ac-gn-bagview-nav-image-container{
  top:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  width:11px;
  height:16px;
  line-height:0;
  transform:translateY(-50%);
}
#globalnav-submenu-bag .ac-gn-bagview-nav-image-container .bb-cart-profile__svg{
  width:11px;
  height:16px;
  transform:none;
}

@media(max-width:833px){
  #globalnav-submenu-bag .bb-cart-profile__link{
    min-height:25px;
    margin:7px 0;
    line-height:1.4705882353;
  }
  #globalnav-submenu-bag .bb-cart-profile__icon{
    inset-inline-start:0;
    width:21px;
    height:25px;
    min-width:21px;
    flex:0 0 21px;
  }
  #globalnav-submenu-bag .bb-cart-profile__svg{
    width:21px;
    height:21px;
    transform:none;
  }
  #globalnav-submenu-bag .bb-cart-profile__text{
    padding-inline-start:30px;
    padding-inline-end:1px;
    line-height:1.4705882353;
  }
  #globalnav-submenu-bag .ac-gn-bagview-nav-image-container{
    width:21px;
    height:25px;
  }
  #globalnav-submenu-bag .ac-gn-bagview-nav-image-container .bb-cart-profile__svg{
    width:21px;
    height:21px;
    transform:none;
  }
}


/* v2.0.24: desktop profile icon scale refinement.
   Keep 14px desktop profile text and centered geometry, but increase the custom
   profile icons to 16x16 on desktop. Mobile remains 17px text with 21x21 icons. */
@media(min-width:834px){
  #globalnav-submenu-bag .bb-cart-profile__link{
    font-size:14px;
    line-height:1.3333733333;
  }
  #globalnav-submenu-bag .bb-cart-profile__icon{
    width:16px;
    height:16px;
    min-width:16px;
    flex:0 0 16px;
  }
  #globalnav-submenu-bag .bb-cart-profile__svg{
    width:16px;
    height:16px;
  }
  #globalnav-submenu-bag .ac-gn-bagview-nav-item{
    font-size:14px;
    line-height:1.3333733333;
  }
  #globalnav-submenu-bag .ac-gn-bagview-nav-image-container{
    width:16px;
    height:16px;
  }
  #globalnav-submenu-bag .ac-gn-bagview-nav-image-container .bb-cart-profile__svg{
    width:16px;
    height:16px;
  }
}


/* v2.0.18: BB typography families only; preserve every existing Apple-sized font value.
   Final visible size <19px => BB Text. Final visible size >=19px => BB Display. */
.bb-cart-root,
.bb-full-cart-page{
  --bb-font:var(--bb-font-text);
  font-family:var(--bb-font-text);
}

/* Final visible sizes at or above 19px. */
.bb-cart-drawer__title,
.bb-full-cart-page__title,
.bb-full-cart-page .bb-cart-empty p,
.bb-full-cart-page .bb-cart-empty-apple .ac-gn-bagview-header,
.bb-full-cart-page .bb-cart-recommendations__title{
  font-family:var(--bb-font-display);
}

/* Close glyph is 21px desktop / 19px compact, so it follows the >=19px rule. */
.bb-cart-root .bb-cart-close{
  font-family:var(--bb-font-display);
}


/* v2.0.28: WooCommerce live-search rows are full-width direct product links.
   BB Cart owns the hit area while the Apple Search shell owns presentation/motion. */
#globalnav .bb-wp-search-product-item{
  box-sizing:border-box;
  width:100%;
  cursor:pointer;
}
#globalnav .bb-wp-search-product-item>.bb-wp-search-product-link{
  box-sizing:border-box;
  display:flex;
  width:100%;
  max-width:none;
  cursor:pointer;
}
#globalnav .bb-wp-search-product-item>.bb-wp-search-product-link>*{
  pointer-events:none;
}

/* v1.2.0: the merged BB Cart embed owns Bag content. Apple's AcBagFlyout can
   append a second native .ac-bag-flyout-container after the embed; suppress
   that sibling in the same style frame while JS permanently prunes it. */
#globalnav-submenu-bag .globalnav-submenu-content > [data-bb-cart-apple-embed] ~ .ac-bag-flyout-container.ac-gn-bagview-content {
  display: none ;
}

/* v1.16.0 HECU semantic-token bridge for header cart --------------------- */
html[data-hecu-resolved] .bb-cart-root,
html[data-hecu-resolved] .bb-full-cart-page {
  --bb-ink: var(--hecu-text, #1d1d1f);
  --bb-muted: var(--hecu-text-muted, #6e6e73);
  --bb-subtle: var(--hecu-text-soft, #86868b);
  --bb-surface: var(--hecu-bg, #fff);
  --bb-soft: var(--hecu-surface, #f5f5f7);
  --bb-line: var(--hecu-border, #d2d2d7);
  --bb-line-soft: var(--hecu-divider, var(--hecu-border, rgba(0,0,0,.075)));
  --bb-blue: var(--hecu-primary, #0071e3);
  --bb-blue-hover: var(--button-primary-hover, var(--hecu-primary, #0071e3));
}
html[data-hecu-resolved] .bb-cart-root .bb-cart-btn--primary {
  background: var(--button-primary-bg, var(--hecu-primary, #0071e3)) ;
  color: var(--button-primary-text, var(--hecu-on-primary, #fff)) ;
  border-color: var(--button-primary-border, transparent) ;
}
html[data-hecu-resolved] .bb-cart-root .bb-cart-btn--primary:hover {
  background: var(--button-primary-hover, var(--hecu-primary, #0071e3)) ;
}
html[data-hecu-resolved] .bb-cart-root .bb-cart-btn--secondary {
  background: var(--button-secondary-bg, var(--hecu-surface, #f5f5f7)) ;
  color: var(--button-secondary-text, var(--hecu-text, #1d1d1f)) ;
  border-color: var(--button-secondary-border, var(--hecu-border, transparent)) ;
}
html[data-hecu-resolved] .bb-cart-root :focus-visible {
  outline-color: var(--hecu-focus, #0071e3) ;
}
