/* Tema MEP genérico para ferramentas isoladas (apps/*).
   Carregado DEPOIS dos estilos originais de cada app para alinhar à UI do protótipo:
   Helvetica Neue, primário #001F51, destaque #00AAFF, bordas retas, sem sombras. */

html, body {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  display: block !important;
  background: transparent !important;
  color: #101010;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 16px;
  line-height: 1.5;
  /* o documento do app nunca rola: o pai dimensiona o iframe ao conteúdo;
     rolagem interna no iOS captura o gesto e trava a página (T21) */
  overflow: hidden !important;
  touch-action: pan-y;
}

*, *::before, *::after { box-sizing: border-box; }

/* O <h1> principal é escondido via mep-embed.js (a página externa já tem o H1). */
h1[data-mep-hidden] { display: none !important; }

a { color: #001f51; }
a:hover { color: #00aaff; }
a:focus-visible, button:focus-visible, [class*="btn"]:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible {
  outline: 2px solid #00aaff !important;
  outline-offset: 2px;
}

/* Botões e ações primárias */
button, input[type="submit"], input[type="button"], input[type="reset"],
.btn, [class*="btn-"], [class*="-btn"], [class*="button"], [role="button"] {
  border: 1px solid #001f51 !important;
  border-radius: 4px !important;
  background-color: #001f51 !important;
  color: #fff !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  cursor: pointer;
  box-shadow: none !important;
}
button:hover, input[type="submit"]:hover, input[type="button"]:hover, input[type="reset"]:hover,
.btn:hover, [class*="btn-"]:hover, [class*="-btn"]:hover, [class*="button"]:hover, [role="button"]:hover {
  background-color: #00aaff !important;
  border-color: #00aaff !important;
  color: #fff !important;
}
/* Variantes secundárias mantêm distinção visual */
[class*="secondary"], [class*="ghost"], [class*="outline"], [class*="neutral"],
[class*="btn-no"], [class*="btn-light"], [class*="quiet"], [class*="link-btn"] {
  background-color: #fff !important;
  color: #001f51 !important;
  border-color: #001f51 !important;
}
[class*="secondary"]:hover, [class*="ghost"]:hover, [class*="outline"]:hover, [class*="neutral"]:hover,
[class*="btn-no"]:hover, [class*="btn-light"]:hover, [class*="quiet"]:hover, [class*="link-btn"]:hover {
  background-color: #001f51 !important;
  color: #fff !important;
}
/* Estados de seleção continuam distinguíveis */
button.active, button.is-active, button.selected, button[aria-pressed="true"], button[aria-selected="true"],
.active[class*="btn"], .selected[class*="btn"], [aria-selected="true"][class*="btn"] {
  background-color: #00aaff !important;
  border-color: #00aaff !important;
  color: #fff !important;
}
/* Feedback de certo/errado preservado */
[class*="correct"], [class*="certa"], [class*="is-right"] { background-color: #0a7d3b !important; border-color: #0a7d3b !important; color: #fff !important; }
[class*="wrong"], [class*="errada"], [class*="incorrect"] { background-color: #b42318 !important; border-color: #b42318 !important; color: #fff !important; }
button:disabled, [class*="btn"][disabled], [aria-disabled="true"] { opacity: .55; cursor: not-allowed; }

/* Campos */
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), select, textarea {
  border: 1px solid #d9d9d9 !important;
  border-radius: 4px !important;
  background-color: #fff !important;
  color: #101010 !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  box-shadow: none !important;
}
input[type="checkbox"], input[type="radio"] { accent-color: #001f51; }

/* Containers/cartões: bordas retas e sem sombra */
[class*="container"], [class*="card"], [class*="panel"], [class*="wrapper"],
[class*="calculator"], [class*="box"], [class*="modal"], [class*="result"] {
  box-shadow: none !important;
}
[class*="container"], [class*="card"], [class*="panel"], [class*="calculator"], [class*="box"] {
  border-radius: 0 !important;
}
/* Barras/pílulas de progresso mantêm raio */
[class*="progress"], [class*="bar"], [class*="pill"], [class*="badge"], [class*="chip"] {
  border-radius: 999px;
}

/* Fundos escuros/arco-íris do app viram superfícies neutras */
body > [class*="container"], body > [class*="app"], body > [class*="wrap"],
.elementor, .plugin-quiz-root, [id*="quiz-app"], [id*="app"] {
  background-image: none;
}

/* Tabelas com borda fina */
table { border-collapse: collapse !important; }
th, td { border: 1px solid #d9d9d9 !important; padding: 6px 10px; }

img { max-width: 100%; height: auto; }
