/* Card compacto (origem dos dados) */
.bi-compact-card .card-body{
  padding: 12px 16px !important;
}
.bi-compact-card .form-label{
  margin-bottom: 6px;
}

/* KPI card */
.bi-kpi-card{
  border-radius: 16px;
  overflow:hidden;
}
.bi-kpi-top{
  padding: 8px 12px;
  background: rgba(0,0,0,.04);
}
[data-theme-version="dark"] .bi-kpi-top{
  background: rgba(255,255,255,.06);
}
.bi-kpi-title{
  font-weight:700;
  font-size:.95rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  margin:0;
  line-height: 1.1;
}
.bi-kpi-body{
  padding: 14px 16px !important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height: 110px;
}
.bi-kpi-value-wrap{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
}
.bi-kpi-value{
  font-size: 2.2rem;
  font-weight: 800;
  line-height: 1;
  text-align:center;
}
.bi-kpi-icon{
  font-size: 2rem;
  line-height:1;
}
.bi-kpi-bottom{
  padding: 8px 12px;
}

/* Estado vazio */
.bi-empty-state{
  min-height: 45vh;
  display:flex;
  align-items:center;
  justify-content:center;
}
.bi-empty-box{
  text-align:center;
  max-width: 520px;
  padding: 18px;
}
.bi-empty-img{
  max-width: 220px;
  width: 60%;
  opacity:.9;
}

/* CSS do principal.php Novo */
/* ===== ModernoBI Dashboard Style ===== */
.mbi-card {
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 14px;            /* menos arredondado que Dompet */
  box-shadow: 0 8px 24px rgba(0,0,0,.06);
  background: #fff;
  overflow: hidden;
}

.mbi-card .mbi-card-body { padding: 16px; }

.mbi-kpi-top {
  display:flex; align-items:center; justify-content:space-between;
  font-size: 13px; font-weight: 600; color: rgba(0,0,0,.65);
  margin-bottom: 10px;
}

.mbi-kpi-main {
  display:flex; align-items:center; justify-content:space-between;
  gap: 10px;
}

.mbi-kpi-value {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.05;
  color: rgba(0,0,0,.85);
}

.mbi-kpi-icon {
  width: 42px; height: 42px;
  border-radius: 12px;
  display:flex; align-items:center; justify-content:center;
  background: rgba(99,102,241,.10);   /* cor suave */
}

.mbi-kpi-icon i { font-size: 18px; color: rgba(99,102,241,1); }

.mbi-kpi-bottom {
  margin-top: 10px;
  font-size: 12px;
  color: rgba(0,0,0,.55);
  display:flex; gap: 8px; align-items:center;
}

.mbi-kpi-badge {
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(16,185,129,.12);
  color: rgba(16,185,129,1);
}

.mbi-chart-title {
  font-size: 14px;
  font-weight: 700;
  color: rgba(0,0,0,.75);
  margin-bottom: 8px;
}

.mbi-chart-wrap { width: 100%; }

/* Darkmode - ModernoBI cards */
[data-theme-version="dark"] .mbi-card{
  background: #1f2430 !important;
  border-color: rgba(255,255,255,.06) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.35) !important;
}

[data-theme-version="dark"] .mbi-card .mbi-card-body{
  color: rgba(255,255,255,.82);
}

[data-theme-version="dark"] .mbi-kpi-top,
[data-theme-version="dark"] .mbi-chart-title{
  color: rgba(255,255,255,.70) !important;
}

[data-theme-version="dark"] .mbi-kpi-value{
  color: rgba(255,255,255,.92) !important;
}

[data-theme-version="dark"] .card{
  background: #1f2430;
  border-color: rgba(255,255,255,.06);
}

/* Reduz arredondado Dompet */
.card {
  border-radius: 14px !important;
}
.card-header {
  border-top-left-radius: 14px !important;
  border-top-right-radius: 14px !important;
}
.card-footer {
  border-bottom-left-radius: 14px !important;
  border-bottom-right-radius: 14px !important;
}

/* opcional: botões também */
.btn {
  border-radius: 12px !important;
}

/* Texto dentro dos cards no dark */
[data-theme-version="dark"] .mbi-card .mbi-text,
[data-theme-version="dark"] .mbi-card .mbi-text * {
  color: rgba(255,255,255,.78) !important;
}

.mbi-cf-item{
  padding: 10px 0;
  border-bottom: 1px solid rgba(0,0,0,.08);
}
.mbi-cf-pos{
  width: 34px;
  font-weight: 700;
  opacity: .8;
}
.mbi-cf-accent{
  width: 6px;
  height: 38px;
  border-radius: 999px;
}
.mbi-cf-main{
  font-weight: 700;
  font-size: .95rem;
}
.mbi-cf-sub{
  font-size: .82rem;
  opacity: .7;
  margin-top: 2px;
}

/* Lista com espaçamento “card a card” */
.mbi-cf-list{
  display: flex;
  flex-direction: column;
  gap: 10px; /* separação bonita entre minicards */
}

/* Minicard */
.mbi-cf-item{
  position: relative;
  padding: 12px 14px 12px 16px;
  border-radius: 12px;
  background: rgba(0,0,0,.02);
  border: 1px solid rgba(0,0,0,.06);
}


/* Posição (1º,2º,3º) */
.mbi-cf-pos{
  width: 34px;
  font-weight: 800;
  opacity: .85;
}

/* Texto */
.mbi-cf-main{
  font-weight: 800;
  font-size: .95rem;
  line-height: 1.1;
}
.mbi-cf-sub{
  font-size: .82rem;
  opacity: .70;
  margin-top: 3px;
}

/* Badge direito mais “pill” */
.mbi-cf-badge{
  border-radius: 999px;
  padding: .45rem .7rem;
  font-weight: 800;
}

/* garante que o card do topo não estique */
.bi-compact-card{
  height: auto !important;
  min-height: unset !important;
  align-self: flex-start;
}

/* se algum container estiver forçando 100% */
.bi-admin-toolbar{
  height: auto !important;
  min-height: unset !important;
}


