/* Home mobile Nexa Story - camada visual final.
   Apenas CSS mobile: nao altera HTML, JS, dados, carrinho, busca ou checkout. */
@media (max-width: 767px) {
  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) {
    background: #f6f7fb !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo {
    position: sticky !important;
    top: 0 !important;
    z-index: 70 !important;
    height: auto !important;
    min-height: 140px !important;
    padding: calc(20px + env(safe-area-inset-top, 0px)) 18px 14px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas:
      "brand icons"
      "search search" !important;
    align-items: center !important;
    gap: 18px 14px !important;
    background: linear-gradient(180deg, #f7f7ff 0%, #f5f7ff 58%, rgba(246, 247, 251, 0.94) 100%) !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo::before {
    content: "Nexa Story" !important;
    grid-area: brand !important;
    display: block !important;
    min-width: 0 !important;
    font-size: clamp(30px, 9vw, 40px) !important;
    font-weight: 950 !important;
    line-height: 0.96 !important;
    letter-spacing: 0 !important;
    background: linear-gradient(135deg, #7c3aed 0%, #2563eb 58%, #1d4ed8 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo .busca-box {
    grid-area: search !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .busca-input-wrap {
    width: 100% !important;
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 18px !important;
    gap: 14px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(124, 58, 237, 0.12) !important;
    background: linear-gradient(180deg, #f7f7ff 0%, #f5f7ff 100%) !important;
    color: #7c3aed !important;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.07) !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .busca-input-wrap > svg {
    width: 27px !important;
    height: 27px !important;
    color: #7c3aed !important;
    stroke-width: 2.4 !important;
    flex: 0 0 auto !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .busca-input-wrap input {
    min-width: 0 !important;
    height: 100% !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .busca-input-wrap input::placeholder {
    color: #9ca3af !important;
    opacity: 1 !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo-icons {
    grid-area: icons !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 0 !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo-icons #btn-favoritos-topo,
  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo-icons #btn-carrinho-topo {
    display: none !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo-profile-btn {
    display: inline-flex !important;
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    border-radius: 999px !important;
    padding: 3px !important;
    border: 3px solid #7c3aed !important;
    background: #ffffff !important;
    color: #7c3aed !important;
    box-shadow: 0 12px 28px rgba(124, 58, 237, 0.20) !important;
    overflow: hidden !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo-profile-btn .topo-profile-initial {
    width: 100% !important;
    height: 100% !important;
    border-radius: 999px !important;
    display: grid !important;
    place-items: center !important;
    background: linear-gradient(135deg, #eef2ff, #ffffff) !important;
    color: #6d28d9 !important;
    -webkit-text-fill-color: #6d28d9 !important;
    font-size: 20px !important;
    font-weight: 950 !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo-profile-btn.has-photo .topo-profile-img {
    width: 100% !important;
    height: 100% !important;
    border-radius: 999px !important;
    object-fit: cover !important;
    display: block !important;
  }

  #pagina-home.pagina,
  [data-theme="light"] #pagina-home.pagina {
    background: #f6f7fb !important;
    color: #111827 !important;
    overflow-x: hidden !important;
    padding-bottom: calc(98px + env(safe-area-inset-bottom, 0px)) !important;
  }

  #pagina-home .home-section-header {
    display: none !important;
  }

  #mobile-promos.bc-wrapper:not([hidden]) {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    margin: 14px 18px 22px !important;
    padding: 0 !important;
    border-radius: 24px !important;
    overflow: visible !important;
    background: transparent !important;
    box-shadow: 0 18px 36px rgba(71, 85, 105, 0.14) !important;
  }

  #mobile-promos .bc-clip {
    width: 100% !important;
    height: clamp(190px, 52vw, 230px) !important;
    border-radius: 24px !important;
    overflow: hidden !important;
    background:
      radial-gradient(circle at 78% 42%, rgba(255, 255, 255, 0.88) 0 25%, transparent 26%),
      linear-gradient(135deg, #7c3aed 0%, #2563eb 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.75) !important;
  }

  #mobile-promos .bc-track,
  #mobile-promos .bc-slide {
    height: 100% !important;
  }

  #mobile-promos .bc-slide {
    min-height: 100% !important;
    background-size: cover !important;
    background-position: center right !important;
  }

  #mobile-promos .bc-slide:not(.bc-slide--has-img) {
    background:
      radial-gradient(circle at 78% 42%, rgba(255, 255, 255, 0.84) 0 25%, rgba(255, 255, 255, 0.18) 26%, transparent 48%),
      linear-gradient(135deg, #7c3aed 0%, #2563eb 100%) !important;
  }

  #mobile-promos .bc-slide--has-img::before {
    background:
      linear-gradient(90deg, rgba(109, 40, 217, 0.92) 0%, rgba(37, 99, 235, 0.72) 43%, rgba(255, 255, 255, 0.08) 100%),
      linear-gradient(180deg, rgba(0, 0, 0, 0.06), rgba(0, 0, 0, 0.18)) !important;
  }

  #mobile-promos .bc-slide-inner {
    left: 32px !important;
    top: 50% !important;
    bottom: auto !important;
    right: auto !important;
    transform: translateY(-50%) !important;
    width: min(58%, 250px) !important;
    max-width: 250px !important;
    padding: 0 !important;
    gap: 10px !important;
    align-items: flex-start !important;
  }

  #mobile-promos .bc-tag {
    min-height: 30px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.16) !important;
    border: 1px solid rgba(255, 255, 255, 0.30) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  #mobile-promos .bc-title {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: clamp(30px, 8.5vw, 42px) !important;
    font-weight: 950 !important;
    line-height: 0.98 !important;
    letter-spacing: 0 !important;
    text-shadow: 0 7px 24px rgba(30, 41, 59, 0.22) !important;
  }

  #mobile-promos .bc-text {
    color: rgba(255, 255, 255, 0.92) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.92) !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    opacity: 1 !important;
  }

  #mobile-promos .bc-cta {
    min-height: 44px !important;
    padding: 0 18px !important;
    margin-top: 8px !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    border: 0 !important;
    color: #7c3aed !important;
    -webkit-text-fill-color: #7c3aed !important;
    box-shadow: 0 12px 24px rgba(30, 41, 59, 0.18) !important;
    font-size: 15px !important;
    font-weight: 950 !important;
  }

  #mobile-promos .bc-dots {
    bottom: 20px !important;
    padding: 6px 9px !important;
    gap: 8px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.72) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
  }

  #mobile-promos .bc-dot {
    width: 9px !important;
    height: 9px !important;
    max-width: 9px !important;
    max-height: 9px !important;
    min-width: 9px !important;
    min-height: 9px !important;
    background: #cbd5e1 !important;
    border-radius: 999px !important;
  }

  #mobile-promos .bc-dot.ativa {
    width: 24px !important;
    max-width: 24px !important;
    background: #7c3aed !important;
  }

  #pagina-home #grade-produtos,
  [data-theme="light"] #pagina-home #grade-produtos {
    width: 100% !important;
    max-width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    padding: 14px 18px 28px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  #pagina-home .produto-card,
  [data-theme="light"] #pagina-home .produto-card {
    position: relative !important;
    min-width: 0 !important;
    min-height: 240px !important;
    padding: 14px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(226, 232, 240, 0.78) !important;
    background: #ffffff !important;
    background-image: none !important;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08) !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    transform: none !important;
  }

  #pagina-home .produto-card:active,
  [data-theme="light"] #pagina-home .produto-card:active {
    transform: scale(0.985) !important;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.10) !important;
  }

  #pagina-home .produto-card-badges,
  #pagina-home .produto-btn-fav,
  [data-theme="light"] #pagina-home .produto-card-badges,
  [data-theme="light"] #pagina-home .produto-btn-fav {
    display: none !important;
  }

  #pagina-home .produto-img-wrap,
  [data-theme="light"] #pagina-home .produto-img-wrap {
    width: 100% !important;
    height: 132px !important;
    min-height: 132px !important;
    margin: 0 0 14px !important;
    padding: 10px !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
    border: 0 !important;
    box-shadow: inset 0 0 0 1px rgba(226, 232, 240, 0.55) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
  }

  #pagina-home .produto-img-halo,
  [data-theme="light"] #pagina-home .produto-img-halo {
    display: none !important;
  }

  #pagina-home .imagem-produto,
  [data-theme="light"] #pagina-home .imagem-produto {
    width: 100% !important;
    height: 112px !important;
    max-height: 112px !important;
    object-fit: contain !important;
    padding: 0 !important;
    display: block !important;
  }

  #pagina-home .produto-card-body,
  [data-theme="light"] #pagina-home .produto-card-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
  }

  #pagina-home .nome-produto,
  [data-theme="light"] #pagina-home .nome-produto {
    margin: 0 0 6px !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    font-size: 16px !important;
    font-weight: 950 !important;
    line-height: 1.14 !important;
    letter-spacing: 0 !important;
  }

  #pagina-home .marca-produto,
  [data-theme="light"] #pagina-home .marca-produto {
    margin: 0 0 12px !important;
    color: #9ca3af !important;
    -webkit-text-fill-color: #9ca3af !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
  }

  #pagina-home .produto-card-footer,
  [data-theme="light"] #pagina-home .produto-card-footer {
    margin-top: auto !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 10px !important;
  }

  #pagina-home .preco-produto,
  [data-theme="light"] #pagina-home .preco-produto {
    color: #F97316 !important;
    -webkit-text-fill-color: #F97316 !important;
    font-size: 17px !important;
    font-weight: 950 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
  }

  #pagina-home .produto-btn-cart,
  [data-theme="light"] #pagina-home .produto-btn-cart {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    border-radius: 6px !important;
    border: 0 !important;
    background: linear-gradient(135deg, #7c3aed 0%, #2563eb 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 24px rgba(88, 28, 135, 0.24) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
  }

  #pagina-home .produto-btn-cart svg,
  [data-theme="light"] #pagina-home .produto-btn-cart svg {
    width: 25px !important;
    height: 25px !important;
    stroke-width: 2.2 !important;
  }

  @media (max-width: 374px) {
    body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo {
      padding-left: 14px !important;
      padding-right: 14px !important;
    }

    #pagina-home #grade-produtos {
      gap: 12px !important;
      padding-left: 14px !important;
      padding-right: 14px !important;
    }

    #pagina-home .produto-card {
      padding: 12px !important;
      border-radius: 22px !important;
    }

    #pagina-home .produto-img-wrap {
      height: 116px !important;
      min-height: 116px !important;
    }

    #pagina-home .imagem-produto {
      height: 98px !important;
      max-height: 98px !important;
    }

    #pagina-home .nome-produto {
      font-size: 14px !important;
    }

    #pagina-home .marca-produto {
      font-size: 12px !important;
    }

    #pagina-home .preco-produto {
      font-size: 15px !important;
    }

    #pagina-home .produto-btn-cart {
      width: 46px !important;
      height: 46px !important;
      min-width: 46px !important;
      min-height: 46px !important;
      border-radius: 14px !important;
    }
  }

  .caixa {
    height: calc(84px + env(safe-area-inset-bottom, 0px)) !important;
    min-height: calc(84px + env(safe-area-inset-bottom, 0px)) !important;
    padding: 6px 12px calc(8px + env(safe-area-inset-bottom, 0px)) !important;
    border-top: 1px solid rgba(226, 232, 240, 0.78) !important;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 -12px 36px rgba(15, 23, 42, 0.10) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
  }

  .sidebar-nav-items {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 4px !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
  }

  .caixa .menu-btn {
    min-width: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 7px 2px 4px !important;
    border-radius: 18px !important;
    background: transparent !important;
    color: #8b95a1 !important;
    -webkit-text-fill-color: #8b95a1 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    overflow: visible !important;
  }

  .caixa .menu-btn::before {
    display: none !important;
    content: none !important;
  }

  .caixa .menu-btn svg {
    width: 30px !important;
    height: 30px !important;
    margin: 0 !important;
    filter: none !important;
  }

  .caixa .menu-btn > span:not(.sidebar-badge) {
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .caixa .menu-btn.ativo {
    color: #6d28d9 !important;
    -webkit-text-fill-color: #6d28d9 !important;
    background: transparent !important;
  }

  .caixa .menu-btn.ativo svg {
    color: #6d28d9 !important;
    filter: drop-shadow(0 8px 14px rgba(109, 40, 217, 0.18)) !important;
  }

  .caixa .sidebar-badge,
  .menu-badge-notificacoes {
    top: 7px !important;
    right: 18px !important;
    border-color: #ffffff !important;
    background: #F97316 !important;
  }
}

/* Ajuste fino: banner mais legivel e grade mais compacta. */
@media (max-width: 767px) {
  #mobile-promos.bc-wrapper:not([hidden]) {
    margin: 10px 14px 14px !important;
    border-radius: 20px !important;
  }

  #mobile-promos .bc-clip {
    height: clamp(186px, 50vw, 212px) !important;
    border-radius: 20px !important;
  }

  #mobile-promos .bc-slide-inner {
    top: 16px !important;
    bottom: 42px !important;
    left: 20px !important;
    transform: none !important;
    width: min(61%, 218px) !important;
    max-width: 218px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 5px !important;
    overflow: visible !important;
  }

  #mobile-promos .bc-tag {
    min-height: 22px !important;
    max-height: 22px !important;
    padding: 0 9px !important;
    font-size: 10.5px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    flex: 0 0 auto !important;
  }

  #mobile-promos .bc-title {
    font-size: clamp(20px, 5.8vw, 28px) !important;
    line-height: 1.04 !important;
    font-weight: 950 !important;
    letter-spacing: 0 !important;
    max-width: 100% !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
  }

  #mobile-promos .bc-text {
    font-size: clamp(12px, 3.25vw, 14px) !important;
    line-height: 1.18 !important;
    font-weight: 750 !important;
    max-width: 94% !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
  }

  #mobile-promos .bc-cta {
    min-height: 32px !important;
    height: 32px !important;
    padding: 0 13px !important;
    margin-top: 3px !important;
    border-radius: 999px !important;
    font-size: 12.5px !important;
    line-height: 1 !important;
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }

  #mobile-promos .bc-dots {
    bottom: 9px !important;
    padding: 4px 7px !important;
    gap: 5px !important;
  }

  #mobile-promos .bc-dot {
    width: 6px !important;
    height: 6px !important;
    min-width: 6px !important;
    min-height: 6px !important;
    max-width: 6px !important;
    max-height: 6px !important;
  }

  #mobile-promos .bc-dot.ativa {
    width: 17px !important;
    max-width: 17px !important;
  }

  #pagina-home #grade-produtos,
  [data-theme="light"] #pagina-home #grade-produtos {
    gap: 10px 8px !important;
    padding: 8px 12px 24px !important;
    background:
      linear-gradient(90deg, transparent 0, transparent calc(50% - 5px), rgba(226, 232, 240, 0.52) calc(50% - 5px), rgba(226, 232, 240, 0.52) calc(50% + 5px), transparent calc(50% + 5px)) !important;
  }

  #pagina-home .produto-card,
  [data-theme="light"] #pagina-home .produto-card {
    min-height: 206px !important;
    padding: 10px !important;
    border-radius: 18px !important;
    border-color: rgba(226, 232, 240, 0.88) !important;
    box-shadow: 0 7px 18px rgba(15, 23, 42, 0.065) !important;
  }

  #pagina-home .produto-img-wrap,
  [data-theme="light"] #pagina-home .produto-img-wrap {
    height: 104px !important;
    min-height: 104px !important;
    margin-bottom: 9px !important;
    padding: 8px !important;
    border-radius: 15px !important;
  }

  #pagina-home .imagem-produto,
  [data-theme="light"] #pagina-home .imagem-produto {
    height: 88px !important;
    max-height: 88px !important;
  }

  #pagina-home .nome-produto,
  [data-theme="light"] #pagina-home .nome-produto {
    margin: 0 0 4px !important;
    font-size: 13.5px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
    min-height: 32px !important;
  }

  #pagina-home .marca-produto,
  [data-theme="light"] #pagina-home .marca-produto {
    margin: 0 0 7px !important;
    font-size: 10.5px !important;
    line-height: 1.1 !important;
    font-weight: 700 !important;
  }

  #pagina-home .produto-card-footer,
  [data-theme="light"] #pagina-home .produto-card-footer {
    align-items: center !important;
    gap: 7px !important;
  }

  #pagina-home .preco-produto,
  [data-theme="light"] #pagina-home .preco-produto {
    font-size: 14.5px !important;
    line-height: 1 !important;
  }

  #pagina-home .produto-btn-cart,
  [data-theme="light"] #pagina-home .produto-btn-cart {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    border-radius: 12px !important;
    box-shadow: 0 7px 15px rgba(88, 28, 135, 0.18) !important;
  }

  #pagina-home .produto-btn-cart svg,
  [data-theme="light"] #pagina-home .produto-btn-cart svg {
    width: 19px !important;
    height: 19px !important;
  }

  @media (max-width: 374px) {
    #mobile-promos .bc-slide-inner {
      left: 16px !important;
      width: min(63%, 196px) !important;
      top: 14px !important;
      bottom: 38px !important;
      gap: 4px !important;
    }

    #mobile-promos .bc-title {
      font-size: clamp(19px, 5.6vw, 24px) !important;
    }

    #mobile-promos .bc-text {
      font-size: 11.5px !important;
      -webkit-line-clamp: 1 !important;
    }

    #mobile-promos .bc-cta {
      min-height: 30px !important;
      height: 30px !important;
      padding: 0 11px !important;
      font-size: 12px !important;
    }

    #pagina-home #grade-produtos {
      gap: 9px 7px !important;
      padding-left: 10px !important;
      padding-right: 10px !important;
    }

    #pagina-home .produto-card {
      min-height: 198px !important;
      padding: 9px !important;
      border-radius: 17px !important;
    }

    #pagina-home .produto-img-wrap {
      height: 96px !important;
      min-height: 96px !important;
      margin-bottom: 8px !important;
    }

    #pagina-home .imagem-produto {
      height: 80px !important;
      max-height: 80px !important;
    }

    #pagina-home .nome-produto {
      font-size: 12.5px !important;
      min-height: 30px !important;
    }

    #pagina-home .preco-produto {
      font-size: 13.8px !important;
    }

    #pagina-home .produto-btn-cart {
      width: 36px !important;
      height: 36px !important;
      min-width: 36px !important;
      min-height: 36px !important;
    }
  }
}

/* Refinamento mobile: proporcoes mais compactas e sem sobreposicoes. */
@media (max-width: 767px) {
  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo {
    min-height: 118px !important;
    padding: calc(14px + env(safe-area-inset-top, 0px)) 16px 12px !important;
    gap: 12px 12px !important;
    align-content: center !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo::before {
    font-size: clamp(25px, 7.4vw, 32px) !important;
    line-height: 1 !important;
    font-weight: 950 !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo-profile-btn {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    border-width: 2px !important;
    padding: 2px !important;
    box-shadow: 0 8px 20px rgba(124, 58, 237, 0.16) !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo-profile-btn .topo-profile-initial {
    font-size: 17px !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .busca-input-wrap {
    height: 52px !important;
    min-height: 52px !important;
    padding: 0 14px !important;
    gap: 10px !important;
    border-radius: 20px !important;
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.06) !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .busca-input-wrap > svg {
    width: 22px !important;
    height: 22px !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .busca-input-wrap input {
    font-size: 15.5px !important;
    line-height: 1 !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .limpar-busca {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    border-radius: 999px !important;
    background: rgba(124, 58, 237, 0.08) !important;
  }

  #mobile-promos.bc-wrapper:not([hidden]) {
    margin: 12px 16px 18px !important;
    border-radius: 22px !important;
    box-shadow: 0 14px 30px rgba(71, 85, 105, 0.12) !important;
  }

  #mobile-promos .bc-clip {
    height: clamp(178px, 48vw, 210px) !important;
    border-radius: 22px !important;
  }

  #mobile-promos .bc-slide-inner {
    left: 22px !important;
    top: 20px !important;
    bottom: 48px !important;
    right: auto !important;
    transform: none !important;
    width: min(62%, 232px) !important;
    max-width: 232px !important;
    gap: 7px !important;
    justify-content: flex-start !important;
  }

  #mobile-promos .bc-tag {
    min-height: 24px !important;
    padding: 0 10px !important;
    font-size: 11.5px !important;
    line-height: 1 !important;
  }

  #mobile-promos .bc-title {
    font-size: clamp(23px, 6.8vw, 32px) !important;
    line-height: 1.04 !important;
    letter-spacing: 0 !important;
    -webkit-line-clamp: 2 !important;
  }

  #mobile-promos .bc-text {
    font-size: clamp(12.5px, 3.5vw, 15px) !important;
    line-height: 1.22 !important;
    font-weight: 750 !important;
    -webkit-line-clamp: 2 !important;
  }

  #mobile-promos .bc-cta {
    min-height: 36px !important;
    padding: 0 15px !important;
    margin-top: 4px !important;
    font-size: 13px !important;
    box-shadow: 0 8px 18px rgba(30, 41, 59, 0.16) !important;
    z-index: 2 !important;
  }

  #mobile-promos .bc-dots {
    bottom: 11px !important;
    padding: 5px 8px !important;
    gap: 6px !important;
    z-index: 3 !important;
  }

  #mobile-promos .bc-dot {
    width: 7px !important;
    height: 7px !important;
    min-width: 7px !important;
    min-height: 7px !important;
    max-width: 7px !important;
    max-height: 7px !important;
  }

  #mobile-promos .bc-dot.ativa {
    width: 19px !important;
    max-width: 19px !important;
  }

  #pagina-home #grade-produtos,
  [data-theme="light"] #pagina-home #grade-produtos {
    gap: 14px 13px !important;
    padding: 10px 16px 26px !important;
  }

  #pagina-home .produto-card,
  [data-theme="light"] #pagina-home .produto-card {
    min-height: 218px !important;
    padding: 12px !important;
    border-radius: 21px !important;
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.075) !important;
  }

  #pagina-home .produto-img-wrap,
  [data-theme="light"] #pagina-home .produto-img-wrap {
    height: 116px !important;
    min-height: 116px !important;
    margin-bottom: 11px !important;
    padding: 9px !important;
    border-radius: 17px !important;
  }

  #pagina-home .imagem-produto,
  [data-theme="light"] #pagina-home .imagem-produto {
    height: 98px !important;
    max-height: 98px !important;
  }

  #pagina-home .nome-produto,
  [data-theme="light"] #pagina-home .nome-produto {
    margin-bottom: 5px !important;
    font-size: 14px !important;
    line-height: 1.22 !important;
    font-weight: 900 !important;
  }

  #pagina-home .marca-produto,
  [data-theme="light"] #pagina-home .marca-produto {
    margin-bottom: 9px !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    color: #9aa3af !important;
    -webkit-text-fill-color: #9aa3af !important;
  }

  #pagina-home .preco-produto,
  [data-theme="light"] #pagina-home .preco-produto {
    font-size: 15.5px !important;
    font-weight: 950 !important;
  }

  #pagina-home .produto-btn-cart,
  [data-theme="light"] #pagina-home .produto-btn-cart {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 18px rgba(88, 28, 135, 0.20) !important;
  }

  #pagina-home .produto-btn-cart svg,
  [data-theme="light"] #pagina-home .produto-btn-cart svg {
    width: 21px !important;
    height: 21px !important;
  }

  .caixa {
    height: calc(76px + env(safe-area-inset-bottom, 0px)) !important;
    min-height: calc(76px + env(safe-area-inset-bottom, 0px)) !important;
    padding: 5px 8px calc(6px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .sidebar-nav-items {
    gap: 1px !important;
  }

  .caixa .menu-btn {
    padding: 6px 0 3px !important;
    gap: 3px !important;
    border-radius: 14px !important;
    font-size: clamp(10px, 2.75vw, 11px) !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
  }

  .caixa .menu-btn svg {
    width: 25px !important;
    height: 25px !important;
  }

  .caixa .menu-btn > span:not(.sidebar-badge) {
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    letter-spacing: 0 !important;
  }

  @media (max-width: 374px) {
    body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo {
      min-height: 114px !important;
      padding-left: 14px !important;
      padding-right: 14px !important;
      gap: 10px !important;
    }

    body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo::before {
      font-size: clamp(24px, 7.2vw, 28px) !important;
    }

    body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .busca-input-wrap {
      height: 50px !important;
      min-height: 50px !important;
      border-radius: 18px !important;
    }

    body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .busca-input-wrap input {
      font-size: 14px !important;
    }

    #mobile-promos.bc-wrapper:not([hidden]) {
      margin-left: 14px !important;
      margin-right: 14px !important;
    }

    #mobile-promos .bc-slide-inner {
      left: 18px !important;
      width: min(64%, 210px) !important;
      bottom: 46px !important;
    }

    #mobile-promos .bc-title {
      font-size: clamp(21px, 6.4vw, 27px) !important;
    }

    #mobile-promos .bc-text {
      font-size: 12px !important;
      -webkit-line-clamp: 1 !important;
    }

    #mobile-promos .bc-cta {
      min-height: 34px !important;
      padding: 0 13px !important;
      font-size: 12.5px !important;
    }

    #pagina-home #grade-produtos {
      gap: 12px !important;
      padding-left: 14px !important;
      padding-right: 14px !important;
    }

    #pagina-home .produto-card {
      min-height: 208px !important;
      padding: 11px !important;
    }

    #pagina-home .produto-img-wrap {
      height: 108px !important;
      min-height: 108px !important;
      border-radius: 16px !important;
    }

    #pagina-home .imagem-produto {
      height: 90px !important;
      max-height: 90px !important;
    }

    #pagina-home .nome-produto {
      font-size: 13px !important;
    }

    #pagina-home .marca-produto {
      font-size: 10.5px !important;
    }

    #pagina-home .preco-produto {
      font-size: 14.5px !important;
    }

    #pagina-home .produto-btn-cart {
      width: 39px !important;
      height: 39px !important;
      min-width: 39px !important;
      min-height: 39px !important;
    }

    .caixa .menu-btn {
      font-size: 10px !important;
    }

    .caixa .menu-btn svg {
      width: 24px !important;
      height: 24px !important;
    }
  }
}

/* Hotfix final: banner interno e grade compacta. */
@media (max-width: 767px) {
  #mobile-promos.bc-wrapper:not([hidden]) {
    margin: 10px 12px 12px !important;
    border-radius: 20px !important;
  }

  #mobile-promos .bc-clip {
    height: clamp(186px, 50vw, 212px) !important;
    border-radius: 20px !important;
  }

  #mobile-promos .bc-slide-inner {
    top: 16px !important;
    bottom: 42px !important;
    left: 20px !important;
    right: auto !important;
    transform: none !important;
    width: min(58%, 206px) !important;
    max-width: 206px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    gap: 5px !important;
    overflow: visible !important;
  }

  #mobile-promos .bc-tag {
    min-height: 22px !important;
    max-height: 22px !important;
    padding: 0 9px !important;
    font-size: 10.5px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    flex: 0 0 auto !important;
  }

  #mobile-promos .bc-title {
    font-size: clamp(20px, 5.6vw, 27px) !important;
    line-height: 1.04 !important;
    font-weight: 950 !important;
    letter-spacing: 0 !important;
    max-width: 100% !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
  }

  #mobile-promos .bc-text {
    font-size: clamp(11.5px, 3.1vw, 13.5px) !important;
    line-height: 1.18 !important;
    font-weight: 750 !important;
    max-width: 96% !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
  }

  #mobile-promos .bc-cta {
    min-height: 32px !important;
    height: 32px !important;
    padding: 0 13px !important;
    margin-top: 3px !important;
    border-radius: 999px !important;
    font-size: 12.5px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    flex: 0 0 auto !important;
    position: relative !important;
    z-index: 4 !important;
  }

  #mobile-promos .bc-dots {
    left: 50% !important;
    right: auto !important;
    bottom: 9px !important;
    transform: translateX(-50%) !important;
    padding: 4px 7px !important;
    gap: 5px !important;
    z-index: 5 !important;
  }

  #mobile-promos .bc-dot {
    width: 6px !important;
    height: 6px !important;
    min-width: 6px !important;
    min-height: 6px !important;
    max-width: 6px !important;
    max-height: 6px !important;
  }

  #mobile-promos .bc-dot.ativa {
    width: 17px !important;
    max-width: 17px !important;
  }

  #pagina-home #grade-produtos,
  [data-theme="light"] #pagina-home #grade-produtos {
    gap: 6px 5px !important;
    padding: 7px 8px 22px !important;
    background: #eef2f7 !important;
  }

  #pagina-home .produto-card,
  [data-theme="light"] #pagina-home .produto-card {
    min-height: 202px !important;
    padding: 9px !important;
    border-radius: 17px !important;
    border-color: rgba(226, 232, 240, 0.96) !important;
    box-shadow: 0 5px 14px rgba(15, 23, 42, 0.055) !important;
  }

  #pagina-home .produto-img-wrap,
  [data-theme="light"] #pagina-home .produto-img-wrap {
    height: 98px !important;
    min-height: 98px !important;
    margin-bottom: 8px !important;
    padding: 7px !important;
    border-radius: 14px !important;
  }

  #pagina-home .imagem-produto,
  [data-theme="light"] #pagina-home .imagem-produto {
    height: 82px !important;
    max-height: 82px !important;
  }

  #pagina-home .nome-produto,
  [data-theme="light"] #pagina-home .nome-produto {
    margin: 0 0 3px !important;
    font-size: 13px !important;
    line-height: 1.18 !important;
    font-weight: 900 !important;
    min-height: 30px !important;
  }

  #pagina-home .marca-produto,
  [data-theme="light"] #pagina-home .marca-produto {
    margin: 0 0 6px !important;
    font-size: 10px !important;
    line-height: 1.1 !important;
    font-weight: 700 !important;
  }

  #pagina-home .produto-card-footer,
  [data-theme="light"] #pagina-home .produto-card-footer {
    align-items: center !important;
    gap: 6px !important;
  }

  #pagina-home .preco-produto,
  [data-theme="light"] #pagina-home .preco-produto {
    font-size: 14px !important;
    line-height: 1 !important;
  }

  #pagina-home .produto-btn-cart,
  [data-theme="light"] #pagina-home .produto-btn-cart {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    border-radius: 12px !important;
    box-shadow: 0 6px 13px rgba(88, 28, 135, 0.16) !important;
  }

  #pagina-home .produto-btn-cart svg,
  [data-theme="light"] #pagina-home .produto-btn-cart svg {
    width: 18px !important;
    height: 18px !important;
  }

  @media (max-width: 374px) {
    #mobile-promos .bc-slide-inner {
      top: 14px !important;
      bottom: 38px !important;
      left: 16px !important;
      width: min(58%, 186px) !important;
      gap: 4px !important;
    }

    #mobile-promos .bc-title {
      font-size: clamp(18px, 5.4vw, 23px) !important;
    }

    #mobile-promos .bc-text {
      font-size: 11px !important;
      -webkit-line-clamp: 1 !important;
    }

    #mobile-promos .bc-cta {
      min-height: 30px !important;
      height: 30px !important;
      padding: 0 11px !important;
      font-size: 12px !important;
    }

    #pagina-home #grade-produtos {
      gap: 5px 4px !important;
      padding-left: 7px !important;
      padding-right: 7px !important;
    }

    #pagina-home .produto-card {
      min-height: 196px !important;
      padding: 8px !important;
      border-radius: 16px !important;
    }

    #pagina-home .produto-img-wrap {
      height: 92px !important;
      min-height: 92px !important;
      margin-bottom: 7px !important;
    }

    #pagina-home .imagem-produto {
      height: 76px !important;
      max-height: 76px !important;
    }

    #pagina-home .nome-produto {
      font-size: 12px !important;
      min-height: 29px !important;
    }

    #pagina-home .preco-produto {
      font-size: 13.4px !important;
    }

    #pagina-home .produto-btn-cart {
      width: 34px !important;
      height: 34px !important;
      min-width: 34px !important;
      min-height: 34px !important;
    }
  }
}

/* Ajuste visual definitivo: home mobile integrada e cards como relacionados. */
@media (max-width: 767px) {
  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo {
    min-height: auto !important;
    padding: calc(8px + env(safe-area-inset-top, 0px)) 12px 8px !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas: "search icons" !important;
    gap: 8px !important;
    align-items: center !important;
    background:
      radial-gradient(circle at 14% -20%, rgba(255, 255, 255, 0.28), transparent 34%),
      linear-gradient(135deg, #7c3aed 0%, #2563eb 100%) !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo::before {
    content: none !important;
    display: none !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo .busca-box {
    grid-area: search !important;
    min-width: 0 !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .busca-input-wrap {
    height: 44px !important;
    min-height: 44px !important;
    border-radius: 15px !important;
    padding: 0 12px !important;
    gap: 8px !important;
    box-shadow: 0 10px 20px rgba(15, 23, 42, 0.14) !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .busca-input-wrap > svg {
    width: 19px !important;
    height: 19px !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .busca-input-wrap input {
    height: 44px !important;
    font-size: 13px !important;
    line-height: 44px !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .limpar-busca {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    min-height: 26px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .limpar-busca svg {
    width: 14px !important;
    height: 14px !important;
    stroke: #7c3aed !important;
  }

  body:not(.nexa-carrinho-ativa):not(.nexa-mensagens-ativa):not(.nexa-configuracoes-ativa):not(.nexa-avisos-ativa):not(.nexa-produto-ativa):not(.nexa-compra-ativa) .topo-profile-btn {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    border-color: rgba(255, 255, 255, 0.86) !important;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.18) !important;
  }

  #pagina-home.pagina,
  [data-theme="light"] #pagina-home.pagina {
    --nexa-home-banner-height: 132px;
    --nexa-home-bg-depth: calc(var(--nexa-home-banner-height) + 30px);
    --nexa-home-bg-curve-start: 84px;
    --nexa-home-side: 12px;
    position: relative !important;
    isolation: isolate !important;
    background: #f1f5f9 !important;
  }

  #pagina-home.pagina::before,
  [data-theme="light"] #pagina-home.pagina::before {
    content: "" !important;
    position: absolute !important;
    z-index: 0 !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: var(--nexa-home-bg-depth) !important;
    background:
      radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.24), transparent 36%),
      linear-gradient(135deg, #7c3aed 0%, #2563eb 100%) !important;
    clip-path: polygon(
      0 0,
      100% 0,
      100% 100%,
      96% 96%,
      90% 86%,
      80% 74%,
      66% 63%,
      50% 58%,
      34% 63%,
      20% 74%,
      10% 86%,
      4% 96%,
      0 100%
    ) !important;
    pointer-events: none !important;
  }

  #pagina-home.pagina::after,
  [data-theme="light"] #pagina-home.pagina::after {
    content: "" !important;
    position: absolute !important;
    display: none !important;
    z-index: 0 !important;
    top: calc(var(--nexa-home-bg-curve-start) + 6px) !important;
    left: 0 !important;
    right: auto !important;
    width: 100% !important;
    height: 112px !important;
    background: #f1f5f9 !important;
    border-radius: 50% 50% 0 0 / 72px 72px 0 0 !important;
    pointer-events: none !important;
  }

  #mobile-promos.bc-wrapper:not([hidden]) {
    width: auto !important;
    max-width: none !important;
    margin: 0 var(--nexa-home-side) !important;
    border-radius: 18px !important;
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 1 !important;
  }

  #mobile-promos .bc-clip,
  #mobile-promos .bc-track,
  #mobile-promos .bc-slide {
    height: var(--nexa-home-banner-height) !important;
    min-height: var(--nexa-home-banner-height) !important;
    max-height: var(--nexa-home-banner-height) !important;
  }

  #mobile-promos .bc-clip {
    border-radius: 18px !important;
  }

  #mobile-promos .bc-slide-inner {
    top: 6px !important;
    bottom: 18px !important;
    left: 14px !important;
    width: min(56%, 160px) !important;
    max-width: 160px !important;
    gap: 2px !important;
    justify-content: center !important;
  }

  #mobile-promos .bc-tag {
    min-height: 16px !important;
    max-height: 16px !important;
    padding: 0 6px !important;
    font-size: 9px !important;
    line-height: 1 !important;
  }

  #mobile-promos .bc-title {
    font-size: clamp(14.5px, 4.1vw, 18.5px) !important;
    line-height: 1 !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
  }

  #mobile-promos .bc-text {
    font-size: clamp(9.5px, 2.5vw, 11px) !important;
    line-height: 1.05 !important;
    -webkit-line-clamp: 1 !important;
    overflow: hidden !important;
  }

  #mobile-promos .bc-cta {
    min-height: 22px !important;
    height: 22px !important;
    padding: 0 9px !important;
    margin-top: 1px !important;
    font-size: 10px !important;
  }

  #mobile-promos .bc-dots {
    bottom: 4px !important;
    padding: 3px 5px !important;
    gap: 4px !important;
  }

  #mobile-promos .bc-dot {
    width: 5px !important;
    height: 5px !important;
    min-width: 5px !important;
    min-height: 5px !important;
    max-width: 5px !important;
    max-height: 5px !important;
  }

  #mobile-promos .bc-dot.ativa {
    width: 14px !important;
    max-width: 14px !important;
  }

  #pagina-home #grade-produtos,
  [data-theme="light"] #pagina-home #grade-produtos {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
    padding: 12px var(--nexa-home-side) 24px !important;
    background: #f1f5f9 !important;
    position: relative !important;
    z-index: 1 !important;
  }

  #pagina-home .produto-card,
  [data-theme="light"] #pagina-home .produto-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 14px !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.07) !important;
    min-height: 220px !important;
    padding: 10px !important;
    color: #0f172a !important;
  }

  #pagina-home .produto-card:hover {
    transform: none !important;
  }

  #pagina-home .produto-card:active {
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.06) !important;
    transform: scale(0.98) !important;
  }

  #pagina-home .produto-img-wrap,
  [data-theme="light"] #pagina-home .produto-img-wrap {
    min-height: 110px !important;
    height: 110px !important;
    margin-bottom: 8px !important;
    padding: 0 !important;
    background: #f8fafc !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  #pagina-home .imagem-produto,
  [data-theme="light"] #pagina-home .imagem-produto {
    width: 100% !important;
    height: 104px !important;
    max-height: 104px !important;
    padding: 4px !important;
    object-fit: contain !important;
    object-position: center !important;
    background: transparent !important;
    border-radius: 0 !important;
  }

  #pagina-home .produto-img-halo,
  [data-theme="light"] #pagina-home .produto-img-halo,
  #pagina-home .produto-btn-fav,
  [data-theme="light"] #pagina-home .produto-btn-fav {
    display: none !important;
  }

  #pagina-home .produto-card-body,
  [data-theme="light"] #pagina-home .produto-card-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
  }

  #pagina-home .nome-produto,
  [data-theme="light"] #pagina-home .nome-produto {
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    margin: 0 0 3px !important;
    min-height: 31px !important;
    opacity: 1 !important;
  }

  #pagina-home .marca-produto,
  [data-theme="light"] #pagina-home .marca-produto {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  #pagina-home .produto-card-footer,
  [data-theme="light"] #pagina-home .produto-card-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-top: auto !important;
    gap: 4px !important;
  }

  #pagina-home .preco-produto,
  [data-theme="light"] #pagina-home .preco-produto {
    color: #F97316 !important;
    -webkit-text-fill-color: #F97316 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    margin: 0 !important;
    opacity: 1 !important;
  }

  #pagina-home .produto-btn-cart,
  [data-theme="light"] #pagina-home .produto-btn-cart {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    border: none !important;
    border-radius: 8px !important;
    background: linear-gradient(135deg, #7c3aed 0%, #2563eb 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 10px rgba(37, 99, 235, 0.18) !important;
  }

  #pagina-home .produto-btn-cart svg,
  [data-theme="light"] #pagina-home .produto-btn-cart svg {
    width: 16px !important;
    height: 16px !important;
    stroke: currentColor !important;
  }

  #pagina-home .produto-card-indisponivel,
  [data-theme="light"] #pagina-home .produto-card-indisponivel {
    border-radius: 0 0 14px 14px !important;
    font-size: 11px !important;
  }

  @media (max-width: 374px) {
    #pagina-home.pagina,
    [data-theme="light"] #pagina-home.pagina {
      --nexa-home-side: 10px;
    }

    #pagina-home #grade-produtos {
      gap: 5px !important;
    }

    #pagina-home .produto-card {
      min-height: 214px !important;
      padding: 9px !important;
    }

    #pagina-home .produto-img-wrap {
      min-height: 104px !important;
      height: 104px !important;
    }

    #pagina-home .imagem-produto {
      height: 98px !important;
      max-height: 98px !important;
    }
  }

    .categoria-page-container {
    width: 100%;
    max-width: 100%;
    padding: 16px;
  }

  .categoria-page-topo {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 18px;
  }

  .categoria-voltar {
    border: none;
    background: #ffffff;
    color: #7c3aed;
    border-radius: 999px;
    padding: 10px 14px;
    font-weight: 900;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);
  }

  #categoria-page-titulo {
    margin: 0;
    font-size: 26px;
    font-weight: 950;
    color: #111827;
  }

  #categoria-page-subtitulo {
    margin: 4px 0 0;
    color: #6b7280;
    font-size: 14px;
    font-weight: 600;
  }

  .categoria-page-grade {
    padding: 0 !important;
  }

  .categoria-page-vazia {
    margin-top: 30px;
    padding: 28px 18px;
    text-align: center;
    background: #ffffff;
    border-radius: 22px;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
  }

  .categoria-page-vazia h3 {
    margin: 0 0 6px;
    color: #111827;
  }

  .categoria-page-vazia p {
    margin: 0;
    color: #6b7280;
  }
}

@media (max-width: 767px) {
  #pagina-home .produto-btn-cart,
  [data-theme="light"] #pagina-home .produto-btn-cart {
    border-radius: 6px !important;
  }
}

/* Fix: category page layout and empty-state centering */
.categoria-page-grade {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  padding: 0 0 28px;
}

.categoria-page-vazia {
  margin: 30px auto;
  max-width: 640px;
  padding: 28px 18px;
  text-align: center;
  background: #ffffff;
  border-radius: 22px;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}

/* Ensure cart button is slightly rounded on mobile storefront */
#btn-carrinho,
#btn-carrinho-topo {
  border-radius: 6px !important;
  overflow: hidden !important;
}

@media (max-width: 767px) {
  #mobile-promos.bc-wrapper:not([hidden]) {
    display: block !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    overflow: hidden !important;
  }

  #mobile-promos.bc-wrapper::before,
  #mobile-promos.bc-wrapper::after,
  #mobile-promos .bc-slide::before,
  #mobile-promos .bc-slide::after,
  #mobile-promos .bc-slide--has-img::before {
    content: none !important;
    display: none !important;
    background: none !important;
    box-shadow: none !important;
  }

  #mobile-promos .bc-clip,
  #mobile-promos .bc-track,
  #mobile-promos .bc-slide,
  #mobile-promos .banner-link {
    width: 100% !important;
    height: clamp(160px, 44vw, 200px) !important;
    min-height: clamp(160px, 44vw, 200px) !important;
    max-height: clamp(160px, 44vw, 200px) !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
  }

  #mobile-promos .bc-clip {
    overflow: hidden !important;
  }

  #mobile-promos .bc-slide {
    background-image: none !important;
    background-color: transparent !important;
    background-size: auto !important;
    background-position: center !important;
    cursor: pointer !important;
  }

  #mobile-promos .banner-link {
    display: block !important;
    text-decoration: none !important;
    color: inherit !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  #mobile-promos img.bc-img,
  #mobile-promos .banner-link img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: inherit !important;
  }

  #mobile-promos .bc-slide-inner,
  #mobile-promos .bc-tag,
  #mobile-promos .bc-title,
  #mobile-promos .bc-text,
  #mobile-promos .bc-cta,
  #mobile-promos .bc-dots,
  #mobile-promos .bc-dot {
    display: none !important;
  }

  #mobile-promos.bc-wrapper:not([hidden]) + .home-categories-section {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: none !important;
    box-shadow: none !important;
    background: transparent !important;
  }

  #mobile-promos.bc-wrapper:not([hidden]) + .home-categories-section .categories-scroll {
    padding-top: 8px !important;
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   CORREÇÃO FINAL — barra preta no rodapé da página Configurações (mobile)
   O nexa-aura-override.css define bottom: calc(64px + safe-area) para a
   #pagina-configuracoes, deixando um gap escuro no rodapé quando .caixa
   está oculta. Este bloco, carregado por último, corrije isso.
   ═══════════════════════════════════════════════════════════════════════════ */
@media (max-width: 767px) {
  /* 1. Estende a página até o fundo real do viewport (sem gap) */
  body.nexa-configuracoes-ativa #pagina-configuracoes.pagina.ativa,
  body.nexa-configuracoes-ativa #pagina-config-conta-seguranca.pagina.ativa,
  body.nexa-configuracoes-ativa #pagina-config-meus-enderecos.pagina.ativa,
  body.nexa-configuracoes-ativa #pagina-config-contas-cartoes.pagina.ativa,
  body.nexa-configuracoes-ativa #pagina-config-notificacoes.pagina.ativa,
  body.nexa-configuracoes-ativa #pagina-config-idioma.pagina.ativa,
  body.nexa-configuracoes-ativa #pagina-config-avaliar.pagina.ativa,
  body.nexa-configuracoes-ativa #pagina-config-sobre.pagina.ativa,
  body.nexa-configuracoes-ativa #pagina-config-excluir-conta.pagina.ativa,
  body.nexa-configuracoes-ativa #pagina-config-form-endereco.pagina.ativa {
    bottom: 0 !important;
    background: #f5f6fb !important;
  }

  /* 2. Menu inferior completamente removido em Configurações */
  body.nexa-configuracoes-ativa .caixa {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    height: 0 !important;
    min-height: 0 !important;
  }

  /* 3. Body sem padding reservado para menu e com fundo claro */
  body.nexa-configuracoes-ativa {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    background: #f5f6fb !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
  }

  /* 4. html não mostra fundo escuro quando Config está ativa */
  body.nexa-configuracoes-ativa::after {
    content: '' !important;
    display: block !important;
    position: fixed !important;
    inset: 0 !important;
    background: #f5f6fb !important;
    z-index: -1 !important;
    pointer-events: none !important;
  }
}

/* Fallback :has() — garante caso a classe no body falhe */
@media (max-width: 767px) {
  body:has(#pagina-configuracoes.ativa) .caixa {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
  }

  body:has(#pagina-configuracoes.ativa) {
    padding-bottom: 0 !important;
    background: #f5f6fb !important;
  }

  body:has(#pagina-configuracoes.ativa) #pagina-configuracoes.pagina.ativa {
    bottom: 0 !important;
    background: #f5f6fb !important;
  }
}

/* ── Botão voltar Configurações: remove círculo/bola, mantém só a seta ── */
@media (max-width: 768px) {
  .config-btn-voltar {
    background: transparent !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }

  .config-btn-voltar::before,
  .config-btn-voltar::after {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
  }

  .config-btn-voltar:hover,
  .config-btn-voltar:active,
  .config-btn-voltar:focus {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
  }

  .config-btn-voltar svg {
    width: 22px !important;
    height: 22px !important;
    fill: none !important;
    stroke: #ffffff !important;
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   MINHAS COMPRAS — tela inteira mobile, sem menu inferior, fundo branco
   ═══════════════════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  body.nexa-minhas-compras-ativa {
    background: #ffffff !important;
    padding-bottom: 0 !important;
    margin: 0 !important;
    overflow-x: hidden !important;
  }

  body.nexa-minhas-compras-ativa .caixa,
  body.nexa-minhas-compras-ativa .topo {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  body.nexa-minhas-compras-ativa #pagina-minhas-compras.pagina.ativa {
    position: fixed !important;
    inset: 0 !important;
    bottom: 0 !important;
    background: #ffffff !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    z-index: 200 !important;
  }

  #pagina-minhas-compras {
    width: 100% !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    color: #111827 !important;
    box-sizing: border-box !important;
  }

  .minhas-compras-topo {
    width: 100% !important;
    min-height: 74px !important;
    padding: calc(14px + env(safe-area-inset-top, 0px)) 18px 14px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    background: linear-gradient(135deg, #7c3aed 0%, #2563eb 100%) !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 10 !important;
  }

  .btn-voltar-minhas-compras {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    background-image: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 34px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    cursor: pointer !important;
  }

  .btn-voltar-minhas-compras::before,
  .btn-voltar-minhas-compras::after {
    display: none !important;
    content: none !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  .btn-voltar-minhas-compras:hover,
  .btn-voltar-minhas-compras:active,
  .btn-voltar-minhas-compras:focus {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
  }

  .minhas-compras-topo h2 {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 21px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
  }

  .minhas-compras-conteudo {
    width: 100% !important;
    min-height: calc(100dvh - 74px) !important;
    padding: 22px 18px 36px !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
  }

  .minhas-compras-conteudo h3 {
    margin: 0 0 16px !important;
    color: #111827 !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
  }

  .minhas-compras-busca,
  .minhas-compras-ajuda,
  #input-busca-pedido,
  #btn-buscar-pedido {
    display: none !important;
  }

  .lista-minhas-compras {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  .minhas-compras-vazio {
    margin: 12px 0 0 !important;
    padding: 26px 16px !important;
    border: 1px dashed #d1d5db !important;
    border-radius: 14px !important;
    background: #f8fafc !important;
    color: #64748b !important;
    font-size: 14px !important;
    text-align: center !important;
  }

  .minha-compra-card {
    width: 100% !important;
    padding: 14px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05) !important;
    box-sizing: border-box !important;
  }

  .minha-compra-header {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
  }

  .minha-compra-id {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #6b7280 !important;
    font-family: monospace !important;
  }

  .minha-compra-data {
    font-size: 12px !important;
    color: #9ca3af !important;
    margin-left: auto !important;
  }

  .minha-compra-status {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #2563eb !important;
    background: #eff6ff !important;
    border-radius: 99px !important;
    padding: 2px 10px !important;
  }

  .minha-compra-row {
    display: flex !important;
    gap: 12px !important;
    align-items: center !important;
  }

  .minha-compra-img {
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    border-radius: 12px !important;
    object-fit: cover !important;
    background: #f3f4f6 !important;
  }

  .minha-compra-info {
    flex: 1 !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
  }

  .minha-compra-info strong {
    display: block !important;
    color: #111827 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .minha-compra-info span {
    display: block !important;
    color: #64748b !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
  }

  .minha-compra-preco {
    color: #2563eb !important;
    font-size: 14px !important;
    font-weight: 900 !important;
  }

  .minha-compra-footer {
    border-top: 1px solid #f3f4f6 !important;
    padding-top: 8px !important;
  }

  .minha-compra-total {
    font-size: 14px !important;
    font-weight: 800 !important;
    color: #111827 !important;
  }

  .minha-compra-sem-itens {
    font-size: 13px !important;
    color: #9ca3af !important;
    margin: 0 !important;
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   FAVORITOS — tela inteira mobile, tema claro, sem menu inferior
   ═══════════════════════════════════════════════════════════════════════════ */
@media (max-width: 767px) {
  /* Body em modo favoritos */
  body.nexa-favoritos-ativa {
    background: #f5f6fb !important;
    padding-bottom: 0 !important;
    overflow-x: hidden !important;
  }

  body.nexa-favoritos-ativa .caixa,
  body.nexa-favoritos-ativa .topo {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  /* Página em tela inteira */
  body.nexa-favoritos-ativa #pagina-favoritos.pagina.ativa {
    position: fixed !important;
    inset: 0 !important;
    bottom: 0 !important;
    background: #f5f6fb !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    z-index: 200 !important;
  }

  #pagina-favoritos {
    width: 100% !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #f5f6fb !important;
    color: #111827 !important;
    box-sizing: border-box !important;
  }

  /* Header gradiente roxo/azul — mesmo padrão do header mobile do Carrinho */
  .favoritos-topo {
    width: 100% !important;
    height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
    padding: 0 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    background: linear-gradient(135deg, #7c3aed 0%, #2563eb 100%) !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 10 !important;
  }

  /* Botão voltar — posicionado à esquerda, igual ao Carrinho */
  .btn-voltar-favoritos {
    appearance: none !important;
    -webkit-appearance: none !important;
    position: absolute !important;
    left: 4px !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    background-image: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 28px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .btn-voltar-favoritos::before,
  .btn-voltar-favoritos::after {
    display: none !important;
    content: none !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  .btn-voltar-favoritos:hover,
  .btn-voltar-favoritos:active,
  .btn-voltar-favoritos:focus {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
  }

  /* Título centralizado, mesmo peso/tamanho do header do Carrinho */
  .favoritos-topo h2 {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: 0.01em !important;
    line-height: 1.2 !important;
  }

  /* Conteúdo */
  .favoritos-conteudo {
    width: 100% !important;
    padding: 20px 16px 36px !important;
    background: #f5f6fb !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 32px !important;
  }

  .favoritos-section h3,
  .favoritos-recomendados-header h3 {
    margin: 0 0 14px !important;
    color: #111827 !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
  }

  /* Estado vazio */
  .lista-favoritos .favoritos-vazio {
    padding: 24px 16px !important;
    border: 1px dashed #d1d5db !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    text-align: center !important;
  }

  .lista-favoritos .favoritos-vazio strong {
    display: block !important;
    color: #374151 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    margin-bottom: 6px !important;
  }

  .lista-favoritos .favoritos-vazio p {
    color: #6b7280 !important;
    font-size: 13px !important;
    margin: 0 !important;
  }

  /* Grade e cards de favoritos/recomendados seguem o padrão da Categoria,
     definido em nexa-mobile-product-cards.css (#pagina-favoritos .produto-card) */
}
