@import url("tokens.css");
@import url("elmex-scrollbar.css");

/* Pop-ups NFL — mesmo visual da vitrine home (page-card escuro) */

.fenix-popup .modal-dialog {
  max-width: min(92vw, 480px);
}

.fenix-popup .modal-dialog.modal-lg {
  max-width: min(92vw, 520px);
}

.fenix-popup .modal-content,
.fenix-popup .modal-content.elmex-popup__shell,
.fenix-popup .modal-content.colgate-popup__shell {
  position: relative;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 28px;
  background: var(--color-card-bg);
  color: #fff;
  overflow: hidden;
  box-shadow:
    0 24px 64px rgba(0, 0, 0, 0.55),
    0 12px 40px rgba(0, 131, 133, 0.22);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

.fenix-popup .btn-fechar {
  position: absolute;
  top: 1.2rem;
  right: 1.2rem;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.06);
  font-size: 2.2rem;
  line-height: 1;
  cursor: pointer;
  color: rgba(255, 255, 255, 0.75);
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.fenix-popup .btn-fechar:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(0, 131, 133, 0.35);
  color: #fff;
}

.elmex-popup__inner,
.fenix-popup .modal-body.popup-confirm-cadastro-body,
.fenix-popup .popup-confirm-cadastro-body {
  padding: clamp(2.4rem, 4vw, 3.2rem);
  text-align: left;
}

.elmex-popup__eyebrow,
.colgate-popup__head .elmex-popup__eyebrow,
.page-eyebrow.elmex-popup__eyebrow {
  margin: 0 0 var(--space-1);
  font-family: var(--font-ui);
  font-size: 1.1rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-primary);
  text-align: left;
}

.elmex-popup__title,
.fenix-popup .elmex-popup__title,
.fenix-popup .colgate-popup__head .titulo,
.fenix-popup .titulo:not(.mb-20) {
  margin: 0 0 var(--space-1);
  font-family: var(--font-heading);
  font-size: clamp(2rem, 3.6vw, 2.8rem);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #fff;
  text-align: left;
}

.elmex-popup__lead,
.colgate-popup__lead,
.elmex-popup__lead.elmex-popup__text,
.fenix-popup .descricao {
  margin: 0 0 var(--space-3);
  font-family: var(--font-body);
  font-size: 1.4rem;
  line-height: 1.45;
  color: var(--color-text-muted);
  text-align: left;
}

.elmex-popup__head,
.colgate-popup__head {
  padding: clamp(2.4rem, 4vw, 3.2rem) clamp(2.4rem, 4vw, 3.2rem) 0;
  background: transparent;
  text-align: left;
  color: #fff;
}

.colgate-popup__head::after {
  display: none;
}

.elmex-popup__icon,
.colgate-popup__icon,
.meusnumeros-sucesso-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  margin: 0 0 var(--space-2);
  border-radius: 50%;
  background: var(--gradient-fire);
  border: 1px solid rgba(255, 255, 255, 0.12);
  font-size: 2.2rem;
  color: #fff;
  box-shadow: var(--glow-fire);
}

.elmex-popup__icon--info {
  background: rgba(0, 131, 133, 0.14);
  border-color: rgba(0, 131, 133, 0.38);
  color: var(--color-gold);
  box-shadow: 0 0 20px rgba(0, 131, 133, 0.15);
}

.elmex-popup__icon--alert {
  background: rgba(0, 131, 133, 0.2);
  border-color: rgba(0, 131, 133, 0.32);
  color: var(--color-gold);
  box-shadow: 0 0 20px rgba(0, 131, 133, 0.2);
}

.elmex-popup__dados,
.popup-confirm-cadastro-dados {
  margin: 0 0 var(--space-3);
  padding: 1.2rem 1.4rem;
  border-radius: var(--radius-input);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.popup-confirm-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  padding: 0.85rem 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 1.35rem;
  line-height: 1.4;
}

.popup-confirm-row:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.popup-confirm-label {
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.15rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--color-primary);
  flex-shrink: 0;
}

.popup-confirm-valor {
  text-align: right;
  color: #fff;
  font-weight: 500;
  word-break: break-word;
}

.popup-confirm-bar,
.elmex-popup__bar {
  margin: 0 0 var(--space-3);
  padding: 1rem 1.2rem;
  border-radius: var(--radius-input);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.08);
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 1.25rem;
  line-height: 1.45;
  text-align: left;
  color: var(--color-text-muted);
}

.elmex-popup__note,
.login-modal-notice,
.hero__cpf-hint.elmex-popup__note {
  margin: var(--space-3) 0 0;
  padding: var(--space-2);
  border-radius: var(--radius-input);
  background: rgba(0, 0, 0, 0.28);
  border: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 1.15rem;
  line-height: 1.45;
  color: var(--color-text-soft);
  text-align: left;
}

.elmex-popup__note strong,
.login-modal-notice strong {
  color: var(--color-gold);
  font-weight: 600;
}

.elmex-popup__text,
.login-modal-body-text {
  margin: 0 0 var(--space-2);
  font-size: 1.35rem;
  line-height: 1.55;
  color: var(--color-text-muted);
  text-align: left;
}

.elmex-popup__actions,
.popup-confirm-cadastro-body .button,
.fenix-popup .button {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin-top: var(--space-3);
}

.elmex-popup__actions--row {
  flex-direction: row;
  flex-wrap: wrap;
}

.elmex-popup__actions .btn,
.popup-confirm-cadastro-body .btn,
.fenix-popup .button .btn {
  width: 100%;
  min-height: 52px;
  border-radius: var(--radius-btn);
}

.fenix-popup .btn-primary,
.fenix-popup .btn-confirmar {
  background: var(--color-primary);
  color: #fff;
  box-shadow: var(--glow-red);
}

.fenix-popup .btn-primary:hover:not(:disabled),
.fenix-popup .btn-confirmar:hover:not(:disabled) {
  background: var(--color-primary-hover);
}

.fenix-popup .btn-secondary {
  background: transparent;
  color: #fff;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.45);
}

.fenix-popup .btn-secondary:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.08);
  box-shadow: inset 0 0 0 1px var(--color-fire);
}

.fenix-popup .modal-body.text-center {
  text-align: left;
}

.fenix-popup .titulo.mb-20 {
  margin: 0 0 var(--space-2);
  font-family: var(--font-heading);
  font-size: clamp(2rem, 3.6vw, 2.8rem);
  font-weight: 400;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #fff;
  text-align: left;
}

.fenix-popup .descricao.mb-0 {
  margin-bottom: 0;
}

.fenix-popup .descricao strong {
  color: #fff;
  font-weight: 600;
}

.fenix-popup .button.mt-20 {
  margin-top: var(--space-3);
}

/* Popup recomendação de uso — escolha Sim/Não */
.popup-recomendacao-choices {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
  margin: 0 0 var(--space-2);
}

.popup-recomendacao-choice {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0.85rem 1rem;
  border-radius: var(--radius-pill, 999px);
  border: 1px solid rgba(255, 255, 255, 0.22);
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
  font-family: var(--font-ui);
  font-size: 1.35rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.popup-recomendacao-choice input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.popup-recomendacao-choice:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(0, 131, 133, 0.55);
}

.popup-recomendacao-choice:has(input:checked),
.popup-recomendacao-choice.is-selected {
  background: rgba(0, 131, 133, 0.28);
  border-color: var(--color-primary, #008385);
  box-shadow: 0 0 0 2px rgba(0, 131, 133, 0.35);
}

.popup-recomendacao-choices.is-err .popup-recomendacao-choice {
  border-color: rgba(255, 90, 90, 0.65);
}

.popup-recomendacao-erro {
  margin: 0 0 var(--space-2);
  font-family: var(--font-ui);
  font-size: 1.15rem;
  line-height: 1.35;
  color: #ff8f8f;
}

#popup-recomendacao .elmex-popup__title {
  font-size: clamp(1.7rem, 3.2vw, 2.2rem);
  margin-bottom: var(--space-3);
}
