body {
    font-family: Arial, sans-serif;
    margin: 20px;
    background-color: #f9f9f9;
    color: #333;
}

h1 {
    text-align: center;
    color: #222;
}

div {
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    gap: 15px;
}

label {
    font-weight: bold;
}

select {
    padding: 5px;
    font-size: 14px;
}

table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
    background-color: #fff;
    box-shadow: 0 0 5px rgba(0,0,0,0.1);
}

/*th, td {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: left;
} */

th {
    border: 1px solid #ddd;
    padding: 8px;
    background-color: #4CAF50;
    color: white;
    position: sticky;
    text-align: center;
    top: 0;
}

tr:nth-child(even) {
    background-color: #f2f2f2;
}

tr:hover {
    background-color: #e0f7fa;
}

td {
    border: 1px solid #ddd;
    padding: 8px;
    white-space: nowrap;
    text-align: right;
}

tbody {
    display: block;
    /*max-height: 400px;
    overflow-y: auto;*/
}

thead, tbody tr {
    display: table;
    width: 100%;
    table-layout: fixed;
}

.column-wider {
    width: 175px;
}

.header-bar {
  display: flex;
  justify-content: space-between; /* left & right separation */
  align-items: center;            /* vertical alignment */
  padding: 5px 10px;
}

.left-controls {
  display: flex;
  gap: 10px; /* spacing between controls */
}

.right-info {
  margin-left: auto; /* pushes to far right */
  font-weight: bold;
}

/*FREEZE PANE PART*/
body {
  margin: 0;
  background: white;
}

h1 {
  position: sticky;
  top: 0;                  /* for h1 */
  background: white;
  z-index: 10;
}

.header-bar {
  position: sticky;
  /* top: 2.3rem;    */           /* offset by height of h1 */
  top: 37px;               /* offset by height of h1 */
  background: white;
  z-index: 9;
}

#regTable thead {
  position: sticky;
  /*top: 5.65rem;  */              /* offset by h1 + header-bar */
  top: 90px;               /* offset by h1 + header-bar */
  z-index: 10;
}
/*FREEZE PANE PART*/