/* Estilos da aba "Custo de Atendimento". Uso variáveis de tema com fallback p/ herdar a SPA. */
.calc-wrap { display: flex; flex-direction: column; gap: 16px; }
.calc-hide { display: none; }
.calc-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.calc-row { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin-top: 14px; }

.calc-wrap label { font-size: 12px; opacity: .7; display: block; margin: 10px 0 4px; }
.calc-wrap select, .calc-wrap input {
  width: 100%; padding: 8px; font-size: 13px; border-radius: 6px;
  border: 1px solid var(--border, #2a3344); background: var(--surface, #141a26); color: var(--fg, #e6edf3);
}

.calc-drop {
  border: 2px dashed var(--border, #2a3344); border-radius: 8px; padding: 18px; text-align: center;
  cursor: pointer; background: var(--surface-2, rgba(255,255,255,.03)); color: inherit;
}
.calc-drop.has { border-color: var(--ok, #3fb950); }
.calc-drop small { display: block; margin-top: 4px; opacity: .6; }

.calc-sec { background: var(--surface, #141a26) !important; color: var(--accent, #2f6feb) !important; border: 1px solid var(--accent, #2f6feb) !important; }
.calc-muted { opacity: .7; font-size: 12px; }
.calc-warn { color: var(--warn, #d29922); font-size: 12px; }

.calc-bar { height: 10px; background: var(--surface-2, rgba(255,255,255,.06)); border-radius: 6px; overflow: hidden; }
.calc-bar > i { display: block; height: 100%; width: 0; background: var(--accent, #2f6feb); transition: width .3s; }

.calc-tbl { width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 8px; }
.calc-tbl th, .calc-tbl td { padding: 9px 12px; text-align: left; border-bottom: 1px solid var(--border, #2a3344); }
.calc-tbl th.r, .calc-tbl td.r { text-align: right; }
.calc-tbl .neg { color: var(--alert, #d00); }
.calc-reg { cursor: pointer; }
.calc-reg:hover { background: var(--surface-2, rgba(255,255,255,.03)); }
.calc-tot th, .calc-tot td { font-weight: 700; }

.calc-drill td { background: var(--surface-2, rgba(255,255,255,.03)); padding: 8px 12px; }
.calc-sub { width: 100%; border-collapse: collapse; font-size: 12px; }
.calc-sub th, .calc-sub td { padding: 6px 10px; border-bottom: 1px solid var(--border, #222b3a); text-align: left; }
.calc-sub th.r, .calc-sub td.r { text-align: right; }
