:root {
  --background-color-light: #fff;
  --text-color-light: #000;
  --background-color-dark: #333;
  --text-color-dark: #fff;
  --form-background-light: #f9f9f9;
  --form-background-dark: #444;
  --border-color-light: #ccc;
  --border-color-dark: #666;
}

body {
  font-family: sans-serif;
  margin: 20px;
  background-color: var(--background-color-light);
  color: var(--text-color-light);
  transition: background-color 0.3s, color 0.3s;
}

body.dark-mode {
  background-color: var(--background-color-dark);
  color: var(--text-color-dark);
}

h1 {
  color: yellow;
}

form {
  max-width: 500px;
  margin: 40px auto;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  background-color: var(--form-background-light);
  border: 1px solid var(--border-color-light);
  transition: background-color 0.3s, border-color 0.3s, box-shadow 0.3s;
}

body.dark-mode form {
  background-color: var(--form-background-dark);
  border: 1px solid var(--border-color-dark);
  box-shadow: 0 0 10px rgba(255, 255, 255, 0.1);
}

form h2 {
  text-align: center;
  color: var(--text-color-light); /* This will be overridden by dark-mode body styles */
  margin-bottom: 20px;
}

body.dark-mode form h2 {
  color: var(--text-color-dark);
}

form label {
  display: block;
  margin-bottom: 8px;
  font-weight: bold;
}

form input[type="text"],
form input[type="email"],
form textarea {
  width: 100%;
  padding: 10px;
  margin-bottom: 20px;
  border: 1px solid var(--border-color-light);
  border-radius: 4px;
  box-sizing: border-box; /* Ensures padding doesn't increase width */
  background-color: var(--background-color-light);
  color: var(--text-color-light);
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
}

body.dark-mode form input[type="text"],
body.dark-mode form input[type="email"],
body.dark-mode form textarea {
  border: 1px solid var(--border-color-dark);
  background-color: var(--background-color-dark);
  color: var(--text-color-dark);
}

form button[type="submit"] {
  background-color: #007bff;
  color: white;
  padding: 10px 15px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-size: 16px;
  width: 100%;
  transition: background-color 0.3s ease;
}

form button[type="submit"]:hover {
  background-color: #0056b3;
}