/* Apply Proxima Nova to the whole page */
body {
  font-family: "Proxima Nova", sans-serif;
  margin: 2rem;
  background-color: #ffffff;
  color: #333333;
}

/* Header styling */
h1 {
  color: #083266; /* deep blue header */
  font-size: 2rem;
  margin-bottom: 1rem;
}

/* Table styling */
table {
  border-collapse: collapse;       /* Removes double borders */
  width: 100%;                     /* Table fills width of container */
  max-width: 1200px;               /* Optional: keep table from being too wide */
  margin-bottom: 2rem;
  font-size: 0.95rem;
}

/* First table - fixed layout with equal/specified widths */
#core-data-repos-table {
  table-layout: fixed;
}

/* Second table - natural layout based on content width */
#date-ranges-table {
  table-layout: auto;
  width: auto;                     /* Let it size based on content */
}

th, td {
  border: 1px solid #999;          /* Solid border for all cells */
  padding: 0.5rem 0.75rem;
  text-align: left;
  vertical-align: middle;
}

th {
  background-color: #083266;       /* deep blue header row */
  color: #ffffff; /* header text white */
}

/* Column widths for first table */
#core-data-repos-table th:nth-child(1),
#core-data-repos-table td:nth-child(1) {
  width: 22%;
}

#core-data-repos-table th:nth-child(2),
#core-data-repos-table td:nth-child(2) {
  width: 20%;
}

#core-data-repos-table th:nth-child(3),
#core-data-repos-table td:nth-child(3) {
  width: 20%;
}

#core-data-repos-table th:nth-child(4),
#core-data-repos-table td:nth-child(4) {
  width: 20%;
}

#core-data-repos-table th:nth-child(5),
#core-data-repos-table td:nth-child(5) {
  width: 18%;
}

/* Date ranges table - no fixed widths, widths naturally based on content */
#date-ranges-table th,
#date-ranges-table td {
  width: auto;
}


/* Make long text wrap inside cells */
td {
  word-wrap: break-word;
}

/* Hover effect for rows */
tr:hover {
  background-color: #e6f0ff;
}
