.page {
  min-height: 100vh;
  background: #f5f5f5;
  padding-bottom: 120rpx;
  box-sizing: border-box;
  overflow-x: hidden;
}

.banner {
  display: flex; flex-direction: column; align-items: center;
  padding: 40rpx 40rpx 30rpx;
  background: linear-gradient(135deg, #FF8C42, #FF6B35);
}

.banner-icon { font-size: 56rpx; margin-bottom: 12rpx; }
.banner-text { font-size: 26rpx; color: rgba(255, 255, 255, 0.85); }

.content { padding: 30rpx; }

.section-title {
  font-size: 32rpx; font-weight: bold; color: #333; margin-bottom: 24rpx;
}

.drug-card {
  display: flex; align-items: center;
  background: #ffffff; border-radius: 20rpx; padding: 30rpx;
  margin-bottom: 20rpx;
  box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.04);
}

.drug-card:active { transform: scale(0.98); }

.card-icon {
  width: 90rpx; height: 90rpx;
  margin-right: 24rpx;
  border-radius: 16rpx;
  overflow: hidden;
  flex-shrink: 0;
}

.card-img {
  width: 100%;
  height: 100%;
}

.card-info { flex: 1; overflow: hidden; }

.card-title {
  font-size: 30rpx; font-weight: 600; color: #333; margin-bottom: 8rpx;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.card-desc {
  font-size: 24rpx; color: #888; margin-bottom: 12rpx;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.card-meta { display: flex; align-items: center; gap: 16rpx; }

.card-tag {
  font-size: 20rpx; color: #FF6B35;
  background: rgba(255, 107, 53, 0.1);
  padding: 4rpx 14rpx; border-radius: 8rpx;
}

.card-read { font-size: 20rpx; color: #bbb; }

.card-arrow { font-size: 40rpx; color: #ccc; margin-left: 12rpx; font-weight: 300; }
