body.container {
  width: 1366px;
  margin: auto;
  padding: 0;
}

#election_results__container {
  --rep-red: rgb(228 23 35);
  --dem-blue: rgb(22, 101, 207);
  --grn-green: rgb(5, 141, 23);
  --lib-yellow: rgb(254, 209, 5);
  --ind-purple: rgb(104, 41, 181);
  --nopty-color: rgb(238 131 15);
}

.custom-light-bg {
  background: rgba(0, 0, 0, 0.05);
  padding: 18px;
  margin-bottom: 24px;
}

.race-container {
  margin-bottom: 24px;
}

.race-title {
  font-size: 26px;
}

.reporting-status {
  display: flex;
  font-size: 16px;
}

.reporting-divider {
  margin: 0 12px;
}

.candidates-container {
  display: flex;
  overflow-x: scroll;
  padding: 20px 0;
}

.custom-light-bg .candidate-card {
  background: white;
}

.candidate-card {
  min-width: 230px;
  box-shadow: 0px 0px 10px -2px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  padding: 12px 14px;
  margin: 0 8px;
}

.candidate-card:nth-child(1) {
  margin-left: 0;
}

.candidate-card h2 {
  font-size: 16px;
  margin-bottom: 0;
  font-weight: bold;
}

.candidate-party {
  font-weight: 200;
  color: #888;
  font-size: 14px;
  margin-bottom: 6px;
}

.vote-percentage-container {
  border: 1px solid #eee;
  height: 10px;
  margin-bottom: 4px;
}

.percent-fill {
  background-color: #ddd;
  height: 100%;
}

.vote-values-container {
  display: flex;
  justify-content: space-between;
  font-size: 14px;
}

.vote-count {
  font-weight: 600;
}

#er_election_update_date {
  text-align: right;
  color: #666;
  font-size: 12px;
  margin-bottom: 0;
}

.er-sos-link {
  font-size: 20px;
  text-decoration: underline;
}

@media screen and (max-width: 768px) {
  
  .reporting-status {
    flex-direction: column;
  }

  .reporting-status div {
    margin-bottom: 2px;
  }

  .reporting-divider {
    display: none;
  }

  .race-title {
    font-size: 22px;
  }

  .candidate-card {
    min-width: 180px;
    padding: 10px;
    margin: 0 4px;
  }

  .candidate-card h2 {
    font-size: 14px;
  }

  .reporting-status,
  .candidate-party,
  .votes-values-container {
    font-size: 14px;
  }

  #er_election_update_date {
    font-size: 12px;
  }
}

@media screen and (max-width: 600px){
    .custom-light-bg {
    padding: 12px;
  }
  
  .reporting-status {
    font-size: 14px;
  }

  .candidates-container {
    padding: 4px 0 10px;
  }
}