diff --git a/modules/system/system.base.css b/modules/system/system.base.css
index a6748de..e860c25 100644
--- a/modules/system/system.base.css
+++ b/modules/system/system.base.css
@@ -132,11 +132,17 @@ div.tree-child-horizontal {
 /**
  * TableHeader behavior.
  *
+ * Sticky headers use 'position: fixed' to overlap content. However, elements
+ * that use 'position: relative' (most notably fieldsets) still overlap sticky
+ * headers. To make sticky headers overlap these elements again, a z-index of
+ * at least 1 is needed.
+ *
  * @see tableheader.js
  */
 table.sticky-header {
   background-color: #fff;
   margin-top: 0;
+  z-index: 1;
 }
 
 /**
