a {
    text-decoration: none;
    color: #27bb49;
  }

body {
    font: normal 20px "PT Sans", Helvetica, Arial, sans-serif;
}

body > header h1 {
    font-size: 50px;
    color: #27bb49;
  }

body h2 {
    color: #6d6d6d;
}

body h3 {
    color: #8b8b8b;
}

.upper-nav {
    background-color: #004999;
    padding: 1em 2em;
    margin-bottom: 2em;
}

.upper-nav ul {
    display: flex;
    padding: 0;
    margin: 0 auto;
    list-style: none;
    gap: 20px;
}

.upper-nav a {
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    padding: 0.5em 1em;
}

.upper-nav a:hover {
    background-color: #0066cc;
}

.flash {
    padding: 10px 20px;
    margin: 20px auto 1.5em auto;
    color: #3399cc;
    background: #CBE5F2;
}
  
.flash p {
    font-size: 18px;
    font-weight: bold;
}
  
.flash.error {
    color: #ff6633;
    background: #FFCFBF;
}
  
.flash.success {
    color: #33cc99;
    background: #CBF2E5;
}

.gender-options {
    margin-left: 1em;
    display: flex;
}

.players-container {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

.players-list {
    margin: 1rem auto;
    border-collapse: collapse;
}

.players-list th, .players-list td {
    border: 1px solid #ccc;
    padding: 0.5rem;
    text-align: left;
}
.centered {
    text-align: center;
}


.match-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin: 0 auto;
    max-width: 1000px;
}

.match-table {
    border-collapse: collapse;
    border: 2px solid #ccc;
    padding: 10px;
    width: 48%;
    margin-bottom: 20px;
  }

  .match-table caption {
    caption-side: top;
    color: #8b8b8b;
    font-weight: bold;
    padding: 8px;
    text-align: left;
  }

  .match-table td, .match-table th {
    padding: 6px 10px;
    border: 1px solid #ddd;
    text-align: left;
  }

.paginated {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem 0;
    margin: 1.5rem 0;
    padding: 0 40rem;
}

.page-left {
    display: flex;
    justify-content: flex-start;
    font-size: 25px;
    font-weight: bold;
}

.page-center {
    display: flex;
    justify-content: center;
}

.page-right {
    display: flex;
    justify-content: flex-end;
    font-size: 25px;
    font-weight: bold;
}

.page-center form {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.page-center input[type="text"] {
    width: 3rem;
    text-align: center;
}

.winner {
    background-color: #beefff
}
