/* =========================================================
   Faça parte da equipe — cadastro de voluntários
   ========================================================= */

/* mesma regra usada em /apoio/: CSS de autor sempre vence o display:none
   padrao do atributo [hidden] quando outra regra da mesma especificidade
   define display — sem isto, elementos com [hidden] continuam visiveis. */
[hidden] { display: none !important; }

.equipe-topo { padding-block: clamp(2.25rem, 6vw, 3.5rem) clamp(1.5rem, 4vw, 2rem); }

.equipe-app { padding-block: clamp(1.5rem, 4vw, 2.25rem) clamp(3rem, 6vw, 4.5rem); }

.equipe-container { max-width: 560px; }

.equipe-card {
  background: var(--branco);
  border: 2px solid rgba(0, 48, 92, .1);
  border-radius: var(--radius);
  padding: clamp(1.4rem, 4vw, 2rem);
}

.equipe-campo { margin-bottom: 1.1rem; }
.equipe-label { display: block; font-size: .85rem; font-weight: 800; color: var(--azul-deep); margin-bottom: .5rem; }
.equipe-label small { font-weight: 600; color: rgba(0, 48, 92, .55); }

.equipe-input {
  width: 100%;
  min-height: 50px;
  padding: .7rem 1rem;
  border-radius: 12px;
  border: 2px solid rgba(0, 48, 92, .18);
  font-family: inherit;
  font-size: .98rem;
  font-weight: 600;
  color: var(--azul-deep);
}
.equipe-input:focus { outline: 3px solid var(--azul); outline-offset: 1px; }
.equipe-input:invalid:not(:placeholder-shown) { border-color: var(--erro, #C0392B); }

.equipe-linha-dupla { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.equipe-campo--uf .equipe-input { text-transform: uppercase; }

.equipe-cep-linha { display: flex; align-items: center; gap: .7rem; }
.equipe-cep-linha .equipe-input { max-width: 180px; }
.equipe-cep-status {
  font-size: .82rem;
  font-weight: 700;
  color: rgba(0, 48, 92, .55);
}
.equipe-cep-status.is-erro { color: #C0392B; }
.equipe-cep-status.is-ok { color: #1E8449; }

.equipe-endereco {
  margin-top: -.2rem;
  padding-top: .3rem;
  border-top: 1px dashed rgba(0, 48, 92, .15);
}

.equipe-atuacao {
  border: none;
  padding: .2rem 0 0;
  margin: 0 0 1.1rem;
}
.equipe-atuacao legend { padding: 0; margin-bottom: .35rem; }
.equipe-radio {
  display: flex;
  align-items: flex-start;
  gap: .6rem;
  padding: .45rem 0;
  cursor: pointer;
}
.equipe-radio input {
  flex: none;
  width: 20px;
  height: 20px;
  margin-top: 1px;
  accent-color: var(--azul-deep);
}
.equipe-radio span { font-size: .92rem; font-weight: 600; color: var(--grafite); line-height: 1.45; }
.equipe-atuacao__nota {
  font-size: .78rem;
  font-weight: 600;
  color: rgba(0, 48, 92, .55);
  line-height: 1.55;
  margin: .35rem 0 0;
}

.equipe-honeypot {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.equipe-consentimento {
  display: flex;
  gap: .75rem;
  align-items: flex-start;
  background: rgba(0, 72, 135, .05);
  border: 2px solid rgba(0, 72, 135, .18);
  border-radius: 14px;
  padding: 1rem 1.1rem;
  margin: 1.3rem 0 .9rem;
  cursor: pointer;
}
.equipe-consentimento input {
  flex: none;
  width: 22px;
  height: 22px;
  margin-top: 1px;
  accent-color: var(--azul-deep);
}
.equipe-consentimento span {
  font-size: .84rem;
  font-weight: 600;
  line-height: 1.55;
  color: var(--grafite);
}

.equipe-privacidade { margin-bottom: 1.3rem; }
.equipe-privacidade summary {
  cursor: pointer;
  font-size: .82rem;
  font-weight: 800;
  color: var(--azul);
  padding: .3rem 0;
}
.equipe-privacidade p {
  font-size: .82rem;
  font-weight: 600;
  line-height: 1.6;
  color: rgba(0, 48, 92, .7);
  margin: .6rem 0 0;
}
.equipe-privacidade a { color: var(--azul); font-weight: 800; }

.equipe-erro {
  background: #FCEBEA;
  border: 2px solid #C0392B;
  color: #96281B;
  font-weight: 700;
  font-size: .85rem;
  padding: .7rem 1rem;
  border-radius: 12px;
  margin-bottom: 1rem;
}

.equipe-btn-enviar { width: 100%; min-height: 54px; }
.equipe-btn-enviar[disabled] { opacity: .6; cursor: not-allowed; }

/* ---------- obrigado ---------- */
.equipe-obrigado { text-align: center; }
.equipe-obrigado__icone {
  width: 56px;
  height: 56px;
  color: #1E8449;
  margin-bottom: 1rem;
}
.equipe-obrigado h2 { font-size: 1.3rem; font-weight: 900; color: var(--azul-deep); margin: 0 0 .75rem; }
.equipe-obrigado__lead { font-size: 1rem; font-weight: 600; line-height: 1.6; color: var(--grafite); margin: 0 0 1.1rem; }
.equipe-obrigado__nota {
  font-size: .84rem;
  font-weight: 600;
  line-height: 1.6;
  color: rgba(0, 48, 92, .65);
  margin: 0 0 1.5rem;
}
.equipe-obrigado__nota a { color: var(--azul); font-weight: 800; }

@media (max-width: 560px) {
  .equipe-linha-dupla { grid-template-columns: 1fr; }
  .equipe-cep-linha { flex-wrap: wrap; }
}
