/* Shared workspace forms also support labels wrapping their own controls. */
.shell form.stack {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.shell form.stack label {
  display: grid;
  gap: 7px;
  min-width: 0;
  font-size: 13px;
  font-weight: 650;
}

.shell form.stack input:not([type="checkbox"]):not([type="radio"]),
.shell form.stack textarea,
.shell form.stack select {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 10px 12px;
  color: var(--foreground);
  background: var(--card);
  border: 1px solid var(--input);
  border-radius: var(--radius-sm);
  font: inherit;
  font-size: 16px;
  font-weight: 400;
}

.shell form.stack textarea {
  min-height: 240px;
  resize: vertical;
  line-height: 1.5;
  font-family: ui-monospace, monospace;
}

.shell form.stack :is(input, textarea, select):focus-visible {
  outline: 2px solid var(--ring);
  outline-offset: 2px;
}

.shell form.stack > button {
  justify-self: start;
}

.shell > header.header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}

.shell > header.header h1 {
  flex: 1 1 180px;
  margin: 0;
}

.shell > header.header > button {
  flex: 0 0 auto;
  width: auto;
}
