.rb-rank .rb-rank__card {
  max-width: 38rem;
  margin: 0 auto;
  padding: 1.35rem 1.25rem;
  border-radius: 20px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--rb-accent) 10%, var(--rb-card)), var(--rb-card));
  border: 1px solid color-mix(in srgb, var(--rb-accent) 30%, rgba(255, 255, 255, 0.1));
  text-align: center;
}
.rb-rank .rb-rank__current {
  margin-bottom: 1.1rem;
}
.rb-rank .rb-rank__label {
  display: block;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--rb-muted);
  margin-bottom: 0.35rem;
}
.rb-rank .rb-rank__name {
  font-size: 1.5rem;
  font-weight: 900;
  color: var(--rb-text);
  text-shadow: 0 0 28px color-mix(in srgb, var(--rb-accent) 40%, transparent);
}
.rb-rank .rb-rank__meter {
  text-align: left;
  margin-bottom: 0.85rem;
}
.rb-rank .rb-rank__meter-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--rb-text);
  margin-bottom: 0.4rem;
}
.rb-rank .rb-rank__next-tag {
  font-size: 0.65rem;
  padding: 0.2rem 0.5rem;
  border-radius: 6px;
  background: color-mix(in srgb, var(--rb-accent) 22%, transparent);
  color: var(--rb-accent);
}
.rb-rank .rb-rank__track {
  height: 12px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.35);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.rb-rank .rb-rank__fill {
  height: 100%;
  max-width: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--rb-accent), #fde68a);
  box-shadow: 0 0 16px color-mix(in srgb, var(--rb-accent) 55%, transparent);
  transition: width 0.8s ease-out;
}
.rb-rank .rb-rank__perk {
  margin: 0 0 1rem;
  font-size: 0.8rem;
  line-height: 1.5;
  color: var(--rb-muted);
}
