/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Nov 19 2025 | 20:45:56 */
/* ---------------------------
   RESET & BASES ESPECÍFICOS
   --------------------------- */
.e-checkout__column, .e-checkout__column-inner {
  box-sizing: border-box;
  font-family: Inter, "Helvetica Neue", Arial, sans-serif;
  color: #293241;
}

/* Container do resumo/pagamento */
.e-checkout__column-end .e-checkout__column-inner {
  background: #fff;
  padding: 20px;
  border-radius: 10px;
  border: 1px solid rgba(34, 114, 181, .08);
  box-shadow: 0 6px 20px rgba(38,61,84,0.04);
}

/* Cabeçalho Ordem */
#order_review_heading {
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 12px 0;
  color: #0b4f86;
}

/* ---------------------------
   TABELA: resumo do pedido
   --------------------------- */
.shop_table.woocommerce-checkout-review-order-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  margin-bottom: 14px;
}

.shop_table th,
.shop_table td {
  padding: 10px 8px;
  vertical-align: middle;
  border-bottom: 1px solid #f1f3f5;
}

.shop_table thead th {
  text-transform: uppercase;
  font-size: 12px;
  color: #556;
  font-weight: 700;
  border-bottom: 2px solid #eef2f6;
}

.shop_table tbody .product-name { color: #243140; font-weight:600; }
.shop_table .product-quantity { font-weight:400; color:#667085; margin-left:6px; }

/* Subtotal / total styling */
.shop_table .cart-subtotal th,
.shop_table .order-total th,
.shop_table .cart-subtotal td,
.shop_table .order-total td {
  padding-top: 12px;
  padding-bottom: 12px;
}

.shop_table .order-total th {
  font-weight: 700;
  color: #1f2937;
}
.shop_table .order-total td { font-size: 16px; color:#0b4f86; font-weight:700; }

/* Recurring totals small note */
.first-payment-date small { color: #667085; font-size: 12px; }

/* ---------------------------
   CUPOM
   --------------------------- */
.e-coupon-box {
  margin: 12px 0;
  background: #f8fafc;
  padding: 12px;
  border-radius: 8px;
  border: 1px dashed rgba(11,79,134,0.06);
}

.e-woocommerce-coupon-nudge {
  font-size: 14px;
  margin: 0 0 8px 0;
}
.coupon-container-grid { display:flex; gap:8px; align-items:center; }
.coupon-container-grid .col { flex: 1; }
.coupon-container-grid .e-apply-coupon {
  background:#0b63a6; color:#fff; padding:10px 14px; border-radius:8px;
  border:none; cursor:pointer; transition: .18s;
}
.coupon-container-grid .e-apply-coupon:hover { transform:translateY(-1px); box-shadow:0 6px 16px rgba(11,99,166,0.14); }

/* input base */
input.input-text, .woocommerce-checkout .select, select, .input-text {
  width:100%;
  padding: 12px 14px;
  border-radius: 8px;
  border: 1px solid #e6e9ef;
  background: #fff;
  box-sizing: border-box;
  font-size: 14px;
  color: #1f2937;
  transition: box-shadow .18s, border-color .12s;
}

/* input focus */
input.input-text:focus, select:focus {
  outline: none !important;
  border-color: #1687d9 !important;
  box-shadow: 0 0 0 4px rgba(22,135,217,0.12);
}

/* ---------------------------
   MÉTODOS DE PAGAMENTO
   --------------------------- */
.woocommerce-checkout-payment .wc_payment_method {
  margin: 12px 0;
  border-radius: 10px;
  border: 1px solid #e8eef5;
  overflow: hidden;
  background: #fff;
}

/* Linha do radio + label */
.wc_payment_method > input[type="radio"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
#payment .wc_payment_method > label {
  display:flex;
  align-items:center;
  gap:12px;
  padding: 26px 26px !important;
  cursor:pointer;
  font-weight:700;
  color:#0b4f86;
  background: linear-gradient(180deg, rgba(11,79,134,0.02), transparent);
}

/* Radio visual */
.wc_payment_method > label::before {
  content: "";
  display:inline-block;
  width:18px; height:18px;
  border-radius:50%;
  border:2px solid #0b63a6;
  background: #fff;
}
.wc_payment_method.active > label::before,
.wc_payment_method input:checked + label::before {
  background: radial-gradient(circle at center, #0b63a6 45%, transparent 46%);
  border-color:#0b63a6;
}

/* Payment box (conteúdo do método) */
.payment_box {
  padding: 18px;
  border-top: 1px solid #eef3f7;
  background: linear-gradient(180deg, rgba(6,70,114,0.01), transparent);
}

/* Forçar layout de 1 coluna nos form-row do WC */
.payment_box .form-row,
.payment_box .form-row-wide {
  display:block !important;
  width:100% !important;
  float:none !important;
  clear:both !important;
  margin: 0 0 14px 0 !important;
}

/* Labels dentro do payment box */
.payment_box label {
  display:block;
  font-weight:600;
  font-size:13px;
  margin-bottom:8px;
  color:#334155;
}

/* CVC - remover borda indesejada e alinhar */
.payment_box fieldset {
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* checkbox + label */
.payment_box input[type="checkbox"] {
  transform: scale(1.14);
  margin-right: 8px;
}

/* select estilo */
.payment_box select {
  appearance: none;
  -webkit-appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, #8b96a6 50%),
                    linear-gradient(135deg, #8b96a6 50%, transparent 50%);
  background-position: calc(100% - 14px) calc(1em + 2px), calc(100% - 9px) calc(1em + 2px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 36px;
}

/* placeholder color */
.payment_box input::placeholder { color: #bbafc3; }

/* pequeno texto explicativo */
.payment_box small {
  color:#6b7280;
  display:block;
  margin-top:6px;
  font-size:12px;
}

/* ---------------------------
   BOTÃO FINALIZAR / TERMOS
   --------------------------- */
.form-row.place-order { margin-top: 18px; }
.button.alt, #place_order {
  display:inline-block;
  width:100%;
  background: linear-gradient(180deg,#0b63a6,#095b94);
  color:#fff;
  border:none;
  padding: 14px;
  border-radius: 10px;
  font-weight:700;
  font-size:16px;
  cursor:pointer;
  box-shadow: 0 8px 24px rgba(11,63,104,0.14);
  transition: transform .12s ease, box-shadow .12s ease;
}
.button.alt:hover, #place_order:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(11,63,104,0.18); }

/* termos e checkbox do final */
.termos-condicoes { margin: 14px 0; font-size:13px; color:#475569; }
.termos-condicoes a { color:#0b63a6; text-decoration: underline; }

/* ---------------------------
   RESPONSIVIDADE
   --------------------------- */
@media (max-width: 900px) {
  .e-checkout__column-end .e-checkout__column-inner { padding: 14px; }
  .shop_table th, .shop_table td { padding: 8px; }
  .coupon-container-grid { flex-direction: column; }
  .coupon-container-grid .e-apply-coupon { width:100%; }
}

/* ---------------------------
   AJUSTES FINAIS: FORÇAS PARA OVERRIDE DE TEMA
   --------------------------- */
.e-checkout__column-end .e-checkout__column-inner,
.e-checkout__column-end .woocommerce-checkout-review-order {
  background: transparent;
}

/* garantir que não exista borda extra no campo CVC */
.payment_box fieldset[style] { border: none !important; padding: 0 !important; margin: 0 !important; }

/* qualidades accesibilidade */
button[disabled] { opacity: .6; cursor: not-allowed; transform:none !important; }



