/* 用户评价中心 - 独立样式文件 */
#section-reviews { display: none; animation: fadeIn 0.3s; }
.reviews-summary { display:flex; align-items:center; justify-content:space-between; background:linear-gradient(135deg,#f5f8ff 0%,#ffffff 100%); border:1px solid #eef3ff; border-radius:13px; padding:11px 12px; margin-bottom:10px; }
.reviews-summary-title { font-size:15px; font-weight:900; color:#1f2937; }
.reviews-summary-sub { font-size:11px; color:#8b95a1; margin-top:3px; }
.reviews-summary-count { color:#3b6fff; font-weight:900; font-size:12px; background:#edf4ff; padding:5px 9px; border-radius:999px; }
.review-filter-bar { display:flex; gap:8px; overflow-x:auto; padding:2px 0 10px; margin-bottom:4px; -webkit-overflow-scrolling:touch; }
.review-filter-btn { flex:0 0 auto; border:1px solid #edf1f7; background:#fff; color:#64748b; border-radius:999px; padding:6px 12px; font-size:12px; font-weight:800; cursor:pointer; }
.review-filter-btn.active { background:#2563eb; border-color:#2563eb; color:#fff; box-shadow:0 6px 14px rgba(37,99,235,.18); }
.review-card { background:#fff; border:1px solid #eef1f6; border-radius:12px; padding:10px 11px; margin-bottom:8px; box-shadow:0 5px 14px rgba(15,23,42,.035); }
.review-card-top { display:flex; justify-content:space-between; gap:8px; align-items:flex-start; margin-bottom:5px; }
.review-user { font-weight:900; color:#202124; font-size:13px; }
.review-date { color:#9aa0aa; font-size:11px; margin-top:2px; }
.review-top-badge { flex-shrink:0; color:#ff7a00; background:#fff4e5; border-radius:999px; padding:2px 7px; font-size:10px; font-weight:800; }
.review-stars-line { color:#f59e0b; font-size:12px; letter-spacing:.5px; margin:4px 0; line-height:1; }
.review-product { color:#64748b; font-size:11px; background:#f8fafc; border-radius:7px; padding:5px 7px; margin-bottom:6px; line-height:1.45; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.review-content { color:#333; font-size:13px; line-height:1.55; white-space:pre-wrap; word-break:break-all; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.review-imgs { display:flex; gap:6px; flex-wrap:nowrap; margin-top:7px; overflow:hidden; }
.review-imgs img { width:52px; height:52px; object-fit:cover; border-radius:8px; border:1px solid #edf0f5; background:#f8fafc; cursor:zoom-in; flex:0 0 52px; }
.review-meta-line { display:flex; justify-content:space-between; align-items:center; color:#a0a7b2; font-size:11px; margin-top:7px; padding-top:7px; border-top:1px dashed #eef1f6; }
.review-empty { text-align:center; color:#a0a7b2; background:#f8fafc; border-radius:12px; padding:28px 12px; font-size:13px; }
.review-preview-grid{display:flex;gap:7px;flex-wrap:wrap;justify-content:center;align-items:center;margin-top:10px;overflow:hidden;}
.review-preview-item{position:relative;width:58px;height:58px;border-radius:10px;overflow:hidden;border:1px solid #edf0f5;background:#f8fafc;flex:0 0 58px;}
.review-preview-item img{width:100%;height:100%;object-fit:cover;display:block;cursor:zoom-in;}
.review-preview-remove{position:absolute;right:3px;top:3px;width:18px;height:18px;border:0;border-radius:50%;background:rgba(15,23,42,.72);color:#fff;font-size:14px;line-height:18px;padding:0;}
.jingpro-img-viewer { position:fixed !important; left:0 !important; top:0 !important; right:0 !important; bottom:0 !important; width:100vw !important; height:100vh !important; background:rgba(15,23,42,.74); z-index:100000 !important; display:none; align-items:center !important; justify-content:center !important; padding:22px; text-align:center; box-sizing:border-box; }
.jingpro-img-viewer.show { display:flex !important; align-items:center !important; justify-content:center !important; }
.jingpro-img-viewer img { display:block !important; max-width:92vw !important; max-height:86vh !important; width:auto !important; height:auto !important; object-fit:contain !important; border-radius:16px; background:#fff; box-shadow:0 18px 50px rgba(0,0,0,.36); margin:auto !important; position:static !important; transform:none !important; }
.jingpro-img-viewer-close { position:absolute; right:18px; top:18px; width:36px; height:36px; border:0; border-radius:50%; background:rgba(255,255,255,.18); color:#fff; font-size:24px; line-height:36px; cursor:pointer; z-index:2; }
body.jingpro-viewer-open { overflow:hidden !important; }
@media (max-width: 480px){
  .jingpro-img-viewer { padding:16px; }
  .jingpro-img-viewer img { max-width:94vw !important; max-height:82vh !important; border-radius:12px; }
  .jingpro-img-viewer-close { right:14px; top:14px; }
}
.review-reply-box{margin-top:8px;background:#f8fbff;border:1px solid #e8f0ff;border-radius:10px;padding:8px 9px;}
.review-reply-title{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#2563eb;font-size:12px;font-weight:900;margin-bottom:5px;}
.review-reply-title span{font-size:10px;color:#9aa0aa;font-weight:500;}
.review-reply-content{color:#334155;font-size:12px;line-height:1.55;white-space:pre-wrap;word-break:break-all;}
.review-reply-imgs{display:flex;gap:6px;flex-wrap:nowrap;margin-top:7px;overflow:hidden;}
.review-reply-imgs img{width:48px;height:48px;object-fit:cover;border-radius:8px;border:1px solid #dbeafe;background:#fff;cursor:zoom-in;flex:0 0 48px;}
/* 商家回复左对齐：图标 + 标题靠左，日期靠右 */
.review-reply-box {
    text-align: left !important;
}

.review-reply-title {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    text-align: left !important;
    width: 100% !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #2563eb !important;
    line-height: 1.4 !important;
}

.review-reply-title i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    color: #2563eb !important;
    font-size: 13px !important;
    flex: 0 0 auto !important;
}

.review-reply-title span {
    margin-left: auto !important;
    color: #9aa3af !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    text-align: right !important;
}

.review-reply-content {
    text-align: left !important;
    margin-top: 6px !important;
    color: #374151 !important;
    line-height: 1.6 !important;
}

.review-reply-imgs {
    justify-content: flex-start !important;
    text-align: left !important;
}