feat: implement custom MUI theme and integrate ThemeProvider into App shell
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
import { createTheme } from '@mui/material/styles';
|
||||
|
||||
export const getTheme = (mode: 'light' | 'dark') => createTheme({
|
||||
palette: {
|
||||
mode,
|
||||
primary: {
|
||||
main: '#0061ff',
|
||||
},
|
||||
secondary: {
|
||||
main: '#ff8c00',
|
||||
},
|
||||
background: {
|
||||
default: mode === 'light' ? '#f8f9fa' : '#0f172a',
|
||||
paper: mode === 'light' ? 'rgba(255, 255, 255, 0.7)' : 'rgba(15, 23, 42, 0.8)',
|
||||
},
|
||||
},
|
||||
typography: {
|
||||
fontFamily: '"Inter", "Roboto", "Helvetica", "Arial", sans-serif',
|
||||
h1: { fontWeight: 700 },
|
||||
h2: { fontWeight: 700 },
|
||||
h3: { fontWeight: 600 },
|
||||
button: { textTransform: 'none', fontWeight: 600 },
|
||||
},
|
||||
shape: {
|
||||
borderRadius: 12,
|
||||
},
|
||||
components: {
|
||||
MuiButton: {
|
||||
styleOverrides: {
|
||||
root: {
|
||||
borderRadius: 8,
|
||||
boxShadow: 'none',
|
||||
'&:hover': {
|
||||
boxShadow: '0 4px 12px rgba(0, 0, 0, 0.1)',
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
MuiPaper: {
|
||||
styleOverrides: {
|
||||
root: {
|
||||
backdropFilter: 'blur(12px)',
|
||||
border: `1px solid ${mode === 'light' ? 'rgba(255, 255, 255, 0.2)' : 'rgba(255, 255, 255, 0.1)'}`,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user