/* General Body Styles */
body {
    margin: 0;
    height: 100vh;
    background-color: black;
    overflow: hidden;
    position: relative;
    z-index: 0; /* Background layer */
    font-family: Arial, sans-serif;
  }
  
  /* Watermark Styles */
  .watermark {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-20deg);
    font-size: 10rem;
    font-family: 'Times New Roman', Times, serif;
    color: rgba(255, 255, 255, 0.08); /* Transparent white */
    pointer-events: none;
    z-index: 1;
  }
  
  /* Footer Styles */
  .footer {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    font-size: 16px;
    font-weight: bold;
    position: fixed;
    bottom: 0;
    right: 0;
    padding: 10px;
    color: orangered;
    text-align: right;
    z-index: 3;
  }
  
  /* Centered Container */
  .center-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
    z-index: 2;
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box; /* Ensure padding doesn't affect layout */
  }
  
  /* Heading */
  h2.title {
    margin-top: 0;
    color: lime;
    font-size: 3rem; /* Larger font size for modern look */
    text-align: center;
    word-wrap: break-word;
  }
  
  /* Score Board */
  .score-board {
    font-size: 2rem;
    font-weight: 900;
    color: lime;
    text-align: center;
    margin-bottom: 10px;
  }
  
  /* Text to Type */
  .text-to-type {
    font-size: 1.5rem;
    font-weight: bold;
    color: lime;
    margin-bottom: 20px;
    text-align: center;
    word-wrap: break-word;
  }
  
  /* Challenge Text */
  .challenge-text {
    font-size: 1.5rem;
    color: rgb(146, 154, 146);
    text-align: center;
    margin-bottom: 20px;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  /* Wrapper for Input and Button */
  .input-button-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    width: 100%;
  }
  
  /* User Input */
  textarea {
    width: 100%;
    font-size: 1.25rem;
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 8px;
    border: 1px solid #ccc;
    resize: none;
    box-sizing: border-box;
  }
  
  textarea:focus {
    border-color: #4caf50;
    outline: none;
  }
  
  /* Start Button */
  button {
    padding: 15px 30px;
    font-size: 1.25rem;
    font-weight: bold;
    border: none;
    border-radius: 8px;
    background-color: #ff5733;
    color: white;
    cursor: pointer;
    transition: all 0.3s ease;
  }
  
  button:hover {
    background-color: #ff7043;
    transform: scale(1.1);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
  }
  
  /* Results Section (Time, WPM, Accuracy) */
  .results {
    display: flex;
    justify-content: center;
    gap: 30px;
    font-size: 1.25rem;
    font-weight: bold;
    color: lime;
  }
  
  /* Remove Floating Icon (span) */
  span {
    display: none;
  }
  
  /* Responsive Styles */
  @media (max-width: 768px) {
    /* Adjust font sizes and layout for tablets */
    h2.title {
      font-size: 2.5rem;
    }
  
    .score-board, .text-to-type, .challenge-text {
      font-size: 1.25rem;
    }
  
    textarea {
      font-size: 1rem;
      padding: 12px;
    }
  
    button {
      padding: 12px 25px;
      font-size: 1.125rem;
    }
  
    .results {
      font-size: 1.125rem;
    }
  }
  
  @media (max-width: 480px) {
    /* Mobile Styles */
    h2.title {
      font-size: 2rem;
    }
  
    .score-board, .text-to-type, .challenge-text {
      font-size: 1rem;
    }
  
    textarea {
      font-size: 1rem;
      padding: 10px;
    }
  
    button {
      padding: 10px 20px;
      font-size: 1rem;
    }
  
    .results {
      font-size: 1rem;
    }
  
    .footer {
      font-size: 14px;
      padding: 8px;
    }
  
    .watermark {
      font-size: 6rem; /* Smaller watermark on mobile */
    }
  
    .center-container {
      padding: 0 15px; /* Reduce padding for mobile */
    }
  }
  