.form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.form-grid .full,
.field.full {
  grid-column: 1 / -1;
}

.form-row {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.form-section {
  display: grid;
  gap: 12px;
}

.field {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.field label {
  font-size: 10px;
  color: var(--text-muted, var(--muted, #94a3b8));
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.field input,
.field select,
.field textarea {
  width: 100%;
  min-height: 40px;
  border: 1px solid var(--glass-border, var(--line, rgba(148, 163, 184, .22)));
  border-radius: 13px;
  background: rgba(2, 6, 23, .42);
  color: var(--text-primary, var(--text, #f8fafc));
  padding: 10px 11px;
  outline: none;
  font: 700 13px var(--font, Inter, ui-sans-serif, system-ui, sans-serif);
}

.field textarea {
  min-height: 92px;
  resize: vertical;
}

.field input::placeholder,
.field textarea::placeholder {
  color: rgba(184, 199, 221, .56);
}

.field input:focus,
.field select:focus,
.field textarea:focus {
  border-color: rgba(86, 224, 194, .48);
  box-shadow: 0 0 0 3px rgba(86, 224, 194, .12);
}

.field input:disabled,
.field select:disabled,
.field textarea:disabled,
.field input[readonly],
.field select[readonly],
.field textarea[readonly],
.readonly-agent-field,
.flowlab-locked-field {
  color: rgba(226, 232, 240, .86) !important;
  background: rgba(15, 23, 42, .72) !important;
  border-color: rgba(86, 224, 194, .26) !important;
}

.field input:disabled,
.field select:disabled,
.field textarea:disabled {
  cursor: not-allowed;
  opacity: .72;
}

.field input[readonly],
.field select[readonly],
.field textarea[readonly],
.readonly-agent-field,
.flowlab-locked-field {
  cursor: not-allowed !important;
}

.field input[aria-invalid="true"],
.field select[aria-invalid="true"],
.field textarea[aria-invalid="true"] {
  border-color: rgba(251, 113, 133, .72) !important;
  box-shadow: 0 0 0 3px rgba(251, 113, 133, .13) !important;
}

.flowlab-locked-field:focus,
.readonly-agent-field:focus {
  outline: 2px solid rgba(86, 224, 194, .35) !important;
  outline-offset: 2px !important;
}

.form-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

@media (max-width: 760px) {
  .form-grid {
    grid-template-columns: 1fr;
  }

  .form-row,
  .form-actions {
    align-items: stretch;
  }

  .form-actions > * {
    width: 100%;
  }
}
