#panel-5 .custo-table-card {
  background: #fff;
  border: 0.5px solid #e2e8f0;
  border-radius: 16px;
  overflow: hidden;
}

#panel-5 .custo-table-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 22px 16px;
  border-bottom: 0.5px solid #eef2f7;
  background: #fff;
}

#panel-5 .tbl-title {
  font-size: 15px;
  font-weight: 600;
  color: #0f1c2e;
  letter-spacing: -0.2px;
  margin: 0;
}

#panel-5 .tbl-subtitle {
  font-size: 11.5px;
  color: #8a97a8;
  margin-top: 3px;
}

#panel-5 .tbl-right {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* ── Search ─────────────────────────────────── */
#panel-5 .tbl-search.custo-search {
  height: 34px;
  min-width: 240px;
  padding: 0 12px 0 30px;
  border: 0.5px solid #dde3ec;
  border-radius: 10px;
  background: #f9fafc;
  color: #1a2332;
  font-size: 12.5px;
  outline: none;
  transition: .15s;
}

#panel-5 .tbl-search.custo-search:focus {
  border-color: #7aa2ff;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(46, 107, 230, .09);
}

/* ── Count badge ─────────────────────────────── */
#panel-5 .tbl-count {
  display: inline-flex;
  align-items: center;
  height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: #f1f4f9;
  color: #5a6a7a;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}

/* ── Scroll area ─────────────────────────────── */
#panel-5 .tbl-scroll-custos {
  max-height: 420px;
  overflow: auto;
}

#panel-5 .tbl-scroll-custos::-webkit-scrollbar { width: 5px; height: 5px; }
#panel-5 .tbl-scroll-custos::-webkit-scrollbar-track { background: transparent; }
#panel-5 .tbl-scroll-custos::-webkit-scrollbar-thumb { background: #d0d8e4; border-radius: 99px; }

/* ── Table ───────────────────────────────────── */
#panel-5 .dt-custos-premium {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

#panel-5 .dt-custos-premium thead th {
  position: sticky;
  top: 0;
  z-index: 3;
  background: #f7f9fc;
  color: #7b8899;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  padding: 10px 14px;
  border-bottom: 0.5px solid #e8edf4;
  text-align: left;
  white-space: nowrap;
}

#panel-5 .dt-custos-premium thead th:first-child { padding-left: 20px; }
#panel-5 .dt-custos-premium thead th:last-child  { padding-right: 20px; text-align: center; }

#panel-5 .dt-custos-premium tbody td {
  padding: 13px 14px;
  font-size: 12.5px;
  color: #2c3a4a;
  border-bottom: 0.5px solid #f1f4f8;
  vertical-align: middle;
  transition: background .1s;
}

#panel-5 .dt-custos-premium tbody td:first-child {
  padding-left: 20px;
  font-weight: 600;
  color: #0f1c2e;
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#panel-5 .dt-custos-premium tbody td:last-child {
  padding-right: 20px;
  text-align: center;
}

#panel-5 .dt-custos-premium tbody tr:last-child td { border-bottom: none; }
#panel-5 .dt-custos-premium tbody tr:hover td { background: #f5f8ff; }

/* ── Colunas numéricas ───────────────────────── */
#panel-5 .dt-custos-premium tbody td:nth-child(5),
#panel-5 .dt-custos-premium tbody td:nth-child(6),
#panel-5 .dt-custos-premium tbody td:nth-child(7) {
  text-align: right;
  font-variant-numeric: tabular-nums;
  font-size: 12px;
}

/* ── Classes de cor ──────────────────────────── */
#panel-5 .dt-custos-premium .c-or  { color: #c2410c; font-weight: 700; }
#panel-5 .dt-custos-premium .c-dim { color: #7a8899; font-size: 11.5px; font-family: monospace; }
#panel-5 .dt-custos-premium .c-rd  { color: #c62828; font-weight: 600; }
#panel-5 .dt-custos-premium .c-gr  { color: #15803d; font-weight: 600; }

/* ── Chip do fornecedor ──────────────────────── */
#panel-5 .dt-custos-premium .fornecedor-chip {
  display: inline-flex;
  align-items: center;
  height: 20px;
  padding: 0 8px;
  border-radius: 6px;
  background: #f1f5fb;
  color: #445566;
  font-size: 11px;
  font-weight: 500;
  font-family: monospace;
}

/* ── Badges de status ────────────────────────── */
#panel-5 .dt-custos-premium .bdg {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  height: 22px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  border: none;
}

#panel-5 .dt-custos-premium .bdg::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  flex-shrink: 0;
}

#panel-5 .dt-custos-premium .bdg-g {
  background: #e8f7ef;
  color: #166534;
}
#panel-5 .dt-custos-premium .bdg-g::before { background: #22c55e; }

#panel-5 .dt-custos-premium .bdg-r {
  background: #fef2f2;
  color: #b91c1c;
}
#panel-5 .dt-custos-premium .bdg-r::before { background: #dc2626; }

/* ── Footer ──────────────────────────────────── */
#panel-5 .tbl-footer {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  border-top: 0.5px solid #eef2f7;
  font-size: 11px;
  color: #94a3b8;
}

#panel-5 .tbl-footer code {
  background: #f1f4f9;
  padding: 1px 6px;
  border-radius: 4px;
  font-size: 10.5px;
  color: #5a6a7a;
}

#panel-5 .tbl-footer-dot {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #c8d0da;
  display: inline-block;
}#chart-5-comparativo {
  width: 100%;
  height: 340px;
  min-height: 340px;
}

#panel-5 .chart-card {
  border-radius: 18px;
  box-shadow: 0 6px 24px rgba(15, 23, 42, 0.05);
}

#panel-5 .cc-head { align-items: center; margin-bottom: 8px; }
#panel-5 .cc-title { font-size: 18px; font-weight: 700; color: #0f172a; }
#panel-5 .cc-sub { font-size: 12px; color: #94a3b8; margin-top: 2px; }

/* ── Tabela de Custos ── */
#panel-5 .custo-table-card { background:#fff; border:0.5px solid #e2e8f0; border-radius:16px; overflow:hidden; }

#panel-5 .custo-table-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 22px 16px; border-bottom:0.5px solid #eef2f7; background:#fff; }

#panel-5 .tbl-title { font-size:15px; font-weight:600; color:#0f1c2e; letter-spacing:-0.2px; margin:0; }
#panel-5 .tbl-subtitle { font-size:11.5px; color:#8a97a8; margin-top:3px; }
#panel-5 .tbl-right { display:flex; align-items:center; gap:10px; }

#panel-5 .tbl-search.custo-search { height:34px; min-width:220px; padding:0 12px; border:0.5px solid #dde3ec; border-radius:10px; background:#f9fafc; color:#1a2332; font-size:12.5px; outline:none; transition:.15s; }
#panel-5 .tbl-search.custo-search:focus { border-color:#7aa2ff; background:#fff; box-shadow:0 0 0 3px rgba(46,107,230,.09); }

#panel-5 .tbl-count { display:inline-flex; align-items:center; height:28px; padding:0 10px; border-radius:999px; background:#f1f4f9; color:#5a6a7a; font-size:11px; font-weight:600; white-space:nowrap; }

#panel-5 .tbl-scroll-custos { max-height:420px; overflow:auto; }
#panel-5 .tbl-scroll-custos::-webkit-scrollbar { width:5px; height:5px; }
#panel-5 .tbl-scroll-custos::-webkit-scrollbar-thumb { background:#d0d8e4; border-radius:99px; }

#panel-5 .dt-custos-premium { width:100%; border-collapse:separate; border-spacing:0; }

#panel-5 .dt-custos-premium thead th { position:sticky; top:0; z-index:3; background:#f7f9fc; color:#7b8899; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; padding:10px 14px; border-bottom:0.5px solid #e8edf4; text-align:left; white-space:nowrap; }
#panel-5 .dt-custos-premium thead th:first-child { padding-left:20px; }
#panel-5 .dt-custos-premium thead th:last-child { padding-right:20px; text-align:center; }

#panel-5 .dt-custos-premium tbody td { padding:13px 14px; font-size:12.5px; color:#2c3a4a; border-bottom:0.5px solid #f1f4f8; vertical-align:middle; transition:background .1s; }
#panel-5 .dt-custos-premium tbody td:first-child { padding-left:20px; font-weight:600; color:#0f1c2e; max-width:200px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#panel-5 .dt-custos-premium tbody td:last-child { padding-right:20px; text-align:center; }
#panel-5 .dt-custos-premium tbody tr:last-child td { border-bottom:none; }
#panel-5 .dt-custos-premium tbody tr:hover td { background:#f5f8ff; }

#panel-5 .dt-custos-premium tbody td:nth-child(5),
#panel-5 .dt-custos-premium tbody td:nth-child(6),
#panel-5 .dt-custos-premium tbody td:nth-child(7) { text-align:right; font-variant-numeric:tabular-nums; font-size:12px; }

#panel-5 .dt-custos-premium .c-or  { color:#c2410c; font-weight:700; }
#panel-5 .dt-custos-premium .c-dim { color:#7a8899; font-size:11.5px; font-family:monospace; }
#panel-5 .dt-custos-premium .c-rd  { color:#c62828; font-weight:600; }
#panel-5 .dt-custos-premium .c-gr  { color:#15803d; font-weight:600; }

#panel-5 .dt-custos-premium .fornecedor-chip { display:inline-flex; align-items:center; height:20px; padding:0 8px; border-radius:6px; background:#f1f5fb; color:#445566; font-size:11px; font-weight:500; font-family:monospace; }

#panel-5 .dt-custos-premium .bdg { display:inline-flex; align-items:center; gap:5px; height:22px; padding:0 10px; border-radius:999px; font-size:11px; font-weight:600; border:none; }
#panel-5 .dt-custos-premium .bdg::before { content:''; width:5px; height:5px; border-radius:50%; flex-shrink:0; }
#panel-5 .dt-custos-premium .bdg-g { background:#e8f7ef; color:#166534; }
#panel-5 .dt-custos-premium .bdg-g::before { background:#22c55e; }
#panel-5 .dt-custos-premium .bdg-r { background:#fef2f2; color:#b91c1c; }
#panel-5 .dt-custos-premium .bdg-r::before { background:#dc2626; }

#panel-5 .tbl-footer { display:flex; align-items:center; gap:8px; padding:10px 20px; border-top:0.5px solid #eef2f7; font-size:11px; color:#94a3b8; }
#panel-5 .tbl-footer code { background:#f1f4f9; padding:1px 6px; border-radius:4px; font-size:10.5px; color:#5a6a7a; }
#panel-5 .tbl-footer-dot { width:3px; height:3px; border-radius:50%; background:#c8d0da; display:inline-block; }