/* ============================================================
   SiteReady · Reviews widget styles (scoped, .sr-* prefix)
   Inherits the host site's design tokens when present
   (--accent, --ink, --line, --paper, --display, --body),
   with safe fallbacks so it looks right on any build.
   ============================================================ */

[data-sr-reviews] {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
@media (max-width: 820px) { [data-sr-reviews] { grid-template-columns: 1fr; } }

.sr-rev-card {
  background: var(--paper, #fff);
  border: 1px solid var(--line, #e1e9f1);
  border-radius: var(--r-lg, 18px);
  padding: 28px 26px;
  transition: transform .35s cubic-bezier(.22,1,.36,1), box-shadow .35s cubic-bezier(.22,1,.36,1);
}
.sr-rev-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--sh-2, 0 10px 30px -14px rgba(11,60,126,.22));
}
.sr-rev-card .sr-stars { display: inline-flex; gap: 1px; margin-bottom: 13px; }
.sr-rev-text {
  font-family: var(--body, system-ui, sans-serif);
  color: var(--ink, #11202e);
  font-size: 1rem; line-height: 1.55; margin: 0 0 16px;
  display: -webkit-box; -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden;
}
.sr-rev-by {
  font-family: var(--display, var(--body, system-ui, sans-serif));
  font-weight: 600; font-size: 0.92rem; color: var(--ink-soft, #45586b);
}
.sr-rev-by span { display: block; color: var(--ink-faint, #7c8da0); font-weight: 400; font-size: 0.8rem; margin-top: 2px; }

.sr-stars { display: inline-flex; align-items: center; gap: 1px; line-height: 0; }
.sr-stars svg { display: block; }

/* "read all on Google" link slot */
[data-sr-google-link] {
  display: none; align-items: center; gap: 7px;
  font-family: var(--display, var(--body, system-ui, sans-serif));
  font-weight: 600; font-size: 0.92rem; color: var(--accent, #1e86d6);
}
[data-sr-google-link]:hover { text-decoration: underline; }
[data-sr-google-link] .sr-g { flex: none; }
