/* Reviews 评论评分组件样式 v3（简洁专业风，颜色变量化，支持后台主题切换与自定义主色） */
/* ---- 隔离层：抵消宿主模板样式影响，确保在任何模板下都能正常显示 ---- */
#reviews-widget,#reviews-widget *{margin:0;padding:0;box-sizing:border-box;}
#reviews-widget ul,#reviews-widget ol,#reviews-widget li{list-style:none;}
#reviews-widget a,#reviews-widget a:hover,#reviews-widget a:visited{color:inherit;text-decoration:none;}
#reviews-widget input,#reviews-widget textarea,#reviews-widget button{font-family:inherit;font-size:inherit;color:inherit;border:0;outline:0;background:none;-webkit-appearance:none;appearance:none;border-radius:0;box-shadow:none;}
#reviews-widget button{cursor:pointer;}
#reviews-widget h1,#reviews-widget h2,#reviews-widget h3,#reviews-widget h4,#reviews-widget p{font-size:inherit;font-weight:inherit;line-height:inherit;margin:0;}
/* ---- 组件变量 ---- */
#reviews-widget{--rw-primary:#ff8e3c;--rw-primary-rgb:255,142,60;--rw-secondary:#ff6347;--rw-card:#ffffff;--rw-card2:#f8f9fb;--rw-text:#1f2329;--rw-title:#111827;--rw-muted:#7d8590;--rw-sub:#aab1ba;--rw-border:#e3e6ea;--rw-line:#eef0f2;--rw-track:#edf0f2;--rw-fontsize:14px;max-width:780px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--rw-text);-webkit-font-smoothing:antialiased;transition:background .3s ease,color .3s ease;line-height:1.7;font-size:var(--rw-fontsize);}
#reviews-widget *,#reviews-widget *::before,#reviews-widget *::after{box-sizing:border-box;}
/* 字号统一跟随后台设置（--rw-fontsize），层级关系用 em 保持 */
#reviews-widget *{font-size:inherit;}
#reviews-widget .rating-title{font-size:1.21em;}
#reviews-widget .reviews-list-title{font-size:1.14em;}
#reviews-widget .score-num{font-size:3.8em;}
#reviews-widget .submit-btn{font-size:1.07em;}
#reviews-widget .emoji-item{font-size:1.5em;}
#reviews-widget .top-badge{font-size:0.79em;}
/* ---- 主体卡片 ---- */
#reviews-widget .rating-card{background:var(--rw-card);border:1px solid var(--rw-line);border-radius:14px;padding:30px 34px;box-shadow:0 1px 2px rgba(16,24,40,.04),0 10px 30px rgba(16,24,40,.05);}
/* 透明融合模式：无背景/边框/阴影，融入模板自身风格 */
#reviews-widget.mode-plain .rating-card{background:transparent;border:0;box-shadow:none;padding:0;border-radius:0;}
#reviews-widget.mode-plain .summary{border-bottom:1px solid var(--rw-line);}
#reviews-widget.mode-plain .reviews-list{margin-top:20px;padding-top:18px;border-top:1px solid var(--rw-line);}
/* 边框模式：无背景、无阴影，仅保留边框线，融入模板同时保持区块划分 */
#reviews-widget.mode-border .rating-card{background:transparent;box-shadow:none;border:1px solid var(--rw-line);border-radius:12px;}
#reviews-widget.mode-border .summary{border-bottom:1px solid var(--rw-line);}
#reviews-widget.mode-border .reviews-list{margin-top:20px;padding-top:18px;border-top:1px solid var(--rw-line);}
#reviews-widget .rating-title{font-size:17px;font-weight:600;color:var(--rw-title);margin-bottom:22px;letter-spacing:.2px;}
/* ---- 评分总览 ---- */
#reviews-widget .summary{display:flex;align-items:center;gap:34px;padding-bottom:24px;border-bottom:1px solid var(--rw-line);margin-bottom:24px;}
#reviews-widget .score-block{flex:0 0 190px;text-align:center;padding-right:34px;border-right:1px solid var(--rw-line);}
#reviews-widget .score-num{font-size:54px;font-weight:700;color:var(--rw-title);line-height:1;letter-spacing:-2px;font-family:"Helvetica Neue",Arial,sans-serif;}
#reviews-widget .score-stars{display:inline-flex;gap:3px;margin:12px 0 6px;}
#reviews-widget .score-stars svg{display:block;}
#reviews-widget .review-count{font-size:13px;color:var(--rw-muted);}
#reviews-widget .distribution{flex:1;display:flex;flex-direction:column;gap:9px;padding:4px 0;}
#reviews-widget .dist-row{display:flex;align-items:center;gap:12px;}
#reviews-widget .dist-stars{width:94px;flex-shrink:0;display:inline-flex;gap:1px;}
#reviews-widget .dist-stars svg{display:block;}
#reviews-widget .dist-bar-track{flex:1;height:6px;background:var(--rw-track);border-radius:99px;overflow:hidden;}
#reviews-widget .dist-bar-fill{height:100%;width:0;background:linear-gradient(90deg,var(--rw-primary) 0%,var(--rw-secondary) 100%);border-radius:99px;transition:width 1.1s cubic-bezier(.2,.8,.2,1);}
#reviews-widget .dist-pct{width:40px;flex-shrink:0;font-size:12px;color:var(--rw-muted);text-align:right;font-variant-numeric:tabular-nums;}
/* ---- 发表评价 ---- */
#reviews-widget .rating-input-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px;}
#reviews-widget .rating-input-label{font-size:14px;font-weight:500;color:var(--rw-text);}
#reviews-widget .input-stars{display:inline-flex;gap:2px;}
#reviews-widget .input-stars .star-btn{cursor:pointer;padding:4px;background:none;border:0;line-height:0;transition:transform .15s ease;}
#reviews-widget .input-stars .star-btn:hover{transform:scale(1.18);}
#reviews-widget .input-stars .star-btn svg{display:block;}
#reviews-widget .rating-desc{font-size:13px;color:var(--rw-primary);min-height:18px;margin-left:2px;}
#reviews-widget .nick-wrap{margin-bottom:14px;}
#reviews-widget .nick-input{width:220px;max-width:100%;padding:9px 14px;border:1px solid var(--rw-border);border-radius:8px;font-size:14px;color:var(--rw-text);outline:none;background:var(--rw-card);transition:border-color .2s ease,box-shadow .2s ease;}
#reviews-widget .nick-input::placeholder{color:var(--rw-sub);}
#reviews-widget .nick-input:focus{border-color:var(--rw-primary);box-shadow:0 0 0 3px rgba(var(--rw-primary-rgb),.12);}
#reviews-widget .comment-area{width:100%;min-height:112px;padding:13px 16px;border:1px solid var(--rw-border);border-radius:10px;font-family:inherit;font-size:14px;color:var(--rw-text);resize:vertical;outline:none;background:var(--rw-card);transition:border-color .2s ease,box-shadow .2s ease;margin-bottom:16px;line-height:1.7;}
#reviews-widget .comment-area::placeholder{color:var(--rw-sub);font-size:13px;}
#reviews-widget .comment-area:focus{border-color:var(--rw-primary);box-shadow:0 0 0 3px rgba(var(--rw-primary-rgb),.12);}
#reviews-widget .submit-row{display:flex;justify-content:space-between;align-items:center;gap:12px;}
#reviews-widget .char-count{color:var(--rw-sub);font-size:12px;}
#reviews-widget .submit-btn{padding:11px 38px;background:linear-gradient(135deg,var(--rw-primary) 0%,var(--rw-secondary) 100%);color:#fff;border:0;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.12);transition:transform .15s ease,box-shadow .2s ease,filter .2s ease;letter-spacing:1px;}
#reviews-widget .submit-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.18);}
#reviews-widget .submit-btn:active{transform:translateY(0);filter:brightness(.96);}
#reviews-widget .submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none;}
/* ---- 评论列表 ---- */
#reviews-widget .reviews-list{margin-top:28px;padding-top:24px;border-top:1px solid var(--rw-line);}
#reviews-widget .reviews-list-title{font-size:16px;font-weight:600;color:var(--rw-title);margin-bottom:6px;}
#reviews-widget .reviews-list-count{margin-left:8px;font-size:12px;font-weight:400;color:var(--rw-muted);}
/* ---- 排序 / 筛选 ---- */
#reviews-widget .filter-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--rw-line);}
#reviews-widget .filter-group{display:flex;align-items:center;gap:2px;flex-wrap:wrap;}
#reviews-widget .filter-btn{background:none;border:0;color:var(--rw-muted);font-size:13px;cursor:pointer;padding:5px 12px;border-radius:99px;transition:all .15s ease;line-height:1.4;}
#reviews-widget .filter-btn:hover{color:var(--rw-text);background:var(--rw-track);}
#reviews-widget .filter-btn.on{color:var(--rw-primary);background:rgba(var(--rw-primary-rgb),.1);font-weight:500;}
/* ---- 图片大图预览（lightbox） ---- */
.rw-lightbox{position:fixed;inset:0;z-index:999999;background:rgba(0,0,0,.88);display:none;align-items:center;justify-content:center;padding:24px;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;}
.rw-lb-wrap{position:relative;max-width:92vw;max-height:90vh;}
.rw-lb-wrap img{display:block;max-width:100%;max-height:88vh;border-radius:8px;box-shadow:0 12px 48px rgba(0,0,0,.5);}
.rw-lb-close{position:absolute;top:-14px;right:-14px;width:36px;height:36px;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;border:0;font-size:20px;line-height:1;cursor:pointer;}
.rw-lb-close:hover{background:rgba(220,50,50,.9);}
.rw-lb-prev,.rw-lb-next{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(0,0,0,.45);color:#fff;border:0;font-size:26px;line-height:1;cursor:pointer;z-index:2;}
.rw-lb-prev{left:-60px;}
.rw-lb-next{right:-60px;}
.rw-lb-prev:hover,.rw-lb-next:hover{background:rgba(0,0,0,.7);}
#reviews-widget .review-item{display:flex;gap:14px;padding:20px 0;border-bottom:1px solid var(--rw-line);animation:fadeUp .4s ease-out;flex-wrap:wrap;}
#reviews-widget .review-item.no-anim{animation:none;}
#reviews-widget .reply-item.no-anim{animation:none;}
#reviews-widget .review-item:last-child{border-bottom:0;}
#reviews-widget .avatar{flex:0 0 40px;width:40px;height:40px;border-radius:50%;overflow:hidden;color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;flex-shrink:0;}
#reviews-widget .review-body{flex:1;min-width:0;}
#reviews-widget .review-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
#reviews-widget .review-name{font-size:14px;font-weight:600;color:var(--rw-title);}
#reviews-widget .top-badge{display:inline-block;padding:1px 8px;border-radius:4px;background:linear-gradient(135deg,var(--rw-primary),var(--rw-secondary));color:#fff;font-size:11px;font-weight:500;line-height:1.6;}
#reviews-widget .review-stars{display:inline-flex;gap:1px;margin-left:2px;}
#reviews-widget .review-stars svg{display:block;}
#reviews-widget .review-time{font-size:12px;color:var(--rw-sub);margin-left:auto;}
#reviews-widget .review-content{color:var(--rw-text);font-size:14px;line-height:1.75;word-break:break-word;margin-top:6px;}
@keyframes fadeUp{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}
/* ---- 操作区：点赞/回复/删除 ---- */
#reviews-widget .review-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:10px;}
#reviews-widget .vote-btn{background:none;border:1px solid var(--rw-border);color:var(--rw-muted);font-size:12px;cursor:pointer;padding:4px 12px;border-radius:99px;transition:all .15s ease;line-height:1.4;}
#reviews-widget .vote-btn:hover{border-color:var(--rw-primary);color:var(--rw-primary);background:rgba(var(--rw-primary-rgb),.05);}
#reviews-widget .vote-btn.on{border-color:var(--rw-primary);color:var(--rw-primary);background:rgba(var(--rw-primary-rgb),.09);font-weight:500;}
#reviews-widget .vote-num{margin-left:3px;font-weight:600;font-variant-numeric:tabular-nums;}
#reviews-widget .reply-btn{background:none;border:0;color:var(--rw-primary);font-size:12px;cursor:pointer;padding:4px 8px;border-radius:6px;}
#reviews-widget .reply-btn:hover{background:var(--rw-track);}
#reviews-widget .del-btn{background:none;border:0;color:var(--rw-sub);font-size:12px;cursor:pointer;padding:4px 8px;border-radius:6px;}
#reviews-widget .del-btn:hover{color:#e5484d;background:rgba(229,72,77,.08);}
/* ---- 楼中楼回复 ---- */
#reviews-widget .review-replies{flex:0 0 100%;max-width:100%;margin-top:12px;padding-left:54px;}
#reviews-widget .reply-item{padding:12px 16px;background:var(--rw-card2);border:1px solid var(--rw-line);border-radius:10px;margin-top:10px;border-bottom:0;animation:fadeUp .4s ease-out;}
#reviews-widget .reply-item:first-of-type{margin-top:0;}
#reviews-widget .reply-item .avatar{flex:0 0 28px;width:28px;height:28px;font-size:12px;}
#reviews-widget .reply-item .review-content{font-size:13px;margin-top:4px;}
/* ---- 表单工具：表情 ---- */
#reviews-widget .form-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px;}
/* ---- 表情面板 ---- */
#reviews-widget .emoji-bar{position:relative;}
#reviews-widget .emoji-btn{padding:7px 14px;border:1px dashed var(--rw-border);color:var(--rw-muted);background:none;border-radius:8px;font-size:13px;cursor:pointer;transition:all .15s ease;}
#reviews-widget .emoji-btn:hover{border-color:var(--rw-primary);color:var(--rw-primary);background:rgba(var(--rw-primary-rgb),.05);}
#reviews-widget .emoji-panel{position:absolute;bottom:38px;left:0;z-index:20;display:none;grid-template-columns:repeat(10,32px);gap:2px;background:var(--rw-card);border:1px solid var(--rw-border);border-radius:10px;padding:8px;box-shadow:0 8px 30px rgba(0,0,0,.14);}
#reviews-widget .emoji-item{width:32px;height:32px;font-size:19px;line-height:1;cursor:pointer;background:none;border:0;border-radius:6px;transition:background .12s ease,transform .12s ease;}
#reviews-widget .emoji-item:hover{background:var(--rw-track);transform:scale(1.15);}
/* ---- 审核提示条 ---- */
#reviews-widget .ck-tip{display:flex;align-items:center;gap:8px;padding:12px 16px;background:rgba(var(--rw-primary-rgb),.08);border:1px solid rgba(var(--rw-primary-rgb),.35);border-radius:10px;color:var(--rw-text);font-size:13px;margin-bottom:16px;line-height:1.5;}
/* ---- 评论图片 ---- */
#reviews-widget .review-imgs{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
#reviews-widget .review-imgs a{display:block;width:82px;height:82px;border-radius:8px;overflow:hidden;border:1px solid var(--rw-line);transition:transform .15s ease;}
#reviews-widget .review-imgs a:hover{transform:scale(1.04);}
#reviews-widget .review-imgs img{width:100%;height:100%;object-fit:cover;display:block;}
/* ---- 图片上传（工具行内） ---- */
#reviews-widget .img-picker-btn{padding:7px 14px;border:1px dashed var(--rw-border);color:var(--rw-muted);background:none;border-radius:8px;font-size:13px;cursor:pointer;transition:all .15s ease;}
#reviews-widget .img-picker-btn:hover{border-color:var(--rw-primary);color:var(--rw-primary);background:rgba(var(--rw-primary-rgb),.05);}
#reviews-widget .img-picker-btn:disabled{opacity:.5;cursor:not-allowed;}
#reviews-widget .img-previews{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;}
#reviews-widget .img-preview{position:relative;width:64px;height:64px;border-radius:8px;overflow:hidden;border:1px solid var(--rw-line);}
#reviews-widget .img-preview img{width:100%;height:100%;object-fit:cover;display:block;}
#reviews-widget .img-del{position:absolute;top:0;right:0;width:20px;height:20px;line-height:18px;text-align:center;background:rgba(0,0,0,.55);color:#fff;border:0;font-size:13px;cursor:pointer;border-radius:0 0 0 8px;padding:0;transition:background .15s ease;}
#reviews-widget .img-del:hover{background:rgba(220,50,50,.9);}
/* ---- 登录提示 ---- */
#reviews-widget .login-tip{display:flex;align-items:center;justify-content:center;gap:10px;padding:18px;background:var(--rw-card2);border:1px dashed var(--rw-border);border-radius:10px;color:var(--rw-muted);font-size:14px;margin-bottom:20px;}
#reviews-widget .login-tip a{color:var(--rw-primary);font-weight:500;margin-left:2px;}
/* ---- 加载更多 ---- */
#reviews-widget .more-bar{text-align:center;padding:18px 0 4px;}
#reviews-widget .more-btn{padding:9px 34px;border:1px solid var(--rw-border);color:var(--rw-primary);background:none;border-radius:99px;font-size:13px;cursor:pointer;transition:all .15s ease;}
#reviews-widget .more-btn:hover{border-color:var(--rw-primary);background:rgba(var(--rw-primary-rgb),.05);}
#reviews-widget .more-end{color:var(--rw-sub);font-size:12px;text-align:center;padding:16px 0 4px;}
#reviews-widget .more-loading{color:var(--rw-sub);font-size:12px;text-align:center;padding:16px 0 4px;}
/* ---- 空/加载状态 ---- */
#reviews-widget .empty{text-align:center;color:var(--rw-sub);font-size:13px;padding:30px 0;}
#reviews-widget .loading{text-align:center;color:var(--rw-sub);font-size:13px;padding:30px 0;}
/* ---- 居中弹窗提示 ---- */
.toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(17,24,39,.92);color:#fff;padding:16px 36px;border-radius:10px;font-size:15px;z-index:999999;box-shadow:0 12px 44px rgba(0,0,0,.28);animation:toastIn .22s ease-out;max-width:84%;text-align:center;letter-spacing:.5px;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;}
@keyframes toastIn{from{opacity:0;transform:translate(-50%,-50%) scale(.9);}to{opacity:1;transform:translate(-50%,-50%) scale(1);}}
/* ---- 响应式 ---- */
@media (max-width:640px){
  #reviews-widget .rating-card{padding:20px 18px;border-radius:10px;}
  #reviews-widget .summary{flex-direction:column;gap:18px;padding-bottom:18px;margin-bottom:18px;}
  #reviews-widget .score-block{border-right:0;border-bottom:1px solid var(--rw-line);padding:0 0 18px;flex:0 0 auto;}
  #reviews-widget .dist-stars{width:80px;}
  #reviews-widget .nick-input{width:100%;}
  #reviews-widget .submit-row{flex-direction:column-reverse;align-items:stretch;gap:10px;}
  #reviews-widget .submit-btn{width:100%;}
  #reviews-widget .char-count{text-align:right;}
  #reviews-widget .review-replies{padding-left:14px;}
  #reviews-widget .review-imgs a{width:72px;height:72px;}
  #reviews-widget .emoji-panel{grid-template-columns:repeat(8,32px);left:auto;right:0;}
  .rw-lb-prev{left:-6px;}
  .rw-lb-next{right:-6px;}
  .rw-lb-close{top:-10px;right:-6px;}
}
