@charset "utf-8";

/* =========================================================
  구매후기 목록
   ========================================================= */
.review-page{
  --rvl-line:#e5e5ea;
  --rvl-point:var(--point, #cd0111);
  --rvl-card-bg:#ffffff;
  --rvl-thumb-bg:#f6f7f8;
  --rvl-more-bg:#f2f3f5;
  --rvl-max:1280px;

  max-width:calc(var(--rvl-max) + 40px);
  margin:0 auto;
  padding:44px 20px 80px;
  color:var(--color-text-default);
}

/* ---- 상단배너 ---- */
.rvl-banner{margin:8px 0 14px;}
.rvl-banner__img{display:block;width:100%;height:auto;}
/* 기본(데스크탑) : PC만 노출 */
.rvl-banner__img--tab,
.rvl-banner__img--mo{display:none;}

/* ---- 후기등록 버튼 ---- */
.rvl-write{display:flex;justify-content:flex-end;margin-bottom:18px;}
.rvl-write__btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:140px;height:42px;padding:0 26px;
  font-size:.95rem;font-weight:700;color:#fff;
  background:var(--rvl-point);
  border-radius:4px;
  transition:filter .15s;
}

/* ---- 후기목록(카드형) ---- */
.rvl-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;list-style:none;margin:0;padding:0;}
.rvl-item{background:var(--rvl-card-bg);border:1px solid var(--rvl-line);border-radius:6px;transition:border-color .15s,box-shadow .15s;}
.rvl-item:hover{border-color:#d5d7dc;box-shadow:0 4px 12px rgba(0,0,0,.04);}
/* 카드 전체 링크 */
.rvl-item__link{display:flex;align-items:flex-start;gap:20px;padding:22px;color:inherit;}
.rvl-item__link:hover .rvl-item__text{color:var(--color-text-sub);}
/* 썸네일 */
.rvl-item__thumb{flex:0 0 auto;display:block;width:150px;height:150px;background:var(--rvl-thumb-bg);border-radius:4px;overflow:hidden;}
.rvl-item__thumb img{width:100%;height:100%;object-fit:contain;display:block;}
/* 본문 */
.rvl-item__body{display:block;min-width:0;flex:1;padding-top:4px;}
.rvl-item__writer{display:block;font-size:.92rem;font-weight:700;color:var(--color-text-default);margin-bottom:4px;}
.rvl-item__date{display:block;font-size:.8rem;color:var(--color-text-placeholder);font-family:'Roboto',sans-serif;margin-bottom:14px;}
.rvl-item__text{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;font-size:.9rem;line-height:1.7;color:var(--color-text-sub);word-break:break-all;}

.rvl-item--empty{padding: 10px;border: unset;}

/* ---- 더보기(모바일 전용) : 기본 숨김 ---- */
.rvl-more-wrap{display:none;margin-top:14px;}
.rvl-more{width:100%;height:46px;font-size:.95rem;font-weight:600;color:var(--color-text-default);background:#fff;border:1px solid var(--btn-line-default);border-radius:4px;cursor:pointer;transition:filter .15s;}

/* ---- 반응형---- */
@media (max-width:1024px){
  .review-page{padding:36px 20px 64px;}
  /* 배너 : 태블릿용만 노출 */
  .rvl-banner__img--pc{display:none;}
  .rvl-banner__img--tab{display:block;}
  .rvl-list{grid-template-columns:1fr;gap:14px;}
  .rvl-item__link{padding:20px;gap:18px;}
  .rvl-item__thumb{width:140px;height:140px;}
  .rvl-item__text{-webkit-line-clamp:3;}
}

@media (max-width:767px){
  .review-page{padding:20px 16px 35px;}
  /* 배너 : 모바일용만 노출 */
  .rvl-banner__img--tab{display:none;}
  .rvl-banner__img--mo{display:block;}
  .rvl-banner{margin:6px 0 10px;}
  /* 후기등록 : 전체폭 */
  .rvl-write{margin-bottom:12px;}
  .rvl-write__btn{width:100%;min-width:0;height:44px;}
  .rvl-list{gap:10px;}
  .rvl-item{border-radius:4px;}
  .rvl-item:hover{box-shadow:none;}
  .rvl-item__link{padding:14px;gap:14px;}
  .rvl-item__thumb{width:96px;height:96px;}
  .rvl-item__body{padding-top:2px;}
  .rvl-item__writer{font-size:.86rem;}
  .rvl-item__date{font-size:.74rem;margin-bottom:8px;}
  .rvl-item__text{font-size:.84rem;line-height:1.6;-webkit-line-clamp:3;}
  /* 더보기 표시 / 페이지네이션 숨김 */
  .rvl-more-wrap{display:block;}
  .review-page .pagination{display:none;}
}

@media (max-width:380px){
  .rvl-item__thumb{width:84px;height:84px;}
  .rvl-item__text{font-size:.8rem;}
}

/* ---- 타이틀 ---- */
.review-page__title{text-align:center;font-size:1.9rem;font-weight:500;letter-spacing:-0.03em;color:var(--color-text-default);font-family:'NoonnuBasicGothic', sans-serif;margin-bottom:30px;}
@media (max-width:1024px){
  .review-page__title{font-size:1.6rem;margin-bottom:24px;}
}
@media (max-width:767px){
  .review-page__title{font-size:1.4rem;margin-bottom:18px;}
}

/* =========================================================
   구매후기 글읽기
   ========================================================= */
.rvr{
  --rvr-line:#e5e5ea;
  --rvr-dash:#d0d3d8;
  --rvr-reply-bg:#f7f8fa;
  border-top:2px solid var(--color-text-default);
}

/* 메타 (작성자 / 작성일 / 조회수) */
.rvr__meta{display:flex;flex-wrap:wrap;align-items:center;gap:28px;padding:18px 8px;border-bottom:1px solid var(--rvr-dash);font-size:.9rem;color:var(--color-text-sub);}
.rvr__meta b{color:var(--color-text-default);font-weight:700;}
.rvr__date b,.rvr__views b{font-family:'Roboto',sans-serif;font-weight:600;}

/* 본문 */
.rvr__content{padding:34px 8px 40px;min-height:180px;border-bottom:1px solid var(--rvr-line);}
.rvr__text{font-size:.96rem;line-height:1.85;color:var(--color-text-default);word-break:break-word;}

/* 첨부 이미지 (세로 나열) */
.rvr__photos{display:flex;flex-direction:column;gap:14px;margin-top:26px;}
.rvr__photo{display:block;width:100%;max-width:420px;height:auto;}

/* 답변 */
.rvr__reply{padding:24px 30px;background:var(--rvr-reply-bg);}
.rvr__reply-title{margin-bottom:12px;font-size:1.05rem;font-weight:700;color:var(--color-text-default);}
.rvr__reply-text{font-size:.96rem;line-height:1.8;color:var(--color-text-sub);word-break:break-word;}

/* 하단 버튼 */
.rvr-actions{display:flex;justify-content:center;margin-top:30px;}
.rvr-actions__list{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:130px;height:46px;padding:0 30px;
  font-size:.95rem;font-weight:600;color:var(--color-text-default);
  background:#fff;border:1px solid var(--btn-line-default);border-radius:4px;
  transition:border-color .15s,color .15s;
}

/* ---- 반응형 ---- */
@media (max-width:767px){
  .rvr__meta{gap:8px 20px;padding:14px 4px;font-size:.86rem;}
  .rvr__content{padding:24px 4px 30px;min-height:140px;}
  .rvr__text{font-size:.92rem;line-height:1.8;}
  .rvr__photos{margin-top:20px;}
  .rvr__photo{max-width:100%;}
  .rvr__reply{padding:20px 16px;}
  .rvr__reply-title{font-size:1rem;}
  .rvr__reply-text{font-size:.9rem;}
  .rvr-actions__list{width:100%;min-width:0;}
}