.d35-card-review {
  display: grid;
  gap: 1rem;
  align-content: start;
  padding: 1.25rem;
  border-radius: var(--d35-radius);
  background: var(--d35-color-text);
  color: var(--d35-color-surface);
}

.d35-card-review__body {
  color: rgba(248, 250, 252, 0.92);
  font-size: 1rem;
  line-height: 1.7;
}

.d35-card-review__body > :first-child {
  margin-top: 0;
}

.d35-card-review__body > :last-child {
  margin-bottom: 0;
}

.d35-card-review__rating {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  color: color-mix(in srgb, var(--d35-color-primary) 70%, #fbbf24);
}

.d35-card-review__star {
  display: inline-flex;
}

.d35-card-review__star-icon {
  width: 1.35rem;
  height: 1.35rem;
}

.d35-card-review__author {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  margin-top: auto;
}

.d35-card-review__avatar {
  flex: 0 0 auto;
  width: 5rem;
  height: 5rem;
  border-radius: var(--d35-radius-button);
  overflow: hidden;
  background: rgba(255, 255, 255, 0.08);
}

.d35-card-review__avatar-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.d35-card-review__author-meta {
  display: grid;
  gap: 0.25rem;
}

.d35-card-review__author-name {
  color: var(--d35-color-surface);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
}

.d35-card-review__author-role {
  color: rgba(248, 250, 252, 0.62);
  font-size: 0.88rem;
  line-height: 1.4;
}

@media (max-width: 640px) {
  .d35-card-review {
    padding: 1rem;
  }

  .d35-card-review__avatar {
    width: 4rem;
    height: 4rem;
  }
}
