/* ============================================================
 * 두레생협 모바일 후기 리스트 v2 - 사진 통합 표시
 * 적용: 생활재 상세 페이지 후기 영역 (.review_detail)
 * 작성: 2026-04-27
 * ============================================================ */

/* [v2.9] 상품영역 폰트 정책 = Pretendard (후기 카드 스코프 한정, 색·구조 유지) */
.product_detail_wrap .rv_card,
.product_detail_wrap .rv_card *,
.main_section_review .rvm_main_card,
.main_section_review .rvm_main_card * {
  font-family: 'Pretendard', 'Noto Sans KR', 'Malgun Gothic', sans-serif;
  letter-spacing: -0.01em;
}

/* ===== 본문 영역 ===== */
.product_detail_wrap .review_detail .review {
  border-top: 1px solid #fff;
  padding-top: 12px;
  font-size: 0.9rem;
  line-height: 1.55;
  color: #1a1a1a;
}

.product_detail_wrap .review_detail .review .txt {
  margin: 0 0 0 0;
  word-break: break-all;
}

/* 본문 길이 제한 + 더보기 */
.product_detail_wrap .review_detail .review .txt.collapsed {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.product_detail_wrap .rv_card .rv_more_btn {
  display: inline-block;
  background: none;
  border: none;
  color: #2E7D32;
  font-size: 0.85rem;
  padding: 4px 0 0;
  margin: 0;
  cursor: pointer;
  font-weight: 600;
}
.product_detail_wrap .rv_card .rv_more_btn:active {
  opacity: 0.6;
}

/* ===== 사진 그리드 ===== */
.product_detail_wrap .rv_card .rv_photos {
  display: grid;
  gap: 6px;
  margin-top: 12px;
}

/* 1장: 4:3 크게 */
.product_detail_wrap .rv_card .rv_photos.cnt1 {
  grid-template-columns: 1fr;
  max-width: 320px;
}
.product_detail_wrap .rv_card .rv_photos.cnt1 .rv_photo {
  aspect-ratio: 4 / 3;
}

/* 2장: 2열 */
.product_detail_wrap .rv_card .rv_photos.cnt2 {
  grid-template-columns: 1fr 1fr;
}
.product_detail_wrap .rv_card .rv_photos.cnt2 .rv_photo {
  aspect-ratio: 1 / 1;
}

/* 3장: 3열 */
.product_detail_wrap .rv_card .rv_photos.cnt3 {
  grid-template-columns: repeat(3, 1fr);
}
.product_detail_wrap .rv_card .rv_photos.cnt3 .rv_photo {
  aspect-ratio: 1 / 1;
}

/* 4장+: 4열 정사각 */
.product_detail_wrap .rv_card .rv_photos.cnt4plus {
  grid-template-columns: repeat(4, 1fr);
}
.product_detail_wrap .rv_card .rv_photos.cnt4plus .rv_photo {
  aspect-ratio: 1 / 1;
}

/* ===== 썸네일 ===== */
.product_detail_wrap .rv_card .rv_photo {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  border: 1px solid #E5E5E5;
  border-radius: 10px;
  overflow: hidden;
  background: #fafafa;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.product_detail_wrap .rv_card .rv_photo:active {
  transform: scale(0.97);
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.product_detail_wrap .rv_card .rv_photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  margin: 0;
  background: #f2f2f2;
}

/* +N 오버레이 (마지막 썸네일) */
.product_detail_wrap .rv_card .rv_photo.more::after {
  content: '+' attr(data-more);
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  font-weight: 700;
  font-size: 1.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 0.5px;
}

/* ===== 라이트박스 (전체 화면 사진 보기) ===== */
.rv_lightbox {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.95);
  z-index: 99999;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  touch-action: pan-y;
}
.rv_lightbox.show {
  display: flex;
}
.rv_lightbox .rv_lb_close {
  position: absolute;
  top: calc(12px + env(safe-area-inset-top));
  right: 12px;
  width: 46px;
  height: 46px;
  border-radius: 22px;
  background: rgba(255,255,255,0.15);
  color: #fff;
  border: none;
  font-size: 26px;
  font-weight: 300;
  cursor: pointer;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
}
.rv_lightbox .rv_lb_counter {
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  color: rgba(255,255,255,0.85);
  font-size: 0.9rem;
  font-weight: 500;
  z-index: 2;
}
.rv_lightbox .rv_lb_img {
  max-width: 95vw;
  max-height: 80vh;
  object-fit: contain;
  user-select: none;
  -webkit-user-drag: none;
}
.rv_lightbox .rv_lb_spin {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 3px solid rgba(255,255,255,0.25);
  border-top-color: #fff;
  animation: rvLbSpin 0.8s linear infinite;
}
@keyframes rvLbSpin { to { transform: rotate(360deg); } }
.rv_lightbox .rv_lb_nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  border-radius: 22px;
  background: rgba(255,255,255,0.15);
  color: #fff;
  border: none;
  font-size: 28px;
  font-weight: 300;
  cursor: pointer;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
}
.rv_lightbox .rv_lb_nav.prev { left: 12px; }
.rv_lightbox .rv_lb_nav.next { right: 12px; }
.rv_lightbox .rv_lb_nav:disabled {
  opacity: 0.3;
  cursor: default;
}
.rv_lightbox .rv_lb_caption {
  position: absolute;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  color: rgba(255,255,255,0.85);
  font-size: 0.85rem;
  text-align: center;
  max-width: 90vw;
  padding: 8px 16px;
  background: rgba(0,0,0,0.4);
  border-radius: 6px;
  line-height: 1.4;
  max-height: 30vh;
  overflow-y: auto;
}

/* ===== 본인 신규 후기 강조 (newReview=Y 진입시) ===== */
.product_detail_wrap .review_detail.rv_just_posted {
  background: linear-gradient(135deg, #E8F5E9 0%, #F1F8E9 100%);
  border: 2px solid #4CAF50;
  border-radius: 12px;
  position: relative;
  animation: rv_pulse 2s ease-in-out;
}
.product_detail_wrap .review_detail.rv_just_posted::before {
  content: '방금 등록한 내 후기';
  display: block;
  position: absolute;
  top: -10px;
  left: 12px;
  background: #4CAF50;
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 10px;
  letter-spacing: 0.3px;
}
@keyframes rv_pulse {
  0%, 100% { box-shadow: 0 0 0 rgba(76, 175, 80, 0); }
  50% { box-shadow: 0 0 18px rgba(76, 175, 80, 0.45); }
}

/* [v2] 본인 후기 수정/삭제 버튼 (차분한 톤) */
.rv_card .rv_owner_btns { display:flex; justify-content:flex-end; gap:8px; margin-top:10px; }
.rv_card .rv_owner_btn { padding:6px 14px; font-size:13px; font-weight:600; color:#6b7280; background:#fff; border:1px solid #e5e7eb; border-radius:6px; cursor:pointer; line-height:1.2; }
.rv_card .rv_owner_btn.danger { color:#9b5b5b; border-color:#e3cfcf; }
.rv_card .rv_owner_btn:active { background:#f3f4f6; }

/* ===== 영상 첨부 (후기 목록) ===== */
.rv_card .rv_video { width:100%; max-width:100%; border-radius:8px; margin-top:8px; display:block; }

/* ============================================================
 * [v2.1] 후기 카드 재설계 — 초안(review_mobile.html) 디자인 적용
 * 스코프: .product_detail_wrap 하위 .rv_card
 * ============================================================ */

/* ----- 카드 컨테이너 ----- */
.product_detail_wrap .rv_card {
  background: #fff;
  margin-bottom: 12px;
  padding: 18px 18px 0;
  position: relative;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.04);
}

/* ----- 카드 헤더 ----- */
.product_detail_wrap .rv_card .rv_card_header {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  margin-bottom: 13px;
}
.product_detail_wrap .rv_card .rv_avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #f3f4f6;
  color: #4b5563;
  font-size: 16px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border: 1px solid #e5e7eb;
}
.product_detail_wrap .rv_card .rv_author_info {
  flex: 1;
  min-width: 0;
}
.product_detail_wrap .rv_card .rv_author_name {
  font-size: 15px;
  font-weight: 700;
  color: #0f172a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.product_detail_wrap .rv_card .rv_author_branch {
  font-size: 12px;
  color: #64748b;
  margin-top: 1px;
}
.product_detail_wrap .rv_card .rv_card_date {
  font-size: 12px;
  color: #94a3b8;
  white-space: nowrap;
  margin-top: 2px;
  flex-shrink: 0;
}

/* ----- 별점 + 배지 행 ----- */
.product_detail_wrap .rv_card .rv_rating_row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 12px;
}
.product_detail_wrap .rv_card .rv_stars {
  display: flex;
  gap: 2px;
}
.product_detail_wrap .rv_card .rv_stars .rs {
  font-size: 18px;
  color: #e2e8f0;
}
.product_detail_wrap .rv_card .rv_stars .rs.rs_full {
  color: #c8a24a;
}

/* 배지 공통 */
.product_detail_wrap .rv_card .rv_badge {
  font-size: 12px;
  font-weight: 600;
  padding: 3px 10px;
  border-radius: 99px;
}
.product_detail_wrap .rv_card .rv_badge_recommend { background: #dcfce7; color: #15803d; }
.product_detail_wrap .rv_card .rv_badge_regret    { background: #f1f5f9; color: #64748b; }
.product_detail_wrap .rv_card .rv_badge_neutral   { background: #f1f5f9; color: #64748b; }
.product_detail_wrap .rv_card .rv_badge_q_good    { background: #f0fdf4; color: #16a34a; border: 1px solid #bbf7d0; }
.product_detail_wrap .rv_card .rv_badge_q_normal  { background: #f8fafc; color: #64748b; border: 1px solid #e2e8f0; }
.product_detail_wrap .rv_card .rv_badge_q_bad     { background: #fff7ed; color: #c2410c; border: 1px solid #fed7aa; }

/* ----- 본문 ----- */
.product_detail_wrap .rv_card .rv_body_wrap {
  margin-bottom: 14px;
}
.product_detail_wrap .rv_card .rv_body_txt {
  font-size: 16px;
  line-height: 1.7;
  color: #1f2937;
  word-break: keep-all;
  margin: 0;
}
.product_detail_wrap .rv_card .rv_body_txt.collapsed {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* ----- 두레지기 답글 (공통 — 모바일·PC 동일 클래스 rv_dure_reply) ----- */
.rv_dure_reply {
  margin-top: 14px;
  margin-left: 8px;
  border-left: 3px solid #15803d;
  background: #f3f4f6;
  border-radius: 0 10px 10px 0;
  padding: 14px 16px;
  position: relative;
}
.rv_dure_reply .rv_reply_header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 7px;
}
.rv_dure_reply .rv_reply_badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: #15803d;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 99px;
  letter-spacing: 0.02em;
}
.rv_dure_reply .rv_reply_date {
  font-size: 12px;
  color: #9ca3af;
  margin-left: auto;
}
.rv_dure_reply .rv_reply_text {
  font-size: 15px;
  line-height: 1.7;
  color: #4b5563;
  word-break: keep-all;
}

/* ----- 카드 바닥 여백 ----- */
.product_detail_wrap .rv_card .rv_owner_btns {
  padding-bottom: 18px;
}

/* 사진 없고 답글/소유버튼도 없는 카드 하단 패딩 */
.product_detail_wrap .rv_card > .rv_body_wrap:last-child,
.product_detail_wrap .rv_card > .rv_rating_row:last-child {
  padding-bottom: 18px;
}

/* 하이라이트 — rv_card 에도 rv_just_posted 적용 */
.product_detail_wrap .rv_card.rv_just_posted {
  background: linear-gradient(135deg, #E8F5E9 0%, #F1F8E9 100%);
  border: 2px solid #4CAF50;
  border-radius: 12px;
  position: relative;
  animation: rv_pulse 2s ease-in-out;
}
.product_detail_wrap .rv_card.rv_just_posted::before {
  content: '방금 등록한 내 후기';
  display: block;
  position: absolute;
  top: -10px;
  left: 12px;
  background: #4CAF50;
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 10px;
  letter-spacing: 0.3px;
  z-index: 1;
}

/* ============================================================
 * [v2.2] 모바일 후기 요약 헤더 — review_mobile.html 시안 (PC rsw_* 와 동일 디자인 언어)
 * ============================================================ */
.rvm_summary { background:#fff; padding:20px 18px; margin-bottom:10px; border-radius:12px; }
.rvm_sum_top { display:flex; align-items:center; gap:18px; margin-bottom:14px; }
.rvm_sum_score { text-align:center; flex-shrink:0; }
.rvm_sum_num { font-size:44px; font-weight:700; color:#15803d; line-height:1; }
.rvm_sum_outof { font-size:13px; color:#94a3b8; margin-top:2px; }
.rvm_sum_stars { display:flex; gap:2px; justify-content:center; margin-top:6px; }
.rvm_sum_stars .rvm_star { font-size:18px; color:#e2e8f0; }
.rvm_sum_stars .rvm_star_full { color:#c8a24a; }
.rvm_sum_counts { flex:1; display:flex; flex-direction:column; gap:8px; min-width:0; }
.rvm_count_row { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.rvm_badge { font-size:12px; font-weight:600; padding:3px 10px; border-radius:99px; white-space:nowrap; }
.rvm_badge_rec { background:#dcfce7; color:#15803d; }
.rvm_badge_reg { background:#f1f5f9; color:#64748b; }
.rvm_count_label { font-size:12px; color:#94a3b8; }
.rvm_count_num { font-size:14px; font-weight:700; color:#0f172a; margin-left:auto; }
.rvm_sum_total { border-top:1px solid #f1f5f9; padding-top:12px; font-size:13px; color:#64748b; }
.rvm_sum_total strong { color:#15803d; font-weight:700; }

/* ===== 고객분류 (모바일) ===== */
/* 아바타 자리에 분류 아이콘(원형 배지 SVG) — 기존 초록원/이니셜 대체 */
.product_detail_wrap .rv_card .rv_avatar.rv_avatar_icon {
  background: transparent;
  border: 0;
  overflow: visible;
}
.rv_gclass_av_img { width: 100%; height: 100%; display: block; border-radius: 50%; }
/* 이름 옆 분류 라벨 칩 (텍스트) */
.rv_gclass {
  display: inline-block;
  vertical-align: middle;
  background: #f3f4f6;
  border: 1px solid #e5e7eb;
  border-radius: 99px;
  padding: 1px 8px;
  margin-right: 5px;
  font-size: 11px;
  font-weight: 700;
  color: #4b5563;
  white-space: nowrap;
  line-height: 1.5;
}
/* [v2.3] 고객분류 배지 — 코드별 색상 (상세페이지 규칙 / 메인 공통) */
.rv_gc_03 { background:#00652c; border-color:#00652c; color:#fff; }   /* 조합원 */
.rv_gc_04 { background:#fff; border-color:#0d9488; color:#0d9488; }   /* 단체 */
.rv_gc_05 { background:#fff; border-color:#f97316; color:#f97316; }   /* 어린이집 */
.rv_gc_30 { background:#fff; border-color:#7c3aed; color:#7c3aed; }   /* 바우처 */

/* ===== [v1.8] 추천 버튼 (모바일) ===== */
.product_detail_wrap .rv_card .rv_like_wrap {
  display: flex;
  justify-content: flex-end;
  padding: 10px 0 18px;
}
.rv_like_btn {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 12px;
  border: 1px solid #ccc;
  border-radius: 20px;
  background: #fff;
  cursor: pointer;
  font-size: 13px;
  color: #888;
  min-height: 36px;
}
.rv_like_btn .ic {
  font-size: 15px;
  color: #bbb;
}
.rv_like_btn.on {
  border-color: #e85555;
  background: #fff5f5;
}
.rv_like_btn.on .ic {
  color: #e85555;
}
.rv_like_btn .cnt {
  font-size: 13px;
  color: #555;
}

/* ===== [v1.8] BEST 배지 ===== */
.rv_best_badge {
  display: inline-block;
  padding: 4px 12px;
  background: #00652c;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  border-radius: 99px;
  margin-bottom: 8px;
  letter-spacing: 0.2px;
}
/* [v2.5] BEST 카드 — 금색 prestige 톤(그룹헤더+순위배지로 구분, 카드는 은은하게) */
.product_detail_wrap .rv_card.rv_card_best {
  background: #fcf8ef;
  border: 1px solid #efe6d2;
  border-radius: 14px;
  box-shadow: none;
  padding: 16px 16px 0;
}

/* ===== [v2.5] 후기 그룹 헤더 (추천 많은 후기 / 전체 후기) ===== */
.rv_group_head {
  display: flex; align-items: center; gap: 8px;
  font-size: 16px; font-weight: 700; color: #1f2937;
  padding: 14px 2px 8px;
}
.rv_group_medal {
  position: relative; flex-shrink: 0; width: 22px; height: 22px;
  border-radius: 50%; background: #c8a24a;
}
.rv_group_medal::before {
  content: '\2605'; position: absolute; left: 50%; top: 50%;
  transform: translate(-50%,-50%); color: #fff; font-size: 12px;
}
.rv_group_desc { font-style: normal; font-size: 13px; font-weight: 500; color: #9ca3af; margin-left: 2px; }

/* ===== [v2.5] 베스트 카드 상단바: 순위배지 + ♥금색칩 ===== */
.rv_best_topbar { display: flex; align-items: center; justify-content: flex-end; margin-bottom: 10px; }
.rv_rank_badge {
  display: inline-flex; align-items: center; justify-content: center;
  width: 26px; height: 26px; border-radius: 50%;
  background: #c8a24a; color: #fff; font-size: 14px; font-weight: 700; flex-shrink: 0;
}
.rv_best_heart {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 13px; font-weight: 700; color: #b0822e;
  background: #faf4e6; border: 1px solid #ecdcb8; border-radius: 99px; padding: 3px 11px;
}

/* ============================================================
 * [v2.3] 메인 "조합원의 진짜 이야기" 댓글형 카드 (PC·모바일 공유)
 * 스코프: .main_section_review .rvm_main_card
 * ============================================================ */
.main_section_review .rvm_main_card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05);
  padding: 20px 20px 16px;
  height: 400px;            /* 카드 높이 고정 — 한 줄 정렬 */
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
/* 상단 영역(헤더~답변) — 넘치면 클립, 상품카드는 항상 하단 노출 */
.main_section_review .rvm_top {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 13px;
}
/* 헤더 */
.main_section_review .rvm_head { display: flex; align-items: flex-start; gap: 11px; }
.main_section_review .rvm_avatar {
  width: 44px; height: 44px; border-radius: 50%;
  background: #f3f4f6; color: #4b5563; border: 1px solid #e5e7eb;
  font-size: 17px; font-weight: 700;
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.main_section_review .rvm_meta { flex: 1; min-width: 0; }
.main_section_review .rvm_name_row { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.main_section_review .rvm_name { font-size: 16px; font-weight: 700; color: #1f2937; }
.main_section_review .rvm_sub { font-size: 14px; color: #6b7280; margin-top: 3px; }
/* 별점 (금색) */
.main_section_review .rvm_stars { display: flex; gap: 2px; }
.main_section_review .rvm_st { font-size: 18px; color: #e2e8f0; line-height: 1; }
.main_section_review .rvm_st_full { color: #c8a24a; }
/* 본문 — 50~60대 고가독성 17px */
.main_section_review .rvm_body {
  font-size: 17px; line-height: 1.7; color: #1f2937;
  word-break: keep-all; margin: 0;
  display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden;
}
/* PC(넓은 화면)는 본문 3줄로 더 축소 — 카드 폭이 넓어 4줄도 길어 보임 (모바일은 4줄 유지) */
@media (min-width: 1024px) {
  .main_section_review .rvm_body { -webkit-line-clamp: 3; }
}
/* 사진/영상 */
.main_section_review .rvm_photos { display: flex; flex-wrap: wrap; gap: 6px; }
.main_section_review .rvm_photo {
  width: 84px; height: 84px; padding: 0; border: 1px solid #e5e7eb; border-radius: 10px;
  overflow: hidden; background: #fafafa; cursor: pointer; flex-shrink: 0;
}
.main_section_review .rvm_photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.main_section_review .rvm_video_wrap {
  position: relative; display: inline-block; cursor: pointer;
  margin-top: 2px; border-radius: 12px; overflow: hidden; background: #000; line-height: 0;
}
.main_section_review .rvm_video { height: 190px; width: auto; max-width: 100%; display: block; }
/* "동영상 후기" 배지 (좌상단, 재생 삼각형) */
.main_section_review .rvm_video_badge {
  position: absolute; left: 8px; top: 8px;
  display: inline-flex; align-items: center; gap: 5px;
  background: rgba(0,0,0,0.62); color: #fff;
  font-size: 12px; font-weight: 600; line-height: 1;
  padding: 5px 10px 5px 9px; border-radius: 99px; pointer-events: none;
}
.main_section_review .rvm_video_badge::before {
  content: ''; width: 0; height: 0;
  border-left: 7px solid #fff; border-top: 5px solid transparent; border-bottom: 5px solid transparent;
}
/* 우하단 재생(크게보기·소리켜기) 버튼 */
.main_section_review .rvm_video_expand {
  position: absolute; right: 8px; bottom: 8px; width: 36px; height: 36px;
  border-radius: 50%; background: rgba(0,0,0,0.55); pointer-events: none;
  transition: background 0.15s;
}
.main_section_review .rvm_video_expand::before {
  content: ''; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);
  width: 0; height: 0; margin-left: 2px;
  border-left: 11px solid #fff; border-top: 7px solid transparent; border-bottom: 7px solid transparent;
}
.main_section_review .rvm_video_wrap:hover .rvm_video_expand { background: rgba(0,101,44,0.9); }

/* ============================================================
 * [v2.4] 영상 히어로 카드 (영상 있는 후기 = 카드 전체 영상 + 하단 오버레이)
 * ============================================================ */
.main_section_review .rvm_main_card.rvm_video_hero {
  position: relative; padding: 0; border: none; overflow: hidden;
  background: #000; display: block; cursor: pointer;
}
.main_section_review .rvm_hero_video {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; background: #000;
}
.main_section_review .rvm_hero_badge {
  position: absolute; left: 12px; top: 12px; z-index: 3;
  display: inline-flex; align-items: center;
  background: rgba(0,0,0,0.6); color: #fff; font-size: 12px; font-weight: 600; line-height: 1;
  padding: 5px 10px 5px 9px; border-radius: 99px;
}
.main_section_review .rvm_hero_badge::before {
  content: ''; width: 0; height: 0; margin-right: 5px;
  border-left: 7px solid #fff; border-top: 5px solid transparent; border-bottom: 5px solid transparent;
}
.main_section_review .rvm_hero_play {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);
  width: 64px; height: 64px; border-radius: 50%; background: rgba(0,0,0,0.45); z-index: 2; pointer-events: none;
}
.main_section_review .rvm_hero_play::before {
  content: ''; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);
  width: 0; height: 0; margin-left: 4px;
  border-left: 18px solid #fff; border-top: 12px solid transparent; border-bottom: 12px solid transparent;
}
.main_section_review .rvm_hero_overlay {
  position: absolute; left: 0; right: 0; bottom: 0; z-index: 3;
  padding: 52px 16px 16px;
  background: linear-gradient(to top, rgba(0,0,0,0.9) 28%, rgba(0,0,0,0));
}
.main_section_review .rvm_hero_head { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; flex-wrap: wrap; }
.main_section_review .rvm_hero_name { color: #fff; font-weight: 700; font-size: 16px; }
.main_section_review .rvm_hero_branch { color: rgba(255,255,255,0.82); font-size: 13px; }
.main_section_review .rvm_hero_like { margin-left: auto; flex-shrink: 0; background: rgba(255,255,255,0.16); border: 1px solid rgba(255,255,255,0.45); }
.main_section_review .rvm_hero_like .ic { color: #fff; }
.main_section_review .rvm_hero_like .cnt { color: #fff; }
.main_section_review .rvm_hero_like.on { background: #e85555; border-color: #e85555; }
.main_section_review .rvm_hero_like.on .ic { color: #fff; }
.main_section_review .rvm_hero_stars { font-size: 17px; letter-spacing: 1px; margin-bottom: 7px; text-shadow: 0 1px 3px rgba(0,0,0,.7); }
.main_section_review .rvm_hst { color: rgba(255,255,255,0.35); }
.main_section_review .rvm_hst_full { color: #c8a24a; }
.main_section_review .rvm_hero_body {
  color: #fff; font-size: 15px; line-height: 1.55; margin: 0 0 11px; word-break: keep-all;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  text-shadow: 0 1px 3px rgba(0,0,0,.5);
}
.main_section_review .rvm_hero_product {
  display: flex; align-items: center; gap: 10px; background: rgba(255,255,255,0.96); border-radius: 12px; padding: 8px;
}
.main_section_review .rvm_hp_link { display: flex; align-items: center; gap: 10px; flex: 1; min-width: 0; text-decoration: none; }
.main_section_review .rvm_hp_img { width: 40px; height: 40px; border-radius: 7px; object-fit: cover; background: #eee; flex-shrink: 0; }
.main_section_review .rvm_hp_info { min-width: 0; display: flex; flex-direction: column; }
.main_section_review .rvm_hp_name { font-size: 13px; font-weight: 600; color: #1f2937; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.main_section_review .rvm_hp_price { font-size: 15px; font-weight: 700; color: #00652c; margin-top: 1px; }
.main_section_review .rvm_hero_product.soldout .rvm_hp_link { opacity: .5; }
.main_section_review .rvm_hp_cart { flex-shrink: 0; border: none; background: transparent; color: #00652c; font-size: 20px; line-height: 1; cursor: pointer; padding: 4px; }
/* 상품 미니카드 */
.main_section_review .rvm_product {
  flex-shrink: 0; margin-top: 14px; display: flex; align-items: center; gap: 12px;
  border-top: 1px solid #f1f3f5; padding-top: 14px;
}
.main_section_review .rvm_prod_link { display: flex; align-items: center; gap: 12px; flex: 1; min-width: 0; text-decoration: none; }
.main_section_review .rvm_prod_img { width: 52px; height: 52px; border-radius: 8px; overflow: hidden; border: 1px solid #e5e7eb; flex-shrink: 0; }
.main_section_review .rvm_prod_img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.main_section_review .rvm_prod_info { min-width: 0; }
.main_section_review .rvm_prod_name { font-size: 15px; color: #1f2937; font-weight: 600; margin: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.main_section_review .rvm_prod_price { font-size: 16px; color: #00652c; font-weight: 700; margin: 2px 0 0; }
.main_section_review .rvm_product.soldout .rvm_prod_link { opacity: 0.5; }
.main_section_review .rvm_prod_cart {
  width: 40px; height: 40px; flex-shrink: 0; border: none; border-radius: 10px;
  background: transparent; cursor: pointer; color: #00652c; font-size: 22px; line-height: 1;
  display: flex; align-items: center; justify-content: center;
}
.main_section_review .rvm_prod_cart:hover { background: #f0fdf4; }
/* 추천 버튼 위치(헤더 우측) */
.main_section_review .rvm_head .rv_like_btn { margin-left: auto; flex-shrink: 0; }
/* 두레지기 답변 — 메인은 좌측 여백 제거 */
.main_section_review .rv_dure_reply { margin-top: 0; margin-left: 0; }

/* ============================================================
 * [v3.3 2026-07-02] 메인 카드 개선
 * 1) 카드 전체 클릭 = 상세 후기탭 이동  2) 사진없는 후기 채움  3) 관리자댓글 힌트만
 * ============================================================ */
.main_section_review .rvm_main_card { cursor: pointer; }
.main_section_review .rvm_main_card:hover { border-color: #cbd5cd; box-shadow: 0 3px 10px rgba(0,0,0,0.08); }
/* 사진 없는 후기: 생활재 썸네일 + 인용 요약 (본문 대체) */
.main_section_review .rvm_fill { display: flex; gap: 12px; align-items: stretch; }
.main_section_review .rvm_fill_img {
  width: 96px; height: 96px; border-radius: 12px; object-fit: cover; flex-shrink: 0;
  border: 1px solid #e5e7eb; background: #fafafa; align-self: center;
}
.main_section_review .rvm_fill_quote {
  flex: 1; min-width: 0; position: relative;
  background: #f4f8f4; border-radius: 12px; padding: 14px 16px 14px 34px;
  font-size: 16px; line-height: 1.65; color: #1f2937; word-break: keep-all;
  display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden;
}
.main_section_review .rvm_fill_quote::before {
  content: '\201C'; position: absolute; left: 12px; top: 6px;
  font-size: 30px; font-weight: 800; color: #3d6041; line-height: 1; font-family: Georgia, serif;
}
@media (min-width: 1024px) {
  .main_section_review .rvm_fill_quote { -webkit-line-clamp: 3; }
}
/* 관리자 댓글: 내용 대신 은은한 힌트 칩 */
.main_section_review .rvm_reply_hint {
  display: inline-flex; align-items: center; gap: 6px; align-self: flex-start;
  background: #eef4ee; color: #3d6041; border-radius: 999px;
  padding: 5px 12px; font-size: 13px; font-weight: 600; line-height: 1.3;
}
.main_section_review .rvm_reply_hint .ic { font-size: 13px; line-height: 1; }

/* ============================================================
 * [v3.5 2026-07-02] 후기 섹션 배경 = 아주 연한 그린 (style_v2 #F8F8F8 덮어씀)
 * 위 두레추천(크림 #faf8f2)과 교차 리듬, 흰 후기카드가 떠 보이게
 * ============================================================ */
.main_section_review{ background-color:#f4f8f3; }

/* ============================================================
 * [v3.6 2026-07-02] 매거진 2차 — 마스트헤드·에디터스 픽·드롭캡·서명·사진 화보형
 * 사진 0장=채움카드 / 1장=화보형(rvm_card_ph) / 2장 이상=본문+썸네일
 * ============================================================ */
/* 마스트헤드(제호) — PC main_home 전용 마크업 */
.main_section_review .rvm_mast{ text-align:center; padding:0 0 34px; }
.main_section_review .rvm_mast_eyebrow{ font-size:13px; letter-spacing:.22em; color:#3d6041; font-weight:800; }
.main_section_review .rvm_mast_tt{ font-family:'Maru Buri','Noto Serif KR',serif; font-size:38px; font-weight:700; letter-spacing:-.01em; color:#1d271e; margin:14px 0 0; }
.main_section_review .rvm_mast_issue{ margin-top:12px; font-size:15px; color:#565a57; }
.main_section_review .rvm_mast_issue b{ color:#3d6041; font-weight:700; }
.main_section_review .rvm_mast_rule{ width:52px; height:3px; background:#3d6041; opacity:.5; border-radius:2px; margin:20px auto 0; }
/* 에디터스 픽(추천수 1위) */
.main_section_review .rvm_main_card.rvm_pick{ border:1.5px solid #3d6041; background:linear-gradient(170deg,#fffdf7,#ffffff 45%); }
.main_section_review .rvm_pick_tag{ display:inline-flex; align-items:center; gap:5px; align-self:flex-start; background:#3d6041; color:#fff; font-size:12.5px; font-weight:800; padding:5px 13px; border-radius:999px; }
.main_section_review .rvm_pick_tag em{ font-style:normal; color:#ffd98a; }
/* 서명 */
.main_section_review .rvm_sign{ font-family:'Maru Buri','Noto Serif KR',serif; font-size:13.5px; color:#6d7a70; margin-top:8px; }
.main_section_review .rvm_sign b{ color:#3d6041; font-weight:600; }
/* 드롭캡: 채움카드 인용(따옴표 장식 제거 후 대체) + 사진 2장+ 본문 */
.main_section_review .rvm_fill_col{ flex:1; min-width:0; display:flex; flex-direction:column; }
.main_section_review .rvm_fill_col .rvm_fill_quote{ flex:0 1 auto; }
.main_section_review .rvm_fill_quote{ padding:12px 14px; }
.main_section_review .rvm_fill_quote::before{ content:none; }
.main_section_review .rvm_fill_quote::first-letter{ font-size:2.4em; font-weight:700; color:#3d6041; float:left; line-height:1; padding:3px 7px 0 0; font-family:'Maru Buri','Noto Serif KR',serif; }
.main_section_review .rvm_body::first-letter{ font-size:2.2em; font-weight:700; color:#3d6041; float:left; line-height:1; padding:3px 6px 0 0; font-family:'Maru Buri','Noto Serif KR',serif; }
/* 사진 1장 = 화보형 카드 */
.main_section_review .rvm_main_card.rvm_card_ph{ padding:0; overflow:hidden; }
.main_section_review .rvm_ph_hero{ position:relative; height:186px; flex-shrink:0; background:#f4f4f4; }
.main_section_review .rvm_ph_hero img{ width:100%; height:100%; object-fit:cover; display:block; cursor:zoom-in; }
.main_section_review .rvm_ph_badge{ position:absolute; left:12px; top:12px; background:rgba(255,255,255,.92); color:#1d271e; font-size:11.5px; font-weight:800; border-radius:999px; padding:4px 10px; }
.main_section_review .rvm_ph_cap{ position:absolute; left:0; right:0; bottom:0; padding:26px 16px 9px; background:linear-gradient(180deg,transparent,rgba(20,28,22,.6)); color:#fff; font-family:'Maru Buri','Noto Serif KR',serif; font-size:12.5px; letter-spacing:.02em; }
.main_section_review .rvm_ph_body{ padding:13px 18px 14px; display:flex; flex-direction:column; flex:1; min-height:0; gap:8px; overflow:hidden; }
.main_section_review .rvm_ph_body .rvm_head{ gap:9px; }
.main_section_review .rvm_ph_body .rvm_avatar{ width:36px; height:36px; font-size:14px; }
.main_section_review .rvm_ph_body .rvm_stars{ margin:0; }
.main_section_review .rvm_ph_body .rvm_stars .rvm_st{ font-size:15px; }
.main_section_review .rvm_ph_quote{ font-family:'Maru Buri','Noto Serif KR',serif; font-size:15px; line-height:1.75; color:#26332b; word-break:keep-all; margin:0;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.main_section_review .rvm_ph_quote::first-letter{ font-size:2.1em; font-weight:700; color:#3d6041; float:left; line-height:1; padding:2px 6px 0 0; }
.main_section_review .rvm_ph_body .rvm_sign{ margin-top:0; font-size:12.5px; }
.main_section_review .rvm_ph_body .rvm_product{ margin-top:auto; padding-top:10px; }

/* ============================================================
 * [v3.7 2026-07-02] 긴 본문 겹침 수정 — 드롭캡(::first-letter float)과
 * -webkit-line-clamp 조합은 긴 글에서 높이 계산이 어긋나 서명/상품카드와 겹침
 * -> 클램프 대신 고정 line-height + max-height(줄수 배수) + overflow 클립으로 교체
 * ============================================================ */
.main_section_review .rvm_fill_quote{
  display:block; -webkit-line-clamp:unset; -webkit-box-orient:unset;
  line-height:28px; max-height:112px; overflow:hidden; overflow-wrap:anywhere;
}
@media (min-width:1024px){
  .main_section_review .rvm_card_noimg .rvm_fill_quote{ line-height:33px; max-height:132px; }
}
.main_section_review .rvm_ph_quote{
  display:block; -webkit-line-clamp:unset; -webkit-box-orient:unset;
  line-height:26px; max-height:52px; overflow:hidden; overflow-wrap:anywhere;
}
.main_section_review .rvm_body{
  display:block; -webkit-line-clamp:unset; -webkit-box-orient:unset;
  line-height:29px; max-height:116px; overflow:hidden; overflow-wrap:anywhere;
}
@media (min-width:1024px){
  .main_section_review .rvm_body{ max-height:87px; }
}
/* 서명은 항상 인용 아래 고정 간격 */
.main_section_review .rvm_sign{ margin-top:8px; flex-shrink:0; }

/* ============================================================
 * [v3.4 2026-07-02] PC 매거진형 텍스트 후기 카드
 * 글 많은(사진 없는) 카드: 마루부리 명조 + 대형 인용부호 + 크림 종이 배경
 * + 우하단 원형 생활재 썸네일. 모바일은 v3.3 채움 카드 유지.
 * ============================================================ */
@media (min-width: 1024px) {
  .main_section_review .rvm_main_card.rvm_card_noimg {
    background: linear-gradient(165deg, #fffdf7 0%, #f5f9f4 100%);
    border-color: #e8e6dc;
  }
  .main_section_review .rvm_card_noimg .rvm_fill {
    flex: 1 1 auto; min-height: 0;
    flex-direction: column; align-items: stretch; position: relative;
  }
  .main_section_review .rvm_card_noimg .rvm_fill_quote {
    background: transparent; border-radius: 0;
    padding: 30px 4px 0 6px;
    font-family: 'Maru Buri', 'Noto Serif KR', serif;
    font-size: 17px; line-height: 1.95; color: #26332b; letter-spacing: -0.005em;
    -webkit-line-clamp: 5;
  }
  .main_section_review .rvm_card_noimg .rvm_fill_quote::before {
    left: 0; top: -8px;
    font-size: 52px; color: #b9ccba;
  }
  /* 생활재 썸네일 = 우하단 원형 스탬프 */
  .main_section_review .rvm_card_noimg .rvm_fill_img {
    order: 2; width: 54px; height: 54px; border-radius: 50%;
    align-self: flex-end; margin-top: auto;
    border: 2px solid #fff; box-shadow: 0 2px 10px rgba(29,39,30,0.16);
  }
  /* 인용 아래 짧은 그린 시그니처 라인 */
  .main_section_review .rvm_card_noimg .rvm_fill::after {
    content: ''; position: absolute; left: 6px; bottom: 20px;
    width: 30px; height: 3px; border-radius: 2px; background: #3d6041; opacity: 0.55;
  }
}

/* ===== [PC-REVIEW-WRITE APPEND 2026-06-30] PC 후기작성/카드 스타일(원래 style_v2.css) — goodsViewCommV2 로드용 ===== */
/* ===== [REVIEW-DELTA APPEND shop 2026-06-30] 운영 style_v2.css 끝에 추가. 롤백=이 블록 제거 ===== */
.product_detail_content .detail_content2 .detail_review_table .review_txt .img_box video.rv_video_pc{width:484px;display:block;margin-top:10px;background:#000;border-radius:6px;}
/* 후기 PC 팝업 v1.64 — 안내배너·별점·라디오·영상 추가 */
.for_product_detail.my_review_write_wrap .rv_info_banner{background-color:#eff6ff;border-left:4px solid #3b82f6;border-radius:6px;padding:12px 16px;margin-bottom:16px;}
.for_product_detail.my_review_write_wrap .rv_info_banner_title{font-size:15px;font-weight:700;color:#1e40af;line-height:1.4;}
.for_product_detail.my_review_write_wrap .rv_info_banner_desc{font-size:13px;color:#1e40af;margin-top:3px;line-height:1.4;}
.for_product_detail.my_review_write_wrap .rv_scroll_space{height:63vh;padding:0 10px 100px 0;overflow-x:hidden;overflow-y:scroll;}
.for_product_detail.my_review_write_wrap .star_wrap .star.full{background:url(../../images/shop/icon_star_full.svg) 50% 50% no-repeat;}
.for_product_detail.my_review_write_wrap .chk_wrap .radio_wrap input[type=radio]:not(old):checked + label{background-color:#dcfce7;border:1px solid #15803d;color:#15803d;}
.for_product_detail.my_review_write_wrap .chk_wrap .radio_wrap.good input[type=radio]:not(old):checked + label .icon{background-position:-400px 0;}
.for_product_detail.my_review_write_wrap .chk_wrap .radio_wrap.bad input[type=radio]:not(old):checked + label .icon{background-position:-425px 0;}
.for_product_detail.my_review_write_wrap .rv_textarea{display:block;width:100%;height:180px;border:1px solid #CFCFCF;border-radius:5px;padding:16px;font-family:'Noto Sans KR',sans-serif;font-size:18px;resize:none;outline:none;margin-top:11px;box-shadow:none;}
.for_product_detail.my_review_write_wrap .rv_textarea::placeholder{font-size:18px;color:#cfcfcf;letter-spacing:0;font-family:'Noto Sans KR',sans-serif;}
.for_product_detail.my_review_write_wrap .file_box .file_video_view{width:100%;height:100%;object-fit:cover;position:relative;z-index:2;display:block;}

.product_type_popcard_v2509 .headline .pname{display: block;width: 100%;text-align: center;font-size: 32px; overflow: hidden;  display: -webkit-box;  -webkit-line-clamp: 2;  -webkit-box-orient: vertical;}
.product_type_popcard_v2509 .descline p{    word-break: keep-all;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical; overflow: hidden;}
/* ============================================================
   생활재 후기 - 관리자 답변 박스 (PC, 상품상세)
   주변 후기 본문과 동일한 18px / 작성일과 동일한 16px 로 정렬
   ============================================================ */
.review_admin_reply{
    margin-top:14px;padding:18px 20px;
    background:#F8FAFE;border-left:3px solid #4e80ee;border-radius:6px;
    font-size:18px;color:#2a3142;letter-spacing:-0.013rem;
}
.review_admin_reply .rar_head{
    display:flex;align-items:center;justify-content:space-between;
    margin-bottom:8px;
}
.review_admin_reply .rar_label{font-weight:600;color:#4e80ee;letter-spacing:-0.013rem;font-size:18px;}
.review_admin_reply .rar_date{font-size:16px;color:#828284;letter-spacing:-0.0065rem;}
.review_admin_reply .rar_body{line-height:1.6;color:#2a3142;word-break:keep-all;font-size:18px;letter-spacing:-0.013rem;}

/* ============================================================
   답변 작성자 라벨 (PC, 상품상세 후기)
   ============================================================ */
.review_admin_reply .rar_writer{
    font-weight:600;color:#4e80ee;letter-spacing:-0.013rem;font-size:18px;
}
.review_detail{position:relative;}
.review_detail.has_reply{
    border-left:3px solid #4e80ee;padding-left:14px;
}
.review_detail .reply_badge,
dl.review .reply_badge{
    display:inline-block;padding:2px 8px;
    background:#4e80ee;color:#fff;
    font-size:0.72rem;font-weight:700;letter-spacing:-0.2px;
    border-radius:10px;line-height:1.4;
    vertical-align:middle;
}
.review_detail .reply_badge{
    position:absolute;top:14px;right:14px;
}
dl.review.has_reply .review_title{position:relative;}
dl.review .reply_badge{
    position:absolute;top:50%;right:10px;transform:translateY(-50%);
}
/* 관리자 답변 wrap — review_txt 의 display:none 영향 받지 않게 항상 표시 */
dl.review > dd.review_admin_reply_wrap{
    display:block;
    padding:14px 30px 18px;
    background:#fff;
}
dl.review > dd.review_admin_reply_wrap .review_admin_reply{
    margin-top:0;
}
/* ===== [v1.65] PC 후기작성 품질버튼 1줄 flex 정렬 ===== */
.for_product_detail.my_review_write_wrap .chk_wrap .list3{display:flex;gap:8px;}
.for_product_detail.my_review_write_wrap .chk_wrap .list3 li{float:none;width:auto;flex:1;margin-left:0;}
.for_product_detail.my_review_write_wrap .chk_wrap .list3 li:first-child{margin-left:0;}
.for_product_detail.my_review_write_wrap .chk_wrap .list3 .radio_wrap label{white-space:nowrap;font-size:16px;}

/* ===== [v1.65] PC 후기 저장 로딩 오버레이 ===== */
.rv_pc_loading{
    position:fixed;top:0;left:0;width:100%;height:100%;
    background:rgba(0,0,0,0.45);
    z-index:99999;
    display:flex;align-items:center;justify-content:center;
}
.rv_pc_loading .box{
    text-align:center;
    color:#fff;
    font-size:16px;
    letter-spacing:-0.02em;
}
.rv_pc_loading .spin{
    display:block;
    width:44px;height:44px;
    border:4px solid rgba(255,255,255,0.3);
    border-top-color:#fff;
    border-radius:50%;
    margin:0 auto 14px;
    animation:rv_pc_spin 0.8s linear infinite;
}
@keyframes rv_pc_spin{
    to{transform:rotate(360deg);}
}
/* ===== [v1.65] PC 후기목록 신규등록 하이라이트 ===== */
#id_board_review .review.rv_just_posted{
    background:linear-gradient(135deg,#E8F5E9 0%,#F1F8E9 100%);
    border:2px solid #4CAF50;
    border-radius:12px;
    position:relative;
    animation:rv_pulse 2s ease-in-out;
}
#id_board_review .review.rv_just_posted::before{
    content:'방금 등록한 내 후기';
    display:block;
    position:absolute;
    top:-10px;
    left:12px;
    background:#4CAF50;
    color:#fff;
    font-size:13px;
    font-weight:700;
    padding:3px 10px;
    border-radius:10px;
    letter-spacing:0.3px;
}
@keyframes rv_pulse{
    0%,100%{box-shadow:0 0 0 rgba(76,175,80,0);}
    50%{box-shadow:0 0 18px rgba(76,175,80,0.45);}
}
/* ===== [v1.75] PC 후기 카드 — 시안 A 가로 헤더형 ===== */
/* 스코프: #id_board_review 하위 .rv_card_pc / .review.rv_card_pc */
/* [v1.82] 상품영역 폰트 정책 = Pretendard (후기 카드 스코프 한정, 색·구조 유지) */
#id_board_review .review.rv_card_pc,
#id_board_review .review.rv_card_pc * {
  font-family: 'Pretendard', 'Noto Sans KR', 'Malgun Gothic', sans-serif;
  letter-spacing: -0.01em;
}
#id_board_review .review.rv_card_pc {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-top: none;
  padding: 0;
  display: block;
  overflow: visible;
  transition: background 0.15s;
}
#id_board_review .review.rv_card_pc:first-of-type {
  border-top: 1px solid #e2e8f0;
  border-radius: 12px 12px 0 0;
}
#id_board_review .review.rv_card_pc:last-of-type {
  border-radius: 0 0 12px 12px;
}
#id_board_review .review.rv_card_pc:only-of-type {
  border-top: 1px solid #e2e8f0;
  border-radius: 12px;
}
#id_board_review .review.rv_card_pc:hover {
  background: #fafafa;
}
/* ----- 헤더 1행: 풀폭 flex space-between (dd.rv_pc_head) ----- */
#id_board_review .rv_pc_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 20px 10px;
  margin: 0;
}
/* 좌측 묶음: 아바타 + 이름/소속/날짜 */
#id_board_review .rv_pc_head_l {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
#id_board_review .rv_pc_head_info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

/* 우측 묶음: 별점 + 배지 + 추천버튼 */
#id_board_review .rv_pc_head_r {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}

/* 아바타 */
#id_board_review .rv_avatar_pc {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #f3f4f6;
  color: #4b5563;
  font-size: 15px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border: 1px solid #e5e7eb;
}
/* 작성자 이름 */
#id_board_review .rv_author_name_pc {
  font-size: 14px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.3;
  display: flex;
  align-items: center;
  gap: 6px;
}
/* 소속 · 날짜 (회색 작게) */
#id_board_review .rv_pc_sub {
  font-size: 12px;
  color: #64748b;
  font-weight: 400;
}
/* 별점 */
#id_board_review .rv_stars_pc {
  display: flex;
  gap: 1px;
}
#id_board_review .rv_stars_pc .rsp {
  font-size: 15px;
  color: #e2e8f0;
}
#id_board_review .rv_stars_pc .rsp.rsp_full {
  color: #c8a24a;
}
/* 배지 묶음 */
#id_board_review .rv_pc_badges {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  align-items: center;
  justify-content: flex-end;
}
/* 배지 공통 */
#id_board_review .rv_badge {
  display: inline-flex;
  align-items: center;
  font-size: 11.5px;
  font-weight: 600;
  padding: 2px 9px;
  border-radius: 99px;
  white-space: nowrap;
}
#id_board_review .rv_badge_recommend { background: #dcfce7; color: #15803d; border: 1px solid #bbf7d0; }
#id_board_review .rv_badge_regret    { background: #fff7ed; color: #ea580c; border: 1px solid #fed7aa; }
#id_board_review .rv_badge_neutral   { background: #f1f5f9; color: #64748b; border: 1px solid #e2e8f0; }
#id_board_review .rv_badge_q_good    { background: #eff6ff; color: #2563eb; border: 1px solid #bfdbfe; }
#id_board_review .rv_badge_q_normal  { background: #f8fafc; color: #64748b; border: 1px solid #e2e8f0; }
#id_board_review .rv_badge_q_bad     { background: #fff1f2; color: #be123c; border: 1px solid #fecdd3; }

/* ----- 본문 풀폭 (dd.rv_pc_body) ----- */
#id_board_review .rv_pc_body {
  font-size: 16px;
  line-height: 1.7;
  color: #1f2937;
  word-break: keep-all;
  padding: 0 20px 12px;
  margin: 0;
}

/* ----- 미디어 (dd.rv_pc_media) ----- */
#id_board_review .rv_pc_media {
  padding: 0 20px 10px;
  margin: 0;
}
/* PC 사진 그리드 */
#id_board_review .rv_pc_photo_grid {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 4px;
}
#id_board_review .rv_pc_photo_item {
  position: relative;
  width: 68px;
  height: 68px;
  background: #e2e8f0;
  border-radius: 8px;
  overflow: hidden;
  cursor: pointer;
  border: 1px solid #cbd5e1;
  padding: 0;
  flex-shrink: 0;
  transition: border-color 0.15s;
}
#id_board_review .rv_pc_photo_item:hover {
  border-color: #15803d;
}
#id_board_review .rv_pc_photo_item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: opacity .15s;
}
#id_board_review .rv_pc_photo_item:hover img {
  opacity: .85;
}
/* 영상 */
#id_board_review .rv_video_pc {
  width: 200px;
  max-width: 100%;
  display: block;
  background: #000;
  border-radius: 8px;
  margin-top: 4px;
}

/* ----- 두레지기 답글 (dd.rv_pc_dure_reply_wrap > div.rv_dure_reply) ----- */
#id_board_review .rv_pc_dure_reply_wrap {
  padding: 0 20px 14px;
  margin: 0;
}
#id_board_review .rv_dure_reply {
  border-left: 3px solid #15803d;
  background: #f3f4f6;
  border-radius: 0 10px 10px 0;
  padding: 12px 16px;
}
#id_board_review .rv_dure_reply .rv_reply_header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 5px;
}
#id_board_review .rv_dure_reply .rv_reply_badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: #15803d;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  border-radius: 4px;
  padding: 2px 7px;
}
#id_board_review .rv_dure_reply .rv_reply_date {
  font-size: 12px;
  color: #64748b;
}
#id_board_review .rv_dure_reply .rv_reply_text {
  font-size: 15px;
  color: #4b5563;
  line-height: 1.7;
}

/* ============================================================
   [v2 리뉴얼] PC 후기 요약 헤더 — review_pc.html 시안 반영
   셀렉터: .review_summary_wrap (detail_content2 내부)
   ============================================================ */
.product_detail_content .detail_content2 .review_summary_wrap {
  display: flex;
  align-items: center;
  gap: 32px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 28px 32px;
  margin-bottom: 20px;
  box-shadow: 0 1px 4px rgba(0,0,0,.06);
}
/* 좌: 평균 점수 */
.product_detail_content .detail_content2 .review_summary_wrap .rsw_score {
  text-align: center;
  flex-shrink: 0;
  min-width: 90px;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_big_num {
  font-size: 52px;
  font-weight: 700;
  color: #15803d;
  line-height: 1;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_out_of {
  font-size: 15px;
  color: #94a3b8;
  margin-top: 2px;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_stars {
  display: flex;
  gap: 3px;
  justify-content: center;
  margin-top: 8px;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_star {
  font-size: 20px;
  color: #e2e8f0;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_star_full {
  color: #c8a24a;
}
/* 구분선 */
.product_detail_content .detail_content2 .review_summary_wrap .rsw_divider {
  width: 1px;
  height: 80px;
  background: #e2e8f0;
  flex-shrink: 0;
}
/* 중: 추천/아쉬움 */
.product_detail_content .detail_content2 .review_summary_wrap .rsw_counts {
  flex: 1;
  min-width: 0;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_count_row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_count_row:last-child {
  margin-bottom: 0;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_badge {
  font-size: 13px;
  font-weight: 600;
  padding: 4px 12px;
  border-radius: 99px;
  white-space: nowrap;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_badge_recommend {
  background: #dcfce7;
  color: #15803d;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_badge_regret {
  background: #f1f5f9;
  color: #64748b;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_count_label {
  font-size: 14px;
  color: #475569;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_count_num {
  font-size: 14px;
  font-weight: 700;
  color: #0f172a;
  margin-left: auto;
  white-space: nowrap;
}
/* 우: 전체 후기 + 자세히보기 + 그래프 */
.product_detail_content .detail_content2 .review_summary_wrap .rsw_right {
  flex-shrink: 0;
  text-align: right;
  min-width: 160px;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_total {
  margin-bottom: 12px;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_total_num {
  font-size: 28px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_total_label {
  font-size: 13px;
  color: #94a3b8;
  margin-top: 2px;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_btn_more {
  display: inline-block;
  font-size: 13px;
  color: #15803d;
  font-weight: 600;
  text-decoration: none;
  margin-bottom: 10px;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_btn_more:hover {
  text-decoration: underline;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_graph {
  text-align: left;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_graph_content {
  display: flex;
  align-items: center;
  gap: 8px;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_graph_title {
  font-size: 13px;
  color: #828284;
  white-space: nowrap;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_bar_wrap {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 1;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_bar_back {
  flex: 1;
  height: 8px;
  background: #f4f4f4;
  border-radius: 99px;
  position: relative;
  overflow: hidden;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_bar_in {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  background: #3d6041;
  border-radius: 99px;
}
.product_detail_content .detail_content2 .review_summary_wrap .rsw_bar_value {
  font-size: 13px;
  color: #475569;
  white-space: nowrap;
}

/* [v2] 리뷰 .th 헤더 숨김 — 카드형 후기에서 표 헤더 불필요. QnA .th는 유지 */
.product_detail_content .detail_content2 .detail_review_table .rv_table_th_hidden {
  display: none;
}

/* ===== 고객분류 (PC) ===== */
/* 아바타 자리에 분류 아이콘(원형 배지 SVG) */
#id_board_review .rv_avatar_pc.rv_avatar_icon {
  background: transparent;
  border: 0;
  overflow: visible;
}
#id_board_review .rv_gclass_av_img { width: 100%; height: 100%; display: block; border-radius: 50%; }
/* 이름 옆 분류 라벨 칩 (텍스트) */
#id_board_review .rv_gclass_pc {
  display: inline-block;
  vertical-align: middle;
  background: #f3f4f6;
  border: 1px solid #e5e7eb;
  border-radius: 99px;
  padding: 1px 9px;
  margin-right: 6px;
  font-size: 12px;
  font-weight: 700;
  color: #4b5563;
  white-space: nowrap;
  line-height: 1.5;
}
/* [v2.3] PC 고객분류 배지 — 코드별 색상 (id 스코프 동일 특이도) */
#id_board_review .rv_gc_03 { background:#00652c; border-color:#00652c; color:#fff; }   /* 조합원 */
#id_board_review .rv_gc_04 { background:#fff; border-color:#0d9488; color:#0d9488; }   /* 단체 */
#id_board_review .rv_gc_05 { background:#fff; border-color:#f97316; color:#f97316; }   /* 어린이집 */
#id_board_review .rv_gc_30 { background:#fff; border-color:#7c3aed; color:#7c3aed; }   /* 바우처 */

/* ===== [v1.75] 추천 버튼 — rv_pc_head_r 안 ===== */
#id_board_review .rv_pc_like_wrap {
  flex-shrink: 0;
}
.rv_like_btn {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px 12px;
  border: 1px solid #ccc;
  border-radius: 20px;
  background: #fff;
  cursor: pointer;
  font-size: 13px;
  color: #888;
  min-height: 30px;
}
.rv_like_btn .ic {
  font-size: 14px;
  color: #bbb;
}
.rv_like_btn.on {
  border-color: #e85555;
  background: #fff5f5;
}
.rv_like_btn.on .ic {
  color: #e85555;
}
.rv_like_btn .cnt {
  font-size: 13px;
  color: #555;
}

/* ===== [v1.73] BEST 배지 (PC) — 카드 상단 풀폭 ===== */
.rv_pc_best_badge_wrap {
  padding: 12px 22px 0;
}
.rv_best_badge {
  display: inline-block;
  padding: 4px 12px;
  background: #00652c;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  border-radius: 99px;
  letter-spacing: 0.2px;
}
/* BEST 카드 (PC) — 금색 prestige 톤(그룹헤더+순위배지로 구분) */
#id_board_review .review.rv_card_best {
  background: #fcf8ef;
  border: 1px solid #efe6d2;
  border-radius: 14px;
  box-shadow: none;
}
/* 베스트 상단바(PC): 순위배지 + ♥금색칩 */
#id_board_review .rv_best_topbar_pc {
  display: flex; align-items: center; justify-content: flex-end;
  padding: 14px 20px 0; margin: 0;
}

/* [v2.3] PC 후기 본인글 수정/삭제 버튼 (카드 하단 우측) */
#id_board_review .rv_pc_owner_wrap { padding: 0 20px 14px; margin: 0; }
#id_board_review .rv_pc_owner_wrap .rv_owner_btns { display: flex; justify-content: flex-end; gap: 8px; }
#id_board_review .rv_pc_owner_wrap .rv_owner_btn { padding: 6px 14px; font-size: 13px; font-weight: 600; color: #6b7280; background: #fff; border: 1px solid #e5e7eb; border-radius: 6px; cursor: pointer; line-height: 1.2; }
#id_board_review .rv_pc_owner_wrap .rv_owner_btn.danger { color: #9b5b5b; border-color: #e3cfcf; }
#id_board_review .rv_pc_owner_wrap .rv_owner_btn:hover { background: #f3f4f6; }

/* [v1.71] 후기 페이저 재디자인 — #id_listPage_review 전용(타 게시판 무영향) */
#id_listPage_review { text-align:center; font-size:0; margin-top:34px; }
#id_listPage_review .prev,
#id_listPage_review .next {
  display:inline-block; vertical-align:middle; height:40px; line-height:38px; padding:0 16px;
  margin:0 5px; border:1px solid #d1d5db; border-radius:9px; background:#fff;
  font-size:14px; color:#475569; font-weight:600; cursor:pointer; transition:all .12s;
}
#id_listPage_review .prev:hover,
#id_listPage_review .next:hover { border-color:#15803d; color:#15803d; background:#f0fdf4; }
#id_listPage_review ol { display:inline-block; vertical-align:middle; margin:0 5px; padding:0; list-style:none; font-size:0; }
#id_listPage_review ol li { display:inline-block; margin:0 3px; }
#id_listPage_review ol li a {
  display:inline-block; min-width:40px; height:40px; line-height:40px; padding:0 7px;
  border:1px solid #e5e7eb; border-radius:9px; background:#fff;
  font-size:14px; color:#64748b; font-weight:700; text-align:center; cursor:pointer; transition:all .12s;
}
#id_listPage_review ol li a:hover { border-color:#15803d; color:#15803d; background:#f0fdf4; }
#id_listPage_review ol li.curpage a { background:#15803d; border-color:#15803d; color:#fff; }
/* ===== [REVIEW-DELTA END shop] ===== */

/* ===== [PC-REVIEW-WRITE END] ===== */


/* ===== 모바일 메인 후기 — 커버스토리 세로형 rvmo_* (2026-07-06, A안 변형 확정) ===== */
.rvmo_sec{background:#f4f8f3;padding:22px 14px 26px}
.rvmo_mast{text-align:center;margin-bottom:14px}
.rvmo_mast .eb{font-size:10px;letter-spacing:2.5px;font-weight:800;color:#5f8253}
.rvmo_mast h3{font-family:'MaruBuri',serif;font-size:22px;font-weight:700;color:#2f3a2c;margin-top:3px}
.rvmo_mast h3 b{color:#3d6041}
.rvmo_mast .sub{font-size:13.5px;color:#6d7268;margin-top:4px}
.rvmo_cover{background:#fff;border-radius:16px;overflow:hidden;border:1px solid #e4e8dc;box-shadow:0 6px 18px rgba(61,96,65,.10);position:relative}
.rvmo_cvtag{position:absolute;top:12px;left:12px;z-index:2;font-size:11px;font-weight:800;color:#3a2700;background:#f8a31e;border-radius:12px;padding:3px 10px}
.rvmo_media{position:relative;display:block;width:100%;height:210px;padding:0;border:none;background:#eef1e8;cursor:pointer}
.rvmo_media img{width:100%;height:100%;object-fit:cover;display:block}
.rvmo_vb{position:absolute;right:10px;top:10px;font-size:11px;color:#fff;background:rgba(0,0,0,.5);border-radius:4px;padding:2px 8px}
.rvmo_vp{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;background:rgba(0,0,0,.42);border:2px solid #fff}
.rvmo_vp::after{content:'';position:absolute;top:50%;left:56%;transform:translate(-50%,-50%);border-left:16px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent}
.rvmo_gtag{position:absolute;left:10px;bottom:10px;font-size:10.5px;color:#fff;background:rgba(61,96,65,.85);border-radius:4px;padding:2px 8px}
.rvmo_pcnt{position:absolute;right:10px;bottom:10px;font-size:10.5px;color:#fff;background:rgba(0,0,0,.5);border-radius:4px;padding:2px 8px}
.rvmo_cvbody{padding:15px 16px 14px;cursor:pointer}
/* 2026-07-15 본문 전체 노출로 클립 해제(기존 max-height:153px/5줄 제거) — 드롭캡은 유지 */
.rvmo_quote{font-family:'MaruBuri',serif;font-size:17px;line-height:1.8;color:#2f322b;word-break:keep-all;overflow-wrap:break-word}
.rvmo_quote::first-letter{font-size:32px;font-weight:700;color:#3d6041;float:left;line-height:1.05;padding:2px 7px 0 0}
.rvmo_sign{display:flex;align-items:center;justify-content:space-between;margin-top:11px;gap:8px}
.rvmo_signl{font-size:14px;color:#6d7268;min-width:0}
.rvmo_signl b{color:#2c2c2c;font-size:15px;font-weight:800}
.rvmo_like{flex:none}
.rvmo_replyprev{display:flex;gap:7px;align-items:flex-start;margin-top:10px;background:#f4f8f3;border-left:3px solid #3d6041;border-radius:0 8px 8px 0;padding:8px 10px}
.rvmo_replyprev .who{flex:none;font-size:13px;font-weight:800;color:#3d6041;padding-top:1px}
.rvmo_replyprev .txt{font-size:14px;color:#454a41;line-height:1.6;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
/* 2026-07-10 두레지기(관리자) 댓글 있음 표시 뱃지 */
.rvmo_replytag{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:800;color:#3d6041;background:#e9f2e7;border:1px solid #cfe0cb;border-radius:999px;padding:2px 9px 2px 7px;margin-left:5px;vertical-align:middle;white-space:nowrap;line-height:1.5}
.rvmo_replytag em{font-style:normal;font-size:11px;line-height:1}
/* 2026-07-10 다중 첨부 썸네일 스트립(이름 하단) */
.rvmo_files{display:flex;gap:8px;margin-top:11px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}
.rvmo_files::-webkit-scrollbar{display:none}
.rvmo_fthumb{flex:0 0 auto;position:relative;width:62px;height:62px;border-radius:10px;overflow:hidden;border:1px solid #e2e0d6;background:#f4f4f2;padding:0;cursor:pointer}
.rvmo_fthumb img{width:100%;height:100%;object-fit:cover;display:block}
.rvmo_fplay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:22px;height:22px;border-radius:50%;background:rgba(0,0,0,.55);pointer-events:none}
.rvmo_fplay::after{content:"";position:absolute;top:50%;left:54%;transform:translate(-50%,-50%);border-style:solid;border-width:5px 0 5px 8px;border-color:transparent transparent transparent #fff}
.rvmo_files--row{margin-top:8px}
.rvmo_files--row .rvmo_fthumb{width:46px;height:46px;border-radius:8px}
.rvmo_files--row .rvmo_fplay{width:18px;height:18px}
.rvmo_files--row .rvmo_fplay::after{border-width:4px 0 4px 6px}
.rvmo_prod{display:flex;align-items:center;gap:10px;margin:12px -16px -14px;padding:11px 16px;background:#faf8f2;border-top:1px solid #eee9db;cursor:default}
.rvmo_prod .pim{width:46px;height:46px;border-radius:10px;flex:none;border:1px solid #e5dfd0;object-fit:cover}
.rvmo_prod .pcol{min-width:0;flex:1;cursor:pointer}
.rvmo_prod .pnm{font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#2c2c2c}
.rvmo_prod .ppr{font-size:14px;font-weight:900;color:#3d6041;margin-top:1px}
.rvmo_cart{flex:none;height:42px;border-radius:21px;border:none;background:#f8a31e;color:#3a2700;font-weight:800;font-size:14px;padding:0 16px;box-shadow:0 2px 6px rgba(248,163,30,.35);font-family:inherit;cursor:pointer}
.rvmo_rest{margin-top:12px;background:#fff;border:1px solid #e7eadf;border-radius:14px;overflow:hidden}
.rvmo_row{display:flex;gap:11px;padding:13px 14px;border-bottom:1px solid #f0f2ea;align-items:flex-start;cursor:pointer}
.rvmo_row:last-child{border-bottom:none}
.rvmo_row.rvmo_hide{display:none}
.rvmo_thumb{width:64px;height:64px;border-radius:10px;flex:none;position:relative;overflow:hidden;background:#eef1e8}
.rvmo_thumb img{width:100%;height:100%;object-fit:cover;display:block}
.rvmo_thumb .tc{position:absolute;right:4px;bottom:4px;font-size:10.5px;color:#fff;background:rgba(0,0,0,.5);border-radius:3px;padding:1px 5px}
.rvmo_col{min-width:0;flex:1}
.rvmo_rq{font-family:'MaruBuri',serif;font-size:16px;line-height:1.7;color:#33362f;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:keep-all}
.rvmo_rs{font-size:14px;color:#6d7268;margin-top:6px}
.rvmo_rs b{color:#2c2c2c;font-size:14.5px}
.rvmo_rw{display:flex;align-items:center;gap:8px;margin-top:7px;flex-wrap:wrap}
.rvmo_rw .lk{font-size:13px;color:#c05a2e;order:2;margin-left:auto;flex:none}
.rvmo_buy{font-size:14px;font-weight:800;color:#3d6041;border:1px solid #cfe0c8;border-radius:19px;padding:9px 14px;background:#fff;font-family:inherit;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}
.rvmo_all{display:block;width:100%;text-align:center;margin-top:12px;font-size:15px;font-weight:800;color:#3d6041;background:#fff;border:1.5px solid #3d6041;border-radius:24px;padding:12px;font-family:inherit;cursor:pointer}

/* ============================================================
 * [v4.2 2026-07-08] 후기 카드 정리
 * - 본문 하단 서명(rvm_sign "— 이름, 단협") 제거: 헤더에 이미 이름·소속 노출되어 2번 노출됨
 * - 본문 1줄 더 노출(PC 사진없음 카드)
 * - PC 우하단 원형 생활재 썸네일(rvm_fill_img) 제거 (하단 상품 미니카드와 중복)
 * ============================================================ */
.main_section_review .rvm_sign{ display:none; }
@media (min-width:1024px){
  /* 우측하단 원형 생활재 썸네일 = 흐린 배경 워터마크 (카드 기준 고정 → 글 길이 무관 일관 노출) */
  .main_section_review .rvm_main_card.rvm_card_noimg{ position:relative; overflow:hidden; }
  .main_section_review .rvm_card_noimg .rvm_top{ overflow:visible; }
  .main_section_review .rvm_card_noimg .rvm_fill{ position:static; overflow:visible; }
  .main_section_review .rvm_card_noimg .rvm_fill_img{
    display:block; position:absolute; right:-14px; bottom:70px;
    width:140px; height:140px; border-radius:50%; object-fit:cover;
    opacity:0.18; z-index:0; pointer-events:none;
    border:none; box-shadow:none; margin:0; align-self:auto; order:0;
  }
  .main_section_review .rvm_card_noimg .rvm_fill_col{ position:relative; z-index:1; }
  .main_section_review .rvm_card_noimg .rvm_fill::after{ display:none; }
  .main_section_review .rvm_card_noimg .rvm_fill_quote{ max-height:165px; }
  /* 상품 미니카드는 워터마크 위에 또렷하게 */
  .main_section_review .rvm_card_noimg .rvm_product{ position:relative; z-index:1; }
}
/* 2026-07-16 QA F: 좁은 뷰포트에서 데스크톱 .inner(1140px 고정) 침투 방어 — 후기 섹션 스코프 한정.
   실모바일 뷰(reviewMainMo)는 .inner 자체가 없어 무영향, PC 템플릿이 좁은 창에서 렌더될 때 제목 실종 방지 */
@media (max-width: 1160px){
  .main_section_review .inner{ width: 100%; max-width: 1140px; padding: 0 16px; box-sizing: border-box; }
}

/* ============================================================
 * [v5.2 2026-07-22] PC 메인 후기 — 텍스트 중심 재편(요청)
 *   ① 드롭캡(첫 글자 크게) → 보통 크기
 *   ② 사진/영상 노출 최소화(히어로·썸네일 축소)
 *   ③ 본문 노출 확대(글씨가 많이 보이도록) — 카드 400px 고정 안에서 미디어 줄인 만큼 글 확장
 *   롤백 = 이 블록 제거
 * ============================================================ */
@media (min-width:1024px){
  /* ① 드롭캡 → 보통 크기(장식용 첫글자 확대 해제) */
  .main_section_review .rvm_fill_quote::first-letter,
  .main_section_review .rvm_body::first-letter,
  .main_section_review .rvm_ph_quote::first-letter{
    font-size:1em; font-weight:inherit; color:inherit; float:none; line-height:inherit; padding:0;
  }
  /* ③ 일반 카드 본문 더 많이 노출 (max-height 87 → 168 ≈ +3줄) */
  .main_section_review .rvm_body{ max-height:168px; }
  /* ③ 사진 없는 매거진 카드 인용 더 길게 (드롭캡 제거로 겹침 위험 없음) */
  .main_section_review .rvm_card_noimg .rvm_fill_quote{
    -webkit-line-clamp:unset; line-height:31px; max-height:217px; font-size:16.5px;
  }
  /* ② 사진 2장+ 썸네일 축소(글 우선): 84 → 62 */
  .main_section_review .rvm_photo{ width:62px; height:62px; }
  /* ② 화보형(사진 1장) 히어로 축소: 186 → 116 + ③ 인용 확대(52 → 150) */
  .main_section_review .rvm_ph_hero{ height:116px; }
  .main_section_review .rvm_ph_quote{ max-height:150px; line-height:27px; }
  /* ② 영상 히어로 = 텍스트 영역 키워 글 노출 확대: 본문 2줄 → 5줄 + 스크림 확대 */
  .main_section_review .rvm_hero_overlay{ padding-top:88px; background:linear-gradient(to top, rgba(0,0,0,0.92) 40%, rgba(0,0,0,0)); }
  .main_section_review .rvm_hero_body{
    -webkit-line-clamp:5; font-size:15.5px; line-height:1.62;
  }
  .main_section_review .rvm_hero_play{ width:52px; height:52px; }
  .main_section_review .rvm_hero_play::before{ border-left-width:15px; border-top-width:10px; border-bottom-width:10px; }
}

/* ============================================================
 * [v5.3 2026-07-22] PC 사진없는 매거진 후기 상단 여백 축소
 *   드롭캡 제거(v5.2) 후 남은 상단 과다여백(30px 패딩+52px 인용부호) 해소 → 텍스트 위로 당김
 * ============================================================ */
@media (min-width:1024px){
  .main_section_review .rvm_card_noimg .rvm_fill_quote{ padding-top:14px; }
  .main_section_review .rvm_card_noimg .rvm_fill_quote::before{ font-size:30px; top:0; }
}

/* 2026-07-24 후기 리스트카드: 본문 위 상품명(.rvmo_gnm) + 이름 앞 생협운동 연차(.rvmo_coopy) */
.rvmo_row .rvmo_gnm{ margin:0 0 3px; font-size:14px; font-weight:700; color:#3D6041; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.rvmo_rs .rvmo_coopy{ color:#3D6041; font-weight:700; }
