.jbss-reviews { margin: 2rem 0; }
.jbss-reviews h2 { margin-bottom: .5rem; }
.jbss-summary { margin: 0 0 1rem; }
.jbss-filters { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1rem; }
.jbss-filters a { padding: .3rem .8rem; border: 1px solid #ddd; border-radius: 999px; text-decoration: none; font-size: .875rem; color: inherit; }
.jbss-filters a.on { background: #111; color: #fff; border-color: #111; }
.jbss-review { padding: 1rem 0; border-top: 1px solid #eee; }
.jbss-head { display: flex; justify-content: space-between; align-items: center; font-size: .875rem; }
.jbss-stars { color: #f5a623; letter-spacing: 1px; }
.jbss-head time { color: #888; }
.jbss-body { margin: .5rem 0; line-height: 1.6; }
.jbss-media { display: flex; flex-wrap: wrap; gap: .5rem; margin: .5rem 0; }
.jbss-media img { width: 80px; height: 80px; object-fit: cover; border-radius: 8px; }
.jbss-reply { margin: .5rem 0; padding: .5rem .75rem; background: #f7f7f7; border-radius: 8px; font-size: .875rem; }
.jbss-review footer { font-size: .75rem; color: #777; }
.jbss-badge { margin-left: .5rem; padding: .1rem .5rem; border-radius: 999px; background: rgba(238, 77, 45, .1); color: #ee4d2d; font-size: .6875rem; }
.jbss-more { display: inline-block; padding: .5rem 1rem; border: 1px solid #ddd; border-radius: 8px; text-decoration: none; }
@media (max-width: 600px) {
  .jbss-media img { width: 64px; height: 64px; }
}
