/* ════════════════════════════════════════════════════
   ELETROFRIO — SINGLE PRODUCT PAGE
   Opção C: Híbrido Premium
   ════════════════════════════════════════════════════ */

/* ── Reset base ── */
.ef-single-product {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 16px 60px 4px; /* mínimo à esquerda → imagem cola na borda */
}

/* ── Breadcrumb customizado ── */
.storefront-breadcrumb {
  background: #F8F9FB !important;
  border-bottom: 1px solid #E8EAF0 !important;
}

/* ══════════════════════════════════════════
   LAYOUT PRINCIPAL: GALERIA + INFO
   ══════════════════════════════════════════ */
.ef-product-main {
  display: grid;
  grid-template-columns: 37% minmax(220px, 1fr) 33%;
  gap: 24px;
  align-items: start;
  padding-top: 24px;
  margin-bottom: 48px;
  width: 100%;
  box-sizing: border-box;
}

/* Col 3: Buy Box */
.ef-product-buybox-col {
  min-width: 0;
  width: 100%;
}

/* ── GALERIA (Esquerda) ── */
.ef-product-gallery {
  position: sticky;
  top: 24px;
  min-width: 0;
  max-width: 100%;
}

/* ── INFO (Direita) ── */
.ef-product-summary {
  min-width: 0;
  /* overflow: hidden removido — causava colapso do container no grid */
  overflow: visible;
  width: 100%;
  box-sizing: border-box;
}

/* Garantir que o .summary do WooCommerce não flutue dentro do grid */
.ef-product-summary .summary,
.ef-product-summary .entry-summary {
  float: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}

.ef-product-gallery .woocommerce-product-gallery {
  margin: 0 !important;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid #E8EAF0;
  background: #fff;
  box-shadow: 0 2px 16px rgba(27,47,138,.06);
  max-width: 100% !important;
  width: 100% !important;
}

/* Garante que o flexslider não vaze */
.ef-product-gallery .flex-viewport,
.ef-product-gallery .flexslider,
.ef-product-gallery .woocommerce-product-gallery__wrapper {
  max-width: 100% !important;
  width: 100% !important;
  overflow: hidden !important;
}

/* Imagem principal — preenche a coluna */
.ef-product-gallery .woocommerce-product-gallery__image {
  background: #F8F9FB;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1 / 1;
  width: 100%;
}

.ef-product-gallery .woocommerce-product-gallery__image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 32px !important;
  display: block !important;
}

/* Galeria sem imagem */
.ef-product-gallery .woocommerce-product-gallery--without-images {
  opacity: 1 !important;
}

.ef-product-gallery .woocommerce-product-gallery--without-images .woocommerce-product-gallery__image img {
  width: 100% !important;
  object-fit: contain !important;
  padding: 32px !important;
  background: #F8F9FB !important;
}

/* Placeholder sem imagem */
.ef-product-gallery .woocommerce-product-gallery__image--placeholder img {
  opacity: .35 !important;
  filter: grayscale(1) !important;
}

/* Miniaturas */
.ef-product-gallery .flex-control-thumbs {
  display: flex !important;
  gap: 8px !important;
  padding: 12px !important;
  background: #fff !important;
  border-top: 1px solid #F0F1F5 !important;
  flex-wrap: wrap !important;
}

.ef-product-gallery .flex-control-thumbs li {
  width: 64px !important;
  height: 64px !important;
  list-style: none !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  border: 2px solid #E8EAF0 !important;
  cursor: pointer !important;
  transition: border-color .2s !important;
}

.ef-product-gallery .flex-control-thumbs li.flex-active,
.ef-product-gallery .flex-control-thumbs li:hover {
  border-color: #00AECC !important;
}

.ef-product-gallery .flex-control-thumbs li img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 4px !important;
}

/* Badge em oferta */
.ef-product-gallery .onsale {
  position: absolute;
  top: 16px;
  left: 16px;
  background: #FF6B6B;
  color: #fff;
  padding: 6px 14px;
  border-radius: 20px;
  font-weight: 700;
  font-size: 12px;
  z-index: 10;
  letter-spacing: .04em;
}

/* ══════════════════════════════════════════
   COLUNA DIREITA — INFORMAÇÕES
   ══════════════════════════════════════════ */
.ef-product-summary {
  padding-top: 4px;
}

/* ── Categoria badge ── */
.ef-product-summary .posted_in,
.ef-gallery-meta .posted_in {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 4px;
  font-size: 11px;
  font-weight: 700;
  color: #00AECC;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.ef-product-summary .posted_in a,
.ef-gallery-meta .posted_in a {
  color: inherit;
  text-decoration: none;
}

/* ── Título ── */
.ef-product-summary .product_title {
  overflow-wrap: break-word;
  word-break: break-word;
  font-family: 'Barlow Condensed', 'Barlow', sans-serif;
  font-size: 26px;
  font-weight: 800;
  line-height: 1.2;
  color: #0f1e5a;
  text-transform: uppercase;
  letter-spacing: -.01em;
  margin: 0 0 10px;
}

/* ── SKU + Stock row ── */
.ef-product-summary .sku_wrapper,
.ef-product-summary .woocommerce-product-details__short-description ~ .sku_wrapper {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: #6B7280;
  margin-bottom: 4px;
}

.ef-product-summary .sku_wrapper .sku {
  font-family: monospace;
  font-weight: 700;
  color: #374151;
  background: #F3F4F6;
  padding: 2px 8px;
  border-radius: 4px;
}

/* ── Stock ── */
.ef-product-summary .stock {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 20px;
  margin: 4px 0 12px;
}

.ef-product-summary .stock.in-stock {
  background: #ECFDF5;
  color: #059669;
}

.ef-product-summary .stock.out-of-stock {
  background: #FEF2F2;
  color: #DC2626;
}

.ef-product-summary .stock::before {
  content: '';
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  flex-shrink: 0;
}

/* ── Avaliações ── */
.ef-product-summary .woocommerce-product-rating {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #F0F1F5;
}

.ef-product-summary .star-rating {
  float: none;
}

.ef-product-summary .woocommerce-review-link {
  color: #6B7280;
  font-size: 12px;
  text-decoration: none;
}

/* ── BLOCO DE PREÇO ── */
.ef-product-summary .price {
  background: #fff;
  border: 2px solid #E8EAF0;
  border-radius: 12px;
  padding: 20px;
  margin: 0 0 20px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  border-left: 4px solid #1B2F8A;
  box-shadow: 0 2px 12px rgba(27,47,138,.06);
}

.ef-product-summary .price .woocommerce-Price-amount.amount {
  font-family: 'Barlow Condensed', 'Barlow', sans-serif;
  font-size: 32px !important;
  font-weight: 800 !important;
  color: #1B2F8A !important;
  line-height: 1 !important;
}

/* Preço riscado (de:) */
.ef-product-summary .price del .woocommerce-Price-amount {
  font-size: 16px !important;
  color: #9CA3AF !important;
  font-weight: 500 !important;
}

.ef-product-summary .price del {
  opacity: 1 !important;
}

.ef-product-summary .price ins {
  text-decoration: none !important;
}

/* PIX price custom (injetado pelo theme) */
.ef-price-pix {
  font-size: 13px;
  font-weight: 700;
  color: #059669;
  display: flex;
  align-items: center;
  gap: 6px;
}

.ef-price-pix::before {
  content: '💳';
  font-size: 14px;
}

/* Parcelamento */
.ef-price-parcelas {
  font-size: 12px;
  color: #6B7280;
}

/* Credenciada price badge */
.ef-credenciada-price-block {
  margin-top: 8px;
  padding-top: 10px;
  border-top: 1px dashed #E8EAF0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.ef-credenciada-badge {
  background: linear-gradient(135deg, #1B2F8A, #2544B8);
  color: #fff;
  padding: 4px 10px;
  border-radius: 20px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  white-space: nowrap;
}

/* ── Descrição curta ── */
.ef-product-summary .woocommerce-product-details__short-description {
  font-size: 13px;
  line-height: 1.7;
  color: #4B5563;
  margin-bottom: 20px;
  padding: 14px 16px;
  background: #FAFBFC;
  border-radius: 8px;
  border-left: 3px solid #E8EAF0;
}

.ef-product-summary .woocommerce-product-details__short-description p:last-child {
  margin: 0;
}

/* ── FORMULÁRIO DE COMPRA ── */
.ef-product-summary form.cart {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 20px;
}

/* Quantidade */
.ef-product-summary form.cart .quantity {
  display: flex;
  align-items: center;
  border: 2px solid #E8EAF0;
  border-radius: 8px;
  overflow: hidden;
  width: fit-content;
  height: 46px;
}

.ef-product-summary form.cart .quantity input[type="number"] {
  border: none !important;
  outline: none !important;
  text-align: center !important;
  width: 60px !important;
  height: 100% !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #1B2F8A !important;
  padding: 0 !important;
  background: #fff !important;
  -moz-appearance: textfield !important;
}

.ef-product-summary form.cart .quantity input::-webkit-outer-spin-button,
.ef-product-summary form.cart .quantity input::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
}

/* Botão de adicionar ao carrinho */
.ef-product-summary form.cart .single_add_to_cart_button,
.ef-product-summary form.cart button[type="submit"] {
  background: #1B2F8A !important;
  color: #fff !important;
  border: none !important;
  padding: 14px 32px !important;
  font-family: 'Barlow Condensed', 'Barlow', sans-serif !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  transition: background .2s, transform .15s !important;
  width: 100% !important;
  min-height: 52px !important;
  height: auto !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  white-space: normal !important;
}

.ef-product-summary form.cart .single_add_to_cart_button:hover {
  background: #00AECC !important;
  transform: translateY(-1px) !important;
}

/* Botão Comprar Agora (custom do plugin) */
.ef-product-summary .ef-buynow-btn,
.ef-product-summary #ef-buynow-btn {
  display: block !important;
  width: 100% !important;
  height: 52px !important;
  background: #00AECC !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  font-family: 'Barlow Condensed', 'Barlow', sans-serif !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  cursor: pointer !important;
  transition: background .2s !important;
}

.ef-product-summary .ef-buynow-btn:hover,
.ef-product-summary #ef-buynow-btn:hover {
  background: #0099B5 !important;
}

/* ── Benefícios ── */
.ef-product-benefits {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin: 16px 0;
}

.ef-benefit-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 12px 8px;
  background: #F8F9FB;
  border-radius: 10px;
  border: 1px solid #E8EAF0;
  gap: 6px;
}

.ef-benefit-item .ef-benefit-icon {
  font-size: 22px;
}

.ef-benefit-item .ef-benefit-label {
  font-size: 10px;
  font-weight: 700;
  color: #374151;
  text-transform: uppercase;
  letter-spacing: .04em;
  line-height: 1.3;
}

/* ── Meta (SKU, Categoria, Tags) ── */
.ef-product-summary .product_meta {
  font-size: 12px;
  color: #6B7280;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 14px 16px;
  background: #F8F9FB;
  border-radius: 8px;
  margin-top: 16px;
}

.ef-product-summary .product_meta > span {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.ef-product-summary .product_meta strong,
.ef-product-summary .product_meta > span > span:first-child {
  color: #374151;
  font-weight: 700;
  min-width: 80px;
}

.ef-product-summary .product_meta a {
  color: #1B2F8A;
  text-decoration: none;
}

.ef-product-summary .product_meta a:hover {
  color: #00AECC;
}

/* ══════════════════════════════════════════
   BUY BOX (MELHOR OFERTA)
   ══════════════════════════════════════════ */
.eletrofrio-buybox {
  margin: 0 !important;
  border-radius: 12px !important;
  overflow: visible !important;
  border: 2px solid #E8EAF0 !important;
  box-shadow: 0 2px 12px rgba(27,47,138,.05) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.eletrofrio-buybox-header {
  background: linear-gradient(135deg, #1B2F8A, #2544B8) !important;
  padding: 8px 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.eletrofrio-buybox-header h3 {
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  margin: 0 !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  letter-spacing: .04em !important;
}

.eletrofrio-buybox-badge {
  background: #00AECC !important;
  color: #fff !important;
  padding: 3px 10px !important;
  border-radius: 20px !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
}

.eletrofrio-buybox-content {
  padding: 12px 14px !important;
  background: #fff !important;
  border-radius: 0 0 10px 10px !important;
  overflow: hidden !important;
}

/* Winner card compacto */
.eletrofrio-buybox-winner {
  background: #F0F7FF !important;
  border: 2px solid #00AECC !important;
  border-radius: 8px !important;
  padding: 10px 12px !important;
  margin-bottom: 10px !important;
}

.eletrofrio-buybox-winner-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 4px !important;
}

.eletrofrio-winner-name {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #1B2F8A !important;
}

.eletrofrio-winner-price {
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #0a8c2a !important;
}

.eletrofrio-buybox-winner-meta {
  display: flex !important;
  gap: 10px !important;
  font-size: 11px !important;
  color: #555 !important;
}

.eletrofrio-stock-badge {
  color: #0a8c2a !important;
  font-weight: 600 !important;
}

/* Remover estilos antigos do winner */
.eletrofrio-buybox-winner-title {
  display: none !important;
}

/* Tabela de comparação */
.eletrofrio-buybox table {
  width: 100% !important;
  border-collapse: collapse !important;
  font-size: 12px !important;
}

.eletrofrio-buybox table th {
  background: #F3F4F6 !important;
  color: #374151 !important;
  font-weight: 700 !important;
  padding: 5px 6px !important;
  text-align: left !important;
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: .03em !important;
  white-space: nowrap !important;
}

.eletrofrio-buybox table td {
  padding: 5px 6px !important;
  border-bottom: 1px solid #F0F1F5 !important;
  color: #374151 !important;
  font-size: 11px !important;
  white-space: nowrap !important;
  max-width: 130px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.eletrofrio-buybox table tr:last-child td {
  border-bottom: none !important;
}

.eletrofrio-buybox table tr:first-child td {
  font-weight: 700 !important;
  background: #FAFBFF !important;
}

/* ══════════════════════════════════════════
   STICKY BAR (CTA flutuante no scroll)
   ══════════════════════════════════════════ */
.ef-sticky-bar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  background: #fff;
  border-bottom: 3px solid #1B2F8A;
  padding: 10px 32px;
  display: none;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  box-shadow: 0 4px 20px rgba(0,0,0,.12);
}

.ef-sticky-bar.visible {
  display: flex;
}

.ef-sticky-bar__title {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 16px;
  font-weight: 800;
  color: #0f1e5a;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 400px;
}

.ef-sticky-bar__price {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 22px;
  font-weight: 800;
  color: #1B2F8A;
  white-space: nowrap;
}

.ef-sticky-bar__btn {
  background: #1B2F8A;
  color: #fff;
  border: none;
  padding: 10px 24px;
  border-radius: 8px;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
  cursor: pointer;
  white-space: nowrap;
  transition: background .2s;
  text-decoration: none;
}

.ef-sticky-bar__btn:hover {
  background: #00AECC;
  color: #fff;
}

/* ══════════════════════════════════════════
   ABAS (Tabs) — Descrição | Especificações | Avaliações
   ══════════════════════════════════════════ */
.ef-product-details {
  margin-top: 0;
  border-top: 2px solid #F0F1F5;
  padding-top: 40px;
}

.woocommerce-tabs {
  margin-bottom: 48px;
}

.woocommerce-tabs ul.tabs {
  display: flex;
  gap: 4px;
  border-bottom: 2px solid #E8EAF0;
  list-style: none !important;
  margin: 0 0 0 !important;
  padding: 0 !important;
}

.woocommerce-tabs ul.tabs::before,
.woocommerce-tabs ul.tabs::after {
  display: none !important;
}

.woocommerce-tabs ul.tabs li {
  position: relative;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
  border-radius: 0 !important;
}

.woocommerce-tabs ul.tabs li a {
  display: block;
  padding: 14px 22px;
  color: #6B7280;
  text-decoration: none;
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .06em;
  border-bottom: 3px solid transparent;
  margin-bottom: -2px;
  transition: color .2s, border-color .2s;
  background: none !important;
}

.woocommerce-tabs ul.tabs li:hover a,
.woocommerce-tabs ul.tabs li.active a {
  color: #1B2F8A;
}

.woocommerce-tabs ul.tabs li.active a {
  border-bottom-color: #00AECC !important;
  background: none !important;
}

.woocommerce-tabs ul.tabs li::before,
.woocommerce-tabs ul.tabs li::after {
  display: none !important;
}

/* Painéis das abas */
.woocommerce-tabs .woocommerce-Tabs-panel {
  padding: 28px 0;
  font-size: 14px;
  line-height: 1.7;
  color: #4B5563;
}

.woocommerce-tabs .woocommerce-Tabs-panel h2 {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 20px;
  font-weight: 800;
  color: #0f1e5a;
  margin-bottom: 16px;
  text-transform: uppercase;
}

.woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

.woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes tr {
  border-bottom: 1px solid #F0F1F5;
}

.woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes th {
  font-weight: 700;
  color: #374151;
  background: #F8F9FB;
  padding: 10px 16px;
  width: 200px;
  text-align: left;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes td {
  padding: 10px 16px;
  color: #4B5563;
}

/* ══════════════════════════════════════════
   PRODUTOS RELACIONADOS
   ══════════════════════════════════════════ */
.related.products,
.upsells.products {
  margin-top: 0;
  padding-top: 40px;
  border-top: 2px solid #F0F1F5;
}

.related.products > h2,
.upsells.products > h2 {
  font-family: 'Barlow Condensed', 'Barlow', sans-serif;
  font-size: 22px;
  font-weight: 800;
  color: #0f1e5a;
  text-transform: uppercase;
  letter-spacing: -.01em;
  margin-bottom: 24px;
  padding-bottom: 12px;
  border-bottom: 3px solid #00AECC;
  display: inline-block;
}

/* Grid igual ao catálogo */
.related.products ul.products,
.upsells.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 16px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
}

.related.products ul.products::before,
.related.products ul.products::after,
.upsells.products ul.products::before,
.upsells.products ul.products::after {
  display: none !important;
}

.related.products ul.products li.product,
.upsells.products ul.products li.product {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  clear: none !important;
}

/* ══════════════════════════════════════════
   RESPONSIVO
   ══════════════════════════════════════════ */
@media (max-width: 1200px) {
  /* Tablet largo: 3 colunas menores */
  .ef-product-main {
    grid-template-columns: 35% minmax(180px, 1fr) 28%;
    gap: 20px;
  }
}

@media (max-width: 1024px) {
  /* Tablet: galeria | summary empilhados, buybox full width */
  .ef-product-main {
    grid-template-columns: 45% minmax(180px, 1fr);
    gap: 20px;
  }
  .ef-product-buybox-col {
    grid-column: 1 / -1;
  }
}

@media (max-width: 900px) {
  /* Mobile: 1 coluna, tudo empilhado */
  .ef-product-main {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .ef-product-buybox-col {
    grid-column: 1;
  }

  .ef-product-gallery {
    position: static;
  }

  .ef-product-summary .product_title {
  overflow-wrap: break-word;
  word-break: break-word;
    font-size: 22px;
  }

  .related.products ul.products,
  .upsells.products ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .ef-sticky-bar {
    padding: 8px 16px;
    gap: 12px;
  }

  .ef-sticky-bar__title {
    display: none;
  }
}

@media (max-width: 480px) {
  .ef-single-product {
    padding: 0 16px 40px;
  }

  .ef-product-benefits {
    grid-template-columns: repeat(3, 1fr);
  }

  .related.products ul.products,
  .upsells.products ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
  }
}

/* ══════════════════════════════════════════
   PRODUTOS RELACIONADOS — CARDS
   (mirror do catalog.css fora do #eletrofrio-product-grid)
   ══════════════════════════════════════════ */
.related.products ul.products li.product .product-card,
.upsells.products ul.products li.product .product-card {
  display: flex !important; flex-direction: column !important;
  height: 100% !important; background: #fff !important;
  border: 1px solid #E8EAF0 !important; border-radius: 10px !important;
  overflow: hidden !important;
  transition: transform .2s, box-shadow .2s, border-color .2s !important;
  cursor: pointer !important;
}
.related.products ul.products li.product .product-card:hover,
.upsells.products ul.products li.product .product-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 24px rgba(27,47,138,.10) !important;
  border-color: #00AECC !important;
}
.related.products ul.products li.product .product-img,
.upsells.products ul.products li.product .product-img {
  height: 160px !important; background: #F5F7FA !important;
  display: flex !important; align-items: center !important;
  justify-content: center !important; overflow: hidden !important;
  border-bottom: 1px solid #F0F1F5 !important; position: relative !important;
  text-decoration: none !important;
}
.related.products ul.products li.product .product-img__thumb,
.upsells.products ul.products li.product .product-img__thumb {
  width: 100% !important; height: 100% !important;
  object-fit: contain !important; padding: 12px !important;
}
.related.products ul.products li.product .product-img svg,
.upsells.products ul.products li.product .product-img svg {
  width: 70px !important; height: 70px !important;
}
.related.products ul.products li.product .product-body,
.upsells.products ul.products li.product .product-body {
  padding: 10px 12px 6px !important; flex: 1 !important;
  display: flex !important; flex-direction: column !important; gap: 3px !important;
}
.related.products ul.products li.product .product-brand,
.upsells.products ul.products li.product .product-brand {
  font-size: 9px !important; font-weight: 700 !important;
  color: #00AECC !important; letter-spacing: .1em !important; text-transform: uppercase !important;
}
.related.products ul.products li.product .product-name,
.upsells.products ul.products li.product .product-name {
  font-size: 12px !important; font-weight: 600 !important;
  color: #1A1A2E !important; line-height: 1.4 !important;
  display: -webkit-box !important; -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important; overflow: hidden !important;
  text-decoration: none !important; flex: 1 !important;
}
.related.products ul.products li.product .product-sku,
.upsells.products ul.products li.product .product-sku {
  font-size: 10px !important; color: #9CA3AF !important; font-family: monospace !important;
}
.related.products ul.products li.product .product-foot,
.upsells.products ul.products li.product .product-foot {
  padding: 8px 12px 12px !important; display: flex !important;
  flex-direction: column !important; gap: 5px !important;
  border-top: 1px solid #F0F1F5 !important;
}
.related.products ul.products li.product .product-price,
.upsells.products ul.products li.product .product-price {
  font-size: 16px !important; font-weight: 800 !important;
  color: #1B2F8A !important; line-height: 1 !important;
}
.related.products ul.products li.product .product-price-old,
.upsells.products ul.products li.product .product-price-old {
  font-size: 11px !important; color: #9CA3AF !important; text-decoration: line-through !important;
}
.related.products ul.products li.product .btn-add-cart,
.related.products ul.products li.product .add_to_cart_button,
.related.products ul.products li.product .button,
.upsells.products ul.products li.product .btn-add-cart,
.upsells.products ul.products li.product .add_to_cart_button,
.upsells.products ul.products li.product .button {
  display: block !important; width: 100% !important; text-align: center !important;
  background: #1B2F8A !important; color: #fff !important;
  padding: 8px 12px !important; border-radius: 6px !important;
  font-size: 11px !important; font-weight: 700 !important; letter-spacing: .06em !important;
  border: none !important; cursor: pointer !important;
  text-decoration: none !important; white-space: nowrap !important;
  overflow: hidden !important; text-overflow: ellipsis !important; margin-top: 4px !important;
  box-sizing: border-box !important;
}
.related.products ul.products li.product .btn-add-cart:hover,
.related.products ul.products li.product .add_to_cart_button:hover,
.upsells.products ul.products li.product .button:hover {
  background: #00AECC !important;
}

/* ══════════════════════════════════════════
   OCULTAR NAVEGAÇÃO LATERAL (prev/next produto)
   ══════════════════════════════════════════ */
.storefront-product-pagination {
  display: none !important;
}

/* ══════════════════════════════════════════
   BADGE DE ESTOQUE
   ══════════════════════════════════════════ */
.ef-stock-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 20px;
  margin: 4px 0 8px;
}
.ef-stock-in {
  background: #E6F9EE;
  color: #0a8c2a;
  border: 1px solid #b2dfcc;
}
.ef-stock-out {
  background: #FEE2E2;
  color: #dc2626;
  border: 1px solid #fca5a5;
}

/* ══════════════════════════════════════════
   PARCELAMENTO
   ══════════════════════════════════════════ */
.ef-parcelamento {
  font-size: 12px;
  color: #555;
  margin: 0 0 8px;
}
.ef-parcelamento strong {
  color: #1B2F8A;
}

/* ══════════════════════════════════════════
   SKU COPIÁVEL
   ══════════════════════════════════════════ */
/* Meta abaixo da galeria */
.ef-gallery-meta {
  display: block;
  width: 100%;
  box-sizing: border-box;
  margin-top: 12px;
  padding: 12px 4px 0;
  border-top: 1px solid #E8EAF0;
}

.ef-gallery-meta .ef-product-meta {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  width: 100% !important;
  box-sizing: border-box;
}

.ef-product-meta {
  margin-top: 0 !important;
  font-size: 12px !important;
  color: #666 !important;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.ef-sku-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}
.ef-sku-label {
  font-weight: 600;
  color: #444;
}
.ef-sku-value {
  font-family: monospace;
  background: #F3F4F6;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 12px;
}
.ef-sku-copy {
  background: none !important;
  border: 1px solid #D1D5DB !important;
  border-radius: 4px !important;
  padding: 3px 5px !important;
  cursor: pointer !important;
  color: #6B7280 !important;
  line-height: 1 !important;
  min-height: unset !important;
  height: auto !important;
  transition: all .15s;
}
.ef-sku-copy:hover,
.ef-sku-copy.copied {
  background: #E6F9EE !important;
  border-color: #0a8c2a !important;
  color: #0a8c2a !important;
}
.ef-sku-copied {
  font-size: 11px;
  color: #0a8c2a;
  font-weight: 600;
  opacity: 0;
  transition: opacity .2s;
  pointer-events: none;
}
.ef-sku-copied.visible {
  opacity: 1;
}
.ef-meta-label {
  font-weight: 600;
  color: #444;
}
.ef-datasheet-link {
  margin-top: 4px;
}
.ef-datasheet-link a {
  color: #1B2F8A;
  font-size: 12px;
  text-decoration: none;
  font-weight: 500;
}
.ef-datasheet-link a:hover {
  text-decoration: underline;
}

/* ══════════════════════════════════════════
   ABAS DE PRODUTO (WooCommerce tabs styled)
   ══════════════════════════════════════════ */
.ef-product-details {
  margin-top: 40px;
  border-top: 2px solid #E8EAF0;
  padding-top: 24px;
}

/* Tabs nav */
.ef-product-details .woocommerce-tabs ul.tabs {
  display: flex !important;
  gap: 4px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 0 !important;
  border-bottom: 2px solid #E8EAF0 !important;
}
.ef-product-details .woocommerce-tabs ul.tabs li {
  margin: 0 !important;
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
}
.ef-product-details .woocommerce-tabs ul.tabs li a {
  display: block !important;
  padding: 10px 20px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #6B7280 !important;
  text-decoration: none !important;
  border-bottom: 2px solid transparent !important;
  margin-bottom: -2px !important;
  transition: color .15s, border-color .15s !important;
  background: none !important;
}
.ef-product-details .woocommerce-tabs ul.tabs li.active a,
.ef-product-details .woocommerce-tabs ul.tabs li a:hover {
  color: #1B2F8A !important;
  border-bottom-color: #1B2F8A !important;
}

/* Tab panels */
.ef-product-details .woocommerce-tabs .panel {
  padding: 24px 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: none !important;
}
.ef-product-details .woocommerce-tabs .panel h2 {
  display: none !important; /* Esconde título redundante "Descrição" */
}
.ef-product-details .woocommerce-tabs .panel p,
.ef-product-details .woocommerce-tabs .panel li {
  font-size: 14px !important;
  color: #374151 !important;
  line-height: 1.7 !important;
}

/* Compatibilidade e Ficha Técnica tabs */
.ef-compat-tab,
.ef-ficha-tab {
  font-size: 14px;
  color: #374151;
  line-height: 1.7;
}
