diff --git a/README b/README
index 12618d5..b363f7c 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-Numix is a modern looking flat theme for Gnome. It supports Gnome, Unity, Pantheon, XFCE and Openbox. The theme is compatible with GTK 3.6 and 3.8. It also includes a GTK 2.0 theme using Murrine engine.
+Numix is a modern looking flat theme for Gnome. It supports Gnome, Unity, XFCE and Openbox. The theme is compatible with GTK 3.6 and 3.8. It also includes a GTK 2.0 theme using Murrine engine.
 
 ---
 
diff --git a/gtk-2.0/gtkrc b/gtk-2.0/gtkrc
index d2bcba9..a77af3d 100644
--- a/gtk-2.0/gtkrc
+++ b/gtk-2.0/gtkrc
@@ -118,7 +118,7 @@ style "murrine-default" {
 		colorize_scrollbar = FALSE		
 		comboboxstyle = 0 # 0 = normal combobox, 1 = colorized combobox below arrow
 		contrast = 0.8
-		focusstyle = 3 # 0 = none, 1 = grey dotted, 2 = colored with fill, 3 = colored glow
+		focusstyle = 1 # 0 = none, 1 = grey dotted, 2 = colored with fill, 3 = colored glow
 		glazestyle = 0 # 0 = flat highlight, 1 = curved highlight, 2 = concave, 3 = top curved highlight, 4 = beryl highlight
 		glowstyle = 0
 		gradient_shades = { 1.0, 1.0, 1.0, 1.0 }
@@ -154,12 +154,8 @@ style "murrine-wider" {
 # Notebook
 
 style "murrine-notebook-bg" {
-	bg[NORMAL] = shade (1.08, @bg_color)
-	bg[ACTIVE] = shade (0.90, @bg_color)
-
-	engine "murrine" {
-		border_shades = { 0.8, 0.8 }
-	}
+	bg[NORMAL] = @base_color
+	bg[ACTIVE] = shade (0.87, @base_color)
 }
 
 style "murrine-notebook" = "murrine-notebook-bg" {
@@ -286,8 +282,8 @@ style "murrine-radiocheck" = "murrine-default" {
 }
 
 style "murrine-entry" = "murrine-wider" {
-
 	engine "murrine" {
+		border_shades = { 1.3, 1.3 }
 	}
 }
 
@@ -296,7 +292,7 @@ style "metacity-frame" = "murrine-default" {
 }
 
 style "murrine-statusbar" { }
-style "murrine-comboboxentry" = "murrine-entry" { }
+style "murrine-comboboxentry" = "murrine-entry" { ythickness = 1 }
 style "murrine-hscale" = "murrine-scale" { }
 style "murrine-vscale" = "murrine-scale" { }
 style "murrine-hscrollbar" = "murrine-scrollbar" { }
@@ -539,15 +535,36 @@ style "xfwm-tabwin" {
 	Xfwm4TabwinWidget::border-width = 0
 	Xfwm4TabwinWidget::icon-size = 64
 
+	bg[NORMAL]	= @menu_bg_color
+	fg[NORMAL]	= @menu_fg_color
+
 	engine "murrine" {
 		focusstyle = 0
 	}
 }
 
 style "xfsm-logout" {
+	bg[NORMAL]	= @menu_bg_color
+	bg[ACTIVE]	= @menu_bg_color
+	bg[PRELIGHT]	= shade (1.1, @menu_bg_color)
+	bg[SELECTED]	= shade (0.5, @menu_bg_color)
+	bg[INSENSITIVE]	= shade (1.3, @menu_bg_color)
+
+	fg[NORMAL]	= @menu_fg_color
+	fg[PRELIGHT]	= @menu_fg_color
+
+	text[NORMAL]	= @menu_fg_color
 
 	engine "murrine" {
-		}	
+	}
+}
+
+style "xfsm-logout-button" {
+	bg[NORMAL]	= shade (1.2, @menu_bg_color)
+	bg[PRELIGHT]	= shade (1.4, @menu_bg_color)
+
+	engine "murrine" {
+	}
 }
 
 widget "*WnckPager*" style "workspace-switcher"
@@ -555,11 +572,23 @@ widget "*WnckPager*" style "workspace-switcher"
 widget "*Xfce*Panel*" style "murrine-panel"
 class "*Xfce*Panel*" style "murrine-panel"
 
-widget_class "*XfceHeading*" style "xfce-header"
-widget_class "*XfceDesktop*" style "xfdesktop-windowlist"
-widget_class "*XfdesktopIconView*" style "xfdesktop-icon-view"
-widget "xfwm4-tabwin*" style "xfwm-tabwin"
-widget_class "*XfsmLogoutDialog*" style "xfsm-logout"
+# Thunar Styles
+
+style "sidepane" {
+	base[NORMAL] = @bg_color
+	base[INSENSITIVE] = mix (0.4, shade (1.35, @selected_bg_color), shade (0.9, @base_color))
+	bg[NORMAL] = @bg_color
+	text[NORMAL] = mix (0.9, @fg_color, @bg_color)
+}
+
+widget_class "*ThunarShortcutsView*" style "sidepane"
+widget_class "*ThunarTreeView*" style "sidepane"
+widget_class "*ThunarLocationEntry*" style "murrine-entry"
+
+# Gtk2 Open-File Dialog
+
+widget_class "*GtkFileChooserWidget.GtkFileChooserDefault.GtkVBox.GtkHPaned.GtkVBox.GtkScrolledWindow.GtkTreeView*" style "sidepane"
+widget_class "*GtkFileChooserWidget.GtkFileChooserDefault.GtkVBox.GtkHPaned.GtkVBox.GtkScrolledWindow.<GtkTreeView>.<GtkButton>" style "murrine-treeview-header"
 
 # Google Chrome/Chromium Styles (requires 9.0.597 or newer)
 
@@ -592,7 +621,7 @@ class "ChromeGtkFrame" style "chrome-gtk-frame"
 
 widget_class "*Chrom*Button*" style "chromium-toolbar-button"
 
-# General Style Application
+# General Styles
 
 class "GtkWidget" style "murrine-default"
 
@@ -727,3 +756,10 @@ widget_class "*GimpToolbox*" style "performance-fix"
 widget_class "*GimpMenuDock*" style "performance-fix"
 widget "*OOoFixed*" style "performance-fix" # Openoffice/Libreoffice
 widget_class "*MozContainer*" style "performance-fix" # Firefox (Not sure if this one does anything though.)
+
+widget_class "*XfceHeading*" style "xfce-header"
+widget_class "*XfceDesktop*" style "xfdesktop-windowlist"
+widget_class "*XfdesktopIconView*" style "xfdesktop-icon-view"
+widget "xfwm4-tabwin*" style "xfwm-tabwin"
+widget_class "*XfsmLogoutDialog*" style "xfsm-logout"
+widget_class "*XfsmLogoutDialog*GtkButton" style "xfsm-logout-button"
diff --git a/gtk-3.0/apps/gnome-applications.css b/gtk-3.0/apps/gnome-applications.css
index 8b91733..f8b4589 100644
--- a/gtk-3.0/apps/gnome-applications.css
+++ b/gtk-3.0/apps/gnome-applications.css
@@ -258,4 +258,4 @@ GeditFloatingSlider .not-found {
  ***********************/
 CcShellItemView.view {
     background-color: @theme_bg_color;
-}
+}
\ No newline at end of file
diff --git a/gtk-3.0/apps/granite-widgets.css b/gtk-3.0/apps/granite-widgets.css
deleted file mode 100644
index d27c13d..0000000
--- a/gtk-3.0/apps/granite-widgets.css
+++ /dev/null
@@ -1,405 +0,0 @@
-/********************
- * dynamic notebook *
- ********************/
-.dynamic-notebook {
-    background-color: shade(@theme_bg_color, 1.08);
-    background-image: none;
-}
-
-.dynamic-notebook GtkLabel,
-.dynamic-notebook GtkImage {
-    color: alpha(@theme_fg_color, 0.5);
-}
-
-.dynamic-notebook .notebook {
-    -GtkNotebook-tab-overlap: 3px;
-    -GtkNotebook-initial-gap: 12px;
-
-    border-width: 1px 0 0 0;
-    border-color: shade(@theme_bg_color, 0.8);
-    border-radius: 0;
-    padding: 0;
-}
-
-.dynamic-notebook .notebook tab {
-    padding: 3px;
-    border-color: shade(@theme_bg_color, 0.85);
-    border-radius: 2px;
-    background-color: shade(@theme_bg_color, 0.9);
-    background-image: none;
-}
-
-.dynamic-notebook .notebook tab:nth-child(first) {
-    border-width: 0 1px 0 1px;
-}
-
-.dynamic-notebook .notebook tab:active {
-    border-width: 1px;
-    border-color: shade(@theme_bg_color, 0.8);
-    border-radius: 2px;
-    background-color: shade(@theme_bg_color, 1.08);
-    color: @theme_fg_color;
-}
-
-.dynamic-notebook .notebook tab .entry {
-    border-radius: 2px;
-    padding: 4px 3px;
-}
-
-.dynamic-notebook .button:hover,
-.dynamic-notebook .button:hover:active,
-.dynamic-notebook .notebook .button,
-.dynamic-notebook .notebook .button:hover,
-.dynamic-notebook .notebook .button:hover:active {
-    border-color: shade(@theme_bg_color, 0.7);
-    background-color: shade(@theme_bg_color, 1.10);
-    background-image: none;
-}
-
-.dynamic-notebook .button:hover:active,
-.dynamic-notebook .notebook .button:hover:active {
-    border-color: shade(@theme_bg_color, 0.7);
-    color: shade(@theme_fg_color, 0.7);
-}
-
-/****************
- * content view *
- ****************/
-.content-view-window {
-    border-width: 1px;
-    border-style: solid;
-    border-color: shade(@theme_base_color, 0.8);
-    border-radius: 2px;
-    background-color:@theme_base_color;
-    color: @theme_text_color;
-}
-
-.content-view,
-.content-view GtkViewport {
-    background-color: @theme_base_color;
-}
-
-.content-view * {
-    background-color: transparent;
-    background-image: none;
-}
-
-.content-view .entry {
-    background-color: @theme_base_color;
-    background-image: none;
-    color: @theme_text_color;
-}
-
-.content-view .button {
-    border-width: 1px;
-    border-style: solid;
-    border-color: shade(@theme_base_color, 0.8);
-    border-radius: 2px;
-    background-color: shade(@theme_base_color, 1.08);
-    background-image: none;
-    color: @theme_text_color;
-}
-
-.content-view .button:hover {
-    border-color: shade(@theme_base_color, 0.7);
-    background-color: shade(@theme_base_color, 1.10);
-    background-image: none;
-}
-
-.content-view .button:active {
-    border-color: shade(@theme_base_color, 0.8);
-    background-color: shade(@theme_base_color, 0.95);
-    background-image: none;
-}
-
-.content-view .button:active:hover {
-    border-color: shade(@theme_base_color, 0.7);
-    color: shade(@theme_text_color, 0.7);
-}
-
-.content-view .button:insensitive {
-    background-color: shade(@theme_base_color, 0.9);
-    background-image: none;
-}
-
-.content-view .help_button * {
-    color: @theme_text_color;
-}   
-
-.content-view .toolbar {
-    -GtkWidget-window-dragging: true;
-
-    padding: 1px;
-    border-width: 0 0 1px 0;
-    border-style: solid;
-    border-color: shade(@theme_base_color, 0.8);
-    background-color: @theme_base_color;
-    background-image: none;
-}
-
-/**************
- * sourcelist *
- *************/
-.source-list,
-.source-list.view {
-    border-radius: 0;
-    background-color: @theme_bg_color;
-    color: mix(@theme_fg_color, @theme_bg_color, 0.1);
-}
-
-.source-list {
-    -GtkTreeView-horizontal-separator: 1;
-    -GtkTreeView-vertical-separator: 1;
-}
-
-.source-list.view:selected,
-.source-list.view:prelight:selected {
-    background-color: @theme_selected_bg_color;
-    color: @theme_selected_fg_color;
-}
-
-.source-list.view:prelight {
-    background-color: shade(@theme_bg_color, 1.08);
-}
-
-.source-list.badge,
-.source-list.badge:prelight,
-.source-list.badge:selected,
-.source-list.badge:prelight:selected {
-    margin: 0 3px;
-    padding: 0 6px;
-    border-width: 0;
-    border-radius: 10px;
-    background-color: @theme_selected_bg_color;
-    background-image: none;
-    color: @theme_selected_fg_color;
-}
-
-/*************
- * statusbar *
- *************/
-GraniteWidgetsStatusBar {
-    padding: 1px;
-    background-color: @theme_bg_color;
-    background-image: none;
-    box-shadow: inset 0 1px shade(@theme_bg_color, 0.8);
-}
-
-/***********
- * popover *
- ***********/
-GraniteWidgetsPopOver {
-    -GraniteWidgetsPopOver-arrow-width: 21;
-    -GraniteWidgetsPopOver-arrow-height: 12;
-    -GraniteWidgetsPopOver-border-radius: 2px;
-    -GraniteWidgetsPopOver-border-width: 1;
-    -GraniteWidgetsPopOver-shadow-size: 12;
-
-    margin: 0;
-    border-style: solid;
-    border-color: shade(@menu_bg_color, 0.8);
-    color: @menu_fg_color;
-}
-
-.popover_bg {
-    background-color: transparent;
-    background-image: -gtk-gradient(linear,
-                     left top, left bottom,
-                     from (@menu_bg_color),
-                     to (@menu_bg_color));
-}
-
-GraniteWidgetsPopOver .sidebar.view,
-GraniteWidgetsPopOver * {
-    background-color: transparent;
-    color: @menu_fg_color;
-}
-
-GraniteWidgetsPopOver .sidebar.view:selected,
-GraniteWidgetsPopOver .sidebar.view:selected:focus,
-GraniteWidgetsPopOver *:selected,
-GraniteWidgetsPopOver *:selected:focus {
-    background-color: @theme_selected_bg_color;
-    color: @theme_selected_fg_color;
-}
-
-GraniteWidgetsPopOver .button {
-    border-color: shade(@menu_bg_color, 0.8);
-    background-color: shade(@menu_bg_color, 1.08);
-    background-image: none;
-    color: @menu_fg_color;
-
-}
-
-GraniteWidgetsPopOver .button:hover {
-    border-color: shade(@menu_bg_color, 0.7);
-    background-color: shade(@menu_bg_color, 1.10);
-    background-image: none;
-    color: shade(@menu_fg_color, 0.7);
-}
-
-GraniteWidgetsPopOver .button:active {
-    border-color: shade(@menu_bg_color, 0.8);
-    background-color: shade(@menu_bg_color, 0.95);
-    background-image: none;
-}
-
-GraniteWidgetsPopOver .button:active:hover {
-    border-color: shade(@menu_bg_color, 0.7);
-    color: shade(@menu_fg_color, 0.7);
-}
-
-GraniteWidgetsPopOver .entry {
-    border-color: shade(@menu_bg_color, 0.7);
-    background-color: @menu_bg_color;
-    background-image: none;
-    color: @menu_fg_color;
-}
-
-GraniteWidgetsPopOver .entry:active,
-GraniteWidgetsPopOver .entry:focus {
-    border-color: shade(@menu_bg_color, 0.7);
-}
-
-GraniteWidgetsPopOver *.separator {
-    border-color: shade(@menu_bg_color, 0.9);
-    color: transparent;
-}
-
-.button.app {
-    border-width: 0;
-    border-radius: 2px;
-    background-color: transparent;
-}
-
-.button.app:hover {
-    border-color: shade(@theme_selected_bg_color, 0.9);
-    background-color: @theme_selected_bg_color;
-    background-image: none;
-    color: @theme_selected_fg_color;
-}
-
-.button.app:focus {
-    border-color: shade(@theme_selected_bg_color, 0.9);
-    background-color: @theme_selected_bg_color;
-    background-image: none;
-    color: @theme_selected_fg_color;
-}
-
-/********
- * gala *
- *******/
-.gala-workspaces-background {
-    border-width: 1px 0 0 0;
-    border-color: shade(@panel_bg_color, 0.8);
-    background-color: @panel_bg_color;
-    background-image: none;
-}
-
-.gala-workspace-selected {
-    border-width: 1px;
-    border-radius: 2px;
-    border-color: shade(@theme_selected_bg_color, 0.9);
-    background-color: @theme_selected_bg_color;
-    background-image: none;
-}
-
-/*********
- * files *
- ********/
-.files-overlay-bar {
-    margin: 3px;
-    padding: 3px 6px;
-    border-width: 0;
-    border-radius: 2px;
-    background-color: @theme_tooltip_bg_color;
-}
-
-.files-overlay-bar* {
-    color: @theme_tooltip_fg_color;
-}
-
-/*********
- * noise *
- ********/
-.album-list-view,
-.album-list-view * {
-    border-color: shade(@theme_bg_color, 0.8);
-    border-radius: 0;
-    background-color: @theme_base_color;
-    color: @theme_fg_color;
-}
-
-.album-list-view GtkTreeView {
-    -GtkTreeView-vertical-separator: 1;
-    -GtkTreeView-grid-line-width: 0;
-
-    background-color: @theme_base_color;
-    color: @theme_fg_color;
-}
-
-.album-list-view GtkTreeView row:nth-child(even) {
-    border-width: 0;
-    border-style: none;
-    background-color: shade(@theme_base_color, 0.97);
-}
-
-
-.album-list-view GtkTreeView row:nth-child(odd) {
-    border-width: 0;
-    border-style: none;
-    background-color: shade(@theme_base_color, 1.0);
-}
-
-.album-list-view GtkTreeView row:selected {
-    background-color: @selected_bg_color;
-	color: @selected_fg_color;
-}
-
-/**********
- * notify *
- **********/
-.notify {
-    border-width: 1px;
-    border-style: solid;
-    border-color: shade(@theme_base_color, 0.7);
-    border-radius: 2px;
-    background-color: @theme_base_color;
-    color: @theme_text_color;
-}
-
-.notify .low {
-}
-
-.notify .critical {
-}
-
-/*********
- * panel *
- ********/
-.panel {
-    background-color: @panel_bg_color;
-    color: @panel_fg_color;
-}
-
-.shadow {
-    background-color: transparent;
-    background-image: -gtk-gradient(linear,
-                     left top, left bottom,
-                     from (rgba(0, 0, 0, 0.3)),
-                     to (transparent));
-}
-
-.composited-indicator,
-.wingpanel-app-button, 
-.wingpanel-indicator-button {
-    padding: 0 2px;
-    background-color: transparent;
-    color: @panel_fg_color;
-}
-
-.composited-indicator.menuitem:active,
-.composited-indicator.menuitem:prelight {
-    border-style: none;
-    background-image: none;
-}
diff --git a/gtk-3.0/apps/unity.css b/gtk-3.0/apps/unity.css
index 6f83abb..a74d293 100644
--- a/gtk-3.0/apps/unity.css
+++ b/gtk-3.0/apps/unity.css
@@ -8,8 +8,8 @@ UnityPanelWidget,
     color: @panel_fg_color;
 }
 
-.unity-panel.panel,
-.unity-panel .panel {
+.unity-panel.menubar,
+.unity-panel .menubar {
 }
 
 .unity-panel.menuitem,
@@ -18,10 +18,10 @@ UnityPanelWidget,
     color: @panel_fg_color;
 }
 
-.unity-panel.panel.menuitem:hover,
-.unity-panel.panel .menuitem *:hover {
+.unity-panel.menubar.menuitem:hover,
+.unity-panel.menubar .menuitem *:hover {
     border-color: mix(@panel_bg_color, @panel_fg_color, 0.23);
     background-color: mix(@panel_bg_color, @panel_fg_color, 0.21);
     background-image: none;
     color: shade(@panel_fg_color, 1.08);
-}
+}
\ No newline at end of file
diff --git a/gtk-3.0/assets/checkbox-checked-dark.png b/gtk-3.0/assets/checkbox-checked-dark.png
new file mode 100644
index 0000000..fcada25
Binary files /dev/null and b/gtk-3.0/assets/checkbox-checked-dark.png differ
diff --git a/gtk-3.0/assets/checkbox-checked-insensitive-dark.png b/gtk-3.0/assets/checkbox-checked-insensitive-dark.png
new file mode 100644
index 0000000..8c02685
Binary files /dev/null and b/gtk-3.0/assets/checkbox-checked-insensitive-dark.png differ
diff --git a/gtk-3.0/assets/checkbox-checked-insensitive.png b/gtk-3.0/assets/checkbox-checked-insensitive.png
index 22a08a7..d56aa5c 100644
Binary files a/gtk-3.0/assets/checkbox-checked-insensitive.png and b/gtk-3.0/assets/checkbox-checked-insensitive.png differ
diff --git a/gtk-3.0/assets/checkbox-mixed-dark.png b/gtk-3.0/assets/checkbox-mixed-dark.png
new file mode 100644
index 0000000..b1197b0
Binary files /dev/null and b/gtk-3.0/assets/checkbox-mixed-dark.png differ
diff --git a/gtk-3.0/assets/checkbox-mixed-insensitive-dark.png b/gtk-3.0/assets/checkbox-mixed-insensitive-dark.png
new file mode 100644
index 0000000..2dcdc3c
Binary files /dev/null and b/gtk-3.0/assets/checkbox-mixed-insensitive-dark.png differ
diff --git a/gtk-3.0/assets/checkbox-mixed-insensitive.png b/gtk-3.0/assets/checkbox-mixed-insensitive.png
index aa01322..1bb9f81 100644
Binary files a/gtk-3.0/assets/checkbox-mixed-insensitive.png and b/gtk-3.0/assets/checkbox-mixed-insensitive.png differ
diff --git a/gtk-3.0/assets/checkbox-unchecked-dark.png b/gtk-3.0/assets/checkbox-unchecked-dark.png
new file mode 100644
index 0000000..665b317
Binary files /dev/null and b/gtk-3.0/assets/checkbox-unchecked-dark.png differ
diff --git a/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.png b/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.png
new file mode 100644
index 0000000..decd7f8
Binary files /dev/null and b/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.png differ
diff --git a/gtk-3.0/assets/checkbox-unchecked-insensitive.png b/gtk-3.0/assets/checkbox-unchecked-insensitive.png
index 2c91302..31d08d3 100644
Binary files a/gtk-3.0/assets/checkbox-unchecked-insensitive.png and b/gtk-3.0/assets/checkbox-unchecked-insensitive.png differ
diff --git a/gtk-3.0/assets/radio-mixed-dark.png b/gtk-3.0/assets/radio-mixed-dark.png
new file mode 100644
index 0000000..5a7759f
Binary files /dev/null and b/gtk-3.0/assets/radio-mixed-dark.png differ
diff --git a/gtk-3.0/assets/radio-mixed-insensitive-dark.png b/gtk-3.0/assets/radio-mixed-insensitive-dark.png
new file mode 100644
index 0000000..37e22ff
Binary files /dev/null and b/gtk-3.0/assets/radio-mixed-insensitive-dark.png differ
diff --git a/gtk-3.0/assets/radio-mixed-insensitive.png b/gtk-3.0/assets/radio-mixed-insensitive.png
index 6be72ad..b94f0fe 100644
Binary files a/gtk-3.0/assets/radio-mixed-insensitive.png and b/gtk-3.0/assets/radio-mixed-insensitive.png differ
diff --git a/gtk-3.0/assets/radio-mixed.png b/gtk-3.0/assets/radio-mixed.png
index ccd8b34..8f5f428 100644
Binary files a/gtk-3.0/assets/radio-mixed.png and b/gtk-3.0/assets/radio-mixed.png differ
diff --git a/gtk-3.0/assets/radio-selected-dark.png b/gtk-3.0/assets/radio-selected-dark.png
new file mode 100644
index 0000000..0d9fc47
Binary files /dev/null and b/gtk-3.0/assets/radio-selected-dark.png differ
diff --git a/gtk-3.0/assets/radio-selected-insensitive-dark.png b/gtk-3.0/assets/radio-selected-insensitive-dark.png
new file mode 100644
index 0000000..3343ad3
Binary files /dev/null and b/gtk-3.0/assets/radio-selected-insensitive-dark.png differ
diff --git a/gtk-3.0/assets/radio-selected-insensitive.png b/gtk-3.0/assets/radio-selected-insensitive.png
index c8ac815..5d91d2c 100644
Binary files a/gtk-3.0/assets/radio-selected-insensitive.png and b/gtk-3.0/assets/radio-selected-insensitive.png differ
diff --git a/gtk-3.0/assets/radio-unselected-dark.png b/gtk-3.0/assets/radio-unselected-dark.png
new file mode 100644
index 0000000..9b948f7
Binary files /dev/null and b/gtk-3.0/assets/radio-unselected-dark.png differ
diff --git a/gtk-3.0/assets/radio-unselected-insensitive-dark.png b/gtk-3.0/assets/radio-unselected-insensitive-dark.png
new file mode 100644
index 0000000..5b0a607
Binary files /dev/null and b/gtk-3.0/assets/radio-unselected-insensitive-dark.png differ
diff --git a/gtk-3.0/assets/radio-unselected-insensitive.png b/gtk-3.0/assets/radio-unselected-insensitive.png
index 58953b6..cc7b4b2 100644
Binary files a/gtk-3.0/assets/radio-unselected-insensitive.png and b/gtk-3.0/assets/radio-unselected-insensitive.png differ
diff --git a/gtk-3.0/gtk-dark.css b/gtk-3.0/gtk-dark.css
index ae35bbc..41c1687 100644
--- a/gtk-3.0/gtk-dark.css
+++ b/gtk-3.0/gtk-dark.css
@@ -58,7 +58,7 @@
 @define-color wm_border_unfocused #393939;
 
 @import url("gtk-widgets.css");
-@import url("gtk-widgets-assets.css");
+@import url("gtk-widgets-assets-dark.css");
 @import url("apps/gnome-applications.css");
 @import url("apps/granite-widgets.css");
 @import url("apps/unity.css");
diff --git a/gtk-3.0/gtk-widgets-assets-dark.css b/gtk-3.0/gtk-widgets-assets-dark.css
new file mode 100644
index 0000000..e5c07d6
--- /dev/null
+++ b/gtk-3.0/gtk-widgets-assets-dark.css
@@ -0,0 +1,114 @@
+/*******************
+ * check and radio *
+ *******************/
+/* draw regular check and radio items using our assets */
+.check,
+.check row:selected,
+.check row:selected:focus {
+    background-image: url("assets/checkbox-unchecked-dark.png");
+}
+
+.check:insensitive,
+.check row:selected:insensitive,
+.check row:selected:focus:insensitive {
+    background-image: url("assets/checkbox-unchecked-insensitive-dark.png");
+}
+
+.check:active,
+.check row:selected:active,
+.check row:selected:focus:active {
+    background-image: url("assets/checkbox-checked-dark.png");
+}
+
+.check:active:insensitive,
+.check row:selected:active:insensitive,
+.check row:selected:focus:active:insensitive {
+    background-image: url("assets/checkbox-checked-insensitive-dark.png");
+}
+
+.check:inconsistent,
+.check row:selected:inconsistent,
+.check row:selected:focus:inconsistent {
+    background-image: url("assets/checkbox-mixed-dark.png");
+}
+
+.check:inconsistent:insensitive,
+.check row:selected:inconsistent:insensitive,
+.check row:selected:focus:inconsistent:insensitive {
+    background-image: url("assets/checkbox-mixed-insensitive-dark.png");
+}
+
+.radio,
+.radio row:selected,
+.radio row:selected:focus {
+    background-image: url("assets/radio-unselected-dark.png");
+}
+
+.radio:insensitive,
+.radio row:selected:insensitive,
+.radio row:selected:focus:insensitive {
+    background-image: url("assets/radio-unselected-insensitive-dark.png");
+}
+
+.radio:active,
+.radio row:selected:active,
+.radio row:selected:focus:active {
+    background-image: url("assets/radio-selected-dark.png");
+}
+
+.radio:active:insensitive,
+.radio row:selected:active:insensitive,
+.radio row:selected:focus:active:insensitive {
+    background-image: url("assets/radio-selected-insensitive-dark.png");
+}
+
+.radio:inconsistent,
+.radio row:selected:inconsistent,
+.radio row:selected:focus:inconsistent {
+    background-image: url("assets/radio-mixed-dark.png");
+}
+
+.radio:inconsistent:insensitive,
+.radio row:selected:inconsistent:insensitive,
+.radio row:selected:focus:inconsistent:insensitive {
+    background-image: url("assets/radio-mixed-insensitive-dark.png");
+}
+
+.menuitem.check:active {
+    background-image: url("assets/menuitem-checkbox-checked.png");
+}
+
+.menuitem.check:active:hover {
+    background-image: url("assets/menuitem-checkbox-checked-hover.png");
+}
+
+.menuitem.check:active:insensitive {
+    background-image: url("assets/menuitem-checkbox-checked-insensitive.png");
+}
+
+.menuitem.check:inconsistent:hover,
+.menuitem.radio:inconsistent:hover {
+    background-image: url("assets/menuitem-checkbox-mixed-hover.png");
+}
+
+.menuitem.check:inconsistent,
+.menuitem.radio:inconsistent {
+    background-image: url("assets/menuitem-checkbox-mixed.png");
+}
+
+.menuitem.check:inconsistent:insensitive,
+.menuitem.radio:inconsistent:insensitive {
+    background-image: url("assets/menuitem-checkbox-mixed-insensitive.png");
+}
+
+.menuitem.radio:active {
+    background-image: url("assets/menuitem-radio-checked.png");
+}
+
+.menuitem.radio:active:hover {
+    background-image: url("assets/menuitem-radio-checked-hover.png");
+}
+
+.menuitem.radio:active:insensitive {
+    background-image: url("assets/menuitem-radio-checked-insensitive.png");
+}
diff --git a/gtk-3.0/gtk-widgets.css b/gtk-3.0/gtk-widgets.css
index 7d4976c..31e2975 100644
--- a/gtk-3.0/gtk-widgets.css
+++ b/gtk-3.0/gtk-widgets.css
@@ -174,9 +174,6 @@ GtkAssistant .sidebar {
     -GtkWidget-focus-line-width: 0;
 
     padding: 3px 2px;
-}
-
-.button {
     border-width: 1px;
     border-style: solid;
     border-color: shade(@theme_bg_color, 0.8);
@@ -249,240 +246,6 @@ GtkAssistant .sidebar {
     color: shade(@theme_selected_fg_color, 0.9);
 }
 
-/* linked buttons */
-.linked .button,
-.toolbar .button.raised.linked,
-.toolbar .raised.linked .button,
-.inline-toolbar.toolbar .button,
-.inline-toolbar.toolbar GtkToolButton > .button {
-    box-shadow: inset -1px 0 shade(@theme_bg_color, 0.9);
-}
-
-.linked .button:active,
-.toolbar .button.raised.linked:active,
-.toolbar .raised.linked .button:active,
-.inline-toolbar.toolbar .button:active,
-.inline-toolbar.toolbar GtkToolButton > .button:active {
-    box-shadow: inset -1px 0 shade(@theme_bg_color, 0.9),
-                inset 1px 0 alpha(@dark_shadow, 0.07),
-                inset 0 1px alpha(@dark_shadow, 0.08),
-                inset 0 -1px alpha(@dark_shadow, 0.05);
-}
-
-.linked .button:insensitive,
-.toolbar .button.raised.linked:insensitive,
-.toolbar .raised.linked .button:insensitive,
-.inline-toolbar.toolbar .button:insensitive,
-.inline-toolbar.toolbar GtkToolButton > .button:insensitive {
-    box-shadow: inset -1px 0 shade(@theme_bg_color, 0.9);
-}
-
-/* remove box shadow from last-child and only-child */
-.linked .button:last-child,
-.toolbar .button.raised.linked:last-child,
-.toolbar .raised.linked .button:last-child,
-.inline-toolbar.toolbar .button:last-child,
-.inline-toolbar.toolbar GtkToolButton:last-child > .button,
-.linked .button:only-child,
-.toolbar .button.raised.linked:only-child,
-.toolbar .raised.linked .button:only-child,
-.inline-toolbar.toolbar .button:only-child,
-.inline-toolbar.toolbar GtkToolButton:only-child > .button,
-.linked .button:insensitive:last-child,
-.toolbar .button:insensitive.raised.linked:last-child,
-.toolbar .raised.linked .button:insensitive:last-child,
-.inline-toolbar.toolbar .button:insensitive:last-child,
-.inline-toolbar.toolbar GtkToolButton:last-child > .button:insensitive,
-.linked .button:insensitive:only-child,
-.toolbar .button:insensitive.raised.linked:only-child,
-.toolbar .raised.linked .button:insensitive:only-child,
-.inline-toolbar.toolbar .button:insensitive:only-child,
-.inline-toolbar.toolbar GtkToolButton:only-child > .button:insensitive {
-    box-shadow: none;
-}
-
-/* add back the inset shadow effect */
-.linked .button:active:last-child,
-.toolbar .button:active.raised.linked:last-child,
-.toolbar .raised.linked .button:active:last-child,
-.inline-toolbar.toolbar .button:active:last-child,
-.inline-toolbar.toolbar GtkToolButton:last-child > .button:active,
-.linked .button:active:only-child,
-.toolbar .button:active.raised.linked:only-child,
-.toolbar .raised.linked .button:active:only-child,
-.inline-toolbar.toolbar .button:active:only-child,
-.inline-toolbar.toolbar GtkToolButton:only-child > .button:active {
-    box-shadow: inset 1px 0 alpha(@dark_shadow, 0.07),
-                inset 0 1px alpha(@dark_shadow, 0.08),
-                inset -1px 0 alpha(@dark_shadow, 0.07),
-                inset 0 -1px alpha(@dark_shadow, 0.05);
-}
-
-/* middle button */
-.linked .entry,
-.linked .button,
-.linked .button:active,
-.linked .button:active:hover,
-.linked .button:insensitive {
-    border-width: 1px;
-    border-radius: 0;
-    border-right-width: 0;
-    border-left-width: 0;
-}
-
-/*leftmost button */
-.linked .entry:first-child,
-.linked .button:first-child,
-.linked .button:active:first-child,
-.linked .button:active:hover:first-child,
-.linked .button:insensitive:first-child {
-    border-width: 1px;
-    border-radius: 2px;
-    border-right-width: 0;
-    border-bottom-right-radius: 0;
-    border-top-right-radius: 0;
-}
-
-/* rightmost button */
-.linked .entry:last-child,
-.linked .button:last-child,
-.linked .button:active:last-child,
-.linked .button:active:hover:last-child,
-.linked .button:insensitive:last-child {
-    border-width: 1px;
-    border-radius: 2px;
-    border-left-width: 0;
-    border-bottom-left-radius: 0;
-    border-top-left-radius: 0;
-}
-
-/* linked single button */
-.linked .entry:only-child,
-.linked .button:only-child,
-.linked .button:active:only-child,
-.linked .button:active:hover:only-child,
-.linked .button:insensitive:only-child {
-    border-width: 1px;
-    border-radius: 2px;
-}
-
-/* middle button (vertical) */
-.linked.vertical .entry,
-.linked.vertical .button,
-.linked.vertical .button:active,
-.linked.vertical .button:active:hover,
-.linked.vertical .button:insensitive {
-    border-width: 1px;
-    border-radius: 0;
-    border-top-width: 0;
-    border-bottom-width: 0;
-}
-
-/* top button (vertical) */
-.linked.vertical .entry:first-child,
-.linked.vertical .button:first-child,
-.linked.vertical .button:active:first-child,
-.linked.vertical .button:active:hover:first-child,
-.linked.vertical .button:insensitive:first-child {
-    border-width: 1px;
-    border-radius: 2px;
-    border-bottom-width: 0;
-    border-bottom-right-radius: 0;
-    border-bottom-left-radius: 0;
-}
-
-/* bottom button (vertical) */
-.linked.vertical .entry:last-child,
-.linked.vertical .button:last-child,
-.linked.vertical .button:active:last-child,
-.linked.vertical .button:active:hover:last-child,
-.linked.vertical .button:insensitive:last-child {
-    border-width: 1px;
-    border-radius: 2px;
-    border-top-width: 0;
-    border-top-left-radius: 0;
-    border-top-right-radius: 0;
-}
-
-/* linked single button (vertical) */
-.linked.vertical .entry:only-child,
-.linked.vertical .button:only-child,
-.linked.vertical .button:active:only-child,
-.linked.vertical .button:active:hover:only-child,
-.linked.vertical .button:insensitive:only-child {
-    border-width: 1px;
-    border-radius: 2px;
-}
-
-/* linked button shadows (vertical) */
-.linked.vertical .button,
-.toolbar.vertical .button.raised.linked,
-.toolbar.vertical .raised.linked .button,
-.inline-toolbar.toolbar.vertical .button,
-.inline-toolbar.toolbar.vertical GtkToolButton > .button {
-    box-shadow: inset 0 -1px shade(@theme_bg_color, 0.9);
-}
-
-.linked.vertical .button:active,
-.toolbar.vertical .button.raised.linked:active,
-.toolbar.vertical .raised.linked .button:active,
-.inline-toolbar.toolbar.vertical .button:active,
-.inline-toolbar.toolbar.vertical GtkToolButton > .button:active {
-    box-shadow: inset 0 -1px shade(@theme_bg_color, 0.9),
-                inset 0 1px alpha(@dark_shadow, 0.08),
-                inset 1px 0 alpha(@dark_shadow, 0.07),
-                inset 0 1px alpha(@dark_shadow, 0.08);
-}
-
-.linked.vertical .button:insensitive,
-.toolbar.vertical .button.raised.linked:insensitive,
-.toolbar.vertical .raised.linked .button:insensitive,
-.inline-toolbar.toolbar.vertical .button:insensitive,
-.inline-toolbar.toolbar.vertical GtkToolButton > .button:insensitive {
-    box-shadow: inset 0 -1px shade(@theme_bg_color, 0.9);
-}
-
-/* remove box shadow from last-child and only-child */
-.linked.vertical .button:last-child,
-.toolbar.vertical .button.raised.linked:last-child,
-.toolbar.vertical .raised.linked .button:last-child,
-.inline-toolbar.toolbar.vertical .button:last-child,
-.inline-toolbar.toolbar.vertical GtkToolButton:last-child > .button,
-.linked.vertical .button:only-child,
-.toolbar.vertical .button.raised.linked:only-child,
-.toolbar.vertical .raised.linked .button:only-child,
-.inline-toolbar.toolbar.vertical .button:only-child,
-.inline-toolbar.toolbar.vertical GtkToolButton:only-child > .button,
-.linked.vertical .button:insensitive:last-child,
-.toolbar.vertical .button:insensitive.raised.linked:last-child,
-.toolbar.vertical .raised.linked .button:insensitive:last-child,
-.inline-toolbar.toolbar.vertical .button:insensitive:last-child,
-.inline-toolbar.toolbar.vertical GtkToolButton:last-child > .button:insensitive,
-.linked.vertical .button:insensitive:only-child,
-.toolbar.vertical .button:insensitive.raised.linked:only-child,
-.toolbar.vertical .raised.linked .button:insensitive:only-child,
-.inline-toolbar.toolbar.vertical .button:insensitive:only-child,
-.inline-toolbar.toolbar.vertical GtkToolButton:only-child > .button:insensitive {
-    box-shadow: none;
-}
-
-/* add back the inset shadow effect */
-.linked.vertical .button:active:last-child,
-.toolbar.vertical .button:active.raised.linked:last-child,
-.toolbar.vertical .raised.linked .button:active:last-child,
-.inline-toolbar.toolbar.vertical .button:active:last-child,
-.inline-toolbar.toolbar.vertical GtkToolButton:last-child > .button:active,
-.linked.vertical .button:active:only-child,
-.toolbar.vertical .button:active.raised.linked:only-child,
-.toolbar.vertical .raised.linked .button:active:only-child,
-.inline-toolbar.toolbar.vertical .button:active:only-child,
-.inline-toolbar.toolbar.vertical GtkToolButton:only-child > .button:active {
-    box-shadow: inset 1px 0 alpha(@dark_shadow, 0.07),
-                inset 0 1px alpha(@dark_shadow, 0.08),
-                inset -1px 0 alpha(@dark_shadow, 0.07),
-                inset 0 -1px alpha(@dark_shadow, 0.05);
-}
-
 /****************
  * cell and row *
  ****************/
@@ -1056,16 +819,16 @@ GtkTreeMenu .menuitem * {
     background-image: none;
 }
 
-.menuitem.arrow {
-    color: alpha(@menu_fg_color, 0.6);
-}
-
 .menuitem.check:active,
 .menuitem.radio:active {
     border-style: none;
     background-color: transparent;
 }
 
+.menuitem.arrow {
+    color: alpha(@menu_fg_color, 0.6);
+}
+
 .menuitem GtkCalendar:inconsistent {
     color: mix(@menu_fg_color, @menu_bg_color, 0.5);
 }
@@ -2108,78 +1871,74 @@ GtkColorButton.button {
     background-image: none;
 }
 
-/* linked buttons */
-.primary-toolbar .button.raised.linked,
-.primary-toolbar .raised.linked .button,
+/******************
+ * linked buttons *
+ *****************/
+/* set up shadows for visual separation */
+.linked .button,
 .inline-toolbar.toolbar .button,
-.inline-toolbar.toolbar GtkToolButton .button {
+.inline-toolbar.toolbar GtkToolButton .button,
+.inline-toolbar.toolbar GtkToolButton > .button {
     box-shadow: inset -1px 0 shade(@theme_bg_color, 0.9);
 }
 
-.primary-toolbar .button.raised.linked:active,
-.primary-toolbar .raised.linked .button:active,
+.linked .button:active,
 .inline-toolbar.toolbar .button:active,
-.inline-toolbar.toolbar GtkToolButton .button:active {
+.inline-toolbar.toolbar GtkToolButton .button:active,
+.inline-toolbar.toolbar GtkToolButton > .button:active {
     box-shadow: inset -1px 0 shade(@theme_bg_color, 0.9),
                 inset 1px 0 alpha(@dark_shadow, 0.07),
                 inset 0 1px alpha(@dark_shadow, 0.08),
                 inset 0 -1px alpha(@dark_shadow, 0.05);
 }
 
-.primary-toolbar .button.raised.linked:insensitive,
-.primary-toolbar .raised.linked .button:insensitive,
+.linked .button:insensitive,
 .inline-toolbar.toolbar .button:insensitive,
-.inline-toolbar.toolbar GtkToolButton .button:insensitive {
+.inline-toolbar.toolbar GtkToolButton .button:insensitive,
+.inline-toolbar.toolbar GtkToolButton > .button:insensitive {
     box-shadow: inset -1px 0 shade(@theme_bg_color, 0.9);
 }
 
 /* remove box shadow from last-child and only-child */
 .linked .button:last-child,
-.toolbar .button.raised.linked:last-child,
-.toolbar .raised.linked .button:last-child,
-.inline-toolbar.toolbar .button:last-child,
-.inline-toolbar.toolbar GtkToolButton:last-child > .button,
 .linked .button:only-child,
-.toolbar .button.raised.linked:only-child,
-.toolbar .raised.linked .button:only-child,
-.inline-toolbar.toolbar .button:only-child,
-.inline-toolbar.toolbar GtkToolButton:only-child > .button,
 .linked .button:insensitive:last-child,
-.toolbar .button:insensitive.raised.linked:last-child,
-.toolbar .raised.linked .button:insensitive:last-child,
-.inline-toolbar.toolbar .button:insensitive:last-child,
-.inline-toolbar.toolbar GtkToolButton:last-child > .button:insensitive,
 .linked .button:insensitive:only-child,
-.toolbar .button:insensitive.raised.linked:only-child,
-.toolbar .raised.linked .button:insensitive:only-child,
+.linked .button:active:insensitive:last-child,
+.linked .button:active:insensitive:only-child,
+.inline-toolbar.toolbar .button:last-child,
+.inline-toolbar.toolbar .button:only-child,
+.inline-toolbar.toolbar .button:insensitive:last-child,
 .inline-toolbar.toolbar .button:insensitive:only-child,
-.inline-toolbar.toolbar GtkToolButton:only-child > .button:insensitive {
+.inline-toolbar.toolbar .button:active:insensitive:last-child,
+.inline-toolbar.toolbar .button:active:insensitive:only-child,
+.inline-toolbar.toolbar GtkToolButton:last-child > .button,
+.inline-toolbar.toolbar GtkToolButton:only-child > .button,
+.inline-toolbar.toolbar GtkToolButton:last-child > .button:insensitive,
+.inline-toolbar.toolbar GtkToolButton:only-child > .button:insensitive,
+.inline-toolbar.toolbar GtkToolButton:last-child > .button:active:insensitive,
+.inline-toolbar.toolbar GtkToolButton:only-child > .button:active:insensitive {
     box-shadow: none;
 }
 
+/* add back the inset shadow effect */
 .linked .button:active:last-child,
-.toolbar .button:active.raised.linked:last-child,
-.toolbar .raised.linked .button:active:last-child,
-.inline-toolbar.toolbar .button:active:last-child,
-.inline-toolbar.toolbar GtkToolButton:last-child > .button:active,
 .linked .button:active:only-child,
-.toolbar .button:active.raised.linked:only-child,
-.toolbar .raised.linked .button:active:only-child,
+.inline-toolbar.toolbar .button:active:last-child,
 .inline-toolbar.toolbar .button:active:only-child,
+.inline-toolbar.toolbar GtkToolButton:last-child > .button:active,
 .inline-toolbar.toolbar GtkToolButton:only-child > .button:active {
     box-shadow: inset 1px 0 alpha(@dark_shadow, 0.07),
                 inset 0 1px alpha(@dark_shadow, 0.08),
-                inset -1px 0 alpha(@dark_shadow, 0.07),
-                inset 0 -1px alpha(@dark_shadow, 0.05);
+                inset -1px 0 alpha(@dark_shadow, 0.07);
 }
 
 /* middle button */
-.primary-toolbar .button.raised.linked,
-.primary-toolbar .button.raised.linked:active,
-.primary-toolbar .button.raised.linked:insensitive,
-.primary-toolbar .raised.linked .button,
-.primary-toolbar .raised.linked .button:active,
-.primary-toolbar .raised.linked .button:insensitive,
+.linked .entry,
+.linked .button,
+.linked .button:active,
+.linked .button:active:hover,
+.linked .button:insensitive,
 .inline-toolbar.toolbar .button,
 .inline-toolbar.toolbar .button:active,
 .inline-toolbar.toolbar .button:insensitive,
@@ -2192,13 +1951,12 @@ GtkColorButton.button {
     border-left-width: 0;
 }
 
-/* leftmost button */
-.primary-toolbar .button.raised.linked:first-child,
-.primary-toolbar .button.raised.linked:active:first-child,
-.primary-toolbar .button.raised.linked:insensitive:first-child,
-.primary-toolbar .raised.linked .button:first-child,
-.primary-toolbar .raised.linked .button:active:first-child,
-.primary-toolbar .raised.linked .button:insensitive:first-child,
+/*leftmost button */
+.linked .entry:first-child,
+.linked .button:first-child,
+.linked .button:active:first-child,
+.linked .button:active:hover:first-child,
+.linked .button:insensitive:first-child,
 .inline-toolbar.toolbar .button:first-child,
 .inline-toolbar.toolbar .button:active:first-child,
 .inline-toolbar.toolbar .button:insensitive:first-child,
@@ -2213,12 +1971,11 @@ GtkColorButton.button {
 }
 
 /* rightmost button */
-.primary-toolbar .button.raised.linked:last-child,
-.primary-toolbar .button.raised.linked:active:last-child,
-.primary-toolbar .button.raised.linked:insensitive:last-child,
-.primary-toolbar .raised.linked .button:last-child,
-.primary-toolbar .raised.linked .button:active:last-child,
-.primary-toolbar .raised.linked .button:insensitive:last-child,
+.linked .entry:last-child,
+.linked .button:last-child,
+.linked .button:active:last-child,
+.linked .button:active:hover:last-child,
+.linked .button:insensitive:last-child,
 .inline-toolbar.toolbar .button:last-child,
 .inline-toolbar.toolbar .button:active:last-child,
 .inline-toolbar.toolbar .button:insensitive:last-child,
@@ -2233,12 +1990,11 @@ GtkColorButton.button {
 }
 
 /* linked single button */
-.primary-toolbar.toolbar .button:only-child,
-.primary-toolbar.toolbar .button:active:only-child,
-.primary-toolbar.toolbar .button:insensitive:only-child,
-.primary-toolbar.toolbar GtkToolButton:only-child .button,
-.primary-toolbar.toolbar GtkToolButton:only-child .button:active,
-.primary-toolbar.toolbar GtkToolButton:only-child .button:insensitive,
+.linked .entry:only-child,
+.linked .button:only-child,
+.linked .button:active:only-child,
+.linked .button:active:hover:only-child,
+.linked .button:insensitive:only-child,
 .inline-toolbar.toolbar .button:only-child,
 .inline-toolbar.toolbar .button:active:only-child,
 .inline-toolbar.toolbar .button:insensitive:only-child,
@@ -2249,6 +2005,230 @@ GtkColorButton.button {
     border-radius: 2px;
 }
 
+/* linked button shadows (vertical) */
+.linked.vertical .button,
+.inline-toolbar.toolbar.vertical .button,
+.inline-toolbar.toolbar.vertical GtkToolButton > .button {
+    box-shadow: inset 0 -1px shade(@theme_bg_color, 0.9);
+}
+
+.linked.vertical .button:active,
+.inline-toolbar.toolbar.vertical .button:active,
+.inline-toolbar.toolbar.vertical GtkToolButton > .button:active {
+    box-shadow: inset 0 -1px shade(@theme_bg_color, 0.9),
+                inset 1px 0 alpha(@dark_shadow, 0.07),
+                inset 0 1px alpha(@dark_shadow, 0.08),
+                inset -1px 0 alpha(@dark_shadow, 0.07);
+}
+
+.linked.vertical .button:insensitive,
+.inline-toolbar.toolbar.vertical .button:insensitive,
+.inline-toolbar.toolbar.vertical GtkToolButton > .button:insensitive {
+    box-shadow: inset 0 -1px shade(@theme_bg_color, 0.9);
+}
+
+/* remove box shadow from last-child and only-child */
+.linked.vertical .button:last-child,
+.linked.vertical .button:only-child,
+.linked.vertical .button:insensitive:last-child,
+.linked.vertical .button:insensitive:only-child,
+.linked.vertical .button:active:insensitive:last-child,
+.linked.vertical .button:active:insensitive:only-child,
+.inline-toolbar.toolbar.vertical .button:last-child,
+.inline-toolbar.toolbar.vertical .button:only-child,
+.inline-toolbar.toolbar.vertical .button:insensitive:last-child,
+.inline-toolbar.toolbar.vertical .button:insensitive:only-child,
+.inline-toolbar.toolbar.vertical .button:active:insensitive:last-child,
+.inline-toolbar.toolbar.vertical .button:active:insensitive:only-child,
+.inline-toolbar.toolbar.vertical GtkToolButton:last-child > .button,
+.inline-toolbar.toolbar.vertical GtkToolButton:only-child > .button,
+.inline-toolbar.toolbar.vertical GtkToolButton:last-child > .button:insensitive,
+.inline-toolbar.toolbar.vertical GtkToolButton:only-child > .button:insensitive,
+.inline-toolbar.toolbar.vertical GtkToolButton:last-child > .button:active:insensitive,
+.inline-toolbar.toolbar.vertical GtkToolButton:only-child > .button:active:insensitive {
+    box-shadow: none;
+}
+
+/* add back the inset shadow effect */
+.linked.vertical .button:active:last-child,
+.linked.vertical .button:active:only-child,
+.inline-toolbar.toolbar.vertical .button:active:last-child,
+.inline-toolbar.toolbar.vertical .button:active:only-child,
+.inline-toolbar.toolbar.vertical GtkToolButton:last-child > .button:active,
+.inline-toolbar.toolbar.vertical GtkToolButton:only-child > .button:active {
+    box-shadow: inset 1px 0 alpha(@dark_shadow, 0.07),
+                inset 0 1px alpha(@dark_shadow, 0.08),
+                inset -1px 0 alpha(@dark_shadow, 0.07);
+}
+
+/* middle button (vertical) */
+.linked.vertical .entry,
+.linked.vertical .button,
+.linked.vertical .button:active,
+.linked.vertical .button:active:hover,
+.linked.vertical .button:insensitive {
+    border-width: 1px;
+    border-radius: 0;
+    border-top-width: 0;
+    border-bottom-width: 0;
+}
+
+/* top button (vertical) */
+.linked.vertical .entry:first-child,
+.linked.vertical .button:first-child,
+.linked.vertical .button:active:first-child,
+.linked.vertical .button:active:hover:first-child,
+.linked.vertical .button:insensitive:first-child {
+    border-width: 1px;
+    border-radius: 2px;
+    border-bottom-width: 0;
+    border-bottom-right-radius: 0;
+    border-bottom-left-radius: 0;
+}
+
+/* bottom button (vertical) */
+.linked.vertical .entry:last-child,
+.linked.vertical .button:last-child,
+.linked.vertical .button:active:last-child,
+.linked.vertical .button:active:hover:last-child,
+.linked.vertical .button:insensitive:last-child {
+    border-width: 1px;
+    border-radius: 2px;
+    border-top-width: 0;
+    border-top-left-radius: 0;
+    border-top-right-radius: 0;
+}
+
+/* linked single button (vertical) */
+.linked.vertical .entry:only-child,
+.linked.vertical .button:only-child,
+.linked.vertical .button:active:only-child,
+.linked.vertical .button:active:hover:only-child,
+.linked.vertical .button:insensitive:only-child {
+    border-width: 1px;
+    border-radius: 2px;
+}
+
+/* linked toolbar buttons */
+.primary-toolbar .button.raised.linked,
+.primary-toolbar .raised.linked .button,
+.toolbar .button.linked {
+    box-shadow: inset -1px 0 shade(@toolbar_bg_color, 0.9);
+}
+
+.primary-toolbar .button.raised.linked:active,
+.primary-toolbar .raised.linked .button:active,
+.toolbar .button.linked:active {
+    box-shadow: inset -1px 0 shade(@toolbar_bg_color, 0.9),
+                inset 1px 0 alpha(@dark_shadow, 0.07),
+                inset 0 1px alpha(@dark_shadow, 0.08),
+                inset 0 -1px alpha(@dark_shadow, 0.05);
+}
+
+.primary-toolbar .button.raised.linked:insensitive,
+.primary-toolbar .raised.linked .button:insensitive,
+.toolbar .button.linked:insensitive {
+    box-shadow: inset -1px 0 shade(@toolbar_bg_color, 0.9);
+}
+
+/* remove box shadow from last-child and only-child */
+.primary-toolbar .button.raised.linked:last-child,
+.primary-toolbar .button.raised.linked:only-child,
+.primary-toolbar .button:insensitive.raised.linked:last-child,
+.primary-toolbar .button:insensitive.raised.linked:only-child,
+.primary-toolbar .button:active:insensitive.raised.linked:last-child,
+.primary-toolbar .button:active:insensitive.raised.linked:only-child,
+.primary-toolbar .raised.linked .button:last-child,
+.primary-toolbar .raised.linked .button:only-child,
+.primary-toolbar .raised.linked .button:insensitive:last-child,
+.primary-toolbar .raised.linked .button:insensitive:only-child,
+.primary-toolbar .raised.linked .button:active:insensitive:last-child,
+.primary-toolbar .raised.linked .button:active:insensitive:only-child,
+.toolbar .button.linked:last-child,
+.toolbar .button.linked:only-child,
+.toolbar .button:insensitive.raised.linked:last-child,
+.toolbar .button:insensitive.raised.linked:only-child,
+.toolbar .button:active:insensitive.raised.linked:last-child,
+.toolbar .button:active:insensitive.raised.linked:only-child {
+    box-shadow: none;
+}
+
+/* add back the inset shadow effect */
+.primary-toolbar .button:active.raised.linked:last-child,
+.primary-toolbar .button:active.raised.linked:only-child,
+.primary-toolbar .raised.linked .button:active:last-child,
+.primary-toolbar .raised.linked .button:active:only-child,
+.toolbar .button:active.raised.linked:last-child,
+.toolbar .button:active.raised.linked:only-child {
+    box-shadow: inset 1px 0 alpha(@dark_shadow, 0.07),
+                inset 0 1px alpha(@dark_shadow, 0.08),
+                inset -1px 0 alpha(@dark_shadow, 0.07);
+}
+
+/* middle button */
+.primary-toolbar .button.raised.linked,
+.primary-toolbar .button.raised.linked:active,
+.primary-toolbar .button.raised.linked:insensitive,
+.primary-toolbar .raised.linked .button,
+.primary-toolbar .raised.linked .button:active,
+.primary-toolbar .raised.linked .button:insensitive,
+.toolbar .button.linked,
+.toolbar .button.linked:active,
+.toolbar .button.linked:insensitive {
+    border-width: 1px;
+    border-radius: 0;
+    border-right-width: 0;
+    border-left-width: 0;
+}
+
+/* leftmost button */
+.primary-toolbar .button.raised.linked:first-child,
+.primary-toolbar .button.raised.linked:active:first-child,
+.primary-toolbar .button.raised.linked:insensitive:first-child,
+.primary-toolbar .raised.linked .button:first-child,
+.primary-toolbar .raised.linked .button:active:first-child,
+.primary-toolbar .raised.linked .button:insensitive:first-child,
+.toolbar .button.linked:first-child,
+.toolbar .button.linked:active:first-child,
+.toolbar .button.linked:insensitive:first-child {
+    border-width: 1px;
+    border-radius: 2px;
+    border-right-width: 0;
+    border-bottom-right-radius: 0;
+    border-top-right-radius: 0;
+}
+
+/* rightmost button */
+.primary-toolbar .button.raised.linked:last-child,
+.primary-toolbar .button.raised.linked:active:last-child,
+.primary-toolbar .button.raised.linked:insensitive:last-child,
+.primary-toolbar .raised.linked .button:last-child,
+.primary-toolbar .raised.linked .button:active:last-child,
+.primary-toolbar .raised.linked .button:insensitive:last-child,
+.toolbar .button.linked:last-child,
+.toolbar .button.linked:active:last-child,
+.toolbar .button.linked:insensitive:last-child {
+    border-width: 1px;
+    border-radius: 2px;
+    border-left-width: 0;
+    border-bottom-left-radius: 0;
+    border-top-left-radius: 0;
+}
+
+/* linked single button */
+.primary-toolbar .button.raised.linked:only-child,
+.primary-toolbar .button.raised.linked:active:only-child,
+.primary-toolbar .button.raised.linked:insensitive:only-child,
+.primary-toolbar .raised.linked .button:only-child,
+.primary-toolbar .raised.linked .button:active:only-child,
+.primary-toolbar .raised.linked .button:insensitive:only-child,
+.toolbar .button.linked:only-child,
+.toolbar .button.linked:active:only-child,
+.toolbar .button.linked:insensitive:only-child {
+    border-width: 1px;
+    border-radius: 2px;
+}
+
 /***********
  * tooltip *
  ***********/
diff --git a/gtk-3.0/gtk.css b/gtk-3.0/gtk.css
index 5ebbbab..76461f9 100644
--- a/gtk-3.0/gtk.css
+++ b/gtk-3.0/gtk.css
@@ -60,5 +60,4 @@
 @import url("gtk-widgets.css");
 @import url("gtk-widgets-assets.css");
 @import url("apps/gnome-applications.css");
-@import url("apps/granite-widgets.css");
 @import url("apps/unity.css");