/* ==========================================================================
   RODADA 5 · FRENTE B — ESTADOS
   Bottega D'Oro · 08/09/2026
   Os mesmos endereços em outra situação: peça esgotada, peça com aro,
   peça em promoção, sacola com cupom aceito e recusado, frete com e sem CEP.
   Carrega DEPOIS de style.css (dep bottega-child), então vence por ordem de
   cascata sem precisar subir especificidade nem editar a folha principal.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1) PEÇA ESGOTADA
   O "Fora de estoque" nascia como frase solta do WooCommerce, no mesmo peso
   do texto corrido; e o formulário "avise-me" tinha botão RETO (a régua manda
   pílula em todo botão) e campos de 52px centralizados, fora da régua de 42.
   -------------------------------------------------------------------------- */
.single-product .summary .stock.out-of-stock{
  display:inline-block;margin:0 0 14px;
  font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--bordo-accent)}

.cwginstock-panel-primary{margin-top:2px}
.cwginstock-panel-body .col-md-12{padding-left:0!important;padding-right:0!important}
.cwginstock-subscribe-form input.cwgstock_name,
.cwginstock-subscribe-form input.cwgstock_email,
.cwgstock_name,.cwgstock_email{
  width:100%!important;height:42px!important;padding:0 14px!important;
  text-align:left!important;font-size:.95rem!important;margin-bottom:12px!important}
.cwginstock-subscribe-form button.cwgstock_button,
.cwginstock-subscribe-form input[type=submit].cwgstock_button,
.cwgstock_button{
  border-radius:999px!important;min-height:42px;height:auto!important;
  padding:0 24px!important;display:inline-flex;align-items:center;justify-content:center;
  white-space:nowrap;line-height:1;font-family:var(--body)!important;
  font-size:.6875rem!important;letter-spacing:.16em!important;font-weight:400}
/* nota abaixo do botão: diz o que a loja faz com o e-mail */
.bd-avise-nota{
  margin:10px 0 0;font-size:.75rem;line-height:1.5;color:var(--ink-soft);text-align:center}

/* --------------------------------------------------------------------------
   2) PEÇA COM ARO (variações)
   A tabela de variações herdava o fundo cinza de célula do tema-pai
   (th.label #f8f8f8 / td.value #fdfdfd, 16px de padding): virava uma caixa
   partida em dois tons no meio da coluna de compra. O tema tentava estilizar
   `td.label`, mas o WooCommerce imprime `th.label` — a regra nunca pegou.
   -------------------------------------------------------------------------- */
.single-product table.variations,
.single-product table.variations tbody,
.single-product table.variations tr,
.single-product table.variations th,
.single-product table.variations td{
  display:block;width:auto;background:transparent!important;border:0!important;padding:0!important}
.single-product table.variations{margin:0 0 4px}
.single-product table.variations th.label,
.single-product table.variations th.label label{
  font-size:.78125rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink-soft);margin:0 0 8px;display:block;font-weight:400}
/* aro como círculo: a casa arredonda todo alvo clicável */
.bd-aro-chip{border-radius:999px!important;min-width:44px;height:44px}
.bd-aro-chip.is-on{border-color:var(--ink)}
/* aro sem estoque continua legível como ESCOLHIDO quando é o escolhido —
   antes o `background:transparent` do risco apagava o estado selecionado
   e a peça ficava sem nenhuma marca de qual aro estava ativo */
.bd-aro-chip.esgotado{opacity:.55}
.bd-aro-chip.esgotado.is-on{
  opacity:1;background:transparent!important;color:var(--ink);
  border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
/* "Limpar" era um link de 16px em corpo de texto dentro da caixa */
.single-product .reset_variations{
  display:inline-block;position:relative;margin:10px 0 0;
  font-size:.78125rem;color:var(--ink-soft);
  text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}
.single-product .reset_variations:hover{color:var(--ink)}
.single-product .reset_variations::after{
  content:"";position:absolute;left:-6px;right:-6px;top:50%;height:44px;transform:translateY(-50%)}
/* disponibilidade da variação na mesma régua da peça simples */
.single-product .woocommerce-variation-availability .stock{
  font-size:.78125rem;color:var(--ink-soft);margin:0 0 6px}
.single-product .woocommerce-variation-availability .stock.out-of-stock{
  font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--bordo-accent)}

/* --------------------------------------------------------------------------
   3) PEÇA EM PROMOÇÃO
   `.onsale` caía como texto corrido ("Oferta!") entre o nome e o preço do
   card e acima da foto na página da peça: o CSS do WooCommerce do Storefront
   não carrega nesta loja, então o selo nunca teve forma. Vira etiqueta na
   quina da foto, e o preço antigo desce um degrau de tamanho.
   -------------------------------------------------------------------------- */
.woocommerce span.onsale,.woocommerce ul.products li.product .onsale,
.single-product .onsale{
  position:absolute;top:12px;left:12px;z-index:3;
  display:inline-flex;align-items:center;justify-content:center;
  min-height:24px;padding:0 12px;border-radius:999px;
  background:var(--bordo);color:var(--on-bordo);
  font-family:var(--body);font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;
  line-height:1;white-space:nowrap}
.woocommerce ul.products li.product{position:relative}
.single-product div.product,.single-product div.product .images,.single-product div.product .woocommerce-product-gallery{position:relative}
.single-product div.product > .onsale{top:14px;left:14px}
/* preço antigo um degrau abaixo do preço atual */
.woocommerce .price del,.woocommerce ul.products li.product .price del{
  font-size:.85em;color:var(--ink-soft);opacity:1;margin-right:.15em}
.woocommerce .price ins,.woocommerce ul.products li.product .price ins{
  background:transparent;text-decoration:none;font-weight:inherit}

/* --------------------------------------------------------------------------
   4) SACOLA — CUPOM ACEITO E RECUSADO
   O título "Falta preencher alguns dados" (rodada 4) era desenhado por
   ::before em TODA `.woocommerce-error`: na sacola ele encabeçava um aviso
   de estoque e mentia. Fica só onde nasceu, no checkout.
   -------------------------------------------------------------------------- */
body:not(.woocommerce-checkout) .woocommerce-error::before{content:none!important;display:none!important}
/* cupom recusado: era texto corrido de 16px na cor do corpo, colado ao lado
   do campo, empurrando "Atualizar carrinho" para fora da linha */
.woocommerce .coupon-error-notice{
  flex:1 1 100%;order:9;margin:10px 0 0;
  font-size:.8125rem;line-height:1.5;color:var(--bordo-accent)}
/* cupom aceito: o aviso de sucesso tinha a mesma cara de qualquer caixa */
.woocommerce-message{position:relative;padding-left:46px!important}
.woocommerce-message::after{
  content:"";position:absolute;left:18px;top:50%;width:18px;height:18px;transform:translateY(-50%);
  background:var(--gold-text);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpath d='M228.24,76.24l-128,128a6,6,0,0,1-8.48,0l-56-56a6,6,0,0,1,8.48-8.48L96,191.51,219.76,67.76a6,6,0,0,1,8.48,8.48Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpath d='M228.24,76.24l-128,128a6,6,0,0,1-8.48,0l-56-56a6,6,0,0,1,8.48-8.48L96,191.51,219.76,67.76a6,6,0,0,1,8.48,8.48Z'/%3E%3C/svg%3E") center/contain no-repeat}
/* linha do cupom no total: o código vinha em minúsculas e o "[Remover]"
   com colchetes, no corpo do texto */
.woocommerce .cart-discount th{white-space:nowrap}
.woocommerce .cart-discount .woocommerce-remove-coupon{
  display:inline-block;position:relative;margin-left:8px;
  font-size:.78125rem;color:var(--ink-soft);
  text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}
.woocommerce .cart-discount .woocommerce-remove-coupon:hover{color:var(--bordo-accent)}
.woocommerce .cart-discount .woocommerce-remove-coupon::after{
  content:"";position:absolute;left:-6px;right:-6px;top:50%;height:44px;transform:translateY(-50%)}

/* --------------------------------------------------------------------------
   5) FRETE COM E SEM CEP
   A calculadora da sacola escapou da régua de campos: "Cidade" e "CEP"
   nasciam cinza (#f2f2f2), sem borda, com 46px e largura menor que os
   seletores acima. Agora seguem o mesmo campo do checkout.
   -------------------------------------------------------------------------- */
.woocommerce-shipping-calculator .form-row{margin:0 0 12px}
.woocommerce-shipping-calculator label{
  display:block;margin:0 0 6px;font-size:.78125rem;color:var(--ink-soft)}
.woocommerce-shipping-calculator .input-text,
.woocommerce-shipping-calculator input[type=text]{
  width:100%!important;height:42px;padding:0 14px;box-sizing:border-box;
  background:var(--surface)!important;border:1px solid var(--line)!important;border-radius:0!important;
  font-family:var(--body);font-size:.95rem;color:var(--ink);box-shadow:none!important}
.woocommerce-shipping-calculator .input-text:focus{border-color:var(--gold)!important;outline:none}
.woocommerce-shipping-calculator .select2-container .select2-selection{
  height:42px!important;border:1px solid var(--line)!important;border-radius:0!important;
  background:var(--surface)!important}
.woocommerce-shipping-calculator .select2-container .select2-selection__rendered{
  line-height:40px!important;padding-left:14px;font-family:var(--body);font-size:.95rem;color:var(--ink)}
.woocommerce-shipping-calculator .select2-container .select2-selection__arrow{height:40px!important;right:8px}
.woocommerce-shipping-calculator button[type=submit]{width:100%}
/* sem opção de entrega: o cliente ficava num beco. A saída é falar com a casa */
.bd-frete-sem-opcao{margin:0}
.bd-frete-sem-opcao .bd-frete-ajuda{
  display:block;margin:8px 0 0;font-size:.8125rem;color:var(--ink-soft)}
.bd-frete-sem-opcao .bd-frete-ajuda a{
  color:var(--ink);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}

/* --------------------------------------------------------------------------
   6) CELULAR
   -------------------------------------------------------------------------- */
@media (max-width:600px){
  .cwginstock-panel-body{padding:16px!important}
  .woocommerce span.onsale,.woocommerce ul.products li.product .onsale{top:8px;left:8px;font-size:.625rem;padding:0 10px}
  .woocommerce-shipping-calculator button[type=submit]{min-height:44px}
}

/* --------------------------------------------------------------------------
   7) SOBRAS ENCONTRADAS AO OLHAR OS ESTADOS
   -------------------------------------------------------------------------- */
/* A foto da peça na sacola nascia como um risco branco de 22px: a coluna
   pedia 88px, mas o `max-width:100%` que o tema-pai aplica a toda <img>
   deixava o navegador espremer a foto quando a linha ficava apertada. */
.woocommerce-cart table.shop_table.cart td.product-thumbnail{width:88px;min-width:88px}
.woocommerce-cart table.shop_table.cart td.product-thumbnail img{max-width:none;width:72px;height:96px}
/* O aviso de cupom recusado entrava como terceiro item da linha do cupom e
   empurrava "Atualizar carrinho" para fora do lugar. Agora quebra a linha. */
.woocommerce-cart table.shop_table.cart td.actions .coupon{flex-wrap:wrap}
