#tableContainer body {
  font-family: Arial, sans-serif;
}

#tableContainer {
  overflow: auto;
  max-height:100vh;
  border: #333;
  color: black
}

#tableContainer table {
  width: 100%;
  border-collapse: collapse;
  margin: 20px 0;
  font-size: 18px;
  text-align: left;
  table-layout: auto;
}

#tableContainer th, td {
  padding: 12px;
  border-bottom: 1px solid #bcc4c7;
  word-wrap: break-word; /* Handle long words or strings */
}

#tableContainer th {
  background-color:  #bcc4c7;
  color: #333;
}

#tableContainer tr:nth-child(even) {
  background-color: #f2f2f2;
}

#tableContainer tr:nth-child(odd) {
  background-color: #ffffff;
}

#tableContainer tr:hover {
  background-color: #f1f1f1;
}

#tableContainer .highlight-alteration {
  background-color: yellow;
  text-decoration: line-through;
}

#tableContainer .suggestion {
  background-color: lightgreen;
}

#tableContainer .addition {
  background-color: lightblue;
}

#tableContainer .accepted-addition {
  background-color: rgb(247, 222, 207);
}

#tableContainer .action-buttons,
#tableContainer .header-buttons{
    display:inline-flex;
    gap:.25rem;      /* space between individual buttons           */
    margin-left:4px; /* slight offset from the item they relate to */
}

/* 2. Actual buttons – shared basic look */
#tableContainer .action-buttons button,
#tableContainer .header-buttons button{
    padding:2px 6px;
    font-size:.75rem;
    border:1px solid;
    border-radius:4px;
    cursor:pointer;
    background:#f5f5f5;      /* light neutral default */
    color:#333;
    transition:background .2s, color .2s;
}

/* 3. Darker on hover */
#tableContainer .action-buttons button:hover,
#tableContainer .header-buttons button:hover{
    background:#333;
    color:#fff;
}

#tableContainer .justification-highlight {
  background-color: rgb(233, 225, 204); 
}

#tableContainer .justification {
  display: none;
  background-color: #f9f9f9;
  border: 1px solid #ddd;
  padding: 10px;
  margin-top: 10px;
}

#tableContainer .pop-effect {
  display: inline-block;
  transform-origin: bottom center;
  transition: transform 0.2s, border-color 0.2s;
}

#tableContainer .pop-effect:hover {
  transform: scale(1.01);
  border: 1px solid #333;
}

#tableContainer .doc-header .header-content{
  display:flex;
  justify-content:space-between; /* label on the left, buttons on the right */
  align-items:center;
}

#tableContainer .header-buttons button{
  margin-left:.5rem;
  padding: 7px;
  font-size: 0.9rem;
}

#tableContainer thead .header-row th {
  position: sticky;
  top: 0;
  background-color: #bcc4c7;
  z-index: 1;          /* stays above the bar */
}

/* progress-bar row */
#tableContainer thead .progress-row th {
  position: sticky;
  top: 60px;           /* height of the first header row */
  background-color: #bcc4c7;
  z-index: 2;
}

#tableContainer .addition, .highlight-alteration, .suggestion {
  display: inline-block; /* Ensure inline elements fit within the cell */
}
#tableContainer .key {
  display: flex;
  flex-direction: column;
  border: 2px solid #000000; /* Custom border color */
  background-color: #ffffff; /* Custom background color inside the border */
  padding: 10px;
  margin: 10px 0;
}

#tableContainer .key-item {
  display: flex;
  align-items: center;
  margin-bottom: 5px;
}

#tableContainer .color-box {
  width: 20px;
  height: 20px;
  margin-right: 10px;
}

#tableContainer .highlight-alteration-box {
  background-color: yellow;
}

#tableContainer .suggestion-box {
  background-color: lightgreen;
}

#tableContainer .addition-box {
  background-color: lightblue;
}

#tableContainer .key-text {
  text-decoration: none;
  color: black;
}
