.artifact {
  margin: 14px 0 0;
  display: grid;
  gap: 8px;
  justify-items: start;
}

.artifact img,
.artifact video {
  display: block;
  max-width: min(100%, 720px);
  max-height: 480px;
  border-radius: 12px;
  background: #edf3f0;
}

.artifact a,
.artifact-link {
  color: #176a51;
  font-size: 13px;
}

.artifact-link {
  display: inline-block;
  margin-top: 12px;
}

.text-button {
  margin-top: 10px;
  background: transparent !important;
  color: #176a51 !important;
}

.stacked-field {
  display: grid;
  gap: 6px;
  margin: 12px 0;
}

.stacked-field input {
  border: 1px solid #c9d8d2;
  border-radius: 10px;
  padding: 10px;
}

.device-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.device-row button {
  border: 0;
  border-radius: 8px;
  padding: 7px 10px;
  color: #8c2f24;
  background: #f8e9e6;
  cursor: pointer;
}

.project-card {
  display: grid;
  gap: 6px;
  width: 100%;
  text-align: left;
  color: inherit;
  cursor: pointer;
}

.project-editor {
  margin-top: 22px;
  padding: 18px;
  border: 1px solid #d6e2dd;
  border-radius: 14px;
  background: #fbfdfc;
}

.project-editor-head,
.project-file-tools,
.project-save-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.project-editor-head h2 {
  margin: 0 0 5px;
}

.project-file-tools {
  justify-content: flex-start;
  margin: 16px 0 10px;
}

.project-generation-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 0 0 10px;
}

.project-generation-tools select {
  min-width: 230px;
  padding: 9px;
  border: 1px solid #c9d8d2;
  border-radius: 9px;
  background: white;
}

.project-file-tools select {
  min-width: 240px;
  padding: 9px;
  border: 1px solid #c9d8d2;
  border-radius: 9px;
  background: white;
}

.project-editor textarea {
  width: 100%;
  min-height: 420px;
  padding: 16px;
  resize: vertical;
  border: 1px solid #c9d8d2;
  border-radius: 10px;
  font: 14px/1.7 ui-monospace, SFMono-Regular, Menlo, monospace;
}

.project-save-row {
  margin-top: 10px;
}

.project-editor button {
  border: 0;
  border-radius: 10px;
  padding: 10px 14px;
  color: white;
  background: #19765e;
  cursor: pointer;
}

.project-editor button.secondary {
  color: #2d5b4d;
  background: #e5efeb;
}

.project-editor button:disabled {
  cursor: default;
  opacity: .55;
}

@media (max-width: 800px) {
  .project-editor-head,
  .project-file-tools,
  .project-generation-tools {
    align-items: stretch;
    flex-direction: column;
  }

  .project-file-tools select {
    width: 100%;
    min-width: 0;
  }


  .project-generation-tools select {
    width: 100%;
    min-width: 0;
  }
}
