.info-card-grid {
  display: grid;
  grid-template-columns: repeat(var(--info-card-grid-columns, 3), minmax(0, 1fr));
  gap: 10px;
}

.info-card,
.dash-kpi,
.finance-summary-card {
  border: 1px solid var(--admin-border);
  border-radius: var(--r);
  background: #fff;
  padding: 10px;
  min-width: 0;
}

.info-card-label,
.dash-kpi-k,
.finance-summary-k {
  font-size: var(--admin-fs-sm);
  color: var(--admin-muted);
  font-weight: var(--admin-fw-medium);
  line-height: var(--admin-lh-normal);
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.info-card-value,
.dash-kpi-v,
.finance-summary-v {
  margin-top: 6px;
  font-size: var(--admin-fs-xl);
  font-weight: var(--admin-fw-bold);
  line-height: var(--admin-lh-tight);
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.info-card-value-secondary,
.dash-kpi-v-secondary,
.finance-summary-v-secondary {
  font-size: 0.78em;
  font-weight: var(--admin-fw-medium);
  color: rgba(55, 53, 47, 0.54);
}

.info-card-sub,
.dash-kpi-sub {
  margin-top: 4px;
  font-size: var(--admin-fs-sm);
  color: var(--admin-muted);
  font-weight: var(--admin-fw-medium);
  line-height: var(--admin-lh-normal);
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.info-card-value.is-pos,
.dash-kpi-v.is-pos {
  color: #14a76c;
}

.info-card-value.is-neg,
.dash-kpi-v.is-neg {
  color: #d12b2b;
}

.info-card-gauge-card,
.dash-margin-card {
  position: relative;
  padding-right: 58px;
}

.info-card-gauge-copy,
.dash-margin-copy {
  display: block;
  min-width: 0;
}

.info-card-gauge,
.dash-margin-gauge {
  width: 38px;
  height: 38px;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
}

.info-card-gauge-svg,
.dash-margin-svg {
  width: 38px;
  height: 38px;
  display: block;
}

.info-card-gauge-track,
.info-card-gauge-progress,
.dash-margin-track,
.dash-margin-progress {
  fill: none;
  stroke-width: 6;
}

.info-card-gauge-track,
.dash-margin-track {
  stroke: rgba(20, 167, 108, 0.14);
}

.info-card-gauge-progress,
.dash-margin-progress {
  stroke: #14a76c;
  stroke-linecap: round;
  transform: rotate(-90deg);
  transform-origin: 22px 22px;
}

.info-card-gauge-card.is-neg .info-card-gauge-track,
.dash-margin-card.is-neg .dash-margin-track {
  stroke: rgba(209, 43, 43, 0.14);
}

.info-card-gauge-card.is-neg .info-card-gauge-progress,
.dash-margin-card.is-neg .dash-margin-progress {
  stroke: #d12b2b;
}

@media (max-width: 980px) {
  .info-card-grid {
    grid-template-columns: repeat(var(--info-card-grid-columns-tablet, 2), minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .info-card-grid {
    grid-template-columns: 1fr;
  }
}
