.form-group {
  margin-bottom: 15px;
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.form-actions {
  text-align: right;
  margin-top: 10px;
}

label {
  display: block;
  margin-bottom: 5px;
  font-weight: 600;
  color: #424242;
}

input {
  width: 100%;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 6px;
  font-size: 16px;
  transition: border-color 0.3s;
}

input:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 2px rgba(46, 125, 50, 0.2);
}

input.invalid {
  border-color: var(--danger);
  background-color: #ffebee;
}

/* Responsive para formularios */
@media (max-width: 768px) {
  .form-row {
    grid-template-columns: 1fr;
  }
}