.elementor-6323 .elementor-element.elementor-element-12d9579.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-6323 .elementor-element.elementor-element-7817ba8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(max-width:767px){.elementor-6323 .elementor-element.elementor-element-12d9579{width:var( --container-widget-width, 504.667px );max-width:504.667px;--container-widget-width:504.667px;--container-widget-flex-grow:0;}}/* Start custom CSS for html, class: .elementor-element-12d9579 *//* ===========================
   Mobile-first refinements
   (cole depois do seu CSS atual)
=========================== */

/* Tipografia mais legível no mobile */
.mm-quiz { font-size: 16px; line-height: 1.5; -webkit-text-size-adjust: 100%; }
.mm-card { border-radius: 14px; padding: 16px; }

/* Inputs de identificação */
.mm-ident-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.mm-ident input { width: 100%; padding: 12px 14px; border-radius: 10px; }

/* Botões */
.mm-btn { width: auto; padding: 12px 16px; border-radius: 12px; }
.mm-actions .mm-btn { min-width: 44%; }

/* Labels clicáveis maiores (alvo touch 44px) */
.mm-options label { padding: 14px; min-height: 44px; display: flex; align-items: center; }
.mm-options input { margin-right: 10px; }

/* Likert – bolinhas com alvo confortável */
.mm-scale label { width: 40px; height: 40px; font-size: 14px; }
.mm-likert .mm-li { grid-template-columns: 1fr auto; gap: 12px; }

/* Barras (resultado) */
.mm-bar { height: 14px; border-radius: 999px; }
.mm-bar-inner { height: 14px; }

/* Progress bar fixa no topo em telas pequenas (opcional) */
@media (max-width: 780px){
  .mm-progress-wrap { position: sticky; top: 0; z-index: 9; margin-top: 12px; }
}

/* Grades responsivas */
@media (max-width: 980px){
  .mm-grid4 { grid-template-columns: 1fr 1fr; gap: 10px; }
}
@media (max-width: 780px){
  .mm-ident-grid { grid-template-columns: 1fr; gap: 10px; }
  .mm-grid2 { grid-template-columns: 1fr; gap: 10px; }
  .mm-grid4 { grid-template-columns: 1fr; gap: 10px; }
}

/* Navegação – botões ocupam a linha no mobile */
@media (max-width: 780px){
  .mm-nav { gap: 8px; }
  .mm-nav .mm-btn { flex: 1 1 0; width: 100%; }
}

/* Afastamentos e títulos */
@media (max-width: 780px){
  .mm-card { padding: 14px; margin: 12px 0; }
  .mm-step h3 { font-size: 18px; margin-bottom: 8px; }
  .mm-instrucoes h2 { font-size: 20px; }
  .mm-resumo { font-size: 15px; }
}

/* Relatório – separadores e legibilidade */
@media (max-width: 780px){
  .mm-relatorio h4 { font-size: 18px; margin-top: 14px; }
  .mm-rel-p { font-size: 15px; margin: 10px 0 6px; }
  .mm-relatorio-disclaimer { font-size: 14px; padding: 12px; }
}

/* Botões finais empilhados e full-width */
@media (max-width: 620px){
  .mm-actions { flex-direction: column; }
  .mm-actions .mm-btn { width: 100%; }
}

/* Toques de UX em mobile */
@media (hover: none){
  .mm-options label:hover { box-shadow: none; border-color: #e5e7eb; }
}
.mm-options label:active { transform: translateY(0); }

/* Ajuste de contraste dos textos auxiliares no mobile */
@media (max-width: 480px){
  .mm-progress-label { font-size: 11px; }
  .mm-disclaimer-final { font-size: 12px; }
}

/* Evita “saltos” quando o teclado abre no iOS */
@supports (-webkit-touch-callout: none) {
  .mm-quiz { min-height: 100svh; }
}

/* Pequeno respiro nas listas Likert em telas menores */
@media (max-width: 480px){
  .mm-likert .mm-li { padding: 12px 0; }
  .mm-scale { gap: 8px; }
}

/* Limita largura do container em telas MUITO pequenas */
@media (max-width: 360px){
  .mm-quiz { padding: 0 8px; }
}/* End custom CSS */