/* Container */
.mgrs-section { padding: 8px 0 24px; }
.mgrs-title {
  font-size: 22px;
  font-weight: 700;
  padding: 14px 16px;
  background: linear-gradient(90deg, #ff7a59, #ffb05c);
  color: #fff;
  display: inline-block;
  border-radius: 10px;
  margin-bottom: 16px;
}

/* Card */
.mgrs-card {
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 6px 18px rgba(0,0,0,.1);
  padding: 16px;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.mgrs-card-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.mgrs-avatar {
  width: 48px; height: 48px; border-radius: 50%; object-fit: cover;
  border: 2px solid #eaeaea;
}
.mgrs-avatar--placeholder {
  width: 48px; height: 48px; border-radius: 50%;
  background: #f0f0f0; display:flex; align-items:center; justify-content:center;
  font-weight: 700; color:#888;
}
.mgrs-meta { flex: 1; min-width: 0; }
.mgrs-name { font-weight: 700; line-height: 1.2; }
.mgrs-date { font-size: 12px; color: #666; }

.mgrs-stars { white-space: nowrap; margin-left: auto; }
.mgrs-star { color: #ddd; font-size: 16px; }
.mgrs-star.is-active { color: #f4b400; }

.mgrs-text {
  font-size: 14px;
  color: #333;
  line-height: 1.7;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 8px;
}
.mgrs-text.is-expanded {
  display: block;
  -webkit-line-clamp: initial;
  overflow: visible;
}
.mgrs-readmore {
  font-size: 13px;
  color: #1976d2;
  cursor: pointer;
  margin-top: auto;
}

/* Nav + Pagination */
.mgrs-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 36px; height: 36px;
  background: #fff; border-radius: 50%;
  box-shadow: 0 4px 12px rgba(0,0,0,.15);
  display: grid; place-items: center;
  z-index: 10;
  cursor: pointer;
  user-select: none;
}
.mgrs-prev { left: -6px; }
.mgrs-next { right: -6px; }
.mgrs-pagination { margin-top: 10px; }

/* Attribution */
.mgrs-attrib { font-size: 12px; color: #777; margin-top: 8px; }
.mgrs-powered { background:#f5f5f5; padding:4px 8px; border-radius:8px; }

/* Swiper slide sizing */
.mgrs-swiper .swiper-slide { height: auto; }
