/* Trilha de capacitação: complementos ao Design System DevSecOps Pointer v1.0 (pointer.css). */
.turma-card h3 { margin-top: var(--s1); }
table.agenda td:first-child { white-space: nowrap; }
details.modulo { margin: var(--s3) 0; padding: var(--s3) var(--s4); border-radius: var(--raio-card-p); }
details.modulo summary { cursor: pointer; font-size: 17px; }
details.modulo h4 { margin: var(--s3) 0 var(--s1); font-size: 15px; color: var(--azul-700); }
details.modulo ul { margin: 0; padding-left: 20px; }
fieldset.questao { border: 1px solid var(--borda-200); border-radius: var(--raio-card-p); padding: var(--s3) var(--s4);
  margin: var(--s3) 0; }
fieldset.questao legend { font-weight: 600; padding: 0 6px; max-width: 100%; }
fieldset.questao .num-q { font-family: var(--mono); color: var(--azul-500); }
fieldset.questao .opcao.nao-sei span { color: var(--texto-terciario); font-style: italic; }
select { font: 400 16px var(--fonte); padding: 10px 12px; border: 1px solid #B9BEC9; border-radius: 12px; background: var(--branco);
  max-width: 100%; }
.selo { margin-top: var(--s4); border-top: 4px solid #10B1B1; }
.marca-ok { color: #0B7A7A; font-weight: 700; }
.marca-nao { color: #9CA3AF; }
.marca-parcial { color: #A2440F; font-weight: 600; }
table.matriz td, table.matriz th { text-align: center; }
table.matriz td:first-child, table.matriz th:first-child { text-align: left; }
/* matrizes em blocos (aluno × módulos, aluno × exercícios): largura fixa e quebra de texto nos cabeçalhos */
.matrizes { display: grid; gap: 10px; }
.matrizes table.matriz { table-layout: fixed; width: 100%; }
.matrizes table.matriz th, .matrizes table.matriz td { white-space: normal; overflow-wrap: anywhere; }
.matrizes table.matriz th:first-child, .matrizes table.matriz td:first-child { width: 22%; }
@media print {
  details.modulo { break-inside: avoid; }
  table.matriz { font-size: 8.5pt; }
}
