/** Shopify CDN: Minification failed

Line 381:4 Unexpected "{"
Line 381:5 Expected identifier but found "%"
Line 394:4 Unexpected "{"
Line 394:5 Expected identifier but found "%"

**/
/*
    Agência mofo design
        Página de estilo adicional a fim de não modificar tanto a estrutura atual do tema,
        facilitando o processo de atualização.

        Elementos próprios da mofo também terão estilo adicionado aqui 
        quando não no próprio elemento (mais raro);
 */

 /* Gerais */
.hidden {
   display: none !important;
}

@media screen and (max-width: 700px) {
   .sm-hide {
      display: none !important;
   }
}
@media screen and (min-width: 701px) and (max-width: 100px) {
   .md-hide {
      display: none !important;
   }
}
@media screen and (min-width: 981px) {
   .lg-hide {
      display: none !important;
   }
}

/*--
   Aplicativo Happy Birthday
   - Chamado #4020
--*/
#hb_form {
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   gap: 1rem;

   & .button {
      width: 100%;
      font-size: 100%;
   }
}

#hb_page-wrapper .hb-input-field-wrapper,
#hb_birthday_wrapper > * {
   background-color: white;
   border: 1px solid darkgray;
   padding: 0.2rem 0.5rem;
   position: relative;
   width: 100%;
}

#hb_birthday_wrapper > *:hover,
#hb_page-wrapper .hb-input-field-wrapper:hover {
   box-shadow: 0 0 0 2px rgba(0,0,0,0.1);
}

#hb_birthday_wrapper > *:focus-within ,
#hb_page-wrapper .hb-input-field-wrapper:focus-within {
   border: 1px solid #000;
}

#hb_page-wrapper .hb-input-field {
   background-color: var(--hb-input-background-color);
   margin-top: 0.5rem;  
   border: unset !important; 

   &:focus-visible {
      outline: unset !important;
   }
}

#hb_page-wrapper label {  
   display: block;
   position: absolute;
   left: 0.2rem;
   top: 0.2rem;
   font-size: 0.7rem;
}

.hb-input-field-wrapper:hover label,
#hb_birthday_wrapper:hover > *,
.hb-input-field-wrapper:focus-within label,
#hb_birthday_wrapper:focus-within > * {
   color: darkgray;
}


/*
   -- Product Card Horizontal --
   Chamado #3984
      - Padrão de imagem forçado, seguindo a proporção 4 / 5 que normalmente vemos nas imagens do produto
*/

.horizontal-product-card__figure img {
   aspect-ratio: 4 / 5;
}

/*
   Shipping Estimator - Section
      - chamado #3998;
      - Estilização da calculadora de frete utilizada na página do produto
         - De forma genérica, pode ser mais facilmente reutilizada agora se o snippet for inserido na div.shipping-estimator-container em sua implementação
*/
.shipping-estimator-container,
.side-container .shipping-estimator-container,
.list-disc,
.list-disc li {
   display: flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   margin: 0;
} 

.shipping-estimator-container { 
    width: 100%;
    margin: 1rem 0;
}

.shipping-estimator {
   transition: width .4s ease-in-out;
   @media screen and (max-width: 955px) {
      width: 90%;
   }
}

.list-disc {
   list-style: none;
   gap: 1rem;
   flex-direction: column;
}

.list-disc li {
   justify-content: space-between;
   width: 100%;
   padding: 1rem 1.2rem;
   -webkit-appearance: none;
   appearance: none;
   padding: var(--input-padding-block) var(--input-padding-inline);
   border-radius: var(--input-border-radius);
   border-width: 1px;
   background: rgb(var(--input-background, transparent));
   box-shadow: 0 1px 3px rgb(var(--text-color) / .08);
}

.side-container .shipping-estimator__form {
   flex-direction: column;
} 
.side-container .shipping-estimator__form .select {
   max-width: 100%;
}

.side-container .shipping-estimator {
   width: 100%;
}



/* 
   - Chamado #3999
   - Normalização do posicionamento dos botões de scroll-carousel conforme o Anna Prata BR 
   - Ocultação dos botões de navegação quando no carrinho (recentemente vistos alterado)
*/

@media screen and (pointer: fine) {
  .floating-controls-container {
    padding-inline: 4.625rem;
    display: block;
    position: relative;
  }

  .floating-controls-container > .prev-next-button {
    display: none;
  }

  .floating-controls-container > .is-scrollable ~ .prev-next-button {
    z-index: 1;
    display: grid;
    position: absolute;
    inset-block-start: calc(50% - 1.5625rem);
  }

  .floating-controls-container > .prev-next-button--prev {
    inset-inline-start: var(--floating-controls-inset-inline, 0);
  }

  .floating-controls-container > .prev-next-button--next {
    inset-inline-end: var(--floating-controls-inset-inline, 0);
  }

  .floating-controls-container--inside {
    --floating-controls-inset-inline: 1.5rem;
    padding-inline: 0;
  }

  .floating-controls-container--on-hover > .prev-next-button {
    opacity: 0;
    transform: translateY(-10px);
  }

  .floating-controls-container--on-hover:hover > .prev-next-button:not([disabled]) {
    opacity: 1;
    transform: translateY(0);
  }
}

.shopify-section--main-cart .shopify-section--recently-viewed-products .prev-next-button {
   display: none;
}

/* Chamado #4001 */
/*-- Wishlist Hero --*/
.MuiButton-containedPrimary,
.wishlist-popup-login-btn,
.MuiSnackbarContent-message .MuiCardHeader-root {
    background-color: #000 !important; /* Ver se tem como usar uma variável */
 }
 
 .MuiButtonBase-root .MuiButton-label {
    color: #000 !important;
 }

 
 .MuiButtonGroup-root .Mui-disabled {
   background-color: #FFF !important;
   border: 1px solid #000 !important;

   & > .MuiButton-label {
      color: #000 !important;
   }
 }
 
 @media (min-width: 1920px) {
    .MuiGrid-grid-xl-2 {
        max-width: 25% !important;
        flex-basis: 25% !important;
    }
}

/*! Selo Personalizado MOFO Chamado 4017*/
.product-card__custom-selo {
  position: absolute;
  inset-block-start: .25rem;
  inset-inline-start: .25rem;
  z-index: 1;
  background: black;
  color: white;
  width: 5rem;
  height: 2rem;
  font-size: 1rem;
  display: flex;
  justify-content: center;
}

/*
   -- Mobile Anchor --
      - Chamado #4005
      - Estilização do botão ancora em mobile
 */ 
 .product-gallery__media {
   position: relative;

   & > .mobile-anchor {
      position: absolute;
      bottom: 2rem;
      right: 2rem;
      padding: 0.5rem;
      background-color: #efefef;
      z-index: 1;
      width: 40px;
      height: 40px;
      display: flex;
      justify-content: center;
      align-items: center;
      border: 0.2px solid rgb(221, 221, 221);
      border-radius: 20px;
   }
 }
 
/* --- CORREÇÃO DE TEXTO BRANCO (WISH LIST HERO) --- */

/* 1. Alvo no texto interno de todos os botões pretos do app */
.wishlist-hero-list-card-footer-add-to-cart span,
.wishlist-hero-login-button span,
button[class*="wishlist-hero-login-button"] span,
.wishlist-hero-add-to-cart-button span {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important; /* Força o preenchimento em branco */
    opacity: 1 !important;
}

/* 2. Garante que o fundo do botão do card continue preto */
.wishlist-hero-list-card-footer-add-to-cart {
    background-color: #000000 !important;
    border: none !important;
}

/* 3. Rodapé: mantém o texto preto no fundo branco (Adicione tudo / Remover tudo) */
.wishlist-hero-items-list-footer-container button span {
    color: #000000 !important;
    -webkit-text-fill-color: #000000 !important;
}

/* 4. Remove a faixa cinza do rodapé */
div[class*="wishlist-hero-items-list-footer-container"] {
    background-color: transparent !important;
}

/* --- BOTÃO FORA DE ESTOQUE: PRETO COM TEXTO BRANCO --- */

/* 1. Força o fundo preto mesmo quando o botão está desativado (sem estoque) */
.wishlist-hero-add-to-cart-button.Mui-disabled,
button[disabled].wishlist-hero-list-card-footer-add-to-cart {
    background-color: #000000 !important; /* Fundo Preto */
    background: #000000 !important;
    opacity: 1 !important; /* Remove a transparência de item desativado */
}

/* 2. Força o texto "FORA DE ESTOQUE" a ficar branco */
.wishlist-hero-add-to-cart-button.Mui-disabled .MuiButton-label,
button[disabled].wishlist-hero-list-card-footer-add-to-cart .MuiButton-label {
    color: #ffffff !important; /* Texto Branco */
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
}

/* 3. Ajuste extra para garantir que a borda não fique cinza */
.wishlist-hero-add-to-cart-button.Mui-disabled {
    border: none !important;
}

/* --- FORÇAR TEXTO BRANCO NO BOTÃO CONECTE-SE --- */

/* 1. Alvo direto no span que contém o texto dentro do botão de login */
.wishlist-popup-login-btn .MuiButton-label,
button.wishlist-popup-login-btn span,
.wishlist-hero-login-button .MuiButton-label {
    color: #ffffff !important; /* Branco absoluto */
    -webkit-text-fill-color: #ffffff !important; /* Sobrescreve estilos injetados pelo app */
    opacity: 1 !important;
    visibility: visible !important;
}

/* 2. Garante que o fundo do botão permaneça preto para o contraste */
button.wishlist-popup-login-btn,
.wishlist-hero-login-button {
    background-color: #000000 !important;
}

 /*! Selo Personalizado MOFO 4017 e 4063*/
.product-card__custom-selo {
  position: absolute;
  inset-block-start: .25rem;
  inset-inline-start: .25rem;
  z-index: 1;
  display: flex;
  justify-content: center;
  text-transform: capitalize;
}

  /* Esconder vídeo mobile por padrão em todas as telas */
  .video-mobile {
    display: none;
  }
  
  /* Mostrar vídeo mobile APENAS em telas menores que 768px quando o checkbox estiver ativo */
  @media screen and (max-width: 767px) {
    {% if section.settings.enable_mobile_video and section.settings.mobile_video != blank %}
      .video-desktop {
        display: none !important;
      }
      
      .video-mobile {
        display: block !important;
      }
      
      /* Esconder o botão de play do desktop que aparece sobreposto */
      .play-button {
        display: none !important;
      }
    {% endif %}
  }
  
  /* Garantir que em telas maiores que 768px o vídeo desktop apareça normalmente */
  @media screen and (min-width: 768px) {
    .video-desktop {
      display: block !important;
    }
    
    .video-mobile {
      display: none !important;
    }
    
    /* Garantir que o botão de play apareça no desktop */
    .play-button {
      display: flex !important;
    }
  }
  
  /* Container do vídeo mobile com proporção 4:3 */
  .video-mobile {
    position: relative;
    width: 100%;
    display: block;
  }
  
  .video-mobile-container {
    position: relative;
    width: 100%;
    padding: 50%; /* 4:3 Aspect Ratio */
    overflow: hidden;
    background-color: #000;
  }
  
  /* Estilos padrão para vídeo e poster */
  .video-mobile-container video,
  .video-mobile-container .video-poster {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  
  /* Cover mode - preenche o container (corta se necessário) */
  .video-mobile-container.video-cover video,
  .video-mobile-container.video-cover .video-poster {
    object-fit: cover;
  }
  
  /* Contain mode - mostra todo o vídeo com letterbox */
  .video-mobile-container.video-contain video,
  .video-mobile-container.video-contain .video-poster {
    object-fit: contain;
  }
  
  /* Remover qualquer pointer-events que possa estar bloqueando o clique */
  .video-mobile {
    pointer-events: auto !important;
  }
  
  .video-mobile-container video {
    pointer-events: auto !important;
    cursor: pointer;
  }
