-hi ColorColumn ctermfg=NONE ctermbg=254 guifg=NONE guibg=#e0e0e0 guisp=NONE cterm=NONE gui=NONE
-hi Conceal ctermfg=26 ctermbg=NONE guifg=#004bb4 guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi Cursor ctermfg=NONE ctermbg=NONE guifg=NONE guibg=NONE guisp=NONE cterm=NONE,reverse gui=NONE,reverse
-hi! link CursorColumn ColorColumn
-hi! link CursorLine ColorColumn
-hi DiffAdd ctermfg=152 ctermbg=233 guifg=#abddcc guibg=#121419 guisp=NONE cterm=NONE,reverse gui=NONE,reverse
-hi DiffAdded ctermfg=152 ctermbg=233 guifg=#abddcc guibg=#121419 guisp=NONE cterm=NONE,reverse gui=NONE,reverse
-hi DiffChange ctermfg=153 ctermbg=233 guifg=#aec0e0 guibg=#121419 guisp=NONE cterm=NONE,reverse gui=NONE,reverse
-hi DiffDelete ctermfg=181 ctermbg=233 guifg=#ddabbc guibg=#121419 guisp=NONE cterm=NONE,reverse gui=NONE,reverse
-hi DiffRemoved ctermfg=181 ctermbg=233 guifg=#ddabbc guibg=#121419 guisp=NONE cterm=NONE,reverse gui=NONE,reverse
-hi DiffText ctermfg=152 ctermbg=233 guifg=#abddcc guibg=#121419 guisp=NONE cterm=NONE,reverse gui=NONE,reverse
-hi Directory ctermfg=26 ctermbg=NONE guifg=#004bb4 guibg=NONE guisp=NONE cterm=NONE,bold gui=NONE,bold
-hi EndOfBuffer ctermfg=255 ctermbg=NONE guifg=#eaeaeb guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi Error ctermfg=124 ctermbg=NONE guifg=#ae1528 guibg=NONE guisp=NONE cterm=NONE,bold,reverse gui=NONE,bold,standout
-hi! link ErrorMsg Error
-hi Folded ctermfg=248 ctermbg=254 guifg=#aaaaaa guibg=#e0e0e0 guisp=NONE cterm=NONE gui=NONE,italic
-hi! link IncSearch Search
-hi LineNr ctermfg=248 ctermbg=254 guifg=#aaaaaa guibg=#e0e0e0 guisp=NONE cterm=NONE gui=NONE
-hi MatchParen ctermfg=NONE ctermbg=250 guifg=NONE guibg=#bdbdbd guisp=NONE cterm=NONE,bold gui=NONE,bold
-hi ModeMsg ctermfg=26 ctermbg=NONE guifg=#004bb4 guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi MoreMsg ctermfg=35 ctermbg=NONE guifg=#009a5a guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi NonText ctermfg=242 ctermbg=NONE guifg=#707070 guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi Pmenu ctermfg=238 ctermbg=250 guifg=#37474f guibg=#bdbdbd guisp=NONE cterm=NONE gui=NONE
-hi PmenuSbar ctermfg=NONE ctermbg=250 guifg=NONE guibg=#bdbdbd guisp=NONE cterm=NONE gui=NONE
-hi PmenuSel ctermfg=254 ctermbg=240 guifg=#e0e0e0 guibg=#455a64 guisp=NONE cterm=NONE,bold gui=NONE,bold
-hi PmenuThumb ctermfg=NONE ctermbg=242 guifg=NONE guibg=#707070 guisp=NONE cterm=NONE gui=NONE
-hi Question ctermfg=166 ctermbg=NONE guifg=#cc7000 guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi! link QuickFixLine Search
-hi Search ctermfg=215 ctermbg=233 guifg=#ffc57f guibg=#121419 guisp=NONE cterm=NONE,reverse gui=NONE,reverse
-hi SpecialKey ctermfg=242 ctermbg=NONE guifg=#707070 guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi SpellBad ctermfg=124 ctermbg=NONE guifg=#ae1528 guibg=NONE guisp=#ae1528 cterm=NONE,underline gui=NONE,italic,undercurl
-hi SpellCap ctermfg=26 ctermbg=NONE guifg=#004bb4 guibg=NONE guisp=#004bb4 cterm=NONE,underline gui=NONE,italic,undercurl
-hi SpellLocal ctermfg=30 ctermbg=NONE guifg=#008d9a guibg=NONE guisp=#008d9a cterm=NONE,underline gui=NONE,italic,undercurl
-hi SpellRare ctermfg=127 ctermbg=NONE guifg=#b300a4 guibg=NONE guisp=#b300a4 cterm=NONE,underline gui=NONE,italic,undercurl
-hi StatusLine ctermfg=250 ctermbg=238 guifg=#bdbdbd guibg=#37474f guisp=NONE cterm=NONE,reverse gui=NONE,reverse
-hi StatusLineNC ctermfg=254 ctermbg=240 guifg=#e0e0e0 guibg=#455a64 guisp=NONE cterm=NONE,reverse gui=NONE,reverse
-hi! link StatusLineTerm StatusLine
-hi! link StatusLineTermNC StatusLineNC
-hi! link TabLine TabLineFill
-hi TabLineFill ctermfg=240 ctermbg=248 guifg=#455a64 guibg=#aaaaaa guisp=NONE cterm=NONE gui=NONE
-hi TabLineSel ctermfg=238 ctermbg=254 guifg=#37474f guibg=#e0e0e0 guisp=NONE cterm=NONE gui=NONE
-hi Title ctermfg=236 ctermbg=NONE guifg=#2e3440 guibg=NONE guisp=NONE cterm=NONE,bold gui=NONE,bold
-hi Visual ctermfg=NONE ctermbg=254 guifg=NONE guibg=#e0e0e0 guisp=NONE cterm=NONE gui=NONE
-hi! link VisualNOS Visual
-hi WarningMsg ctermfg=124 ctermbg=NONE guifg=#ae1528 guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi WildMenu ctermfg=26 ctermbg=250 guifg=#004bb4 guibg=#bdbdbd guisp=NONE cterm=NONE,bold gui=NONE,bold
-hi! link Boolean Constant
-hi! link Character Constant
-hi Comment ctermfg=242 ctermbg=NONE guifg=#546e7a guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi! link Conditional Statement
-hi Constant ctermfg=35 ctermbg=NONE guifg=#009a5a guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi! link Define PreProc
-hi! link Debug Special
-hi! link Delimiter Special
-hi! link Exception Statement
-hi! link Float Constant
-hi Function ctermfg=30 ctermbg=NONE guifg=#008d9a guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi Identifier ctermfg=26 ctermbg=NONE guifg=#004bb4 guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi Ignore ctermfg=fg ctermbg=NONE guifg=fg guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi! link Include PreProc
-hi! link Keyword Statement
-hi! link Label Statement
-hi! link Macro PreProc
-hi! link Number Constant
-hi! link Operator Statement
-hi! link PreCondit PreProc
-hi PreProc ctermfg=30 ctermbg=NONE guifg=#008d9a guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi! link Repeat Statement
-hi! link SpecialChar Special
-hi! link SpecialComment Special
-hi Statement ctermfg=124 ctermbg=NONE guifg=#ae1528 guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi! link StorageClass Type
-hi Special ctermfg=208 ctermbg=NONE guifg=#ff8c00 guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi! link String Constant
-hi! link Structure Type
-hi! link Tag Special
-hi Todo ctermfg=30 ctermbg=NONE guifg=#008d9a guibg=NONE guisp=NONE cterm=NONE,reverse gui=NONE,reverse
-hi Type ctermfg=30 ctermbg=NONE guifg=#007681 guibg=NONE guisp=NONE cterm=NONE gui=NONE
-hi! link Typedef Type
-hi Underlined ctermfg=NONE ctermbg=NONE guifg=NONE guibg=NONE guisp=NONE cterm=NONE,underline gui=NONE,underline
-hi! link lCursor Cursor
-hi CursorIM ctermfg=NONE ctermbg=NONE guifg=NONE guibg=NONE guisp=NONE cterm=NONE,reverse gui=NONE,reverse
-hi ToolbarLine ctermfg=NONE ctermbg=248 guifg=NONE guibg=#aaaaaa guisp=NONE cterm=NONE gui=NONE
-hi ToolbarButton ctermfg=236 ctermbg=248 guifg=#2e3440 guibg=#aaaaaa guisp=NONE cterm=NONE,bold gui=NONE,bold
-if get(g:, "artesanal_italic", 0)
- hi Comment cterm=italic
- hi Folded cterm=italic
- hi SpellBad cterm=italic,underline
- hi SpellCap cterm=italic,underline
- hi SpellLocal cterm=italic,underline
- hi SpellRare cterm=italic,underline
- hi Todo cterm=italic
+
+if s:t_Co >= 16
+ if &background ==# 'dark'
+ if !has('gui_running') && get(g:, 'artesanal_transp_bg', 0)
+ hi Normal ctermfg=White ctermbg=NONE cterm=NONE
+ hi CursorLineNr ctermfg=Yellow ctermbg=NONE cterm=NONE
+ hi FoldColumn ctermfg=DarkGray ctermbg=NONE cterm=NONE
+ hi SignColumn ctermfg=LightGrey ctermbg=NONE cterm=NONE
+ hi VertSplit ctermfg=DarkGrey ctermbg=NONE cterm=NONE
+ else
+ hi Normal ctermfg=White ctermbg=Black cterm=NONE
+ hi CursorLineNr ctermfg=Yellow ctermbg=Black cterm=NONE
+ hi FoldColumn ctermfg=DarkGray ctermbg=Black cterm=NONE
+ hi SignColumn ctermfg=LightGrey ctermbg=Black cterm=NONE
+ hi VertSplit ctermfg=DarkGrey ctermbg=Black cterm=NONE
+ endif
+ hi ColorColumn ctermfg=NONE ctermbg=Black cterm=NONE
+ hi Conceal ctermfg=Blue ctermbg=NONE cterm=NONE
+ hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
+ hi! link CursorColumn ColorColumn
+ hi! link CursorLine ColorColumn
+ hi DiffAdd ctermfg=LightGreen ctermbg=Black cterm=reverse
+ hi DiffAdded ctermfg=LightGreen ctermbg=Black cterm=reverse
+ hi DiffChange ctermfg=LightBlue ctermbg=Black cterm=reverse
+ hi DiffDelete ctermfg=LightRed ctermbg=Black cterm=reverse
+ hi DiffRemoved ctermfg=LightRed ctermbg=Black cterm=reverse
+ hi DiffText ctermfg=LightGreen ctermbg=Black cterm=reverse
+ hi Directory ctermfg=Blue ctermbg=NONE cterm=bold
+ hi EndOfBuffer ctermfg=Black ctermbg=NONE cterm=NONE
+ hi Error ctermfg=Red ctermbg=NONE cterm=bold,reverse
+ hi! link ErrorMsg Error
+ hi Folded ctermfg=DarkGrey ctermbg=Black cterm=NONE
+ hi! link IncSearch Search
+ hi LineNr ctermfg=DarkGrey ctermbg=Black cterm=NONE
+ hi MatchParen ctermfg=NONE ctermbg=DarkGrey cterm=bold
+ hi ModeMsg ctermfg=Blue ctermbg=NONE cterm=NONE
+ hi MoreMsg ctermfg=Green ctermbg=NONE cterm=NONE
+ hi NonText ctermfg=LightGrey ctermbg=NONE cterm=NONE
+ hi Pmenu ctermfg=White ctermbg=DarkGrey cterm=NONE
+ hi PmenuSbar ctermfg=NONE ctermbg=DarkGrey cterm=NONE
+ hi PmenuSel ctermfg=Black ctermbg=LightGrey cterm=bold
+ hi PmenuThumb ctermfg=NONE ctermbg=LightGrey cterm=NONE
+ hi Question ctermfg=DarkYellow ctermbg=NONE cterm=NONE
+ hi! link QuickFixLine Search
+ hi Search ctermfg=LightYellow ctermbg=Black cterm=reverse
+ hi SpecialKey ctermfg=LightGrey ctermbg=NONE cterm=NONE
+ hi SpellBad ctermfg=Red ctermbg=NONE cterm=underline
+ hi SpellCap ctermfg=Blue ctermbg=NONE cterm=underline
+ hi SpellLocal ctermfg=Cyan ctermbg=NONE cterm=underline
+ hi SpellRare ctermfg=Magenta ctermbg=NONE cterm=underline
+ hi StatusLine ctermfg=DarkGrey ctermbg=White cterm=reverse
+ hi StatusLineNC ctermfg=Black ctermbg=LightGrey cterm=reverse
+ hi! link StatusLineTerm StatusLine
+ hi! link StatusLineTermNC StatusLineNC
+ hi! link TabLine TabLineFill
+ hi TabLineFill ctermfg=LightGrey ctermbg=DarkGrey cterm=NONE
+ hi TabLineSel ctermfg=White ctermbg=Black cterm=NONE
+ hi Title ctermfg=White ctermbg=NONE cterm=bold
+ hi Visual ctermfg=NONE ctermbg=Black cterm=NONE
+ hi! link VisualNOS Visual
+ hi WarningMsg ctermfg=Red ctermbg=NONE cterm=NONE
+ hi WildMenu ctermfg=Blue ctermbg=DarkGrey cterm=bold
+ hi! link Boolean Constant
+ hi! link Character Constant
+ hi Comment ctermfg=DarkGrey ctermbg=NONE cterm=NONE
+ hi! link Conditional Statement
+ hi Constant ctermfg=Green ctermbg=NONE cterm=NONE
+ hi! link Define PreProc
+ hi! link Debug Special
+ hi! link Delimiter Special
+ hi! link Exception Statement
+ hi! link Float Constant
+ hi Function ctermfg=Cyan ctermbg=NONE cterm=NONE
+ hi Identifier ctermfg=Blue ctermbg=NONE cterm=NONE
+ hi Ignore ctermfg=fg ctermbg=NONE cterm=NONE
+ hi! link Include PreProc
+ hi! link Keyword Statement
+ hi! link Label Statement
+ hi! link Macro PreProc
+ hi! link Number Constant
+ hi! link Operator Statement
+ hi! link PreCondit PreProc
+ hi PreProc ctermfg=Cyan ctermbg=NONE cterm=NONE
+ hi! link Repeat Statement
+ hi! link SpecialChar Special
+ hi! link SpecialComment Special
+ hi Statement ctermfg=Red ctermbg=NONE cterm=NONE
+ hi! link StorageClass Type
+ hi Special ctermfg=Yellow ctermbg=NONE cterm=NONE
+ hi! link String Constant
+ hi! link Structure Type
+ hi! link Tag Special
+ hi Todo ctermfg=Cyan ctermbg=NONE cterm=reverse
+ hi Type ctermfg=DarkCyan ctermbg=NONE cterm=NONE
+ hi! link Typedef Type
+ hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
+ hi! link lCursor Cursor
+ hi CursorIM ctermfg=NONE ctermbg=NONE cterm=reverse
+ hi ToolbarLine ctermfg=NONE ctermbg=DarkGrey cterm=NONE
+ hi ToolbarButton ctermfg=White ctermbg=DarkGrey cterm=bold
+ hi! link iCursor Cursor
+ hi! link vCursor Cursor
+ hi NormalMode ctermfg=LightGrey ctermbg=Black cterm=reverse
+ hi InsertMode ctermfg=Blue ctermbg=Black cterm=reverse
+ hi ReplaceMode ctermfg=Cyan ctermbg=Black cterm=reverse
+ hi VisualMode ctermfg=Yellow ctermbg=Black cterm=reverse
+ hi CommandMode ctermfg=Magenta ctermbg=Black cterm=reverse
+ hi Warnings ctermfg=Yellow ctermbg=Black cterm=reverse
+ if has('nvim')
+ hi! link TermCursor Cursor
+ hi TermCursorNC ctermfg=Black ctermbg=White cterm=NONE
+ endif
+ unlet s:t_Co s:italics
+ finish
+ endif
+ " Light background
+ if !has('gui_running') && get(g:, 'artesanal_transp_bg', 0)
+ hi Normal ctermfg=Black ctermbg=NONE cterm=NONE
+ hi CursorLineNr ctermfg=Yellow ctermbg=NONE cterm=NONE
+ hi FoldColumn ctermfg=DarkGray ctermbg=NONE cterm=NONE
+ hi SignColumn ctermfg=DarkGrey ctermbg=NONE cterm=NONE
+ hi VertSplit ctermfg=DarkGrey ctermbg=NONE cterm=NONE
+ else
+ hi Normal ctermfg=Black ctermbg=White cterm=NONE
+ hi CursorLineNr ctermfg=Yellow ctermbg=White cterm=NONE
+ hi FoldColumn ctermfg=DarkGray ctermbg=White cterm=NONE
+ hi SignColumn ctermfg=DarkGrey ctermbg=White cterm=NONE
+ hi VertSplit ctermfg=DarkGrey ctermbg=White cterm=NONE
+ endif
+ hi ColorColumn ctermfg=NONE ctermbg=White cterm=NONE
+ hi Conceal ctermfg=Blue ctermbg=NONE cterm=NONE
+ hi Cursor ctermfg=NONE ctermbg=NONE cterm=reverse
+ hi! link CursorColumn ColorColumn
+ hi! link CursorLine ColorColumn
+ hi DiffAdd ctermfg=LightGreen ctermbg=Black cterm=reverse
+ hi DiffAdded ctermfg=LightGreen ctermbg=Black cterm=reverse
+ hi DiffChange ctermfg=LightBlue ctermbg=Black cterm=reverse
+ hi DiffDelete ctermfg=LightRed ctermbg=Black cterm=reverse
+ hi DiffRemoved ctermfg=LightRed ctermbg=Black cterm=reverse
+ hi DiffText ctermfg=LightGreen ctermbg=Black cterm=reverse
+ hi Directory ctermfg=Blue ctermbg=NONE cterm=bold
+ hi EndOfBuffer ctermfg=White ctermbg=NONE cterm=NONE
+ hi Error ctermfg=Red ctermbg=NONE cterm=bold,reverse
+ hi! link ErrorMsg Error
+ hi Folded ctermfg=DarkGrey ctermbg=White cterm=NONE
+ hi! link IncSearch Search
+ hi LineNr ctermfg=DarkGrey ctermbg=White cterm=NONE
+ hi MatchParen ctermfg=NONE ctermbg=LightGrey cterm=bold
+ hi ModeMsg ctermfg=Blue ctermbg=NONE cterm=NONE
+ hi MoreMsg ctermfg=Green ctermbg=NONE cterm=NONE
+ hi NonText ctermfg=DarkGrey ctermbg=NONE cterm=NONE
+ hi Pmenu ctermfg=Black ctermbg=LightGrey cterm=NONE
+ hi PmenuSbar ctermfg=NONE ctermbg=LightGrey cterm=NONE
+ hi PmenuSel ctermfg=White ctermbg=DarkGrey cterm=bold
+ hi PmenuThumb ctermfg=NONE ctermbg=DarkGrey cterm=NONE
+ hi Question ctermfg=DarkYellow ctermbg=NONE cterm=NONE
+ hi! link QuickFixLine Search
+ hi Search ctermfg=LightYellow ctermbg=Black cterm=reverse
+ hi SpecialKey ctermfg=DarkGrey ctermbg=NONE cterm=NONE
+ hi SpellBad ctermfg=Red ctermbg=NONE cterm=underline
+ hi SpellCap ctermfg=Blue ctermbg=NONE cterm=underline
+ hi SpellLocal ctermfg=Cyan ctermbg=NONE cterm=underline
+ hi SpellRare ctermfg=Magenta ctermbg=NONE cterm=underline
+ hi StatusLine ctermfg=LightGrey ctermbg=Black cterm=reverse
+ hi StatusLineNC ctermfg=White ctermbg=DarkGrey cterm=reverse
+ hi! link StatusLineTerm StatusLine
+ hi! link StatusLineTermNC StatusLineNC
+ hi! link TabLine TabLineFill
+ hi TabLineFill ctermfg=DarkGrey ctermbg=DarkGrey cterm=NONE
+ hi TabLineSel ctermfg=Black ctermbg=White cterm=NONE
+ hi Title ctermfg=Black ctermbg=NONE cterm=bold
+ hi Visual ctermfg=NONE ctermbg=White cterm=NONE
+ hi! link VisualNOS Visual
+ hi WarningMsg ctermfg=Red ctermbg=NONE cterm=NONE
+ hi WildMenu ctermfg=Blue ctermbg=LightGrey cterm=bold
+ hi! link Boolean Constant
+ hi! link Character Constant
+ hi Comment ctermfg=DarkGrey ctermbg=NONE cterm=NONE
+ hi! link Conditional Statement
+ hi Constant ctermfg=Green ctermbg=NONE cterm=NONE
+ hi! link Define PreProc
+ hi! link Debug Special
+ hi! link Delimiter Special
+ hi! link Exception Statement
+ hi! link Float Constant
+ hi Function ctermfg=Cyan ctermbg=NONE cterm=NONE
+ hi Identifier ctermfg=Blue ctermbg=NONE cterm=NONE
+ hi Ignore ctermfg=fg ctermbg=NONE cterm=NONE
+ hi! link Include PreProc
+ hi! link Keyword Statement
+ hi! link Label Statement
+ hi! link Macro PreProc
+ hi! link Number Constant
+ hi! link Operator Statement
+ hi! link PreCondit PreProc
+ hi PreProc ctermfg=Cyan ctermbg=NONE cterm=NONE
+ hi! link Repeat Statement
+ hi! link SpecialChar Special
+ hi! link SpecialComment Special
+ hi Statement ctermfg=Red ctermbg=NONE cterm=NONE
+ hi! link StorageClass Type
+ hi Special ctermfg=Yellow ctermbg=NONE cterm=NONE
+ hi! link String Constant
+ hi! link Structure Type
+ hi! link Tag Special
+ hi Todo ctermfg=Cyan ctermbg=NONE cterm=reverse
+ hi Type ctermfg=DarkCyan ctermbg=NONE cterm=NONE
+ hi! link Typedef Type
+ hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline
+ hi! link lCursor Cursor
+ hi CursorIM ctermfg=NONE ctermbg=NONE cterm=reverse
+ hi ToolbarLine ctermfg=NONE ctermbg=DarkGrey cterm=NONE
+ hi ToolbarButton ctermfg=Black ctermbg=DarkGrey cterm=bold
+ hi! link iCursor Cursor
+ hi! link vCursor Cursor
+ hi NormalMode ctermfg=DarkGrey ctermbg=White cterm=reverse
+ hi InsertMode ctermfg=Blue ctermbg=White cterm=reverse
+ hi ReplaceMode ctermfg=Cyan ctermbg=White cterm=reverse
+ hi VisualMode ctermfg=Yellow ctermbg=White cterm=reverse
+ hi CommandMode ctermfg=Magenta ctermbg=White cterm=reverse
+ hi Warnings ctermfg=Yellow ctermbg=White cterm=reverse
+ if has('nvim')
+ hi! link TermCursor Cursor
+ hi TermCursorNC ctermfg=White ctermbg=Black cterm=NONE
+ endif
+ unlet s:t_Co s:italics
+ finish