table, td, th {
border-collapse: collapse;
border: 1px solid LightGray;
font-family: Arial, Helvetica, sans-serif;
font-size: small;
padding-top: 2px;
padding-bottom: 2px;
padding-left: 6px;
padding-right: 6px;
}
.table-head-center {
  text-aling: center;
}
.table-center {
  text-align: center;
}
.table-right {
  text-align: right;
}
.table-right-gray {
  text-align: right;
  color: lightgray;
}
tr.thick-line td {
  border-top: 4px solid #aaa; /* darker / thicker line */
}
.selection-container {
  display: flex; /* Use flexbox for easy alignment */
  justify-content: flex-start;
  align-items: center; /* Vertically align dropdowns */
}
.dropdown-wrapper {
  display: inline-block; /* Allow dropdowns to sit side-by-side */
  margin-right: 2px;
  margin-left: 2px;
}
.dropdown-content {
  display: inline-block; /* Allow dropdowns to sit side-by-side */
  margin: 2px;
}

.pagetitle {
    display: flex;
    align-items: center;
}
.sectionheading {
    background-color: #f1f1f1;
    display: flex;
    font-family: sans-serif;
    font-size: 24px;
    color: steelblue;
    align-items: center;
    padding: 8px;
    margin: 0px;
}
.functionheading {
    display: flex;
    font-family: sans-serif;
    font-size: 28px;
    align-items: center;
    margin: 0px;
    padding-top: 2px;
    padding-left: 8px;
    padding-right: 2px;
    padding-bottom: 2px;
}
.function-container {
    display: flex; /* Use flexbox for easy alignment */
    justify-content: flex-start;
    align-items: center; /* Vertically align dropdowns */
    background-color: #f1f1f1;
    padding-left: 16px;
}
.function-wrapper {
    display: inline-block; /* Allow dropdowns to sit side-by-side */
    background-color: #f1f1f1;
    margin: 0px;
    padding-top: 6px;
    padding-left: 4px;
    padding-bottom: 2px;
    padding-right: 4px;
}
.function-wrapper-active {
    display: inline-block;
    background-color: white;
    margin: 0px;
    padding-top: 6px;
    padding-left: 4px;
    padding-bottom: 2px;
    padding-right: 4px;
}
.function-dropdown-heading {
    margin: 0px;
    padding-left: 2px;
    padding-bottom: 4px;
    font-family: sans-serif;
    font-size: x-small;
    text-align: left;
}
.function-content {
    display: inline-block; /* Allow dropdowns to sit side-by-side */
    margin: 0px;
    padding-top: 2px;
    padding-left: 4px;
    padding-bottom: 2px;
    padding-right: 2px;
}
.function-source {
    display: flex;
    font-family: sans-serif;
    font-size: 12px;
    align-items: left;
    margin: 0px;
    padding-top: 2px;
    padding-left: 2px;
    padding-right: 2px;
    padding-bottom: 2px;
}


.main-page-container {
    display: flex;
    flex-direction: column;
    margin-top: 20px;
    margin-left: 20px;
}
.main-page-link-text a {
    flex-grow: 1;
    margin: 0; /* Make sure .link-text doesn't have top/bottom margins */
    padding: 0; /* Make sure .link-text doesn't have top/bottom padding */
    line-height: 1.2; /* Adjust as needed for vertical spacing of the text itself */
    text-decoration: none; /* Optional: Removes underline, common for UI links */
    color: inherit;   /* Optional: Makes the link color inherit from parent if you set it on .link-text */
    font-family: sans-serif;
    font-size: 28px;
    text-align: center;
}
.main-page-link-title-row {
    display: flex; /* Align icon and title in a row */
    align-items: center; /* Vertically align icon and title */
    width: 100%;
}
.main-page-link-icon {
    flex-shrink: 0;
    width: 40px;
    text-align: center;
    margin-left: 25px;
    margin-right: 10px;
}
.main-page-description {
    font-family: sans-serif;
    font-size: 0.9em;
    color: #777;
    margin-left: 75px; /* Indent to align with the start of the text */
    margin-top: 5px; /* Add space between title and description */
    padding-right: 25px;
}
.main-page-item {
    display: flex;
    flex-direction: column;
/*    align-items: flex-start;  Align items to the left within the main-page-item */
    padding: 8px 0;
    border-bottom: 1px solid #eee;
}
.main-page-detail {
    font-family: sans-serif;
    font-size: 0.9em;
    color: #777;
    margin-left: 95px; /* Indent to align with the start of the text */
    margin-top: 5px; /* Add space between title and description */
    padding-right: 25px;
}
.navigation-container {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.navigation-content {
  display: inline-block;
  margin-right: 2px;
  margin-left: 2px;
}
.navigation-heading {
    display: flex;
    font-family: sans-serif;
    font-size: 16px;
    color: black;
    align-items: center;
    padding: 0px;
    margin: 0px;
}




.link-text a {
    display: block;   /* Important: Treat the link as a block to control its box model */
    margin: 0;        /* Remove any default margins on the link */
    padding: 0;       /* Remove any default padding on the link */
    line-height: inherit; /* Inherit line-height from parent to maintain consistency */
    text-decoration: none; /* Optional: Removes underline, common for UI links */
    color: inherit;   /* Optional: Makes the link color inherit from parent if you set it on .link-text */
}

/* Also ensure .link-text itself is clean of extra vertical spacing */
.link-text {
    flex-grow: 1;
    margin: 0; /* Make sure .link-text doesn't have top/bottom margins */
    padding: 0; /* Make sure .link-text doesn't have top/bottom padding */
    line-height: 1.2; /* Adjust as needed for vertical spacing of the text itself */
}

.link-container {
    display: flex;
    flex-direction: column;
    margin-top: 20px;
    margin-left: 20px;
}

.link-item {
    display: flex;
    flex-direction: column;
/*    align-items: flex-start;  Align items to the left within the link-item */
    padding: 8px 0;
    border-bottom: 1px solid #eee;
}

.link-title-row {
    display: flex; /* Align icon and title in a row */
    align-items: center; /* Vertically align icon and title */
    width: 100%;
}

.link-icon {
    flex-shrink: 0;
    width: 40px;
    text-align: center;
    margin-left: 25px;
    margin-right: 10px;
}

.link-description {
    font-family: sans-serif;
    font-size: 0.9em;
    color: #777;
    margin-left: 75px; /* Indent to align with the start of the text */
    margin-top: 5px; /* Add space between title and description */
    padding-right: 25px;
}

.link-detail {
    font-family: sans-serif;
    font-size: 0.9em;
    color: #777;
    margin-left: 95px; /* Indent to align with the start of the text */
    margin-top: 5px; /* Add space between title and description */
    padding-right: 25px;
}

.content-block {
    background-color: #fff;
    border: 1px solid #ddd;
    padding: 20px;
    margin-bottom: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.title-text {
    font-size: 1.8em;
    color: #333;
    margin-top: 0; /* Remove default top margin for h1 */
    margin-bottom: 0px; /* Space between title and description */
}
.title-icon {
    margin-right: 12px;
}
.title-description {
    font-size: 0.6em; /* Smaller font size for the description */
    color: #666;
    line-height: 1.2; /* Improve readability for the description */
}
.title-link {
    font-size: 0.8em; /* Smaller font size for the description */
    margin-right: 12px;
}

