#payment-form{background-color: #f5f5f5;}.payment{padding-top: 50px;}.card-header{text-transform: uppercase;}.control-label{font-weight: unset;}.form-control{background: #FAFAFA;box-shadow: rgba(0, 0, 0, 0.08) 0px 1px 3px 0px inset;border-radius: 5px;border-style: unset;}.payment .details .card-header{font-size: 16px;font-weight: 600;background-color: #666;color: #FFF;left: -10px;position: absolute;top:10px;width: calc(100% + 10px);}.payment .details .card-header:before {position: absolute;content: " ";left: 0;bottom: -10px;display: block;border-bottom: 10px;border-left: 10px solid rgba(0,0,0,0);border-right: 0 solid rgba(0,0,0,0);border-top: 10px solid #666;}.payment .details .card-header span{float: right;font-size: 12px;padding-top: 2px;text-transform: none;}.payment .details .card-header span a{color:#FFF;text-decoration: none;}.payment .details .card-body{margin-top: 50px;}.cart-img {max-width: 250px;}.cart-img img {width: 100%;}.cart-line {border: solid 1px #9e9e9e;padding: 20px;}.cart-line:first-child {border-bottom-right-radius: 0;border-bottom-left-radius: 0;margin-bottom: 0;}.cart-line:last-child {border-bottom-right-radius: 0;border-bottom-left-radius: 0;margin-bottom: 0;}.cart-valores{min-height: 80px;}.cart-product a {z-index: 10;position: absolute;right: -1px;bottom: -1px;display: block;width: 36px;height: 36px;border: 1px solid #9e9e9e;border-top-left-radius: 0;border-bottom-right-radius: 0;background-color: #f5f8fa;color: #9f8441;text-align: center;text-decoration: none;line-height: 35px;}.cart-product button {transition: 0.2s ease;position: absolute;right: -1px;bottom: -1px;display: block;width: 36px;height: 36px;border: 1px solid #9e9e9e;border-top-left-radius: 0;border-bottom-right-radius: 0;background-color: #f5f8fa;color: #7c7c7c;text-align: center;text-decoration: none;line-height: 35px;}.cart-product-item{font-size: 13px;display: table-cell;vertical-align: middle;height:unset;}.cart-product-price{font-size: 16px;display: unset;vertical-align: middle;height: unset;}.cart-product-price-original{font-size: 10px;}.btn-buy{border-color:#50b232;background-color: #50b232;color: #ffffff;font-weight: bold;cursor: pointer;}.btn-buy:hover{opacity: 0.8;color: #FFFFFF;}.btn-cupom{border-color: #cde0f1;background-color: #cde0f1;color: #000000;font-weight: 100;cursor: pointer;}.btn-cupom:hover{opacity: 0.8;color: #000000;}.cart-total{padding: 20px 0}.nav-pills .nav-link.active, .nav-pills .show>.nav-link {background-color: #50b232;color: #FFFFFF;}.payment .cart .card-header{font-size: 18px;font-weight: 600;}.payment .cart .card-body{padding-bottom: 80px;}.payment .accordion .card-header a {color: #666;font-size: 16px;text-decoration: none;}.payment .accordion .card-header a i{font-size: 17px;padding-right: 10px;}.payment .accordion .card-block{padding: 20px;}.payment .cart .card-header-security{font-size: 16px;font-weight: 600;background-color: #666;color: #FFF;left: -10px;position: absolute;bottom:10px;width: calc(100% + 10px);}.payment .cart .card-header-security:before {position: absolute;content: " ";left: 0;bottom: -10px;display: block;border-bottom: 10px;border-left: 10px solid rgba(0,0,0,0);border-right: 0 solid rgba(0,0,0,0);border-top: 10px solid #666;}.payment .cart .div-logo{text-align: center;padding: 10px;width: 100%;max-width: 280px;margin: 0 auto;}.payment .cart .div-logo #logo{max-height: 80px;max-width: 200px;}.btn-ler{border-color:#666;background-color: #666;color: #ffffff;font-weight: bold;cursor: pointer;}.btn-ler:hover{opacity: 0.8;color: #FFFFFF;}.payment-box{width: 100%;margin: 0 auto;padding: 20px 0;}@media (max-width: 410px) {.payment .details .card-header span {float: left;padding-top: 10px;}}@media (max-width: 410px) {.payment .details .card-body {margin-top: 70px;}}@media (max-width: 768px) {.cart .cart-valores{padding: 15px!important;}}.cart-product a {width: 25px;height: 25px;line-height: 25px;font-size: 13px;}.btn-comprando{background-color:#DFDFDF;border-color: #DFDFDF;color: #000000;font-weight: 100;}.payment .cart-cupom {padding-top: 20px;}.hideDiv{display: none !important;}.bg-custom-gray{background-color: #DFDFDF;}.mw-25px{min-width: 25px;}.cart-product-quantity{display: flex;align-items: center;justify-content: flex-end;height: 20px;}.cursor-pointer{cursor: pointer;}.txtPagar{white-space: nowrap;}.error{color:#dc3545!important;}#dealPopup .modal-dialog {position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; width: 80%;max-width: 1000px;margin-top: 20px;}#dealPopup .modal-title{font-size: 14px;}#dealPopup .modal-body{overflow: scroll;}.btn-login-white {border-color: #190434;background-color: #190434;color: #FFFFFF;cursor: pointer;}.modal-dialog {width: 80%;max-width: 1000px;margin-top: 20px;}.modal-dialog {position: absolute;left: 0;right: 0;top: 0;bottom: 0;margin: auto;height: 300px;}.login-box-comment a {color: #190434;}.login-box-comment {padding: 5px 0 10px 0;margin: 0;color: #190434;font-size: 13px;text-align: right;font-style: italic;width: 100%;}.divCookie{position: fixed;min-width: 100%;z-index: 100000;font-size: 13px;letter-spacing: 0px;text-align: center;background-color: #9f8441;bottom: 0;left: 0;}.spanTexto{color: #FFF;text-align: center;vertical-align: middle;display: inline-block;padding: 15px 20px;}.spanButton{display: inline-block;padding: 15px 0px;}.btn-ok{background-color:#9e9e9e;color:#000;}/* Fundo geral da página */
body {
  background-color: #f5f5f5 !important;
}

/* Bloco principal de pagamento */
#divPayment {
  background-color: #ffffff !important;
  border-radius: 8px;
  padding: 16px !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* Espaçamento entre cards internos do bloco de pagamento */
#divPayment .card {
  background-color: #ffffff !important;
  border-radius: 8px;
  padding: 16px;
  box-shadow: none !important;
  margin-bottom: 8px;
}

/* 1. Caixa de dados pessoais */
.card.details {
  border-radius: 8px;
  padding: 0 !important;
  background-color: #ffffff !important;
  box-shadow: none !important;
  overflow: hidden;
}

/* 2. Header com fundo azul escuro e padding esquerdo de 36px */
.card.details .card-header {
  background-color: #2e3e80 !important;
  color: #fff !important;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 16px 16px 16px 36px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  border-radius: 8px 8px 0 0 !important;
  position: relative;
  z-index: 1;
  width: 100%;
  margin: 0 !important;
}

/* 3. Título */
.card.details .card-header h5 {
  margin: 0;
  line-height: 1.2;
}

/* 4. Botão "Já possui conta?" */
.card.details .card-header a[data-target="#loginPopup"] {
  display: inline-block;
  font-size: 0.95rem;
  font-weight: 700;
  background-color: #f5f6fc !important;
  color: #2e3e80 !important;
  padding: 10px 20px;
  border: 2px solid #f5f6fc;
  border-radius: 10px;
  text-decoration: none;
  box-shadow: 0 0 0 2px #aab4e6;
  transition: all 0.2s ease-in-out;
  margin-top: 8px;
}
.card.details .card-header a[data-target="#loginPopup"]:hover {
  background-color: #e4e8f5 !important;
  color: #1f2e6d !important;
  border-color: #e4e8f5;
  box-shadow: 0 0 0 2px #c4ccef;
}

/* 5. Container do formulário */
.card.details .card-body {
  padding: 16px;
  padding-top: 0 !important;
}

/* 6. Melhor contraste nos labels e textos auxiliares */
.card.details label,
.card.details .form-text,
.card.details .control-label {
  color: #2c2c2c !important;
  font-weight: 500;
  font-size: 0.95rem;
}

/* 7. Espaçamento entre campos */
.card.details .form-group {
  margin-bottom: 8px;
}

/* 8. Inputs e selects */
input.form-control,
select.form-control {
  padding: 8px 12px;
  font-size: 0.95rem;
  border-radius: 6px;
  color: #2c2c2c;
  background-color: #ffffff;
  border: 1px solid #ccc;
}

/* 9. Botões padrão */
.btn,
.btn-cupom,
#btn-cupom,
#btn-comprando,
.btn-buy {
  font-weight: 600;
  font-size: 0.95rem;
  padding: 8px 16px;
  border-radius: 8px;
  border: none;
  text-align: center;
  display: inline-block;
  transition: background-color 0.2s ease, color 0.2s ease;
}

/* 10. Botão "Realizar Pagamento" */
.btn-buy {
  background-color: #d39b28 !important;
  color: #fff !important;
  font-size: 1.2rem;
  padding: 16px 32px;
  border-radius: 12px;
}
.btn-buy:hover {
  background-color: #b9851f !important;
}

/* 11. Botão "Adicionar mais cursos" */
#btn-comprando {
  background-color: #fff !important;
  color: #d39b28 !important;
  border: 3px solid #d39b28 !important;
  margin-top: 8px !important;
}
#btn-comprando:hover {
  background-color: #fff8ea !important;
  color: #b9851f !important;
  border-color: #b9851f !important;
}

/* 12. Botão "Enviar cupom" */
#btn-cupom {
  background-color: #d39b28 !important;
  color: #fff !important;
  font-weight: 600;
  border-radius: 8px;
  padding: 8px 16px;
  font-size: 0.95rem;
  border: none;
  text-align: center;
  transition: background-color 0.2s ease;
  margin-top: 8px !important;
  margin-bottom: 0 !important;
}
#btn-cupom:hover {
  background-color: #b9851f !important;
}

/* Campo de cupom com espaçamento inferior */
#txtCupom {
  margin-bottom: 0 !important;
}

/* 13. Total a pagar */
#txtPagar,
#txtPagarAvista,
#txtPagarAvistaPix,
#txtPagarAvistaPaypal,
#txtPagarAvistaItau {
  color: #171717 !important;
  font-weight: bold;
  font-size: 1.1rem;
}

/* Estilo para o texto de pagamento */
#boleto .form-group.text-center label.label,
#pix .form-group.text-center label.label,
#paypal .form-group.text-center label.label,
#itau .form-group.text-center label.label {
  display: block;
  font-size: 0.95rem;
  color: #4a4a4a;
  margin-bottom: 4px;
}

/* Estilo do valor abaixo */
#txtPagarAvista,
#txtPagarAvistaPix,
#txtPagarAvistaPaypal,
#txtPagarAvistaItau {
  display: block;
  font-size: 1.2rem;
  font-weight: bold;
  color: #171717 !important;
  margin-bottom: 12px;
}
/* Título do modal: Login */
.modal-title {
  font-size: 1.6rem;
  font-weight: 700;
  color: #2e3e80 !important;
  margin: 0;
  padding: 0;
  line-height: 1.3;
}

/* Botão "Enviar" no modal com estilo 2e3e80 */
.modal-body .btn,
.modal-footer .btn {
  background-color: #2e3e80 !important;
  color: #fff !important;
  font-weight: 600;
  border-radius: 8px;
  padding: 8px 16px;
  font-size: 0.95rem;
  border: none;
  text-align: center;
  transition: background-color 0.2s ease;
}

.modal-body .btn:hover,
.modal-footer .btn:hover {
  background-color: #1a2a60 !important; /* tom mais escuro no hover */
}

/* Link "Esqueceu a senha?" com contraste e legibilidade */
.modal-body .forgot-password,
.modal-body a[href*="esqueceu"],
.modal-body a[href*="senha"] {
  display: inline-block;
  font-size: 0.9rem;
  font-weight: 600;
  color: #2e3e80 !important;
  text-decoration: underline;
  margin-top: 8px;
  transition: color 0.2s ease, text-decoration 0.2s ease;
}

.modal-body .forgot-password:hover,
.modal-body a[href*="esqueceu"]:hover,
.modal-body a[href*="senha"]:hover {
  color: #1a2a60 !important;
  text-decoration: none;
}
/* Reduzir largura horizontal do modal */
.modal-dialog {
  max-width: 440px; /* valor ideal para desktop */
  margin: 1.75rem auto; /* centraliza verticalmente */
}

/* Garantir que o conteúdo interno continue bonito e alinhado */
.modal-content {
  width: 100%;
  border-radius: 8px;
  padding: 24px;
  background-color: #ffffff !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);
  border: none;
}