
.aixtra-social {
  --as-accent: currentColor;
  --as-card-bg: #ffffff;
  --as-card-border: rgba(0, 0, 0, 0.1);
  --as-muted: rgba(0, 0, 0, 0.6);
  --as-star: #e0a800;
  --as-radius: 12px;
  --as-gap: 1.25rem;
  font: inherit;
  color: inherit;
}
.aixtra-social *, .aixtra-social *::before, .aixtra-social *::after { box-sizing: border-box; }
.aixtra-social__fallback { margin: 0; }
.aixtra-social__fallback a { font-weight: 600; }
.aixtra-social--center .aixtra-social__fallback { text-align: center; }
.aixtra-social__fallback[hidden] { display: none; }
.aixtra-social__content--google {
  display: grid;
  grid-template-columns: minmax(200px, 1fr) minmax(0, 3fr);
  gap: calc(var(--as-gap) * 1.6);
  align-items: start;
}
.aixtra-social__summary p { margin: 0 0 0.35rem; }
.aixtra-social__rating { font-size: 3rem; line-height: 1; font-weight: 600; }
.aixtra-social__count, .aixtra-social__note, .aixtra-social time { color: var(--as-muted); font-size: 0.9em; }
.aixtra-social__note { margin-top: 0.75rem !important; }
.aixtra-social__stars { display: inline-flex; gap: 0.1em; color: var(--as-star); letter-spacing: 0; }
.aixtra-social__stars span:not(.is-on) { opacity: 0.35; }
.aixtra-social a { color: var(--as-accent); text-underline-offset: 0.2em; }
.aixtra-social__profile { display: inline-block; margin-top: 0.5rem; font-weight: 600; }
.aixtra-social__slider { min-width: 0; }
.aixtra-social__track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 2 * var(--as-gap)) / 3);
  gap: var(--as-gap);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  padding: 2px;
}
.aixtra-social__track::-webkit-scrollbar { display: none; }
.aixtra-social__content--google .aixtra-social__track { grid-auto-columns: calc((100% - var(--as-gap)) / 2); }
.aixtra-social__track:focus-visible { outline: 2px solid var(--as-accent); outline-offset: 4px; }
.aixtra-social__card {
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  background: var(--as-card-bg);
  border: 1px solid var(--as-card-border);
  border-radius: var(--as-radius);
  overflow: hidden;
}
.aixtra-social__review { padding: 1.25rem; gap: 0.75rem; }

.aixtra-social blockquote.aixtra-social__text,
.aixtra-social blockquote.aixtra-social__text p {
  margin: 0; padding: 0; border: 0; background: none; box-shadow: none;
  font: inherit; font-style: normal; text-align: left; quotes: none; color: inherit;
}
.aixtra-social blockquote.aixtra-social__text::before, .aixtra-social blockquote.aixtra-social__text::after,
.aixtra-social blockquote.aixtra-social__text p::before, .aixtra-social blockquote.aixtra-social__text p::after { content: none; }
.aixtra-social blockquote.aixtra-social__text { flex: 1; }
.aixtra-social blockquote.aixtra-social__text p { white-space: pre-line; overflow-wrap: anywhere; line-height: 1.55; }
.aixtra-social__meta { display: flex; flex-direction: column; gap: 0.15rem; }
.aixtra-social__media { position: relative; display: block; aspect-ratio: 1 / 1; background: rgba(0, 0, 0, 0.05); }
.aixtra-social__media img {
  position: absolute; inset: 0; width: 100%; height: 100%; max-width: none;
  object-fit: cover; display: block; margin: 0; border: 0;
}
.aixtra-social__badge {
  position: absolute; left: 0.6rem; bottom: 0.6rem; padding: 0.2rem 0.55rem;
  border-radius: 999px; background: rgba(0, 0, 0, 0.65); color: #fff; font-size: 0.8em;
}
.aixtra-social__body { padding: 1rem; display: flex; flex-direction: column; gap: 0.5rem; flex: 1; }
.aixtra-social__caption { margin: 0; flex: 1; overflow-wrap: anywhere; }
.aixtra-social__controls { display: flex; justify-content: flex-end; gap: 0.5rem; margin-top: 0.9rem; }
.aixtra-social__nav {
  width: 2.75rem; height: 2.75rem; border-radius: 50%; border: 1px solid var(--as-card-border);
  background: var(--as-card-bg); color: inherit; font: inherit; cursor: pointer;
}
.aixtra-social__nav:disabled { opacity: 0.35; cursor: default; }
.aixtra-social__nav:focus-visible { outline: 2px solid var(--as-accent); outline-offset: 2px; }
.aixtra-social__footer { margin: 1rem 0 0; }
@media (max-width: 900px) {
  .aixtra-social__content--google { grid-template-columns: 1fr; }
  .aixtra-social__track, .aixtra-social__content--google .aixtra-social__track { grid-auto-columns: calc((100% - var(--as-gap)) / 2); }
}
@media (max-width: 600px) {
  .aixtra-social__track, .aixtra-social__content--google .aixtra-social__track { grid-auto-columns: 85%; }
}
@media (prefers-reduced-motion: reduce) {
  .aixtra-social__track { scroll-behavior: auto; }
}
