/* qbcms 详情页公共样式：点赞/收藏/分享按钮、分享对话框、消息提示（toast） */
/* ===== 点赞/收藏/分享按钮 ===== */
.article-actions {
    display: flex;
    gap: 12px;
    margin: 24px 0;
    padding: 16px 0;
    border-top: 1px solid #f0f0f0;
    border-bottom: 1px solid #f0f0f0;
}
.action-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 20px;
    border: 1px solid #ddd;
    border-radius: 25px;
    cursor: pointer;
    font-size: 14px;
    color: #555;
    background: #fff;
    transition: all 0.25s;
    user-select: none;
}
.action-btn:hover {
    border-color: #4A6CF7;
    color: #4A6CF7;
    background: #f0f7ff;
}
.action-icon { font-size: 18px; line-height: 1; }
.action-count {
    font-size: 13px;
    color: #999;
    min-width: 20px;
    text-align: center;
}
.like-btn.liked-active {
    background: #fff0f0;
    border-color: #ff6b6b;
    color: #ff6b6b;
}
.favorite-btn.fav-active {
    background: #fffbe6;
    border-color: #faad14;
    color: #d48806;
}
.share-btn:hover { border-color: #52c41a; color: #52c41a; background: #f6ffed; }

/* ===== 分享对话框 ===== */
.share-dialog { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 9999; }
.share-dialog-mask { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.45); }
.share-dialog-box {
    position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
    width: 420px; max-width: 90vw; background: #fff; border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.2); overflow: hidden;
}
.share-dialog-header {
    display: flex; justify-content: space-between; align-items: center;
    padding: 16px 20px; border-bottom: 1px solid #f0f0f0;
}
.share-dialog-title { font-size: 16px; font-weight: 600; color: #333; }
.share-dialog-close { font-size: 24px; color: #999; cursor: pointer; line-height: 1; }
.share-dialog-close:hover { color: #333; }
.share-dialog-body { padding: 20px; }
.share-link-row { display: flex; gap: 8px; margin-bottom: 20px; }
.share-link-input {
    flex: 1; padding: 8px 12px; border: 1px solid #ddd; border-radius: 6px;
    font-size: 13px; color: #666; background: #f9f9f9; outline: none;
}
.share-copy-btn {
    padding: 8px 16px; background: #4A6CF7; color: #fff; border: none;
    border-radius: 6px; cursor: pointer; font-size: 13px; white-space: nowrap;
    transition: background 0.2s;
}
.share-copy-btn:hover { background: #3a5ce5; }
.share-social-row { display: flex; gap: 16px; justify-content: center; margin-bottom: 16px; }
.share-social {
    display: flex; flex-direction: column; align-items: center; gap: 6px;
    text-decoration: none; color: #666; font-size: 12px; cursor: pointer;
    transition: color 0.2s;
}
.share-social:hover { color: #4A6CF7; }
.share-soc-icon {
    width: 44px; height: 44px; line-height: 44px; text-align: center;
    border-radius: 50%; font-size: 22px; background: #f5f7fa; transition: all 0.2s;
}
.share-wechat:hover .share-soc-icon { background: #07c160; color: #fff; }
.share-weibo:hover .share-soc-icon { background: #e6162d; color: #fff; }
.share-qq:hover .share-soc-icon { background: #12b7f5; color: #fff; }
.share-qrcode { text-align: center; padding-top: 8px; border-top: 1px dashed #f0f0f0; }
.share-qrcode img { max-width: 160px; border: 1px solid #f0f0f0; border-radius: 6px; }
.share-qrcode:empty { display: none; border: none; padding: 0; }

/* ===== 消息提示 ===== */
.action-toast {
    position: fixed; top: 20px; left: 50%; transform: translateX(-50%);
    padding: 10px 24px; border-radius: 8px; font-size: 14px; color: #fff;
    z-index: 10000; opacity: 0; transition: opacity 0.3s, top 0.3s;
    pointer-events: none;
}
.action-toast.show { opacity: 1; top: 30px; }
.action-toast.success { background: #52c41a; }
.action-toast.error { background: #ff4d4f; }
.action-toast.warn { background: #faad14; }
