/* Product details and purchase actions */
body.bmk-storefront-ds .bmk-product-page > .bmk-breadcrumb {
  color: var(--sf-muted);
  margin-block: 20px 12px;
}

body.bmk-storefront-ds .bmk-product-detail {
  gap: clamp(24px, 5vw, 72px);
}

body.bmk-storefront-ds .bmk-product-main-image {
  border-radius: var(--sf-card-radius);
}

body.bmk-storefront-ds .bmk-thumb {
  border-color: var(--sf-line);
  border-radius: var(--sf-control-radius);
  overflow: hidden;
}

body.bmk-storefront-ds .bmk-thumb.is-active {
  border-color: var(--sf-active);
}

body.bmk-storefront-ds .bmk-detail-info {
  min-width: 0;
  padding-block-start: 4px;
}

body.bmk-storefront-ds .bmk-detail-title {
  margin-block: 0 12px;
  color: var(--sf-ink);
  font-size: var(--sf-heading-page);
  font-weight: 700;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

body.bmk-storefront-ds .bmk-detail-price {
  gap: 10px;
  margin-block: 10px 12px;
  color: var(--sf-ink);
  font-size: clamp(23px, 2.6vw, 29px);
  font-weight: 700;
}

body.bmk-storefront-ds .bmk-detail-price del {
  color: var(--sf-muted);
  font-size: 0.58em;
}

body.bmk-storefront-ds .bmk-detail-price:has(del) > span:first-child {
  color: var(--sf-sale);
}

body.bmk-storefront-ds .bmk-detail-stock {
  color: var(--sf-ink);
  margin-block-start: 2px;
  letter-spacing: normal;
}

body.bmk-storefront-ds .bmk-detail-stock:before {
  background: var(--sf-brand);
}

body.bmk-storefront-ds .bmk-detail-stock.is-unavailable:before {
  background: var(--sf-error);
}

body.bmk-storefront-ds .bmk-purchase-ui {
  align-items: stretch;
  gap: 8px;
  margin-block: 12px 20px;
}

body.bmk-storefront-ds .bmk-purchase-ui .bmk-add-cart {
  min-width: 0;
  min-height: 48px;
  padding-inline: 10px;
  white-space: normal;
  line-height: 1.4;
}

body.bmk-storefront-ds .bmk-purchase-ui .bmk-wishlist-toggle,
body.bmk-storefront-ds .bmk-qv-heart {
  flex: 0 0 48px;
  color: var(--sf-ink);
  border: 1px solid var(--sf-line);
  border-radius: var(--sf-control-radius);
  background: var(--sf-surface);
  box-shadow: none;
}

body.bmk-storefront-ds .bmk-purchase-ui .bmk-wishlist-toggle.is-active,
body.bmk-storefront-ds .bmk-qv-heart.is-active {
  color: var(--sf-active-ink);
  background: var(--sf-active);
  border-color: var(--sf-active);
}

body.bmk-storefront-ds .bmk-detail-info .bmk-promo-progress:not([hidden]),
body.bmk-storefront-ds .bmk-detail-info .bmk-bnpl-product:not([hidden]) {
  margin-block: 12px;
  border-color: var(--sf-line);
  border-radius: var(--sf-card-radius);
  box-shadow: none;
}

body.bmk-storefront-ds .bmk-detail-info .bmk-bnpl-product {
  padding: 12px;
  background: var(--sf-subtle);
}

body.bmk-storefront-ds .bmk-detail-info .bmk-bnpl-heading {
  color: var(--sf-ink);
}

body.bmk-storefront-ds .bmk-detail-info .bmk-bnpl-heading small,
body.bmk-storefront-ds .bmk-detail-meta,
body.bmk-storefront-ds .bmk-accordion-body {
  color: var(--sf-muted);
}

body.bmk-storefront-ds .bmk-detail-meta {
  margin-block-start: 20px;
  padding-block-start: 14px;
  border-color: var(--sf-line);
}

body.bmk-storefront-ds .bmk-accordion summary {
  min-height: 44px;
  font-size: 14px;
  align-items: center;
}

/* Shared purchase controls and quick view. */
body.bmk-storefront-ds .bmk-purchase-ui .bmk-qty,
body.bmk-storefront-ds .bmk-qv-qty,
body.bmk-storefront-ds .bmk-mini-qty {
  border-color: var(--sf-line) !important;
  border-radius: var(--sf-control-radius) !important;
  background: var(--sf-surface);
  box-shadow: none;
}

body.bmk-storefront-ds .bmk-purchase-ui .bmk-qty,
body.bmk-storefront-ds .bmk-mini-qty {
  overflow: hidden;
}

body.bmk-storefront-ds .bmk-purchase-ui .bmk-qty button,
body.bmk-storefront-ds .bmk-qv-qty button,
body.bmk-storefront-ds .bmk-mini-qty button {
  color: var(--sf-ink);
  background: var(--sf-surface);
}

body.bmk-storefront-ds .bmk-purchase-ui .bmk-qty button:hover:not(:disabled),
body.bmk-storefront-ds .bmk-qv-qty button:hover:not(:disabled),
body.bmk-storefront-ds .bmk-mini-qty button:hover:not(:disabled) {
  background: var(--sf-subtle);
}

/* The legacy PDP controls enforce a mint hover and press with !important. */
body.bmk-storefront-ds .bmk-product-page .bmk-purchase-ui .bmk-qty button:is(:hover, :focus-visible, :active) {
  background: var(--sf-subtle) !important;
}

body.bmk-storefront-ds .bmk-qty :focus-visible,
body.bmk-storefront-ds .bmk-mini-qty :focus-visible {
  outline-offset: -2px;
}

body.bmk-storefront-ds .bmk-quickview-card {
  border-radius: var(--sf-card-radius) !important;
  background: var(--sf-surface) !important;
}

body.bmk-storefront-ds .bmk-quickview-media {
  background: var(--sf-bg) !important;
}

body.bmk-storefront-ds .bmk-quickview-body h2 {
  color: var(--sf-ink);
  font-size: clamp(18px, 2vw, 22px) !important;
  font-weight: 700 !important;
  overflow-wrap: anywhere;
}

body.bmk-storefront-ds .bmk-qv-prices [data-qv-price] {
  color: var(--sf-ink) !important;
  font-size: clamp(20px, 2.3vw, 24px) !important;
  font-weight: 700 !important;
}

body.bmk-storefront-ds .bmk-qv-prices [data-qv-old]:not([hidden]) ~ [data-qv-price] {
  color: var(--sf-sale) !important;
}

body.bmk-storefront-ds .bmk-qv-prices [data-qv-old] {
  color: var(--sf-muted) !important;
}

body.bmk-storefront-ds .bmk-qv-discount {
  background: var(--sf-sale);
}

body.bmk-storefront-ds .bmk-qv-add,
body.bmk-storefront-ds .bmk-p9-primary,
body.bmk-storefront-ds .bmk-p9-browse,
body.bmk-storefront-ds .bmk-hub-settings-stack .bmk-p9-primary {
  min-height: var(--sf-control-height);
  border: 1px solid var(--sf-active);
  border-radius: var(--sf-control-radius);
  background: var(--sf-active);
  color: var(--sf-active-ink) !important;
  font-weight: 700;
}

body.bmk-storefront-ds :is(.bmk-qv-add, .bmk-p9-primary):is(:disabled, [aria-disabled="true"]) {
  border-color: var(--sf-line);
  background: var(--sf-subtle);
  color: var(--sf-muted) !important;
}

body.bmk-storefront-ds .bmk-qv-add:hover:not(:disabled):not([aria-disabled="true"]),
body.bmk-storefront-ds .bmk-p9-primary:hover:not(:disabled):not([aria-disabled="true"]),
body.bmk-storefront-ds .bmk-p9-browse:hover,
body.bmk-storefront-ds .bmk-hub-settings-stack .bmk-p9-primary:hover:not(:disabled):not([aria-disabled="true"]) {
  background: var(--sf-active-hover);
}

body.bmk-storefront-ds .bmk-write-review {
  min-height: var(--sf-control-height);
  border: 1px solid var(--sf-line);
  border-radius: var(--sf-control-radius);
  background: var(--sf-surface);
  color: var(--sf-ink);
}

body.bmk-storefront-ds .bmk-write-review:hover {
  background: var(--sf-subtle);
  color: var(--sf-ink);
}

body.bmk-storefront-ds :is(.bmk-qv-add, .bmk-p9-primary, .bmk-p9-browse, .bmk-write-review):focus-visible {
  outline-offset: 2px;
}

body.bmk-storefront-ds .bmk-quickview-close {
  top: 10px !important;
  right: auto !important;
  left: auto !important;
  inset-inline-end: 10px !important;
}

body.bmk-storefront-ds .bmk-quickview-close,
body.bmk-storefront-ds .bmk-drawer-head > .bmk-icon-btn[data-close-overlay] {
  display: grid !important;
  place-items: center;
  width: 44px !important;
  height: 44px !important;
  padding: 0;
  border: 1px solid var(--sf-line) !important;
  border-radius: var(--sf-control-radius) !important;
  background: var(--sf-surface) !important;
  color: var(--sf-ink) !important;
  -webkit-text-fill-color: currentColor !important;
  font-size: 26px !important;
  line-height: 1 !important;
}

body.bmk-storefront-ds .bmk-quickview-close:hover,
body.bmk-storefront-ds .bmk-drawer-head > .bmk-icon-btn[data-close-overlay]:hover {
  background: var(--sf-subtle) !important;
  border-color: var(--sf-muted) !important;
}

/* Mini cart and account drawer. */
body.bmk-storefront-ds .bmk-drawer:where([data-drawer="cart"], [data-drawer="account"], [data-drawer="wishlist"]) {
  background: var(--sf-surface);
}

body.bmk-storefront-ds .bmk-drawer:where([data-drawer="cart"], [data-drawer="account"], [data-drawer="wishlist"]) .bmk-drawer-head {
  border-color: var(--sf-line);
}

body.bmk-storefront-ds .bmk-drawer:where([data-drawer="cart"], [data-drawer="wishlist"]) .bmk-drawer-body {
  padding: 14px 18px;
  background: var(--sf-bg);
}

body.bmk-storefront-ds .bmk-cart-line {
  grid-template-columns: 68px minmax(0, 1fr) 44px;
  align-items: start;
  gap: 10px;
  margin-block-end: 10px;
  padding: 12px;
  border: 1px solid var(--sf-line);
  border-radius: var(--sf-card-radius);
  background: var(--sf-surface);
}

body.bmk-storefront-ds .bmk-cart-line img {
  height: 68px;
  border-radius: var(--sf-control-radius);
}

body.bmk-storefront-ds .bmk-cart-line-title {
  color: var(--sf-ink);
  font-weight: 700;
  overflow-wrap: anywhere;
}

body.bmk-storefront-ds .bmk-cart-line-price strong,
body.bmk-storefront-ds .bmk-checkout-line-prices strong {
  color: var(--sf-ink);
}

body.bmk-storefront-ds .bmk-cart-line-price.has-sale strong,
body.bmk-storefront-ds .bmk-checkout-line-prices del ~ strong {
  color: var(--sf-sale);
}

body.bmk-storefront-ds .bmk-cart-line-price del,
body.bmk-storefront-ds .bmk-checkout-line-prices del {
  color: var(--sf-muted);
}

body.bmk-storefront-ds .bmk-mini-remove {
  width: 44px;
  height: 44px;
  border-radius: var(--sf-control-radius);
  color: var(--sf-muted);
}

body.bmk-storefront-ds .bmk-mini-remove:hover {
  color: var(--sf-sale);
  background: var(--sf-bg);
}

body.bmk-storefront-ds .bmk-mini-qty {
  height: 42px;
}

body.bmk-storefront-ds .bmk-mini-qty button {
  width: 40px;
  height: 40px;
}

body.bmk-storefront-ds .bmk-drawer-foot {
  border-color: var(--sf-line);
  background: var(--sf-surface);
}

body.bmk-storefront-ds .bmk-cart-summary {
  font-weight: 700;
}

body.bmk-storefront-ds .bmk-cart-note,
body.bmk-storefront-ds .bmk-account-card p,
body.bmk-storefront-ds .bmk-account-channel-note,
body.bmk-storefront-ds .bmk-p9-guest p,
body.bmk-storefront-ds .bmk-p9-heading p,
body.bmk-storefront-ds .bmk-p9 .bmk-p9-eyebrow {
  color: var(--sf-muted);
}

body.bmk-storefront-ds .bmk-account-auth form input,
body.bmk-storefront-ds .bmk-account-channel-picker button,
body.bmk-storefront-ds .bmk-account-phone-row,
body.bmk-storefront-ds .bmk-p9-email-card form input,
body.bmk-storefront-ds .bmk-hub-settings-stack .bmk-p9-email-card form input {
  min-height: var(--sf-control-height);
  border-color: var(--sf-line);
  border-radius: var(--sf-control-radius);
  background: var(--sf-surface);
  color: var(--sf-ink);
}

body.bmk-storefront-ds .bmk-account-channel-picker button[aria-pressed="true"] {
  border-color: var(--sf-active);
  background: var(--sf-active);
  color: var(--sf-active-ink);
  box-shadow: none;
}

body.bmk-storefront-ds .bmk-account-text-btn {
  color: var(--sf-ink);
  text-underline-offset: 3px;
}

body.bmk-storefront-ds .bmk-account-text-btn:focus-visible {
  outline-offset: 2px;
}

body.bmk-storefront-ds .bmk-account-feedback:not(:empty) {
  padding: 8px 12px;
  border-radius: var(--sf-control-radius);
  background: var(--sf-subtle);
  color: var(--sf-ink);
}

body.bmk-storefront-ds .bmk-account-feedback.is-error:not(:empty) {
  background: #fff4f4;
  color: var(--sf-error);
}

body.bmk-storefront-ds .bmk-account-sync .bmk-account-spinner {
  border-color: var(--sf-line);
  border-inline-end-color: var(--sf-active);
}

body.bmk-storefront-ds .bmk-p9-guest,
body.bmk-storefront-ds [data-checkout-page] .bmk-profile-login {
  width: 100%;
  max-width: 600px;
  margin: 24px auto 40px;
  padding: clamp(24px, 5vw, 48px) 20px;
  border: 1px solid var(--sf-line);
  border-radius: var(--sf-card-radius);
  background: var(--sf-surface);
}

body.bmk-storefront-ds .bmk-p9-guest-icon {
  width: 56px;
  height: 56px;
  font-size: 28px;
}

body.bmk-storefront-ds .bmk-p9 .bmk-p9-heading h1 {
  color: var(--sf-ink);
  font-size: var(--sf-heading-page);
  font-weight: 700;
}

body.bmk-storefront-ds :is(.bmk-account-avatar, .bmk-p9-guest-icon, .bmk-p9-avatar, .bmk-p9-count) {
  background: var(--sf-subtle);
  color: var(--sf-ink);
}

body.bmk-storefront-ds .bmk-p9 :is(.bmk-p9-empty, .bmk-p9-address-snippet, .bmk-p9-review-form, .bmk-p9-personal-field, .bmk-p9-detail-status > div) {
  border-color: var(--sf-line);
  background: var(--sf-subtle);
}

body.bmk-storefront-ds .bmk-p9 :is(.bmk-p9-outline, .bmk-p9-back) {
  min-height: var(--sf-control-height);
  border-color: var(--sf-line);
  border-radius: var(--sf-control-radius);
  color: var(--sf-ink) !important;
}

body.bmk-storefront-ds .bmk-p9 .bmk-p9-outline:hover,
body.bmk-storefront-ds .bmk-p9 .bmk-p9-nav > a:hover {
  background: var(--sf-subtle);
}

body.bmk-storefront-ds .bmk-p9 :is(.bmk-p9-order, .bmk-p9-sidebar, .bmk-p9-content, .bmk-p9-email-card) {
  border-color: var(--sf-line);
  border-radius: var(--sf-card-radius);
}

body.bmk-storefront-ds .bmk-p9 .bmk-p9-nav > a.active {
  background: var(--sf-active);
  color: var(--sf-active-ink) !important;
  box-shadow: none;
}

body.bmk-storefront-ds .bmk-p9 .bmk-p9-nav > a.active :is(.bmk-p9-nav-icon, .bmk-p9-nav-arrow) {
  color: inherit;
}

body.bmk-storefront-ds .bmk-p9 .bmk-ac-consent,
body.bmk-storefront-ds .bmk-p9 :is(.bmk-hub-intro, .bmk-hub-data-grid, .bmk-hub-wholesale-summary) {
  border-color: var(--sf-line);
  border-radius: var(--sf-card-radius);
  background: var(--sf-surface);
}

body.bmk-storefront-ds .bmk-p9 .bmk-ac-toggle {
  background: var(--sf-line);
}

body.bmk-storefront-ds .bmk-p9 .bmk-ac-row input:checked + .bmk-ac-toggle {
  background: var(--sf-active);
}

body.bmk-storefront-ds .bmk-p9 .bmk-ac-row input:focus-visible + .bmk-ac-toggle,
body.bmk-storefront-ds .bmk-p9 .bmk-hub-tab:focus-visible {
  outline-color: var(--sf-focus);
}

/* Checkout styles preserve the rendered controls and their validation states. */
body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-heading {
  align-items: center;
  gap: 16px;
  margin-block-end: 20px;
  padding-block-end: 16px;
  border-color: var(--sf-line);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-heading h1 {
  margin: 0;
  color: var(--sf-ink);
  font-size: var(--sf-heading-page);
  font-weight: 700;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-profile-login p,
body.bmk-storefront-ds [data-checkout-page] .bmk-profile-panel-head p,
body.bmk-storefront-ds [data-checkout-page] :is(.bmk-checkout-loading, .bmk-checkout-qty-progress, .bmk-checkout-empty p, .bmk-checkout-server-label, .bmk-checkout-status.is-ready) {
  color: var(--sf-muted);
}

body.bmk-storefront-ds [data-checkout-page] :is(.bmk-profile-panel-head h2, .bmk-checkout-summary h2) {
  color: var(--sf-ink);
  font-size: clamp(17px, 1.9vw, 21px);
  font-weight: 700;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-shipping-price,
body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-summary .bmk-checkout-grand > strong {
  color: var(--sf-ink);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-summary .bmk-checkout-grand > strong {
  font-size: 19px;
  font-weight: 700;
}

body.bmk-storefront-ds [data-checkout-page] :is(.bmk-checkout-spinner, .bmk-checkout-qty-spinner) {
  border-color: var(--sf-line);
  border-block-start-color: var(--sf-active);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-summary .bmk-checkout-grand {
  border-block-start-color: var(--sf-line);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-summary .bmk-checkout-total-row:not(.bmk-checkout-tax-note) > span {
  color: var(--sf-muted);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-summary :is([data-preview-promo-row], .bmk-checkout-saving-row, .bmk-promo-savings-total) strong {
  color: var(--sf-ink);
}

body.bmk-storefront-ds [data-checkout-page] :is(.bmk-profile-panel, .bmk-checkout-summary) {
  border: 1px solid var(--sf-line) !important;
  border-radius: var(--sf-card-radius);
  background: var(--sf-surface) !important;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-main {
  gap: 16px;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-lines {
  container: checkout-lines / inline-size;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-lines .bmk-checkout-line {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr) max-content 36px;
  grid-template-rows: auto auto;
  align-items: start;
  column-gap: 12px;
  row-gap: 7px;
  padding: 12px;
  border: 1px solid var(--sf-line);
  border-radius: var(--sf-control-radius);
  box-shadow: none;
}

/* Both checkout renderers use these unlabelled wrappers around the same controls. */
body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line :is(.bmk-checkout-line-body, .bmk-checkout-line-info, .bmk-checkout-line-actions) {
  display: contents;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-lines .bmk-checkout-line-image {
  grid-area: 1 / 1 / span 2;
  width: 70px;
  height: 70px;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: var(--sf-subtle);
  object-fit: contain;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-line-title {
  grid-area: 1 / 2;
  align-self: center;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.55;
  color: var(--sf-ink) !important;
  overflow-wrap: anywhere;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-line-prices {
  grid-area: 2 / 2;
  align-self: start;
  justify-self: start;
  gap: 4px 8px;
  margin: 0;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-line-prices strong {
  font-size: 14px;
  font-weight: 700;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-quantity {
  grid-area: 1 / 3;
  display: inline-grid;
  grid-template-columns: 36px 36px 36px;
  justify-self: end;
  align-items: center;
  width: max-content;
  min-height: 0;
  border: 1px solid var(--sf-line);
  border-radius: 8px;
  background: var(--sf-surface);
  box-shadow: none;
  overflow: hidden;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-quantity > button,
body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-quantity > input.bmk-checkout-qty-input {
  width: 100%;
  min-width: 0;
  height: 36px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: var(--sf-surface);
  color: var(--sf-ink);
  box-shadow: none;
  font-size: 14px;
  font-weight: 700;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-quantity > button {
  font-size: 17px;
  font-weight: 400;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-quantity > input.bmk-checkout-qty-input {
  border-inline: 1px solid var(--sf-line);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-quantity > button:hover:not(:disabled),
body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-quantity > button:focus-visible {
  background: var(--sf-subtle);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-quantity > :is(button, input):focus-visible {
  outline-offset: -2px;
  box-shadow: none;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-quantity.is-checking {
  background: var(--sf-subtle);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-line-total {
  grid-area: 2 / 3;
  align-self: start;
  justify-self: end;
  justify-content: flex-end;
  flex-wrap: wrap;
  min-width: 0;
  gap: 3px 7px;
  margin: 0;
  color: var(--sf-muted);
  font-size: 11px;
  white-space: normal;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-line-total strong {
  color: var(--sf-ink);
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-remove {
  grid-area: 1 / 4;
  align-self: start;
  width: 36px;
  height: 36px;
  padding: 7px;
  border: 0;
  border-radius: 8px;
  color: var(--sf-error);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-remove svg {
  width: 19px;
  height: 19px;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line :is(.bmk-checkout-line-warning, .bmk-checkout-qty-progress, .bmk-checkout-item-note) {
  grid-column: 2 / -1;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-item-note {
  display: grid;
  gap: 6px;
  justify-self: start;
  width: min(100%, 380px);
  min-width: 0;
  margin-block: 3px 0;
  padding: 0;
  border: 0;
  color: var(--sf-muted);
  font-size: 12px;
  font-weight: 700;
}

body.bmk-storefront-ds [data-checkout-page] :is(.bmk-checkout-item-note input, .bmk-form-control, [data-preview-coupon]) {
  min-height: var(--sf-control-height);
  padding-inline: 12px;
  border: 1px solid var(--sf-line);
  border-radius: var(--sf-control-radius);
  background: var(--sf-surface);
  color: var(--sf-ink);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-item-note > input {
  width: 100%;
  min-height: 38px;
  margin: 0;
  font-size: 14px;
  font-weight: 400;
}

@container checkout-lines (max-width: 520px) {
  body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-lines .bmk-checkout-line {
    grid-template-columns: 52px minmax(0, 1fr) auto 44px;
    column-gap: 8px;
  }

  body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-lines .bmk-checkout-line-image {
    width: 52px;
    height: 52px;
  }

  body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line :is(.bmk-checkout-line-title, .bmk-checkout-line-prices) {
    grid-column: 2 / 4;
  }

  body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-quantity {
    grid-area: 3 / 1 / auto / 3;
    grid-template-columns: 42px 37px 42px;
    justify-self: start;
  }

  body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-line-total {
    grid-area: 3 / 3 / auto / -1;
    align-self: center;
  }

  body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-remove {
    width: 44px;
    height: 44px;
  }

  body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line :is(.bmk-checkout-line-warning, .bmk-checkout-qty-progress, .bmk-checkout-item-note) {
    grid-column: 1 / -1;
  }

  body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-item-note {
    width: 100%;
  }

  body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-quantity > input.bmk-checkout-qty-input,
  body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-line .bmk-checkout-item-note > input {
    font-size: 16px;
  }
}

body.bmk-storefront-ds [data-checkout-page] :is([data-preview-shipping-panel], [data-preview-payment-panel]) .bmk-checkout-shipping-choice {
  border-color: var(--sf-line);
  border-radius: var(--sf-control-radius);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-shipping-choice:has(input:checked) {
  border-color: var(--sf-active);
  background: var(--sf-subtle);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-shipping-choice:has(input:focus-visible) {
  outline-color: var(--sf-focus);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-shipping-choice input {
  accent-color: var(--sf-active);
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-tax-note :is(span, strong) {
  color: var(--sf-muted) !important;
  font-size: 12px;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-tax-note .bmk-checkout-riyal {
  opacity: 0.9 !important;
}

body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-payment-alert {
  border-radius: var(--sf-card-radius);
}

/* Consent shares the mobile safe area with the bottom navigation. */
body.bmk-storefront-ds .bmk-snap-consent {
  border-color: var(--sf-line);
  border-radius: var(--sf-card-radius);
  background: var(--sf-surface);
  color: var(--sf-ink);
}

body.bmk-storefront-ds .bmk-snap-consent p {
  color: var(--sf-muted);
}

body.bmk-storefront-ds .bmk-snap-consent-actions button {
  min-height: 44px;
  border-color: var(--sf-line);
  border-radius: var(--sf-control-radius);
  color: var(--sf-ink);
}

body.bmk-storefront-ds .bmk-snap-consent-actions [data-snap-accept] {
  border-color: var(--sf-active);
  background: var(--sf-active);
  color: var(--sf-active-ink);
}

body.bmk-storefront-ds .bmk-snap-consent-actions button:focus-visible {
  outline-color: var(--sf-focus);
}

body.bmk-storefront-ds.bmk-lock .bmk-snap-consent {
  visibility: hidden;
  pointer-events: none;
}

@media (max-width: 767px) {
  body.bmk-storefront-ds .bmk-product-page > .bmk-breadcrumb {
    margin-block: 12px 8px;
  }

  body.bmk-storefront-ds .bmk-product-detail {
    gap: 18px;
    padding-block-start: 6px;
  }

  body.bmk-storefront-ds .bmk-purchase-ui .bmk-qty button,
  body.bmk-storefront-ds .bmk-mini-qty button {
    width: 44px;
  }

  body.bmk-storefront-ds .bmk-mini-qty {
    height: 46px;
  }

  body.bmk-storefront-ds .bmk-mini-qty button {
    height: 44px;
  }

  body.bmk-storefront-ds .bmk-purchase-ui .bmk-qty input,
  body.bmk-storefront-ds .bmk-qv-qty input,
  body.bmk-storefront-ds .bmk-account-auth form input:not(.bmk-account-code),
  body.bmk-storefront-ds [data-checkout-page] :is(.bmk-form-control, [data-preview-coupon]) {
    font-size: 16px !important;
  }

  body.bmk-storefront-ds .bmk-quickview {
    place-items: end center;
    padding: 0 !important;
  }

  body.bmk-storefront-ds .bmk-quickview-card {
    display: grid !important;
    grid-template: auto minmax(0, 1fr) / minmax(0, 1fr);
    max-width: 560px !important;
    height: min(84vh, 650px) !important;
    height: min(84dvh, 650px) !important;
    max-height: 100% !important;
    overflow: hidden !important;
    border-end-start-radius: 0 !important;
    border-end-end-radius: 0 !important;
  }

  body.bmk-storefront-ds .bmk-quickview-media {
    min-height: 0 !important;
    height: min(32vh, 248px) !important;
    height: min(32dvh, 248px) !important;
  }

  body.bmk-storefront-ds .bmk-quickview-media img {
    object-fit: contain !important;
    transform: none;
  }

  body.bmk-storefront-ds .bmk-quickview-body {
    min-height: 0;
    overflow-y: auto !important;
    padding: 16px 18px calc(20px + env(safe-area-inset-bottom)) !important;
    overscroll-behavior: contain;
  }

  body.bmk-storefront-ds .bmk-quickview-close {
    position: absolute !important;
  }

  /* These mobile quick-view properties were pinned by the legacy stylesheet. */
  body.bmk-storefront-ds .bmk-qv-add {
    border-radius: var(--sf-control-radius) !important;
    -webkit-text-fill-color: currentColor !important;
  }

  body.bmk-storefront-ds .bmk-qv-add:not(:disabled):not([aria-disabled="true"]) {
    background: var(--sf-active) !important;
  }

  body.bmk-storefront-ds .bmk-qv-add:not(:disabled):not([aria-disabled="true"]):hover {
    background: var(--sf-active-hover) !important;
  }

  body.bmk-storefront-ds .bmk-qv-add:is(:disabled, [aria-disabled="true"]) {
    background: var(--sf-subtle) !important;
  }

  body.bmk-storefront-ds .bmk-qv-heart {
    border-color: var(--sf-line) !important;
  }

  body.bmk-storefront-ds .bmk-qv-heart.is-active {
    border-color: var(--sf-active) !important;
    background: var(--sf-active) !important;
    color: var(--sf-active-ink) !important;
  }

  body.bmk-storefront-ds .bmk-drawer:where([data-drawer="cart"], [data-drawer="account"], [data-drawer="wishlist"]) {
    inset: auto 0 0;
    width: 100% !important;
    max-width: 100% !important;
    height: min(86vh, 720px);
    height: min(86dvh, 720px);
    border-start-start-radius: var(--sf-card-radius);
    border-start-end-radius: var(--sf-card-radius);
    overflow: hidden;
    transform: translateY(105%);
  }

  body.bmk-storefront-ds .bmk-drawer:where([data-drawer="cart"], [data-drawer="account"], [data-drawer="wishlist"]).is-open {
    transform: translateY(0);
  }

  body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-heading {
    display: flex;
    flex-wrap: wrap;
  }

  body.bmk-storefront-ds [data-checkout-page] .bmk-checkout-heading .bmk-btn {
    margin: 0;
  }

  body.bmk-storefront-ds .bmk-snap-consent {
    width: min(340px, calc(100% - 16px));
    inset-inline-end: 8px;
    bottom: calc(var(--sf-mobile-nav-height, 58px) + 6px + env(safe-area-inset-bottom));
    padding: 9px 11px;
  }

  body.bmk-storefront-ds .bmk-snap-consent p {
    margin-block: 3px 7px;
    font-size: 12px;
    line-height: 1.45;
  }
}
body.bmk-storefront-ds .bmk-sticky-buy {
  display: none;
}

body.bmk-storefront-ds .bmk-sar-symbol {
  display: inline;
  width: auto;
  height: auto;
  margin-inline-start: .25em;
  background: none;
  -webkit-mask: none;
  mask: none;
  white-space: nowrap;
}

body.bmk-storefront-ds .bmk-sar-symbol::before {
  content: 'ر.س';
  font-size: .68em;
  font-weight: 700;
}

html[lang="en"] body.bmk-storefront-ds .bmk-sar-symbol::before {
  content: 'SAR';
}

body.bmk-storefront-ds .bmk-accordion-body a {
  color: var(--sf-ink);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: var(--sf-focus);
}

@media (max-width: 767px) {
  body.bmk-storefront-ds:not(.bmk-lock):not(:has(.bmk-snap-consent:not([hidden]))) .bmk-sticky-buy:not([hidden]) {
    position: fixed;
    inset-inline: 0;
    bottom: calc(58px + env(safe-area-inset-bottom));
    z-index: 59;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    padding: 8px 16px;
    border-block-start: 1px solid var(--sf-line);
    background: var(--sf-surface);
    box-shadow: 0 -7px 20px rgba(0, 0, 0, .08);
  }

  body.bmk-storefront-ds .bmk-sticky-buy-price {
    white-space: nowrap;
    font-size: 18px;
  }

  body.bmk-storefront-ds .bmk-sticky-buy-price.has-sale {
    color: var(--sf-sale);
  }

  body.bmk-storefront-ds:has(.bmk-sticky-buy:not([hidden])) .bmk-footer {
    padding-block-end: 120px;
  }
}
