.dfg-tool {
  margin: 1.5em 0;
  padding: 1.25em;
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fafbfc;
}

.dfg-form {
  display: grid;
  gap: 1em;
  max-width: 420px;
}

.dfg-field label {
  display: block;
  margin-bottom: 0.35em;
  font-weight: 700;
}

.dfg-field select,
.dfg-field input[type="number"] {
  width: 100%;
  max-width: 100%;
  padding: 0.55em 0.65em;
  border: 1px solid #c8cfd8;
  border-radius: 6px;
  font-size: 1rem;
  box-sizing: border-box;
}

.dfg-help {
  margin: 0.35em 0 0;
  font-size: 0.875rem;
  color: #5f6b7a;
}

.dfg-button {
  appearance: none;
  border: 0;
  border-radius: 6px;
  padding: 0.7em 1.2em;
  background: #2563eb;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
}

.dfg-button:hover {
  background: #1d4ed8;
}

.dfg-button:disabled {
  opacity: 0.65;
  cursor: wait;
}

.dfg-status {
  min-height: 1.4em;
  font-size: 0.925rem;
}

.dfg-status.is-error {
  color: #b42318;
}

.dfg-status.is-success {
  color: #027a48;
}
