.container {
  display: block;
  overflow-y: auto;
  margin: auto;
  position: relative;
  min-height: 90vh;
}

.table {
  margin: auto;
  border: 3px solid #212914;
  border-collapse: collapse;
  table-layout: fixed;
  position: relative;
  width: auto;
  z-index: 1;
}

th, td {
    padding: 2px 4px;
    font-weight: normal;
}

td {
    border: 1px solid #ddd;
    text-align: center;
}

.golfer-col {
    text-align: left;
    padding-right: 10px;
    background-color: #5c6f42;
    color: #fff;
    width: 100px;
}

.score-col {
    text-align: right;
    width: 20px;
    border-right: 2px solid #bbb;
    border-left: none;
}

.score-row {
  border-bottom: 1px solid #212914;
}

.user-col {
  width: 4ch;
  border-right: 2px solid #bbb;
}

tr:nth-child(even) {
  background-color: #f3ec99;
}

.header-1 {
background-color: #5c6f42;
color: #fff;
}

.header-2 {
  border-bottom: 1px solid #212914;
}

.align-ctr {
  text-align: center;
}

.align-right {
  text-align: right;
}

.align-left {
  text-align: left;
}

/* ---------------RESPONSIVE CSS FOR MOBILE DEVICES--------------------- */

@media only screen and (min-device-width: 320px) and (max-device-width: 480px) and (orientation: landscape) {

  .container {
    width: 100%;
    height: 80vh;
  }
  .table {
    width: 90%;
  }

.header-1 th {
  background-color: #5c6f42;
  position: sticky;
  top: 0;
  z-index: 500;
}

.header-2 td {
  background-color: #f3ec99;
  position: sticky;
  top: 25px;
  z-index: 450;
}

.header-2 .golfer-col {
  background-color: #5c6f42;
}

}

@media (orientation: portrait) {
  .container {
        overflow-x: auto;
        max-width: 100%;
    }

    .golfer-col {
      width: auto;
      white-space: nowrap;
      overflow: hidden;
    }

      /* Sticky header cell */
    .container thead th:first-child {
        position: sticky;
        left: 0;
        background-color: #5c6f42;
        z-index: 2;
    }

    /* Sticky body cells */
    .container .golfer-col {
        position: sticky;
        left: 0;
        background-color: #5c6f42;
        z-index: 1;
    }

    .container .score-col {
        position: sticky;
        left: 130px;
        background-color: #f3ec99;
        z-index: 1;
    }

}

@media only screen and (orientation: landscape) {
    .container {
    width: 100%;
    height: 80vh;
    }
    
    .table {
      width: 90%;
    }

    .header-1 th {
      background-color: #5c6f42;
      position: sticky;
      top: 0;
      z-index: 500;
    }

    .header-2 td {
      background-color: #f3ec99;
      position: sticky;
      top: 25px;
      z-index: 450;
    }

    .header-2 .golfer-col {
      background-color: #5c6f42;
    }
}