/* Local font-face definitions */
@font-face {
  font-family: "Panton Regular";
  src: url("FONTS/Panton-regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}

/* Global font and layout */
body {
  font-family: "Panton Regular", sans-serif;
  background: #f0f2f5;
  color: #333;
  margin: 6px;
  font-size: 12px;
}

h1, h2, h3 {
  text-align: center;
  color: #222;
  font-weight: 700;
}

/* Table layout */
table {
  border-collapse: separate;
  border-spacing: 0 6px;
  width: 95%;
  margin: 16px auto;
}

/* t2 Header Row */
td.t2 {
  background-color: #2C9BC9;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 5px 8px;
  font-size: 11px;
  border-radius: 0;
  border: 1px solid #ccd3dc; /* light grey-blue border */
}

tr:first-child td.t2:first-child {
  border-top-left-radius: 8px;
}

tr:first-child td.t2:last-child {
  border-top-right-radius: 8px;
}

/* Table cells */
tr td {
  padding: 4px 8px;
  font-size: 13px;
  border: none;
  background: #fff;
  transition: background 0.3s ease;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05);
}

/* Row striping */
tr:nth-child(odd) td:not(.t2) {
  background: #ffffff;
}

tr:nth-child(even) td:not(.t2) {
  background: #e6f0fa; /* pale blue */
}

/* No-wrap for swimmer and club names */
td.t1_left, td.t4_left {
  text-align: left;
  color: #444;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

td.t1_centre, td.t4_centre {
  text-align: center;
  color: #444;
}

td.t1_right, td.t4_right {
  text-align: right;
  color: #444;
}

td.t1_split, td.t4_split {
  font-size: 9px;
  text-align: right;
  color: #666;
}

/* All highlighted cells */
tr.highlight td {
  background-color: #ffe08a !important;
  font-weight: bold;
  color: #000;
  border-top: 1px solid #d4aa00;
  border-bottom: 1px solid #d4aa00;
  border-left: none;
  border-right: none;
}

/* First cell gets left border + rounding */
tr.highlight td:first-child {
  border-left: 1px solid #d4aa00;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}

/* Last cell gets right border + rounding */
tr.highlight td:last-child {
  border-right: 1px solid #d4aa00;
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
}

/* Hover effect */
tr:hover td:not(.t2) {
  background-color: #d4eaff;
}

/* Rounded ends for pill effect */
tr td:first-child {
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}

tr td:last-child {
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
}

/* Links */
a {
  color: #0066cc;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}
