/* ==================================================== campaign cards
 *
 * The right-hand panel on the home page. A clipper reads these to decide what
 * to edit, so the per-view rate leads and the bar answers "is there budget
 * left" without making them do arithmetic.
 *
 * Loaded after app.css so these win over the earlier clipper-profile rules
 * that occupied this slot.
 */

.campaigns { display: grid; gap: 10px; }

.cmp {
  display: block;
  background: hsl(var(--card));
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius-2xl);
  padding: 13px 14px;
  text-decoration: none;
  color: inherit;
  transition: border-color 0.15s;
}

.cmp:hover { border-color: hsl(var(--palette-steel)); }

.cmp-head { display: flex; align-items: center; gap: 10px; }

.cmp-img {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  object-fit: cover;
  flex: none;
  background: hsl(var(--palette-codeblock));
}

.cmp-img-blank { display: block; }

.cmp-id { min-width: 0; flex: 1; }

.cmp-name {
  font-size: 13.5px;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cmp-ticker {
  font-size: 10.5px;
  color: var(--faint);
  font-weight: 600;
  text-transform: uppercase;
}

.cmp-rate { text-align: right; flex: none; }
.cmp-rate strong { display: block; font-size: 14px; font-variant-numeric: tabular-nums; }
.cmp-rate span { font-size: 9.5px; color: var(--faint); font-weight: 600; }

/* Spent against budget. Two numbers would not show "nearly gone" the way a
   bar does, and that is the thing worth knowing before editing. */
.cmp-bar {
  height: 4px;
  border-radius: 999px;
  background: hsl(var(--palette-umbra));
  overflow: hidden;
  margin: 11px 0 9px;
}

.cmp-bar span {
  display: block;
  height: 100%;
  background: hsl(var(--palette-dove));
  border-radius: 999px;
}

.cmp-stats {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  font-size: 11.5px;
  color: var(--faint);
}

.cmp-stats strong {
  color: var(--text);
  font-size: 13px;
  font-variant-numeric: tabular-nums;
}

.cmp-paid .sol { color: var(--faint); }
