<!-- source-hash: de008cac6e8735331504b8c3add5fdc8 -->
Shared Tailwind class constants for button surface colors, outline borders, and split-divider colors — consumed by both `Button` and `SplitButton` components as a single source of truth.

## Key Components

- **`buttonSurfaceClasses`** — Object map of Tailwind classes per visual variant (`accent`, `outline`, `transparent`, `destructive`), covering base, hover, active, `disabled:`, and `aria-disabled:` states.
- **`outlineBorderClasses`** — Shared border string applied to `outline` variant buttons across all states.
- **`splitDividerColorClasses`** — Per-variant border color for the vertical seam dividing main and icon halves in split-button layouts.
- **`ButtonSurfaceVariant`** — Derived union type (`"accent" | "outline" | "transparent" | "destructive"`) inferred from `buttonSurfaceClasses` keys.

## Usage Example

```typescript
import {
  buttonSurfaceClasses,
  outlineBorderClasses,
  splitDividerColorClasses,
  type ButtonSurfaceVariant,
} from "./button-styles"

const variant: ButtonSurfaceVariant = "accent"

// Apply surface classes to a button element
const surfaceClass = buttonSurfaceClasses[variant]
// → "bg-ods-accent text-ods-text-on-accent hover:bg-ods-accent-hover ..."

// Combine with border classes for the outline variant
const outlineButtonClass = `${buttonSurfaceClasses.outline} ${outlineBorderClasses}`

// Resolve divider color for a SplitButton
const dividerClass = splitDividerColorClasses[variant]
// → "border-ods-accent-active"
```

> **Note:** Both `disabled:` and `aria-disabled:` states are included in every variant because `<a>` elements don't support the native `:disabled` pseudo-class — use `aria-disabled` on anchor-based buttons.