--- id: 9-4 title: 9-4 Component Styling - Buttons status: Done date: 2026-09-27 parent: 9 --- ## Description As a user, I want consistent, professional button styling, So that interactive elements are clear and visually appealing. Flux UI buttons accept a variant prop. We extend Flux by: 1. Using Flux's component as-is for structure 2. Applying brand colors via the variant prop or custom CSS classes 3. NOT creating wrapper components unless absolutely necessary. Full implementation history: docs/stories/story-9.4-component-styling-buttons.md ## Acceptance Criteria - [ ] Background: Gold (`bg-gold` / #D4AF37) - [ ] Text: Dark Navy Blue (`text-navy`) - [ ] Hover: Light Gold (`hover:bg-gold-light` / #F4E4B8) - [ ] Border-radius: 6px (`rounded-md`) - [ ] Padding: 12px 24px (`px-6 py-3`) - [ ] Background: Transparent - [ ] Border: 2px solid Gold (`border-2 border-gold`) - [ ] Text: Gold (`text-gold`) - [ ] Hover: Gold background, Navy text (`hover:bg-gold hover:text-navy`) - [ ] Background: #CCCCCC - [ ] Text: #666666 - [ ] No hover effect - [ ] Cursor: not-allowed - [ ] Background: #E74C3C (`bg-danger`) - [ ] Text: White - [ ] Hover: Slightly darker (`hover:bg-danger/90`) - [ ] Small: `px-4 py-2 text-sm` (for compact UI areas) - [ ] Default: `px-6 py-3 text-base` (standard usage) - [ ] Large: `px-8 py-4 text-lg` (hero CTAs) - [ ] Loading states with Flux spinner component - [ ] Focus states: Gold outline ring for accessibility (`focus:ring-2 focus:ring-gold focus:ring-offset-2`) - [ ] Icon support: Buttons with leading/trailing icons - [ ] Full-width variant for mobile forms - [ ] Button groups with proper border-radius handling