/* quiz-gate.css v2 — overlay do gate de quiz + email.
 * Seletores ancorados em #qgate (id no root): especificidade de ID vence os
 * .class dos temas SEM depender de ordem de carga nem !important (conserta o
 * achado §7.2 — título ilegível por empate de especificidade). */

#qgate {
  position: fixed;
  inset: 0;
  z-index: 2147483646;
  background: #0b1020;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  overflow-y: auto;
}

#qgate.qgate-hidden { display: none !important; }

#qgate .qgate-card {
  width: 100%;
  max-width: 460px;
  background: #151b2e;
  color: #ffffff;
  border-radius: 16px;
  padding: 28px 22px;
  text-align: center;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  box-shadow: 0 18px 50px rgba(0, 0, 0, .45);
}

#qgate .qgate-progress {
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #8ea0c9;
  margin-bottom: 14px;
  min-height: 14px;
}

#qgate .qgate-title {
  font-size: 21px;
  line-height: 1.3;
  margin: 0 0 8px;
  font-weight: 700;
  color: #ffffff;
}

#qgate .qgate-sub {
  font-size: 15px;
  line-height: 1.45;
  color: #b9c4dd;
  margin: 0 0 20px;
}

#qgate .qgate-body { display: flex; flex-direction: column; gap: 10px; }

#qgate .qgate-opt {
  width: 100%;
  padding: 15px 16px;
  font-size: 16px;
  color: #ffffff;
  background: #1e2740;
  border: 1px solid #2c3752;
  border-radius: 10px;
  cursor: pointer;
  text-align: left;
  transition: background .15s, border-color .15s;
}

#qgate .qgate-opt:hover,
#qgate .qgate-opt:focus-visible { background: #27324f; border-color: #4a5a86; outline: none; }

#qgate .qgate-form { display: flex; flex-direction: column; gap: 10px; }

#qgate .qgate-input {
  width: 100%;
  padding: 14px 14px;
  font-size: 16px;
  color: #ffffff;
  background: #1e2740;
  border: 1px solid #2c3752;
  border-radius: 10px;
}

#qgate .qgate-input::placeholder { color: #7e8db3; }
#qgate .qgate-input:focus { outline: none; border-color: #4a5a86; }

#qgate .qgate-btn {
  width: 100%;
  padding: 16px 18px;
  font-size: 17px;
  font-weight: 700;
  color: #0b1020;
  background: #ffb400;
  border: none;
  border-radius: 10px;
  cursor: pointer;
}

#qgate .qgate-btn:disabled { opacity: .6; cursor: default; }

#qgate .qgate-footer {
  font-size: 12px;
  line-height: 1.5;
  color: #8ea0c9;
  margin: 18px 0 0;
  min-height: 12px;
}
