/* Focus-mode problem navigation remains visible while the page scrolls. */
html[data-sunion-theme] body #problem-footer {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 !important;
  z-index: 1000;
  border-radius: 0;
  box-sizing: border-box;
  padding-bottom: env(safe-area-inset-bottom, 0px);
}
/* Reserve space for the 35px navigation row, card padding and borders. */
html[data-sunion-theme] body .problem-body:has(> #problem-footer) {
  padding-bottom: calc(47px + env(safe-area-inset-bottom, 0px));
}

/* Own submissions follow the same dark blue striped palette as other rows. */
html[data-sunion-theme="dark"] body .vxe-table .vxe-body--row.own-submit-row,
html[data-sunion-theme="dark"] body .vxe-table .vxe-body--row.own-submit-row > .vxe-body--column {
  background: var(--sun-panel) !important;
  color: var(--sun-text) !important;
}
html[data-sunion-theme="dark"] body .vxe-table .vxe-body--row.own-submit-row.row--stripe,
html[data-sunion-theme="dark"] body .vxe-table .vxe-body--row.own-submit-row.row--stripe > .vxe-body--column {
  background: var(--sun-soft) !important;
}
/* Current and hover states must not fall back to the table's light palette. */
html[data-sunion-theme="dark"] body .vxe-table .vxe-body--row.row--current,
html[data-sunion-theme="dark"] body .vxe-table .vxe-body--row.row--current > .vxe-body--column,
html[data-sunion-theme="dark"] body .vxe-table .vxe-body--row.own-submit-row.row--current,
html[data-sunion-theme="dark"] body .vxe-table .vxe-body--row.own-submit-row.row--current > .vxe-body--column,
html[data-sunion-theme="dark"] body .vxe-table .vxe-body--row.own-submit-row.row--hover,
html[data-sunion-theme="dark"] body .vxe-table .vxe-body--row.own-submit-row.row--hover > .vxe-body--column {
  background: var(--sun-accent-soft) !important;
  color: var(--sun-text) !important;
}
html[data-sunion-theme="dark"] body .vxe-table .vxe-body--row.own-submit-row > .vxe-body--column:first-child .vxe-cell {
  color: var(--sun-text) !important;
}
