/* ── 文章互动组件 ── */
.article-interact { margin-top:40px; padding-top:24px; border-top:1px solid var(--border); }

/* 统计栏 */
.article-stats { display:flex; gap:24px; margin-bottom:24px; font-size:14px; color:var(--text-light); }
.article-stats span { display:flex; align-items:center; gap:4px; }

/* 点赞按钮 */
.like-btn { display:inline-flex; align-items:center; gap:6px; padding:6px 18px; border:1px solid var(--border); border-radius:20px; background:#fff; cursor:pointer; font-size:14px; color:var(--text-light); transition:all .2s; user-select:none; }
.like-btn:hover { border-color:var(--accent); color:var(--accent); background:#fff5f5; }
.like-btn.liked { border-color:var(--accent); color:var(--accent); background:#fff0f0; }
.like-btn .count { font-weight:600; }

/* 分享链接 */
.share-links { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:24px; }
.share-link { display:inline-flex; align-items:center; gap:4px; padding:6px 14px; border:1px solid var(--border); border-radius:16px; font-size:13px; color:var(--text-light); text-decoration:none; transition:all .2s; background:#fff; cursor:pointer; }
.share-link:hover { border-color:var(--primary); color:var(--primary); }
.share-link.copy-success { border-color:#27ae60; color:#27ae60; background:#f0fff4; }

/* 评论区 */
.comments-section { margin-top:24px; }
.comments-section h4 { font-size:16px; color:var(--primary); margin-bottom:16px; }
.comment-form { display:flex; flex-direction:column; gap:10px; margin-bottom:20px; }
.comment-form .row { display:flex; gap:10px; }
.comment-form input, .comment-form textarea { padding:10px 14px; border:1px solid var(--border); border-radius:8px; font-size:14px; outline:none; transition:border-color .2s; font-family:inherit; }
.comment-form input:focus, .comment-form textarea:focus { border-color:var(--primary); }
.comment-form input { flex:1; min-width:0; }
.comment-form textarea { width:100%; min-height:80px; resize:vertical; }
.comment-form .btn { padding:8px 24px; border:none; border-radius:8px; background:var(--primary); color:#fff; font-size:14px; cursor:pointer; font-weight:600; }
.comment-form .btn:hover { opacity:.9; }
.comment-form .btn:disabled { opacity:.5; cursor:not-allowed; }

/* 单条评论 */
.comment-item { padding:14px 0; border-bottom:1px solid #f0f0f0; }
.comment-item:last-of-type { border-bottom:none; }
.comment-item .meta { font-size:12px; color:var(--text-light); margin-bottom:4px; display:flex; gap:12px; }
.comment-item .name { font-weight:600; color:var(--primary); }
.comment-item .text { font-size:14px; line-height:1.7; color:var(--text); }
.comments-empty { font-size:14px; color:var(--text-light); text-align:center; padding:24px 0; }
.comment-error { color:#e74c3c; font-size:13px; margin-top:4px; }
.comment-success { color:#27ae60; font-size:13px; margin-top:4px; }

/* 加载中 */
.interact-loading { text-align:center; padding:20px; color:var(--text-light); font-size:14px; }
