/* 用户信息卡片 — 波浪封面+头像+徽章+统计 */
.widget-user { padding: 0 !important; background: transparent !important; }
.zm-user-card { border-radius: 12px; overflow: hidden; background: #fff; box-shadow: 0 2px 10px rgba(71,135,236,.06); margin-bottom: 20px; }
.zm-uc-cover { position: relative; width: 100%; height: 128px; background: #f3f6fb; }
.zm-uc-cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
.zm-uc-wave { position: absolute; left: 0; right: 0; bottom: -1px; width: 100%; height: 38px; z-index: 2; pointer-events: none; line-height: 0; }
.zm-uc-wave svg { width: 100%; height: 100%; }
.zm-uc-avatar { position: absolute; left: 50%; bottom: -36px; transform: translateX(-50%); width: 66px; height: 66px; border-radius: 50%; z-index: 99; display: flex; align-items: center; justify-content: center; }
.zm-uc-avatar img { width: 58px; height: 58px; border-radius: 50%; object-fit: cover; display: block; }
.zm-uc-wave { z-index: 12; }
.zm-uc-body { padding: 46px 16px 18px; background: #fff; text-align: center; }
.zm-uc-name { font-size: 1.15rem; font-weight: 700; margin: .5em 0 0; color: #222; }
.zm-uc-desc { margin: .6em 0; color: #888; font-size: 1em; min-height: 22px; line-height: 1.5; }
.zm-uc-stats { margin: 10px 0 0; font-size: .99em; }
.zm-uc-tag { display: inline-block; min-width: 44px; padding: 0 9px; height: 28px; line-height: 28px; margin: 0 5px; border-radius: 22px; font-size: 1em; font-weight: 600; vertical-align: middle; }
.zm-uc-tag-posts { background: #edf4fe; color: #3675ea; }
.zm-uc-tag-comments { background: #fef4ec; color: #ea9036; }
.zm-uc-btns { margin-top: 1em; display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; }
.zm-user-card .zm-uc-btns .but { border-radius: 20px !important; padding: .34em 1.2em; font-size: 1.02em; font-weight: 500; min-width: 88px; }
.zm-user-card .zm-uc-btn-blue { background: linear-gradient(90deg, #5ca3fa, #2597f4); color: #fff !important; border: none; }
.zm-user-card .zm-uc-btn-pink { background: linear-gradient(90deg, #ff8ae5, #fe5d6a); color: #fff !important; border: none; }

/* 波浪动画 */
.zm-uc-parallax { fill: var(--body-bg-color, #fff); }
.zm-uc-parallax > use { animation: zm-uc-wave-move 30s cubic-bezier(.55,.5,.45,.5) infinite; }
.zm-uc-parallax > use:nth-child(1) { animation-delay: -2s; animation-duration: 7s; opacity: .5; }
.zm-uc-parallax > use:nth-child(2) { animation-delay: -3s; animation-duration: 10s; opacity: .6; }
.zm-uc-parallax > use:nth-child(3) { animation-delay: -4s; animation-duration: 13s; opacity: .7; }
.zm-uc-parallax > use:nth-child(4) { animation-delay: -5s; animation-duration: 20s; opacity: 1; }
@keyframes zm-uc-wave-move { 0% { transform: translate3d(-90px,0,0); } 100% { transform: translate3d(85px,0,0); } }

@media (max-width: 768px) {
    .zm-uc-cover { height: 90px; }
    .zm-uc-avatar { width: 42px; height: 42px; bottom: -16px; }
    .zm-uc-avatar img { width: 36px; height: 36px; }
    .zm-uc-body { padding: 28px 8px 10px; }
}
