* {
  font-family: Arial, Helvetica, sans-serif;
}

html, body {
  margin: 0;
  border: 0;
  padding: 0;
  background-color: #fff;
}

main {
  margin: auto;
  width: 50%;
  padding: 20px;
}

main > h1 {
  text-align: center;
  font-size: 3.5em;
}


/* Ensure table takes the full width */
table {
  width: auto;/*100%;*/
}

/* Set a max height for the table container and make it scrollable */
#tableContainer {
  max-height: 500px; /* You can adjust this value based on your needs */
  overflow-y: auto;
  border: 1px solid black;
}

/* Sticky header styling */
table thead th {
  position: sticky;
  top: 0;
  background-color: #009879;
  color: #ffffff;
  text-align: left;
  z-index: 10; /* Keep the header above the rows */
  border-bottom: 2px solid #000; /* Give it a distinct border */
}


.TShiftElements {
  border-collapse: collapse;
  margin: 25px 0;
  font-size: 0.9em;
  font-family: sans-serif;
  min-width: 400px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
}

.TShiftElements th,
.TShiftElements td {
  padding: 12px 15px;
}


.TShiftElements tbody tr {
  border-bottom: 1px solid #dddddd;
}

.TShiftElements tbody tr:nth-of-type(even) {
  background-color: #f3f3f3;
}

.TShiftElements tbody tr:last-of-type {
  border-bottom: 2px solid #009879;
}

.TShiftElements tbody tr:hover {
  background-color: #e0e0e0;
}


/*********************************************************/
/* Basic styles for the explorer like tree */
/*********************************************************/


.projectTree {
  font-family: Arial, sans-serif;
  max-width: 1000px;
  border: 1px solid #ccc;
}

.projectTree ul {
  list-style: none;
  list-style-type: none;
  padding-left: 20px;
  display: none;  /* hide by default */
}

.projectTree > ul { display: block; }  /* root level visible by default */

.projectTree .folder:before,
.projectTree .file:before {
 /* position: absolute;
  left: 0;
  width: 20px;
  display: inline-block;
  text-align: center;
  cursor: pointer;
  
  content: ' ';
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 5px;
  vertical-align: middle;*/

  content: ' ';
  display: inline-block;
  width: 20px;
  height: 16px;
  margin-right: 5px;
  margin-bottom: 10px;
  vertical-align: top;
}

.projectTree .folder.closed:before {
  content: '📁';
}

.projectTree .folder.opened:before {
  content: '📂';  /* slightly different emoji to represent an opened folder */
}

.projectTree .file:before {
  content: '📄';  /* using emoji for simplicity, but consider using an icon font or SVG */
}


/*********************************************************/
/**** TMappings */
/*********************************************************/

.TMappings td {
  padding-right: 20px;
  border-right: 1px solid black;
  border-bottom: 1px solid black;
}

.TMappings td[date-attribute="weekend"] {
/*  color: rgb(255, 225, 225);*/
  color: rgb(143, 0, 0);
  font-weight: bold;
  background-image: linear-gradient(45deg, rgb(168, 168, 168), transparent);
}

.TMappings td[data-state="mapped"] {
  color: rgb(0, 0, 0);
  background-color: rgb(192, 255, 192);
}

.TMappings td.toggled {
  background-color: rgb(192, 255, 192);
}

/*
.TMappings td:hover {
  background-color: #01fefe;
}
*/

.TMappings td[data-state="notavailable"] {
  color: rgb(0, 0, 0);
  background-color: rgb(228, 228, 228);
}



/*********************************************************/
/*********************************************************/
/*********************************************************/


.styled-list li.toggled {
  background-color: rgb(192, 255, 192);
}

.styled-list {
  width: 500px;
  background-color: #e0ffff;
  border-radius: 5px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  padding: 5px;
  list-style-type: none; /* Removes bullet points */
  overflow: hidden; /* To ensure the border-radius clips the list items */
}

.styled-list li {
  padding: 5px 10px;
  border-bottom: 1px solid #e4e4e4;
  color: #555;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.styled-list li:last-child {
  border-bottom: none; /* Removes the bottom border from the last item */
}

.styled-list li:hover {
  background-color: #01fefe;
}