/* 收听历史样式 */

.history-page {
  min-height: 100vh;
  background: var(--color-bg-page);
}

/* 筛选头部 */
.filter-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16rpx 32rpx;
  background: #FFFFFF;
  border-bottom: 1rpx solid #F5F5F5;
}
.clear-btn {
  display: flex;
  align-items: center;
}
.clear-icon {
  font-size: 22rpx;
  margin-right: 6rpx;
}
.clear-text {
  font-size: 22rpx;
  color: #999;
  font-weight: 500;
}

/* 筛选Tab */
.filter-tabs {
  display: flex;
  gap: 32rpx;
}
.tab {
  font-size: 26rpx;
  font-weight: 700;
  color: #999;
  padding-bottom: 12rpx;
  border-bottom: 4rpx solid transparent;
  transition: all 0.2s;
}
.tab.active {
  color: #333;
  border-bottom-color: var(--color-primary);
}

/* 列表 */
.list-area {
  padding: 20rpx 32rpx;
}

/* 空状态 */
.empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 160rpx 0;
  opacity: 0.5;
}
.empty-icon-wrap {
  width: 128rpx;
  height: 128rpx;
  border-radius: 50%;
  background: #F5F5F5;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 24rpx;
}
.empty-emoji {
  font-size: 48rpx;
}
.empty-text {
  font-size: 28rpx;
  color: #999;
  font-weight: 500;
}

/* 历史条目 */
.history-item {
  display: flex;
  align-items: center;
  padding: 24rpx;
  margin-bottom: 20rpx;
}
.history-item:active {
  box-shadow: 0 4rpx 24rpx rgba(0, 0, 0, 0.06);
}

.h-icon {
  width: 88rpx;
  height: 88rpx;
  border-radius: 24rpx;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.h-emoji {
  font-size: 40rpx;
}

.h-info {
  flex: 1;
  padding: 0 20rpx;
  overflow: hidden;
}
.h-channel {
  display: block;
  font-size: 20rpx;
  font-weight: 700;
  color: #999;
  letter-spacing: 2rpx;
  margin-bottom: 6rpx;
}
.h-title {
  display: block;
  font-size: 26rpx;
  font-weight: 700;
  color: #333;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.h-title.text-primary {
  color: var(--color-primary);
}
.h-meta {
  display: block;
  font-size: 20rpx;
  color: #BBB;
  margin-top: 6rpx;
  font-weight: 500;
}

/* 播放指示器 */
.playing-indicator {
  display: flex;
  align-items: flex-end;
  gap: 4rpx;
  width: 48rpx;
  height: 48rpx;
  justify-content: center;
  flex-shrink: 0;
}
.bar {
  width: 6rpx;
  border-radius: 4rpx;
  background: var(--color-primary);
  animation: bounce 0.6s ease-in-out infinite;
}
.bar-1 { height: 24rpx; animation-delay: 0s; }
.bar-2 { height: 40rpx; animation-delay: 0.1s; }
.bar-3 { height: 16rpx; animation-delay: 0.2s; }

@keyframes bounce {
  0%, 100% { transform: scaleY(0.4); }
  50% { transform: scaleY(1); }
}

.play-mini {
  width: 56rpx;
  height: 56rpx;
  border-radius: 50%;
  border: 2rpx solid #EEE;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.play-mini-icon {
  width: 20rpx;
  height: 20rpx;
  opacity: 0.4;
}
