pub fn button(p: &ButtonProps) -> StringExpand description
Returns the canonical CSS class string for a button.
Upstream basecoat uses compound classes: btn-{size}-{variant} for non-default
sizes, and btn-{variant} for default (no size prefix). Examples:
- Default + Primary →
"btn-primary" - Sm + Outline →
"btn-sm-outline" - Lg + Destructive →
"btn-lg-destructive" - Icon + Ghost →
"btn-icon-ghost"