@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-VariableFont_wght_200_Light.woff2') format('woff2'),
         url('fonts/Montserrat-VariableFont_wght_200_Light.woff') format('woff'),
         url('fonts/Montserrat-VariableFont_wght_200_0.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-VariableFont_wght_400_4.woff2') format('woff2'),
         url('fonts/Montserrat-VariableFont_wght_400_4.woff') format('woff'),
         url('fonts/Montserrat-VariableFont_wght_400_4.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@media (prefers-color-scheme: dark) {
    body {
        background-color: #191919;
        color: white;
    }
}

.clock {
  background: #ececec;
  width: 80vmin; /* Use vmin for width and height to maintain aspect ratio */
  height: 80vmin;
  margin: 3% auto 0;
  border-radius: 50%;
  border: 14px solid #333;
  position: relative;
  box-shadow: 0 2vw 4vw -1vw rgba(0, 0, 0, 0.8);
}


.dot {
  width: 5%; /* Adjust the percentage as needed for the dot size */
  height: 5%; /* Adjust the percentage as needed for the dot size */
  border-radius: 50%;
  background: #ccc;
  position: absolute;
  z-index: 10;
  box-shadow: 0 2px 4px -1px black;
  top: 50%; /* Center the dot vertically within the clock */
  left: 50%; /* Center the dot horizontally within the clock */
  transform: translate(-50%, -50%); /* Center the dot perfectly */
}


.hour-hand {
  position: absolute;
  z-index: 5;
  width: 2.5%; /* Adjust the percentage as needed for the hour hand width */
  height: 20%; /* Adjust the percentage as needed for the hour hand height */
  background: #333;
  top: 30%; /* Position the hour hand vertically centered */
  left: 50%; /* Position the hour hand horizontally centered */
  margin-left: -1.5%; /* Adjust the negative margin for horizontal alignment */
  transform-origin: 50% 100%; /* Set the transform origin to the bottom center */
  border-top-left-radius: 50%;
  border-top-right-radius: 50%;
}


.minute-hand {
  position: absolute;
  z-index: 6;
  width: 2%; /* Adjust the percentage as needed for the minute hand width */
  height: 45%; /* Adjust the percentage as needed for the minute hand height */
  background: #666;
  top: 5%; /* Position the minute hand vertically centered */
  left: 50%; /* Position the minute hand horizontally centered */
  margin-left: -1%; /* Adjust the negative margin for horizontal alignment */
  border-top-left-radius: 50%;
  border-top-right-radius: 50%;
  transform-origin: 50% 100%; /* Set the transform origin to the bottom center */
}


.second-hand {
  position: absolute;
  z-index: 7;
  width: 1%; /* Adjust the percentage as needed for the second hand width */
  height: 40%; /* Adjust the percentage as needed for the second hand height */
  background: #db490c;
  top: 10%; /* Position the second hand vertically centered */
  left: 50%; /* Position the second hand horizontally centered */
  margin-left: -0.5%; /* Adjust the negative margin for horizontal alignment */
  border-top-left-radius: 50%;
  border-top-right-radius: 50%;
  transform-origin: 50% 100%; /* Set the transform origin to the bottom center */
}


span {
  display: inline-block;
  position: absolute;
  color: #333;
  font-size: 85%; /* Adjust the percentage as needed for the font size */
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  z-index: 4;
}

.h12 {
  top: 5.5%; /* Adjust the percentage as needed for the top position */
  left: 51%;
  margin-left: -3%; /* Adjust the negative margin for horizontal alignment */
}

.h3 {
  top: 47%; /* Adjust the percentage as needed for the top position */
  right: 7%; /* Adjust the percentage as needed for the right position */
}

.h6 {
  bottom: 5.5%; /* Adjust the percentage as needed for the bottom position */
  left: 50%;
  margin-left: -1.5%; /* Adjust the negative margin for horizontal alignment */
}

.h9 {
  left: 7%; /* Adjust the percentage as needed for the left position */
  top: 47%; /* Adjust the percentage as needed for the top position */
}


.diallines {
  position: absolute;
  z-index: 2;
  width: 2px; /* Fixed width for thin lines */
  height: 2%; /* Adjusted height relative to clock size */
  background: #666;
  left: 50%;
  margin-left: -1px; /* Center the line */
  /* The transform-origin and rotation will be set dynamically via JavaScript */
}

.diallines:nth-of-type(5n) {
  width: 3px; /* Slightly wider for every fifth line */
  height: 3%; /* Slightly taller for every fifth line */
  margin-left: -1.5px; /* Center the thicker line */
  /* The transform-origin and rotation will be set dynamically via JavaScript */
}




.info {
  position: absolute;
  width: 15vw; /* Responsive width */
  height: 3vh; /* Responsive height */
  border-radius: 5px;
  background: #ccc;
  text-align: center;
  line-height: 3vh; /* Responsive line height */
  color: #000;
  font-size: 2vw; /* Responsive font size */
  top: 50%; /* Adjusted for relative positioning */
  left: 50%;
  transform: translate(-50%, -50%); /* Center the element */
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  z-index: 3;
  letter-spacing: 0.3vw; /* Responsive letter spacing */
}

.date, .day {
  position: absolute;
  width: 15vw; /* Responsive width */
  height: 3vh; /* Responsive height */
  line-height: 3vh; /* Responsive line height */
  font-size: 2vw; /* Responsive font size */
  left: 50%;
  transform: translateX(-50%); /* Horizontally center the element */
  text-align: center;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
}

.date {
  top: 25%; /* Adjusted for relative positioning */
}

.day {
  top: 75%; /* Adjusted for relative positioning */
}

/* Additional Media Queries for further fine-tuning */
@media (max-width: 600px) {
  .info, .date, .day {
    font-size: 2.5vw; /* Slightly larger font for smaller screens */
    width: 20vw; /* Responsive width */
    height: 5vh; /* Responsive height */
    line-height: 4.8vh; /* Responsive line height */
  }
  .clock {
     border: 8px solid #333;
  }
}

