/* RAWA 2.0 — leituras legiveis sem ampliar indiscriminadamente todas as fontes.
   Modulos: Financeiro, Relatorios, Auditoria, Historico Cliente, OS e upload. */
html[data-theme="light"] {
  --rawa-reading-main: #304057;
  --rawa-reading-muted: #52647b;
}
html[data-theme="dark"] {
  --rawa-reading-main: #e0eafb;
  --rawa-reading-muted: #b9cbe3;
}

/* FINANCEIRO: notas dos cards, datas, extrato e titulos de graficos. */
#app-view .rawa-finance-page .finance-kpi > span {
  color: var(--rawa-reading-muted) !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  letter-spacing: .015em !important;
}
#app-view .rawa-finance-page .finance-kpi > small,
#app-view .rawa-finance-page .finance-empty-mini,
#app-view .rawa-finance-page .finance-card-head .eyebrow,
#app-view .rawa-finance-page .finance-card-head > span {
  color: var(--rawa-reading-muted) !important;
  font-size: 12.5px !important;
  line-height: 1.55 !important;
}
#app-view .rawa-finance-page .finance-extrato-row,
#app-view .rawa-finance-page .finance-extrato-row span {
  font-size: 13px !important;
  line-height: 1.45 !important;
}
#app-view .rawa-finance-page .finance-extrato-row span {
  color: var(--rawa-reading-muted) !important;
}
#app-view .rawa-finance-page .finance-kpi strong,
#app-view .rawa-finance-page .finance-extrato-row strong {
  color: var(--rawa-reading-main) !important;
}
#app-view .rawa-finance-page .finance-tab,
#app-view .rawa-finance-page [data-finance-tab] {
  font-size: 13px !important;
  min-height: 36px;
}
#app-view .rawa-finance-page .finance-caixa-filter label,
#app-view .rawa-finance-page .finance-caixa-filter span {
  color: var(--rawa-reading-main) !important;
  font-size: 13px !important;
}

/* RELATORIOS: dados auxiliares e graficos abaixo de 12px estavam cansativos. */
#app-view .rawa-reports-page .report-tab,
#app-view .rawa-reports-page .reports-tab {
  font-size: 13px !important;
  font-weight: 650 !important;
  min-height: 38px;
}
#app-view .rawa-reports-page .report-note,
#app-view .rawa-reports-page .report-kpis article > span,
#app-view .rawa-reports-page .report-kpis article > small,
#app-view .rawa-reports-page .report-card-head span,
#app-view .rawa-reports-page .report-empty,
#app-view .rawa-reports-page .report-period-label {
  color: var(--rawa-reading-muted) !important;
  font-size: 12.5px !important;
  line-height: 1.5 !important;
}
#app-view .rawa-reports-page .report-kpis article > strong,
#app-view .rawa-reports-page .report-card-head h4 {
  color: var(--rawa-reading-main) !important;
}
#app-view .rawa-reports-page .report-bar-row,
#app-view .rawa-reports-page .report-bar-row > span,
#app-view .rawa-reports-page .report-bar-row > strong {
  font-size: 13px !important;
  color: var(--rawa-reading-main) !important;
}
#app-view .rawa-reports-page .reports-filter label,
#app-view .rawa-reports-page .reports-filter span {
  font-size: 12.5px !important;
}

/* AUDITORIA: data/hora, identificacao de usuario, descricao e filtros. */
#app-view .rawa-audit-page :is(.data-table,.audit-table) td {
  font-size: 13px !important;
  line-height: 1.5 !important;
}
#app-view .rawa-audit-page .audit-description,
#app-view .rawa-audit-page .table-sub,
#app-view .rawa-audit-page .audit-module {
  font-size: 12.5px !important;
  line-height: 1.5 !important;
}
#app-view .rawa-audit-page .audit-description,
#app-view .rawa-audit-page .table-sub {
  color: var(--rawa-reading-muted) !important;
}
#app-view .rawa-audit-page .data-table .table-main {
  font-size: 13px !important;
  font-weight: 650 !important;
  color: var(--rawa-reading-main) !important;
}

/* CLIENTES: negrito menos pesado; clique em linha; olho acessivel no historico. */
#app-view .rawa-clientes-page .rawa-client-row-open { cursor: pointer; }
#app-view .rawa-clientes-page .rawa-client-row-open:hover td,
#app-view .rawa-clientes-page .rawa-client-row-open:focus-within td {
  box-shadow: inset 0 0 0 9999px rgba(49,130,246,.035);
}
#app-view .rawa-clientes-page .rawa-client-row-open-cell:focus-visible {
  outline: 2px solid #3182f6;
  outline-offset: -2px;
}
.modal-backdrop .client-history-modal .table-main,
.modal-backdrop .client-history-modal .client-history-kpis strong,
.modal-backdrop .client-history-modal h3,
.modal-backdrop .client-history-modal h4 {
  font-weight: 650 !important;
  color: var(--rawa-reading-main) !important;
}
.modal-backdrop .client-history-modal .table-sub,
.modal-backdrop .client-history-modal .client-history-help,
.modal-backdrop .client-history-modal .client-history-kpis span {
  color: var(--rawa-reading-muted) !important;
}
.modal-backdrop .rawa-history-eye {
  min-width: 43px !important;
  min-height: 41px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 7px !important;
}
.modal-backdrop .rawa-history-eye svg { display: block; width: 20px; height: 20px; }
.modal-backdrop .rawa-client-history-export-row {
  display: flex;
  justify-content: flex-end;
  margin: 0 0 16px;
}

/* ORDEM DE SERVICO: historico de recebimentos e saldo devido. */
.modal-backdrop .os-detail-modal .os-payment-heading,
.modal-backdrop .os-detail-modal .os-section-header h4 {
  font-size: 15px !important;
  color: var(--rawa-reading-main) !important;
}
.modal-backdrop .os-detail-modal .os-summary-top span,
.modal-backdrop .os-detail-modal .os-total-card span,
.modal-backdrop .os-detail-modal .os-description > span {
  font-size: 12px !important;
  color: var(--rawa-reading-muted) !important;
}
.modal-backdrop .os-detail-modal .os-summary-top strong,
.modal-backdrop .os-detail-modal .os-total-card strong {
  font-size: 15px !important;
}
.modal-backdrop .os-detail-modal .rawa-os-payment-totals {
  display: grid !important;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
  border: 1px solid var(--v3-border, #d7e0ee);
  padding: 14px;
  border-radius: 12px;
}
.modal-backdrop .os-detail-modal .rawa-os-payment-totals > div { min-width: 0; }
.modal-backdrop .os-detail-modal .rawa-os-payment-totals span {
  display: block;
  color: var(--rawa-reading-muted) !important;
  font-size: 12.5px !important;
  line-height: 1.5;
}
.modal-backdrop .os-detail-modal .rawa-os-payment-totals strong {
  display: block;
  margin-top: 4px;
  font-size: 17px !important;
  color: var(--rawa-reading-main) !important;
  overflow-wrap: anywhere;
}
.modal-backdrop .os-detail-modal .rawa-os-payment-totals .rawa-amount-paid {
  color: #16825a !important;
}
.modal-backdrop .os-detail-modal .rawa-os-payment-totals .rawa-amount-due {
  color: #9b5b18 !important;
}
html[data-theme="dark"] .modal-backdrop .os-detail-modal .rawa-os-payment-totals .rawa-amount-paid {
  color: #84e7ba !important;
}
html[data-theme="dark"] .modal-backdrop .os-detail-modal .rawa-os-payment-totals .rawa-amount-due {
  color: #f4d08d !important;
}
.modal-backdrop .os-detail-modal .rawa-os-payment-list { margin-top: 16px; }
.modal-backdrop .os-detail-modal .rawa-os-payment-list h5 {
  font-size: 14px;
  margin: 0 0 10px;
  color: var(--rawa-reading-main);
}
.modal-backdrop .os-detail-modal .rawa-os-payment-list p {
  color: var(--rawa-reading-muted);
  font-size: 13px;
}
.modal-backdrop .os-detail-modal .rawa-os-payment-scroll { overflow-x: auto; max-width: 100%; }
.modal-backdrop .os-detail-modal .rawa-os-payment-scroll table { min-width: 580px; width: 100%; border-collapse: collapse; }
.modal-backdrop .os-detail-modal .rawa-os-payment-scroll th,
.modal-backdrop .os-detail-modal .rawa-os-payment-scroll td {
  border-bottom: 1px solid var(--v3-border, #d7e0ee);
  padding: 11px 8px;
  text-align: left;
  font-size: 13px;
  color: var(--rawa-reading-main);
}
.modal-backdrop .os-detail-modal .rawa-os-payment-scroll thead th {
  color: var(--rawa-reading-muted);
  font-weight: 650;
}
.modal-backdrop .os-detail-modal .rawa-os-payment-scroll tr:nth-child(even) { background: color-mix(in srgb, var(--v3-card-2, #eef3fa) 65%, transparent); }
.modal-backdrop .os-detail-modal .rawa-os-payment-value {
  font-weight: 700;
  white-space: nowrap;
}
.modal-backdrop .rawa-payment-state {
  display: inline-flex;
  color: var(--rawa-reading-muted);
  border: 1px solid var(--v3-border,#d7e0ee);
  border-radius: 999px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
html[data-theme="light"] .modal-backdrop .rawa-payment-success { color:#167a55 !important;background:#e5f7ef; }
html[data-theme="light"] .modal-backdrop .rawa-payment-warning { color:#865915 !important;background:#fff4df; }
html[data-theme="dark"] .modal-backdrop .rawa-payment-success { color:#9be6c2 !important;background:rgba(24,133,90,.2); }
html[data-theme="dark"] .modal-backdrop .rawa-payment-warning { color:#f2d39e !important;background:rgba(187,137,50,.17); }

/* ANEXOS: clipe sempre visivel, mantendo nativos de envio e validacao. */
#app-view .office-file-button,
.modal-backdrop .peca-gallery-upload {
  display: flex !important;
  gap: 7px;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  line-height: 1.45;
  font-size: 13px !important;
}
.rawa-upload-paperclip {
  width: 17px;
  height: 17px;
  display: inline-block;
  flex: 0 0 17px;
  vertical-align: middle;
  color: currentColor;
}
.modal-backdrop .peca-gallery-upload input[type="file"] {
  width: 100%;
  min-width: 0;
  font-size: 12px !important;
}
.modal-backdrop .peca-gallery-preview img[hidden] { display: none !important; }
.modal-backdrop .peca-gallery-preview img:not([hidden]) {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.modal-backdrop #peca-create-gallery {
  padding-top: 15px;
  margin-top: 14px;
  border-top: 1px solid var(--v3-border, #d7e0ee);
}
.modal-backdrop #peca-create-gallery h4 { font-size: 14px; margin: 0 0 6px; color: var(--rawa-reading-main); }
.modal-backdrop #peca-create-gallery p { font-size: 12.5px; line-height: 1.55; color: var(--rawa-reading-muted); margin: 0 0 12px; }
#app-view .peca-photo-thumb img:not([hidden]) { display: block !important; }

@media(max-width: 750px) {
  .modal-backdrop .os-detail-modal .rawa-os-payment-totals { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .modal-backdrop .client-history-modal .rawa-client-history-export-row { justify-content: stretch; }
  .modal-backdrop .client-history-modal .rawa-client-history-export-row button { width: 100%; }
}
@media(max-width: 460px) {
  .modal-backdrop .os-detail-modal .rawa-os-payment-totals { grid-template-columns: 1fr 1fr; }
  .modal-backdrop .os-detail-modal .rawa-os-payment-totals strong { font-size: 15px !important; }
  .modal-backdrop #peca-create-gallery .peca-gallery-grid { grid-template-columns: 1fr; }
}
