/* 이용 후기 목록 (2026-11-08): 전체·무료·유료 탭 + 한 줄 카드 + 번호 페이지 */
.rv-page{padding:22px 16px 40px;color:#1d1a2a}
.rv-heading h1{margin:4px 4px 18px;font-size:28px;font-weight:800;letter-spacing:-.8px;line-height:1.25;color:#1a1726}

.rv-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 0 16px;padding:5px;border-radius:14px;background:#f4f1f8}
.rv-tabs a{display:flex;align-items:center;justify-content:center;min-height:42px;border-radius:10px;color:#857a92;font-size:14px;font-weight:600;text-decoration:none}
.rv-tabs a[aria-current="page"]{background:#fff;color:#4b3561;font-weight:700;box-shadow:0 2px 8px rgba(48,33,59,.07)}
.rv-tabs a:focus-visible{outline:2px solid #9472a8;outline-offset:2px}

.rv-list{display:grid;gap:14px}
.rv-card{padding:20px 20px 18px;border:1px solid #e4e0ee;border-radius:18px;background:#fff}
.rv-card-head{display:flex;align-items:center;gap:10px;margin:0 0 12px}
.rv-avatar{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:#efebf5}
.rv-avatar img{width:22px;height:22px;object-fit:contain}
.rv-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:800;color:#1d1a2a}
.rv-date{margin-left:auto;flex:0 0 auto;font-size:13px;color:#77727f;font-variant-numeric:tabular-nums}
.rv-rating{display:flex;align-items:center;gap:8px;margin:0 0 10px}
.rv-stars{color:#f7a62b;font-size:17px;letter-spacing:1px;line-height:1}
.rv-stars-empty{color:#e3dfe8}
.rv-score{font-size:15px;font-weight:700;color:#1d1a2a;font-variant-numeric:tabular-nums}
.rv-body{margin:0 0 14px;font-size:15px;line-height:1.75;color:#24202f;white-space:pre-line;word-break:keep-all;overflow-wrap:anywhere}
.rv-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.rv-chip{display:inline-flex;align-items:center;min-height:28px;padding:0 12px;border-radius:999px;background:#efebf5;color:#5a4a6c;font-size:12px;font-weight:600}
.rv-chip.is-paid{background:#f3e9f6;color:#7b3f8a}

.rv-empty{padding:40px 16px;border:1px dashed #e0dbe8;border-radius:18px;text-align:center;color:#857a92;font-size:14px}
.rv-empty p{margin:0}

.rv-pages{display:flex;justify-content:center;align-items:center;gap:6px;margin:22px 0 0}
.rv-pages a{display:grid;place-items:center;min-width:34px;height:34px;padding:0 4px;border-radius:50%;color:#7d7887;font-size:15px;font-weight:600;text-decoration:none;font-variant-numeric:tabular-nums}
.rv-pages a[aria-current="page"]{background:#ebe5f3;color:#4b3561}
.rv-pages a.rv-page-step{color:#a39cae;font-size:20px}
.rv-pages a:focus-visible{outline:2px solid #9472a8;outline-offset:2px}

html[data-theme="dark"] .rv-heading h1,html[data-theme="dark"] .rv-name,html[data-theme="dark"] .rv-score{color:#e9e9f2}
html[data-theme="dark"] .rv-card{background:#181b29;border-color:#2c3045}
html[data-theme="dark"] .rv-body{color:#d7d8e4}
html[data-theme="dark"] .rv-tabs{background:#20243a}
html[data-theme="dark"] .rv-tabs a[aria-current="page"]{background:#2c3150;color:#e9e9f2}
html[data-theme="dark"] .rv-avatar,html[data-theme="dark"] .rv-chip{background:#262a40;color:#c9cdf0}
html[data-theme="dark"] .rv-pages a[aria-current="page"]{background:#2c3150;color:#e9e9f2}

/* ── 내 후기(/reviews?tab=mine): 후기 쓰기 · 내가 남긴 후기 ── */
.rvm-heading{margin-bottom:16px}
.rvm-heading h1{margin:6px 4px 6px}
.rvm-heading p{margin:0 4px;font-size:13px;line-height:1.6;color:#857a92}
.rvm-back{display:inline-block;margin:0 4px;font-size:13px;color:#857a92;text-decoration:none}
.rvm-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
.rvm-tabs a{gap:6px}
.rvm-tabs a span{display:inline-grid;place-items:center;min-width:22px;height:20px;padding:0 6px;border-radius:999px;background:#e9e3f1;color:#6f6080;font-size:11px;font-weight:700}
.rvm-tabs a[aria-current="page"] span{background:#4b3561;color:#fff}

.rvm-form{display:grid;gap:14px}
.rvm-step{margin:0;padding:0;border:0;min-width:0}
.rvm-step-title{display:block;margin:0 2px 4px;padding:0;font-size:15px;font-weight:800;letter-spacing:-.3px;color:#1d1a2a}
.rvm-step-help{margin:0 2px 10px;font-size:12px;color:#8a8196}

/* 이용 내역 카드 슬라이드 */
.rvm-cards{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:4px 16px 10px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.rvm-cards::-webkit-scrollbar{display:none}
.rvm-pick{position:relative;flex:0 0 72%;max-width:250px;display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:center;padding:12px;border:1.5px solid #e4e0ee;border-radius:16px;background:#fff;cursor:pointer;scroll-snap-align:start;transition:border-color .15s,box-shadow .15s}
.rvm-pick input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.rvm-pick:has(input:checked){border-color:#4b3561;box-shadow:0 6px 18px rgba(75,53,97,.14)}
.rvm-pick:has(input:focus-visible){outline:2px solid #9472a8;outline-offset:2px}
.rvm-pick-art{display:block;width:64px;height:82px;border-radius:10px;overflow:hidden;background:#f2eef7}
.rvm-pick-art img{display:block;width:100%;height:100%;object-fit:cover}
.rvm-pick-art.is-empty{display:grid;place-items:center}
.rvm-pick-art.is-empty img{width:28px;height:28px;object-fit:contain}
.rvm-pick-body{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}
.rvm-pick-body .rv-chip{min-height:22px;padding:0 9px;font-size:11px}
.rvm-pick-body strong{font-size:15px;font-weight:800;color:#1d1a2a}
.rvm-pick-summary{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.5;color:#5f566d;word-break:keep-all}
.rvm-pick-body time{font-size:11px;color:#9a93a5;font-variant-numeric:tabular-nums}
.rvm-pick-check{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1.5px solid #d9d3e3;background:#fff;color:transparent;font-size:12px;font-weight:800}
.rvm-pick:has(input:checked) .rvm-pick-check{border-color:#4b3561;background:#4b3561;color:#fff}

.rvm-edit-source{display:flex;align-items:center;gap:8px;padding:14px 16px;border:1px solid #e4e0ee;border-radius:14px;background:#fff}
.rvm-edit-source strong{font-size:15px;color:#1d1a2a}
.rvm-edit-source time{margin-left:auto;font-size:12px;color:#9a93a5}

/* 작성 패널 */
.rvm-panel{display:grid;gap:16px;padding:18px 16px;border:1px solid #e4e0ee;border-radius:18px;background:#fff}
.rvm-author{display:flex;align-items:center;gap:10px;margin:0;padding:0 0 14px;border-bottom:1px solid #f0edf4}
.rvm-author .review-author-caption{display:block;font-size:11px;color:#8a8196}
.rvm-author strong{font-size:15px;color:#1d1a2a}
.rvm-author a{margin-left:auto;font-size:12px;color:#6f6080;text-decoration:none}
.rvm-page .rvm-rating > div{gap:4px}
.rvm-page .rvm-rating label{width:40px;height:40px;border:0;border-radius:8px;background:none;color:#e1dce8}
.rvm-page .rvm-rating label > span[aria-hidden]{font-size:32px}
.rvm-page .rvm-rating label:has(input:checked),.rvm-page .rvm-rating label:has(~label input:checked){background:none;color:#f7a62b}
.rvm-page .rvm-rating .review-rating-status{margin:4px 2px 0;font-size:12px;color:#8a8196}
.rvm-page .rvm-body textarea{width:100%;box-sizing:border-box;min-height:120px;padding:12px 14px;border:1px solid #e0dbe8;border-radius:12px;background:#faf9fc;font:inherit;font-size:14px;line-height:1.7;color:#1d1a2a;resize:vertical}
.rvm-page .rvm-body textarea:focus{outline:2px solid #9472a8;outline-offset:1px;background:#fff}
.rvm-page .review-length-row{display:flex;justify-content:space-between;margin-top:6px;font-size:11px;color:#9a93a5}
.rvm-page .review-publication-note{margin:0;font-size:12px;color:#857a92}
.rvm-page .review-consent{display:flex;gap:8px;align-items:flex-start;font-size:13px;line-height:1.6;color:#2a2535}
.rvm-page .review-consent input{width:18px;height:18px;margin:2px 0 0;accent-color:#4b3561}
.rvm-page .review-privacy summary{margin-top:6px;font-size:12px;color:#8a8196;cursor:pointer}
.rvm-page .review-privacy p{font-size:12px;line-height:1.7;color:#6f6680}
.rvm-actions{display:grid;gap:8px}
.rvm-page .rvm-actions .reviews-primary{width:100%;min-height:52px;border:0;border-radius:999px;background:linear-gradient(105deg,#1d334a,#172b43);color:#fff;font-size:16px;font-weight:700;cursor:pointer}
.rvm-actions a{text-align:center;font-size:13px;color:#857a92}

.rvm-empty{display:grid;gap:8px;text-align:left}
.rvm-empty strong{color:#1d1a2a}
.rvm-empty-links{display:flex;gap:14px}
.rvm-link{display:inline-block;margin-top:6px;color:#4b3561;font-size:14px;font-weight:700;text-decoration:none}

/* 내가 남긴 후기 */
.rvm-own .rv-card{border-bottom-left-radius:0;border-bottom-right-radius:0}
.rvm-own-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 20px;border:1px solid #e4e0ee;border-top:0;border-radius:0 0 18px 18px;background:#faf9fc;font-size:13px}
.rvm-own-meta a,.rvm-own-meta summary{color:#4b3561;font-weight:600;text-decoration:none;cursor:pointer}
.rvm-own-meta .review-state{margin-right:auto;padding:3px 9px;border-radius:999px;background:#efebf5;color:#5a4a6c;font-size:11px;font-weight:700}
.rvm-own-meta .review-delete{position:relative}
.rvm-own-meta .review-delete summary{list-style:none}
.rvm-own-meta .review-delete summary::-webkit-details-marker{display:none}
.rvm-own-meta .review-delete summary::marker{content:""}
.rvm-own-meta .review-delete[open] form{position:absolute;right:0;top:26px;z-index:3;width:240px;display:grid;gap:8px;padding:12px;border:1px solid #e4e0ee;border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(30,20,40,.12);font-size:12px;line-height:1.6}
.rvm-own-meta .review-delete button{min-height:36px;border:0;border-radius:10px;background:#8a2f45;color:#fff;font-weight:700;cursor:pointer}
.rvm-own .review-guidance{margin:6px 4px 0;font-size:12px;color:#8a512a}

html[data-theme="dark"] .rvm-pick,html[data-theme="dark"] .rvm-panel,html[data-theme="dark"] .rvm-edit-source{background:#181b29;border-color:#2c3045}
html[data-theme="dark"] .rvm-pick-body strong,html[data-theme="dark"] .rvm-step-title,html[data-theme="dark"] .rvm-author strong{color:#e9e9f2}
html[data-theme="dark"] .rvm-own-meta{background:#20243a;border-color:#2c3045}
html[data-theme="dark"] .rvm-page .rvm-body textarea{background:#20243a;border-color:#2c3045;color:#e9e9f2}