.my-stars {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.my-star {
    font-size: 25px;
    color: #ddd;
    cursor: pointer;
    width: 30px;
    height: 30px;
    line-height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s ease, transform 0.15s ease;
}

.my-star.active {
    color: #FFC107 !important; /* 🔥 파란색으로 변경 */
    transform: scale(1.1);
}

.my-star:active {
    transform: scale(0.9);
}

p.stars {
    display: none !important;
}

/* 전체 업로드 박스 */
.file-upload-box {
    margin: 12px 0;
    display: flex;
    align-items: center;
    gap: 12px;
}

/* 실제 파일 input 숨김 */
.file-upload-box input[type="file"] {
    display: none;
}

/* 업로드 버튼 역할 */
.file-upload-label {
    background: #f0f0f0;
    border: 1px solid #ccc;
    padding: 8px 14px;
    border-radius: 6px;
    cursor: pointer;
    color: #333;
    font-size: 14px;
    transition: 0.2s;
}

.file-upload-label:hover {
    background: #e2e2e2;
    border-color: #999;
}

/* 파일명 */
.file-upload-name {
    font-size: 14px;
    color: #666;
}

.pagination {
    text-align: center;
    margin: 20px 0;
}

.pagination .page-link,
.pagination .page-current {
    position: relative; 
    display: inline-block;
    padding: 0px 12px;
    color: #333;
    text-decoration: none;
}

/* 🔥 현재 페이지 밑에 두 줄 */
.pagination .page-current::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;                  /* 글자와 간격 */
  width: 100%;
  height: 2px;
  background-color: #464646;
}

/* hover 효과 (선택 아님) */
.pagination .page-link:hover {
  color: #000;
}

.submit_review {
    width: 100%;
}

/* ================================
   리뷰 요약 박스 전체
================================ */
.review-summary-box {
    margin-top: 10px;
    border-top: 2px solid black;
    /* background: #f8f9fc; */
    /* border-radius: 14px; */
    padding: 28px 30px;
    display: flex;
    gap: 40px;
    align-items: center;
    margin-bottom: 32px;
    /* box-shadow: 0 4px 12px rgba(0,0,0,0.05); */
    /* border: 1px solid #ececec; */
    font-family: 'Noto Sans KR', sans-serif;
}


/* ================================
   좌측: 평균 별점
================================ */
.summary-left {
    width: 180px;
    text-align: center;
}

.summary-star-big {
    font-size: 48px;
    font-weight: 700;
    color: #FFC107;
    margin-bottom: 4px;
}

.summary-stars-small span {
    font-size: 25px;
    color: #d4d4d4;
    margin-right: 2px;
}

.summary-stars-small span.on {
    color: #FFC107;
}

.summary-total {
    margin-top: 6px;
    font-size: 14px;
    color: #777;
}


/* ================================
   우측: 5점 → 1점 비율 바
================================ */
.summary-right {
    flex: 1;
}

.rating-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
}

.rating-row .label {
    width: 90px;
    font-size: 15px;
    color: #555;
}

/* 바(grey background) */
.rating-row .bar {
    background: #e5e7eb;
    height: 8px;
    border-radius: 5px;
    flex: 1;
    overflow: hidden;
}

/* 실제 채워지는 bar */
.rating-row .bar-fill {
    height: 100%;
    background: #FFC107;
    border-radius: 5px;
}

/* 오른쪽 % 숫자 */
.rating-row .percent {
    width: 38px;
    font-size: 14px;
    text-align: right;
    color: #444;
}

.review-box {
    border-top: 1px solid #e9e7e7 !important;
    margin-top: 2%;
    margin-bottom: 2%;
}

.review-hr {
    background: red !important;
}

/* 모달 기본 숨김 */
.review-modal {
    display: none;
    position: fixed;
    z-index: 9999;
    padding-top: 80px;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background: rgba(0,0,0,0.7);
    text-align: center;
}

/* 닫기 버튼 */
.review-modal-close {
    position: absolute;
    top: 20px;
    right: 35px;
    color: #fff;
    font-size: 40px;
    font-weight: bold;
    cursor: pointer;
}

.review-modal-content {
    width: 400px;      /* 🔥 원하는 고정 너비 */
    height: 400px;     /* 🔥 원하는 고정 높이 */
    object-fit: contain; /* 이미지 비율 유지하면서 박스 안에 맞춤 */
    
    display: block;
    margin: auto;
    background: #fff;
    border-radius: 6px;
    padding: 5px;
    animation: zoomIn .25s ease;
}

/* 이미지 확대 애니메이션 */
.review-modal-content {
    animation: zoomIn 0.25s ease;
}

@keyframes zoomIn {
    from { transform: scale(0.7); opacity: 0; }
    to { transform: scale(1); opacity: 1; }
}

.review-box-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.delete-review-btn {
    font-size: 12px;
    color: #888;
    text-decoration: underline;
    cursor: pointer;
}

.delete-review-btn:hover {
    color: #333;
}

.review-stars span {
    font-size: 22px;
    color: #d4d4d4; /* 기본 회색 */
}

.review-stars span.on {
    color: #FFC107; /* 등록할 때 별이랑 동일 파랑 */
}

.review-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:20px;
}

.review-title {
  font-size:18px;
  font-weight:600;
  margin-bottom:20px !important;
}

.btn-review-toggle{
  padding:8px 12px;
  background:#111111 !important;
  border-radius:3px;
  cursor:pointer;
  font-size:14px;
}

.btn-review-toggle:hover {
  background: #742CF5 !important;
}
.btn-review-toggle:focus,
.btn-review-toggle:active {
  outline: none !important;
  box-shadow: none !important;
}

.review_submit {
    background:#111111 !important;
}

.review_submit:hover {
    background: #742CF5 !important;
}

.submit_review.is-disabled{
  opacity: 0.4;
  cursor: not-allowed;
}