/* Docentes · Reuniões, Consulta Reuniões e Mensagens */

/* formulários das janelas (criar/editar reunião, nova mensagem) */
.reu-form { display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: 8px 12px; align-items: center; }
.reu-form > label { font-size: 13px; color: var(--texto-2); }
.reu-form > label.obrig::after { content: " *"; color: #a4262c; }
.reu-form .reu-linha { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.reu-form .reu-linha > * { flex: 1 1 140px; min-width: 0; }
.reu-form .reu-linha > .reu-estado { flex: 0 0 auto; }
@media (max-width: 640px) { .reu-form { grid-template-columns: minmax(0, 1fr); } }

.reu-passos { display: flex; gap: 6px; margin-bottom: 12px; flex-wrap: wrap; }
.reu-passo { border: 1px solid var(--linha); background: #fff; border-radius: 999px; padding: 4px 12px; font: inherit; font-size: 13px; cursor: pointer; color: var(--texto-2); }
.reu-passo.ativo { background: var(--azul); border-color: var(--azul); color: #fff; font-weight: 600; }
.reu-passo.feito::before { content: "✓ "; }

.reu-estado { font-size: 12px; white-space: nowrap; }
.reu-estado.livre { color: #23692a; }
.reu-estado.ocupado { color: #8a5a00; }

.reu-barra { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin: 6px 0 8px; }
.reu-barra .espaco { flex: 1; }
.reu-barra .reu-pesquisa { width: 240px; }
.reu-barra .reu-combo { width: 260px; }
.reu-escolha { border: 1px solid var(--linha); border-radius: var(--raio); padding: 8px; margin-bottom: 10px; background: #f7f9fb; }
.reu-escolha .grelha-dx { max-height: 260px; }
.reu-intervenientes .dxbl-tagbox { min-width: 160px; }

/* cabeçalho da reunião */
.reu-cabecalho { display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: 13px; padding: 8px 0 10px; }
.reu-cabecalho span b { color: var(--texto-2); font-weight: 600; margin-right: 4px; }
.reu-texto { white-space: pre-wrap; font-size: 14px; line-height: 1.5; margin: 0; padding: 4px 2px; }
.reu-separadores { margin-top: 8px; }

/* ata */
.reu-ata .dxbl-memo textarea, .reu-ata textarea { font-family: inherit; font-size: 14px; line-height: 1.5; }
.reu-elementos { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; padding: 8px 0; }
.reu-elementos .muted { font-size: 12px; }
.reu-opcoes-ata { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 8px 16px; align-items: center; padding-top: 8px; border-top: 1px solid var(--linha); margin-top: 6px; }
.reu-ata-cabecalho { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.reu-ata-cabecalho .reu-numata { width: 120px; }
.reu-ata-cabecalho .reu-tamanho { width: 90px; }

/* pauta da reunião de avaliação */
.pauta-reuniao .grelha-dx { max-height: calc(100vh - 330px); min-height: 280px; }
.pauta-celula { display: inline-block; min-width: 34px; padding: 2px 6px; border-radius: 4px; text-align: center; font-weight: 600; font-variant-numeric: tabular-nums; }
.pauta-celula.ok { cursor: pointer; }
.pauta-celula.ok:hover { outline: 2px solid var(--azul); }
.pauta-celula.positiva { color: #23692a; }
.pauta-celula.negativa { color: #a4262c; }
.pauta-celula.definitiva { background: #d6e9c6; }
.pauta-celula.bloqueada { background: #e6e9ec; color: var(--texto-2); }
.pauta-celula.vazia { color: #9aa5ae; font-weight: 400; }
.pauta-celula .publicada { color: var(--azul); margin-left: 1px; }
.pauta-legenda { display: flex; gap: 12px; flex-wrap: wrap; font-size: 12px; color: var(--texto-2); padding-top: 6px; }
.pauta-legenda span::before { content: ""; display: inline-block; width: 12px; height: 12px; border-radius: 3px; margin-right: 4px; vertical-align: -2px; border: 1px solid var(--linha); }
.pauta-legenda .l-def::before { background: #d6e9c6; }
.pauta-legenda .l-bl::before { background: #e6e9ec; }
.pauta-legenda .l-neg::before { background: #fde2e2; }
.grelha-dx .linha-outra-turma td { opacity: .55; }

/* mensagens */
.msg-colunas { display: grid; grid-template-columns: minmax(320px, 0.9fr) minmax(0, 1.4fr); gap: 12px; align-items: start; }
@media (max-width: 1000px) { .msg-colunas { grid-template-columns: minmax(0, 1fr); } }
.msg-colunas > .msg-separadores { margin-top: 0; }
.grelha-dx .msg-nao-lida td { font-weight: 700; }
.msg-conversa { display: flex; flex-direction: column; gap: 10px; max-height: calc(100vh - 420px); min-height: 220px; overflow-y: auto; padding: 8px 4px; }
.msg-bolha { max-width: 86%; align-self: flex-start; background: #f2f5f7; border: 1px solid var(--linha); border-radius: 10px; padding: 8px 10px; font-size: 14px; }
.msg-bolha.propria { align-self: flex-end; background: var(--azul-claro); border-color: #b9dde9; }
.msg-bolha.sistema { align-self: center; background: transparent; border: 0; color: var(--texto-2); font-size: 12px; font-style: italic; padding: 0; }
.msg-bolha-topo { display: flex; gap: 8px; font-size: 12px; color: var(--texto-2); margin-bottom: 3px; }
.msg-bolha-topo strong { color: var(--texto); }
.msg-texto { line-height: 1.45; overflow-wrap: anywhere; }
.msg-anexo { display: inline-flex; align-items: center; gap: 6px; border: 0; background: transparent; color: var(--azul); cursor: pointer; padding: 0; font: inherit; text-decoration: underline; }
.msg-resposta { border-top: 1px solid var(--linha); padding-top: 8px; display: flex; flex-direction: column; gap: 6px; }
.msg-resposta .reu-barra { margin: 0; }
.msg-anexos-novos { display: flex; gap: 6px; flex-wrap: wrap; font-size: 12px; }
.msg-escolhidos { max-height: 140px; overflow-y: auto; display: flex; flex-wrap: wrap; gap: 4px; }
.msg-escolhidos .selo { cursor: pointer; }
.msg-escolhidos .selo::after { content: " ✕"; }
.msg-lista-dest { height: 220px; }
.reu-combo { width: 260px; flex: none; }
.painel-seccao-topo .espaco { flex: 1; }
/* Alunos da turma: docentes */
.docentes-turma { margin-top: 12px; }
