:root {
  --font-sans:
    ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue,
    Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol,
    Noto Color Emoji;
  --font-mono:
    ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
}

body {
  margin: 0;
  padding: 1rem;
  font-family: var(--font-sans);
}

button {
  width: 10rem;
  margin: 0 0.5rem 0.5rem 0;
  padding: 0.5rem;
  border: none;
  border-radius: 9999px;
  background-color: #8b5cf6;
  color: #fff;
  font-size: 0.75rem;
  line-height: 1rem;
  font-family: var(--font-mono);

  &:disabled {
    cursor: not-allowed;
    background-color: #c4b5fd;
  }
}

h2 {
  margin: 0;
  font-weight: bold;
  font-size: 1.5rem;
}

select,
input,
textarea {
  background: #111827;
  color: #fff;
  padding: 0.5rem;
  border: none;
  font-size: 100%;
  line-height: 1.5;
  font-family: var(--font-mono);
}

textarea {
  height: calc(1.5rem * 4);
  resize: vertical;
}

.group {
  margin: 1rem 0;
  border: 1px solid #e5e7eb;
  border-radius: 0.25rem;
  background: #f3f4f6;
  font-family: var(--font-mono);
  display: grid;
  grid-template-columns: 1fr 3fr;
  align-items: center;
  padding: 0.5rem;
  grid-gap: 0.5rem;

  @media (max-width: 640px) {
    grid-template-columns: 1fr;

    > :nth-child(2n - 1):not(button) {
      font-weight: 600;
    }
  }

  > * {
    overflow: hidden;
    overflow-wrap: break-word;
  }
}

.error,
.separator {
  color: #6d28d9;
}
