@layer components {
  .hm-c-form {
    display: flex;
    flex-direction: column;
    gap: var(--hm-space-md);
    width: min(22rem, 100%);
    padding: var(--hm-space-lg);
    border: 1px solid var(--hm-color-border);
    border-radius: var(--hm-radius-md);
    background: var(--hm-color-surface);
  }

  .hm-c-form__field {
    display: flex;
    flex-direction: column;
    gap: var(--hm-space-xs);
  }

  .hm-c-form__label {
    color: var(--hm-color-text-muted);
    font-size: var(--hm-font-size-sm);
  }

  .hm-c-form__input {
    padding: var(--hm-space-sm);
    border: 1px solid var(--hm-color-border);
    border-radius: var(--hm-radius-md);
    background: var(--hm-color-bg);
    color: var(--hm-color-text);
    font: inherit;
  }

  .hm-c-form__error {
    margin: 0;
    color: var(--hm-color-danger);
    font-size: var(--hm-font-size-sm);
  }
}
