.reports-toolbar{display:grid;grid-template-columns:minmax(280px,2fr) repeat(2,minmax(160px,1fr)) auto;gap:12px;align-items:end}.reports-toolbar .form-group{margin:0}.report-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:12px;margin:18px 0}.report-summary-card{border:1px solid var(--border-light);border-radius:10px;padding:13px 14px;background:#fff;min-height:76px;display:flex;flex-direction:column;justify-content:center}.report-summary-card small{display:block;color:var(--text-dark-muted);margin-bottom:6px;font-size:.76rem}.report-summary-card strong{font-size:1rem;color:var(--text-dark);line-height:1.25}.report-summary-card.primary{background:#eef6ff;border-color:#8ab9e8}.report-summary-card.primary strong{color:#164e86;font-size:1.12rem}.report-view-tabs{display:flex;gap:8px;margin:12px 0}.report-view-tabs .active{background:var(--primary);color:#fff}.report-table-wrap{border:1px solid var(--border-light);border-radius:9px;overflow:auto;max-width:100%}.report-table-wrap .data-table{margin:0}.report-table-wrap th{white-space:normal;line-height:1.15;font-size:.72rem;padding:8px 7px;vertical-align:middle}.report-table-wrap td{font-size:.72rem;padding:7px;line-height:1.2;vertical-align:top}.report-table-wrap .num{text-align:right;white-space:nowrap}.report-competence-table{min-width:1180px}.report-analytic-wrap{max-height:610px}.report-analytic-table{width:100%;min-width:1120px;table-layout:fixed}.report-analytic-table thead th{position:sticky;top:0;z-index:2}.report-analytic-table th:nth-child(1){width:80px}.report-analytic-table th:nth-child(2),.report-analytic-table th:nth-child(3){width:58px}.report-analytic-table th:nth-child(4){width:100px}.report-analytic-table th:nth-child(5){width:55px}.report-analytic-table th:nth-child(6){width:88px}.report-analytic-table th:nth-child(7){width:58px}.report-analytic-table th:nth-child(8),.report-analytic-table th:nth-child(9){width:82px}.report-analytic-table th:nth-child(10),.report-analytic-table th:nth-child(11){width:82px}.report-analytic-table th:nth-child(12){width:auto}.report-analytic-table td.activity{white-space:normal;word-break:break-word}.report-status{display:inline-flex;align-items:center;justify-content:center;min-width:62px;padding:3px 7px;border-radius:999px;font-size:.66rem;font-weight:700}.report-status-open{background:#fff5cc;color:#765b00}.report-status-closed{background:#dcfce7;color:#166534}@media(max-width:1100px){.report-summary-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.reports-toolbar{grid-template-columns:1fr}.report-summary-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.report-summary-grid{grid-template-columns:1fr}}

/* Extrato do Contrato: cabeçalho fixo totalmente opaco durante a rolagem. */
.report-analytic-table thead,
.report-analytic-table thead tr,
.report-analytic-table thead th{
    background:#fff;
}
.report-analytic-table thead th{
    z-index:5;
    box-shadow:0 2px 0 var(--border-light);
}
.report-analytic-wrap{
    position:relative;
    isolation:isolate;
    background:#fff;
}
.report-balance-event-row td{background:#f5f7fa;font-weight:600;border-top:2px solid #94a3b8}.report-balance-event-row td.activity{font-style:italic}

/* Relatórios Gerenciais: navegação interna e Validação de Transferência Contratual. */
.report-module-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.report-module-tabs .active{background:var(--primary);color:#fff;border-color:var(--primary)}.contract-transfer-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 36px minmax(260px,1fr) auto;gap:12px;align-items:end}.contract-transfer-toolbar .form-group{margin:0}.contract-transfer-direction{height:38px;display:flex;align-items:center;justify-content:center;color:var(--text-dark-muted)}.contract-transfer-help{margin:12px 0 0;color:var(--text-dark-muted);font-size:.8rem;display:flex;align-items:center;gap:7px}.contract-transfer-header{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:10px;align-items:stretch}.contract-transfer-header>div:not(.contract-transfer-overall-status){border:1px solid var(--border-light);border-radius:9px;padding:11px 12px;background:#fff}.contract-transfer-header small{display:block;color:var(--text-dark-muted);font-size:.72rem;margin-bottom:5px}.contract-transfer-header strong{display:block;color:var(--text-dark);font-size:.9rem;line-height:1.3}.contract-transfer-overall-status{grid-column:1/-1;border-radius:9px;padding:11px 14px;font-weight:800;text-align:center;letter-spacing:.03em}.contract-transfer-overall-status.ready{background:#dcfce7;color:#166534;border:1px solid #86efac}.contract-transfer-overall-status.blocked{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.contract-transfer-overall-status.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.contract-transfer-section-title{font-size:1rem;margin:20px 0 9px;color:var(--text-dark)}.contract-transfer-summary-table{min-width:620px}.contract-transfer-summary-table th small{font-size:.68rem;font-weight:500}.contract-transfer-check-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:10px}.contract-transfer-check{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;border:1px solid var(--border-light);border-radius:9px;padding:11px 12px;background:#fff}.contract-transfer-check i{font-size:1rem}.contract-transfer-check span{font-size:.78rem;line-height:1.25}.contract-transfer-check strong{font-size:.95rem}.contract-transfer-check.ok{border-color:#86efac;background:#f0fdf4;color:#166534}.contract-transfer-check.warning{border-color:#fcd34d;background:#fffbeb;color:#92400e}.contract-transfer-check.error{border-color:#fca5a5;background:#fef2f2;color:#991b1b}.contract-transfer-ticket-wrap{max-height:520px}.contract-transfer-ticket-table{min-width:1320px}.contract-transfer-ticket-table thead th{position:sticky;top:0;z-index:3;background:#fff;box-shadow:0 2px 0 var(--border-light)}.contract-transfer-ticket-status{display:inline-block;max-width:260px;padding:4px 7px;border-radius:7px;font-size:.68rem;font-weight:700;line-height:1.25}.contract-transfer-ticket-status.ok{background:#dcfce7;color:#166534}.contract-transfer-ticket-status.error{background:#fee2e2;color:#991b1b}.contract-transfer-competence-table{min-width:1000px}.report-loading-state,.report-error-state{text-align:center;padding:35px;color:var(--text-dark-muted)}.report-loading-state i,.report-error-state i{margin-right:7px}.report-error-state{color:#991b1b;background:#fef2f2;border:1px solid #fca5a5;border-radius:9px}@media(max-width:1100px){.contract-transfer-header{grid-template-columns:repeat(2,minmax(160px,1fr))}.contract-transfer-check-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media(max-width:900px){.contract-transfer-toolbar{grid-template-columns:1fr}.contract-transfer-direction{height:auto;transform:rotate(90deg)}.contract-transfer-check-grid{grid-template-columns:1fr}}@media(max-width:560px){.contract-transfer-header{grid-template-columns:1fr}.report-module-tabs{flex-direction:column}.report-module-tabs .btn{width:100%}}

/* Validação de transferência parcial por seleção de Tickets. */
.contract-transfer-scope-grid{display:grid;grid-template-columns:repeat(3,minmax(170px,1fr));gap:10px}.contract-transfer-scope-card{border:1px solid var(--border-light);border-radius:9px;padding:12px;background:#fff}.contract-transfer-scope-card small{display:block;color:var(--text-dark-muted);font-size:.72rem;margin-bottom:5px}.contract-transfer-scope-card strong{font-size:1rem;color:var(--text-dark)}.contract-transfer-empty-selection{border:1px dashed #94a3b8;border-radius:9px;padding:18px;text-align:center;color:var(--text-dark-muted);background:#f8fafc}.contract-transfer-selection-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:9px}.contract-transfer-selection-actions{display:flex;gap:7px;flex-wrap:wrap}.contract-transfer-select-cell{width:34px;text-align:center}.contract-transfer-ticket-checkbox{width:16px;height:16px;cursor:pointer}.contract-transfer-position{display:inline-flex;padding:3px 7px;border-radius:999px;font-size:.67rem;font-weight:700}.contract-transfer-position.origem{background:#fef3c7;color:#92400e}.contract-transfer-position.destino{background:#dcfce7;color:#166534}.contract-transfer-position.fora-do-escopo{background:#fee2e2;color:#991b1b}.contract-transfer-context-details{margin-top:20px;border:1px solid var(--border-light);border-radius:9px;background:#fff}.contract-transfer-context-details summary{cursor:pointer;padding:12px 14px;font-weight:700;color:var(--text-dark)}.contract-transfer-context-content{padding:0 12px 12px}@media(max-width:900px){.contract-transfer-scope-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.contract-transfer-scope-grid{grid-template-columns:1fr}.contract-transfer-selection-actions .btn{width:100%}}
