             depthLabel.topAnchor.constraint(equalTo: depthLabelContainer.topAnchor),
             depthLabel.bottomAnchor.constraint(lessThanOrEqualTo: depthLabelContainer.bottomAnchor),
             
-            depthLabelContainer.topAnchor.constraint(equalTo: stackView.topAnchor),
-            depthLabelContainer.leadingAnchor.constraint(equalTo: stackView.leadingAnchor),
-            depthLabelContainer.bottomAnchor.constraint(equalTo: stackView.bottomAnchor)
+            depthLabelContainer.leadingAnchor.constraint(equalTo: leadingAnchor),
+            depthLabelContainer.topAnchor.constraint(equalTo: topAnchor),
+            depthLabelContainer.bottomAnchor.constraint(equalTo: bottomAnchor)
         ])
+        
+        // Allows depth label to wrap when it gets too long
+        // Activated upon configuration with view model
+        let depthLabelTrailingConstraint = depthLabelContainer.trailingAnchor.constraint(lessThanOrEqualTo: trailingAnchor, constant: -10)
+        self.depthLabelTrailingConstraint = depthLabelTrailingConstraint
     }
     
     // MARK: - Configure
 
     func configure(viewModel: TalkPageCellCommentViewModel) {
+        
         depth = viewModel.replyDepth
         
         let numberOfLinesToDraw = min(depth, maxLines)
-        
         guard numberOfLinesToDraw > 0 else {
             return
         }


    lazy var depthLabel: UILabel = {
        let label = UILabel()
        label.translatesAutoresizingMaskIntoConstraints = false
        return label
    }()
    

        }
        
        let numberRemaining = depth - numberOfLinesToDraw
        depthLabel.text = numberRemaining > 0 ? "+ \(numberRemaining) " : ""
        depthLabelContainer.isHidden = numberRemaining == 0
        depthLabelTrailingConstraint?.isActive = numberRemaining > 0
    }
}

