/* Comments, replies and likes on /contents/{id}, the report page and 我的评论. Brand #783c8a. */
.cm-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.cm{margin:32px 0 8px;padding-top:24px;border-top:1px solid var(--line,#ece8f1);color:var(--ink,#1c1426)}
.cm h2{margin:0;font-size:20px;line-height:1.4}
.cm-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-bottom:16px}
.cm-head h2 span{margin-left:6px;color:var(--ink-3,#6f6879);font-size:15px;font-weight:500}
.cm-sort{display:flex;gap:4px}
.cm-sort a{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border-radius:999px;color:var(--ink-2,#4a4256);font-size:14px;text-decoration:none}
.cm-sort a:hover{color:#783c8a}
.cm-sort a[aria-current=page]{background:#f4ecf7;color:#783c8a;font-weight:600}
.cm :is(a,button,textarea,summary):focus-visible,.cm-page :is(a,button,textarea,input,summary):focus-visible{outline:3px solid #783c8a;outline-offset:2px}
.cm-notice,.cm-error{margin:0 0 16px;padding:10px 14px;border-radius:8px;font-size:14.5px;line-height:1.6}
.cm-notice{background:#f4ecf7;color:#55286a}
.cm-error{background:#fdf0f0;color:#9b1c1c}
.cm-gate{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 20px;padding:14px 16px;border:1px dashed #d9cce0;border-radius:10px;background:#fbf9fc;color:var(--ink-2,#4a4256);font-size:14.5px;line-height:1.6}
.cm-gate p{margin:0}
.cm-gate a{color:#783c8a;font-weight:600}
.cm-form{display:grid;gap:8px;margin:0 0 24px}
.cm-form label{font-size:14px;font-weight:600}
.cm-form textarea{width:100%;min-height:96px;padding:10px 12px;border:1px solid #d6cfdd;border-radius:10px;background:#fff;color:inherit;font:inherit;font-size:15px;line-height:1.6;resize:vertical;box-sizing:border-box}
.cm-reply .cm-form textarea{min-height:72px}
.cm-form textarea:focus{border-color:#783c8a}
.cm-form-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}
.cm-hint{margin:0;color:var(--ink-3,#6f6879);font-size:13px;line-height:1.5;flex:1 1 220px}
.cm-counter{color:var(--ink-3,#6f6879);font-size:13px;font-variant-numeric:tabular-nums}
.cm-counter.is-near{color:#9b1c1c}
.cm-submit{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 20px;border:0;border-radius:999px;background:#783c8a;color:#fff;font-size:14.5px;font-weight:600;cursor:pointer}
.cm-submit:hover{background:#64307a}
.cm-list{display:grid;gap:0;margin:0;padding:0;list-style:none}
.cm-thread{padding:16px 0;border-bottom:1px solid var(--line,#ece8f1)}
.cm-thread:last-child{border-bottom:0}
.cm-item{display:grid;grid-template-columns:36px minmax(0,1fr);gap:4px 12px}
.cm-replies .cm-item{grid-template-columns:28px minmax(0,1fr)}
.cm-avatar{grid-row:span 3;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#f4ecf7;color:#783c8a;font-weight:700;font-size:15px}
.cm-replies .cm-avatar{width:28px;height:28px;font-size:13px}
.cm-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;min-width:0;font-size:13.5px}
.cm-name{color:var(--ink,#1c1426);font-weight:600;overflow-wrap:anywhere}
.cm-reply-to{color:var(--ink-3,#6f6879)}
.cm-reply-to b{color:#783c8a;font-weight:500}
.cm-state{display:inline-flex;align-items:center;padding:1px 8px;border-radius:999px;background:#fff4e0;color:#7a4b00;font-size:12px;font-weight:600}
.cm-body{margin:0;font-size:15px;line-height:1.7;white-space:pre-line;overflow-wrap:anywhere;word-break:break-word}
.cm-item.is-pending .cm-body{color:var(--ink-2,#4a4256)}
.cm-foot{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;color:var(--ink-3,#6f6879);font-size:13px}
.cm-foot form{margin:0}
/* PC: time, IP属地 and the actions share one row; ≤480px splits them into two rows (see below). */
.cm-when,.cm-acts{display:contents}
.cm-foot :is(button:not(.cm-submit),a,summary){display:inline-flex;align-items:center;gap:4px;min-height:32px;padding:0;border:0;background:none;color:var(--ink-3,#6f6879);font:inherit;font-size:13px;text-decoration:none;cursor:pointer;box-shadow:none}
.cm-foot :is(button:not(.cm-submit),a,summary):hover{color:#783c8a;background:none}
.cm-like-btn svg{width:16px;height:16px}
.cm-like-btn .i-on{display:none}
.cm-like-btn[aria-pressed=true]{color:#783c8a}
.cm-like-btn[aria-pressed=true] .i-on{display:inline}
.cm-like-btn[aria-pressed=true] .i-off{display:none}
.cm-reply{flex:0 1 auto}
.cm-reply[open]{flex-basis:100%}
/* An open reply form drops below the row, so 举报/删除 stay next to 赞 instead of trailing the form. */
.cm-foot:has(.cm-reply[open]) .cm-reply{order:1}
.cm-reply summary{list-style:none}
.cm-reply summary::-webkit-details-marker{display:none}
.cm-reply .cm-when-open,.cm-reply[open] .cm-when-closed{display:none}
.cm-reply[open] .cm-when-open{display:inline}
.cm-reply .cm-form{margin:8px 0 4px}
.cm-reply .cm-error{margin:8px 0 0}
.cm-replies{display:grid;gap:12px;margin:12px 0 0 48px;padding:12px 0 0;list-style:none;border-top:1px dashed var(--line,#ece8f1)}
.cm-more{margin:4px 0 0 48px;font-size:13.5px}
.cm-more a{display:inline-flex;align-items:center;min-height:32px;color:#783c8a;font-weight:600;text-decoration:none}
.cm-more a:hover{text-decoration:underline}
.cm-gone{margin:0;padding:8px 12px;border-radius:8px;background:#f6f5f8;color:var(--ink-3,#6f6879);font-size:14px}
.cm-empty{margin:0;padding:24px 0;color:var(--ink-3,#6f6879);text-align:center;font-size:14.5px}
.cm-pages{display:flex;justify-content:center;gap:12px;margin:16px 0 0}
.cm-pages a{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border:1px solid var(--line,#ece8f1);border-radius:999px;color:#783c8a;text-decoration:none}
.cm-pages a:hover{border-color:#783c8a}
.cm-like-error{color:#9b1c1c}
/* Like on the /watch rail */
.wt-thumb .i-on{display:none}
.wt-thumb [aria-pressed=true] .i-on{display:block}
.wt-thumb [aria-pressed=true] .i-off{display:none}
.wt-act.wt-thumb button[aria-pressed=true]{background:#783c8acc}
/* Report page and 我的评论 */
.cm-page{max-width:720px}
.cm-quote{margin:0 0 20px;padding:12px 16px;border-left:3px solid #783c8a;border-radius:0 8px 8px 0;background:#fbf9fc;font-size:15px;line-height:1.7;white-space:pre-line;overflow-wrap:anywhere}
.cm-quote footer{margin-top:6px;color:var(--ink-3,#6f6879);font-size:13px;white-space:normal}
.cm-reasons{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin:0 0 16px;padding:0;border:0}
.cm-reasons legend{margin-bottom:8px;font-weight:600}
.cm-reasons label{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid #e1d9e6;border-radius:10px;background:#fff;cursor:pointer}
.cm-reasons label:has(input:checked){border-color:#783c8a;background:#f4ecf7;color:#55286a}
.cm-reasons input{accent-color:#783c8a;width:18px;height:18px;margin:0}
.cm-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.cm-actions a{color:var(--ink-2,#4a4256)}
.cm-mine{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.cm-mine li{display:grid;gap:6px;padding:16px;border:1px solid var(--line,#ece8f1);border-radius:12px;background:#fff}
.cm-mine-head{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:13.5px;color:var(--ink-3,#6f6879)}
.cm-mine-head a{color:#783c8a;font-weight:600;overflow-wrap:anywhere}
.cm-status{display:inline-flex;padding:1px 8px;border-radius:999px;font-size:12px;font-weight:600;background:#f1eff4;color:var(--ink-2,#4a4256)}
.cm-status.is-PENDING{background:#fff4e0;color:#7a4b00}
.cm-status.is-APPROVED{background:#e8f5ec;color:#1d6b35}
.cm-status.is-REJECTED,.cm-status.is-HIDDEN{background:#fdf0f0;color:#9b1c1c}
.cm-why{margin:0;font-size:13.5px;color:#9b1c1c}
.cm-mine form{margin:0;justify-self:start}
.cm-mine form button{min-height:36px}
@media (max-width:640px){
  .cm{margin-top:24px;padding-top:20px}
  .cm-replies,.cm-more{margin-left:0}
  .cm-item{grid-template-columns:32px minmax(0,1fr);column-gap:10px}
  .cm-avatar{width:32px;height:32px}
  .cm-submit{flex:1 1 100%}
  .cm-foot{gap:2px 12px}
  .cm-foot :is(button:not(.cm-submit),a,summary){min-height:36px}
}
@media (max-width:480px){
  .cm-foot{display:block}
  .cm-when{display:flex;flex-wrap:wrap;align-items:center;gap:2px 12px;padding-top:4px}
  .cm-acts{display:flex;flex-wrap:wrap;align-items:center;gap:0 4px;margin-left:-10px}
  .cm-acts :is(button:not(.cm-submit),a,summary){min-height:44px;padding:0 10px}
  .cm-acts .cm-reply[open]{flex-basis:100%}
  .cm-acts .cm-reply .cm-form{margin-left:10px}
}
