.page { padding: 28rpx 32rpx 48rpx; } .actions { display: flex; gap: 20rpx; margin-bottom: 4rpx; } .btn { flex: 1; height: 84rpx; border-radius: 18rpx; display: flex; align-items: center; justify-content: center; font-size: 30rpx; font-weight: 600; } .add { background: #128a80; color: #ffffff; } .del { background: #ffffff; color: #dc2626; border: 2rpx solid #fecaca; } .del.active { background: #fff1f2; } .empty { margin-top: 160rpx; text-align: center; color: #9ca3af; font-size: 28rpx; } .card { margin-top: 28rpx; background: #ffffff; border-radius: 28rpx; overflow: hidden; box-shadow: 0 4rpx 16rpx rgba(15, 23, 42, 0.04); } .card:first-child { margin-top: 0; } .card.pinned { box-shadow: 0 8rpx 24rpx rgba(18, 138, 128, 0.14); } .cover { position: relative; height: 272rpx; padding: 32rpx; display: flex; align-items: flex-end; box-sizing: border-box; overflow: hidden; } .cover-image, .cover-shade { position: absolute; left: 0; top: 0; width: 100%; height: 100%; } .cover-shade { background: linear-gradient(180deg, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.45) 100%); } .cover-title { position: relative; z-index: 1; color: #ffffff; font-size: 36rpx; font-weight: 700; line-height: 1.4; } .pin-badge, .video-badge { position: absolute; top: 20rpx; height: 44rpx; padding: 0 16rpx; border-radius: 22rpx; background: rgba(0, 0, 0, 0.3); color: #ffffff; font-size: 22rpx; font-weight: 600; line-height: 44rpx; z-index: 1; } .pin-badge { left: 20rpx; } .video-badge { right: 20rpx; } .theme-0 { background: linear-gradient(135deg, #0b6b66 0%, #13857c 100%); } .theme-1 { background: linear-gradient(135deg, #1aa39a 0%, #4fd1c5 100%); } .body { padding: 28rpx 32rpx 32rpx; } .title-row { display: flex; align-items: center; justify-content: space-between; gap: 16rpx; } .name { flex: 1; min-width: 0; font-size: 32rpx; font-weight: 700; color: #111827; } .ops { flex-shrink: 0; } .time { display: block; margin-top: 12rpx; color: #9ca3af; font-size: 26rpx; } .pin-btn { color: #128a80; font-size: 26rpx; font-weight: 600; } .remove { color: #dc2626; font-size: 26rpx; font-weight: 600; }