/* DRE: modal e pagina do relatorio (11/10/2026) */

/* Modal */
.dre-l { display: block; font-size: 11px; font-weight: 600; color: #8793a6; margin: 8px 0 4px; letter-spacing: .03em; }
.dre-atalhos { margin: -4px 0 4px; font-size: 11px; color: #8793a6; font-weight: 600; }
#modal-report-dre .dre-atalhos .btn.btn-link { padding: 2px 8px; margin: 0; text-transform: none !important; color: #c62d3a !important; font-size: 12px; font-weight: 600; }
#modal-report-dre .dre-atalhos .btn.btn-link:hover { background: rgba(198,45,58,.08); }
.dre-chk { margin: 4px 18px 0 0; font-size: 13px; cursor: pointer; }
#modal-report-dre .form-control { border: 1px solid #d5dbe5; border-radius: 8px; padding: 0 10px; height: 40px; background-image: none !important; }

/* Pagina */
.dre-body { background: #f4f5f8; font-family: Roboto, Arial, sans-serif; }
.dre-toolbar { position: sticky; top: 0; z-index: 5; display: flex; align-items: center; gap: 12px; padding: 9px 18px; background: #323639; color: #fff; }
.dre-toolbar-title { flex: 1; font-size: 14px; font-weight: 500; }
.dre-toolbar .btn { margin: 0 0 0 6px; font-size: 12px; font-weight: 600; }
.dre-page { max-width: 980px; margin: 16px auto; padding: 22px 26px; background: #fff; border-radius: 12px; box-shadow: 0 2px 14px rgba(40,50,70,.08); }
.dre-head { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; padding-bottom: 14px; margin-bottom: 14px; border-bottom: 2px solid #c62d3a; }
.dre-head-r { text-align: right; }
.dre-empresa { font-size: 16px; font-weight: 700; color: #2b3445; }
.dre-titulo { font-size: 17px; font-weight: 700; color: #c62d3a; }
.dre-sub { font-size: 12px; color: #6b7588; margin-top: 2px; }

.dre-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; margin-bottom: 16px; }
.dre-kpi { background: #f7f8fa; border: 1px solid #e7eaf0; border-radius: 10px; padding: 10px 14px; }
.dre-kpi span { display: block; font-size: 10.5px; font-weight: 600; letter-spacing: .05em; color: #8793a6; }
.dre-kpi b { font-size: 19px; color: #2b3445; }
.dre-kpi small { display: block; font-size: 11px; color: #8793a6; margin-top: 1px; }
.dre-kpi.pos b { color: #2e9e5b; }
.dre-kpi.neg b { color: #c62d3a; }
.dre-var-up { color: #2e9e5b; font-weight: 600; }
.dre-var-down { color: #c62d3a; font-weight: 600; }

.dre-tabela { width: 100%; border-collapse: collapse; font-size: 13px; }
.dre-tabela th { background: #c62d3a; color: #fff; font-size: 11px; letter-spacing: .03em; padding: 6px 10px; }
.dre-tabela td { padding: 5px 10px; vertical-align: middle; }
.dre-tabela .r { text-align: right; white-space: nowrap; }
.dre-tabela .l { text-align: left; }
.dre-tabela tr.sec td { font-weight: 700; font-size: 13.5px; color: #fff; padding: 8px 10px; }
.dre-tabela tr.sec.rec td { background: #2e9e5b; }
.dre-tabela tr.sec.desp td { background: #e0685f; }
.dre-tabela tr.sec.cmv td { background: #8793a6; }
.dre-tabela tr.item td { border-bottom: 1px solid #eef0f4; }
.dre-tabela tr.item td:first-child { padding-left: 22px; }
.dre-tabela tr.item.zero td { color: #b3bac7; }
.dre-tabela tr.cat td { font-weight: 600; color: #2b3445; background: #fafbfc; border-bottom: 1px solid #eef0f4; }
.dre-tabela tr.sub td { font-size: 12px; font-style: italic; color: #6b7588; border-bottom: 1px solid #f3f4f7; }
.dre-tabela tr.sub td:first-child { padding-left: 40px; }
.dre-tabela tr.tot td { font-weight: 700; background: #f2f4f7; border-top: 1px solid #c9cfdb; }
.dre-tabela tr.res td { font-weight: 700; font-size: 15px; color: #fff; background: #2b3445; padding: 10px; }
.dre-tabela tr.res.neg td { background: #c62d3a; }
.dre-tabela tr.res.pos td { background: #2e9e5b; }
.dre-tabela tr.vazio td { text-align: center; color: #8793a6; padding: 20px; }
.dre-tabela .pct { color: #6b7588; font-size: 12px; }
.dre-tabela tr.sec .pct, .dre-tabela tr.res .pct { color: #fff; opacity: .9; }
.dre-nota { font-size: 11px; color: #8793a6; margin: 12px 0 0; }

@media print {
    .no-print { display: none !important; }
    .dre-body { background: #fff; }
    .dre-page { box-shadow: none; margin: 0; max-width: none; padding: 0; }
    .dre-tabela th, .dre-tabela td, .dre-tabela tr { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    tr { page-break-inside: avoid; }
}
