- SingleSelectButtonGroup (single choice buttons)
- CheckboxGroup (multi-select checkboxes)
- CompositeScreen checkbox rendering
- StateSelectionScreen (state selection)
- GLP1HistoryScreen (medication history)
- MedicationOptionsScreen (medication cards)
- SingleSelectButtonGroup.tsx
- Width:
w-fullβ - Border:
border-2β - Selected:
border-[#00A896]β - Unselected:
border-[#E8E8E8]β
- Width:
ISSUE: Current default variant is 'default', reference uses 'pills'
Current:
variant = 'default'Reference:
variant = 'pills' // Default to pills for mobile optimizationImpact: Users see different layouts than intended by design
ISSUE: Current uses grid layout, reference uses flex-wrap
Current (branch-1):
<div className="grid grid-cols-1 sm:grid-cols-2 gap-3">Reference (new design):
<div className="flex flex-wrap gap-2.5">Impact:
- Current forces 2 columns on desktop
- Reference allows natural wrapping based on content width
- Reference uses tighter spacing (gap-2.5 vs gap-3)
ISSUE: Mix of border colors in default variant
Current:
border-[#E8E8E8] // Unselected (SHOULD BE border-gray-300)
border-[#00A896] // Selected (OK for exclusive=false)Reference:
border-gray-300 // Unselected (Standard)
border-[#1a7f72] // Selected (Teal dark variant)
bg-[#e6f3f2] // Selected backgroundImpact: Inconsistent with design system neutrals
ISSUE: Current uses mixed color references
Current:
text-[#2D3436] // Should use text-neutral-700
text-[#666666] // Should use text-neutral-600Reference:
text-neutral-700 // Standard
text-neutral-600 // Lighter text
text-[#1a7f72] // Selected (teal dark)ISSUE: Uses border-2 with hardcoded colors
Current:
border-2 border-[#E8E8E8] // Unselected
border-2 border-[#00A896] // SelectedShould Be:
border-2 border-neutral-200 // Unselected
border-2 border-[#00A896] // Selected (brand color OK)| Component | Width Class | Status |
|---|---|---|
| SingleSelectButtonGroup | w-full |
β Correct |
| CheckboxGroup (default) | w-full |
β Correct |
| CheckboxGroup (pills) | Auto (flex-wrap) | |
| CompositeScreen checkboxes | w-full |
β Correct |
| StateSelectionScreen buttons | w-full |
β Correct |
| Medication cards | w-full |
β Correct |
VERDICT: Width consistency is good, but pills layout needs flex-wrap
- All answer options:
border-2β Consistent
| Component | Current | Should Be | Status |
|---|---|---|---|
| SingleSelectButton unselected | border-[#E8E8E8] |
Keep (close to neutral-200) | β |
| SingleSelectButton selected | border-[#00A896] |
Keep (brand color) | β |
| CheckboxGroup pills unselected | border-[#E8E8E8] |
Keep | β |
| CheckboxGroup default unselected | border-[#E8E8E8] |
border-gray-300 per reference |
|
| CheckboxGroup default selected | border-[#00A896] |
border-[#1a7f72] per reference |
|
| CompositeScreen checkboxes | border-[#E8E8E8] |
border-neutral-200 |
Location: Used in multiple screens Issue: Some screens might expect 'default' but get 'pills' Risk: Layout breaks if variant changes
Affected Screens:
- MultiSelectScreen.tsx
- CompositeScreen.tsx (if using CheckboxGroup)
- Any screen with multi-select
Fix: Audit all CheckboxGroup usages and set explicit variant
Issue: Different py values across answer options
| Component | Current Padding |
|---|---|
| SingleSelectButton | py-5 sm:py-[18px] |
| CheckboxGroup pills | py-3 |
| CheckboxGroup default | py-[18px] |
Should be standardized to: py-4 or py-5 (using Tailwind scale)
Issue: Different hover border colors
Current Patterns:
hover:border-[#00A896]/30(SingleSelect)hover:border-[#00A896]/40(Checkbox pills)hover:border-[#1a7f72]/50(Reference default)
Recommendation: Standardize to one pattern
- β Change CheckboxGroup default variant to 'pills'
- β Update CheckboxGroup pills layout from grid to flex-wrap
- β Fix CompositeScreen border colors
β οΈ Standardize padding to use Tailwind scaleβ οΈ Review CheckboxGroup default variant border colors
- π Standardize hover states
- π Document answer option standards
β
Width: w-full
β
Border: border-2
β
Padding: py-5 sm:py-[18px] (acceptable)
β
Colors: Matches reference
β
Hover: Consistentβ
Width: Auto (flex-wrap) - BUT NEEDS FIX
β οΈ Layout: Should use flex-wrap not grid
β
Border: border-2
β
Padding: py-3
β οΈ Gap: Should be gap-2.5 (currently gap-3)β
Width: w-full
β
Border: border-2
β οΈ Border Colors: Different from reference
β
Padding: py-[18px]
β οΈ Text Colors: Mix of hardcoded and neutral- Change CheckboxGroup default variant to 'pills'
- Update pills layout from grid to flex-wrap
- Fix gap from gap-3 to gap-2.5 in pills
- Update border colors in CompositeScreen
- Standardize py-[18px] to py-4 or py-5
- Confirm if default variant border colors should match reference
- Verify hover state patterns
- Document final standards for answer options
| Aspect | Current | Reference | Match? |
|---|---|---|---|
| Width consistency | Good | Good | β |
| Border width | Consistent | Consistent | β |
| Border colors | Mixed | Standardized | |
| Layout (pills) | Grid | Flex-wrap | β |
| Default variant | 'default' | 'pills' | β |
| Padding values | Mixed | Standard |
Overall Assessment: Generally consistent, but 3 critical mismatches with reference design:
- CheckboxGroup default variant mismatch
- Pills layout using grid instead of flex-wrap
- Border color inconsistencies
Recommended Next Steps:
- Apply Priority 1 fixes
- Test across all screens
- Verify no rendering conflicts
- Document final standards