/* LeadFlow: tema de quiz aplicado somente a formulários explicitamente habilitados. */
form.elementor-form.lfq-ready {--lfq-blue:#3B82F6;--lfq-dark:#0F172A;--lfq-border:#1E293B;--lfq-text:#CBD5E1;--lfq-heading:#E2E8F0;--lfq-surface:#0F172A;--lfq-background:#111D32;--lfq-progress:#3B82F6;--lfq-button:#3B82F6;max-width:100%;scroll-margin-top:110px;background:var(--lfq-background);border:1px solid var(--lfq-border);border-radius:15px;padding:clamp(18px,3vw,34px)}
form.elementor-form.lfq-ready .elementor-form-fields-wrapper{display:flex!important;flex-direction:column!important;gap:0!important}
form.elementor-form.lfq-ready .elementor-field-group.lfq-question{display:none!important;width:100%!important;flex-direction:column!important;align-items:stretch!important;justify-content:center!important;padding:12px 5px 16px!important;margin:0!important;gap:15px!important;min-height:180px}
form.elementor-form.lfq-ready .elementor-field-group.lfq-question.lfq-active{display:flex!important;animation:lfqEnter .32s ease both}
@keyframes lfqEnter{from{opacity:.1;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
form.elementor-form.lfq-hide-submit .elementor-field-type-submit,form.elementor-form.lfq-hide-submit .e-form__buttons{display:none!important}
form.elementor-form.lfq-ready .lfq-question-label{color:var(--lfq-heading)!important;font-size:clamp(18px,2.3vw,23px)!important;font-weight:700!important;display:block!important;line-height:1.35!important;width:100%!important;margin:0 0 5px!important}
form.elementor-form.lfq-ready .elementor-field-textual{background:var(--lfq-surface)!important;color:var(--lfq-text)!important;border:1px solid var(--lfq-border)!important;border-radius:9px!important;font-size:16px!important;min-height:52px!important;padding:12px 16px!important;box-shadow:none!important;width:100%!important}
form.elementor-form.lfq-ready textarea.elementor-field-textual{min-height:116px!important;resize:vertical!important}
form.elementor-form.lfq-ready .elementor-field-textual:focus{border-color:var(--lfq-blue)!important;outline:2px solid rgba(59,130,246,.25)!important;outline-offset:0;background:var(--lfq-surface)!important}
form.elementor-form.lfq-ready .elementor-field-subgroup{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:11px!important;width:100%!important}
form.elementor-form.lfq-ready .elementor-field-option{display:flex!important;align-items:center!important;min-height:52px!important;min-width:0!important;padding:12px 15px!important;border:1px solid var(--lfq-border)!important;border-radius:9px!important;background:var(--lfq-surface)!important;cursor:pointer!important;transition:border-color .18s,background .18s}
form.elementor-form.lfq-ready .elementor-field-option:hover{border-color:#64748B!important;background:var(--lfq-surface)!important}
form.elementor-form.lfq-ready .elementor-field-option:has(input:checked){border-color:var(--lfq-blue)!important;background:color-mix(in srgb,var(--lfq-blue) 12%,var(--lfq-surface))!important;box-shadow:inset 0 0 0 1px var(--lfq-blue)!important}
/* Native radio/checkbox glyphs: respects light AND dark themes and keeps a real checkmark/dot. */
form.elementor-form.lfq-ready .elementor-field-option input[type="radio"],
form.elementor-form.lfq-ready .elementor-field-option input[type="checkbox"]{
  -webkit-appearance:auto!important;appearance:auto!important;
  accent-color:var(--lfq-blue)!important;
  display:inline-block!important;position:static!important;
  flex:0 0 18px!important;width:18px!important;height:18px!important;
  min-width:18px!important;min-height:18px!important;
  margin:0 12px 0 0!important;padding:0!important;
  border:0!important;border-radius:initial!important;
  background:initial!important;box-shadow:none!important;
  opacity:1!important;visibility:visible!important;
  cursor:pointer!important;vertical-align:middle!important;
}
form.elementor-form.lfq-ready .elementor-field-option input[type="radio"]::before,
form.elementor-form.lfq-ready .elementor-field-option input[type="radio"]::after,
form.elementor-form.lfq-ready .elementor-field-option input[type="checkbox"]::before,
form.elementor-form.lfq-ready .elementor-field-option input[type="checkbox"]::after{
  content:none!important;display:none!important;
}
form.elementor-form.lfq-ready .elementor-field-option label{
  display:block!important;width:auto!important;color:var(--lfq-text)!important;
  opacity:1!important;text-shadow:none!important;
  font-weight:500!important;line-height:1.5!important;font-size:16px!important;
  margin:0!important;cursor:pointer;
}
/* Never force white: in a light quiz the selected label must stay readable. */
form.elementor-form.lfq-ready .elementor-field-option:has(input:checked) label{
  color:var(--lfq-text)!important;opacity:1!important;
  font-weight:650!important;text-shadow:none!important;
}
form.elementor-form.lfq-ready .elementor-field-option:focus-within{
  border-color:var(--lfq-blue)!important;
}
form.elementor-form.lfq-ready .lfq-progress{width:100%;margin-bottom:19px}
form.elementor-form.lfq-ready .lfq-progress-top{display:flex;justify-content:space-between;gap:10px;margin-bottom:9px;color:#94A3B8;font-size:12px;font-weight:650;letter-spacing:.2px}
form.elementor-form.lfq-ready .lfq-progress-track{height:5px;border-radius:99px;background:var(--lfq-border);overflow:hidden}
form.elementor-form.lfq-ready .lfq-progress-fill{height:100%;width:0;background:var(--lfq-progress);border-radius:99px;transition:width .3s ease}
form.elementor-form.lfq-ready .lfq-actions{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:12px!important;margin-top:14px!important}
form.elementor-form.lfq-ready button.lfq-next{background:var(--lfq-button)!important;color:white!important;font-size:15px!important;font-weight:700!important;border:0!important;padding:13px 27px!important;border-radius:8px!important;cursor:pointer!important;min-height:46px!important}
form.elementor-form.lfq-ready button.lfq-next:hover{filter:brightness(.9)}
form.elementor-form.lfq-ready button.lfq-back{background:transparent!important;color:#A9B6C9!important;border:1px solid #475569!important;font-size:14px!important;font-weight:600!important;padding:12px 19px!important;border-radius:8px!important;cursor:pointer!important;min-height:46px!important}
form.elementor-form.lfq-ready .lfq-hint{color:#8290a4;font-size:12px}
form.elementor-form.lfq-ready .elementor-field-type-submit .elementor-button,form.elementor-form.lfq-ready .e-form__buttons .elementor-button{min-height:53px!important;width:100%!important;background:var(--lfq-button)!important;border-radius:8px!important;font-size:17px!important;font-weight:700!important}
form.elementor-form.lfq-ready .lfq-invalid{outline:0}
form.elementor-form.lfq-ready .lfq-invalid .lfq-question-label{color:#FDA4AF!important}
form.elementor-form.lfq-ready .lfq-invalid .elementor-field-textual{border-color:#F87171!important}
@media(max-width:600px){form.elementor-form.lfq-ready .lfq-question-label{font-size:19px!important}form.elementor-form.lfq-ready .lfq-actions{gap:9px!important}form.elementor-form.lfq-ready button.lfq-next{padding:13px 21px!important}}
@media(prefers-reduced-motion:reduce){form.elementor-form.lfq-ready .elementor-field-group.lfq-question.lfq-active{animation:none}form.elementor-form.lfq-ready .lfq-progress-fill{transition:none}}

/* Exibição discreta por padrão: somente a barra, sem contador ou porcentagem. */
form.elementor-form.lfq-no-step-label .lfq-step-label,form.elementor-form.lfq-no-percentage .lfq-percent{display:none!important}
form.elementor-form.lfq-no-step-label.lfq-no-percentage .lfq-progress-top{display:none!important}
form.elementor-form.lfq-no-progress .lfq-progress-track{display:none!important}
form.elementor-form.lfq-no-progress.lfq-no-step-label.lfq-no-percentage .lfq-progress{display:none!important}
