Component for displaying input field labels with support for required indicator, character counter, and progress indicator.

FieldLabel provides uniform display of form field captions, automatically integrates with FieldCounter for character counting and Progress for loading indication. The component supports skeleton loading, customizable slots, and ensures consistent visual styling of form elements.

**Key features:**

- Text label display for input fields
- Required field indicator (required marker)
- FieldCounter integration for character counting
- Built-in Progress indicator support
- Skeleton loading support for pending states
- Flexible customization via slots (leading, trailing)
- Consistent spacing and styles within forms

**Common use cases:**

- Labels for text fields and textareas
- Forms with required fields
- Fields with character count limits
- Forms with file upload progress indication
- Dynamic forms with skeleton loading

```html
<script setup>
import { ref } from 'vue'

const text = ref('')
const maxLength = 100
</script>

<template>
  <!-- Simple label -->
  <FieldLabel label="Username" />

  <!-- Required field label -->
  <FieldLabel
    label="Email"
    required
  />

  <!-- Label with character counter -->
  <FieldLabel
    label="Description"
    :counter="text.length"
    :maxlength="maxLength"
  />

  <!-- Label with progress indicator -->
  <FieldLabel
    label="File Upload"
    :progress="45"
  />

  <!-- Label with slots -->
  <FieldLabel label="Search">
    <template #leading>
      <Icon name="search" />
    </template>
    <template #trailing>
      <Icon name="info" />
    </template>
  </FieldLabel>
</template>
```
