.operational-header, .operational-period, .operational-list-header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; }
.operational-header { margin-bottom: 16px; padding: 20px; background: var(--finance-surface); border: 1px solid var(--finance-border); border-radius: var(--finance-radius); }
.operational-header h1 { margin: 0 0 6px; color: var(--finance-text); font-size: clamp(1.5rem, 2vw, 2rem); }
.operational-header p, .operational-list-header p { margin: 0; color: var(--finance-muted); }
.operational-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.operational-period { padding: 16px 20px; margin-bottom: 20px; background: var(--finance-surface); border: 1px solid var(--finance-border); border-radius: var(--finance-radius); }
.operational-period h2 { margin: 0 0 4px; color: var(--finance-text); font-size: 1.125rem; }
.operational-period p { margin: 0; font-size: .875rem; color: var(--finance-muted); }
.operational-period-fields { display: flex; align-items: end; flex-wrap: wrap; gap: 12px; }
.operational-period-fields label, .operational-list-filters label { display: block; margin-bottom: 6px; font-size: .875rem; color: var(--finance-muted); }
.operational-period-fields select { min-width: 100px; }
.operational-summary-actions { display: flex; justify-content: flex-start; flex-wrap: wrap; gap: 10px; }
.operational-summary-actions .btn { font-size: .875rem; }
.operational-summary-actions [aria-pressed="true"] { border-color: #92b9ef; background: #273b54; }
.operational-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--finance-gap); }
.operational-explanation { display: none; min-height: 65px; margin: 20px 0 0; padding-top: 16px; border-top: 1px solid var(--finance-border); color: var(--finance-muted); font-size: 1rem; line-height: 1.5; }
.operational-grid .finance-card > .operational-explanation { margin-top: auto; }
.operational-grid .finance-card { padding: 18px; }
.operational-grid .finance-card-header { min-height: 60px; margin-bottom: 12px; }
.operational-grid .finance-card-title { min-height: 32px; }
.operational-metric { margin-bottom: 0; }
.operational-grid.financial-explanations-visible .operational-explanation { display: block; margin-top: 16px; }
.operational-grid .text-success { color: var(--finance-positive) !important; }
.operational-grid .text-warning { color: var(--finance-warning) !important; }
.operational-grid .text-danger { color: var(--finance-negative) !important; }
#ajusteComissaoMultas { display: none; margin: 12px 0 0; color: var(--finance-muted); font-size: .875rem; }
.operational-grid.financial-explanations-visible #ajusteComissaoMultas:not([hidden]) { display: block; }
#custosPendentesValor { color: var(--finance-warning); }
#badgeRecorrencias { padding: 0; background: transparent; color: inherit; font: inherit; }
.operational-pending { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px 20px; margin: 16px 0 24px; padding: 16px 20px; border: 1px solid var(--finance-border); border-radius: var(--finance-radius); background: var(--finance-surface); }
.operational-pending p { margin: 4px 0 0; color: var(--finance-muted); font-size: .875rem; }
.operational-pending strong { font-size: 1.125rem; }
.operational-list { padding: 20px; border: 1px solid var(--finance-border); border-radius: var(--finance-radius); background: var(--finance-surface); }
.operational-list h2 { color: var(--finance-text); font-size: 1.25rem; margin: 0 0 6px; }
.operational-list-filters { display: grid; grid-template-columns: minmax(140px, 1fr) minmax(140px, .7fr) minmax(200px, 1.5fr); gap: 16px; margin: 20px 0; }
.operational-list :is(.form-select, .form-control), .operational-period .form-select { color: var(--finance-text); background-color: var(--finance-surface); border-color: var(--finance-border); }
.operational-list .form-control::placeholder { color: var(--finance-muted); opacity: 1; }
.operational-table-scroll { overflow-x: auto; }
#tabelaDespesasOperacionais { width: 100% !important; min-width: 900px; color: var(--finance-text); font-size: 1rem; border-collapse: separate; border-spacing: 0; }
#tabelaDespesasOperacionais :is(th, td) { vertical-align: middle; padding: 12px 14px; }
#tabelaDespesasOperacionais thead th { padding-block: 12px; background: #242b37; color: var(--finance-text); font-size: .875rem; font-weight: 600; white-space: nowrap; border-bottom: 1px solid var(--finance-border); }
#tabelaDespesasOperacionais thead th:first-child { border-radius: 8px 0 0 8px; }
#tabelaDespesasOperacionais thead th:last-child { border-radius: 0 8px 8px 0; }
#tabelaDespesasOperacionais tbody tr { background: var(--finance-surface); }
#tabelaDespesasOperacionais tbody td { background: transparent; border-bottom: 1px solid #303744; box-shadow: none; }
#tabelaDespesasOperacionais tbody tr:hover td { background: #212734; }
#tabelaDespesasOperacionais .cost-date { width: 110px; white-space: nowrap; color: var(--finance-muted); }
#tabelaDespesasOperacionais .cost-description { min-width: 200px; }
#tabelaDespesasOperacionais .cost-description > strong { color: var(--finance-text); font-weight: 600; }
#tabelaDespesasOperacionais .cost-category { font-size: .875rem; color: var(--finance-muted); }
#tabelaDespesasOperacionais .cost-value { text-align: right; white-space: nowrap; }
#tabelaDespesasOperacionais thead .cost-value { padding-right: 24px; }
#tabelaDespesasOperacionais .cost-payment-cell { width: 175px; }
#tabelaDespesasOperacionais .cost-actions-cell { width: 86px; }
#tabelaDespesasOperacionais tfoot th { border-top: 1px solid var(--finance-border); padding-top: 16px; color: var(--finance-text); font-weight: 600; }
#tabelaDespesasOperacionais tfoot #totalValorDespesas { text-align: right; font-variant-numeric: tabular-nums; }
#tabelaDespesasOperacionais .cost-payment { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
#tabelaDespesasOperacionais .cost-status { display: inline-flex; align-items: center; padding: 4px 10px; border-radius: 6px; font-size: .875rem; font-weight: 600; white-space: nowrap; color: var(--finance-muted); background: #2a303b; }
#tabelaDespesasOperacionais .cost-status-pendente { color: var(--finance-warning); background: #3a3224; }
#tabelaDespesasOperacionais .cost-status-pago { color: var(--finance-positive); background: #24392f; }
#tabelaDespesasOperacionais .cost-status-agendado { color: #a7c9fa; background: #273447; }
#tabelaDespesasOperacionais small { font-size: .875rem; line-height: 1.5; }
#tabelaDespesasOperacionais .text-muted { color: var(--finance-muted) !important; }
#tabelaDespesasOperacionais :is(.valor-editavel, .cost-amount) { color: var(--finance-text); white-space: nowrap; font-variant-numeric: tabular-nums; }
#tabelaDespesasOperacionais .valor-editavel { cursor: text; border-bottom: 1px dashed var(--finance-muted); }
#tabelaDespesasOperacionais .btn { min-width: 32px; min-height: 32px; padding: 6px; font-size: .875rem; }
#tabelaDespesasOperacionais .cost-actions { display: flex; gap: 8px; }
#tabelaDespesasOperacionais .toggle-switch { flex: 0 0 38px; width: 38px; height: 32px; transform: none; }
#tabelaDespesasOperacionais .toggle-slider { top: 7px; bottom: 7px; }
#tabelaDespesasOperacionais .toggle-slider::before { width: 14px; height: 14px; left: 2px; bottom: 2px; }
#tabelaDespesasOperacionais .toggle-input:checked + .toggle-slider::before { transform: translateX(20px); }
#tabelaDespesasOperacionais .toggle-input { position: absolute; inset: 0; width: 38px; height: 32px; z-index: 2; margin: 0; cursor: pointer; }
#tabelaDespesasOperacionais .badge { font-size: .875rem; }
.operational-page .btn-outline-light { color: var(--finance-text); border-color: var(--finance-border); }
.operational-page .btn-outline-light:hover { color: var(--finance-text); background: #303c50; }
.operational-page .dataTables_wrapper .operational-table-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; padding-top: 16px; color: var(--finance-muted); font-size: .875rem; }
.operational-list-note { margin: 16px 0 0; font-size: .875rem; color: var(--finance-muted); }
@media (max-width: 1199px) { .operational-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) { .operational-list-filters { grid-template-columns: 1fr; } .operational-list { padding: 16px; } }
@media (max-width: 575px) {
  .operational-grid { grid-template-columns: minmax(0, 1fr); }
  .operational-period-fields { width: 100%; }
  .operational-period-fields > * { flex: 1 1 40%; }
  .operational-actions { width: 100%; }
  .operational-actions .btn { flex: 1 1 auto; }
  .operational-page .dataTables_wrapper .operational-table-footer { align-items: flex-start; flex-direction: column; }
}

.operational-scroll-hint { display: none; }
@media (max-width: 767px) { .operational-scroll-hint { display: block; color: var(--finance-muted); font-size: .875rem; margin: 0 0 12px; } }
@media (pointer: coarse) {
  #tabelaDespesasOperacionais .btn { min-width: 44px; min-height: 44px; }
  #tabelaDespesasOperacionais .toggle-switch, #tabelaDespesasOperacionais .toggle-input { height: 44px; }
  #tabelaDespesasOperacionais .toggle-slider { top: 13px; bottom: 13px; }
}
