/* ══ CARRINHO ══════════════════════════════════════════════════════ */

/* Kadence define body/hero background como azul-frio (#f7fafc) — forçamos branco */
body.woocommerce-cart,
body.woocommerce-checkout {
  background-color: #fff !important;
}
body.woocommerce-cart .page-hero-section,
body.woocommerce-checkout .page-hero-section,
body.woocommerce-cart .entry-hero-container-inner,
body.woocommerce-checkout .entry-hero-container-inner {
  background-color: #fff !important;
}

/* Reduz a área hero do Kadence nas páginas WooCommerce */
body.woocommerce-cart .page-hero-section,
body.woocommerce-checkout .page-hero-section {
  min-height: 0 !important;
}
body.woocommerce-cart .entry-hero-container-inner,
body.woocommerce-checkout .entry-hero-container-inner {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
  min-height: 0 !important;
}
body.woocommerce-cart #primary,
body.woocommerce-checkout #primary {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* Kadence fixa min-height 200px no header de título — zeramos */
body.woocommerce-cart .entry-header.page-title,
body.woocommerce-checkout .entry-header.page-title {
  min-height: 0 !important;
}

.woocommerce-cart .fdp-page-wrap,
.woocommerce-checkout .fdp-page-wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 24px 80px;
}

/* Título da página */
.woocommerce-cart h1.entry-title,
.woocommerce-checkout h1.entry-title {
  font-family: var(--fdp-fonte);
  font-size: clamp(1.4rem, 2vw, 2rem);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--fdp-preto);
  margin: 0 0 36px;
}

/* ── Notices WooCommerce ────────────────────────────────────────── */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 14px 20px;
  border-radius: 2px;
  font-family: var(--fdp-corpo);
  font-size: 0.9rem;
  margin-bottom: 28px;
  border-left: 4px solid;
}
.woocommerce-message { background: var(--fdp-cinza); color: var(--fdp-verde); border-color: var(--fdp-verde); }
.woocommerce-info    { background: var(--fdp-cinza); color: var(--fdp-texto); border-color: var(--fdp-texto); }
.woocommerce-error   { background: var(--fdp-cinza); color: var(--fdp-texto); border-color: var(--fdp-preto); }
.woocommerce-message::before,
.woocommerce-info::before { display: none; }

/* Botão primário WooCommerce (alt = highlight) → vermelho */
body.woocommerce-cart a.button.alt,
body.woocommerce-cart button.button.alt,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-checkout #place_order,
body.woocommerce-checkout button#place_order {
  background: var(--fdp-preto) !important;
  color: #fff !important;
  border-color: var(--fdp-preto) !important;
}
body.woocommerce-cart a.button.alt:hover,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  background: var(--fdp-ouro) !important;
  border-color: var(--fdp-ouro) !important;
}

/* Heading "Cart Summary" do Kadence — oculto (duplica o título da página) */
body.woocommerce-cart .cart-summary {
  display: none !important;
}

/* ── Layout do carrinho — Kadence envolve tudo em .kadence-woo-cart-form-wrap ── */
body.woocommerce-cart .kadence-woo-cart-form-wrap {
  display: grid !important;
  grid-template-columns: 1fr 360px !important;
  gap: 0 40px !important;
  align-items: start !important;
}

body.woocommerce-cart .woocommerce-cart-form {
  grid-column: 1 !important;
  grid-row: 1 !important;
  float: none !important;
  width: 100% !important;
}

body.woocommerce-cart .cart-collaterals {
  grid-column: 2 !important;
  grid-row: 1 !important;
  float: none !important;
  width: 100% !important;
  display: block !important;
  margin-top: 0 !important;
  justify-content: unset !important;
}

/* Botão "Continuar comprando" */
.woocommerce-message a.button.wc-forward,
.woocommerce a.button.wc-forward {
  margin-left: auto;
  flex-shrink: 0;
  height: 38px;
  padding: 0 20px;
  background: transparent;
  border: 1px solid currentColor;
  color: inherit;
  font-family: var(--fdp-fonte);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 2px;
  display: flex;
  align-items: center;
  white-space: nowrap;
  transition: background 0.15s, color 0.15s;
}
.woocommerce-message a.button.wc-forward:hover {
  background: var(--fdp-verde);
  color: #fff;
  border-color: var(--fdp-verde);
}

/* Headings WooCommerce no carrinho */
body.woocommerce-cart .woocommerce > h2,
body.woocommerce-cart .cart-collaterals h2 {
  font-family: var(--fdp-fonte);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--fdp-preto);
  margin: 0 0 24px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--fdp-preto);
}

/* ── Tabela do carrinho ─────────────────────────────────────────── */
table.woocommerce-cart-form__contents {
  width: 100%;
  table-layout: fixed;   /* respeita as larguras das colunas (auto joga sobra no ×) */
  border-collapse: collapse;
  font-family: var(--fdp-corpo);
  margin-bottom: 32px;
}

table.woocommerce-cart-form__contents thead tr {
  border-bottom: 2px solid var(--fdp-preto);
}
table.woocommerce-cart-form__contents thead th {
  font-family: var(--fdp-fonte);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--fdp-preto);
  padding: 12px 16px;
  text-align: left;
}
table.woocommerce-cart-form__contents thead th.product-price,
table.woocommerce-cart-form__contents thead th.product-quantity,
table.woocommerce-cart-form__contents thead th.product-subtotal {
  text-align: center;
}

table.woocommerce-cart-form__contents tbody tr {
  border-bottom: 1px solid var(--fdp-linha);
}
table.woocommerce-cart-form__contents tbody td {
  padding: 20px 16px;
  vertical-align: middle;
}

/* Larguras das colunas (table-layout: fixed lê do thead) */
table.woocommerce-cart-form__contents th.product-remove    { width: 40px; }
table.woocommerce-cart-form__contents th.product-thumbnail { width: 88px; }
table.woocommerce-cart-form__contents th.product-price     { width: 110px; }
table.woocommerce-cart-form__contents th.product-quantity  { width: 130px; }
table.woocommerce-cart-form__contents th.product-subtotal  { width: 110px; }
/* product-name sem largura = absorve o restante */

table.woocommerce-cart-form__contents td.product-remove {
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: center;
}
table.woocommerce-cart-form__contents td.product-price,
table.woocommerce-cart-form__contents td.product-subtotal {
  white-space: nowrap;
}

/* Imagem do produto */
.woocommerce-cart-form td.product-thumbnail {
  min-width: 88px !important;
  width: 88px !important;
  padding-right: 0 !important;
}
.woocommerce-cart-form .product-thumbnail img {
  width: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;   /* anula o max-width:100% global do Kadence */
  height: 72px !important;
  object-fit: cover;
  border-radius: 2px;
  display: block;
}

/* Nome */
.woocommerce-cart-form .product-name a {
  font-family: var(--fdp-fonte);
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--fdp-preto);
  text-decoration: none;
  letter-spacing: 0.02em;
}
.woocommerce-cart-form .product-name a:hover {
  color: var(--fdp-ouro);
}

/* Preço */
.woocommerce-cart-form .product-price,
.woocommerce-cart-form .product-subtotal {
  text-align: center;
  font-family: var(--fdp-corpo);
  font-weight: 700;
  color: var(--fdp-preto);
}

/* Quantidade */
.woocommerce-cart-form .product-quantity {
  text-align: center;
}
.woocommerce-cart-form .quantity input[type="number"] {
  width: 64px;
  height: 40px;
  border: 1px solid var(--fdp-linha);
  border-radius: 2px;
  text-align: center;
  font-family: var(--fdp-corpo);
  font-size: 0.95rem;
  color: var(--fdp-preto);
  padding: 0 8px;
}

/* Botão remover */
body.woocommerce-cart table.woocommerce-cart-form__contents a.remove {
  font-size: 1.2rem;
  color: var(--fdp-suave) !important;
  transition: color 0.15s;
}
.woocommerce-cart-form a.remove:hover { color: var(--fdp-ouro) !important; }

/* Botões do form */
.woocommerce-cart-form .actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 0;
  flex-wrap: wrap;
}
.woocommerce-cart-form .coupon {
  display: flex;
  gap: 8px;
  flex: 0 1 auto;
}
.woocommerce-cart-form .coupon .button,
.woocommerce-cart-form .coupon button[name="apply_coupon"] {
  white-space: nowrap !important;
  flex-shrink: 0;
  height: 44px !important;
  line-height: 1 !important;
  background: transparent !important;
  border: 1px solid var(--fdp-preto) !important;
  color: var(--fdp-preto) !important;
}
.woocommerce-cart-form .coupon .button:hover {
  background: var(--fdp-preto) !important;
  color: #fff !important;
}
.woocommerce-cart-form .coupon input[type="text"] {
  height: 44px;
  border: 1px solid var(--fdp-linha);
  border-radius: 2px;
  padding: 0 14px;
  font-family: var(--fdp-corpo);
  font-size: 0.9rem;
  color: var(--fdp-preto);
  min-width: 200px;
  outline: none;
}
.woocommerce-cart-form .coupon input:focus {
  border-color: var(--fdp-preto);
}

/* Botões WooCommerce — padrão */
body.woocommerce-cart button[type="submit"],
body.woocommerce-cart .button,
body.woocommerce-cart input[type="submit"] {
  height: 44px;
  white-space: nowrap;
  line-height: 1;
  padding: 0 24px;
  font-family: var(--fdp-fonte);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border: 1px solid var(--fdp-preto);
  background: transparent;
  color: var(--fdp-preto);
  border-radius: 2px;
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
}
body.woocommerce-cart button[type="submit"]:hover,
body.woocommerce-cart .button:hover,
body.woocommerce-cart input[type="submit"]:hover {
  background: var(--fdp-preto);
  color: #fff;
}

/* ── Totais ─────────────────────────────────────────────────────── */
.cart-collaterals {
  display: flex;
  justify-content: flex-end;
  margin-top: 40px;
}

.cart_totals {
  width: 100%;
  max-width: 420px;
  background: var(--fdp-cinza);
  padding: 32px;
  border-radius: 4px;
  overflow: hidden;
}

.cart_totals h2 {
  font-family: var(--fdp-fonte);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--fdp-preto);
  margin: 0 0 24px;
}

.cart_totals table.shop_table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--fdp-corpo);
}
.cart_totals table.shop_table th,
.cart_totals table.shop_table td {
  padding: 10px 0;
  font-size: 0.9rem;
  color: var(--fdp-preto);
  border-bottom: 1px solid rgba(0,0,0,0.06);
  vertical-align: middle;
}
.cart_totals table.shop_table th {
  font-weight: 600;
  text-align: left;
  width: 40%;
}
.cart_totals table.shop_table .order-total th,
.cart_totals table.shop_table .order-total td {
  font-size: 1.1rem;
  font-weight: 700;
  border-bottom: none;
  padding-top: 16px;
}

.cart_totals .wc-proceed-to-checkout {
  margin-top: 20px;
}
.cart_totals .wc-proceed-to-checkout a.checkout-button {
  display: block;
  text-align: center;
  padding: 14px 12px;
  background: var(--fdp-preto);
  color: #fff;
  font-family: var(--fdp-fonte);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 2px;
  white-space: normal;
  word-break: break-word;
  transition: background 0.15s;
}
.cart_totals .wc-proceed-to-checkout a.checkout-button:hover {
  background: var(--fdp-ouro);
}

/* Frete no carrinho */
.cart_totals .shipping ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.cart_totals .shipping ul li label {
  font-size: 0.85rem;
  color: var(--fdp-suave);
}

/* ── Cross-sell ─────────────────────────────────────────────────── */
.fdp-crosssell {
  margin-top: 72px;
  padding-top: 56px;
  border-top: 1px solid var(--fdp-linha);
}

.fdp-crosssell-head {
  margin-bottom: 36px;
}
.fdp-crosssell-title {
  font-family: var(--fdp-fonte);
  font-size: clamp(1.2rem, 1.8vw, 1.7rem);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--fdp-preto);
  margin: 0 0 6px;
}
.fdp-crosssell-sub {
  font-family: var(--fdp-corpo);
  font-size: 0.9rem;
  color: var(--fdp-suave);
  margin: 0;
}

.fdp-crosssell-grid {
  grid-template-columns: repeat(4, 1fr);
}

/* Cards no carrinho reutilizam .fdp-prod-card de home.css */
.fdp-crosssell .fdp-prod-img {
  position: relative;
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--fdp-cinza);
  border-radius: 2px;
  margin-bottom: 14px;
}
.fdp-crosssell .fdp-prod-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s;
}
.fdp-crosssell .fdp-prod-card:hover .fdp-prod-img img { transform: scale(1.04); }
.fdp-crosssell .fdp-prod-info { display: flex; flex-direction: column; gap: 3px; }
.fdp-crosssell .fdp-prod-nome {
  font-family: var(--fdp-fonte);
  font-size: 0.92rem;
  font-weight: 600;
  color: var(--fdp-preto);
  margin: 0 0 5px;
  letter-spacing: 0.03em;
}
.fdp-crosssell .fdp-prod-price-main {
  font-family: var(--fdp-corpo);
  font-size: 1rem;
  font-weight: 700;
  color: var(--fdp-preto);
}
.fdp-crosssell .fdp-prod-price-main del {
  font-size: 0.82rem;
  font-weight: 400;
  color: var(--fdp-suave);
  margin-right: 4px;
}
.fdp-crosssell .fdp-prod-price-main .woocommerce-Price-amount { color: var(--fdp-preto) !important; }
.fdp-crosssell .fdp-prod-price-pix { font-family: var(--fdp-corpo); font-size: 0.78rem; color: var(--fdp-verde); font-weight: 600; }
.fdp-crosssell .fdp-prod-price-parcel { font-family: var(--fdp-corpo); font-size: 0.76rem; color: var(--fdp-suave); }

/* ── Upsell na página do produto ────────────────────────────────── */
.fdp-upsell {
  margin-bottom: 60px;
}

.fdp-upsell-head {
  margin-bottom: 36px;
}
.fdp-upsell-title {
  font-family: var(--fdp-fonte);
  font-size: clamp(1.2rem, 1.8vw, 1.7rem);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--fdp-preto);
  margin: 0 0 6px;
}
.fdp-upsell-sub {
  font-family: var(--fdp-corpo);
  font-size: 0.9rem;
  color: var(--fdp-suave);
  margin: 0;
}

/* ══ CHECKOUT ══════════════════════════════════════════════════════ */

form.checkout.woocommerce-checkout {
  display: grid !important;
  grid-template-columns: 1fr 420px !important;
  gap: 40px !important;
  align-items: start !important;
  float: none !important;
  width: 100% !important;
}

/* Força reset de qualquer float no checkout */
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review,
.woocommerce-checkout #order_review_heading {
  float: none !important;
  width: 100% !important;
  clear: none !important;
}

/* Kadence pode inverter as colunas via float/order — fixamos explicitamente */
.woocommerce-checkout #customer_details  { grid-column: 1 !important; grid-row: 1 !important; }
.woocommerce-checkout #order_review      { grid-column: 2 !important; grid-row: 1 !important; }

/* Aviso de cupom — largura total */
.woocommerce-form-coupon-toggle,
form.checkout .woocommerce-NoticeGroup {
  grid-column: 1 / -1 !important;
  margin-bottom: 24px !important;
}

/* Coluna esquerda — dados de cobrança */
#customer_details {
  display: block !important;
}

/* Coluna direita — resumo do pedido */
#order_review {
  width: 100% !important;
  position: sticky !important;
  top: 100px !important;
  background: var(--fdp-cinza) !important;
  padding: 32px !important;
  border-radius: 4px !important;
}

/* Kadence força float:left + width:50% neste h3, o que quebra o layout.
   Ocultamos e recriamos o heading dentro de #order_review via ::before. */
#order_review_heading {
  display: none !important;
}

/* Heading "Seu Pedido" recriado dentro do box */
#order_review::before {
  content: 'Seu Pedido';
  display: block;
  font-family: var(--fdp-fonte);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--fdp-preto);
  margin: 0 0 24px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--fdp-preto);
}

/* Títulos de seção */
.woocommerce-checkout h3 {
  float: none !important;
  width: 100% !important;
  font-family: var(--fdp-fonte);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--fdp-preto);
  margin: 0 0 24px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--fdp-preto);
}

/* Campos do formulário */
.woocommerce-checkout .form-row {
  margin-bottom: 16px;
}
.woocommerce-checkout label {
  font-family: var(--fdp-corpo);
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--fdp-preto);
  display: block;
  margin-bottom: 6px;
}
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout select,
.woocommerce-checkout textarea {
  width: 100%;
  height: 44px;
  border: 1px solid var(--fdp-linha);
  border-radius: 2px;
  padding: 0 14px;
  font-family: var(--fdp-corpo);
  font-size: 0.9rem;
  color: var(--fdp-preto);
  outline: none;
  transition: border-color 0.15s;
  box-sizing: border-box;
}
.woocommerce-checkout textarea {
  height: 80px;
  padding: 12px 14px;
  resize: vertical;
}
.woocommerce-checkout input:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
  border-color: var(--fdp-preto);
}

/* Resumo do pedido */
#order_review {
  background: var(--fdp-cinza);
  padding: 32px;
  border-radius: 4px;
}
#order_review_heading {
  font-family: var(--fdp-fonte);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--fdp-preto);
  margin: 0 0 24px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--fdp-preto);
}
table.woocommerce-checkout-review-order-table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--fdp-corpo);
  font-size: 0.88rem;
  margin-bottom: 20px;
}
table.woocommerce-checkout-review-order-table th,
table.woocommerce-checkout-review-order-table td {
  padding: 10px 0;
  border-bottom: 1px solid rgba(0,0,0,0.06);
  color: var(--fdp-preto);
  vertical-align: middle;
}
table.woocommerce-checkout-review-order-table .order-total th,
table.woocommerce-checkout-review-order-table .order-total td {
  font-size: 1rem;
  font-weight: 700;
  border-bottom: none;
  padding-top: 16px;
}

/* Métodos de pagamento */
#payment {
  background: #fff;
  border: 1px solid var(--fdp-linha);
  border-radius: 4px;
  padding: 24px;
  margin-top: 20px;
}
#payment .payment_methods li {
  list-style: none;
  padding: 10px 0;
  border-bottom: 1px solid var(--fdp-linha);
  font-family: var(--fdp-corpo);
  font-size: 0.9rem;
}
#payment .place-order {
  margin-top: 20px;
}
#payment #place_order {
  display: block;
  width: 100%;
  padding: 16px;
  background: var(--fdp-preto);
  color: #fff;
  font-family: var(--fdp-fonte);
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border: none;
  border-radius: 2px;
  cursor: pointer;
  transition: background 0.15s;
}
#payment #place_order:hover { background: var(--fdp-ouro-claro); }

/* ══ MOBILE ════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
  form.checkout.woocommerce-checkout {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  #order_review {
    position: static !important;
  }

  .fdp-crosssell-grid,
  .fdp-upsell .fdp-products-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  table.woocommerce-cart-form__contents thead { display: none !important; }
  table.woocommerce-cart-form__contents tbody tr {
    display: flex !important;
    flex-direction: column !important;
    padding: 24px 0 !important;
    position: relative !important;
    border-bottom: 1px solid var(--fdp-linha) !important;
    text-align: center !important;
  }

  .woocommerce-cart-form .product-thumbnail { margin-bottom: 15px !important; }
  .woocommerce-cart-form .product-thumbnail img {
    margin: 0 auto !important;
    width: 100px !important;
    height: 100px !important;
  }
  .woocommerce-cart-form .product-name { margin-bottom: 10px !important; }
  
  .woocommerce-cart-form td.product-price,
  .woocommerce-cart-form td.product-quantity,
  .woocommerce-cart-form td.product-subtotal {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 8px !important;
    border: none !important;
    padding: 0 !important;
  }
  
  .woocommerce-cart-form td.product-price::before { content: "Preço: "; font-weight: 400; color: var(--fdp-suave); }
  .woocommerce-cart-form td.product-quantity::before { content: "Qtd: "; font-weight: 400; color: var(--fdp-suave); }
  .woocommerce-cart-form td.product-subtotal::before { content: "Total: "; font-weight: 400; color: var(--fdp-suave); }

  .woocommerce-cart-form .product-remove {
    position: absolute !important;
    top: 15px !important;
    right: 0 !important;
  }

  .cart-collaterals { justify-content: stretch; }
  .cart_totals { max-width: 100%; }
}

/* ── Mono: detalhes finais ───────────────────────────────────────── */
/* "×" remover: preto, vermelho só no hover (Woo pinta de vermelho por padrão) */
body.woocommerce-cart table.woocommerce-cart-form__contents a.remove {
  color: var(--fdp-preto) !important;
  background: transparent !important;
}
body.woocommerce-cart table.woocommerce-cart-form__contents a.remove:hover {
  color: var(--fdp-ouro) !important;
  background: transparent !important;
}

/* Radios e checkboxes seguem a tinta */
body.woocommerce-cart input[type="radio"],
body.woocommerce-cart input[type="checkbox"],
body.woocommerce-checkout input[type="radio"],
body.woocommerce-checkout input[type="checkbox"] {
  accent-color: var(--fdp-preto);
}

/* Links utilitários (ex.: "Mudar endereço") */
body.woocommerce-cart .cart-collaterals a:not(.button):not(.checkout-button),
body.woocommerce-checkout #order_review a:not(.button) {
  color: var(--fdp-preto);
  text-decoration: underline;
}

/* Links em notices e no checkout: tinta, sublinhado */
.woocommerce-info a,
.woocommerce-message a:not(.button),
.woocommerce-error a,
body.woocommerce-checkout form.checkout a,
body.woocommerce-checkout #payment a {
  color: var(--fdp-preto);
  text-decoration: underline;
}

/* Caixa de pagamento neutra */
body.woocommerce-checkout #payment {
  background: var(--fdp-cinza) !important;
  border-radius: 2px;
}

/* Notice de cupom no checkout — Kadence pinta de azul */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
body.woocommerce-checkout .woocommerce-info {
  background: var(--fdp-cinza) !important;
  border-color: var(--fdp-preto) !important;
  color: var(--fdp-texto) !important;
}

/* Asterisco de campo obrigatório: tinta */
body.woocommerce-checkout abbr.required,
body.woocommerce-checkout .required {
  color: var(--fdp-preto) !important;
  text-decoration: none;
}
