.ctf-section {
  text-align: center;
  padding: 20px;
  width: 100%;
  max-width: 960px; /* Set the maximum width */
}

#flags-container {
  margin-bottom: 30px;
  display: none;
}

#flags-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px;
}

/* Flag Boxes */
.flag-box, .modal {
  border: 1px solid #efaf00;
  padding: 20px;
  border-radius: 5px;
  text-align: center;
  background-color: #999999; /* Default color */
  width: auto;
}

.found {
  background-color: #ffcd61; /* Grayed out color */
}

h3 {
  margin-bottom: 10px;
  color: black;
}

h4 {
  display: none; /* Flag Identifiers are stored with h4 */
} 

.flag-box p, .modal p {
  color: black;
  margin: 0;
}

/* Flag Modals */
.modal {
  display: none; 
  position: fixed; 
  z-index: 1; 
  left: 50%;
  top: 50%;
  overflow: auto; 
  transform: translate(-50%, -50%);
  border: 1px solid #000000;
}

.modal-content {
  padding: 40px;
}

.close {
  color: #353535;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}


/* More */
.flag-submission, #scoreboard {
  margin-bottom: 30px;
}

#submission-result {
  margin: 10px 0px;
}

#scoreboard-table {
  width: 100%;
  border-collapse: collapse;
}

#scoreboard-table th, #scoreboard-table td {
  border: 1px solid #ddd;
  padding: 8px;
}

a {
  color: gold; /* Set the default link color to gold */
}

a:visited {
  color: gold; /* Keep the link gold even after it's been visited */
}

