/* Checkout Reviews — Infinite, Smooth, No-JS Marquee */
.ulayers-marquee {
  --gap: 16px;
  --edge-fade: 0px;
  --duration: 55s;
  position: relative;
  overflow: hidden;
  mask-image: linear-gradient(
    to right,
    transparent,
    #000 var(--edge-fade),
    #000 calc(100% - var(--edge-fade)),
    transparent
  );
  -webkit-mask-image: linear-gradient(
    to right,
    transparent,
    #000 var(--edge-fade),
    #000 calc(100% - var(--edge-fade)),
    transparent
  );
  direction: rtl;
}

.ulayers-marquee-track {
  display: flex;
  gap: var(--gap);
  align-items: stretch;
  width: max-content;
  animation: ulayers-marquee var(--duration) linear infinite;
}

@keyframes ulayers-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(50%);
  }
}

.ulayers-review-card {
  width: clamp(240px, 32vw, 360px);
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 14px 16px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04);
}

.ulayers-review-card,
.ulayers-review-head,
.ulayers-review-content {
  text-align: right;
}
.star-rating,
.star-rating span {
  direction: rtl;
}

.ulayers-review-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 6px;
}
.ulayers-review-name {
  font-weight: 600;
  font-size: 14px;
  color: #111827;
}
.ulayers-review-content {
  font-size: 13px;
  color: #374151;
  line-height: 1.6;
}

.star-rating,
.star-rating span {
  direction: ltr;
}
.star-rating {
  --star-size: 14px;
  --star-inactive: #e5e7eb;
  --star-active: #f59e0b;
  position: relative;
  display: inline-block;
  line-height: 1;
  font-size: var(--star-size);
}
.star-rating::before {
  content: "★★★★★";
  letter-spacing: 3px;
  color: var(--star-inactive);
}
.star-rating span {
  position: absolute;
  left: 0;
  top: 0;
  height: 1em;
  white-space: nowrap;
  overflow: hidden;
}
.star-rating span::before {
  content: "★★★★★";
  letter-spacing: 3px;
  color: var(--star-active);
}

@media (prefers-color-scheme: dark) {
  .ulayers-review-card {
    background: var(--bricks-color-ngqavi);
  }
  .ulayers-review-name {
    color: var(--bricks-color-dtjhxn);
  }
  .ulayers-review-content {
    color: var(--bricks-color-bdlgql);
  }
  .star-rating::before {
    color: #f0f0f0;
  }
}

