/* D7: Reports. Reaproveita .usu-kpis, .usu-barra e .cad-tabela; aqui ficam so as pecas proprias. */
.btn-t { background: transparent; color: var(--color-accent-300); box-shadow: none; padding-inline: 10px; }
.btn-t:hover { background: var(--color-accent-900); }
.rep-barra { justify-content: flex-start; flex-wrap: wrap; }
.rep-barra .campo-busca { flex: 0 1 420px; }
.rep-titulo { max-width: 420px; overflow-wrap: anywhere; }
.rep-titulo > b { font-weight: 600; }
.rep-titulo > span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: calc(12.5px * var(--fs, 1)); color: var(--color-neutral-300); }
.rep-nota { font-size: calc(12px * var(--fs, 1)); color: var(--color-neutral-300); }
.rep-rodape { padding: 14px 16px; border-top: 1px solid var(--color-divider); font-size: calc(13px * var(--fs, 1)); color: var(--color-neutral-300); }
.tbl tr.rw { cursor: pointer; }

/* Novo report */
.rep-anexar { display: flex; align-items: center; gap: 10px; }
.rep-anexo-bt { flex: 1; display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 0; border-radius: 12px; background: var(--color-bg); box-shadow: inset 0 0 0 1px var(--color-divider); color: var(--color-text); font: inherit; text-align: left; cursor: pointer; }
.rep-anexo-bt:hover { background: var(--color-accent-900); }
.rep-anexo-bt:focus-visible { outline: 2px solid var(--color-accent-300); outline-offset: 2px; }
.rep-anexo-bt .ph { font-size: calc(22px * var(--fs, 1)); color: var(--color-accent-300); }
.rep-anexo-bt span { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.rep-anexo-bt b { font-size: calc(13.5px * var(--fs, 1)); font-weight: 600; }
.rep-anexo-bt small { font-size: calc(12px * var(--fs, 1)); color: var(--color-neutral-300); overflow-wrap: anywhere; }
.rep-previa img, .rep-print img { display: block; max-width: 100%; max-height: 260px; border-radius: 10px; box-shadow: inset 0 0 0 1px var(--color-divider); }

/* Detalhe */
.rep-caixa { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px; border-radius: 12px; background: var(--color-bg); font-size: calc(13.5px * var(--fs, 1)); }
.rep-caixa p { margin: 0; overflow-wrap: anywhere; white-space: pre-wrap; }
.rep-caixa.resposta { background: var(--color-accent-900); }
.rep-acoes { padding: 12px 16px; border-radius: 12px; background: var(--color-bg); font-size: calc(13px * var(--fs, 1)); }
.rep-acoes summary { cursor: pointer; font-weight: 600; }
.rep-acoes summary:focus-visible { outline: 2px solid var(--color-accent-300); outline-offset: 2px; }
.rep-acoes ol { margin: 10px 0 0; padding-left: 20px; display: grid; gap: 4px; color: var(--color-neutral-300); }
