/* Forms styling */
form {
  margin-top: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

form div {
  display: flex;
  flex-direction: column;
}

form label {
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 0.5rem;
}

form input[type="text"],
form textarea,
form input[type="datetime-local"] {
  background: var(--bg-elevated);
  color: var(--text-primary);
  border: 1px solid var(--bg-secondary);
  border-radius: 6px;
  padding: 0.65rem 0.75rem;
  font-family: inherit;
  font-size: 1rem;
  transition: all 0.2s ease;
}

form input[type="text"]:focus,
form textarea:focus,
form input[type="datetime-local"]:focus {
  outline: none;
  border-color: var(--accent-aqua);
  box-shadow: 0 0 0 2px rgba(125, 174, 163, 0.3);
}

form textarea {
  resize: none; /* handled with JS auto-grow if desired */
  min-height: 12rem;
  line-height: 1.6;
}

form input[type="submit"] {
  background: var(--accent-green);
  color: var(--bg-primary);
  border: none;
  border-radius: 6px;
  padding: 0.75rem 1.25rem;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}

form input[type="submit"]:hover {
  background: var(--accent-aqua);
}

form .errors {
  color: var(--accent-red);
  background: var(--bg-elevated);
  border: 1px solid var(--accent-red);
  border-radius: 6px;
  padding: 1rem;
  font-size: 0.95rem;
}

form .errors ul {
  margin-top: 0.5rem;
  padding-left: 1.25rem;
}

form .errors li {
  margin-bottom: 0.35rem;
}

