:root{
  --brand:#0ea5e9;  /* sky-500 */
  --ink:#0b7285;
}
.hero-reviews{
  background:
    radial-gradient(1200px 600px at 10% 0%, rgba(14,165,233,.12), transparent 60%),
    radial-gradient(1000px 500px at 90% 20%, rgba(14,165,233,.10), transparent 60%);
  border-bottom:1px solid rgba(0,0,0,.06);
}
.badge-brand{ background:var(--brand); }
.card-soft{ border:1px solid rgba(0,0,0,.06); border-radius:1rem; background:var(--bs-body-bg); }
.divider{ height:1px; background:rgba(0,0,0,.08); }

.rating{
  display:inline-flex; gap .25rem;
  align-items:center;
}
.stars{ letter-spacing:1px; font-size:1.1rem; }
.star{ color:#f59e0b; }        /* amber-500 */
.star--muted{ color:#d1d5db; } /* gray-300 */
.review-card .meta{ color: var(--bs-secondary-color); font-size:.95rem; }
.review-card blockquote{ margin: .5rem 0 0 0; color: var(--bs-secondary-color); }

.filter-bar .btn-check + label{
  border-radius:.6rem; padding:.4rem .6rem; border:1px solid rgba(0,0,0,.08);
}
.filter-bar .btn-check:checked + label{
  border-color: rgba(14,165,233,.35);
  box-shadow:0 0 0 3px rgba(14,165,233,.12) inset;
  color: var(--ink); font-weight:600;
}
.sort-select{ border-radius:.6rem; }

@media (prefers-color-scheme: dark){
  .hero-reviews{ border-bottom-color:rgba(255,255,255,.12); }
  .card-soft{ border-color:rgba(255,255,255,.12); }
  .divider{ background:rgba(255,255,255,.12); }
  .filter-bar .btn-check + label{ border-color: rgba(255,255,255,.12); }
}
