/* Mobile fixes for viewport geometry, scrolling and touch interactions. */
@media (max-width: 900px) {
  html,
  body {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body .t2c-custom-order-promo,
  body .t2c-custom-order-promo__wrap,
  body .t2c-custom-order-promo__copy,
  body .t2c-custom-order-promo__copy > *,
  body .t2c-custom-order-promo__steps,
  body .t2c-custom-order-promo__steps li,
  body .t2c-custom-order-promo__actions {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body .t2c-custom-order-promo__copy {
    padding: 28px 20px !important;
    overflow: hidden !important;
  }

  body .t2c-custom-order-promo__copy h2,
  body .t2c-custom-order-promo__copy p,
  body .t2c-custom-order-promo__steps :where(strong, small) {
    overflow-wrap: anywhere !important;
  }

  body .t2c-custom-order-promo__actions {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body .t2c-profile.t2c-profile,
  html body .t2c-admin.t2c-admin,
  html body .t2c-admin-user-modal.t2c-admin-user-modal,
  html body .t2c-modal.t2c-modal {
    align-items: flex-start !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior-y: contain !important;
    touch-action: pan-y !important;
    -webkit-overflow-scrolling: touch !important;
  }

  /* Beat legacy modal-lock selectors that set overflow:hidden with !important. */
  html body.t2c-modal-open .t2c-profile.t2c-profile.t2c-profile,
  html body.t2c-modal-open .t2c-admin.t2c-admin.t2c-admin,
  html body.t2c-modal-open .t2c-admin-user-modal.t2c-admin-user-modal.t2c-admin-user-modal,
  html body.t2c-modal-open .t2c-modal.t2c-modal.t2c-modal {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    touch-action: pan-y !important;
    -webkit-overflow-scrolling: touch !important;
  }

  html body .t2c-profile.t2c-profile .t2c-profile__dialog,
  html body .t2c-admin.t2c-admin .t2c-admin__dialog {
    display: grid !important;
    grid-template-rows: auto auto !important;
    align-content: start !important;
    height: auto !important;
    min-height: calc(100dvh - 16px) !important;
    max-height: none !important;
    overflow: visible !important;
  }

  html body .t2c-profile.t2c-profile .t2c-profile__dialog .t2c-profile__shell,
  html body .t2c-admin.t2c-admin .t2c-admin__dialog > .t2c-admin__layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    align-content: start !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  html body .t2c-profile.t2c-profile :where(.t2c-profile__sidebar, .t2c-profile__main, .t2c-profile__content),
  html body .t2c-admin.t2c-admin :where(.t2c-admin__nav, .t2c-admin__workspace) {
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    touch-action: pan-y !important;
  }

  html body .t2c-admin.t2c-admin .t2c-admin__nav-footer {
    margin-top: 10px !important;
    padding-top: 0 !important;
  }

  html body .t2c-admin-user-modal.t2c-admin-user-modal {
    padding: 10px !important;
  }

  html body .t2c-admin-user-modal.t2c-admin-user-modal .t2c-admin-user-modal__dialog {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 auto !important;
    overflow: visible !important;
    overscroll-behavior: auto !important;
    touch-action: pan-y !important;
  }

  html body .t2c-modal.t2c-modal {
    justify-content: flex-start !important;
    padding: 8px !important;
  }

  html body .t2c-modal.t2c-modal .t2c-dialog {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    margin: auto 0 !important;
    overflow-x: hidden !important;
    overflow-y: visible !important;
    touch-action: pan-y !important;
  }

  html body .t2c-profile-product,
  html body .t2c-profile-product__body,
  html body .t2c-profile-product__info,
  html body .t2c-profile-product__info section {
    min-width: 0 !important;
    max-width: 100% !important;
    color: #fff8f3 !important;
    -webkit-text-fill-color: #fff8f3 !important;
  }

  html body .t2c-profile-product :where(h3, h4, p, span, li, b, strong),
  html body .t2c-modal.t2c-modal :where(h2, h3, p, label, span, strong, output) {
    color: #fff8f3 !important;
    -webkit-text-fill-color: #fff8f3 !important;
    opacity: 1 !important;
  }

  html body .t2c-profile.t2c-profile .t2c-profile-product.t2c-profile-product :where(h3, h4, p, span, li, b, strong) {
    color: #fff8f3 !important;
    -webkit-text-fill-color: #fff8f3 !important;
    opacity: 1 !important;
  }

  html body.t2c-market-page.t2c-single-page .t2c-market__categories > button,
  html body.t2c-market-page.t2c-single-page .t2c-market__categories > button.is-active {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    height: auto !important;
    min-height: 46px !important;
    max-height: none !important;
    padding: 10px 14px !important;
    text-align: left !important;
  }

  html body.t2c-market-page.t2c-single-page .t2c-market__categories > button > span:first-child {
    display: block !important;
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: 100% !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  html body.t2c-market-page.t2c-single-page .t2c-market__categories > button > small {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: 42% !important;
    margin-left: auto !important;
    text-align: right !important;
  }

  html body.t2c-market-page.t2c-single-page .t2c-market-card__media {
    aspect-ratio: 4 / 3 !important;
    background: rgba(255, 244, 240, .07) !important;
  }

  html body.t2c-market-page.t2c-single-page .t2c-market-card__media img {
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
  }

  /* Keep every custom page inside the actual layout viewport. Using 100vw here
     included the desktop scrollbar and caused a visible 15px horizontal shift. */
  body.t2c-single-page,
  body.t2c-single-page > main,
  body.t2c-single-page > main > section {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.t2c-single-page :where(img, video, iframe, input, select, textarea, button) {
    max-width: 100% !important;
  }

  body.t2c-single-page :where(main, section, article, aside, div, nav) {
    min-width: 0 !important;
  }
}

/* Compact selectable cart and product-first checkout confirmation. */
@media (max-width: 640px) {
  html body.t2c-single-page .t2c-profile .t2c-cart-layout {
    gap: 12px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-side {
    position: sticky !important;
    top: 0 !important;
    z-index: 4 !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-summary {
    gap: 10px !important;
    padding: 14px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-summary h3 {
    font-size: 18px !important;
    margin: 0 !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-summary button {
    min-height: 46px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-summary button:disabled {
    cursor: not-allowed !important;
    opacity: .46 !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-select-all {
    grid-template-columns: 20px minmax(0, 1fr) auto !important;
    padding: 10px 12px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-item {
    align-items: start !important;
    gap: 8px 10px !important;
    grid-template-areas:
      "select image main remove"
      "select image quantity buy"
      "select image total buy" !important;
    grid-template-columns: 22px 76px minmax(0, 1fr) 72px !important;
    padding: 11px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-item:not(.is-selected) {
    opacity: .72 !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-item > img {
    border-radius: 10px !important;
    height: 76px !important;
    object-fit: cover !important;
    width: 76px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-item__main h3 {
    font-size: 15px !important;
    line-height: 1.2 !important;
    margin: 0 0 4px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-item__main p {
    font-size: 11px !important;
    line-height: 1.3 !important;
    margin: 1px 0 !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-item__price {
    display: none !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-edit {
    min-height: 30px !important;
    margin-top: 6px !important;
    padding: 0 9px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-qty {
    align-self: end !important;
    grid-area: quantity !important;
    grid-template-columns: 29px 32px 29px !important;
    justify-self: start !important;
    min-height: 34px !important;
    width: 90px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-item__total {
    align-self: start !important;
    font-size: 15px !important;
    grid-area: total !important;
    justify-self: start !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-buy {
    align-self: end !important;
    grid-area: buy !important;
    min-height: 38px !important;
    padding: 0 8px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-checkout-review__items li:not(.t2c-checkout-review__delivery) {
    gap: 10px !important;
    grid-template-columns: 48px minmax(0, 1fr) auto !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-checkout-review__thumb {
    height: 48px !important;
    width: 48px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-checkout-review__items li strong {
    font-size: 13px !important;
  }
}

/* Reliable contact launcher, mobile cart order and cache-safe account notices. */
html body .t2c-contact-float:not([open]) .t2c-contact-float__links {
  animation: none !important;
  clip-path: inset(100% 0 0 0 round 15px) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translateY(10px) scale(.96) !important;
  visibility: hidden !important;
}

html body .t2c-contact-float[open] .t2c-contact-float__links {
  clip-path: inset(0 0 0 0 round 15px) !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: translateY(0) scale(1) !important;
  visibility: visible !important;
}

html body .t2c-contact-float[open] summary i {
  transform: rotate(45deg) !important;
}

html body.t2c-single-page .t2c-profile button.t2c-custom-order-profile-note {
  appearance: none !important;
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 38px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 78px !important;
  padding: 13px 15px !important;
  border: 1px solid rgba(248, 177, 204, .36) !important;
  border-radius: 13px !important;
  background: linear-gradient(135deg, rgba(157, 54, 96, .78), rgba(66, 25, 42, .94)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 12px 28px rgba(18, 6, 12, .22) !important;
  color: #fff8f3 !important;
  -webkit-text-fill-color: #fff8f3 !important;
  font: inherit !important;
  text-align: left !important;
  white-space: normal !important;
}

html body.t2c-single-page .t2c-profile .t2c-custom-order-profile-note__copy {
  display: grid !important;
  gap: 3px !important;
  min-width: 0 !important;
}

html body.t2c-single-page .t2c-profile .t2c-custom-order-profile-note__copy :where(em, b, small) {
  display: block !important;
  margin: 0 !important;
  overflow-wrap: anywhere !important;
  white-space: normal !important;
}

html body.t2c-single-page .t2c-profile .t2c-custom-order-profile-note__copy em {
  color: #f5b8ce !important;
  -webkit-text-fill-color: #f5b8ce !important;
}

html body.t2c-single-page .t2c-profile .t2c-custom-order-profile-note__copy b {
  color: #fff8f3 !important;
  -webkit-text-fill-color: #fff8f3 !important;
}

html body.t2c-single-page .t2c-profile .t2c-custom-order-profile-note__copy small {
  color: rgba(255, 239, 233, .78) !important;
  -webkit-text-fill-color: rgba(255, 239, 233, .78) !important;
}

/* Shared-catalog controls stay usable on both desktop and narrow phones. */
html body.t2c-single-page .t2c-admin .t2c-admin__section-actions {
  display: grid !important;
  grid-template-columns: minmax(290px, 1fr) auto !important;
  gap: 9px !important;
  width: min(100%, 570px) !important;
  margin-left: auto !important;
}

html body.t2c-single-page .t2c-admin .t2c-admin__section-actions form,
html body.t2c-single-page .t2c-admin .t2c-admin__category-create {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 8px !important;
  min-width: 0 !important;
}

html body.t2c-single-page .t2c-admin .t2c-admin__section-actions input,
html body.t2c-single-page .t2c-admin .t2c-admin__category-create input {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 42px !important;
  padding: 9px 12px !important;
  border: 1px solid rgba(255, 225, 232, .22) !important;
  border-radius: 10px !important;
  background: rgba(19, 9, 14, .72) !important;
  color: #fff8f3 !important;
  -webkit-text-fill-color: #fff8f3 !important;
  font: inherit !important;
}

html body.t2c-single-page .t2c-admin .t2c-admin__category-create button,
html body.t2c-single-page .t2c-admin .t2c-admin__section-actions button {
  min-height: 42px !important;
  margin: 0 !important;
  white-space: nowrap !important;
}

@media (max-width: 900px) {
  html body.t2c-single-page .t2c-profile .t2c-cart-layout {
    grid-template-areas: "summary" "items" !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-side {
    grid-area: summary !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-cart-list {
    grid-area: items !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__catalog-tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    overflow: visible !important;
    gap: 8px !important;
    padding: 12px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__section-actions {
    grid-template-columns: minmax(0, 1fr) auto !important;
    width: 100% !important;
    margin: 4px 0 0 !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__main {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__products {
    max-height: min(52vh, 520px) !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__actions {
    position: sticky !important;
    z-index: 5 !important;
    bottom: 8px !important;
    padding: 10px !important;
    border: 1px solid rgba(255, 225, 232, .16) !important;
    border-radius: 13px !important;
    background: rgba(43, 22, 30, .94) !important;
    box-shadow: 0 -8px 24px rgba(13, 5, 9, .28) !important;
  }
}

@media (max-width: 560px) {
  html body.t2c-single-page .t2c-profile button.t2c-custom-order-profile-note {
    grid-template-columns: 34px minmax(0, 1fr) !important;
    padding: 12px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-custom-order-profile-note > i {
    display: none !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__section-actions,
  html body.t2c-single-page .t2c-admin .t2c-admin__section-actions form,
  html body.t2c-single-page .t2c-admin .t2c-admin__category-create,
  html body.t2c-single-page .t2c-admin .t2c-admin__split,
  html body.t2c-single-page .t2c-admin .t2c-admin__actions {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__section-actions button,
  html body.t2c-single-page .t2c-admin .t2c-admin__category-create button {
    width: 100% !important;
  }
}

/* Exact optical centering for favorite and cart counters 2026.16. */
html body.t2c-single-page .t2c-profile .t2c-count-badge {
  box-sizing: border-box !important;
  display: inline-block !important;
  line-height: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: relative !important;
  text-align: center !important;
  vertical-align: middle !important;
}

html body.t2c-single-page .t2c-profile .t2c-count-badge > span {
  align-items: center !important;
  display: flex !important;
  font-variant-numeric: tabular-nums !important;
  height: 100% !important;
  inset: 0 !important;
  justify-content: center !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  position: absolute !important;
  text-align: center !important;
  transform: none !important;
  width: 100% !important;
}

@media (max-width: 820px) {
  /* Keep navigation on the lower header row while providing comfortable taps. */
  html body.t2c-single-page .t2c-site-header,
  html body.t2c-single-page .t2c-site-header.is-scrolled {
    grid-template-rows: 44px 44px !important;
    min-height: 98px !important;
  }

  html body.t2c-single-page .t2c-site-nav {
    box-sizing: border-box !important;
    display: flex !important;
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    align-items: stretch !important;
    align-self: stretch !important;
    justify-content: space-between !important;
    justify-self: stretch !important;
    gap: 2px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 2px !important;
    overflow: visible !important;
  }

  html body.t2c-single-page .t2c-site-nav a {
    display: flex !important;
    flex: 1 1 0 !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    min-height: 44px !important;
    padding: 8px 1px !important;
    font-size: clamp(12px, 3.35vw, 13.5px) !important;
    line-height: 1.1 !important;
    text-align: center !important;
    white-space: nowrap !important;
  }

  html body.t2c-single-page .t2c-site-nav a::after {
    inset: auto auto 5px 50% !important;
    bottom: 5px !important;
    width: 34px !important;
    height: 3px !important;
    border-radius: 999px !important;
    z-index: 1 !important;
  }

  html body.t2c-single-page .t2c-profile-open,
  html body.t2c-single-page .t2c-profile-open.is-guest {
    box-sizing: border-box !important;
    right: 10px !important;
    top: 5px !important;
    width: auto !important;
    min-width: 116px !important;
    max-width: none !important;
    min-height: 44px !important;
    padding: 0 16px 0 14px !important;
    gap: 9px !important;
    justify-content: center !important;
  }

  html body.t2c-single-page .t2c-profile-open.has-count {
    min-width: 166px !important;
  }

  html body.t2c-single-page .t2c-profile-open span {
    display: inline !important;
    font-size: 15px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  html body.t2c-single-page .t2c-profile-open svg {
    flex: 0 0 19px !important;
    width: 19px !important;
    height: 19px !important;
  }

  /* The account counter is part of the control, so the outline/background must
     grow with it instead of clipping the counter against a fixed button width. */
  html body.t2c-single-page .t2c-profile-open > b[data-t2c-profile-count] {
    box-sizing: border-box !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 28px !important;
    height: 28px !important;
    padding: 0 8px !important;
    line-height: 1 !important;
  }

  html body.t2c-single-page .t2c-profile-open > b[data-t2c-profile-count][hidden] {
    display: none !important;
  }

  /* Match the current desktop CTA instead of falling back to the old cream button. */
  html body.t2c-single-page .t2c-about__order {
    border: 1px solid rgba(255, 220, 239, .34) !important;
    background: linear-gradient(135deg, #cc5a83, #a83c65) !important;
    color: #fff !important;
    box-shadow: 0 9px 22px rgba(47, 13, 28, .27) !important;
  }

  html body.t2c-single-page .t2c-about__order:hover,
  html body.t2c-single-page .t2c-about__order:focus-visible,
  html body.t2c-single-page .t2c-about__order:active {
    background: linear-gradient(135deg, #de7196, #bb496f) !important;
    box-shadow: 0 12px 26px rgba(47, 13, 28, .36) !important;
  }
}

@media (max-width: 900px) {
  /* Login is content-sized; registration can still grow and scroll when needed. */
  html body .t2c-profile:has(.t2c-profile__dialog.is-auth) {
    align-items: center !important;
    justify-content: center !important;
    padding: 10px !important;
  }

  html body .t2c-profile .t2c-profile__dialog.is-auth {
    width: min(100%, 580px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: calc(100dvh - 20px) !important;
    margin: auto !important;
    border-radius: 20px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  html body .t2c-profile .t2c-profile__dialog.is-auth .t2c-profile__head {
    border-radius: 20px 20px 0 0 !important;
  }

  html body .t2c-profile .t2c-profile__dialog.is-auth :where(
    .t2c-profile__shell,
    .t2c-profile__main,
    .t2c-profile__content
  ) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  /* Checkout, fulfillment and confirmation use the dark confectionery palette. */
  html body .t2c-profile :where(
    .t2c-checkout-form,
    .t2c-checkout-review,
    .t2c-checkout-review__main,
    .t2c-checkout-review__details,
    .t2c-checkout-review__aside,
    .t2c-checkout-fulfillment
  ) {
    color: #fff8f3 !important;
    -webkit-text-fill-color: #fff8f3 !important;
  }

  html body .t2c-profile .t2c-checkout-review__main {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  html body .t2c-profile :where(
    .t2c-checkout-review__details,
    .t2c-checkout-review__aside,
    .t2c-checkout-fulfillment
  ) {
    background: linear-gradient(145deg, rgba(72, 38, 51, .98), rgba(42, 21, 30, .99)) !important;
    border: 1px solid rgba(255, 221, 232, .22) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 16px 38px rgba(10, 4, 7, .25) !important;
  }

  html body .t2c-profile .t2c-checkout-review :where(h3, h4, dd, b, strong),
  html body .t2c-profile .t2c-checkout-fulfillment :where(h3, b, strong) {
    color: #fff8f3 !important;
    -webkit-text-fill-color: #fff8f3 !important;
    opacity: 1 !important;
  }

  html body .t2c-profile :where(
    .t2c-checkout-review__kicker,
    .t2c-checkout-review dt,
    .t2c-checkout-review__items span,
    .t2c-checkout-review__aside p,
    .t2c-checkout-review__aside span,
    .t2c-checkout-review__aside small,
    .t2c-checkout-steps,
    .t2c-checkout-fulfillment__head p,
    .t2c-checkout-delivery-address > span,
    .t2c-checkout-delivery-address small,
    .t2c-checkout-pickup > span
  ) {
    color: rgba(255, 235, 231, .72) !important;
    -webkit-text-fill-color: rgba(255, 235, 231, .72) !important;
    opacity: 1 !important;
  }

  html body .t2c-profile .t2c-checkout-steps b,
  html body .t2c-profile .t2c-checkout-review__details h4,
  html body .t2c-profile .t2c-checkout-review__aside > strong,
  html body .t2c-profile .t2c-checkout-review__items li > strong {
    color: #f5aec7 !important;
    -webkit-text-fill-color: #f5aec7 !important;
  }

  html body .t2c-profile .t2c-checkout-review__details dl > div,
  html body .t2c-profile .t2c-checkout-review__items li,
  html body .t2c-profile .t2c-checkout-legal {
    border-color: rgba(255, 225, 235, .15) !important;
  }

  html body .t2c-profile .t2c-checkout-legal a {
    color: #f5aec7 !important;
    -webkit-text-fill-color: #f5aec7 !important;
  }

  html body .t2c-profile .t2c-checkout-fulfillment__choices button {
    background: rgba(25, 12, 18, .72) !important;
    border: 1px solid rgba(255, 224, 234, .2) !important;
    color: #fff8f3 !important;
    -webkit-text-fill-color: #fff8f3 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035) !important;
  }

  html body .t2c-profile .t2c-checkout-fulfillment__choices button span {
    color: rgba(255, 235, 231, .68) !important;
    -webkit-text-fill-color: rgba(255, 235, 231, .68) !important;
  }

  html body .t2c-profile .t2c-checkout-fulfillment__choices button.is-active {
    background: linear-gradient(135deg, #c75482, #9f3762) !important;
    border-color: rgba(255, 226, 238, .5) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    box-shadow: 0 9px 24px rgba(88, 20, 49, .3), inset 0 1px 0 rgba(255, 255, 255, .12) !important;
  }

  html body .t2c-profile .t2c-checkout-fulfillment__choices button.is-active span {
    color: rgba(255, 255, 255, .86) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, .86) !important;
  }

  html body .t2c-profile .t2c-checkout-delivery-address input,
  html body .t2c-profile .t2c-checkout-pickup strong {
    background: rgba(18, 8, 13, .72) !important;
    border: 1px solid rgba(255, 224, 234, .2) !important;
    color: #fff8f3 !important;
    -webkit-text-fill-color: #fff8f3 !important;
  }

  html body .t2c-profile .t2c-checkout-delivery-address input::placeholder {
    color: rgba(255, 235, 231, .5) !important;
    -webkit-text-fill-color: rgba(255, 235, 231, .5) !important;
    opacity: 1 !important;
  }

  /* Payment chooser is a dark, readable sheet instead of a white legacy card. */
  html body .t2c-profile .t2c-payment-modal {
    background: rgba(13, 6, 10, .82) !important;
    -webkit-backdrop-filter: blur(12px) saturate(112%) !important;
    backdrop-filter: blur(12px) saturate(112%) !important;
  }

  html body .t2c-profile .t2c-payment-modal__card {
    background: linear-gradient(155deg, #452633, #28141d) !important;
    border: 1px solid rgba(255, 222, 234, .25) !important;
    border-radius: 20px !important;
    box-shadow: 0 28px 80px rgba(5, 2, 4, .64), inset 0 1px 0 rgba(255, 255, 255, .06) !important;
    color: #fff8f3 !important;
    -webkit-text-fill-color: #fff8f3 !important;
  }

  html body .t2c-profile .t2c-payment-modal__head {
    background: transparent !important;
    border: 0 !important;
  }

  html body .t2c-profile .t2c-payment-modal :where(h3, b, strong, label, button) {
    color: #fff8f3 !important;
    -webkit-text-fill-color: #fff8f3 !important;
    opacity: 1 !important;
  }

  html body .t2c-profile .t2c-payment-modal :where(p, span, small, legend) {
    color: rgba(255, 235, 231, .72) !important;
    -webkit-text-fill-color: rgba(255, 235, 231, .72) !important;
    opacity: 1 !important;
  }

  html body .t2c-profile .t2c-payment-modal__head > button,
  html body .t2c-profile .t2c-payment-modal__actions .t2c-profile-secondary {
    background: rgba(255, 241, 235, .08) !important;
    border: 1px solid rgba(255, 225, 235, .23) !important;
    color: #fff8f3 !important;
    -webkit-text-fill-color: #fff8f3 !important;
  }

  html body .t2c-profile .t2c-payment-methods label {
    background: rgba(20, 9, 15, .66) !important;
    border: 1px solid rgba(255, 224, 234, .18) !important;
    color: #fff8f3 !important;
    -webkit-text-fill-color: #fff8f3 !important;
  }

  html body .t2c-profile .t2c-payment-methods label:has(input:checked) {
    background: linear-gradient(145deg, rgba(184, 76, 127, .48), rgba(101, 37, 67, .56)) !important;
    border-color: rgba(247, 174, 204, .62) !important;
    box-shadow: 0 8px 22px rgba(8, 2, 5, .2) !important;
  }

  html body .t2c-profile .t2c-payment-methods__icon {
    background: rgba(255, 235, 244, .1) !important;
  }

  html body .t2c-profile .t2c-payment-methods__icon svg {
    stroke: #f5aec7 !important;
  }

  html body .t2c-profile .t2c-payment-methods label > i {
    background: transparent !important;
    border-color: rgba(255, 238, 247, .48) !important;
  }

  html body .t2c-profile .t2c-payment-methods input:checked ~ i {
    background: #f5aec7 !important;
    border-color: #f5aec7 !important;
    box-shadow: inset 0 0 0 3px #4a2537 !important;
  }
}

@media (max-width: 560px) {
  body .t2c-custom-order-promo {
    padding-right: 8px !important;
    padding-left: 8px !important;
  }

  body .t2c-custom-order-promo__copy {
    padding: 24px 16px !important;
  }

  body .t2c-custom-order-promo__copy h2 {
    font-size: clamp(31px, 9vw, 38px) !important;
  }
}

/* Payment dialog portal 2026.12: stay inside the account frame without a black workspace block. */
html body.t2c-single-page .t2c-profile.is-open > .t2c-payment-modal.is-open:not([hidden]) {
  box-sizing: border-box !important;
  position: absolute !important;
  inset: var(--t2c-payment-dialog-top, 10px) var(--t2c-payment-dialog-right, 10px) var(--t2c-payment-dialog-bottom, 10px) var(--t2c-payment-dialog-left, 10px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: clamp(10px, 2.2vw, 24px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  border-radius: 24px !important;
  background: rgba(15, 7, 11, .32) !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  z-index: 2147483000 !important;
}

html body.t2c-single-page .t2c-profile.is-open > .t2c-payment-modal.is-open:not([hidden]) .t2c-payment-modal__card {
  width: min(100%, 560px) !important;
  max-height: calc(100% - 20px) !important;
  margin: auto !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

/* Checkout recovery action 2026.14: readable and clearly clickable in the dark account theme. */
html body.t2c-single-page .t2c-profile .t2c-profile-empty--action {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

html body.t2c-single-page .t2c-profile .t2c-profile-empty--action > span {
  color: #fff8f3 !important;
  -webkit-text-fill-color: #fff8f3 !important;
  opacity: 1 !important;
}

html body.t2c-single-page .t2c-profile .t2c-profile-empty--action > button {
  appearance: none !important;
  min-height: 40px !important;
  padding: 9px 16px !important;
  border: 1px solid rgba(255, 224, 237, .42) !important;
  border-radius: 11px !important;
  background: linear-gradient(135deg, #cf5d8c, #9f3864) !important;
  box-shadow: 0 9px 22px rgba(75, 18, 42, .3) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font: inherit !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  cursor: pointer !important;
  opacity: 1 !important;
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease !important;
}

html body.t2c-single-page .t2c-profile .t2c-profile-empty--action > button:hover,
html body.t2c-single-page .t2c-profile .t2c-profile-empty--action > button:focus-visible {
  background: linear-gradient(135deg, #df74a0, #b44875) !important;
  box-shadow: 0 12px 27px rgba(75, 18, 42, .38), 0 0 0 3px rgba(244, 166, 198, .17) !important;
  transform: translateY(-1px) !important;
  outline: none !important;
}

@media (max-width: 640px) {
  html body.t2c-single-page .t2c-profile.is-open > .t2c-payment-modal.is-open:not([hidden]) {
    border-radius: 12px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-profile-empty--action > button {
    width: 100% !important;
  }
}

@media (hover: none) and (pointer: coarse) {
  .t2c-contact-float:not([open]) .t2c-contact-float__links {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(10px) scale(.96) !important;
  }

  .t2c-contact-float[open] .t2c-contact-float__links {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) scale(1) !important;
  }
}

/* Checkout contrast guardrail 2026.6: keep every checkout step readable on all viewports. */
html body.t2c-single-page .t2c-profile :where(
  .t2c-checkout-form,
  .t2c-checkout-review,
  .t2c-checkout-review__main,
  .t2c-checkout-review__details,
  .t2c-checkout-review__aside,
  .t2c-checkout-fulfillment
) {
  color: #fff8f3 !important;
  -webkit-text-fill-color: #fff8f3 !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-review__main {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html body.t2c-single-page .t2c-profile :where(
  .t2c-checkout-review__details,
  .t2c-checkout-review__aside,
  .t2c-checkout-fulfillment
) {
  background: linear-gradient(145deg, rgba(72, 38, 51, .98), rgba(42, 21, 30, .99)) !important;
  border: 1px solid rgba(255, 221, 232, .22) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 16px 38px rgba(10, 4, 7, .25) !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-review :where(h3, h4, dd, b, strong),
html body.t2c-single-page .t2c-profile .t2c-checkout-fulfillment :where(h3, b, strong) {
  color: #fff8f3 !important;
  -webkit-text-fill-color: #fff8f3 !important;
  opacity: 1 !important;
}

html body.t2c-single-page .t2c-profile :where(
  .t2c-checkout-review__kicker,
  .t2c-checkout-review dt,
  .t2c-checkout-review__items span,
  .t2c-checkout-review__aside p,
  .t2c-checkout-review__aside span,
  .t2c-checkout-review__aside small,
  .t2c-checkout-steps,
  .t2c-checkout-fulfillment__head p,
  .t2c-checkout-delivery-address > span,
  .t2c-checkout-delivery-address small,
  .t2c-checkout-pickup > span
) {
  color: rgba(255, 235, 231, .76) !important;
  -webkit-text-fill-color: rgba(255, 235, 231, .76) !important;
  opacity: 1 !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-steps b,
html body.t2c-single-page .t2c-profile .t2c-checkout-review__kicker,
html body.t2c-single-page .t2c-profile .t2c-checkout-review__details h4,
html body.t2c-single-page .t2c-profile .t2c-checkout-review__aside > strong,
html body.t2c-single-page .t2c-profile .t2c-checkout-review__items li > strong,
html body.t2c-single-page .t2c-profile .t2c-checkout-fulfillment__head p {
  color: #f5aec7 !important;
  -webkit-text-fill-color: #f5aec7 !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-review__details dl > div,
html body.t2c-single-page .t2c-profile .t2c-checkout-review__items li,
html body.t2c-single-page .t2c-profile .t2c-checkout-legal {
  border-color: rgba(255, 225, 235, .15) !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-legal a {
  color: #f5aec7 !important;
  -webkit-text-fill-color: #f5aec7 !important;
  text-decoration-color: rgba(245, 174, 199, .55) !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-fulfillment__choices button {
  background: rgba(25, 12, 18, .72) !important;
  border: 1px solid rgba(255, 224, 234, .2) !important;
  color: #fff8f3 !important;
  -webkit-text-fill-color: #fff8f3 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035) !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-fulfillment__choices button span {
  color: rgba(255, 235, 231, .72) !important;
  -webkit-text-fill-color: rgba(255, 235, 231, .72) !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-fulfillment__choices button:is(:hover, :focus-visible) {
  background: rgba(111, 42, 72, .58) !important;
  border-color: rgba(247, 174, 204, .5) !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-fulfillment__choices button.is-active {
  background: linear-gradient(135deg, #c75482, #9f3762) !important;
  border-color: rgba(255, 226, 238, .5) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 9px 24px rgba(88, 20, 49, .3), inset 0 1px 0 rgba(255, 255, 255, .12) !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-fulfillment__choices button.is-active span {
  color: rgba(255, 255, 255, .9) !important;
  -webkit-text-fill-color: rgba(255, 255, 255, .9) !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-delivery-address input,
html body.t2c-single-page .t2c-profile .t2c-checkout-pickup strong {
  background: rgba(18, 8, 13, .78) !important;
  border: 1px solid rgba(255, 224, 234, .22) !important;
  color: #fff8f3 !important;
  -webkit-text-fill-color: #fff8f3 !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-delivery-address input::placeholder {
  color: rgba(255, 235, 231, .55) !important;
  -webkit-text-fill-color: rgba(255, 235, 231, .55) !important;
  opacity: 1 !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-review__aside .t2c-profile-primary,
html body.t2c-single-page .t2c-profile .t2c-payment-modal__actions .t2c-profile-primary {
  background: linear-gradient(135deg, #cb5b89, #9e3763) !important;
  border-color: rgba(255, 221, 234, .42) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 10px 26px rgba(77, 18, 43, .34) !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-review__back.t2c-profile-secondary {
  background: linear-gradient(135deg, #cb5b89, #9e3763) !important;
  border: 1px solid rgba(255, 221, 234, .42) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 10px 24px rgba(77, 18, 43, .3) !important;
  font-weight: 800 !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-review__back.t2c-profile-secondary:hover,
html body.t2c-single-page .t2c-profile .t2c-checkout-review__back.t2c-profile-secondary:focus-visible {
  background: linear-gradient(135deg, #dc709d, #b24773) !important;
  border-color: rgba(255, 231, 240, .65) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 13px 28px rgba(77, 18, 43, .38) !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-modal {
  background: rgba(13, 6, 10, .84) !important;
  -webkit-backdrop-filter: blur(12px) saturate(112%) !important;
  backdrop-filter: blur(12px) saturate(112%) !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-modal__card {
  background: linear-gradient(155deg, #452633, #28141d) !important;
  border: 1px solid rgba(255, 222, 234, .25) !important;
  border-radius: 20px !important;
  box-shadow: 0 28px 80px rgba(5, 2, 4, .64), inset 0 1px 0 rgba(255, 255, 255, .06) !important;
  color: #fff8f3 !important;
  -webkit-text-fill-color: #fff8f3 !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-modal__head {
  background: transparent !important;
  border: 0 !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-modal :where(h3, b, strong, label, button) {
  color: #fff8f3 !important;
  -webkit-text-fill-color: #fff8f3 !important;
  opacity: 1 !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-modal :where(p, span, small, legend) {
  color: rgba(255, 235, 231, .76) !important;
  -webkit-text-fill-color: rgba(255, 235, 231, .76) !important;
  opacity: 1 !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-modal__head > button,
html body.t2c-single-page .t2c-profile .t2c-payment-modal__actions .t2c-profile-secondary {
  background: rgba(255, 241, 235, .08) !important;
  border: 1px solid rgba(255, 225, 235, .23) !important;
  color: #fff8f3 !important;
  -webkit-text-fill-color: #fff8f3 !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-methods label {
  background: rgba(20, 9, 15, .7) !important;
  border: 1px solid rgba(255, 224, 234, .18) !important;
  color: #fff8f3 !important;
  -webkit-text-fill-color: #fff8f3 !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-methods label:has(input:checked) {
  background: linear-gradient(145deg, rgba(184, 76, 127, .5), rgba(101, 37, 67, .58)) !important;
  border-color: rgba(247, 174, 204, .62) !important;
  box-shadow: 0 8px 22px rgba(8, 2, 5, .2) !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-methods__icon {
  background: rgba(255, 235, 244, .1) !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-methods__icon svg {
  stroke: #f5aec7 !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-methods label > i {
  background: transparent !important;
  border-color: rgba(255, 238, 247, .52) !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-methods input:checked ~ i {
  background: #f5aec7 !important;
  border-color: #f5aec7 !important;
  box-shadow: inset 0 0 0 3px #4a2537 !important;
}

@media (max-width: 760px) {
  html body.t2c-single-page .t2c-profile .t2c-checkout-review__details dl {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-checkout-review__details dl > div {
    border-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-checkout-review__details,
  html body.t2c-single-page .t2c-profile .t2c-checkout-review__aside,
  html body.t2c-single-page .t2c-profile .t2c-checkout-fulfillment {
    padding: 16px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-payment-modal__card {
    max-height: calc(100dvh - 20px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }
}

/* Payment modal viewport lock 2026.8: center independently of profile content scroll. */
html body.t2c-single-page .t2c-profile.is-open .t2c-profile__dialog.is-payment-open,
html body.t2c-single-page .t2c-profile.is-open .t2c-profile__dialog.is-payment-open .t2c-profile__main,
html body.t2c-single-page .t2c-profile.is-open .t2c-profile__dialog.is-payment-open .t2c-profile__content {
  animation: none !important;
  transform: none !important;
}

html body.t2c-single-page .t2c-profile.is-open .t2c-profile__dialog.is-payment-open {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

html body.t2c-single-page .t2c-profile.is-open .t2c-profile__dialog.is-payment-open .t2c-profile__main {
  position: relative !important;
  z-index: 2147482000 !important;
}

html body.t2c-single-page .t2c-profile.is-open .t2c-profile__dialog.is-payment-open .t2c-payment-modal.is-open:not([hidden]) {
  box-sizing: border-box !important;
  position: fixed !important;
  inset: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: clamp(10px, 2.2vw, 24px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  z-index: 2147483000 !important;
}

/* Delivery zones and counters 2026.15. */
html body.t2c-single-page .t2c-profile :where(.t2c-profile-actions, .t2c-profile-nav) .t2c-count-badge {
  -webkit-backdrop-filter: blur(12px) saturate(112%) !important;
  backdrop-filter: blur(12px) saturate(112%) !important;
  background: rgba(255, 236, 244, .14) !important;
  border: 1px solid rgba(255, 229, 239, .28) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08) !important;
  color: #fff7fa !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-layout {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(240px, .82fr) minmax(0, 1.18fr);
  margin-top: 18px;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-map {
  align-self: start;
  background: linear-gradient(145deg, rgba(70, 31, 48, .82), rgba(31, 13, 22, .9)) !important;
  border: 1px solid rgba(255, 218, 232, .18) !important;
  border-radius: 18px;
  box-shadow: 0 16px 34px rgba(9, 3, 7, .3), inset 0 1px 0 rgba(255, 255, 255, .06);
  margin: 0;
  overflow: hidden;
  padding: 8px;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-map img {
  border-radius: 13px;
  display: block;
  height: auto;
  width: 100%;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-map figcaption {
  color: #f4dce5 !important;
  font-size: 12px;
  font-weight: 750;
  padding: 10px 7px 4px;
  text-align: center;
  -webkit-text-fill-color: #f4dce5 !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-copy {
  display: grid;
  gap: 13px;
  min-width: 0;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-prices {
  display: grid;
  gap: 8px;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-prices > div {
  align-items: center;
  background: rgba(18, 8, 13, .5) !important;
  border: 1px solid rgba(255, 226, 236, .16) !important;
  border-radius: 11px;
  display: grid;
  gap: 10px;
  grid-template-columns: 13px minmax(0, 1fr) auto;
  padding: 10px 12px;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-prices i {
  border-radius: 999px;
  display: block;
  height: 30px;
  width: 6px;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-prices i.is-blue { background: #2258ea !important; }
html body.t2c-single-page .t2c-profile .t2c-checkout-zone-prices i.is-red { background: #ff3d42 !important; }
html body.t2c-single-page .t2c-profile .t2c-checkout-zone-prices i.is-yellow { background: #ffbd31 !important; }

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-prices span {
  display: grid;
  gap: 2px;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-prices :where(b, strong) {
  color: #fff8f3 !important;
  -webkit-text-fill-color: #fff8f3 !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-prices small {
  color: rgba(255, 235, 231, .65) !important;
  font-size: 11px;
  -webkit-text-fill-color: rgba(255, 235, 231, .65) !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-special {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-special span {
  background: rgba(255, 236, 244, .08) !important;
  border: 1px solid rgba(255, 226, 236, .16) !important;
  border-radius: 10px;
  color: rgba(255, 245, 242, .76) !important;
  display: grid;
  font-size: 11px;
  gap: 3px;
  padding: 9px 8px;
  text-align: center;
  -webkit-text-fill-color: rgba(255, 245, 242, .76) !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-zone-special b {
  color: #f5aec7 !important;
  font-size: 13px;
  -webkit-text-fill-color: #f5aec7 !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-delivery-address {
  margin-top: 0 !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-delivery-address > div {
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) minmax(96px, .34fr) auto;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-delivery-address button {
  background: rgba(193, 77, 126, .88) !important;
  border: 1px solid rgba(255, 226, 238, .38) !important;
  border-radius: 10px;
  color: #fff !important;
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  min-height: 46px;
  padding: 0 14px;
  -webkit-text-fill-color: #fff !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-delivery-quote {
  -webkit-backdrop-filter: blur(12px) saturate(112%);
  backdrop-filter: blur(12px) saturate(112%);
  background: rgba(255, 236, 244, .08) !important;
  border: 1px solid rgba(255, 226, 236, .17) !important;
  border-radius: 11px;
  display: grid;
  gap: 3px;
  min-height: 48px;
  padding: 11px 12px;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-delivery-quote b {
  color: #fff8f3 !important;
  font-size: 13px;
  -webkit-text-fill-color: #fff8f3 !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-delivery-quote span {
  color: rgba(255, 235, 231, .64) !important;
  font-size: 11px;
  -webkit-text-fill-color: rgba(255, 235, 231, .64) !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-delivery-quote.is-ready {
  background: rgba(85, 148, 111, .16) !important;
  border-color: rgba(150, 222, 177, .3) !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-delivery-quote.is-ready b {
  color: #c8f0d5 !important;
  -webkit-text-fill-color: #c8f0d5 !important;
}

html body.t2c-single-page .t2c-profile .t2c-checkout-delivery-quote.is-loading {
  opacity: .76;
}

@media (max-width: 760px) {
  html body.t2c-single-page .t2c-profile .t2c-checkout-zone-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  html body.t2c-single-page .t2c-profile .t2c-checkout-zone-map {
    margin-inline: auto;
    max-width: 430px;
    width: 100%;
  }
}

@media (max-width: 480px) {
  html body.t2c-single-page .t2c-profile .t2c-checkout-zone-special {
    grid-template-columns: minmax(0, 1fr);
  }

  html body.t2c-single-page .t2c-profile .t2c-checkout-zone-special span {
    align-items: center;
    grid-template-columns: 1fr auto;
    text-align: left;
  }

  html body.t2c-single-page .t2c-profile .t2c-checkout-delivery-address > div {
    grid-template-columns: minmax(0, 1fr);
  }
}

html body.t2c-single-page .t2c-profile.is-open .t2c-profile__dialog.is-payment-open .t2c-payment-modal__card {
  width: min(100%, 560px) !important;
  max-height: calc(100dvh - 20px) !important;
  margin: auto !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

/* Order and payment status palette 2026.9: dark, readable badges in every account view. */
html body.t2c-single-page .t2c-profile :where(.t2c-order-activity__status, .t2c-order-status-badge, .t2c-payment-status) {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 27px !important;
  padding: 5px 10px !important;
  border: 1px solid rgba(255,255,255,.24) !important;
  border-radius: 999px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 11px !important;
  font-style: normal !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  text-shadow: 0 1px 1px rgba(25,8,14,.28) !important;
  opacity: 1 !important;
}

html body.t2c-single-page .t2c-profile :where(.t2c-order-activity__status, .t2c-order-status-badge).is-new {
  background: linear-gradient(135deg, #b34c78, #7f2d50) !important;
  border-color: rgba(255, 194, 216, .45) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

html body.t2c-single-page .t2c-profile :where(.t2c-order-activity__status, .t2c-order-status-badge).is-cooking {
  background: linear-gradient(135deg, #9b642e, #6f401c) !important;
  border-color: rgba(255, 218, 169, .42) !important;
  color: #fff7df !important;
  -webkit-text-fill-color: #fff7df !important;
}

html body.t2c-single-page .t2c-profile :where(.t2c-order-activity__status, .t2c-order-status-badge).is-ready {
  background: linear-gradient(135deg, #37845f, #205b42) !important;
  border-color: rgba(184, 240, 207, .38) !important;
  color: #f1fff7 !important;
  -webkit-text-fill-color: #f1fff7 !important;
}

html body.t2c-single-page .t2c-profile :where(.t2c-order-activity__status, .t2c-order-status-badge).is-transit {
  background: linear-gradient(135deg, #3977a5, #244e72) !important;
  border-color: rgba(184, 222, 251, .4) !important;
  color: #f3faff !important;
  -webkit-text-fill-color: #f3faff !important;
}

html body.t2c-single-page .t2c-profile :where(.t2c-order-activity__status, .t2c-order-status-badge).is-complete {
  background: linear-gradient(135deg, #327a6b, #1f544b) !important;
  border-color: rgba(185, 235, 222, .38) !important;
  color: #effffb !important;
  -webkit-text-fill-color: #effffb !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-status.is-paid {
  background: linear-gradient(135deg, #32805a, #205940) !important;
  border-color: rgba(185, 238, 207, .4) !important;
  color: #f0fff6 !important;
  -webkit-text-fill-color: #f0fff6 !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-status.is-pending {
  background: linear-gradient(135deg, #c34255, #822637) !important;
  border-color: rgba(255, 190, 199, .5) !important;
  color: #fff7f8 !important;
  -webkit-text-fill-color: #fff7f8 !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-status.is-canceled {
  background: linear-gradient(135deg, #a92d42, #681b2a) !important;
  border-color: rgba(255, 177, 190, .48) !important;
  color: #fff5f7 !important;
  -webkit-text-fill-color: #fff5f7 !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-status.is-failed,
html body.t2c-single-page .t2c-profile .t2c-payment-status.is-unpaid {
  background: linear-gradient(135deg, #b13c4e, #742332) !important;
  border-color: rgba(255, 184, 194, .46) !important;
  color: #fff5f7 !important;
  -webkit-text-fill-color: #fff5f7 !important;
}

@media (max-width: 560px) {
  html body.t2c-single-page .t2c-profile :where(.t2c-order-activity__status, .t2c-order-status-badge, .t2c-payment-status) {
    max-width: 100% !important;
    white-space: normal !important;
  }
}

/* Payment workspace centering and official method logos 2026.10. */
@media (min-width: 901px) {
  html body.t2c-single-page .t2c-profile.is-open .t2c-profile__dialog.is-payment-open .t2c-payment-modal.is-open:not([hidden]) {
    inset: 0 var(--t2c-payment-workspace-right, 0px) 0 var(--t2c-payment-workspace-left, 0px) !important;
    width: auto !important;
  }
}

html body.t2c-single-page .t2c-profile .t2c-payment-methods label {
  grid-template-columns: 34px minmax(0, 1fr) 12px !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-methods__icon {
  width: 34px !important;
  height: 34px !important;
  padding: 4px !important;
  overflow: hidden !important;
  border: 1px solid rgba(240,174,196,.3) !important;
  border-radius: 9px !important;
  background: linear-gradient(145deg, #4a2936, #261720) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 3px 10px rgba(10,3,7,.22) !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-methods__icon img.t2c-payment-methods__logo {
  display: block !important;
  width: 26px !important;
  height: 26px !important;
  max-width: none !important;
  object-fit: contain !important;
}

html body.t2c-single-page .t2c-profile .t2c-payment-methods__icon svg {
  width: 20px !important;
  height: 20px !important;
}

/* Payment recovery 2026.15: visible deadline and safe return to YooKassa. */
html body.t2c-single-page .t2c-profile .t2c-order-payment-resume {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 18px !important;
  margin: 12px 14px 4px !important;
  padding: 13px 14px !important;
  border: 1px solid rgba(255, 190, 210, .28) !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, rgba(128, 38, 68, .42), rgba(61, 25, 38, .72)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05) !important;
}

html body.t2c-single-page .t2c-profile .t2c-order-payment-resume > div {
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  align-items: center !important;
  gap: 3px 12px !important;
  min-width: 0 !important;
}

html body.t2c-single-page .t2c-profile .t2c-order-payment-resume span {
  color: rgba(255, 239, 244, .76) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

html body.t2c-single-page .t2c-profile .t2c-order-payment-resume strong {
  color: #ffd1df !important;
  font-size: 20px !important;
  font-variant-numeric: tabular-nums !important;
  line-height: 1 !important;
}

html body.t2c-single-page .t2c-profile .t2c-order-payment-resume small {
  grid-column: 1 / -1 !important;
  color: rgba(255, 240, 244, .64) !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
}

html body.t2c-single-page .t2c-profile .t2c-order-payment-resume > a {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  min-height: 44px !important;
  padding: 0 17px !important;
  border: 1px solid rgba(255, 216, 232, .36) !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, #cf5b86, #a83a65) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-shadow: 0 8px 20px rgba(40, 8, 22, .28) !important;
}

html body.t2c-single-page .t2c-profile .t2c-order-payment-resume > a:hover,
html body.t2c-single-page .t2c-profile .t2c-order-payment-resume > a:focus-visible {
  background: linear-gradient(135deg, #df7098, #ba4771) !important;
  transform: translateY(-1px) !important;
}

html body.t2c-single-page .t2c-profile .t2c-order-payment-resume.is-expired > a {
  pointer-events: none !important;
  opacity: .48 !important;
}

/* Atelier balance 2026.15: a second real cake scene replaces the empty right gradient. */
@media (min-width: 901px) {
  html body.t2c-single-page .t2c-about-section {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
  }

  html body.t2c-single-page .t2c-about-section::after {
    content: "" !important;
    position: absolute !important;
    z-index: 1 !important;
    inset: 0 0 0 auto !important;
    display: block !important;
    width: 39% !important;
    pointer-events: none !important;
    background:
      linear-gradient(90deg, rgba(57, 32, 33, 0) 0%, rgba(57, 32, 33, .10) 24%, rgba(43, 24, 27, .24) 100%),
      url("../images/mt-custom-campaign-2026-v4.webp") right center / auto 78% no-repeat !important;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.28) 13%, #000 34%) !important;
    mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.28) 13%, #000 34%) !important;
    filter: saturate(.82) brightness(.72) contrast(1.04) !important;
  }

  html body.t2c-single-page .t2c-about__inner {
    position: relative !important;
    z-index: 2 !important;
  }
}

@media (max-width: 560px) {
  html body.t2c-single-page .t2c-profile .t2c-order-payment-resume {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
    margin: 10px 10px 3px !important;
    padding: 12px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-order-payment-resume > a {
    width: 100% !important;
    white-space: normal !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-payment-methods label {
    grid-template-columns: 32px minmax(0, 1fr) 12px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-payment-methods__icon {
    width: 32px !important;
    height: 32px !important;
    padding: 4px !important;
  }

  html body.t2c-single-page .t2c-profile .t2c-payment-methods__icon img.t2c-payment-methods__logo {
    width: 24px !important;
    height: 24px !important;
  }
}

/* Stable catalogue-category alignment in every product section. */
html body.t2c-market-page .t2c-market__categories > button > span:first-child {
  justify-self: stretch !important;
  width: 100% !important;
  max-width: none !important;
  text-align: left !important;
}

html body.t2c-market-page .t2c-market__categories > button:not(:has(> small)) {
  grid-template-columns: minmax(0, 1fr) !important;
}

html body.t2c-market-page .t2c-market__categories > button:not(:has(> small)) > span:first-child {
  grid-column: 1 !important;
  justify-self: stretch !important;
}

/* Admin section tabs wrap instead of pushing create/delete controls off-screen. */
html body.t2c-single-page .t2c-admin .t2c-admin__catalog-tabs {
  box-sizing: border-box !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  align-content: flex-start !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
  padding: 12px 16px !important;
}

html body.t2c-single-page .t2c-admin .t2c-admin__catalog-tabs > button {
  flex: 0 1 auto !important;
  min-width: 0 !important;
  max-width: min(220px, 100%) !important;
  height: auto !important;
  min-height: 44px !important;
  padding: 9px 16px !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

html body.t2c-single-page .t2c-admin .t2c-admin__catalog-tabs > .t2c-admin__section-actions {
  box-sizing: border-box !important;
  flex: 1 0 100% !important;
  grid-template-columns: minmax(260px, 1fr) auto !important;
  width: 100% !important;
  max-width: none !important;
  margin: 4px 0 0 !important;
}

@media (max-width: 640px) {
  html body.t2c-single-page .t2c-admin .t2c-admin__catalog-tabs > button {
    flex: 1 1 calc(50% - 4px) !important;
    max-width: none !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__catalog-tabs > .t2c-admin__section-actions,
  html body.t2c-single-page .t2c-admin .t2c-admin__catalog-tabs > .t2c-admin__section-actions form {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* Mobile admin 2026.16: one predictable page scroll and a denser catalogue workspace. */
@media (max-width: 640px) {
  html body.t2c-modal-open .t2c-admin.t2c-admin.is-open {
    align-items: flex-start !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding: max(6px, env(safe-area-inset-top)) max(6px, env(safe-area-inset-right)) max(6px, env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left)) !important;
    touch-action: pan-y !important;
    -webkit-overflow-scrolling: touch !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__dialog {
    border-radius: 14px !important;
    height: auto !important;
    min-height: calc(100dvh - 12px) !important;
    max-height: none !important;
    overflow: visible !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__head {
    gap: 10px !important;
    padding: 11px 12px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__kicker {
    font-size: 10px !important;
    letter-spacing: .1em !important;
    margin-bottom: 3px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__head h2 {
    font-size: clamp(20px, 6vw, 24px) !important;
    line-height: 1.08 !important;
    padding-right: 4px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__close {
    border-radius: 11px !important;
    flex: 0 0 42px !important;
    height: 42px !important;
    width: 42px !important;
  }

  html body.t2c-single-page .t2c-admin :where(
    .t2c-admin__layout,
    .t2c-admin__workspace,
    .t2c-admin__main,
    .t2c-admin__side,
    .t2c-admin__products
  ) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    overscroll-behavior: auto !important;
    touch-action: pan-y !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__nav {
    gap: 7px !important;
    padding: 8px 10px 9px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__nav > p {
    display: none !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__tabs {
    display: grid !important;
    gap: 5px !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    overflow: visible !important;
    padding: 0 !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__tabs button {
    align-items: center !important;
    font-size: 11px !important;
    justify-content: center !important;
    line-height: 1.15 !important;
    min-height: 38px !important;
    padding: 6px 5px !important;
    text-align: center !important;
    white-space: normal !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__nav-footer {
    margin-top: 1px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__back-profile {
    font-size: 12px !important;
    min-height: 36px !important;
    padding: 6px 12px !important;
    width: 100% !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__catalog-tabs {
    gap: 6px !important;
    padding: 8px 10px !important;
    position: static !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__catalog-tabs > button {
    flex: 1 1 calc(50% - 3px) !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    min-height: 38px !important;
    padding: 7px 8px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__catalog-tabs > .t2c-admin__section-actions {
    gap: 6px !important;
    margin-top: 1px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__section-actions form {
    gap: 6px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__section-actions :where(input, button) {
    font-size: 12px !important;
    min-height: 38px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__side {
    gap: 8px !important;
    padding: 10px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__new,
  html body.t2c-single-page .t2c-admin .t2c-admin__reset {
    font-size: 13px !important;
    min-height: 40px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__products {
    display: grid !important;
    gap: 6px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    max-height: none !important;
    overflow: visible !important;
    scrollbar-width: none !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__product {
    align-content: start !important;
    gap: 4px !important;
    min-height: 68px !important;
    padding: 9px 10px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__product span {
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__product small {
    font-size: 10px !important;
    line-height: 1.25 !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__form,
  html body.t2c-single-page .t2c-admin .t2c-admin__section {
    gap: 10px !important;
    padding: 12px 10px 16px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__status,
  html body.t2c-single-page .t2c-admin .t2c-admin__field input,
  html body.t2c-single-page .t2c-admin .t2c-admin__field select,
  html body.t2c-single-page .t2c-admin .t2c-admin__field textarea {
    font-size: 13px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__field {
    gap: 5px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__field > span {
    font-size: 12px !important;
  }

  html body.t2c-single-page .t2c-admin .t2c-admin__preview {
    justify-self: start !important;
    max-width: 150px !important;
    width: 100% !important;
  }
}

/* Keep admin workspaces isolated when switching between catalog and service tabs. */
html body.t2c-single-page .t2c-admin .t2c-admin__catalog-tabs[hidden],
html body.t2c-single-page .t2c-admin .t2c-admin__main[hidden],
html body.t2c-single-page .t2c-admin .t2c-admin__section[hidden] {
  display: none !important;
}
