/* Group Members table: make name column wider and prevent wrapping */
.members-table table {
  width: 100%;
}

.members-table table th:first-child,
.members-table table td:first-child {
  width: 280px;        /* adjust (e.g., 220–320px) */
  white-space: nowrap; /* keeps first + last names on one line */
}

/* Group Members table styling */
.members-table table {
  width: 100%;
  border-collapse: collapse; /* clean horizontal rules */
}

.members-table th,
.members-table td {
  vertical-align: top;       /* align text to the top */
  padding: 0.35rem 0.6rem;
}

/* draw a line after each row... */
.members-table tbody tr {
  border-bottom: 1px solid rgba(0,0,0,0.15);
}

/* ...except when the NEXT row is a continuation row (empty name cell) */
.members-table tbody tr:has(+ tr td:first-child:empty) {
  border-bottom: none;
}

/* optional: a stronger line under the header */
.members-table thead tr {
  border-bottom: 2px solid rgba(0,0,0,0.25);
}

/* optional: keep names on one line and make the left column wider */
.members-table td:first-child,
.members-table th:first-child {
  white-space: nowrap;
  width: 320px;
}

.members-table th {
  text-align: left;
}


main {
  position: relative;
}

/* watermark that scrolls with the content */
main::before {
  content: "";
  position: absolute;       /* <-- scrolls with main */
  inset: 0;
  background: url("/images/logo.png") center 120px / 520px auto no-repeat;
  opacity: 0.1;            /* adjust */
  pointer-events: none;
  z-index: 0;
}

main > * {
  position: relative;
  z-index: 1;
}


