.matchplay-groups-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.group-board {
  border-radius: 28px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(17,18,21,.92), rgba(11,12,15,.96));
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.group-board-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 20px;
  border-bottom: 1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
}
.group-board-head h2 {
  margin: 0;
  font-family: var(--eagles-heading-family);
  font-size: 26px;
  line-height: 1;
  text-transform: uppercase;
  color: #fff;
}
.group-board-head h2 .accent-red {
  color: #d82b2b;
}
.group-board-head h2 .accent-white {
  color: #fff6e8;
}
.group-board-head span {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(255,255,255,.58);
}
.group-board-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  background: #ffffff;
}
.group-board-table col.col-rank {
  width: 74px;
}
.group-board-table col.col-player {
  width: 38%;
}
.group-board-table col.col-stat {
  width: 10%;
}
.group-board-table col.col-diff {
  width: 12%;
}
.group-board-table col.col-points {
  width: 88px;
}
.group-board-table thead th {
  padding: 12px 10px;
  border-bottom: 1px solid rgba(17,22,28,.10);
  background: #ffffff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: rgba(17,22,28,.58);
  text-align: center;
}
.group-board-table thead th.col-player {
  padding-left: 18px;
  text-align: left;
}
.group-board-table tbody tr {
  background: #ffffff;
}
.group-board-table tbody tr + tr td {
  border-top: 1px solid rgba(17,22,28,.08);
}
.group-board-table tbody tr.is-qualified {
  background: linear-gradient(180deg, rgba(13,114,185,.05), rgba(13,114,185,.02));
}
.group-board-table td {
  padding: 15px 10px;
  text-align: center;
  color: #11161c;
  vertical-align: middle;
}
.group-board-table td.col-player {
  padding-left: 18px;
  text-align: left;
}
.group-rank {
  display: inline-flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(17,22,28,.06);
  border: 1px solid rgba(17,22,28,.08);
  font-family: var(--eagles-heading-family);
  font-size: 17px;
  line-height: 1;
  color: #11161c;
}
.group-rank.is-qualified {
  background: #b11d26;
  border-color: #b11d26;
  color: #ffffff;
}
.player-stack {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.player-stack strong {
  display: block;
  font-family: var(--eagles-heading-family);
  font-size: 20px;
  line-height: 1;
  color: #11161c;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.player-stack small {
  display: block;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(17,22,28,.48);
}
.metric {
  font-family: var(--eagles-heading-family);
  font-size: 24px;
  line-height: 1;
  color: #11161c;
}
.metric-subtle {
  color: rgba(17,22,28,.74);
}
.metric-positive {
  color: #0d72b9;
}
.points-pill {
  display: inline-flex;
  min-width: 48px;
  height: 48px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #b11d26;
  color: #fff;
  font-family: var(--eagles-heading-family);
  font-size: 22px;
  line-height: 1;
}
.group-board-foot {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  padding: 14px 18px 16px;
  border-top: 1px solid rgba(255,255,255,.10);
  font-size: 11px;
  color: rgba(255,255,255,.72);
  letter-spacing: .08em;
  text-transform: uppercase;
  text-align: center;
}
.group-board-legend {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .10em;
  text-transform: uppercase;
  color: rgba(255,255,255,.82);
}
.group-board-legend .group-rank {
  width: 28px;
  height: 28px;
  font-size: 14px;
}
@media (max-width: 1100px) {
  .matchplay-groups-layout {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 720px) {
  .group-board-head {
    padding: 16px 18px;
  }
  .group-board-head h2 {
    font-size: 22px;
  }
  .group-board-table {
    table-layout: auto;
  }
  .group-board-table thead th,
  .group-board-table td {
    padding: 12px 8px;
  }
  .group-board-table thead th.col-player,
  .group-board-table td.col-player {
    padding-left: 14px;
  }
  .player-stack strong {
    font-size: 17px;
  }
  .metric {
    font-size: 19px;
  }
  .points-pill {
    min-width: 42px;
    height: 42px;
    font-size: 19px;
  }
  .group-board-legend {
    font-size: 9px;
  }
}
