/* =========================================================
   WooCommerce — Catálogo (loop de produtos)
   ========================================================= */
.woocommerce ul.products{
  display:grid !important;
  grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
  gap:var(--space-md);
  list-style:none; margin:0; padding:0;
}
.woocommerce ul.products li.product{
  background:var(--paper);
  border:1px solid var(--bronze-light);
  border-radius:var(--radius);
  padding:1.25rem;
  box-shadow:var(--shadow-soft);
  text-align:left;
}
.woocommerce ul.products li.product img{
  border-radius:10px; margin-bottom:1em; aspect-ratio:1/1; object-fit:cover;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--font-display); font-size:1.3rem; color:var(--walnut); margin:.2em 0;
}
.woocommerce ul.products li.product .price{
  font-size:1.3rem; font-weight:700; color:var(--oak-dark);
  display:block; margin:.3em 0 .8em;
}
.woocommerce ul.products li.product .price del{ color:var(--walnut-mid); opacity:.7; }
.woocommerce ul.products li.product .price ins{ text-decoration:none; }
.woocommerce ul.products li.product .button{ width:100%; }
.woocommerce ul.products li.product .star-rating{ color:var(--oak); margin-bottom:.4em; }

/* Filtros simples de categoria */
.woocommerce .woocommerce-ordering,
.woocommerce nav.woocommerce-product-search{
  margin-bottom:var(--space-md);
}
.woocommerce-product-search input[type="search"]{
  font-size:1.1rem; padding:.9em 1em; border:2px solid var(--bronze-light);
  border-radius:10px; width:100%; max-width:420px;
}
ul.product-categories{
  list-style:none; display:flex; gap:.75rem; flex-wrap:wrap; padding:0; margin:0 0 var(--space-lg);
}
ul.product-categories a{
  display:inline-block; background:var(--bronze-light); color:var(--walnut);
  padding:.6em 1.3em; border-radius:999px; text-decoration:none; font-weight:700; font-size:1.05rem;
}
ul.product-categories a:hover{ background:var(--oak); color:#fff; }

/* =========================================================
   Página de produto
   ========================================================= */
.woocommerce div.product{
  background:var(--paper); border-radius:var(--radius); padding:var(--space-lg);
  box-shadow:var(--shadow-soft); border:1px solid var(--bronze-light);
}
.woocommerce div.product .product_title{ font-size:2rem; }
.woocommerce div.product p.price, .woocommerce div.product span.price{
  font-size:1.8rem !important; font-weight:700; color:var(--oak-dark);
}
.woocommerce div.product .woocommerce-product-details__short-description{
  font-size:1.15rem; line-height:1.7;
}
.woocommerce div.product .woocommerce-product-details__short-description ul{
  padding-left:1.4em;
}
.woocommerce div.product .woocommerce-product-details__short-description li{
  margin-bottom:.5em;
}
.woocommerce div.product form.cart{
  display:flex; gap:1rem; align-items:center; flex-wrap:wrap; margin-top:1.5em;
}
.woocommerce div.product .quantity input.qty{
  height:56px; width:80px; font-size:1.2rem; text-align:center;
  border:2px solid var(--bronze-light); border-radius:10px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{ font-size:1.1rem; font-weight:700; }
.woocommerce div.product .woocommerce-tabs .panel{ font-size:1.1rem; line-height:1.7; }

/* Selo de segurança dentro da página de produto */
.selo-produto{
  display:flex; align-items:center; gap:.6em; margin-top:1.2em;
  color:var(--walnut-mid); font-size:1.05rem;
}

/* =========================================================
   Carrinho e Checkout
   ========================================================= */
.woocommerce table.shop_table{
  border-collapse:collapse; width:100%; font-size:1.1rem;
  background:var(--paper); border-radius:var(--radius); overflow:hidden;
}
.woocommerce table.shop_table th{
  background:var(--bronze-light); color:var(--walnut); text-align:left;
  padding:1em; font-family:var(--font-display); font-size:1.1rem;
}
.woocommerce table.shop_table td{ padding:1em; border-top:1px solid var(--bronze-light); }
.woocommerce #order_review, .woocommerce-checkout-review-order{
  background:var(--paper); border:1px solid var(--bronze-light);
  border-radius:var(--radius); padding:var(--space-md);
}
.woocommerce form .form-row label{ font-size:1.05rem; font-weight:600; color:var(--walnut); }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select{
  font-size:1.1rem; padding:.9em 1em; border:2px solid var(--bronze-light);
  border-radius:10px; width:100%;
}
.woocommerce-checkout #payment{
  background:var(--bronze-light); border-radius:var(--radius); padding:var(--space-md); margin-top:1.5em;
}
.woocommerce-checkout #payment ul.payment_methods{ list-style:none; padding:0; }
.woocommerce-checkout #payment div.payment_box{
  background:var(--paper); border-radius:10px; margin-top:.6em; font-size:1.05rem;
}

/* Selos de confiança no checkout */
.checkout-selos{
  display:flex; gap:1rem; flex-wrap:wrap; justify-content:center;
  margin-top:var(--space-md); padding-top:var(--space-md);
  border-top:1px dashed var(--bronze);
}
.checkout-selos span{
  font-size:1rem; color:var(--walnut-mid); display:flex; align-items:center; gap:.4em;
}

/* Mensagens (erro/sucesso) grandes e claras */
.woocommerce-message, .woocommerce-error, .woocommerce-info{
  font-size:1.15rem !important; padding:1.2em 1.5em !important;
  border-top-color:var(--oak) !important; border-radius:10px;
}

@media (max-width: 600px){
  .woocommerce div.product{ padding:var(--space-md); }
  .woocommerce div.product form.cart{ flex-direction:column; align-items:stretch; }
}
