.questoes-section { padding-top: 8rem; }

/* Filtros */
.filtros {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  margin-bottom: 1.5rem;
}
.filtros label {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  font-size: .8rem;
  font-weight: 600;
  color: #d1d5db;
}
.filtros select,
.busca {
  padding: .7rem .9rem;
  border-radius: .75rem;
  border: 1px solid rgba(168,85,247,.3);
  background: rgba(255,255,255,.05);
  color: #fff;
  font-family: inherit;
  font-size: .9rem;
  transition: border-color .2s, box-shadow .2s;
}
.filtros select option { background: #1a0b2e; color: #fff; }
.filtros select:focus,
.busca:focus {
  outline: none;
  border-color: var(--purple-light);
  box-shadow: 0 0 15px rgba(168,85,247,.4);
}

/* Busca */
.busca { width: 100%; margin-bottom: 1.5rem; }

.contador { color: #9ca3af; font-size: .875rem; margin-bottom: 1.5rem; }

/* Card de questão */
.questao {
  border-radius: 1rem;
  border: 1px solid rgba(168,85,247,.2);
  background: rgba(255,255,255,.05);
  padding: 1.75rem;
  margin-bottom: 1.5rem;
  transition: border-color .2s;
}
.questao:hover { border-color: rgba(168,85,247,.45); }

.tags { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1rem; }
.tag {
  background: rgba(168,85,247,.15);
  color: var(--purple-light);
  font-size: .7rem;
  font-weight: 600;
  padding: .3rem .75rem;
  border-radius: 9999px;
  letter-spacing: .03em;
}
.tag.dif-facil   { background: rgba(34,197,94,.15);  color: #4ade80; }
.tag.dif-media   { background: rgba(234,179,8,.15);  color: #fbbf24; }
.tag.dif-dificil { background: rgba(239,68,68,.15);  color: #f87171; }

.enunciado { color: #e5e7eb; line-height: 1.6; margin-bottom: 1.25rem; }
.questao img { max-width: 100%; border-radius: .75rem; margin-bottom: 1.25rem; }

/* Alternativas */
.alternativas { display: flex; flex-direction: column; gap: .6rem; }
.alt {
  display: flex;
  gap: .75rem;
  padding: .85rem 1rem;
  border: 1px solid rgba(168,85,247,.2);
  border-radius: .75rem;
  background: rgba(255,255,255,.03);
  color: #e5e7eb;
  cursor: pointer;
  transition: .15s;
}
.alt:hover { border-color: var(--purple-light); background: rgba(168,85,247,.08); }
.alt .letra { font-weight: 700; color: var(--purple-light); }
.alt.correta { background: rgba(34,197,94,.15);  border-color: #22c55e; }
.alt.errada  { background: rgba(239,68,68,.15);  border-color: #ef4444; }
.alt.desativada { pointer-events: none; }

/* Explicação */
.explicacao {
  margin-top: 1.25rem;
  padding: 1rem 1.25rem;
  background: rgba(168,85,247,.08);
  border-left: 3px solid var(--purple);
  border-radius: .5rem;
  color: #d1d5db;
  font-size: .9rem;
  line-height: 1.6;
  display: none;
}
.explicacao.visivel { display: block; }

.vazio { text-align: center; color: #6b7280; padding: 3rem; }

/* Botão carregar mais */
.carregar-mais {
  display: none;
  width: 100%;
  border: none;
  cursor: pointer;
  margin-top: 1rem;
}

@media (max-width: 768px) {
  .filtros { grid-template-columns: 1fr 1fr; }
}
/* Dificuldade "Nova" (poucas respostas) */
.tag.dif-nova { background: rgba(148,163,184,.15); color: #94a3b8; }

/* Estatística de acerto */
.stats {
  margin-top: 1rem;
  font-size: .8rem;
  color: #9ca3af;
  font-weight: 600;
}
.alt-soma {
  display: flex; gap: .75rem; padding: .6rem 1rem;
  color: #e5e7eb; border-left: 2px solid rgba(168,85,247,.3);
}
.somatorio-box, .discursiva-box { margin-top: 1rem; }
.somatorio-box label { display: flex; flex-direction: column; gap: .4rem; color: #d1d5db; }
.input-soma {
  padding: .6rem; border-radius: .5rem; margin-top: .3rem;
  border: 1px solid rgba(168,85,247,.3); background: rgba(255,255,255,.05); color: #fff;
}
.btn-gabarito, .btn-conferir-soma {
  margin-top: .6rem; padding: .6rem 1rem; border: none; border-radius: .5rem;
  background: var(--purple); color: #fff; cursor: pointer; font-weight: 600;
}
.gabarito {
  margin-top: .8rem; padding: 1rem; border-radius: .5rem;
  background: rgba(34,197,94,.1); border-left: 3px solid #22c55e; color: #d1d5db;
}
.resultado-soma { margin-top: .6rem; font-weight: 700; }
