import { createTheme } from '@mui/material/styles' declare module '@mui/material/styles' { interface Theme { custom: { task: { todo: string done: string backlog: string } } } interface ThemeOptions { custom?: { task?: { todo?: string done?: string backlog?: string } } } } export const theme = createTheme({ palette: { mode: 'light', primary: { 50: '#eff6ff', 100: '#dbeafe', 500: '#3b82f6', main: '#3b82f6', contrastText: '#ffffff', }, background: { default: '#f9fafb', paper: '#ffffff', }, text: { primary: '#111827', secondary: '#6b7280', }, grey: { 50: '#f9fafb', 100: '#f3f4f6', 200: '#e5e7eb', 300: '#d1d5db', 600: '#4b5563', 700: '#374151', 800: '#1f2937', 900: '#111827', }, }, typography: { fontFamily: '"Inter", ui-sans-serif, system-ui, sans-serif', h1: { fontSize: '2rem', fontWeight: 700, lineHeight: 1.2, }, h2: { fontSize: '1.5rem', fontWeight: 600, lineHeight: 1.3, }, h3: { fontSize: '1.25rem', fontWeight: 600, lineHeight: 1.4, }, body1: { fontSize: '1rem', lineHeight: 1.6, }, body2: { fontSize: '0.875rem', lineHeight: 1.5, }, }, shape: { borderRadius: 12, }, components: { MuiAppBar: { styleOverrides: { root: { backgroundColor: '#ffffff', color: '#111827', boxShadow: '0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)', borderBottom: '1px solid #e5e7eb', }, }, }, MuiDrawer: { styleOverrides: { paper: { backgroundColor: '#ffffff', borderRight: '1px solid #e5e7eb', }, }, }, MuiButton: { styleOverrides: { root: { textTransform: 'none', borderRadius: '0.75rem', fontWeight: 500, }, contained: { boxShadow: '0 1px 2px 0 rgb(0 0 0 / 0.05)', '&:hover': { boxShadow: '0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)', }, }, }, }, MuiCard: { styleOverrides: { root: { borderRadius: '0.75rem', boxShadow: '0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)', border: '1px solid #e5e7eb', '&:hover': { boxShadow: '0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)', borderColor: '#d1d5db', }, }, }, }, MuiTextField: { styleOverrides: { root: { '& .MuiOutlinedInput-root': { borderRadius: '0.75rem', }, }, }, }, }, custom: { task: { todo: '#3b82f6', done: '#22c55e', backlog: '#6b7280', }, }, }) export const darkTheme = createTheme({ palette: { mode: 'dark', primary: { 50: '#eff6ff', 100: '#dbeafe', 500: '#3b82f6', main: '#3b82f6', contrastText: '#ffffff', }, background: { default: '#030712', paper: '#1f2937', }, text: { primary: '#f9fafb', secondary: '#9ca3af', }, grey: { 50: '#f9fafb', 100: '#f3f4f6', 200: '#e5e7eb', 300: '#d1d5db', 600: '#4b5563', 700: '#374151', 800: '#1f2937', 900: '#111827', }, }, typography: { fontFamily: '"Inter", ui-sans-serif, system-ui, sans-serif', h1: { fontSize: '2rem', fontWeight: 700, lineHeight: 1.2, }, h2: { fontSize: '1.5rem', fontWeight: 600, lineHeight: 1.3, }, h3: { fontSize: '1.25rem', fontWeight: 600, lineHeight: 1.4, }, body1: { fontSize: '1rem', lineHeight: 1.6, }, body2: { fontSize: '0.875rem', lineHeight: 1.5, }, }, shape: { borderRadius: 12, }, components: { MuiAppBar: { styleOverrides: { root: { backgroundColor: '#1f2937', color: '#f9fafb', boxShadow: '0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)', borderBottom: '1px solid #374151', }, }, }, MuiDrawer: { styleOverrides: { paper: { backgroundColor: '#1f2937', borderRight: '1px solid #374151', }, }, }, MuiButton: { styleOverrides: { root: { textTransform: 'none', borderRadius: '0.75rem', fontWeight: 500, }, contained: { boxShadow: '0 1px 2px 0 rgb(0 0 0 / 0.05)', '&:hover': { boxShadow: '0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)', }, }, }, }, MuiCard: { styleOverrides: { root: { backgroundColor: '#1f2937', borderRadius: '0.75rem', boxShadow: '0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)', border: '1px solid #374151', '&:hover': { boxShadow: '0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)', borderColor: '#4b5563', }, }, }, }, MuiTextField: { styleOverrides: { root: { '& .MuiOutlinedInput-root': { borderRadius: '0.75rem', }, }, }, }, }, custom: { task: { todo: '#3b82f6', done: '#22c55e', backlog: '#6b7280', }, }, })