body {
  font-family: Georgia, 'Times New Roman', Times, serif;
  background-color: rgb(250, 250, 250);
  background-image: url('images/work.jpg');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
}

body::before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(39, 37, 37, 0.333); /* Adjust the last value for transparency */
  z-index: -1;
}

h3 {
  font-family: Georgia, 'Times New Roman', Times, serif;
  font-style: bold;
  font-weight: 500;
  font-size: 55px;
  color: rgb(255, 255, 255);
}
img{
  height: 80px; /* Decrease height */
 display: flex;
  flex-direction: row-reverse;
  justify-content: space-around;
  align-items: center;
  border-radius: 40px;
}
header {
  height: 60px; /* Decrease height */
  width: 90%; /* Adjust width */
  background: rgba(55, 53, 53, 0.186); /* Light transparent background */
  border-radius: 15px; /* Round corners */
  backdrop-filter: blur(10px); /* Glass effect */
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Subtle shadow */
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-around;
  align-items: center;
  padding: 20px; /* Adjust padding */
  margin: 20px ; /* Center header */
}

.container {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: flex-start;
  padding: 20px;
}

#crossword {
  display: grid;
  grid-template-columns: repeat(20, 30px);
  grid-template-rows: repeat(20, 30px);
  gap: 2.5px;
  border: 40px;
  padding: 20px;
  background: rgba(53, 53, 53, 0.187); 
  border-radius: 15px; /* Round corners */
  backdrop-filter: blur(10px); /* Glass effect */
  box-shadow: 0 4px 6px rgba(136, 126, 126, 0.1); /* Subtle shadow */
}

.cell {
  width: 30px;
  height: 30px;
  border: 0.5px solid #000000;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.cell input {
  width: 100%;
  height: 100%;
  border:  rgb(0, 0, 0);
  text-align: center;
  font-size: 18px;
  background-color:rgba(255, 255, 255, 0.229);
}

.cell input:focus {
  outline: none;
}

.clue-number {
  position: absolute;
  top: 1px;
  left: 1px;
  font-size: 9px;
  color: #000000;
}

#hints {
  max-width: 300px;
  background: rgba(56, 56, 56, 0.187); /* Light transparent background */
  border-radius: 15px; 
  backdrop-filter: blur(10px); 
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); 
  padding: 20px;
  margin: 30px;
}

#hints h2 {
  margin-top: 0;
}

.submit-section {
  text-align: center;
  margin: 20px;
}

.submit-section button {
  background-color: rgba(12, 63, 105, 0.738); 
    color: white; 
  font-size: 20px;
  padding: 15px 30px; 
  border: none; 
  border-radius: 15px; 
  cursor: pointer;
}

.submit-section button:hover {
  background-color: rgba(0, 0, 139, 0.653); /* Change the background color on hover */
}

.leaderboard-section {
  text-align: center;
  margin: 20px;
  padding: 10px;
}

#result {
  margin-top: 10px;
  font-weight: bold;
  color: green;
}

#leaderboard {
  list-style-type: none;
  padding: 10px;
}

#leaderboard li {
  margin: 5px 0;
}

/* Responsive Design */
@media (max-width: 768px) {
  .container {
    flex-direction: column;
    align-items: center;
  }

  #crossword {
    grid-template-columns: repeat(20, 20px);
    grid-template-rows: repeat(20, 20px);
  }

  .cell {
    width: 20px;
    height: 20px;
  }

  .cell input {
    font-size: 14px;
  }
}

@media (max-width: 480px) {
  header {
    flex-direction: column;
    align-items: center;
  }

  .container {
    padding: 10px;
  }

  #hints {
    max-width: 100%;
  }

  #crossword {
    grid-template-columns: repeat(20, 15px);
    grid-template-rows: repeat(20, 15px);
  }

  .cell {
    width: 15px;
    height: 15px;
  }

  .cell input {
    font-size: 12px;
  }
}
