page { background-color: #f5f5f5; height: 100vh; } .container { min-height: 100vh; padding-bottom: 120rpx; } .content { padding: 20rpx; } .header { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); border-radius: 20rpx; padding: 40rpx 30rpx; margin-bottom: 20rpx; box-shadow: 0 4rpx 20rpx rgba(102, 126, 234, 0.3); } .title { display: block; font-size: 48rpx; font-weight: bold; color: #ffffff; margin-bottom: 10rpx; } .subtitle { display: block; font-size: 28rpx; color: rgba(255, 255, 255, 0.9); } .section { background: #ffffff; border-radius: 20rpx; padding: 30rpx; margin-bottom: 20rpx; box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.08); } .section-title { margin-bottom: 20rpx; padding-bottom: 15rpx; border-bottom: 2rpx solid #f0f0f0; } .title-text { font-size: 32rpx; font-weight: bold; color: #333333; } .topic-list { display: flex; flex-direction: column; gap: 15rpx; } .topic-item { display: flex; align-items: center; padding: 20rpx; background: #f8f9fa; border-radius: 12rpx; transition: all 0.3s ease; } .topic-item:active { transform: scale(0.98); background: #e9ecef; } .topic-rank { width: 50rpx; height: 50rpx; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); border-radius: 50%; font-size: 24rpx; font-weight: bold; color: #ffffff; margin-right: 20rpx; } .topic-info { flex: 1; display: flex; flex-direction: column; gap: 5rpx; } .topic-name { font-size: 28rpx; font-weight: 600; color: #333333; } .topic-count { font-size: 24rpx; color: #999999; } .post-list { display: flex; flex-direction: column; gap: 20rpx; } .post-item { background: #ffffff; border-radius: 16rpx; padding: 25rpx; box-shadow: 0 2rpx 8rpx rgba(0, 0, 0, 0.06); transition: all 0.3s ease; } .post-item:active { transform: translateY(-2rpx); box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.1); } .post-header { display: flex; align-items: center; margin-bottom: 15rpx; } .post-avatar { width: 80rpx; height: 80rpx; border-radius: 50%; margin-right: 15rpx; background: #f0f0f0; } .post-user { flex: 1; display: flex; flex-direction: column; gap: 5rpx; } .post-username { font-size: 28rpx; font-weight: 600; color: #333333; } .post-time { font-size: 24rpx; color: #999999; } .post-content { margin-bottom: 15rpx; } .post-text { display: block; font-size: 28rpx; color: #333333; line-height: 1.6; margin-bottom: 15rpx; } .post-images { display: flex; gap: 10rpx; flex-wrap: wrap; } .post-image { width: 200rpx; height: 200rpx; border-radius: 12rpx; background: #f0f0f0; } .post-topic { margin-top: 15rpx; padding: 8rpx 16rpx; background: #f0f8ff; border-radius: 20rpx; display: inline-block; } .topic-text { font-size: 24rpx; color: #1890ff; font-weight: 500; } .post-footer { display: flex; justify-content: space-around; padding-top: 15rpx; border-top: 1rpx solid #f0f0f0; } .post-action { display: flex; align-items: center; gap: 8rpx; padding: 10rpx 20rpx; border-radius: 20rpx; transition: all 0.3s ease; } .post-action:active { background: #f5f5f5; } .action-icon { font-size: 32rpx; } .action-text { font-size: 24rpx; color: #666666; } .loading { text-align: center; padding: 40rpx; color: #999999; font-size: 28rpx; } .no-more { text-align: center; padding: 40rpx; color: #999999; font-size: 28rpx; } .empty { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 100rpx 20rpx; } .empty-icon { font-size: 120rpx; margin-bottom: 20rpx; opacity: 0.5; } .empty-text { font-size: 28rpx; color: #999999; } .fab-button { position: fixed; right: 30rpx; bottom: 150rpx; width: 120rpx; height: 120rpx; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 6rpx 20rpx rgba(102, 126, 234, 0.4); z-index: 1000; transition: all 0.3s ease; } .fab-button:active { transform: scale(0.95); box-shadow: 0 4rpx 15rpx rgba(102, 126, 234, 0.3); } .fab-icon { font-size: 48rpx; }