.budget-dialog {
  max-height: min(92vh, 760px);
  overflow-y: auto;
}

.budget-dialog form {
  gap: 0;
}

.budget-dialog textarea {
  min-height: 104px;
  resize: vertical;
  border: 1px solid rgba(255, 255, 255, .28);
  background: #151515;
  color: #fff;
  padding: 14px 16px;
  font: 1rem var(--body);
  line-height: 1.5;
  outline: none;
  margin-bottom: 18px;
}

.budget-dialog input {
  margin-bottom: 18px;
}

.budget-dialog textarea:focus {
  border-color: var(--red);
  box-shadow: 0 0 0 3px rgba(226, 29, 47, .18);
}

.form-row {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: 14px;
}

.form-row > div {
  display: flex;
  flex-direction: column;
}

.input-suffix {
  position: relative;
}

.input-suffix input {
  width: 100%;
  padding-right: 48px;
}

.input-suffix span {
  position: absolute;
  right: 15px;
  top: 18px;
  color: #aaa;
  font-size: .85rem;
}

@media (max-width: 600px) {
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .budget-dialog { max-height: 94vh; }
}
