/* Creator economy UI */
.creator-stats {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem;
  margin-bottom: 1.25rem;
}
.creator-stats .stat {
  padding: 1rem; border-radius: var(--radius); border: 1px solid var(--border);
  background: var(--bg-elevated); display: flex; flex-direction: column; gap: .2rem;
}
.creator-stats strong { font-size: 1.45rem; }
.creator-grid {
  display: grid; grid-template-columns: 1.2fr .9fr; gap: 1rem; margin-bottom: 1.5rem;
}
.creator-card {
  padding: 1.1rem 1.15rem; border-radius: var(--radius); border: 1px solid var(--border);
  background: var(--bg-elevated); display: flex; flex-direction: column; gap: .55rem;
}
.heatmap-board {
  display: flex; flex-wrap: wrap; gap: .45rem; min-height: 140px;
  padding: .85rem; border-radius: 14px;
  background:
    radial-gradient(ellipse at 20% 30%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 55%),
    radial-gradient(ellipse at 80% 70%, color-mix(in srgb, var(--secondary) 18%, transparent), transparent 50%),
    linear-gradient(160deg, var(--bg), var(--bg-elevated));
}
.heat-dot {
  border: 1px solid var(--border); border-radius: 999px; padding: .35rem .65rem;
  background: color-mix(in srgb, var(--accent) calc(var(--heat, 20) * 1%), var(--bg));
  font-size: .78rem; cursor: default;
}
.city-list, .supporter-list, .tip-list, .campaign-list {
  list-style: none; padding: 0; margin: .35rem 0 0; display: flex; flex-direction: column; gap: .35rem;
}
.campaign-item {
  padding: .65rem .7rem; border: 1px solid var(--border); border-radius: 12px;
}
.campaign-bar {
  height: 8px; border-radius: 999px; background: color-mix(in srgb, var(--border) 70%, transparent);
  overflow: hidden; margin: .4rem 0;
}
.campaign-bar > i {
  display: block; height: 100%; background: var(--accent); width: var(--p, 0%);
}
.artist-hero {
  display: grid; grid-template-columns: 1.2fr .85fr; gap: 1rem; margin-bottom: 1.25rem;
}
.tip-amounts { display: flex; flex-wrap: wrap; gap: .4rem; }
.badge-supporter, .badge-patron {
  display: inline-block; font-size: .72rem; font-weight: 700;
  padding: .15rem .45rem; border-radius: 999px; margin-left: .35rem;
  border: 1px solid var(--border);
}
.badge-supporter { background: color-mix(in srgb, var(--accent) 18%, transparent); }
.badge-patron { background: color-mix(in srgb, #d4a017 28%, transparent); }
.ex-lock { opacity: .75; font-size: .78rem; }
@media (max-width: 900px) {
  .creator-grid, .artist-hero, .creator-stats { grid-template-columns: 1fr; }
}

.pill-mm{display:inline-block;margin-left:.35rem;padding:.1rem .4rem;border-radius:999px;font-size:.68rem;letter-spacing:.04em;text-transform:uppercase;border:1px solid color-mix(in srgb, var(--accent) 55%, var(--border));color:var(--accent)}
