Frontend design
This app has an established design system; consistency with it beats novelty.
- The MUI theme in
frontend/src/theme/theme.tsis the source of truth for colors, typography, and component styling. Read it before styling anything. - Never hard-code color values in component code — use theme tokens. If a
genuinely new color is needed, add it to the theme's
customColorssection first and reference it from there. - Style through MUI components and the
sxprop. Use semantic components (Button,IconButton) — never<Box component="button">; the semantic components carry the accessibility and interaction behavior. - Icons come from
frontend/src/theme/Icons.tsx, one glyph per domain name — an eslint rule blocks importing them from@mui/icons-materialanywhere else. Size them fromICON_SIZEintheme/iconSizes.ts(inline16,ui20,prominent24), never belowuifor something clickable.