/* Formulários do WooCommerce na loja (inc/loja.php): login do checkout, cadastro, cupom, senha perdida, campos de
   cobrança do checkout e a página "pagar de novo" (order-pay), no visual da AppNinja. O resumo do pedido e o botão
   do checkout seguem com o estilo do Bricks. Cores, raios e fonte de tokens.css. */

.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.checkout_coupon, form.lost_reset_password){
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;
  margin:16px 0 24px;padding:24px;border:1px solid var(--anj-borda);border-radius:var(--anj-raio-g);
  background:#fff;box-shadow:var(--anj-sombra);font-family:var(--anj-fonte);color:var(--anj-texto2)
}
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.checkout_coupon, form.lost_reset_password) > *{
  grid-column:1/-1;float:none;width:auto;margin:0;padding:0
}
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.checkout_coupon, form.lost_reset_password) > .form-row-first{grid-column:1}
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.checkout_coupon, form.lost_reset_password) > .form-row-last{grid-column:2}
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.checkout_coupon, form.lost_reset_password) > .clear{display:none}
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.checkout_coupon, form.lost_reset_password) > p:not(.form-row){font-size:14px;line-height:1.55;color:var(--anj-texto3)}

/* rótulo → campo */
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.lost_reset_password) .form-row > label:not(.woocommerce-form__label-for-checkbox){
  display:block;margin:0 0 8px;font-size:13px;font-weight:600;line-height:1.3;color:var(--anj-texto2)
}
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.lost_reset_password) .required{color:var(--anj-erro);border:0;text-decoration:none}

/* campos */
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.checkout_coupon, form.lost_reset_password) .input-text{
  display:block;width:100%;height:46px;padding:0 14px;border:1px solid var(--anj-campo);border-radius:10px;background:#fff;
  font:400 16px/1.2 var(--anj-fonte);color:var(--anj-texto);box-shadow:none;transition:border-color .15s,box-shadow .15s
}
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.checkout_coupon, form.lost_reset_password) .input-text:focus{
  outline:none;border-color:var(--anj-pri);box-shadow:0 0 0 3px var(--anj-pri-10)
}

/* "Lembre-me" + Entrar na mesma linha, afastados */
.woocommerce form.woocommerce-form-login .form-row:has(.woocommerce-form-login__submit){
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px
}
.woocommerce form.woocommerce-form-login .woocommerce-form-login__rememberme{
  display:inline-flex;align-items:center;gap:10px;min-height:44px;margin:0;font-size:14px;font-weight:500;color:var(--anj-texto2);cursor:pointer
}
.woocommerce form.woocommerce-form-login .woocommerce-form-login__rememberme input{width:18px;height:18px;margin:0;accent-color:var(--anj-acento)}
.woocommerce form.woocommerce-form-login .lost_password a,
.woocommerce form.lost_reset_password a{color:var(--anj-pri);font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:3px}

/* botões dessas peças */
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.checkout_coupon, form.lost_reset_password) :is(button.button, .woocommerce-button){
  display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin:0;padding:0 26px;border:0;border-radius:10px;
  background:var(--anj-grad-btn);color:#fff;font:600 15px/1 var(--anj-fonte);cursor:pointer;
  box-shadow:0 8px 18px -10px rgba(255,102,0,.8);transition:background .15s
}
.woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.checkout_coupon, form.lost_reset_password) :is(button.button, .woocommerce-button):hover{background:var(--anj-grad-btn-hover);color:#fff}
.woocommerce form.checkout_coupon .form-row-last{display:flex;align-items:stretch}
.woocommerce form.checkout_coupon .form-row-last button{width:100%}

/* ---------- Checkout: campos de cobrança e de criação de conta (o resumo e o botão seguem do Bricks) ---------- */
.woocommerce-checkout :is(.woocommerce-billing-fields, .woocommerce-account-fields, .woocommerce-additional-fields) h3{
  margin:0 0 18px;font-family:var(--anj-fonte);font-size:20px;font-weight:700;line-height:1.3;color:var(--anj-texto)
}
.woocommerce-checkout :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-account-fields .create-account){
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px
}
.woocommerce-checkout :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-account-fields .create-account) > *{grid-column:1/-1;float:none;width:auto;margin:0;padding:0}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row-first{grid-column:1}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row-last{grid-column:2}
.woocommerce-checkout .woocommerce-account-fields .create-account > .clear{display:none}
.woocommerce-checkout :is(.woocommerce-billing-fields, .woocommerce-account-fields, .woocommerce-additional-fields) .form-row > label:not(.checkbox):not(.woocommerce-form__label-for-checkbox){
  display:block;margin:0 0 8px;font-size:13px;font-weight:600;line-height:1.3;color:var(--anj-texto2)
}
.woocommerce-checkout :is(.woocommerce-billing-fields, .woocommerce-account-fields, .woocommerce-additional-fields) .required{color:var(--anj-erro);border:0;text-decoration:none}
.woocommerce-checkout :is(.woocommerce-billing-fields, .woocommerce-account-fields, .woocommerce-additional-fields) :is(.input-text, select){
  width:100%;height:46px;padding-right:14px;border:1px solid var(--anj-campo);border-radius:10px;background-color:#fff;
  font-family:var(--anj-fonte);font-size:16px;color:var(--anj-texto);box-shadow:none;transition:border-color .15s,box-shadow .15s
}
.woocommerce-checkout :is(.woocommerce-billing-fields, .woocommerce-account-fields, .woocommerce-additional-fields) :is(.input-text, select):not(#billing_phone){padding-left:14px} /* o telefone recebe o padding do seletor de país */
.woocommerce-checkout :is(.woocommerce-billing-fields, .woocommerce-account-fields, .woocommerce-additional-fields) textarea.input-text{height:auto;min-height:96px;padding-top:12px}
.woocommerce-checkout :is(.woocommerce-billing-fields, .woocommerce-account-fields, .woocommerce-additional-fields) :is(.input-text, select):focus{outline:none;border-color:var(--anj-pri);box-shadow:0 0 0 3px var(--anj-pri-10)}
.woocommerce-checkout .woocommerce-invalid :is(.input-text, select){border-color:var(--anj-erro)}
.woocommerce-checkout .woocommerce-billing-fields .select2-container .select2-selection--single{height:46px;padding:0;border:1px solid var(--anj-campo);border-radius:10px}
.woocommerce-checkout .woocommerce-billing-fields .select2-container .select2-selection--single .select2-selection__rendered{padding-left:14px;line-height:44px;font-size:16px;color:var(--anj-texto)}
.woocommerce-checkout .woocommerce-billing-fields .select2-container .select2-selection--single .select2-selection__arrow{height:44px;right:8px}
.woocommerce-checkout .woocommerce-account-fields .create-account label.checkbox,
.woocommerce-checkout .woocommerce-account-fields .woocommerce-form__label-for-checkbox{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-weight:500;cursor:pointer}

/* ---------- Pagar de novo (order-pay) ---------- */
.woocommerce-order-pay #order_review{display:flex;flex-direction:column;gap:20px;margin-bottom:56px;font-family:var(--anj-fonte);color:var(--anj-texto2)}
.woocommerce-order-pay #order_review .shop_table{
  width:100%;margin:0;border:1px solid var(--anj-borda);border-radius:var(--anj-raio-g);border-collapse:separate;border-spacing:0;
  overflow:hidden;background:#fff;box-shadow:var(--anj-sombra);font-size:15px
}
.woocommerce-order-pay #order_review .shop_table :is(th, td){padding:14px 20px;border:0;border-top:1px solid var(--anj-borda2);text-align:left;vertical-align:middle}
.woocommerce-order-pay #order_review .shop_table thead th{border-top:0;background:var(--anj-fundo2);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--anj-suave)}
.woocommerce-order-pay #order_review .shop_table :is(th, td):last-child{text-align:right;white-space:nowrap}
.woocommerce-order-pay #order_review .shop_table .product-quantity{color:var(--anj-suave)}
.woocommerce-order-pay #order_review .shop_table tfoot th{font-weight:600;color:var(--anj-texto3)}
.woocommerce-order-pay #order_review .shop_table tfoot tr:nth-last-child(2) :is(th, td){font-size:17px;font-weight:700;color:var(--anj-texto)}
.woocommerce-order-pay #payment{padding:20px;border:1px solid var(--anj-borda);border-radius:var(--anj-raio-g);background:#fff;box-shadow:var(--anj-sombra)}
.woocommerce-order-pay #payment ul.payment_methods{display:flex;flex-direction:column;gap:10px;margin:0 0 20px;padding:0;border:0;list-style:none}
.woocommerce-order-pay #payment ul.payment_methods > li{margin:0;padding:14px 16px;border:1px solid var(--anj-borda2);border-radius:12px;background:var(--anj-fundo2)}
.woocommerce-order-pay #payment ul.payment_methods > li > label{font-weight:600;color:var(--anj-texto);cursor:pointer}
.woocommerce-order-pay #payment .payment_box{margin:12px 0 0}
.woocommerce-order-pay #payment .form-row.place-order{display:flex;flex-direction:column;gap:16px;margin:0;padding:0}
.woocommerce-order-pay #payment .woocommerce-terms-and-conditions-wrapper :is(label, .woocommerce-form__label-for-checkbox){
  display:inline-flex;align-items:flex-start;min-height:44px;font-size:14px;font-weight:500;line-height:1.5;color:var(--anj-texto2);cursor:pointer
}
.woocommerce-order-pay #payment .woocommerce-terms-and-conditions-wrapper input[type=checkbox]{flex:none;width:18px;height:18px;margin:2px 10px 0 0;accent-color:var(--anj-acento)}
.woocommerce-order-pay #payment .woocommerce-terms-and-conditions-wrapper .required{margin-left:3px;color:var(--anj-erro);border:0;text-decoration:none}
.woocommerce-order-pay #payment #place_order{
  width:100%;min-height:54px;margin:0;border:0;border-radius:12px;background:var(--anj-grad-btn);color:#fff;
  font:700 17px/1 var(--anj-fonte);cursor:pointer;box-shadow:0 10px 22px -12px rgba(255,102,0,.9)
}
.woocommerce-order-pay #payment #place_order:hover{background:var(--anj-grad-btn-hover)}

@media (max-width:600px){
  .woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.checkout_coupon, form.lost_reset_password){grid-template-columns:1fr;padding:20px 16px}
  .woocommerce :is(form.woocommerce-form-login, form.woocommerce-form-register, form.checkout_coupon, form.lost_reset_password) > :is(.form-row-first, .form-row-last){grid-column:1/-1}
  .woocommerce-checkout :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-account-fields .create-account){grid-template-columns:1fr}
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper > :is(.form-row-first, .form-row-last){grid-column:1/-1}
  .woocommerce form.woocommerce-form-login .form-row:has(.woocommerce-form-login__submit) .woocommerce-form-login__submit{width:100%}
  .woocommerce-order-pay #order_review .shop_table :is(th, td){padding:12px 14px}
  .woocommerce-order-pay #payment{padding:16px}
}
