/* 交互评分 UI（叠在原站视觉上，不改主布局契约） */

.jn-rate{
  margin:1.6rem 0 0;
  padding:1.15rem 1.1rem 1rem;
  background:rgba(255,253,251,.92);
  border:1px solid var(--hairline, rgba(185,143,96,.36));
  border-radius:8px;
  box-shadow:var(--shadow-soft, 0 10px 28px -18px rgba(150,100,80,.3));
}
.jn-rate-head{display:flex;flex-wrap:wrap;gap:.4rem .9rem;align-items:baseline;margin-bottom:.75rem}
.jn-rate-title{font-size:.95rem;font-weight:600;color:var(--ink-deep,#2B211D)}
.jn-rate-stats{font-size:.78rem;color:var(--gold-ink,#7F612E);letter-spacing:.02em}
.jn-rate-stars{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.55rem}
.jn-star{
  appearance:none;border:1px solid var(--hairline,rgba(185,143,96,.36));
  background:#fff;color:var(--ink-soft,#6E5E58);
  border-radius:999px;padding:.28rem .7rem;font-size:.82rem;cursor:pointer;
  font-family:inherit;transition:background .2s,color .2s,border-color .2s;
}
.jn-star.on{background:linear-gradient(135deg,var(--peach,#F4A48C),var(--blush,#E98A86));color:#fff;border-color:transparent}
.jn-star:hover{border-color:var(--blush,#E98A86)}
.jn-rate-hint{font-size:.72rem;color:var(--ink-faint,#75645D);line-height:1.5;margin-bottom:.55rem}
.jn-rate-reasons{display:flex;flex-wrap:wrap;gap:.35rem;min-height:0;margin-bottom:.7rem}
.jn-reason{
  appearance:none;border:1px solid var(--hairline-soft,rgba(185,143,96,.2));
  background:var(--bg-cream,#FBF6F0);color:var(--ink-soft,#6E5E58);
  border-radius:6px;padding:.22rem .55rem;font-size:.74rem;cursor:pointer;font-family:inherit;
}
.jn-reason.on{background:rgba(244,164,140,.22);border-color:var(--peach,#F4A48C);color:var(--ink-deep,#2B211D)}
.jn-rate-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .8rem}
.jn-rate-submit{
  appearance:none;border:0;cursor:pointer;font-family:inherit;
  background:linear-gradient(135deg,var(--peach,#F4A48C),var(--blush,#E98A86));
  color:#fff;border-radius:6px;padding:.45rem 1rem;font-size:.84rem;
}
.jn-rate-submit:disabled{opacity:.45;cursor:not-allowed}
.jn-rate-msg{font-size:.76rem;color:var(--gold-ink,#7F612E)}

.jn-img-rate-btn{
  position:absolute;right:8px;bottom:10px;z-index:2;
  appearance:none;border:0;cursor:pointer;font-family:inherit;
  background:rgba(43,33,29,.72);color:#fff;backdrop-filter:blur(4px);
  border-radius:999px;padding:.28rem .7rem;font-size:.72rem;
}
.jn-img-rate-btn:hover{background:rgba(188,63,58,.88)}
.jn-img-rate-btn-cover{bottom:12px}

.jn-modal{position:fixed;inset:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:16px}
.jn-modal[hidden]{display:none!important}
.jn-modal-backdrop{position:absolute;inset:0;background:rgba(43,33,29,.45)}
.jn-modal-card{
  position:relative;z-index:1;width:min(480px,100%);
  background:var(--bg-warm,#FDFAF6);border-radius:10px;
  border:1px solid var(--hairline,rgba(185,143,96,.36));
  box-shadow:0 24px 60px -20px rgba(40,20,10,.45);
  padding:1rem .9rem .9rem;max-height:min(88vh,640px);overflow:auto;
}
.jn-modal-x{
  position:absolute;top:8px;right:10px;appearance:none;border:0;background:transparent;
  font-size:1.4rem;line-height:1;cursor:pointer;color:var(--ink-soft,#6E5E58);
}
.jn-modal .jn-rate{margin:0;box-shadow:none;border:0;background:transparent;padding:.4rem .2rem}

/* 顶栏入口 */
.jn-lb-link{
  display:inline-flex;align-items:center;gap:.3rem;
  font-size:.78rem;color:var(--gold-ink,#7F612E);
  padding:.25rem .55rem;border:1px solid var(--hairline,rgba(185,143,96,.36));
  border-radius:999px;margin-left:.35rem;
}
.jn-lb-link:hover{background:rgba(244,164,140,.15)}
