       (set-face-attribute 'variable-pitch nil :family my-variable-pitch-font))))
 
 ;;;
+;; Colors
+(defvar theme-color-mode-line "#697D8A"
+  "Color used for active mode line.")
+(defvar theme-color-mode-line-inactive "#889BA7"
+  "Color used for inactive mode line.")
+
+(defvar theme-color-error "tomato"
+  "Color used to indicate error.")
+(defvar theme-color-success "sea green"
+  "Color used to indicate success.")
+(defvar theme-color-warning "dark orange"
+  "Color used to indicate warning.")
+
+(defvar theme-color-highlight "tomato"
+  "Color used to highlight elements.")
+(defvar theme-color-lighter "grey91"
+  "Color used for less visible elements.")
+
+;;;
 ;; Faces
 (defface my-code-face
-  '((t (:inherit fixed-pitch :background "grey91")))
+  `((t (:inherit fixed-pitch :background ,theme-color-lighter)))
   "Face for fixed-width text like code snippets."
   :group 'editing)
 

  `((((background dark))
     (:inherit font-lock-comment-face :background "black"))
    (((background light))
     (:inherit font-lock-comment-face :background "grey91")))
  "Face to hightlight `hideshow' overlays."
  :group 'editing)

;; Messages
(set-face-attribute 'error nil :foreground "tomato")
(set-face-attribute 'success nil :foreground "sea green")
(set-face-attribute 'warning nil :foreground "dark orange" :weight 'bold)

;; Line numbers
(set-face-attribute 'line-number-current-line nil
                    :foreground "tomato"
                    :weight 'bold)

;; Mode line
(set-face-attribute 'mode-line nil
                    :family my-variable-pitch-font
                    :background "#697D8A"
                    :box '(:line-width 6 :color "#697D8A"))
(set-face-attribute 'mode-line-inactive nil
                    :family my-variable-pitch-font
                    :background "#889BA7"
                    :box '(:line-width 6 :color "#889BA7"))

;; Plugins
(with-eval-after-load "anzu"

(with-eval-after-load "inline-docs"
  (set-face-attribute 'inline-docs-border-face nil :inherit 'fringe)
  (set-face-attribute 'inline-docs-indicator-face nil :inherit 'fringe))

(with-eval-after-load "js2-mode"
  (set-face-underline 'js2-error theme-color-error)
  (set-face-underline 'js2-warning theme-color-warning))

(with-eval-after-load "markdown-mode"
  (set-face-attribute 'markdown-inline-code-face nil :box '(:line-width 1)))
