/* Back Hero USA — cart drawer + /cart page (29/09/2026).
   Layout = the owner-approved WakaPaw cart (Titanium Wares kit, wakapaw.com LIVE): "Cart • n items" + Clear all, unlock line,
   borderless lines with a 76px photo, struck regular price + price + pill, "You saved", compact stepper, trash top right,
   "You save $X" box, one Check out • total, promise line. Colours + fonts = the Back Hero kit (assets/bh.css :root tokens):
   navy + light blue for UI, red only for money (savings, today's total) and the site's CTA (Check out = the Add to cart
   button), green for FREE, Inter body + Azeret Mono title. Gifts are child lines: indented under their product with a
   light-blue rule. Loaded site-wide by snippets/bh-cart-assets.liquid. Nesting keeps specificity above Horizon's own rules. */

.theme-drawer__dialog:has(cart-drawer-component)::backdrop { background: rgb(12 22 51 / .55); }
cart-drawer-component { --bhc-line: rgb(12 22 51 / .12); font-family: var(--bh-f-body); color: var(--bh-body); }

/* ============ drawer: header ============ */
cart-drawer-component .bh-cart-head {
  display: flex; align-items: center; gap: 0; border-block-end: 1px solid var(--bhc-line);
  & .theme-drawer__title { margin-inline-end: auto; font: 700 20px/1.2 var(--bh-f-head); letter-spacing: -.035em; color: var(--bh-ink); display: block; white-space: nowrap; }
  & .theme-drawer__close-button { margin-inline-start: 0; flex: none; }
}
cart-drawer-component .bh-cart-head__dot { color: var(--bh-red); margin: 0 2px; font-family: var(--bh-f-body); font-weight: 800; }
cart-drawer-component .bh-clear {
  flex: 0 0 auto; margin-inline-end: 12px; padding: 6px 0; border: 0; background: none; color: var(--bh-muted);
  font: 500 12.5px/1 var(--bh-f-body); text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; cursor: pointer;
  &.is-confirming { color: var(--bh-red); }
  @media (hover: hover) and (pointer: fine) { &:hover { color: var(--bh-red); } }
  &.is-confirming { font-weight: 800; }
  &[disabled] { opacity: .5; cursor: default; }
  &:focus-visible { outline: 2px solid var(--bh-navy); outline-offset: 3px; border-radius: 4px; }
}

/* ============ drawer: unlock line ============ */
cart-drawer-component .bh-bar {
  padding: 12px var(--cart-drawer-padding, 1.5rem) 0; text-align: center;
  & .bh-bar__label { margin: 0 0 10px; font-size: 13px; line-height: 1.3; color: var(--bh-ink); text-wrap: balance; }
  & .bh-bar__label strong { color: var(--bh-navy); font-weight: 800; }
  &.is-ship .bh-bar__label { margin-block-end: 12px; }
  & .bh-bar__bar { position: relative; display: flex; align-items: center; gap: 8px; margin-block-end: 16px; }
  & .bh-bar__track { position: relative; flex: 1 1 auto; height: 10px; border-radius: 20px; background: var(--bh-tint); box-shadow: inset 0 0 0 1px var(--bh-ice); overflow: hidden; }
  & .bh-bar__fill { display: block; width: var(--bh-bar, 0%); height: 100%; border-radius: 20px; background: repeating-linear-gradient(135deg, var(--bh-navy) 0 8px, #3252b0 8px 16px); }
  & .bh-bar__marker { flex: 0 0 auto; display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; border: 2px solid var(--bh-navy); background: var(--bh-navy); color: #fff; }
  & .bh-bar__marker--mid { position: absolute; left: calc((100% - 38px) / 2); transform: translateX(-50%); }
  & .bh-bar__marker.is-pending { border-color: var(--bh-ice); background: #fff; color: #7d93cf; }
  & .bh-bar__marker svg { width: 17px; height: 17px; }
  & .bh-bar__marker--mid svg circle { fill: var(--bh-navy); stroke: #fff; }
}

/* the footer never fades while the list scrolls (Horizon's scroll-hint writes a mask on every scroll) */
cart-drawer-component scroll-hint.cart-drawer__content,
cart-drawer-component scroll-hint.cart-drawer__items,
cart-drawer-component .cart-drawer__summary { mask-image: none !important; -webkit-mask-image: none !important; }

/* ============ line items (drawer AND /cart page) ============ */
cart-items-component.cart-items-component {
  --bhc-line: rgb(12 22 51 / .12);

  & .cart-items__table-row {
    position: relative;
    grid-template-columns: 76px minmax(0, 1fr);
    grid-template-rows: none;
    grid-template-areas: "media details" "media price" "media quantity" "media error";
    column-gap: 12px; row-gap: 4px; align-items: start;
    padding: 0 0 14px; margin: 0 0 14px; border: 0; border-block-end: 1px solid var(--bhc-line); border-radius: 0;
  }
  /* the last visible row closes the list (the protection line is hidden and may sit after it) */
  & tbody .cart-items__table-row:not(:has(~ .cart-items__table-row:not([data-bh-protection]))) { padding-bottom: 0; margin-bottom: 0; border-block-end: 0; }
  & .cart-items__table-row[data-bh-protection] { display: none; }

  /* gifts hang under the product that earned them: no divider in between, indent + light-blue rule */
  & .cart-items__table-row:has(+ .cart-items__nested-line) { padding-bottom: 10px; margin-bottom: 0; border-block-end: 0; }
  & .cart-items__nested-line { grid-template-columns: 52px minmax(0, 1fr); padding-inline-start: 38px; padding-top: 0; padding-bottom: 10px; margin-bottom: 0; border-block-end: 0; }
  & .cart-items__nested-line::before { content: ""; position: absolute; left: 20px; top: -6px; bottom: 10px; width: 2px; border-radius: 2px; background: var(--bh-ice); }
  & .cart-items__nested-line:not(:has(+ .cart-items__nested-line)) { padding-bottom: 14px; margin-bottom: 14px; border-block-end: 1px solid var(--bhc-line); }
  & .cart-items__nested-line:not(:has(+ .cart-items__nested-line))::before { bottom: 14px; }
  & tbody .cart-items__nested-line:not(:has(~ .cart-items__table-row:not([data-bh-protection]))) { padding-bottom: 0; margin-bottom: 0; border-block-end: 0; }
  & tbody .cart-items__nested-line:not(:has(~ .cart-items__table-row:not([data-bh-protection])))::before { bottom: 0; }

  /* photo */
  & .cart-items__media { position: relative; display: block; align-self: start; width: 76px; min-width: 76px; height: 76px; border-radius: 10px; overflow: hidden; background: var(--bh-tint); }
  & .cart-items__nested-line .cart-items__media,
  & .cart-items__nested-line td:first-child { width: 52px; min-width: 52px; height: 52px; border-radius: 8px; justify-self: start; }
  & .cart-items__media-container { position: absolute; inset: 0; display: block; width: 100%; height: 100%; aspect-ratio: auto; }
  & .cart-items__media img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; border: 0; border-radius: inherit; }

  /* title (one line, brand dropped) + one short variant line */
  & .cart-items__details { display: block; grid-area: details; padding: 0; margin: 0; min-width: 0; min-height: 0; }
  & .cart-items__details > :not(.cart-items__product-info) { display: none; }
  & .cart-items__product-info > :not(.cart-items__title-row):not(.bh-line__variant) { display: none; }
  & .cart-items__title-row { display: flex; padding-inline-end: 30px; }
  & .cart-items__title { display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; font: 700 14px/1.3 var(--bh-f-body); color: var(--bh-ink); text-decoration: none; text-transform: none; }
  & .cart-items__nested-line .cart-items__title { font-size: 13px; }
  & .bh-line__variant { margin: 2px 0 0; padding-inline-end: 30px; font-size: 12.5px; line-height: 1.3; color: var(--bh-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

  /* price row: ~~regular~~ paid [pill] / You saved $X */
  & .cart-items__price { grid-area: price; display: flex; flex-direction: row; align-items: baseline; flex-wrap: wrap; column-gap: 6px; row-gap: 3px; justify-self: stretch; width: auto; min-width: 0; max-width: 100%; min-height: 0; padding-inline-end: 8px; text-align: start; font: 700 14px/1.35 var(--bh-f-body); color: var(--bh-ink); }
  & .cart-items__price > text-component { font-weight: 800; color: var(--bh-ink); white-space: nowrap; }
  & .cart-items__table-row[data-bh-gift] .cart-items__price > text-component { display: none; }
  & .cart-items__price-unit { display: none; }
  & .bh-line__was { color: var(--bh-muted); font-weight: 400; white-space: nowrap; }
  & .bh-line__tags { display: inline-flex; flex-wrap: wrap; gap: 4px; align-self: center; min-width: 0; max-width: 100%; }
  & .bh-line__tags:empty { display: none; }
  & .bh-line__saved { flex-basis: 100%; font-size: 12px; font-weight: 800; color: var(--bh-red); white-space: nowrap; }
  & .bh-pill { display: inline-flex; min-width: 0; max-width: 100%; padding: 3px 8px; border-radius: 4px; background: var(--bh-tint); border: 1px solid var(--bh-ice); color: var(--bh-navy); font: 800 10px/1.25 var(--bh-f-body); letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
  & .bh-pill > span { overflow: hidden; text-overflow: ellipsis; }
  & .bh-pill__short { display: none; }
  & .bh-pill--free { background: #e7f6ec; border-color: #bfe3cc; color: var(--bh-green); }

  /* controls row: [gift size] [− n +] ; trash pinned top right */
  & .cart-items__quantity { grid-area: quantity; justify-self: start; align-self: center; margin: 2px 0 0; width: auto; }
  & .cart-items__quantity-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; width: auto; }
  & .cart-items__quantity-controls > .volume-pricing-info { display: none; }
  & .cart-items__quantity .quantity-selector-wrapper { flex: none; }
  & .cart-items__quantity .quantity-selector { flex: none; width: auto; min-width: 0; height: 38px; border: 1px solid var(--bh-line); border-radius: 8px; background: #fff; color: var(--bh-ink); }
  & .cart-items__quantity .quantity-selector :is(button) { width: 30px; height: 36px; color: var(--bh-ink); }
  & .cart-items__quantity .quantity-selector :is(button)[disabled] { opacity: .35; }
  & .cart-items__quantity .quantity-selector button svg { width: 12px; height: 12px; }
  & .cart-items__quantity .quantity-selector input[type="number"] { width: 26px; min-width: 0; padding-inline: 0; text-align: center; font: 700 14px/1 var(--bh-f-body); color: var(--bh-ink); }
  & .cart-items__nested-line .cart-items__quantity .quantity-selector { height: 32px; }
  & .cart-items__nested-line .cart-items__quantity .quantity-selector :is(button) { width: 28px; height: 30px; }
  & .cart-items__nested-line .cart-items__quantity .quantity-selector input[type="number"] { width: 24px; font-size: 13px; }
  & .cart-items__remove { position: absolute; top: -2px; inset-inline-end: -4px; display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; min-width: 0; border: 0; border-radius: 6px; background: transparent; box-shadow: none; padding: 0; color: var(--bh-muted); }
  @media (hover: hover) and (pointer: fine) { & .cart-items__remove:hover { color: var(--bh-red); } }
  & .cart-items__remove svg { width: 15px; height: 15px; }
  & .cart-items__error { grid-area: error; }

  /* gift size (lumbar belt) */
  & .bh-line__size { position: relative; display: inline-flex; flex: 0 1 auto; min-width: 0; }
  & .bh-line__size select {
    height: 32px; min-width: 0; max-width: 158px; padding: 0 26px 0 10px; border: 1px solid var(--bh-line); border-radius: 8px; background: #fff;
    font: 600 12.5px/1 var(--bh-f-body); color: var(--bh-ink); appearance: none; -webkit-appearance: none; cursor: pointer; text-overflow: ellipsis;
  }
  & .bh-line__size::after { content: ""; position: absolute; right: 11px; top: 50%; width: 6px; height: 6px; margin-top: -5px; border-right: 1.8px solid var(--bh-navy); border-bottom: 1.8px solid var(--bh-navy); transform: rotate(45deg); pointer-events: none; }
  & .bh-line__size select:focus-visible { outline: 2px solid var(--bh-navy); outline-offset: 2px; }

  /* loading: the button just pressed spins in place (also the guard's .bh-busy), the removed row fades */
  & .bh-busy { position: relative; pointer-events: none; color: transparent !important; }
  & .bh-busy > * { opacity: 0; }
  & .bh-busy::after { content: ""; position: absolute; inset: 0; margin: auto; width: 14px; height: 14px; border-radius: 50%; border: 2px solid rgb(29 54 134 / .18); border-top-color: var(--bh-navy); animation: bh-cart-spin .6s linear infinite; }
  & .bh-line__size.bh-busy { color: inherit !important; }
  & .bh-line__size.bh-busy > * { opacity: .35; }
  & .bh-line__size.bh-busy::after { left: auto; right: 6px; transform: none; border-right: 2px solid rgb(29 54 134 / .18); border-bottom: 2px solid rgb(29 54 134 / .18); margin-top: -7px; }
  & .cart-items__remove.bh-busy { position: absolute; }
  & .bh-removing { opacity: .35; transition: opacity .15s; pointer-events: none; }
}
@keyframes bh-cart-spin { to { transform: rotate(360deg); } }

/* ============ footer (drawer + /cart page) ============ */
cart-drawer-component .cart-drawer__summary { gap: 12px; padding: 14px var(--cart-drawer-padding, 1.5rem) 16px; border-block-start: 1px solid var(--bhc-line); }
cart-items-component.cart-items-component .bh-foot {
  width: 100%; display: flex; flex-direction: column; gap: 12px; font-family: var(--bh-f-body); color: var(--bh-ink);

  /* opt-in Shipping Protection */
  & .bh-protect { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border: 1px solid var(--bh-ice); border-radius: 12px; background: var(--bh-tint); }
  & .bh-protect[loading] { opacity: .65; pointer-events: none; }
  & .bh-protect__icon { flex: none; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #fff; color: var(--bh-navy); box-shadow: inset 0 0 0 1px var(--bh-ice); }
  & .bh-protect__icon svg { width: 20px; height: 20px; }
  & .bh-protect__body { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
  & .bh-protect__name { font-size: 14px; font-weight: 800; line-height: 1.2; color: var(--bh-ink); }
  & .bh-protect__copy { font-size: 12px; line-height: 1.3; color: var(--bh-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  & .bh-protect__copy b { font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: var(--bh-navy); font-size: 11px; }
  & .bh-protect__price { flex: none; font-size: 14px; font-weight: 800; }
  & .bh-protect__switch { flex: none; position: relative; width: 44px; height: 26px; cursor: pointer; }
  & .bh-protect__switch input { position: absolute; opacity: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
  & .bh-protect__track { position: absolute; inset: 0; border-radius: 26px; background: rgb(12 22 51 / .2); transition: background-color .2s; pointer-events: none; }
  & .bh-protect__track::before { content: ""; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; box-shadow: 0 2px 5px rgb(0 0 0 / .2); transition: transform .2s; }
  & .bh-protect__switch input:checked + .bh-protect__track { background: var(--bh-navy); }
  & .bh-protect__switch input:checked + .bh-protect__track::before { transform: translateX(18px); }
  & .bh-protect__switch input:focus-visible + .bh-protect__track { outline: 2px solid var(--bh-navy); outline-offset: 2px; }

  /* "You save $X" (same look as the buy box's save box) */
  & .bh-foot__save { display: block; background: var(--bh-red-soft); border-radius: 12px; padding: 12px 16px; transition: opacity .15s; }
  & .bh-foot__head { display: flex; align-items: center; justify-content: space-between; gap: 8px; cursor: pointer; list-style: none; font-size: 15.5px; font-weight: 800; color: var(--bh-ink); }
  & .bh-foot__head::-webkit-details-marker { display: none; }
  & .bh-foot__head:focus-visible { outline: 2px solid var(--bh-navy); outline-offset: 4px; border-radius: 6px; }
  & .bh-foot__lead { display: inline-flex; align-items: center; gap: 4px; min-width: 0; white-space: nowrap; }
  & .bh-foot__lead b { background: var(--bh-red); color: #fff; border-radius: 999px; padding: 3px 11px; margin-inline-start: 4px; }
  & .bh-foot__toggle { flex: none; display: inline-flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 800; color: var(--bh-red); white-space: nowrap; }
  & .bh-foot__toggle::after { content: ""; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(-135deg) translateY(-1px); transition: transform .2s; }
  & .bh-foot__show { display: none; }
  & .bh-foot__list { list-style: none; margin: 10px 0 0; padding: 10px 0 0; border-top: 1px dashed rgb(186 27 27 / .3); display: grid; gap: 6px; }
  /* a long cart opened in the drawer: the list scrolls inside the box so Check out stays on screen */
  &.bh-foot--drawer .bh-foot__list { max-height: min(34vh, 300px); overflow-y: auto; overscroll-behavior: contain; padding-inline-end: 4px; }
  & .bh-foot__item { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; font-size: 13.5px; line-height: 1.35; color: var(--bh-body); font-variant-numeric: tabular-nums; }
  & .bh-foot__name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  & .bh-foot__price { flex: none; white-space: nowrap; }
  & .bh-foot__price s { color: var(--bh-muted); margin-inline-end: 4px; }
  & .bh-foot__item--code .bh-foot__price, & .bh-foot__row--code span:last-child { color: var(--bh-red); font-weight: 700; }
  & .bh-foot__free { color: var(--bh-green); font-weight: 800; }
  & .bh-foot__total { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-top: 10px; padding-top: 10px; border-top: 1px dashed rgb(186 27 27 / .3); font-size: 14px; font-weight: 800; font-variant-numeric: tabular-nums; }
  & .bh-foot__total s { color: var(--bh-muted); font-weight: 500; margin-inline-start: 2px; }
  & .bh-foot__now { color: var(--bh-red); font-weight: 800; }
  & .bh-foot__total .bh-foot__now { font-size: 17px; margin-inline-start: 2px; }

  /* no savings: plain rows */
  & .bh-foot__summary { display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; font-size: 14px; }
  & .bh-foot__row { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
  & .bh-foot__row--total { font-size: 16px; font-weight: 800; }
  & .bh-foot__row--total .bh-foot__now { color: var(--bh-ink); }

  /* one Check out carrying the total = the site's Add to cart button */
  & .bh-foot__checkout {
    display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; min-height: 54px; padding: 0 24px; border: 0; border-radius: 999px;
    background: linear-gradient(180deg, var(--bh-red-2), var(--bh-red)); color: #fff; font: 700 16px/1 var(--bh-f-body); letter-spacing: .02em; cursor: pointer;
    transition: transform .15s, filter .15s, opacity .15s;
  }
  @media (hover: hover) and (pointer: fine) { & .bh-foot__checkout:hover { filter: brightness(1.06); transform: translateY(-1px); } }
  & .bh-foot__checkout:focus-visible { outline: 2px solid var(--bh-navy); outline-offset: 3px; }
  & .bh-foot__checkout[disabled] { opacity: .5; cursor: default; transform: none; }
  & .bh-foot__dot { opacity: .8; }
  & .bh-foot__promise { display: block; margin: -4px 0 0; text-align: center; font-size: 13px; line-height: 1.3; color: var(--bh-muted); }
  & .bh-foot__promise svg { display: inline-block; width: 15px; height: 15px; margin-inline-end: 5px; vertical-align: -3px; color: var(--bh-navy); }
  & .bh-foot__promise a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
}

/* "You save" folded (the <details> is always open in the markup; see snippets/bh-cart-footer.liquid):
   the shopper closed it · or a long cart (4+ lines) they did not open · or a phone drawer they did not open */
html.bh-save-closed cart-items-component .bh-foot__save :is(.bh-foot__list, .bh-foot__total, .bh-foot__hide),
html:not(.bh-save-open) cart-items-component .bh-foot__save.is-long :is(.bh-foot__list, .bh-foot__total, .bh-foot__hide) { display: none; }
html.bh-save-closed cart-items-component .bh-foot__save .bh-foot__show,
html:not(.bh-save-open) cart-items-component .bh-foot__save.is-long .bh-foot__show { display: inline; }
html.bh-save-closed cart-items-component .bh-foot__save .bh-foot__toggle::after,
html:not(.bh-save-open) cart-items-component .bh-foot__save.is-long .bh-foot__toggle::after { transform: rotate(45deg) translateY(-2px); }
@media screen and (max-width: 749px) {
  html:not(.bh-save-open) cart-drawer-component .bh-foot__save :is(.bh-foot__list, .bh-foot__total, .bh-foot__hide) { display: none; }
  html:not(.bh-save-open) cart-drawer-component .bh-foot__save .bh-foot__show { display: inline; }
  html:not(.bh-save-open) cart-drawer-component .bh-foot__save .bh-foot__toggle::after { transform: rotate(45deg) translateY(-2px); }
}

/* the cart is being written (any change on the page): Check out rests until the server has answered and the gift check ran */
html:is(.bh-cart-wait, .bh-cart-busy) cart-items-component .bh-foot__checkout { opacity: .55; pointer-events: none; cursor: progress; transform: none; }
html[data-bh-gift-pending] cart-items-component .bh-foot__checkout { opacity: .55; }
html:is(.bh-cart-wait, .bh-cart-busy) cart-items-component .bh-foot__save { opacity: .7; }

/* ============ empty drawer ============ */
cart-drawer-component .cart-drawer--empty .theme-drawer__title,
cart-drawer-component #cart-drawer-heading:only-child { font: 700 20px/1.25 var(--bh-f-head); letter-spacing: -.035em; color: var(--bh-ink); }
cart-items-component .cart-items__empty-button { border-radius: 999px; background: var(--bh-navy); color: #fff; font: 700 15px/1 var(--bh-f-body); letter-spacing: .02em; box-shadow: none; }

/* ============ /cart page ============ */
.cart-page__summary :is(.section-background, .cart-summary) { background-color: var(--bh-tint) !important; }
cart-items-component.cart-items-component .bh-foot--page .bh-protect__copy { white-space: normal; }
cart-items-component.cart-items-component:not([data-drawer]) {
  & .cart-items__table-row { grid-template-columns: 96px minmax(0, 1fr); column-gap: 16px; }
  & .cart-items__media { width: 96px; min-width: 96px; height: 96px; border-radius: 12px; }
  & .cart-items__nested-line { grid-template-columns: 60px minmax(0, 1fr); padding-inline-start: 48px; }
  & .cart-items__nested-line::before { left: 26px; }
  & .cart-items__nested-line .cart-items__media, & .cart-items__nested-line td:first-child { width: 60px; min-width: 60px; height: 60px; }
  & .cart-items__title { font-size: 15px; }
  & .cart-page__title .h4, & .cart-title { font-family: var(--bh-f-head); letter-spacing: -.035em; color: var(--bh-ink); }
}

/* ============ phones ============ */
@media screen and (max-width: 749px) {
  cart-drawer-component .bh-bar { padding: 0 0 14px; }
  cart-drawer-component .bh-bar .bh-bar__label { margin: 0; padding: 10px 16px; background: var(--bh-tint); border-block-end: 1px solid var(--bh-ice); font-weight: 700; }
  cart-drawer-component .bh-bar .bh-bar__bar { display: none; }
  cart-drawer-component .bh-bar.is-long .bh-bar__label { padding-inline: 10px; font-size: 12px; letter-spacing: -.01em; } /* named gifts: one line at 390 */
  cart-drawer-component .cart-drawer__summary { padding: 12px 16px 14px; gap: 10px; }
  cart-items-component.cart-items-component .bh-foot .bh-protect__copy { white-space: normal; }
  cart-items-component.cart-items-component {
    & .bh-pill__full { display: none; }
    & .bh-pill__short { display: inline; }
    & .cart-items__quantity .quantity-selector { height: 40px; border-radius: 10px; }
    & .cart-items__quantity .quantity-selector :is(button) { width: 34px; height: 38px; }
    & .cart-items__quantity .quantity-selector input[type="number"] { width: 28px; font-size: 15px; }
    & .cart-items__nested-line .cart-items__quantity .quantity-selector { height: 34px; }
    & .cart-items__nested-line .cart-items__quantity .quantity-selector :is(button) { width: 30px; height: 32px; }
    & .cart-items__remove svg { width: 18px; height: 18px; }
    & .cart-items__remove::before { content: ""; position: absolute; inset: -6px; }
  }
  cart-items-component.cart-items-component:not([data-drawer]) .cart-items__table-row { grid-template-columns: 76px minmax(0, 1fr); column-gap: 12px; }
  cart-items-component.cart-items-component:not([data-drawer]) .cart-items__media { width: 76px; min-width: 76px; height: 76px; }
}
