.comment-anchor-button{float:right;display:inline-flex;align-items:center;gap:4px;margin:1px 0 2px 10px;padding:3px 8px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--teal);font-family:inherit;font-weight:500;font-size:14px;line-height:1.6;white-space:nowrap;opacity:.3}
[data-comment-anchor]:hover .comment-anchor-button,.comment-anchor-button:focus-visible,.comment-anchor-button.has-comments{opacity:1}
.comment-anchor-button:hover{background:var(--pale)}
.comment-count{font-size:12px;min-width:16px;text-align:center;background:#e5f4f1;border-radius:9px}
.comments-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:min(460px,100%);height:100%;max-width:100%;max-height:100%;padding:0;border:0;border-left:1px solid var(--line);background:#fff;color:var(--ink);box-shadow:-8px 0 40px #1f2c3620;overflow:hidden;font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
.comments-dialog[open]{display:flex;flex-direction:column}.comments-dialog::backdrop{background:#142a3922}
.comments-dialog button,.comments-dialog input,.comments-dialog textarea{font:inherit}.comments-dialog button{font-size:14px;cursor:pointer}
.comments-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid var(--line);flex-shrink:0}
.comments-head h2{font-size:20px;margin:0;border:0;padding:0;line-height:1.3}.comments-head small{display:block;font-size:13px;color:var(--muted);margin-top:4px}
.comments-icon{border:0;background:none;color:var(--muted);padding:6px 10px;border-radius:4px;min-height:36px}.comments-icon:hover{background:#edf3f5;color:var(--teal)}
.comments-toolbar{display:flex;gap:4px;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--line);flex-shrink:0}
.comments-scroll{overflow-y:auto;overscroll-behavior:contain;padding:16px 20px;flex:1;min-height:0}
.comments-quote{margin:0 0 16px;padding:10px 12px;background:#f1f6f7;border-left:3px solid #9bbabd;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:160px;overflow:auto;color:#485b68}
.comments-message{padding:12px 20px;font-size:14px;margin:0;flex-shrink:0;color:#785015;background:#fff6e7;overflow-wrap:anywhere}.comments-message[hidden]{display:none}
.comments-empty{color:var(--muted);font-size:14px;padding:20px 0;text-align:center}
.comments-overview-item{display:block;width:100%;text-align:left;padding:14px 12px;margin-bottom:10px;background:#fff;border:1px solid var(--line);border-radius:6px;color:var(--ink)}.comments-overview-item:hover{border-color:var(--teal);background:#f4fafa}
.comments-overview-item strong{font-size:14px;display:block;margin-bottom:5px}.comments-overview-item p{margin:0;font-size:14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.comments-overview-item small{font-size:13px;color:var(--muted)}
.comment-thread{border:1px solid var(--line);border-radius:7px;padding:14px;margin-bottom:16px;background:#fff;overflow-wrap:anywhere}
.comment-meta{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:14px}.comment-meta strong{font-weight:650}.comment-time{font-size:12px;color:var(--muted)}
.comment-body{margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.65}.comment-deleted{color:var(--muted);font-style:italic}
.comment-actions{display:flex;gap:4px;flex-wrap:wrap}.comment-actions button{padding:3px 5px;border:0;background:none;color:var(--teal);font-size:13px}.comment-actions button:hover{text-decoration:underline}
.comment-replies{margin-top:10px;padding-left:12px;border-left:2px solid #e2edef}.comment-reply{padding:12px 0;border-top:1px solid var(--line)}.comment-reply:first-child{border-top:0}
.comment-confirm{font-size:14px;padding:10px;background:#fff6e7;border-radius:4px;margin:8px 0}.comment-confirm p{margin:0 0 7px}.comment-confirm button{margin-right:8px}
.comment-original-label{font-size:12px;color:var(--muted);margin:0 0 4px}.comment-original{margin:0 0 10px;max-height:100px;font-size:13px}
.comments-more{display:block;width:100%;padding:9px;background:#f3f7f8;border:1px solid var(--line);border-radius:5px;color:var(--teal);margin:10px 0}
.comments-composer{border-top:1px solid var(--line);padding:14px 20px 18px;background:#f8fafb;flex-shrink:0;max-height:55%;overflow-y:auto}.comments-composer[hidden]{display:none}
.comments-composer label{display:block;font-size:14px;font-weight:600;margin-bottom:5px}.comments-composer input,.comments-composer textarea{width:100%;border:1px solid #bdcbd2;border-radius:5px;background:white;color:var(--ink);padding:8px 10px;font-size:15px;line-height:1.5}.comments-composer input{margin-bottom:10px}.comments-composer textarea{min-height:94px;max-height:200px;resize:vertical;display:block}
.comments-compose-title{display:flex;align-items:center;justify-content:space-between;font-size:14px;margin-bottom:8px}.comments-compose-title span{overflow-wrap:anywhere}
.comments-submit-row{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.comments-submit-row small{font-size:13px;color:var(--muted)}.comments-submit-row .is-over-limit{color:#b12f3b}
.comments-notice{font-size:12px;line-height:1.5;color:var(--muted);margin:10px 0 0}.comments-dialog .button:disabled{opacity:.55;cursor:wait}
.comment-highlight{outline:3px solid #79bfc3;outline-offset:4px}
@media(hover:none){.comment-anchor-button{opacity:1;min-height:36px}}
@media(max-width:600px){.comments-dialog{width:100%;border:0}.comments-composer{padding:12px 16px;padding-bottom:max(14px,env(safe-area-inset-bottom))}.comments-scroll{padding:14px 16px}.comments-head{padding:16px}.comment-anchor-button{float:none;margin-left:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.comment-anchor-button,.comments-open,.comments-dialog{display:none!important}}
