/*******************************************************
 * Blue-Submarine                                      *
 * Part of https://github.com/mate-desktop/mate-themes *
 * Author Wolfgang Ulbrich                             *
 *******************************************************/
 
* {
    padding: 0;
    background-clip: padding-box;
    -GtkDialog-button-spacing: 4; /* ie. logout dialog */
    -GtkDialog-action-area-border: 10; /* ie. logout dialog */
    -GtkHTML-link-color: @link_color;
    -GtkIMHtml-hyperlink-color: @link_color;
    -GtkScrollbar-activate-slider: 1;
    -GtkScrolledWindow-scrollbar-spacing: 0;
    -GtkTextView-error-underline-color: @error_color;
    -GtkToolButton-icon-spacing: 4;
    -GtkToolItemGroup-expander-size: 6;
    -GtkTreeView-expander-size: 12; /* arrow size in list/tree views */
    -GtkTreeView-horizontal-separator: 4;
    -GtkTreeView-vertical-separator: 4;
    -WnckTasklist-fade-overlay-rect: 0;
    /* Highlight drag-drop destination */
    outline-color: alpha(currentColor, 0.3);
    outline-style: dashed;
    outline-offset: -3px;
    outline-width: 1px;
    -gtk-outline-radius: 2px;
    -gtk-icon-style: regular; /* no symbolic icons */
}

/***************
 * Base States *
 ***************/
window {
    color: @theme_fg_color;
}

/* exclude widget for mate-menu */
.background:not(widget) {
	color: @theme_fg_color;
	background-color: @theme_bg_color;
}

/* override previous setting for rubberband of mate-screenshot */
.background.rubberband {
	background-color: transparent;
}

.background:backdrop {
    text-shadow: none;
    -gtk-icon-shadow: none;
}

*:active {
/*    background-color: alpha(shade(@theme_selected_bg_color, 1.90), 0.015);*/
}

*:hover:active:disabled {
}

*:active:disabled {
}

*:hover {
/*     background-color: alpha(shade(@menu_bg_color, 1.05), 0.0);*/
}

*:hover:disabled {
}

/* seems like firefox needs this stupid wildcard in several places */
*:selected:focus {
        background-color: @theme_selected_bg_color;
        color: @theme_selected_fg_color;
}

*:disabled {
    /* inherit the color from parent by default */
/*    background-color: inherit;*/
    color: @insensitive_fg_color;
    border-color: @insensitive_border_color;
    box-shadow: none;
}

*:backdrop { 
}

.gtkstyle-fallback {
    background-color: @theme_bg_color;
    color: @theme_fg_color;
}

.gtkstyle-fallback:hover {
    background-color: shade(@theme_bg_color, 1.10);
    color: @theme_fg_color;
}

.gtkstyle-fallback:active {
    background-color: shade(@theme_bg_color, 0.90);
    color: @theme_fg_color;
}

.gtkstyle-fallback:disabled {
    background-color: @insensitive_bg_color;
    color: @insensitive_fg_color;
}

.gtkstyle-fallback:selected {
    background-color: @theme_selected_bg_color;
    color: @theme_selected_fg_color;
}

/* Fix for applications that have issues finding a default monospace font */
.monospace {
  font-family: Monospace;
}

/*********
 * label *
 *********/
/*
label,
label:disabled {
    background-color: transparent;
}
*/
.grip {
    background-color: transparent;
    background-image: url("assets/resize-grip.svg");
}

/* ie. selection mouse retancle in caja */
view.rubberband,
rubberband,
.view.rubberband,
.rubberband {
    background-color: alpha (@theme_selected_bg_color, 0.35);
    background-image: linear-gradient(to bottom,
                                      alpha (@theme_selected_bg_color, 0.35),
                                      alpha (@theme_selected_bg_color, 0.35));
    border-color: @theme_selected_bg_color;
    border-style: solid;
    border-width: 1px;
    border-radius: 2px;    
}

/************
 * Tooltips *
 ************/

tooltip,
.tooltip {
    border-width: 0px;
    border-style: none;
    border-radius: 2px;
    border-color: transparent;
}

tooltip.background,
.tooltip.background {
    background-color: alpha(@theme_tooltip_bg_color, 1.00);
    background-clip: padding-box;
    border-width: 1px;
    border-style: solid;
    border-radius: 2px;
    border-color: @theme_fg_color;
}

tooltip label,
.tooltip label {
    color: shade(@theme_tooltip_fg_color, 0.90);
	text-shadow: none;
/* this controls the tooltip size */
    padding: 6px;
}

/* needed for override CSD setting */
tooltip decoration,
.tooltip decoration,
tooltip.csd decoration,
.tooltip.csd decoration,
tooltip.ssd decoration,
.tooltip.ssd decoration,
tooltip.solid-csd decoration,
.tooltip.solid-csd decoration,
tooltip.background.csd decoration,
.tooltip.background.csd decoration,
tooltip.background.ssd decoration,
.tooltip.background.ssd decoration,
tooltip.background.solid-csd decoration,
.tooltip.background.solid-csd decoration {
    background-color: alpha(shade(@theme_selected_bg_color, 1.3), 0.6);
    border-width: 1px;
    border-style: solid;
    border-radius: 2px;
    border-color: @theme_fg_color;
    box-shadow: 0 1px 5px shade (@theme_selected_bg_color, 1.3);
    padding: 1px;
}

/*************
 * separator *
 *************/

separator {
    border-width: 1px;
    border-style: solid;
    border-image: none;
    border-color:  mix(@theme_fg_color, @theme_bg_color, 0.95);
    border-bottom-color: alpha (shade (@theme_bg_color, 1.26), 0.15);
    border-right-color:  alpha (shade (@theme_bg_color, 1.26), 0.15);
}

separator:hover {
    color: shade (@theme_bg_color, 0.92);
    border-color: mix(@theme_fg_color, @theme_bg_color, 0.95);
    border-image: none;
}

treeview.view.separator,
treeview.separator,
treeview.view.separator:hover,
treeview.separator:hover {
    border-style: solid;
    border-width: 0px 0px 1px 0px;
    border-color: @notebook_border;
}

separator.horizontal {
    border-width: 1px 0 1px 0;
}

separator.vertical {
    border-width: 0 1px 0 1px;
}

button separator,
button.separator {
    border-color: alpha (#000, 0.00);
}

button separator:disabled,
button.separator:disabled {
    border-color: alpha (#000, 0.00);
}

statusbar {
    padding: 2px;
    margin: -2px 0 -2px 0;
    color: @theme_fg_color;
    font-size: smaller;
}

.dnd {
    border-width: 1px;
    border-style: solid;
    border-color: @theme_selected_bg_color;
    border-radius: 0px;
}

/*********
 * Paned *
 *********/

/* the small line between sidebar and view */
paned > separator {
    min-width: 3px;
    min-height: 3px;
    -gtk-icon-source: none;
    border-style: none;
    background-color: @theme_bg_color;
    background-size: 1px 1px;
 }

paned > separator:hover,
paned > separator:selected {
    background-color: @theme_bg_color;
}

paned > separator:backdrop {
}

paned > separator.wide {
    margin: 0;
    padding: 0;
    min-width: 5px;
    min-height: 5px;
    background-size: 1px 1px, 1px 1px;
}

paned > separator.wide:backdrop {
}

/****************
 * Text Entries *
 ****************/

entry {
    min-height: 17px;
}

entry,
entry.combo {
    background-color: shade (@bg_color, 1.1);
    padding: 6px 4px;
    color: @entry_text_color;
    background-image: -gtk-gradient(linear,
                                    left top, left bottom,
                                    from       (shade(@theme_base_color, 0.86)),
                                    color-stop (0.15, shade(@theme_base_color, 0.96)),
                                    color-stop (0.50, shade(@theme_base_color, 0.98)),
                                    to         (shade(@theme_base_color, 1.00)));
    /* outer */
    border-width: 2px;
    border-style: solid;
    border-radius: 6px;
    border-top-color:         transparent;
    border-right-color:     alpha(#fff, 0.02);
    border-left-color:         alpha(#fff, 0.02);
    border-bottom-color:     alpha(#fff, 0.03);
    /* border */
    box-shadow: inset  0px  3px alpha(#000, 0.03),
                inset  0px  2px alpha(#000, 0.05),
                inset  2px  0px alpha(#000, 0.04),
                inset -2px  0px alpha(#000, 0.04),
                inset  0px -2px alpha(#000, 0.03),
                inset  0px  1px shade(@button_border, 0.80),
                inset  1px  0px shade(@button_border, 0.90),
                inset -1px  0px shade(@button_border, 0.90),
                inset  0px -1px shade(@button_border, 1.05);
}

entry:focus {
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

entry:disabled,
entry.combo:disabled {
    color: @insensitive_fg_color;
    background-image: none;
    background-color: @insensitive_bg_color;
    border-style: solid;
    border-color: alpha (#000, 0.00);
    border-bottom-color: alpha (#000, 0.00);
    border-image: none;
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
}

entry selection,
entry selection:focus {
    background-color: @theme_selected_bg_color;
    color: @theme_selected_fg_color;
}

entry progressbar {
    background-color: @theme_selected_bg_color;
    color: @theme_selected_fg_color;
    border-width: 1px;
    border-radius: 3px;
}

entry image.left {
	padding-right: 6px;
}

entry image.right {
	padding-left: 6px;
}

/****************
 * Progress bar *
 ****************/

progressbar {
	border-radius: 3px;
	padding: 0;
	font-size: smaller;
}

/* progress component */
progressbar.horizontal trough {
    min-height: 18px;
    border-radius: 3px;
}

progressbar.horizontal progress {
    min-height: 16px;
    border-radius: 3px;
}

progressbar.vertical trough {
    min-width: 18px;
    border-radius: 3px;
}

progressbar.vertical progress {
    min-width: 16px;
    border-radius: 3px;
}

progressbar progress.left {
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
}

progressbar progress.right {
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
}

progressbar progress.top {
    border-top-right-radius: 3px;
    border-top-left-radius: 3px;
}

progressbar progress.bottom {
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
}

treeview.view.progressbar,
treeview.view.progressbar:hover,
progressbar.horizontal progress {
    background-image: linear-gradient(to right,
                                      alpha (#000, 0.00),
                                      alpha (#000, 0.00) 48%,
                                      alpha (#004, 0.12) 48%,
                                      alpha (#004, 0.12) 50%,
                                      alpha (#000, 0.00) 50%,
                                      alpha (#000, 0.00) 98%,
                                      alpha (#004, 0.12) 98%,
                                      alpha (#004, 0.12)),
                      linear-gradient(to bottom,
                                      alpha (#000, 0.20),
                                      alpha (#000, 0.05) 50%,
                                      alpha (#000, 0.00)),
                      linear-gradient(to right,
                                      @progressbar_fill_a,
                                      @progressbar_fill_b);
    background-size: 40px auto, auto, auto;
    box-shadow: inset  0px  1px alpha(black, 0.03),
                inset  1px  0px alpha(black, 0.03),
                inset -1px  0px alpha(black, 0.03),
                inset  0px -1px alpha(white, 0.10);
    border-width: 1px;
    border-style: solid;
    border-radius: 3px;
    border-top-color:    shade(@button_border_active, 0.80);
    border-left-color:   shade(@button_border_active, 0.85);
    border-right-color:  shade(@button_border_active, 0.85);
    border-bottom-color: shade(@button_border_active, 1.00);
}

treeview.view.progressbar:selected,
treeview.view.progressbar:selected:hover {
    background-image: linear-gradient(to right,
                                      alpha (#000, 0.00),
                                      alpha (#000, 0.00) 48%,
                                      alpha (#004, 0.12) 48%,
                                      alpha (#004, 0.12) 50%,
                                      alpha (#000, 0.00) 50%,
                                      alpha (#000, 0.00) 98%,
                                      alpha (#004, 0.12) 98%,
                                      alpha (#004, 0.12)),
                      linear-gradient(to bottom,
                                      alpha (#000, 0.20),
                                      alpha (#000, 0.05) 50%,
                                      alpha (#000, 0.00)),
                      linear-gradient(to right,
                                      shade(@progressbar_fill_a, 1.29),
                                      shade(@progressbar_fill_b, 1.29));
    background-size: 40px auto, auto, auto;
    border-width: 1px;
    border-style: solid;
    border-radius: 3px;
    border-top-color:    shade(@button_border_active, 0.80);
    border-left-color:   shade(@button_border_active, 0.85);
    border-right-color:  shade(@button_border_active, 0.85);
    border-bottom-color: shade(@button_border_active, 1.00);
}

progressbar.vertical progress {
    background-image: linear-gradient(to top,
                                      alpha (#000, 0.00),
                                      alpha (#000, 0.00) 48%,
                                      alpha (#004, 0.12) 48%,
                                      alpha (#004, 0.12) 50%,
                                      alpha (#000, 0.00) 50%,
                                      alpha (#000, 0.00) 98%,
                                      alpha (#004, 0.12) 98%,
                                      alpha (#004, 0.12)),
                      linear-gradient(to right,
                                      alpha (#000, 0.20),
                                      alpha (#000, 0.05) 50%,
                                      alpha (#000, 0.00)),
                      linear-gradient(to top,
                                      @progressbar_fill_a,
                                      @progressbar_fill_b);
    background-size: auto 40px, auto, auto;
    box-shadow: inset  0px  1px alpha(black, 0.03),
                inset  1px  0px alpha(black, 0.03),
                inset -1px  0px alpha(white, 0.10),
                inset  0px -1px alpha(black, 0.03);
    border-width: 1px;
    border-style: solid;
    border-radius: 3px;
    border-top-color:    shade(@button_border_active, 0.85);
    border-left-color:   shade(@button_border_active, 0.80);
    border-right-color:  shade(@button_border_active, 1.00);
    border-bottom-color: shade(@button_border_active, 0.85);
}

treeview.view.progressbar,
treeview.view.progressbar:hover,
notebook treeview.view.progressbar:hover {
      color: @theme_selected_fg_color;
}

treeview.view.progressbar:hover {
      color: @theme_fg_color;
}

treeview.view.trough,
progressbar trough {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (alpha (#000, 0.18)),
                                     color-stop (0.20, alpha (#000, 0.14)),
                                     to (alpha (#000, 0.04)));
    border-style: none;
    border-width: 0px;
    border-radius: 3px;
    padding: 0 0 1px 0;
    box-shadow: inset  1px  1px alpha(#000, 0.15),
                inset -1px -1px alpha(#000, 0.15);
    text-shadow: none;
}

treeview.view.trough:selected,
notebook treeview.view.trough:selected:hover {
    background-image: -gtk-gradient(linear,
                                    left top, left bottom,
                                    from       (shade(@theme_base_color, 0.80)),
                                    color-stop (0.15, shade(@theme_base_color, 0.90)),
                                    color-stop (0.50, shade(@theme_base_color, 0.92)),
                                    to         (shade(@theme_base_color, 0.94)));
    border-width: 1px;
    border-style: solid;
    border-radius: 3px;
    border-top-color:    shade(@button_border_active, 0.80);
    border-left-color:   shade(@button_border_active, 0.85);
    border-right-color:  shade(@button_border_active, 0.85);
    border-bottom-color: shade(@button_border_active, 1.00);
    padding: 0 0 0px 0;
    box-shadow: inset  1px  1px alpha(#000, 0.15),
                inset -1px -1px alpha(#000, 0.15);
    text-shadow: none;
    color: @theme_fg_color;
}

progressbar.vertical trough {
    background-image: -gtk-gradient (linear,
                                     left top, right top,
                                     from (alpha (#000, 0.18)),
                                     color-stop (0.20, alpha (#000, 0.14)),
                                     to (alpha (#000, 0.04)));
    border-radius: 2px;
    padding: 0 0 1px 0;
    text-shadow: none;
}

/* level bars as used for password quality or remaining power */
levelbar {
    min-width: 34px;
    min-height: 3px;
}

levelbar.vertical {
    min-width: 3px;
    min-height: 34px;
}

levelbar trough {
	padding: 2px;
	border-radius: 2px;
	background-image: linear-gradient(to bottom,
		@trough_bg_color_a,
		@trough_bg_color_b);
	background-color: transparent;
    box-shadow: inset  1px  1px alpha(#000, 0.15),
                inset -1px -1px alpha(#000, 0.15);
}

levelbar block.filled {
    border-width: 2px;
    border-style: solid;
    border-color: @button_border_active;
    background-image: -gtk-gradient (linear,
                                     0.45 top, 0.55 bottom,
                                     from (shade (@button_bg_active, 1.30)),
                                     color-stop (0.40, shade (@button_bg_active, 1.04)),
                                     color-stop (0.60, shade (@button_bg_active, 0.92)),
                                     to (shade (@button_bg_active, 1.20)));
}

levelbar.continuous block.filled {
    padding: 1px;
    border-radius: 2px;
}

levelbar.discrete.horizontal block.filled {
    margin: 0 1px;
}

levelbar.discrete.vertical block.filled {
    margin: 1px 0;
}

.level-bar.indicator-discrete.fill-block.horizontal:first-child {
    border-radius: 2px 0 0 2px;
}

.level-bar.indicator-discrete.fill-block.horizontal:last-child {
    border-radius: 0 2px 2px 0;
}

.level-bar.indicator-discrete.fill-block.vertical:first-child {
    border-radius: 2px 2px 0 0;
}

.level-bar.indicator-discrete.fill-block.vertical:last-child {
    border-radius: 0 0 2px 2px;
}

levelbar block.low {
	border-color: shade(@warning_color, 0.80);
	background-image: linear-gradient(to bottom,
                                      shade(@warning_color, 1.3),
                                      @warning_color 75%,
                                      shade(@warning_color, 0.90));
}

levelbar block.high {
    border-color: shade(@success_color, 0.85);
    background-image: linear-gradient(to bottom,
                                      shade(@success_color, 1.2),
                                      @success_color 75%,
                                      shade(@success_color, 0.95));
}

levelbar block.full {
    border-color: shade(@success_color, 0.95);
    background-image: linear-gradient(to bottom,
                                      shade(@success_color, 1.2),
                                      @success_color 75%,
                                      shade(@success_color, 0.95));
}

levelbar block.empty {
    border: 1px solid #2a76c6;
    border-radius: 1px;
    background-color: transparent;
    border-color: rgba(46, 52, 54, 0.2);
    box-shadow: none;
}

levelbar block.empty:backdrop {
    border-color: rgba(139, 142, 143, 0.15); 
}

/************
 * GtkScale *
 ************/

scale.vertical {
    min-width: 10px;
    padding: 0px 4px;
}

scale.horizontal {
    min-height: 10px;
    padding: 6px 0px;
}

scale.horizontal trough {
    min-height: 3px;
    margin-left: 8px;
    margin-right: 8px;
}

scale.vertical trough {
    min-width: 3px;
    margin-top: 8px;
    margin-bottom: 8px;
}

scale trough {
    border-radius: 8px;
    border-style: solid;
    border-width: 1px;
    background-image: -gtk-gradient (linear,
                                     left top,
                                     left bottom,
                                     from (alpha (#000, 0.20)),
                                     color-stop (0.20, alpha (#000, 0.16)),
                                     to (alpha (#000, 0.06)));
    box-shadow: inset  1px  1px alpha(#000, 0.08),
                inset -1px -1px alpha(#000, 0.08);
}

scale trough,
scale.horizontal trough,
scale.vertical trough {
    border-color: @scale_border_b;
}

scale trough:disabled {
    background-image: -gtk-gradient (linear,
                                     left top,
                                     left bottom,
                                     from (alpha (#000, 0.03)),
                                     to   (alpha (#000, 0.03)));
    border-style: none;
    box-shadow: inset  1px  1px alpha(#000, 0.15),
                          inset -1px -1px alpha(#000, 0.15);
}

scale trough highlight,
scale.vertical trough highlight,
scale.horizontal trough highlight {
    border-style: solid;
    border-color: @scale_highlight_border;
    border-radius: 8px;
    background-color: @scale_highlight_bg;
}

scale trough highlight:disabled,
scale.vertical trough highlight:disabled,
scale.horizontal trough highlight:disabled {
    background-color: transparent;
}

scale highlight.left {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade (@scale_fill, 0.90)),
                                     to (shade (@scale_fill, 1.31)));
    border-style: none;
    border-width: 0px;
    border-radius: 8px;
    box-shadow: inset  1px  1px alpha(#000, 0.08),
                inset -1px -1px alpha(#000, 0.08);                                     
    color:       @theme_selected_fg_color;
    text-shadow: none;
}

scale highlight.bottom {
    background-image: -gtk-gradient (linear,
                                     left top, right top,
                                     from (shade (@scale_fill, 0.90)),
                                     to (shade (@scale_fill, 1.31)));
    border-style: none;
    border-width: 0px;
    border-radius: 8px;
    box-shadow: inset  1px  1px alpha(#000, 0.08),
                inset -1px -1px alpha(#000, 0.08);
    color:       @theme_selected_fg_color;
    text-shadow: none;
}

scale highlight.left:disabled {
    background-image: -gtk-gradient (linear, left top, left bottom,
                                     from (shade (@theme_bg_color, 0.85)),
                                     to (shade (@theme_bg_color, 0.85)));
    box-shadow: inset  1px  1px alpha(#000, 0.02),
                inset -1px -1px alpha(#000, 0.02);
}

scale highlight.bottom:disabled {
    background-image: -gtk-gradient (linear,  left top, right top,
                                     from (shade (@theme_bg_color, 0.85)),
                                     to (shade (@theme_bg_color, 0.85)));
    box-shadow: inset  1px  1px alpha(#000, 0.02),
                inset -1px -1px alpha(#000, 0.02);
}

scale marks {
    color: mix(@theme_bg_color, @theme_text_color, 0.56);
    background-color: transparent;
}

scale marks.top,
scale.fine-tune marks.top {
    margin-bottom: 6px;
}

scale marks.bottom,
scale.fine-tune marks.bottom  {
    margin-top: 6px;
}

/* this makes marks visible */
scale.horizontal indicator,
scale.horizontal.fine-tune indicator {
    min-height: 8px;
    min-width: 1px;
}

scale.vertical indicator,
scale.vertical.fine-tune indicator {
    min-height: 1px;
    min-width: 8px;
}

scale slider,
scale slider:hover,
scale slider:disabled {
    border-radius: 8px;
    border-style: none;
}

scale.horizontal slider {
    /* background-image in -assets variant */
    background-color: transparent;
    background-size: 105%;
    background-repeat: no-repeat;
    background-position: center;
    min-height: 18px;
    min-width: 18px;
    margin: -9px 0px -9px 0px;
}

scale.horizontal.fine-tune slider:active,
scale.horizontal.fine-tune slider:hover:active {
    background-size: 90%;
    background-repeat: no-repeat;
    background-position: center;
}

scale.horizontal.marks-after slider {
    min-height: 22px
}

/* Why different values ? */
scale.vertical slider {
    /* background-image in -assets variant */
    background-size: 110%;
    background-repeat: no-repeat;
    background-position: center;
    min-height: 18px;
    min-width: 18px;
    margin: 0px -9px 0px -9px;
}

scale.vertical.fine-tune slider:active,
scale.vertical.fine-tune slider:hover:active {
    background-size: 95%;
    background-repeat: no-repeat;
    background-position: center;
}

scale.horizontal.color.marks-before,
scale.vertical.color.marks-after {
    margin: 0px 0px 0px 0px;
    padding: 0px;
}

scale.horizontal.color.marks-before trough,
scale.vertical.color.marks-after trough {
      border-color: @notebook_border;
      border-radius: 5px;
      background-repeat: no-repeat;
}

scale.vertical.color.marks-after slider {
    min-height: 20px;
    min-width: 22px;
    padding: 0px;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
    margin: 0px 0px 0px 0px;
}

scale.horizontal.color.marks-before slider {
    min-height: 14px;
    min-width: 20px;
    margin: 0px 0px 0px 0px;
    padding: 5px 0px;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
}

scale.horizontal.color.marks-before slider:hover,
scale.vertical.color.marks-after slider:hover {
    background-size: 105%;
}

scale.horizontal.color.marks-before.fine-tune slider,
scale.vertical.color.marks-after.fine-tune slider {
    background-size: 85%;
}

/**********
 * Frames *
 **********/

.frame,
frame > border { /* firefox location entry */
    padding: 0px;
    border-width: 1px;
    border-radius: 4px;
    border-style: solid;
    border-color:  shade (@theme_bg_color, 0.85);
    color: mix(@theme_selected_bg_color, @theme_fg_color, 0.70);
}

.frame.flat,
frame > border.flat,
overlay > frame > border {
    border-style: none;
}

/***********
 * Buttons *
 ***********/

button,
button.raised {
    padding: 5px;
    min-height: 20px;
    min-width: 20px;
}

button.combo {
    min-height: 22px;
    min-width: 20px;
}

/* needed with new button padding */
button label {
    padding: 2px 0px;
}

button {
    transition: all 400ms ease-out;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (@button_gradient1),
                                     color-stop (0.50, @button_gradient3),
                                     to   (@button_gradient4));
    border-width: 1px;
    border-radius: 5px;
    border-style: solid;
    /* outer */
    border-top-color:    transparent;
    border-left-color:   alpha (#000, 0.01);
    border-right-color:  alpha (#000, 0.01);
    border-bottom-color: alpha (#000, 0.03);
    box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset -1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
/* box-shadow Syntax */
/* box-shadow: [ inset ] horizontal_offset vertical_offset [ blur_radius ] [ spread ] color */
    color:             @theme_fg_color;
    text-shadow: none;
    outline-style: none;
}

button.default {
    text-shadow: none;
    color: @theme_fg_color;
}

/* ie. mate-control-center */
button.flat {
    transition: all 400ms ease-out;
    border-radius: 5px;
    padding: 4px;
    border-color: transparent;
    background-color: transparent;
    background-image: none;
    box-shadow: inset 0 1px rgba(255,255,255,0), 0 1px rgba(255,255,255,0);
    text-shadow: none;
    -gtk-icon-shadow: none;
    border-image: none;
}

/* ie. caja location drop down button */
button.flat.toggle {
    padding: 5px;
}

/* ie. controls gnome-mplayer, virtual-manager */
button.flat.image-button,
button.flat.image-button:focus,
button.flat.image-button:hover,
button.flat.scale {
	padding: 5px;
}

button:hover {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_gradient1, 1.03)),
                                     color-stop (0.50, shade(@button_gradient3, 1.03)),
                                     to   (shade(@button_gradient4, 1.01)));
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

button:hover:active,
button:focus:hover:active,
button:checked,
button:checked:hover,
button:checked:hover:active {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade (@theme_bg_color, 1.20)),
                                     color-stop (0.50, shade (@theme_bg_color, 1.00)),
                                     color-stop (0.50, shade (@theme_bg_color, 0.99)),
                                     to (shade (@theme_bg_color, 0.80)));
    border-radius: 5px;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

button:focus,
button.default {
    border-color: transparent;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

button:hover:active,
button:checked,
button:checked:hover,
button:checked:hover:active {
    text-shadow: none;
}

button:disabled {
    background-image: none;
    background-color: @insensitive_bg_color;
    border-color: alpha (#000, 0.00);
    border-bottom-color: alpha (#000, 0.00);
    border-image: none;
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
    color: @insensitive_fg_color;
    text-shadow: none;
}

button:disabled image,
.button:disabled image,
button:active:disabled image,
.button:active:disabled image{
	 opacity: 0.5;
}


toolbar.vertical > button.image-button.flat {
    padding: 5px;
}

button.text-button,
button.text-button:focus,
button.text-button:hover,
button.file,
combobox > button.combo,
combobox > button.combo:hover {
    padding: 5px;
}

button.font,
button.color {
    padding: 5px 4px;
}

.path-bar > button,
.linked.path-bar > button,
.linked.path-bar > button:hover,
.linked.path-bar > button:hover:active,
.linked.path-bar > button:checked,
.linked.path-bar > button:checked:hover,
.linked.path-bar > button:checked:hover:active {
    padding: 5px;
    border-color: transparent;
}

/* slider (left/right arrow) button */
.linked.path-bar > button.slider-button:first-child {
    border-width: 1px 0px 1px 1px;
    border-radius: 4px 0px 0px 4px;
    padding: 5px 1px;
}

.linked.path-bar > button.slider-button:last-child {
    border-width: 1px 1px 1px 0px;
    border-radius: 0px 4px 4px 0px;
    padding: 5px 1px;
}

.titlebar .path-bar > button.slider-button:disabled {
    box-shadow: none;
}

.titlebar .path-bar > button.toggle,
.titlebar .path-bar > button.toggle:hover,
.titlebar .path-bar > button.toggle:checked:active {
    border-radius: 0px;
    border-width: 1px 0px;
}

/***************************/
/* Linked toolbars-buttons */
/***************************/

/* Middle toolbar-button */
toolbar menubar .linked button,
toolbar menubar .linked button:focus,
toolbar menubar .linked button:hover,
toolbar menubar .linked button:hover:active,
toolbar menubar .linked button:checked,
toolbar menubar .linked button:checked:focus,
toolbar menubar .linked button:checked:hover,
toolbar menubar .linked button:checked:hover:active,
toolbar menubar .linked button:disabled,
toolbar button.raised.linked,
toolbar button.raised.linked:focus,
toolbar button.raised.linked:hover,
toolbar button.raised.linked:hover:active,
toolbar button.raised.linked:checked,
toolbar button.raised.linked:checked:focus,
toolbar button.raised.linked:checked:hover,
toolbar button.raised.linked:checked:hover:active,
toolbar button.raised.linked:disabled,
toolbar .raised.linked button,
toolbar .raised.linked button:focus,
toolbar .raised.linked button:hover,
toolbar .raised.linked button:hover:active,
toolbar .raised.linked button:checked,
toolbar .raised.linked button:checked:focus,
toolbar .raised.linked button:checked:hover,
toolbar .raised.linked button:checked:hover:active,
toolbar .raised.linked button:disabled,
toolbar.primary-toolbar .linked entry,
toolbar.primary-toolbar .linked entry:disabled,
toolbar.primary-toolbar .linked button,
toolbar.primary-toolbar .linked button:focus,
toolbar.primary-toolbar .linked button:hover,
toolbar.primary-toolbar .linked button:hover:active,
toolbar.primary-toolbar .linked button:checked,
toolbar.primary-toolbar .linked button:checked:focus,
toolbar.primary-toolbar .linked button:checked:hover,
toolbar.primary-toolbar .linked button:checked:hover:active,
toolbar.primary-toolbar .linked button:disabled {
    padding: 2px 4px 4px 2px;
    border-radius: 0px;
    border-width: 1px 0px 1px 0px;
}

/* Middle toolbar-button hover */
toolbar menubar .linked button:hover,
toolbar .raised.linked button:hover,
toolbar.primary-toolbar .linked button:hover {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

/* Middle toolbar-button active */
toolbar menubar .linked button:hover:active,
toolbar menubar .linked button:checked,
toolbar menubar .linked button:checked:focus,
toolbar menubar .linked button:checked:hover,
toolbar menubar .linked button:checked:hover:active,
toolbar button.raised.linked:hover:active,
toolbar button.raised.linked:checked,
toolbar button.raised.linked:checked:focus,
toolbar button.raised.linked:checked:hover,
toolbar button.raised.linked:checked:hover:active,
toolbar .raised.linked button:hover:active,
toolbar .raised.linked button:checked,
toolbar .raised.linked button:checked:focus,
toolbar .raised.linked button:checked:hover,
toolbar .raised.linked button:checked:hover:active,
toolbar.primary-toolbar .linked button:hover:active,
toolbar.primary-toolbar .linked button:checked,
toolbar.primary-toolbar .linked button:checked:focus,
toolbar.primary-toolbar .linked button:checked:hover,
toolbar.primary-toolbar .linked button:checked:hover:active {
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

/* Middle toolbar-button disabled */
toolbar menubar .linked button:disabled,
toolbar button.raised.linked:disabled,
toolbar .raised.linked button:disabled,
toolbar.primary-toolbar .linked button:disabled,
toolbar.primary-toolbar .linked entry:disabled {
     /* remove outer */
    border-color: alpha (#fff, 0.00);
    /* Remove right border */
    box-shadow: inset  0px  1px shade(@theme_button_border_dark, 1.10),
                inset  1px  0px shade(@theme_button_border_dark, 1.05),
                inset  0px -1px shade(@theme_button_border_dark, 1.00);
}

/* Leftmost toolbars-button */
toolbar menubar .linked button:first-child,
toolbar menubar .linked button:focus:first-child,
toolbar menubar .linked button:hover:first-child,
toolbar menubar .linked button:hover:active:first-child,
toolbar menubar .linked button:checked:first-child,
toolbar menubar .linked button:checked:focus:first-child,
toolbar menubar .linked button:checked:hover:first-child,
toolbar menubar .linked button:checked:hover:active:first-child,
toolbar menubar .linked button:disabled:first-child,
toolbar button.raised.linked:first-child,
toolbar button.raised.linked:focus:first-child,
toolbar button.raised.linked:hover:first-child,
toolbar button.raised.linked:hover:active:first-child,
toolbar button.raised.linked:checked:first-child,
toolbar button.raised.linked:checked:focus:first-child,
toolbar button.raised.linked:checked:hover:first-child,
toolbar button.raised.linked:checked:hover:active:first-child,
toolbar button.raised.linked:disabled:first-child,
toolbar .raised.linked button:first-child,
toolbar .raised.linked button:focus:first-child,
toolbar .raised.linked button:hover:first-child,
toolbar .raised.linked button:hover:active:first-child,
toolbar .raised.linked button:checked:first-child,
toolbar .raised.linked button:checked:focus:first-child,
toolbar .raised.linked button:checked:hover:first-child,
toolbar .raised.linked button:checked:hover:active:first-child,
toolbar .raised.linked button:disabled:first-child,
toolbar.primary-toolbar .linked entry:first-child,
toolbar.primary-toolbar .linked button:first-child,
toolbar.primary-toolbar .linked button:focus:first-child,
toolbar.primary-toolbar .linked button:hover:first-child,
toolbar.primary-toolbar .linked button:hover:active:first-child,
toolbar.primary-toolbar .linked button:checked:first-child,
toolbar.primary-toolbar .linked button:checked:focus:first-child,
toolbar.primary-toolbar .linked button:checked:hover:first-child,
toolbar.primary-toolbar .linked button:checked:hover:active:first-child,
toolbar.primary-toolbar .linked button:disabled:first-child,
toolbar.primary-toolbar .linked entry:disabled:first-child {
    padding: 2px 4px 4px 2px;
    border-radius: 5px 0px 0px 5px;
    border-width: 1px 0px 1px 1px;
}

/* Leftmost toolbars-button hover */
toolbar menubar .linked button:hover:first-child,
toolbar .raised.linked button:hover:first-child,
toolbar.primary-toolbar .linked button:hover:first-child {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

/* Leftmost toolbars-button active */
toolbar menubar .linked button:hover:active:first-child,
toolbar menubar .linked button:checked:first-child,
toolbar menubar .linked button:checked:focus:first-child,
toolbar menubar .linked button:checked:hover:first-child,
toolbar menubar .linked button:checked:hover:active:first-child,
toolbar button.raised.linked:hover:active:first-child,
toolbar button.raised.linked:checked:first-child,
toolbar button.raised.linked:checked:focus:first-child,
toolbar button.raised.linked:checked:hover:first-child,
toolbar button.raised.linked:checked:hover:active:first-child,
toolbar .raised.linked button:hover:active:first-child,
toolbar .raised.linked button:checked:first-child,
toolbar .raised.linked button:checked:focus:first-child,
toolbar .raised.linked button:checked:hover:first-child,
toolbar .raised.linked button:checked:hover:active:first-child,
toolbar.primary-toolbar .linked button:hover:active:first-child,
toolbar.primary-toolbar .linked button:checked:first-child,
toolbar.primary-toolbar .linked button:checked:focus:first-child,
toolbar.primary-toolbar .linked button:checked:hover:first-child,
toolbar.primary-toolbar .linked button:checked:hover:active:first-child {
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

/* Leftmost toolbars-button disabled */
toolbar menubar .linked button:disabled:first-child,
toolbar button.raised.linked:disabled:first-child,
toolbar .raised.linked button:disabled:first-child,
toolbar.primary-toolbar .linked button:disabled:first-child,
toolbar.primary-toolbar .linked entry:disabled:first-child {
     /* remove outer */
    border-color: alpha (#fff, 0.00);
    /* Remove right border */
    box-shadow: inset  0px  1px shade(@theme_button_border_dark, 1.10),
                inset  1px  0px shade(@theme_button_border_dark, 1.05),
                inset  0px -1px shade(@theme_button_border_dark, 1.00);
}

/* Rightmost toolbar-button */
toolbar menubar .linked button:last-child,
toolbar menubar .linked button:focus:last-child,
toolbar menubar .linked button:hover:last-child,
toolbar menubar .linked button:hover:active:last-child,
toolbar menubar .linked button:checked:last-child,
toolbar menubar .linked button:checked:focus:last-child,
toolbar menubar .linked button:checked:hover:last-child,
toolbar menubar .linked button:checked:hover:active:last-child,
toolbar menubar .linked button:disabled:last-child,
toolbar button.raised.linked:last-child,
toolbar button.raised.linked:focus:last-child,
toolbar button.raised.linked:hover:last-child,
toolbar button.raised.linked:hover:active:last-child,
toolbar button.raised.linked:checked:last-child,
toolbar button.raised.linked:checked:focus:last-child,
toolbar button.raised.linked:checked:hover:last-child,
toolbar button.raised.linked:checked:hover:active:last-child,
toolbar button.raised.linked:disabled:last-child,
toolbar .raised.linked button:last-child,
toolbar .raised.linked button:focus:last-child,
toolbar .raised.linked button:hover:last-child,
toolbar .raised.linked button:hover:active:last-child,
toolbar .raised.linked button:checked:last-child,
toolbar .raised.linked button:checked:focus:last-child,
toolbar .raised.linked button:checked:hover:last-child,
toolbar .raised.linked button:checked:hover:active:last-child,
toolbar .raised.linked button:disabled:last-child,
toolbar.primary-toolbar .linked entry:last-child,
toolbar.primary-toolbar .linked button:last-child,
toolbar.primary-toolbar .linked button:focus:last-child,
toolbar.primary-toolbar .linked button:hover:last-child,
toolbar.primary-toolbar .linked button:hover:active:last-child,
toolbar.primary-toolbar .linked button:checked:last-child,
toolbar.primary-toolbar .linked button:checked:focus:last-child,
toolbar.primary-toolbar .linked button:checked:hover:last-child,
toolbar.primary-toolbar .linked button:checked:hover:active:last-child,
toolbar.primary-toolbar .linked button:disabled:last-child,
toolbar.primary-toolbar .linked entry:disabled:last-child {
    padding: 2px 4px 4px 2px;
    border-radius: 0px 5px 5px  0px;
    border-width: 1px 1px 1px 0px;
}

/* Rightmost toolbars-button hover */
toolbar menubar .linked button:hover:last-child,
toolbar .raised.linked button:hover:last-child,
toolbar.primary-toolbar .linked button:hover:last-child {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

/* Rightmost toolbar-button active */
toolbar menubar .linked button:hover:active:last-child,
toolbar menubar .linked button:checked:last-child,
toolbar menubar .linked button:checked:focus:last-child,
toolbar menubar .linked button:checked:hover:last-child,
toolbar menubar .linked button:checked:hover:active:last-child,
toolbar button.raised.linked:hover:active:last-child,
toolbar button.raised.linked:checked:last-child,
toolbar button.raised.linked:checked:focus:last-child,
toolbar button.raised.linked:checked:hover:last-child,
toolbar button.raised.linked:checked:hover:active:last-child,
toolbar .raised.linked button:hover:active:last-child,
toolbar .raised.linked button:checked:last-child,
toolbar .raised.linked button:checked:focus:last-child,
toolbar .raised.linked button:checked:hover:last-child,
toolbar .raised.linked button:checked:hover:active:last-child,
toolbar.primary-toolbar .linked button:hover:active:last-child,
toolbar.primary-toolbar .linked button:checked:last-child,
toolbar.primary-toolbar .linked button:checked:focus:last-child,
toolbar.primary-toolbar .linked button:checked:hover:last-child,
toolbar.primary-toolbar .linked button:checked:hover:active:last-child {
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

/* Rightmost toolbar-button disabled */
toolbar menubar .linked button:disabled:last-child,
toolbar button.raised.linked:disabled:last-child,
toolbar .raised.linked button:disabled:last-child,
toolbar.primary-toolbar .linked button:disabled:last-child,
toolbar.primary-toolbar .linked entry:disabled:last-child {
    border-color: alpha (#fff, 0.00); /* Quita outer */
    box-shadow: inset  0px  1px shade(@theme_button_border_dark, 1.10),
                inset  1px  0px shade(@theme_button_border_dark, 1.05),
                inset -1px  0px shade(@theme_button_border_dark, 1.05),
                inset  0px -1px shade(@theme_button_border_dark, 1.00);
}

/* Linked single toolbar-button */
toolbar menubar .linked button:only-child,
toolbar menubar .linked button:hover:only-child,
toolbar menubar .linked button:hover:active:only-child,
toolbar menubar .linked button:checked:only-child,
toolbar menubar .linked button:checked:focus:only-child,
toolbar menubar .linked button:checked:hover:only-child,
toolbar menubar .linked button:checked:hover:active:only-child,
toolbar menubar .linked button:disabled:only-child,
toolbar button.raised.linked:only-child,
toolbar button.raised.linked:hover:only-child,
toolbar button.raised.linked:hover:active:only-child,
toolbar button.raised.linked:checked:only-child,
toolbar button.raised.linked:checked:focus:only-child,
toolbar button.raised.linked:checked:hover:only-child,
toolbar button.raised.linked:checked:hover:active:only-child,
toolbar button.raised.linked:disabled:only-child,
toolbar .raised.linked button:only-child,
toolbar .raised.linked button:hover:only-child,
toolbar .raised.linked button:hover:active:only-child,
toolbar .raised.linked button:checked:only-child,
toolbar .raised.linked button:checked:focus:only-child,
toolbar .raised.linked button:checked:hover:only-child,
toolbar .raised.linked button:checked:hover:active:only-child,
toolbar .raised.linked button:disabled:only-child,
toolbar.primary-toolbar .linked entry:only-child,
toolbar.primary-toolbar .linked button:only-child,
toolbar.primary-toolbar .linked button:hover:only-child,
toolbar.primary-toolbar .linked button:hover:active:only-child,
toolbar.primary-toolbar .linked button:checked:only-child,
toolbar.primary-toolbar .linked button:checked:focus:only-child,
toolbar.primary-toolbar .linked button:checked:hover:only-child,
toolbar.primary-toolbar .linked button:checked:hover:active:only-child,
toolbar.primary-toolbar .linked entry:disabled:only-child,
toolbar.primary-toolbar .linked button:disabled:only-child {
    border-width: 1px;
    border-radius: 5px;
    padding: 2px 4px 4px 2px;
}

/* Linked single toolbar-button hover */
toolbar .raised.linked button:hover:only-child,
toolbar menubar .linked button:hover:only-child,
toolbar.primary-toolbar .linked button:hover:only-child {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

/* Linked single toolbar-button active */
toolbar menubar .linked button:hover:active:only-child,
toolbar menubar .linked button:checked:only-child,
toolbar menubar .linked button:checked:focus:only-child,
toolbar menubar .linked button:checked:hover:only-child,
toolbar menubar .linked button:checked:hover:active:only-child,
toolbar button.raised.linked:hover:active:only-child,
toolbar button.raised.linked:checked:only-child,
toolbar button.raised.linked:checked:focus:only-child,
toolbar button.raised.linked:checked:hover:only-child,
toolbar button.raised.linked:checked:hover:active:only-child,
toolbar .raised.linked button:hover:active:only-child,
toolbar .raised.linked button:checked:only-child,
toolbar .raised.linked button:checked:focus:only-child,
toolbar .raised.linked button:checked:hover:only-child,
toolbar .raised.linked button:checked:hover:active:only-child,
toolbar.primary-toolbar .linked button:hover:active:only-child,
toolbar.primary-toolbar .linked button:checked:only-child,
toolbar.primary-toolbar .linked button:checked:focus:only-child,
toolbar.primary-toolbar .linked button:checked:hover:only-child,
toolbar.primary-toolbar .linked button:checked:hover:active:only-child {
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

/* Linked single toolbar-button disabled */
toolbar menubar .linked button:disabled:only-child,
toolbar button.raised.linked:disabled:only-child,
toolbar .raised.linked button:disabled:only-child,
toolbar.primary-toolbar .linked entry:disabled:only-child,
toolbar.primary-toolbar .linked button:disabled:only-child {
    border-color: alpha (#fff, 0.00); /* Quita outer */
    box-shadow: inset  0px  1px shade(@theme_button_border_dark, 1.10),
                inset  1px  0px shade(@theme_button_border_dark, 1.05),
                inset -1px  0px shade(@theme_button_border_dark, 1.05),
                inset  0px -1px shade(@theme_button_border_dark, 1.00);
}

/* nth-child for linked areas */
toolbar .raised.linked.button,
toolbar .raised.linked.button:hover:active,
toolbar .raised.linked.button:checked,
toolbar .raised.linked.button:checked:hover,
toolbar .raised.linked.button:checked:hover:active,
toolbar .raised.linked button,
toolbar .raised.linked button:hover:active,
toolbar .raised.linked button:checked,
toolbar .raised.linked button:checked:hover,
toolbar .raised.linked button:checked:hover:active {
}

toolbar .raised.linked.button:nth-child(first) ,
toolbar .raised.linked.button:hover:active:nth-child(first),
toolbar .raised.linked.button:checked:nth-child(first),
toolbar .raised.linked.button:checked:hover:nth-child(first),
toolbar .raised.linked:nth-child(first) button,
toolbar .raised.linked:nth-child(first) button:hover:active,
toolbar .raised.linked:nth-child(first) button:checked,
toolbar .raised.linked:nth-child(first) button:checked:hover {
}

toolbar .raised.linked.button:nth-child(last),
toolbar .raised.linked.button:hover:active:nth-child(last),
toolbar .raised.linked.button:checked:nth-child(last),
toolbar .raised.linked.button:checked:hover:nth-child(last),
toolbar .raised.linked:nth-child(last) button,
toolbar .raised.linked:nth-child(last) button:hover:active,
toolbar .raised.linked:nth-child(last) button:checked,
toolbar .raised.linked:nth-child(last) button:checked:hover {
}

/***************************/
/* Linked standard buttons */
/***************************/

.linked entry,
.linked > combobox > button.combo,
.linked > combobox > button.combo:focus
.linked > combobox > button.combo:checked,
.linked > combobox > button.combo:hover,
.linked > combobox > button.combo:focus:hover,
.linked > combobox > button.combo:disabled,
.linked button,
.linked button:focus,
.linked button:checked,
.linked button:hover,
.linked button:focus:hover,
.linked button:hover:active,
.linked button:checked:hover,
.linked button:checked:hover:active,
.linked button:disabled {
    background-color: transparent;
    border-width: 1px;
    border-radius: 5px;
    color: @theme_fg_color;
    text-shadow: none;
    box-shadow: none;
}

.linked entry {
    padding: 7px 6px;
}

.linked button,
.linked button:focus,
.linked button:hover,
.linked button:checked,
.linked button:focus:active,
.linked button:focus:hover:active,
.linked button:hover:active,
.linked button:checked:hover,
.linked button:checked:hover:active,
.linked button:disabled {
    padding: 4px;
}

.linked > combobox > button.combo:disabled,
.linked button:disabled {
    background-image: none;
    background-color: @insensitive_bg_color;
    border-color: alpha (#000, 0.00);
    border-bottom-color: alpha (#000, 0.00);
    color: @insensitive_fg_color;
}

.linked > combobox > button.combo,
.linked > combobox > button.combo:focus,
.linked button,
.linked button:focus {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (@button_gradient1),
                                     color-stop (0.50, @button_gradient3),
                                     to   (@button_gradient4));

}

.linked > combobox > button.combo:hover,
.linked > combobox > button.combo:focus:hover,
.linked button:hover,
.linked button:focus:hover,
.linked button:checked:hover {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_gradient1, 1.03)),
                                     color-stop (0.50, shade(@button_gradient3, 1.03)),
                                     to   (shade(@button_gradient4, 1.01)));
}

.linked > combobox > button.combo:checked,
.linked > combobox > button.combo:checked:hover:active,
.linked button:checked,
.linked button:checked:hover:active {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade (@theme_bg_color, 1.20)),
                                     color-stop (0.50, shade (@theme_bg_color, 1.00)),
                                     color-stop (0.50, shade (@theme_bg_color, 0.99)),
                                     to (shade (@theme_bg_color, 0.80)));
}

/* default button */
.linked button.default,
.linked button.default:focus,
.linked button.default:first-child,
.linked button.default:focus:first-child {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px rgba(255,255,255,0), 0 1px rgba(255,255,255,0),
                inset  0px -1px shade(@selected_bg_color, 1.3);
}

.linked button.default:last-child,
.linked button.default:focus:last-child,
.linked button.default:only-child,
.linked button.default:focus:only-child {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
}

/* Middle button */
.linked entry,
.linked button,
.linked button:focus {
    box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset -1px  0px rgba(255,255,255,0), 0 1px rgba(255,255,255,0),
                inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
    border-width: 1px 0px 1px 0px;
    border-radius: 0;
}

 /* Middle Button active/hover */
.linked button:hover,
.linked button:checked:hover,
.linked button:focus:active,
.linked button:hover:active,
.linked button:checked,
.linked button:checked:hover:active {
     box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                 inset  1px  0px shade(@selected_bg_color, 1.3),
                 inset -1px  0px rgba(255,255,255,0), 0 1px rgba(255,255,255,0),
                 inset  0px -1px shade(@selected_bg_color, 1.3);
    border-width: 1px 0px 1px 0px;
    border-radius: 0;
}

/* Middle button disabled */
.linked button:disabled {
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px rgba(255,255,255,0), 0 1px rgba(255,255,255,0),
                inset  0px -1px @insensitive_border_color;
    border-width: 1px 0px 1px 0px;
    border-radius: 0;
}

/* Leftmost button */
.linked entry:first-child,
.linked button:first-child,
.linked button:focus:first-child {
    box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset -1px  0px rgba(255,255,255,0), 0 1px rgba(255,255,255,0),
                inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
    border-radius: 5px 0 0 5px;
    border-width: 1px 0px 1px 1px;
}

/* Leftmost button active/hover */
.linked button:hover:first-child,
.linked button:checked:hover:first-child,
.linked button:focus:active:first-child,
.linked button:hover:active:first-child,
.linked button:checked:first-child,
.linked button:checked:hover:active:first-child {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px rgba(255,255,255,0), 0 1px rgba(255,255,255,0),
                inset  0px -1px shade(@selected_bg_color, 1.3);
    border-radius: 5px 0 0 5px;
    border-width: 1px 0px 1px 1px;
}

/* Leftmost button disabled */
.linked button:disabled:first-child {
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px rgba(255,255,255,0), 0 1px rgba(255,255,255,0),
                inset  0px -1px @insensitive_border_color;
    border-radius: 5px 0 0 5px;
    border-width: 1px 0px 1px 1px;
}

/* Rightmost button */
.linked entry:last-child,
.linked button:last-child,
.linked button:focus:last-child {
     box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                 inset  1px  0px alpha(shade(@button_border, 0.94), 0.80),
                 inset -1px  0px alpha(shade(@button_border, 0.94), 0.80),
                 inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
    border-radius: 0 5px 5px 0;
    border-width: 1px 1px 1px 0px;
}

/* Rightmost button active/hover */
.linked button:hover:last-child,
.linked button:checked:hover:last-child,
.linked button:focus:active:last-child,
.linked button:hover:active:last-child,
.linked button:checked:last-child,
.linked button:checked:hover:active:last-child {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
    border-radius: 0 5px 5px 0;
    border-width: 1px 1px 1px 0px;
}

/* Rightmost button disabled */
.linked button.combo:disabled:last-child {
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
}

/* Linked single button */
.linked entry:only-child,
.linked button:only-child,
.linked button:hover:only-child,
.linked button:checked:only-child,
.linked button:focus:only-child,
.linked button:focus:hover:only-child {
    border-radius: 5px;
    border-width: 1px;
}

.linked button:hover:only-child,
.linked button:hover:active:only-child,
.linked button:focus:active:only-child,
.linked button:checked:only-child,
.linked button:checked:hover:only-child,
.linked button:checked:hover:active:only-child {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
    border-radius: 5px;
}

/* Linked single button disabled */
.linked button:disabled:only-child {
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
    border-radius: 5px;
}

/* vertical */
/* Middle button */
.vertical.linked button,
.vertical.linked button:focus {
    box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.90),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.90),
                inset -1px  0px alpha(shade(@button_border, 0.88), 0.90),
                inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
    border-radius: 0px;
    border-width: 0px 1px 1px 1px;
}

.vertical.linked button:hover,
.vertical.linked button:checked,
.vertical.linked button:focus:hover,
.vertical.linked button:focus:hover:active,
.vertical.linked button:hover:active,
.vertical.linked button:checked:active,
.vertical.linked button:checked:hover:active {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
    border-radius: 0px;
    border-width: 0px 1px 1px 1px;
}

.vertical.linked button:disabled {
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
    border-radius: 0px;
    border-width: 0px 1px 1px 1px;
}

/* Top button */

.vertical.linked button:first-child,
.vertical.linked button:focus:first-child {
    box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.90),
                inset  -1px 0px alpha(shade(@button_border, 0.88), 0.90);
    border-radius: 5px 5px 0 0;
    border-width: 1px 1px 1px 1px;
}

.vertical.linked button:hover:first-child,
.vertical.linked button:checked:first-child,
.vertical.linked button:focus:hover:first-child,
.vertical.linked button:focus:hover:active:first-child,
.vertical.linked button:hover:active:first-child,
.vertical.linked button:checked:active:first-child,
.vertical.linked button:checked:hover:active:first-child {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset  -1px 0px shade(@selected_bg_color, 1.3);
    border-radius: 5px 5px 0 0;
    border-width: 1px 1px 1px 1px;
}

.vertical.linked button:disabled:first-child {
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color;
    border-radius: 5px 5px 0 0;
    border-width: 1px 1px 1px 1px;
}

/* Bottom button */

.vertical.linked button:last-child,
.vertical.linked button:focus:last-child {
     box-shadow: inset  1px  0px alpha(shade(@button_border, 0.94), 0.90),
                 inset -1px  0px alpha(shade(@button_border, 0.94), 0.90),
                 inset  0px -1px alpha(shade(@button_border, 0.88), 0.70);
    border-radius: 0 0 5px 5px;
    border-width: 0px 1px 1px 1px;
}

.vertical.linked button:hover:last-child,
.vertical.linked button:checked:last-child,
.vertical.linked button:focus:hover:last-child,
.vertical.linked button:focus:hover:active:last-child,
.vertical.linked button:hover:active:last-child,
.vertical.linked button:checked:active:last-child,
.vertical.linked button:checked:hover:active:last-child {
    box-shadow: inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
    border-radius: 0 0 5px 5px;
    border-width: 0px 1px 1px 1px;
}

.vertical.linked button:disabled:last-child {
    box-shadow: inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
    border-radius: 0 0 5px 5px;
    border-width: 0px 1px 1px 1px;
}

/* Single button */

.vertical.linked button:only-child,
.vertical.linked button:focus:only-child {
    box-shadow: inset  0px  1px alpha(shade(@button_border, 0.94), 0.90),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.90),
                inset -1px  0px alpha(shade(@button_border, 0.94), 0.90),
                inset  0px -1px alpha(shade(@button_border, 0.94), 0.90);
    border-radius: 5px;
    border-width: 1px;
}

.vertical.linked button:hover:only-child,
.vertical.linked button:checked:only-child,
.vertical.linked button:focus:hover:only-child,
.vertical.linked button:focus:hover:active:only-child,
.vertical.linked button:hover:active:only-child,
.vertical.linked button:checked:active:only-child,
.vertical.linked button:checked:hover:active:only-child {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
    border-radius: 5px;
    border-width: 1px;
}

.vertical.linked button:disabled:only-child {
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
    border-radius: 5px;
    border-width: 1px;
}

/*************************/
/* linked inline buttons */
/*************************/

/* Middle button */
toolbar.inline-toolbar button,
toolbar.inline-toolbar button:checked,
toolbar.inline-toolbar button:disabled,
toolbar.inline-toolbar toolbutton > button,
toolbar.inline-toolbar toolbutton > button:checked,
toolbar.inline-toolbar toolbutton > button:disabled {
    /* outer */
    border-width: 0px;
    border-right-width: 0px;
    border-left-width: 0px;
    border-radius: 0;
    /* border and inset */
    box-shadow: inset  0px  1px alpha(#fff, 0.09),
                inset  2px  0px alpha(#fff, 0.07),
                inset  1px  0px shade(@button_border, 1.10),
                inset -1px  0px alpha(#fff, 0.07),
                inset  0px -1px alpha(#fff, 0.05);
}

toolbar.inline-toolbar button:hover:active,
toolbar.inline-toolbar button:checked,
toolbar.inline-toolbar button:checked:hover,
toolbar.inline-toolbar button:checked:hover:active,
toolbar.inline-toolbar toolbutton > button:checked {
    background-color: transparent;
    box-shadow: inset  0px  1px alpha(#000, 0.05),
                inset  2px  0px alpha(#000, 0.03),
                inset  1px  0px shade(@button_border, 0.80),
                inset -1px  0px alpha(#000, 0.03),
                inset  0px -1px alpha(#000, 0.02);
}

toolbar.inline-toolbar button:disabled,
toolbar.inline-toolbar toolbutton > button:disabled {
    box-shadow: inset  1px  0px shade(@button_border, 1.10);
}

/* Leftmost button */
toolbar.inline-toolbar button:first-child,
toolbar.inline-toolbar button:checked:first-child,
toolbar.inline-toolbar button:disabled:first-child,
toolbar.inline-toolbar toolbutton:first-child > button,
toolbar.inline-toolbar toolbutton:first-child > button:checked,
toolbar.inline-toolbar toolbutton:first-child > button:disabled {
    border-width: 0px;
    border-radius: 0px;
    box-shadow: inset  0px  1px alpha(#fff, 0.09),
                inset  1px  0px alpha(#fff, 0.07),
                inset -1px  0px alpha(#fff, 0.07),
                inset  0px -1px alpha(#fff, 0.05);
}

toolbar.inline-toolbar button:hover:active:first-child,
toolbar.inline-toolbar button:checked:first-child,
toolbar.inline-toolbar button:checked:hover:first-child,
toolbar.inline-toolbar button:checked:hover:active:first-child,
toolbar.inline-toolbar toolbutton:first-child > button:checked {
    background-color: transparent;
    box-shadow: inset  0px  1px alpha(#000, 0.05),
                inset  1px  0px alpha(#000, 0.03),
                inset -1px  0px alpha(#000, 0.03),
                inset  0px -1px alpha(#000, 0.02);
}

toolbar.inline-toolbar button:disabled:first-child,
toolbar.inline-toolbar toolbutton:first-child > button:disabled {
    box-shadow: none;
}

/* Rightmost button */
toolbar.inline-toolbar button:last-child,
toolbar.inline-toolbar button:checked:last-child,
toolbar.inline-toolbar button:disabled:last-child,
toolbar.inline-toolbar toolbutton:last-child > button,
toolbar.inline-toolbar toolbutton:last-child > button:checked,
toolbar.inline-toolbar toolbutton:last-child > button:disabled {
    border-width: 0px;
    border-radius: 0px;
    box-shadow: inset  0px  1px alpha(#fff, 0.09),
                inset  2px  0px alpha(#fff, 0.07),
                inset  1px  0px shade(@button_border, 1.10),
                inset -2px  0px alpha(#fff, 0.07),
                inset -1px  0px shade(@button_border, 1.10),
                inset  0px -1px alpha(#fff, 0.05);
}

toolbar.inline-toolbar button:hover:active:last-child,
toolbar.inline-toolbar button:checked:last-child,
toolbar.inline-toolbar button:checked:hover:last-child,
toolbar.inline-toolbar button:checked:hover:active:last-child,
toolbar.inline-toolbar toolbutton:last-child > button:checked {
    background-color: transparent;
    box-shadow: inset  0px  1px alpha(#000, 0.05),
                inset  2px  0px alpha(#000, 0.03),
                inset  1px  0px shade(@button_border, 0.80),
                inset -2px  0px alpha(#000, 0.03),
                inset -1px  0px shade(@button_border, 0.80),
                inset  0px -1px alpha(#000, 0.02);
}

toolbar.inline-toolbar button:disabled:last-child,
toolbar.inline-toolbar toolbutton:last-child > button:disabled {
    box-shadow: inset  1px  0px shade(@button_border, 1.10),
                inset -1px  0px shade(@button_border, 1.10);
}

/* Single button */
toolbar.inline-toolbar button:only-child,
toolbar.inline-toolbar button:checked:only-child,
toolbar.inline-toolbar button:disabled:only-child,
toolbar.inline-toolbar toolbutton:only-child > button,
toolbar.inline-toolbar toolbutton:only-child > button:checked,
toolbar.inline-toolbar toolbutton:only-child > button:disabled {
    border-radius: 0px;
    border-width: 0px;
    box-shadow: inset  0px  1px alpha(#fff, 0.09),
                inset -1px  0px alpha(#fff, 0.07),
                inset  0px -1px alpha(#fff, 0.05),
                inset  1px  0px shade(@button_border, 1.10);
}

toolbar.inline-toolbar button:hover:active:only-child,
toolbar.inline-toolbar button:checked:only-child,
toolbar.inline-toolbar button:checked:hover:only-child,
toolbar.inline-toolbar button:checked:hover:active:only-child,
toolbar.inline-toolbar toolbutton:only-child > button:checked {
    background-color: transparent;
    box-shadow: inset  0px  1px alpha(#000, 0.05),
                inset -1px  0px alpha(#000, 0.03),
                inset  0px -1px alpha(#000, 0.02),
                inset  1px  0px shade(@button_border, 0.80);
}

toolbar.inline-toolbar button:disabled:only-child,
toolbar.inline-toolbar toolbutton:only-child > button:disabled {
    box-shadow: inset  1px  0px shade(@button_border, 1.10);
}

/**************
 * ComboBoxes *
 **************/

combobox {
    padding: 0px;
}

combobox cellview {
    /* color combobox read-only */
    color: @theme_fg_color;
    text-shadow: none;
}

combobox separator {
    /* always disable separators */
    -GtkWidget-horizontal-separator: 0;
    -GtkWidget-vertical-separator: 0;
}

combobox entry.combo,
combobox entry.combo:nth-child(first) {
    border-width: 1px 0px 1px 1px; /* remove right-outer */
    border-radius: 5px 0px 0px 5px;
    /* remove right-border */
    box-shadow: inset  0px  3px alpha(#000, 0.03),
                inset  0px  2px alpha(#000, 0.05),
                inset  2px  0px alpha(#000, 0.04),
                inset -1px  0px alpha(#000, 0.04),
                inset  0px -2px alpha(#000, 0.03),
                inset  0px  1px shade(@button_border, 0.90),
                inset  1px  0px shade(@button_border, 0.99),
                inset  0px -1px shade(@button_border, 1.10);
}

combobox entry.combo:focus {
    box-shadow: inset  0px  3px alpha(#000, 0.03),
                inset  0px  2px alpha(#000, 0.05),
                inset  2px  0px alpha(#000, 0.04),
                inset -1px  0px alpha(#000, 0.04),
                inset  0px -2px alpha(#000, 0.03),
                inset  0px  1px alpha(@focused_entry_border, 0.95),
                inset  1px  0px alpha(@focused_entry_border, 0.95),
                inset  0px -1px alpha(@focused_entry_border, 0.95);
}

/* for RTL languages */
combobox entry.combo:nth-child(last) {
    border-width: 1px 1px 1px 0px;
    border-radius: 0px 5px 5px 0px;
}

combobox button.combo {
    color: @internal_element_color;
}

combobox button.combo:hover {
    color: @theme_text_color;
}

combobox button.combo:focus,
combobox .linked button.combo:focus {
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

toolbar combobox cellview {
    /* color combobox read-only */
    color: shade(@toolbar_fg_color, 0.94);
    text-shadow: none;
}

/* ie. atril */
.primary-toolbar toolbar combobox cellview,
toolbar.primary-toolbar combobox cellview {
    /* color combobox read-only */
    color: shade(@theme_fg_dark_color, 0.94);
    text-shadow: none;
}

.primary-toolbar toolbar combobox cellview:hover,
toolbar.primary-toolbar combobox cellview:hover {
    color: shade (@theme_selected_bg_color, 1.6);
}

toolbar combobox button.combo:disabled,
toolbar.primary-toolbar combobox button.combo:disabled,
toolbar combobox .linked button.combo:disabled,
toolbar.primary-toolbar combobox .linked button.combo:disabled,
toolbar combobox .linked button.combo:disabled:first-child,
toolbar.primary-toolbar .linked combobox button.combo:disabled:first-child,
toolbar combobox .linked button.combo:disabled:last-child,
toolbar.primary-toolbar combobox .linked button.combo:disabled:last-child,
toolbar combobox .linked button.combo:disabled:only-child,
toolbar.primary-toolbar combobox button.combo:disabled:only-child {
    color: shade (@insensitive_fg_color, 1.0);
    background-color: transparent;
    box-shadow: none;
}

toolbar toolitem entry:disabled,
toolbar.primary-toolbar toolitem entry:disabled {
    color: shade (@insensitive_fg_color, 1.0);
    background-color: transparent;
}

toolbar combobox entry.combo,
toolbar combobox entry.combo:focus {
    border-width: 1px 0px 1px 1px; /* remove rightr */
    border-top-color:    shade(@toolbar_gradient_base, 0.60);
    border-left-color:   shade(@toolbar_gradient_base, 0.70);
    border-bottom-color: shade(@toolbar_gradient_base, 0.80);
    box-shadow: inset  0px  3px alpha(#000, 0.02),
                inset  0px  2px alpha(#000, 0.04),
                inset  0px  1px alpha(#000, 0.06),
                inset  1px  0px alpha(#000, 0.05),
                inset -1px  0px alpha(#000, 0.05);
}

toolbar combobox button.combo {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (alpha(#fff, 0.04)),
                                     to   (alpha(#000, 0.07)));
    border-top-color:    alpha (#000, 0.15);
    border-left-color:   alpha (#000, 0.20);
    border-right-color:  alpha (#000, 0.20);
    border-bottom-color: alpha (#000, 0.25);
}

toolbar combobox button.combo:checked {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (alpha(#000, 0.20)),
                                     to   (alpha(#000, 0.06)));
    border-top-color:    alpha (#000, 0.40);
    border-left-color:   alpha (#000, 0.31);
    border-right-color:  alpha (#000, 0.31);
    border-bottom-color: alpha (#000, 0.22);
    box-shadow: inset  0px  2px alpha(#000, 0.02),
                inset  0px  1px alpha(#000, 0.06),
                inset  2px  0px alpha(#000, 0.02),
                inset  1px  0px alpha(#000, 0.04),
                inset -2px  0px alpha(#000, 0.02),
                inset -1px  0px alpha(#000, 0.04),
                inset  0px -1px alpha(#fff, 0.01);
}

toolbar combobox button.combo,
toolbar combobox button.combo:hover,
toolbar combobox button.combo:checked,
toolbar combobox button.combo:disabled,
toolbar combobox button.combo:nth-child(last),
toolbar.primary-toolbar combobox button.combo,
toolbar.primary-toolbar combobox button.combo:hover,
toolbar.primary-toolbar combobox button.combo:checked,
toolbar.primary-toolbar combobox button.combo:disabled,
toolbar.primary-toolbar combobox button.combo:nth-child(last) {
    border-radius: 5px;
    border-width: 1px 1px 1px 1px;
    padding: 8px 6px;
}

combobox > button.combo,
combobox > button.combo:focus,
combobox > button.combo:focus:hover,
combobox > button.combo:hover,
combobox > button.combo:hover:active,
combobox > button.combo:checked,
combobox > button.combo:checked:hover,
combobox > button.combo:checked:hover:active,
combobox > button.combo:disabled {
    border-width: 1px;
    border-radius: 5px;
    border-width: 1px;
    padding: 5px 4px;
}

combobox > .horizontal.linked button.combo,
combobox > .horizontal.linked entry.combo,
.linked.horizontal > combobox > .linked.horizontal > button.combo,
.linked.horizontal > combobox > .linked.horizontal > button.combo:focus {
    padding: 4px;
    border-radius: 0px;
    border-width: 1px 0px 1px 0px;
}

combobox > .horizontal.linked button.combo:first-child,
combobox > .horizontal.linked entry.combo:first-child,
.linked.horizontal > combobox:first-child > .linked.horizontal > button.combo:first-child,
.linked.horizontal > combobox:first-child > .linked.horizontal > button.combo:focus:first-child {
    border-radius: 5px 0px 0px 5px;
    border-width: 1px 0px 1px 1px;
}

combobox > .horizontal.linked button.combo:last-child,
combobox > .horizontal.linked entry.combo:last-child,
.linked.horizontal > combobox:last-child > .linked.horizontal > button.combo:last-child,
.linked.horizontal > combobox:last-child > .linked.horizontal > button.combo:focus:last-child {
    border-radius: 0px 5px 5px 0px;
    border-width: 1px 1px 1px 0px;
}

combobox > .horizontal.linked button.combo:only-child,
combobox > .horizontal.linked entry.combo:only-child,
.linked.horizontal > combobox:only-child > .linked.horizontal > button.combo:only-child,
.linked.horizontal > combobox:only-child > .linked.horizontal > button.combo:focus:only-child {
    border-radius: 5px;
    border-width: 1px;
}

combobox > .linked button.combo:checked {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
}

/* Middle button */
.linked.horizontal > combobox > .linked.horizontal > button.combo,
.linked.horizontal > combobox > .linked.horizontal > button.combo:focus {
    box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset -1px  0px rgba(255,255,255,0), 0 1px rgba(255,255,255,0),
                inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
}

 /* Middle Button active/hover */
.linked.horizontal > combobox > .linked.horizontal > button.combo:hover,
.linked.horizontal > combobox > .linked.horizontal > button.combo:focus:hover,
.linked.horizontal > combobox > .linked.horizontal > button.combo:hover:active,
.linked.horizontal > combobox > .linked.horizontal > button.combo:checked,
.linked.horizontal > combobox > .linked.horizontal > button.combo:checked:hover,
.linked.horizontal > combobox > .linked.horizontal > button.combo:checked:hover:active {
     box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                 inset  1px  0px shade(@selected_bg_color, 1.3),
                 inset -1px  0px rgba(255,255,255,0), 0 1px rgba(255,255,255,0),
                 inset  0px -1px shade(@selected_bg_color, 1.3);
}

/* Middle button disabled */
.linked.horizontal > combobox > .linked.horizontal > button.combo:disabled {
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px rgba(255,255,255,0), 0 1px rgba(255,255,255,0),
                inset  0px -1px @insensitive_border_color;
}

/* Leftmost button */
.linked.horizontal > combobox:first-child > .linked.horizontal > button.combo:first-child,
.linked.horizontal > combobox:first-child > .linked.horizontal > button.combo:focus:first-child {
    box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset -1px  0px rgba(255,255,255,0), 0 1px rgba(255,255,255,0),
                inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
}

/* Leftmost button active/active */
.linked.horizontal > combobox:first-child > .linked.horizontal > button.combo:hover:first-child,
.linked.horizontal > combobox:first-child > .linked.horizontal > button.combo:focus:hover:first-child,
.linked.horizontal > combobox:first-child > .linked.horizontal > button.combo:hover:active:first-child,
.linked.horizontal > combobox:first-child > .linked.horizontal > button.combo:checked:first-child,
.linked.horizontal > combobox:first-child > .linked.horizontal > button.combo:checked:hover:first-child,
.linked.horizontal > combobox:first-child > .linked.horizontal > button.combo:checked:hover:active:first-child {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px rgba(255,255,255,0), 0 1px rgba(255,255,255,0),
                inset  0px -1px shade(@selected_bg_color, 1.3);
}

/* Leftmost button disabled */
.linked.horizontal > combobox:first-child > .linked.horizontal > button.combo:disabled:first-child {
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px rgba(255,255,255,0), 0 1px rgba(255,255,255,0),
                inset  0px -1px @insensitive_border_color;
}

/* Rightmost button */
.linked.horizontal > combobox:last-child > .linked.horizontal > button.combo:last-child,
.linked.horizontal > combobox:last-child > .linked.horizontal > button.combo:focus:last-child {
     box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                 inset  1px  0px alpha(shade(@button_border, 0.94), 0.80),
                 inset -1px  0px alpha(shade(@button_border, 0.94), 0.80),
                 inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
}

/* Rightmost button active */
.linked.horizontal > combobox:last-child > .linked.horizontal > button.combo:hover:last-child,
.linked.horizontal > combobox:last-child > .linked.horizontal > button.combo:focus:hover:last-child,
.linked.horizontal > combobox:last-child > .linked.horizontal > button.combo:hover:active:last-child,
.linked.horizontal > combobox:last-child > .linked.horizontal > button.combo:checked:last-child,
.linked.horizontal > combobox:last-child > .linked.horizontal > button.combo:checked:hover:last-child,
.linked.horizontal > combobox:last-child > .linked.horizontal > button.combo:checked:hover:active:last-child {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
}

/* Rightmost button disabled */
.linked.horizontal > combobox:last-child > .linked.horizontal > button.combo:last-child {
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
}

/* vertical */
/* Middle button */
.vertical.linked > combobox > .linked.horizontal > button.combo,
.vertical.linked > combobox > .linked.horizontal > button.combo:focus {
    box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.90),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.90),
                inset -1px  0px alpha(shade(@button_border, 0.88), 0.90),
                inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
    border-radius: 0px;
    border-width: 0px 1px 1px 1px;
}

.vertical.linked > combobox > .linked.horizontal > button.combo:hover,
.vertical.linked > combobox > .linked.horizontal > button.combo:focus:hover,
.vertical.linked > combobox > .linked.horizontal > button.combo:checked {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
}

.vertical.linked > combobox > .linked.horizontal > button.combo:disabled {
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
}

/* Top button */
.vertical.linked > combobox:first-child > .linked.horizontal > button.combo:first-child,
.vertical.linked > combobox:first-child > .linked.horizontal > button.combo:focus:first-child {
    box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.90),
                inset  -1px 0px alpha(shade(@button_border, 0.88), 0.90);
    border-radius: 5px 5px 0 0;
    border-width: 1px 1px 1px 1px;
}

.vertical.linked > combobox:first-child > .linked.horizontal > button.combo:hover:first-child,
.vertical.linked > combobox:first-child > .linked.horizontal > button.combo:focus:hover:first-child,
.vertical.linked > combobox:first-child > .linked.horizontal > button.combo:checked:first-child {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset  -1px 0px shade(@selected_bg_color, 1.3);
}

.vertical.linked > combobox:first-child > .linked.horizontal > button.combo:disabled:first-child {
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color;
}

/* Bottom button */
.vertical.linked > combobox:last-child > .linked.horizontal > button.combo:last-child,
.vertical.linked > combobox:last-child > .linked.horizontal > button.combo:focus:last-child {
     box-shadow: inset  1px  0px alpha(shade(@button_border, 0.94), 0.90),
                 inset -1px  0px alpha(shade(@button_border, 0.94), 0.90),
                 inset  0px -1px alpha(shade(@button_border, 0.88), 0.70);
    border-radius: 0 0 5px 5px;
    border-width: 0px 1px 1px 1px;
}

.vertical.linked > combobox:last-child > .linked.horizontal > button.combo:hover:last-child,
.vertical.linked > combobox:last-child > .linked.horizontal > button.combo:focus:hover:last-child,
.vertical.linked > combobox:last-child > .linked.horizontal > button.combo:checked:last-child {
    box-shadow: inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
}

.vertical.linked > combobox:last-child > .linked.horizontal > button.combo:disabled:last-child {
    box-shadow: inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
}

/* Single button */
.vertical.linked > combobox:last-child > .linked.horizontal > button.combo:only-child,
.vertical.linked > combobox:last-child > .linked.horizontal > button.combo:focus:only-child {
    box-shadow: inset  0px  1px alpha(shade(@button_border, 0.94), 0.90),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.90),
                inset -1px  0px alpha(shade(@button_border, 0.94), 0.90),
                inset  0px -1px alpha(shade(@button_border, 0.94), 0.90);
    border-radius: 5px;
    border-width: 1px;
}

.vertical.linked > combobox:last-child > .linked.horizontal > button.combo:hover:only-child,
.vertical.linked > combobox:last-child > .linked.horizontal > button.combo:focus:hover:only-child,
.vertical.linked > combobox:last-child > .linked.horizontal > button.combo:checked:only-child {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
}

.vertical.linked > combobox:last-child > .linked.horizontal > button.combo:disabled:only-child {
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
    border-radius: 5px;
    border-width: 1px;
}

combobox button.combo:checked,
combobox button.combo:hover {
    color: @internal_element_prelight;
}

toolbar combobox button.combo:checked,
toolbar combobox button.combo:hover,
toolbar.primary-toolbar combobox button.combo:checked,
toolbar.primary-toolbar combobox button.combo:hover {
    color: shade (@theme_selected_bg_color, 1.6);
   -gtk-icon-shadow:  0px  1px shade (@menu_fg_dark_color, 1.0),
                      1px  0px shade (@menu_fg_dark_color, 1.0),
                     -1px  0px shade (@menu_fg_dark_color, 1.0),
                      0px -1px shade (@menu_fg_dark_color, 1.0);
}

combobox button.combo arrow {
    -gtk-icon-source: -gtk-icontheme("pan-down-symbolic");
    color: @theme_fg_color;
    min-height: 16px;
    min-width: 16px;
    padding: 0px 2px;
}

toolbar combobox button.combo arrow {
    color: @menu_fg_dark_color;
}

toolbar combobox button.combo:hover arrow {
    color: shade (@theme_selected_bg_color, 1.6);
}

/************
 * Toolbars *
 ************/

toolbar  {
    padding: 2px 4px;
    background-color: @toolbar_gradient_base;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (@toolbar_gradient_base),
                                     to   (@toolbar_gradient_base));
    border-width: 0 0 1px 0;
    border-radius: 0px;
    border-style: solid;
    border-bottom-color: shade(@toolbar_gradient_base, 0.90);
    color: @toolbar_fg_color;
}

toolbar.vertical {
    border-radius: 4px 0 0 4px;
    padding: 2px;
}

toolbar button.flat.image-button label {
    color: @menu_fg_dark_color;
}

toolbar button.flat.image-button:hover label {
    color: shade (@theme_selected_bg_color, 1.6);
}

toolbar toolitem combobox button.combo,
toolbar toolbutton button.flat.toggle.popup:focus,
toolbar toolbutton button.flat.toggle.popup:disabled,
toolbar toolbutton button.flat.image-button:disabled {
    box-shadow: none;
    background-image: none;
}

toolbar toolbutton button.flat.toggle.popup:focus {

}

toolbar toolitem combobox button.combo:focus,
toolbar toolbutton button.flat.text-button:focus:hover,
toolbar toolbutton button.flat.toggle.popup:focus:hover,
toolbar toolitem combobox button.combo:hover {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
}

/* lightdm-settings */
toolbar.horizontal.cs-header > toolitem > label {
    color: @theme_fg_color;
}

/********************
 * Menubar Toolbars *
 ********************/

toolbar menubar {
    padding: 2px 4px 5px 3px;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade (@theme_bg_dark_color, 1.00)),
                                     to (shade (@theme_bg_dark_color, 0.95)));
    border-image: none;
    border-width: 0px 0px 1px 0px;
    border-radius: 0px;
    border-style: solid;    
    border-color: shade (@theme_bg_dark_color, 0.72);
    color: @theme_fg_dark_color;
    box-shadow: none;
    -GtkToolbar-button-relief: normal;
}

/********************
 * Primary Toolbars *
 ********************/

/* applications using EggEditableToolbar usually set the primary-toolbar
 * hint on the containing vbox, so we need to handle both these cases here.
 */

toolbar.primary-toolbar {
   background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@theme_bg_dark_color, 1.00)),
                                     to   (shade(@theme_bg_dark_color, 0.95)));
    border-image: none;
    border-width: 0px 0px 1px 0px;
    border-radius: 0px;
    border-style: solid;    
    border-color: @primay-toolbar-border;
    padding: 3px;
    box-shadow: none;
    -GtkWidget-window-dragging: true;
    -GtkToolbar-button-relief: normal;
    color: @theme_fg_dark_color;
}

toolbar.primary-toolbar:disabled {
    background-image: none;
    background-color: shade (@theme_bg_dark_color, 0.97);
    border-image: none;
    border-style: solid;
    border-color: transparent;
}

/* primary toolbar buttons */
toolbar button,
toolbar.primary-toolbar button,
toolbar.primary-toolbar .linked button,
toolbar.primary-toolbar button:focus {
    border-image: none;
    border-style: solid;
    border-color: transparent;
    box-shadow: none;
    background-image: none;
    background-color: alpha (@theme_base_color, 0.0);
}

toolbar button {
    color: shade(@toolbar_fg_color, 1.00);
    text-shadow: none;
}

toolbar.primary-toolbar > button.toggle #gtk-toolbar-arrow:disabled,
toolbar.primary-toolbar > toolbutton button.toggle.popup > image:disabled {
    color: mix (@menu_fg_dark_color, @menu_bg_dark_color, 0.4);
}

toolbar.primary-toolbar > button.toggle:hover #gtk-toolbar-arrow,
toolbar.primary-toolbar > toolbutton  button.toggle.popup:hover > image {
   -gtk-icon-shadow:  0px  1px shade (@menu_fg_dark_color, 1.0),
                      1px  0px shade (@menu_fg_dark_color, 1.0),
                     -1px  0px shade (@menu_fg_dark_color, 1.0),
                      0px -1px shade (@menu_fg_dark_color, 1.0);
}

toolbar.primary-toolbar button {
    color: @theme_fg_dark_color;
    text-shadow: none;
}

toolbar button:disabled,
toolbar.primary-toolbar button:disabled {
    background-image: none;
    background-color: alpha (@theme_base_color, 0.0);
    border-color: transparent;
}

toolbar button:disabled {
    color: mix(@toolbar_gradient_base, @toolbar_fg_color, 0.60);
    text-shadow: none;
}

toolbar.primary-toolbar button:disabled {
    color: mix(@theme_bg_dark_color, @theme_fg_dark_color, 0.60);
    text-shadow: none;
}

toolbar button:focus,
toolbar button:hover,
toolbar button:hover:active,
toolbar button:focus:hover:active,
toolbar button:checked,
toolbar button:checked:focus,
toolbar button:checked:hover,
toolbar button:checked:hover:active {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    border-width: 1px;
    border-radius: 5px;
    border-color: transparent;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

toolbar.primary-toolbar button:focus,
toolbar.primary-toolbar button:hover,
toolbar.primary-toolbar button:hover:active,
toolbar.primary-toolbar button:checked,
toolbar.primary-toolbar button:checked:focus,
toolbar.primary-toolbar button:checked:hover,
toolbar.primary-toolbar button:checked:hover:active {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    border-image: none;
    border-color: transparent;
    border-style: solid;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

toolbar button:hover,
toolbar button:checked,
toolbar button:hover label,
toolbar button:checked label {
    color: shade (@theme_selected_bg_color, 1.6);
    text-shadow: none;
    transition: all 400ms ease-out;
}

/* arrangement epiphany (toolbar.menubar) */
toolbar.primary-toolbar button:hover,
toolbar.primary-toolbar button:hover:active,
toolbar.primary-toolbar button:checked,
toolbar.primary-toolbar button:checked:hover {
    color: shade (@theme_selected_bg_color, 1.6);
    text-shadow: none;
}

toolbar button:checked:disabled,
toolbar.primary-toolbar button:checked:disabled {
    background-image: none;
    background-color: alpha (@theme_base_color, 0.0);
    border-color: transparent;
    -gtk-icon-shadow: none;
    text-shadow: none;
}

/* ie. atril */
.primary-toolbar toolbar toolitem combobox .linked button.combo {
    padding: 8px 4px;
}

toolbar label {
    color: shade(@toolbar_fg_color, 1.00);
    text-shadow: none;
}

toolbar toolitem label,
toolbar menubar label,
toolbar.primary-toolbar label {
    color: @theme_fg_dark_color;
    text-shadow: none;
}

toolbar toolitem separator,
toolbar separator,
toolbar separator:disabled {
    border-color:        alpha (#000, 0.24);
    border-bottom-color: alpha (#fff, 0.08);
    border-right-color:  alpha (#fff, 0.08); 
}

/************************************
    primary toolbar raised buttons
*************************************/

/* ie. cimnnamon-settings (button.raised), mate-font-viewer toolbar info button */
toolbar .raised button,
toolbar button.raised,
toolbar button.raised:hover,
toolbar button.raised:focus {
    padding: 6px;
}

toolbar menubar button {
    padding: 2px 2px;
}

toolbar menubar .linked button {
    padding: 3px 4px;
}

toolbar menubar button {
    padding: 2px 4px;
}

toolbar menubar button,
toolbar .raised button,
toolbar button.raised {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (@button_raised_gradient_color_a),
                                     to   (@button_raised_gradient_color_b));
    border-style: solid;
    /* outer */
    border-color: transparent;
    /* border and inset */
/*    -GtkWidget-focus-line-width: 0; */
    color: shade(@theme_fg_dark_color, 1.00);
}

toolbar button.raised.linked:disabled,
toolbar .raised.linked button:disabled,
toolbar button.raised.linked:disabled:active,
toolbar .raised.linked button:disabled:active,
toolbar button.raised.linked:disabled:checked,
toolbar .raised.linked button:disabled:checked,
toolbar menubar button:disabled,
toolbar menubar button:disabled:active,
toolbar menubar button:disabled:checked,
toolbar .raised button:disabled,
toolbar button.raised:disabled,
toolbar .raised button:disabled:active,
toolbar button.raised:disabled:active,
toolbar .raised button:disabled:checked,
toolbar button.raised:disabled:checked {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_raised_gradient_color_a, 0.88)),
                                     to   (shade(@button_raised_gradient_color_b, 1.00)));
    border-color: transparent;
    box-shadow: none;
    color: mix(@theme_bg_dark_color, @theme_fg_dark_color, 0.50);
}

toolbar menubar button:hover,
toolbar .raised button:hover,
toolbar button.raised:hover {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    border-image: none;
    /* outer */
    border-color: transparent;
    /* border and inset */
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
    color: shade(@theme_fg_dark_color, 1.00);
}

toolbar .raised button:hover:active,
toolbar button.raised:hover:active,
toolbar menubar button:checked,
toolbar .raised button:checked,
toolbar .raised button:checked:hover,
toolbar button.raised:checked:hover,
toolbar button.raised:checked {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    border-style: solid; 
    border-radius: 5px;
    border-image: none;
    border-color: transparent;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

/* setup shadows */
toolbar .raised button label,
toolbar button.raised label {
    color: @theme_fg_dark_color;
    text-shadow: none;
}

toolbar .raised button,
toolbar button.raised {
    -gtk-icon-shadow:  1px  1px @theme_shadow_dark_color;
}

toolbar menubar button:hover,
toolbar .raised button:hover,
toolbar button.raised:hover,
toolbar .raised button:hover:active,
toolbar button.raised:hover:active,
toolbar menubar button:checked,
toolbar .raised button:checked,
toolbar button.raised:checked,
toolbar .raised button:checked:hover,
toolbar button.raised:checked:hover {
    color: @theme_text_dark_color;
    text-shadow: none;
}

toolbar menubar button:disabled,
toolbar .raised button:disabled,
toolbar button.raised:disabled {
    -gtk-icon-shadow: none;
    text-shadow: none;
    color: mix(@theme_bg_dark_color, @theme_fg_dark_color, 0.50);
}

toolbar .entry {
    padding: 4px 4px 4px 6px;
    color:  shade(@toolbar_fg_color, 1.0);
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@toolbar_gradient_base, 0.95)),
                                     color-stop (0.15, shade(@toolbar_gradient_base, 1.10)),
                                     to   (shade(@toolbar_gradient_base, 1.15)));
}

toolbar entry,
toolbar menubar entry,
toolbar .raised entry,
toolbar .raised.entry,
toolbar.primary-toolbar entry {
    padding: 4px 4px 4px 6px;
    color:  @entry_text_dark_color;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@entry_bg_dark_color, 0.80)),
                                     color-stop (0.15, shade(@entry_bg_dark_color, 0.95)),
                                     to   (shade(@entry_bg_dark_color, 1.00)));
    /* outer */
    border-width: 2px;
    border-style: solid;
    border-radius: 5px;
    border-top-color: transparent;
    border-right-color:  alpha(#fff, 0.02);
    border-left-color:   alpha(#fff, 0.02);
    border-bottom-color: alpha(#fff, 0.07);
    /* border */
    box-shadow: inset  0px  3px alpha(#000, 0.05),
                inset  0px  2px alpha(#000, 0.07),
                inset  2px  0px alpha(#000, 0.04),
                inset -2px  0px alpha(#000, 0.04),
                inset  0px -2px alpha(#000, 0.03),
                inset  0px  1px shade(@theme_entry_border_dark, 0.90),
                inset  1px  0px shade(@theme_entry_border_dark, 0.99),
                inset -1px  0px shade(@theme_entry_border_dark, 0.99),
                inset  0px -1px shade(@theme_entry_border_dark, 1.10);
}

toolbar entry:focus,
toolbar menubar entry:focus,
toolbar .raised entry:focus,
toolbar .raised.entry:focus,
toolbar.primary-toolbar entry:focus {
    /* outer */
    border-top-color:    @focused_dark_entry_outer;
    border-right-color:  alpha(@focused_dark_entry_outer, 0.90);
    border-left-color:   alpha(@focused_dark_entry_outer, 0.90);
    border-bottom-color: alpha(@focused_dark_entry_outer, 0.85);
    /* border */
    box-shadow: inset  0px  3px alpha(#000, 0.03),
                inset  0px  2px alpha(#000, 0.05),
                inset  2px  0px alpha(#000, 0.04),
                inset -2px  0px alpha(#000, 0.04),
                inset  0px -2px alpha(#000, 0.03),
                inset  0px  1px shade(@focused_dark_entry_border, 0.90),
                inset  1px  0px shade(@focused_dark_entry_border, 0.95),
                inset -1px  0px shade(@focused_dark_entry_border, 0.95),
                inset  0px -1px shade(@focused_dark_entry_border, 1.00);
}

toolbar entry:selected,
toolbar menubar entry:selected,
toolbar .raised entry:selected,
toolbar .raised.entry:selected,
toolbar.primary-toolbar entry:selected {
    background-color: @theme_selected_bg_color;
    color: @theme_selected_fg_color;
}

/* progressbars on primary toolbar entries are special */
toolbar.primary-toolbar entry.progressbar {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade (@button_bg_active, 1.35)),
                                     color-stop (0.7, shade (@button_bg_active, 1.15)),
                                     to (shade (@button_bg_active, 1.35)));
    border-width: 1px;
    border-radius: 4px;
    border-style: solid;
    border-color: shade(@button_bg_active, 1.00);
    border-image: none;    
    color: @theme_text_color;
}

/****************************
 * Inline toolbars          *
 ****************************
 * Buttons + dialog open    *
 ****************************/

toolbar.inline-toolbar {
    -GtkToolbar-button-relief: normal;
    padding: 0px;
    background-color: alpha(@button_base, 0.0);
    border-style: none;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_base, 1.00)),
                                     color-stop (0.50, shade(@button_base, 0.96)),
                                     color-stop (0.50, shade(@button_base, 0.95)),
                                     to (shade(@button_base, 0.94))); 
    border-width: 0px 1px 1px 1px;
    border-style: solid;
    border-radius: 0px;
    border-top-color:    shade(@button_border, 1.00);
    border-right-color:  shade(@button_border, 1.00);
    border-left-color:   shade(@button_border, 1.00);
    border-bottom-color: shade(@button_border, 1.00);
    box-shadow: inset  0px  1px alpha(#fff, 0.09),
                inset  1px  0px alpha(#fff, 0.07),
                inset -1px  0px alpha(#fff, 0.07),
                inset  0px -1px alpha(#fff, 0.05);
}

toolbar.inline-toolbar button {
    padding: 2px 6px;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_base, 1.00)),
                                     color-stop (0.50, shade(@button_base, 0.96)),
                                     color-stop (0.50, shade(@button_base, 0.95)),
                                     to (shade(@button_base, 0.94)));
    border-width: 0px;
    border-radius: 0px;
    border-style: none;
    box-shadow:  none;
    color:       @theme_fg_color;
    text-shadow: none;
    -gtk-icon-shadow: 1px 1px @theme_shadow_color;
}

toolbar.inline-toolbar button:hover:active,
toolbar.inline-toolbar button:checked,
toolbar.inline-toolbar button:checked:hover,
toolbar.inline-toolbar button:checked:hover:active {
    border-radius: 0px;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_base, 0.50)),
                                     to   (shade(@button_base, 0.70)));
    box-shadow: inset  0px  1px alpha(#000, 0.05),
                inset  1px  0px alpha(#000, 0.03),
                inset -1px  0px alpha(#000, 0.03),
                inset  0px -1px alpha(#000, 0.02),
                inset  1px  0px shade(@button_border, 0.75),
                inset -1px  0px shade(@button_border, 0.75),
                inset  0px -1px shade(@button_border, 0.78);
}

toolbar.inline-toolbar button:hover {
    padding: 2px 6px;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_base, 1.03)),
                                     color-stop (0.50, shade(@button_base, 0.99)),
                                     color-stop (0.50, shade(@button_base, 0.98)),
                                     to (shade(@button_base, 0.97)));
    color: @theme_text_color;
}

toolbar.inline-toolbar button:disabled {
    box-shadow: none;
    background-color: mix(@button_base, @theme_fg_color, 0.10);
    background-image: none;
}

toolbar.inline-toolbar button:disabled {
    color: @insensitive_fg_color;
    text-shadow: none;
    -gtk-icon-shadow: none;
}

toolbar.inline-toolbar button:hover {
    color: @theme_text_color;
    text-shadow: none;
    -gtk-icon-shadow: 1px 1px @theme_shadow_color;
}

toolbar.inline-toolbar button:checked {
    color: @theme_selected_fg_color;
    text-shadow: none;
    -gtk-icon-shadow: 1px 1px @theme_selected_shadow_color;
}

/* eg. pluma preferences */
notebook toolbar.horizontal.inline-toolbar {
    border-width: 0 1px 1px 1px;
}

notebook toolbar.inline-toolbar toolitem button.text-button label {
    color:       @theme_fg_color;
    text-shadow: none;
}

notebook toolbar.inline-toolbar toolitem button.text-button:disabled label {
    color: @insensitive_fg_color;
    text-shadow: none;
}

notebook toolbar.inline-toolbar toolitem button.text-button {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (@button_gradient1),
                                     color-stop (0.50, @button_gradient3),
                                     to   (@button_gradient4));
    border-width: 1px;
    border-radius: 4px;
    border-style: solid;
    border-top-color:    transparent;
    border-left-color:   alpha (#000, 0.01);
    border-right-color:  alpha (#000, 0.01);
    border-bottom-color: alpha (#000, 0.03);
    box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset -1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
    color:             @theme_fg_color;
    text-shadow: none;
}

notebook toolbar.inline-toolbar toolitem button.text-button:hover {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_gradient1, 1.03)),
                                     color-stop (0.50, shade(@button_gradient3, 1.03)),
                                     to   (shade(@button_gradient4, 1.01)));
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
}

notebook toolbar.inline-toolbar toolitem button.text-button:disabled {
    border-width: 1px;
    border-radius: 4px;
    border-style: solid;
    background-image: none;
    background-color: @insensitive_bg_color;
    border-color: alpha (#000, 0.00);
    border-bottom-color: alpha (#000, 0.00);
    border-image: none;
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
    color: @insensitive_fg_color;
    text-shadow: none;
}

notebook toolbar.inline-toolbar toolitem button.text-button,
notebook toolbar.inline-toolbar toolitem button.text-button:focus,
notebook toolbar.inline-toolbar toolitem button.text-button:hover {
    padding: 2px 6px;
}

notebook toolbar.inline-toolbar toolitem button.text-button:focus {
    box-shadow: inset  0px  1px shade(@selected_bg_color, 1.3),
                inset  1px  0px shade(@selected_bg_color, 1.3),
                inset -1px  0px shade(@selected_bg_color, 1.3),
                inset  0px -1px shade(@selected_bg_color, 1.3);
}

notebook toolbar.inline-toolbar toolitem button.text-button:focus:hover:active {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade (@theme_bg_color, 1.20)),
                                     color-stop (0.50, shade (@theme_bg_color, 1.00)),
                                     color-stop (0.50, shade (@theme_bg_color, 0.99)),
                                     to (shade (@theme_bg_color, 0.80)));
    border-radius: 4px;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

/******************
 * Stack switcher *
 ******************/

stackswitcher > button > label,
headerbar stackswitcher > button.titlebutton > label,
headerbar.titlebar stackswitcher > button.titlebutton > label,
calendar.header stackswitcher > button.titlebutton > label {
    padding-left: 6px;
    padding-right: 6px;
}

stackswitcher > button > image,
headerbar stackswitcher > button.titlebutton > image,
headerbar.titlebar stackswitcher > button.titlebutton > image,
calendar.header stackswitcher > button.titlebutton > image {
    padding-left: 6px;
    padding-right: 6px;
    padding-top: 3px;
    padding-bottom: 3px;
}

toolbar .raised stackswitcher.linked.stack-switcher > button.text-button.radio,
stackswitcher.linked.stack-switcher > button.text-button.radio,
stackswitcher.linked.stack-switcher > button.image-button.radio:hover:active,
stackswitcher.linked.stack-switcher > button.image-button.radio:checked:hover,
stackswitcher > button.text-button.radio,
stackswitcher > .linked.stackswitcher > button.text-button.radio,
stackswitcher > button.image-button.radio,
headerbar stackswitcher > button.titlebutton,
headerbar.titlebar stackswitcher > button.titlebutton,
calendar.header stackswitcher > button.titlebutton {
    padding: 4px 2px;
}

stackswitcher > button.needs-attention > label,
stackswitcher > button.needs-attention > image {
    animation: needs_attention 150ms ease-in;
    background-color: @theme_bg_color; /* FIXME: ? */
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
    background-position: right 3px, right 4px;
}

stackswitcher > button.needs-attention > label:backdrop,
stackswitcher > button.needs-attention > image:backdrop {
    background-size: 6px 6px, 0 0;
}

stackswitcher > button.needs-attention > label:dir(rtl),
stackswitcher > button.needs-attention > image:dir(rtl) {
    background-position: left 3px, left 4px;
}

stackswitcher > button.needs-attention:checked > label,
stackswitcher > button.needs-attention:checked > image {
    animation: none;
    background-image: none;
}

/****************
 * GtkActionBar *
 ****************/

actionbar revealer .horizontal.linked.stack-switcher button.image-button.radio {
    padding: 4px 2px;
}

actionbar revealer .horizontal.linked.stack-switcher button.image-button.radio:first-child  {
    border-width: 1px 0px 1px 1px;
}

actionbar revealer .horizontal.linked.stack-switcher button.image-button.radio:last-child  {
    border-width: 1px 1px 1px 0px;
}

actionbar revealer .horizontal button.image-button.popup.toggle {
    padding: 6px;
}

/*****************
 * GtkSpinButton *
 *****************/

spinbutton,
spinbutton:focus,
spinbutton.vertical,
spinbutton.vertical:focus {
    color:  @theme_text_color;
    border-color: @button_border;
    border-width: 1px;
    border-style: solid;
    border-radius: 3px;
    padding: 0px;
}

spinbutton.horizontal > entry {
    padding: 5px 10px 5px 3px;
    box-shadow: none;
    border-radius: 3px 0px 0px 3px;
    border-style: none;
}

spinbutton > button:disabled,
spinbutton > button:disabled:last-child,
spinbutton.vertical > button:disabled,
spinbutton.vertical > button:disabled:last-child {
    color: @internal_element_insensitive;
    border-color: @insensitive_border_color;
}

spinbutton > button,
spinbutton > button:hover,
spinbutton > button:focus,
spinbutton > button:active {
    -gtk-icon-shadow: 0 1px @button_text_shadow;
    color: @internal_element_prelight;
}

spinbutton > button:hover {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_gradient1, 1.03)),
                                     color-stop (0.50, shade(@button_gradient3, 1.03)),
                                     to   (shade(@button_gradient4, 1.01)));
}

spinbutton > button:active {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade (@theme_bg_color, 1.20)),
                                     color-stop (0.50, shade (@theme_bg_color, 1.00)),
                                     color-stop (0.50, shade (@theme_bg_color, 0.99)),
                                     to (shade (@theme_bg_color, 0.80)));
}

spinbutton > button,
spinbutton > button:focus,
spinbutton > button:hover,
spinbutton > button:active,
spinbutton > button:disabled {
    min-height: 10px;
    min-width: 10px;
    border-radius: 0px;
    padding: 5px;
    box-shadow: none;
    border-style: solid;
    border-color: @button_border;
    border-width: 0px 1px 0px 1px;
}

spinbutton > button:last-child,
spinbutton > button:hover:last-child,
spinbutton > button:active:last-child,
spinbutton > button:disabled:last-child {
    border-radius: 0 3px 3px 0;
    border-width: 0px;
}

spinbutton.horizontal > button:hover,
spinbutton.horizontal > button:active {
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

spinbutton > button:hover:last-child,
spinbutton > button:active:last-child {
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

spinbutton.vertical > entry {
    border-style: none;
    border-radius: 0;
    padding: 5px 1px;
    box-shadow: none;
}

spinbutton.vertical > button,
spinbutton.vertical > button:focus {
    border-style: solid;
    border-width: 0px 0px 1px 0px;
    border-radius: 3px 3px 0px 0px;
    padding: 6px 0px;
}

spinbutton.vertical > button:last-child {
    border-width: 1px 0px 0px 0px;
    border-radius: 0px 0px 3px 3px;
}

spinbutton.vertical > button:hover,
spinbutton.vertical > button:active {
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3);
}

spinbutton.vertical > button:hover:last-child,
spinbutton.vertical > button:active:last-child {
    box-shadow: inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

spinbutton.horizontal > entry:focus,
spinbutton.vertical > entry:focus {
    border-color: alpha(@borders, 0.1);
    box-shadow: inset  0px  1px 0 0 shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px 0 0 shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px 0 0 shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px 0 0 shade (@theme_selected_bg_color, 1.3);
}

/* volume button */
button.scale.flat {
    transition: all 400ms ease-out;
}

button.scale.flat,
button.scale.flat:hover,
button.scale.flat:disabled {
    padding: 5px 4px;
    border-radius: 5px;
    border-color: transparent;
    background-color: transparent;
}

flowbox flowboxchild {
    padding: 3px;
    border-radius: 3px;
}

flowbox flowboxchild:selected {
    outline-offset: -2px;
}

/* hyperlinks */
/* ie. yelp */
*:link,
*:visited {
  color: @link_color;
}

button.flat.link.text-button {
     padding: 4px;
     border-color: transparent;
}

/*****************
 * Notebooks and *
 * tabs          *
 *****************/

notebook {
    padding: 0;
    background-clip: border-box;
    border-style: none;
}

notebook.frame {
    background-color: shade (@theme_bg_color, 1.1);
    border-style: solid;
    border-color: @notebook_border;
    border-width: 1px;
    border-radius: 4px 4px 0px 0px;
}

/* pavu-control */
window.background > box.vertical > notebook:not(.frame),
window.background.csd > box.vertical > notebook:not(.frame),
window.background.ssd > box.vertical > notebook:not(.frame),
window.background.solid-csd > box.vertical > notebook:not(.frame) {
    background-color: shade (@theme_bg_color, 1.1);
    border-radius: 4px 4px 0px 0px;
}

window.background > box.vertical > notebook:not(.frame) > stack > box,
window.background.csd > box.vertical > notebook:not(.frame) > stack > box,
window.background.ssd > box.vertical > notebook:not(.frame) > stack > box,
window.background.solid-csd > box.vertical > notebook:not(.frame) > stack > box {
    border-style: solid;
    border-width: 0px 1px 1px 1px;
    border-color: @notebook_border;
}

window.background > box.vertical > notebook:not(.frame) > header.top,
window.background.csd > box.vertical > notebook:not(.frame) > header.top,
window.background.ssd > box.vertical > notebook:not(.frame) > header.top,
window.background.solid-csd > box.vertical > notebook:not(.frame) > header.top {
    border-style: solid;
    border-width: 1px 1px 0px 1px;
    border-color: @notebook_border;
}

printdialog > box.view.vertical.dialog-vbox > box.vertical > notebook {
    background-color: shade (@theme_bg_color, 1.1);
    border-radius: 0px 0px 4px 4px;
    border-style: solid;
    border-color: @notebook_border;
    border-width: 0px 0px 1px 0px;
}

dialog.background.csd > box.vertical.dialog-vbox > notebook, /* meld preferences */
dialog.background.ssd > box.vertical.dialog-vbox > notebook,
dialog.background.solid-csd > box.vertical.dialog-vbox > notebook {
    background-color: shade (@theme_bg_color, 1.1);
}

notebook header.top {
    border-radius: 4px 4px 0px 0px;
    border-width: 0px 0px 1px 0px;
    background-image: linear-gradient(to bottom,
                                      shade(@theme_bg_color, 0.86),
                                      shade(@theme_bg_color, 1.05));
    box-shadow: inset  0px -1px alpha(shade(@button_border, 1.00), 0.90);
}

dialog.background.csd > box.vertical.dialog-vbox > notebook > header.top,
dialog.background.ssd > box.vertical.dialog-vbox > notebook > header.top,
dialog.background.solid-csd > box.vertical.dialog-vbox > notebook > header.top,
printdialog notebook header.top {
    border-radius: 0px;
}

notebook header.bottom {
    border-radius: 0px;
    border-width: 1px 0px 0px 0px;
    background-image: linear-gradient(to top,
                                      shade(@theme_bg_color, 0.86),
                                      shade(@theme_bg_color, 1.05));
    box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.90);
}

notebook header.left {
    border-radius: 4px 0px 0px 0px;
    border-width: 1px 1px 0px 0px;
    background-image: linear-gradient(to right,
                                      shade(@theme_bg_color, 0.86),
                                      shade(@theme_bg_color, 1.05));
    box-shadow: inset -1px  0px alpha(shade(@button_border, 1.00), 0.90);
}

notebook header.right {
    border-radius: 0px 4px 0px 0px;
    border-width: 0px 0px 0px 1px;
    background-image: linear-gradient(to left,
                                      shade(@theme_bg_color, 0.86),
                                      shade(@theme_bg_color, 1.05));
    box-shadow: inset  1px  0px alpha(shade(@button_border, 1.00), 0.90);
}

notebook header tab {
    border-color: transparent;
    border-width: 0px;
    background-image: none;
    background-color: transparent;
}

notebook header tab label {
    color: mix (@theme_fg_color, @theme_bg_color, 0.40);
    font-weight: normal;
}

notebook header .prelight-page,
notebook header .prelight-page label {
    color: mix (@theme_fg_color, @theme_bg_color, 0.15);
}

notebook header .active-page,
notebook header tab .active-page label {
    color: @theme_fg_color;
}

/* tabs and header in view areas, ie. pluma-, caja-tabs */
paned.horizontal > box.vertical notebook > header.top,
paned.horizontal > paned.vertical notebook > header.top {
    border-style: solid;
    border-color: @notebook_border;
    border-width: 1px 1px 0px 1px;
    border-radius: 4px 4px 0px 0px;
    box-shadow: none;
}

paned.horizontal > box.vertical notebook scrolledwindow.frame,
paned.horizontal > paned.vertical notebook scrolledwindow.frame {
    border-width: 1px 1px 1px 1px;
    border-style: solid;
    border-color: @notebook_border;
}

paned.horizontal notebook > header tab,
paned.horizontal > box.vertical notebook > header tab,
paned.horizontal > paned.vertical notebook > header tab {
    padding: 2px 4px;
    margin: 0px -1px 0px -1px;
    border-width: 0px 1px 0 1px;
    border-style: solid;
    border-color: transparent;
}

paned.horizontal notebook > header.top tab:checked,
paned.horizontal notebook > header.top tab:checked:hover,
paned.horizontal > box.vertical notebook > header.top tab:checked,
paned.horizontal > box.vertical notebook > header.top tab:checked:hover,
paned.horizontal > paned.vertical notebook > header.top tab:checked,
paned.horizontal > paned.vertical notebook > header.top tab:checked:hover {
    background-image: linear-gradient(to bottom,
                                      shade(@theme_bg_color, 1.18),
                                      shade(@theme_bg_color, 1.1));
    border-radius: 4px 4px 0 0;
    border-width: 0px 1px 0 1px;
    border-style: solid;
    border-color: @notebook_border;
    box-shadow: none;
}

paned.horizontal notebook > header.top tab:hover,
paned.horizontal > box.vertical notebook > header.top tab:hover,
paned.horizontal > paned.vertical notebook > header.top tab:hover {
    background-image: linear-gradient(to bottom,
                                      alpha(@theme_base_color, 0.0),
                                      alpha(@theme_base_color, 0.3));
    border-radius: 4px 4px 0 0;
    border-width: 0px 1px 0 1px;
    border-style: solid;
    border-color: @notebook_border;
    box-shadow: none;
}

paned.horizontal > box.vertical notebook > header button.flat,
paned.horizontal > paned.vertical notebook > header button.flat {
    padding: 1px;
}

/* closable-page */
paned.horizontal > notebook {
    border-width: 1px 1px 1px 1px;
    border-style: solid;
    border-color: @notebook_border;
    border-radius: 4px 4px 0px 0px;
}

paned.horizontal > notebook > header {
    border-width: 0px 0px 0px 0px;
    border-style: solid;
    border-color: @notebook_border;
    border-radius: 4px 4px 0px 0px;
}

paned.horizontal > notebook > header label {
    padding: 4px;
}

paned.horizontal > notebook > header button.flat.small-button {
    padding: 1px;
}

paned.horizontal > notebook > stack > box {
    background-color: shade (@theme_bg_color, 1.1);
}

/* tabs in dialog windows */
/* horizontal tabs */
window.background > box.vertical > notebook > header.top tab, /* pavu-control */
window.background.csd > box.vertical > notebook > header.top tab,
window.background.ssd > box.vertical > notebook > header.top tab,
window.background.solid-csd > box.vertical > notebook > header.top tab,
dialog.background.csd > box.vertical.dialog-vbox > notebook > header.top tab, /* meld preferences */
dialog.background.ssd > box.vertical.dialog-vbox > notebook > header.top tab,
dialog.background.solid-csd > box.vertical.dialog-vbox > notebook > header.top tab,
printdialog notebook > header tab,
notebook.frame > header.top tab,
notebook.frame > header.bottom tab {
    padding: 5px 20px 6px;
    margin: 0px 0px 0px -1px;
    border-width: 0px 1px 0px 1px;
    border-style: solid;
    border-color: transparent;
}

window.background > box.vertical > notebook > header.top tab:checked, /* pavu-control */
window.background.csd > box.vertical > notebook > header.top tab:checked,
window.background.ssd > box.vertical > notebook > header.top tab:checked,
window.background.solid-csd > box.vertical > notebook > header.top tab:checked,
window.background > box.vertical > notebook > header.top tab:checked:hover,
window.background.csd > box.vertical > notebook > header.top tab:checked:hover,
window.background.ssd > box.vertical > notebook > header.top tab:checked:hover,
window.background.solid-csd > box.vertical > notebook > header.top tab:checked:hover,
dialog.background.csd > box.vertical.dialog-vbox > notebook > header.top tab:checked,
dialog.background.ssd > box.vertical.dialog-vbox > notebook > header.top tab:checked,
dialog.background.solid-csd > box.vertical.dialog-vbox > notebook > header.top tab:checked,
dialog.background.csd > box.vertical.dialog-vbox > notebook > header.top tab:checked:hover,
dialog.background.ssd > box.vertical.dialog-vbox > notebook > header.top tab:checked:hover,
dialog.background.solid-csd > box.vertical.dialog-vbox > notebook > header.top tab:checked:hover,
printdialog notebook > header.top tab:checked,
printdialog notebook > header.top tab:checked:hover,
notebook.frame > header.top tab:checked,
notebook.frame > header.top tab:checked:hover {
    background-image: linear-gradient(to bottom,
                                      shade(@theme_bg_color, 1.18),
                                      shade(@theme_bg_color, 1.1));
    border-radius: 4px 4px 0px 0px;
    border-width: 0px 1px 0px 1px;
    border-style: solid;
    border-color: @notebook_border;
}

window.background > box.vertical > notebook > header.top tab:hover, /* pavu-control */
window.background.csd > box.vertical > notebook > header.top tab:hover,
window.background.ssd > box.vertical > notebook > header.top tab:hover,
window.background.solid-csd > box.vertical > notebook > header.top tab:hover,
dialog.background.csd > box.vertical.dialog-vbox > notebook > header.top tab:hover,
dialog.background.ssd > box.vertical.dialog-vbox > notebook > header.top tab:hover,
dialog.background.solid-csd > box.vertical.dialog-vbox > notebook > header.top tab:hover,
printdialog notebook > header.top tab:hover,
notebook.frame > header.top tab:hover {
    background-image: linear-gradient(to bottom,
                                      alpha(@theme_base_color, 0.0),
                                      alpha(@theme_base_color, 0.3));
    border-radius: 4px 4px 0px 0px;
    border-width: 0px 1px 0px 1px;
    border-style: solid;
    border-color: @notebook_border;
}

notebook.frame > header.bottom tab:checked,
notebook.frame > header.bottom tab:checked:hover {
    background-image: linear-gradient(to top,
                                      shade(@theme_bg_color, 1.18),
                                      shade(@theme_bg_color, 1.1));
    border-radius: 0px 0px 4px 4px;
    border-style: solid;
    border-width: 0px 1px 0px 1px;
    border-color: @notebook_border;
}

notebook.frame > header.bottom tab:hover {
    background-image: linear-gradient(to top,
                                      alpha(@theme_base_color, 0.0),
                                      alpha(@theme_base_color, 0.3));
    border-radius: 0px 0px 4px 4px;
    border-style: solid;
    border-width: 0px 1px 0px 1px;
    border-color: @notebook_border;
}

/* vertical tabs */
notebook.frame > header.left tab,
notebook.frame > header.right tab {
    padding: 5px 20px;
    margin: -1px 0px 0px 0px;
    border-width: 1px 0px 1px 0px;
    border-style: solid;
    border-color: transparent;
}

notebook.frame > header.left tab:checked,
notebook.frame > header.left tab:checked:hover {
    background-image: linear-gradient(to right,
                                      shade(@theme_bg_color, 1.18),
                                      shade(@theme_bg_color, 1.1));
    border-style: solid;
    border-width: 1px 0px 1px 0px;
    border-color: @notebook_border;
    border-radius: 4px 0px 0px 4px;
}

notebook.frame > header.left tab:hover {
    background-image: linear-gradient(to right,
                                      alpha(@theme_base_color, 0.0),
                                      alpha(@theme_base_color, 0.3));
    border-style: solid;
    border-width: 1px 0px 1px 0px;
    border-color: @notebook_border;
    border-radius: 4px 0px 0px 4px;
}

notebook.frame > header.right tab:checked,
notebook.frame > header.right tab:checked:hover {
    background-image: linear-gradient(to left,
                                      shade(@theme_bg_color, 1.18),
                                      shade(@theme_bg_color, 1.1));
    border-style: solid;
    border-width: 1px 0px 1px 0px;
    border-color: @notebook_border;
    border-radius: 0px 4px 4px 0px;
}

notebook.frame > header.right tab:hover {
    background-image: linear-gradient(to left,
                                      alpha(@theme_base_color, 0.0),
                                      alpha(@theme_base_color, 0.3));
    border-style: solid;
    border-width: 1px 0px 1px 0px;
    border-color: @notebook_border;
    border-radius: 0px 4px 4px 0px;
}

notebook tab.reorderable-page:hover {
    background-image: linear-gradient(to bottom,
                                      alpha(@theme_base_color, 0.0),
                                      alpha(@theme_base_color, 0.3));
    border-radius: 0;
    box-shadow: inset 1px 0 alpha(@borders, 0.6), inset -1px 0 alpha(@borders, 0.6);
    border-style: none;
}

notebook tab.reorderable-page:checked {
    background-image: linear-gradient(to bottom,
                                      shade(@theme_bg_color, 1.18),
                                      shade(@theme_bg_color, 1.1));
    border-radius: 4px 4px 0 0;
    box-shadow: none;
    border-style: solid;
}

/* outlines */
notebook header.top tab:checked {
    -gtk-outline-top-left-radius: 4px;
    -gtk-outline-top-right-radius: 4px;
    -gtk-outline-bottom-left-radius: 0px;
    -gtk-outline-bottom-right-radius: 0px;
}

notebook header.bottom tab:checked {
    -gtk-outline-top-left-radius: 0px;
    -gtk-outline-top-right-radius: 0px;
    -gtk-outline-bottom-left-radius: 4px;
    -gtk-outline-bottom-right-radius: 4px;
}

notebook header.left tab:checked {
    -gtk-outline-top-left-radius: 4px;
    -gtk-outline-top-right-radius: 0px;
    -gtk-outline-bottom-left-radius: 0px;
    -gtk-outline-bottom-right-radius: 4px;
}

notebook header.right tab:checked {
    -gtk-outline-top-left-radius: 0px;
    -gtk-outline-top-right-radius: 4px;
    -gtk-outline-bottom-left-radius: 4px;
    -gtk-outline-bottom-right-radius: 0px;
}

/* close button styling */

notebook > header button.flat,
notebook > header button.flat.small-button {
    border-image: none;
    background-image: none;
    background-color: transparent;
    border-radius: 4px;
    border-style: solid;
    border-color: transparent;
    border-width: 1px;
    -gtk-icon-shadow: none;
    box-shadow: none;
}

notebook > header button.flat:hover,
notebook > header button.flat.small-button:hover {
    -gtk-icon-effect: highlight;
}

notebook tab.prelight-page button.flat.small-button,
notebook tab.active-page button.flat.small-button {
	color: mix(@theme_fg_color, @theme_base_color, 0.6);
	-gtk-icon-shadow: 0 1px @button_text_shadow;
}

notebook button.flat:checked,
notebook button.flat:checked:hover,
notebook button.flat.small-button:checked,
notebook button.flat.small-button:checked:hover {
	color: @theme_fg_color;
	border-color: alpha(black, 0.1);
}

notebook tab button:checked,
notebook tab button:checked:hover {
	color:  @button_active_text;
	background-color: alpha(black, 0.08);
	box-shadow: inset 0 1px alpha(black, 0.05);
	-gtk-icon-shadow: 0 1px @button_active_text_shadow;

	border-color: alpha(black, 0.27)
		alpha(black, 0.13)
		alpha(black, 0.13)
		alpha(black, 0.13);
}

notebook header.top tabs arrow.up,
notebook header.bottom tabs arrow.up {
    -gtk-icon-source: -gtk-icontheme("pan-end-symbolic");
}

notebook header.top tabs arrow.down,
notebook header.bottom tabs arrow.down {
    -gtk-icon-source: -gtk-icontheme("pan-start-symbolic");
}

notebook header.left tabs arrow.up,
notebook header.right tabs arrow.up {
    -gtk-icon-source: -gtk-icontheme("pan-up-symbolic");
}

notebook header.left tabs arrow.down,
notebook header.right tabs arrow.down {
    -gtk-icon-source: -gtk-icontheme("pan-down-symbolic");
}

notebook header tabs arrow {
    color: @theme_fg_color;
}

notebook header tabs arrow:hover,
notebook header tabs arrow:checked {
    color: @theme_selected_bg_color;
}

notebook header tabs arrow:disabled {
    color: rgba(141, 144, 145, 0.3);
}

notebook header tabs arrow:backdrop {
    color: rgba(84, 89, 90, 0.4);
}

notebook header tabs arrow:backdrop:disabled {
    color: #c7c7c7;
}

/*************************
 * Check and Radio items *
 *************************/

check,
radio,
check:disabled,
radio:disabled {
    background-color: transparent;
    border-style: none;
	min-height: 12px;
	min-width: 12px;
}

/* move label to the right */
check,
radio,
window.background.popup menuitem check,
window.background.popup menuitem radio,
window.background.popup menu menuitem check,
window.background.popup menu menuitem radio {
	padding: 0px 6px 0px 0px;
    background-repeat: no-repeat;
    background-position: center;
}

checkbutton,
checkbutton:hover,
checkbutton:focus,
checkbutton:focus:hover,
checkbutton:focus:hover:active,
checkbutton:checked,
checkbutton:checked:hover,
checkbutton:checked:focus,
checkbutton:checked:focus:hover,
checkbutton:checked:focus:hover:active {
    background-color: transparent;
}

checkbutton.text-button,
radiobutton.text-button {
  padding: 1px;
  outline-offset: 0;
}

/****************
 * GtkAssistant *
 ****************/

assistant .sidebar {
    padding: 5px;
    background-color: @sidebar_background;
    border-width: 0px 1px 0px 0px;
    border-radius: 0px;
    border-style: solid;
    border-right-color: @inactive_frame_color;
    color: mix (@theme_fg_color, @theme_bg_color, 0.40);
}

assistant .sidebar highlight,
assistant .sidebar label.highlight { /* ie. caja-actions import dialog */
    color: @theme_text_color;
    font-weight: bold;
}

/**********
 * Switch *
 **********/

switch,
switch:backdrop {
    padding:  4px;
    font-weight: bold;
    font-size: smaller;
    border-radius: 4px;
    border: 1px solid ;
    border-radius: 6px;
    color: @theme_fg_color;
    background-image: linear-gradient(to bottom,
                                      shade(@theme_bg_color, 0.9),
                                      shade(@theme_bg_color, 0.9));
    /* outer */
    border-top-color:    transparent;
    border-left-color:   alpha (#000, 0.01);
    border-right-color:  alpha (#000, 0.01);
    border-bottom-color: alpha (#000, 0.03);
    box-shadow: inset  0px  2px alpha(#fff, 0.11),
                inset  2px  0px alpha(#fff, 0.09),
                inset -2px  0px alpha(#fff, 0.09),
                inset  0px -2px alpha(#fff, 0.07),
                inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset -1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
    text-shadow: none;
}

switch:checked,
switch:backdrop:checked {
    background-image: linear-gradient(to bottom,
                                      @theme_selected_bg_color 2px,
                                      shade(@theme_selected_bg_color, 1.2));
    color: white;
}

switch:disabled,
switch:backdrop:disabled {
    color: @insensitive_fg_color;
    border-color: @insensitive_border_color;
    background-image: none;
    background-color: @insensitive_bg_color;
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
    text-shadow: none;
}

switch slider,
switch slider:backdrop {
    border: 1px solid;
    border-radius: 4px;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (@button_gradient1),
                                     color-stop (0.48, @button_gradient2),
                                     color-stop (0.52, @button_gradient3),
                                     to   (@button_gradient4));
    border-top-color:    transparent;
    border-left-color:   alpha (#000, 0.01);
    border-right-color:  alpha (#000, 0.01);
    border-bottom-color: alpha (#000, 0.03);
    box-shadow: inset  0px  2px alpha(#fff, 0.11),
                inset  2px  0px alpha(#fff, 0.09),
                inset -2px  0px alpha(#fff, 0.09),
                inset  0px -2px alpha(#fff, 0.07),
                inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset -1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
    padding: 2px;
    margin: -3px 0px -3px -3px;
}

switch:checked slider,
switch:checked slider:backdrop {
    border-color: transparent;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade (@theme_bg_color, 1.20)),
                                     color-stop (0.50, shade (@theme_bg_color, 1.00)),
                                     color-stop (0.50, shade (@theme_bg_color, 0.95)),
                                     to (shade (@theme_bg_color, 0.80)));
    box-shadow: inset  0px  1px shade (@theme_fg_color, 1.0),
                inset  1px  0px shade (@theme_fg_color, 1.0),
                inset -1px  0px shade (@theme_fg_color, 1.0),
                inset  0px -1px shade (@theme_fg_color, 1.0);
    margin: -3px -3px -3px 0px;
}

switch:disabled slider,
switch:disabled slider:backdrop {
    background-image: none;
    background-color: @insensitive_bg_color;
    border-color: alpha (#000, 0.00);
    border-bottom-color: alpha (#000, 0.00);
    border-image: none;
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
}

switch slider:disabled > label,
switch slider:backdrop:disabled > label {
    color: inherit;
}

/*********
 * image *
 *********/

image,
image:disabled {
    background-color: transparent;
}

/****************
 * drawing area *
 ****************/

/************
 * viewport *
 ************/

viewport {
    border-width: 0px;
    border-style: none;
    /* Background color and system config gnome-tweak-tools */
    background-color: shade(@theme_bg_color, 1.00);
}

viewport.frame {
    border-width: 0px;
    border-style: none;
    padding: 0px;
}

GdMainIconView.content-view {
    -GdMainIconView-icon-size: 40;
}

iconview.content-view.check {
    background-image: url("assets/grid-selection-unchecked.svg");
    background-color: transparent;
}

iconview.content-view.check:active {
    background-image: url("assets/grid-selection-checked.svg");
    background-color: transparent;
}

iconview,
viewport {
    /* avoid resizing theme thumbnails in mate-appearance-properties */
    padding: 0px;
}

iconview {
    border-width: 0px;
    border-style: none;
    /* background view mate-appearance-properties */
    background-color: @base_color;
}

iconview.view.cell:selected,
iconview.view.cell:selected:focus {
    /* eg. Configuration center */
    background-color: alpha(@theme_selected_bg_color, 0.90);    
    background-image: -gtk-gradient (linear,
                                     0.40 top, 0.60 bottom,
                                     from (shade (@button_bg_active, 1.14)),
                                     color-stop (0.45, shade (@button_bg_active, 1.00)),
                                     color-stop (0.52, shade (@button_bg_active, 0.88)),
                                     to (shade (@button_bg_active, 0.90))); 
    border-width: 1px;
    border-style: solid;
    border-radius: 4px;
    border-top-color: shade(@button_bg_active, 1.04);
    border-left-color: shade(@button_bg_active, 0.92);
    border-right-color: shade(@button_bg_active, 0.92);
    border-bottom-color: shade(@button_bg_active, 0.80);
    border-image: none;
    box-shadow: inset  0px  1px alpha(#fff, 0.08),
                inset  1px  0px alpha(#fff, 0.07),
                inset -1px  0px alpha(#fff, 0.07),
                inset  0px -1px alpha(#fff, 0.06);
    text-shadow: none;
}

iconview.view.cell:hover,
iconview.view.cell:hover:focus {
    background-color: alpha(@theme_selected_bg_color, 0.10);
    border-style: none;
    border-radius: 4px;
}

iconview.view.cell:selected:focus {
    border-color: alpha(@theme_text_color, 0.6);
    border-width: 1px;
    border-style: dashed;
}

view,
.view, 
view text,
.view text,
iconview text,
textview text {
    background-color: @theme_base_color;
    color: @theme_fg_color;
    text-shadow: none;
}

view,
view:selected,
view:selected:focus, 
.view:selected,
.view:selected:focus, 
view text selection,
.view text selection,
view text selection:focus,
.view text selection:focus {
    background-color: shade(@theme_selected_bg_color, 1.10);
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@theme_selected_bg_color, 1.0)),
                                     to (shade(@theme_selected_bg_color, 1.1))); 
    color: @theme_selected_fg_color;
    text-shadow: none;
}

/* ie. color of selected icons if unfocused */
.view:active {
    background-color: shade(@theme_bg_color, 0.8);
}

.view text selection:focus,
.view:selected:focus {
    text-shadow: none;
}

/* for firefox and probably other apps */
label:selected,
label selection,
label selection:focus,
label selection:hover {
  background-color: @theme_selected_bg_color;
  color: @theme_selected_fg_color;
}

label:disabled:selected,
label selection:disabled {
	color: @insensitive_fg_color;
}

label:backdrop:selected,
label selection:backdrop {
	color: @theme_fg_color;
}

label:backdrop:disabled:selected,
label selection:backdrop:disabled {
	color: @insensitive_fg_color;
}

treeview,
treeview.view {
    padding: 1px 4px;
	outline-color: alpha(currentColor, 0.6);
}

treeview.dnd {
    border-color: @internal_element_color;
    border-radius: 2px;
    border-width: 1px;
    border-style: solid;
}

treeview.view:selected:hover,
notebook container treeview.view:selected {
    background-image: -gtk-gradient (linear,
                                     left top,
                                     left bottom,
                                     from (shade(@sidebar_selected_bg, 0.90)),
                                     color-stop (0.40, shade (@sidebar_selected_bg, 0.98)),
                                     to (shade(@sidebar_selected_bg, 1.05)));
    color: @theme_selected_fg_color;
}

treeview.view,
treeview.view:focus {
    background-color: @theme_base_color;
    border-style: none;
}

treeview.view:hover,
notebook container treeview.view:hover {
    background-image: -gtk-gradient (linear,
                                     left top,
                                     left bottom,
                                     from (shade(@theme_bg_color, 1.05)),
                                     color-stop (0.40, shade (@theme_bg_color, 1.13)),
                                     to (shade(@theme_bg_color, 1.10)));
    color: shade (@theme_fg_color, 0.90);
    text-shadow: none;
}

/*Keep treeviews from jumping, separators drawn at 0 by default until hovered*/
treeview.view.separator,
treeview.view.separator:hover {
    min-height: 2px;
    color: shade(@theme_bg_color, 0.87);
    background-color: shade(@theme_bg_color, 0.87);
}

treeview.view > header > button,
treeview.view > header > button:focus {
    min-height: 18px;
    padding: 0px 4px;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_base, 1.00)),
                                     color-stop (0.50, shade(@button_base, 0.96)),
                                     color-stop (0.50, shade(@button_base, 0.95)),
                                     to (shade(@button_base, 0.93)));
    border-width: 0px 1px 1px 0px;
    border-style: solid;
    border-radius: 0px;
    border-top-color:    transparent;
    border-left-color:   shade(@button_border, 1.05);
    border-right-color:  shade(@button_border, 1.05);
    border-bottom-color: shade(@button_border, 0.95);
    border-image: none;
    box-shadow: inset  0px  1px alpha(#fff, 0.09),
                inset  1px  0px alpha(#fff, 0.07),
                inset -1px  0px alpha(#fff, 0.07),
                inset  0px -1px alpha(#fff, 0.05);
}

treeview.view > header > button:hover {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_gradient1, 1.03)),
                                     color-stop (0.50, shade(@button_gradient3, 1.03)),
                                     to   (shade(@button_gradient4, 1.01)));
    border-style: solid;
    border-radius: 0px;
    border-top-color:    transparent;
    border-left-color:   shade(@button_bg_active, 0.78);
    border-right-color:  shade(@button_bg_active, 0.78);
    border-bottom-color: shade(@button_bg_active, 0.70);
    border-image: none;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

treeview.view > header > button:focus:hover:active {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade (@theme_bg_color, 1.20)),
                                     color-stop (0.50, shade (@theme_bg_color, 1.00)),
                                     color-stop (0.50, shade (@theme_bg_color, 0.99)),
                                     to (shade (@theme_bg_color, 0.80)));
    border-radius: 0px;
    box-shadow: none;
}

treeview.view > header > button:disabled {
    background-image: none;
    background-color: @insensitive_bg_color;
    border-color: @insensitive_border_color;
    border-image: none;
    box-shadow: none;
}

treeview.view > header > button label,
treeview.view > header > button label:focus,
treeview.view > header > button label:backdrop {
    padding: 0px;
}

treeview.view > header > button arrow {
    color: @internal_element_color;
}

treeview.view > header > button:nth-child(last) {
    border-width: 0px 0px 1px 0px;
}

.cell {
    color: @theme_fg_color;
    padding: 0px 2px;
    border-width: 0px;
}

.cell:hover {
    /* take the same background in .view to avoid mouse-over lists */
    /*background-color: @theme_base_color;*/
    background-color: alpha(@theme_base_color, 0.0);
}

/*************
 * Expanders *
 *************/

treeview.view.expander {
    -gtk-icon-source: -gtk-icontheme("pan-end-symbolic");
    color: @theme_fg_color;
}

treeview.view.expander:dir(rtl) {
     -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl");
}

treeview.view.expander:checked {
    -gtk-icon-source: -gtk-icontheme("pan-down-symbolic");
 }

treeview.view.expander:hover {
    color: @theme_selected_bg_color;
}

treeview.view.expander:selected,
treeview.view.expander:selected:hover {
    color: @theme_selected_fg_color;
}

expander arrow {
    color: @menu_fg_dark_color;
    text-shadow: 1px 1px alpha (#000000, 0.8);
   -gtk-icon-shadow:  0px  1px shade (@menu_bg_dark_color, 1.0),
                      1px  0px shade (@menu_bg_dark_color, 1.0),
                     -1px  0px shade (@menu_bg_dark_color, 1.0),
                      0px -1px shade (@menu_bg_dark_color, 1.0);
}

expander arrow {
    -gtk-icon-source: -gtk-icontheme("pan-end-symbolic");
}

expander arrow:dir(rtl) {
    -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl");
}

expander arrow:hover {
    color: shade (@theme_selected_bg_color, 1.2);
    -gtk-icon-shadow:  0px  1px shade (@menu_fg_dark_color, 1.0),
                       1px  0px shade (@menu_fg_dark_color, 1.0),
                      -1px  0px shade (@menu_fg_dark_color, 1.0),
                       0px -1px shade (@menu_fg_dark_color, 1.0);
}

expander arrow:checked {
    -gtk-icon-source: -gtk-icontheme("pan-down-symbolic");
    color: shade (@theme_selected_bg_color, 1.2);
    -gtk-icon-shadow:  0px  1px shade (@menu_fg_dark_color, 1.0),
                       1px  0px shade (@menu_fg_dark_color, 1.0),
                      -1px  0px shade (@menu_fg_dark_color, 1.0),
                       0px -1px shade (@menu_fg_dark_color, 1.0);
}

expander arrow:checked:hover {
    color: @menu_fg_dark_color;
    text-shadow: 1px 1px alpha (#000000, 0.8);
   -gtk-icon-shadow:  0px  1px shade (@menu_bg_dark_color, 1.0),
                      1px  0px shade (@menu_bg_dark_color, 1.0),
                     -1px  0px shade (@menu_bg_dark_color, 1.0),
                      0px -1px shade (@menu_bg_dark_color, 1.0);
}

/* why this weird padding, possible issue with gtk+-3.18 ? */
expander arrow {
    min-width: 16px;
    min-height: 16px;
    padding: 0px 4px 0px 0px;
}

expander {
    color: @theme_fg_color;
    border-color: @theme_fg_color;
}

expander:checked {
    color: @theme_selected_bg_color;
    border-color: @theme_selected_bg_color;
}

expander:hover {
    color: @internal_element_color;
    border-color: @internal_element_color;
}

expander title:selected,
expander title:selected:focus,
.expander title:selected,
.expander title:selected:focus {
    border-style: solid;
    border-width: 1px;
    border-color: @expander_row_selected_color;
    color: @expander_row_selected_color;
    background-color: @theme_selected_bg_color;
}

expander title:selected:hover,
expander title:selected:focus:hover,
.expander title:selected:hover,
.expander title:selected:focus:hover {
    color: @theme_selected_fg_color;
    border-color: @theme_selected_fg_color;
}

/**************
 * List boxes *
 **************/

list {
    background-color: @list_box_bg;
}

list .separator.horizontal {
    background-color: @theme_base_color;
    border-width: 0px;
}

row {
    min-height: 22px;
}

row:disabled {
    border-width: 0px;
}

row:selected,
row:selected:focus {
    border-width: 1px 0 1px 0;
    border-style: solid;
    box-shadow: none;
}

row:selected:backdrop,
row:selected:focus:backdrop {
    border-width: 1px 0 1px 0;
    border-style: solid;
    text-shadow: none;
    box-shadow: none;
}

list row,
list row.activatable {
    padding: 2px;
    transition: all 400ms ease-in;
    background-image: none;
    background-color: @theme_base_color;
}

list row:hover,
list row.activatable:hover {
    border-color: shade (@theme_selected_bg_color, 1.6);
    background-image: -gtk-gradient (linear,
                                     left top,
                                     left bottom,
                                     from (shade(@theme_bg_color, 1.05)),
                                     color-stop (0.40, shade (@theme_bg_color, 1.13)),
                                     to (shade(@theme_bg_color, 1.10)));
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
    text-shadow: none;
    -gtk-icon-shadow: none;
    border-image: none;
    border-radius: 6px;
    border-style: solid;
}

list row:selected,
list row:selected:hover,
list row:selected:hover:active,
list row.activatable:selected,
list row.activatable:selected:hover,
list row.activatable:selected:hover:active {
    border-width: 0;
    border-radius: 0px;
    border-style: none;
    border-color: transparent;
    background-image: linear-gradient(to bottom,
                                      shade (@theme_selected_bg_color, 1.2),
                                      shade (@theme_selected_bg_color, 0.7));
    box-shadow: none;
    color: @theme_selected_fg_color;
}

list row:selected:backdrop,
list row:selected:backdrop:hover,
list row.activatable:selected:backdrop,
list row.activatable:selected:backdrop:hover {
    border-width: 0;
    border-style: solid;
    border-color: shade (@theme_bg_color, 0.85);
    background-image: linear-gradient(to bottom,
                                      shade (@theme_bg_color, 0.94),
                                      shade (@theme_bg_color, 0.94));
    color: @theme_fg_color;
    text-shadow: none;
    box-shadow: none;
}

/*********************
 * App Notifications *
 *********************/

.app-notification,
.app-notification.frame {
    color: @theme_dark_fg_color;
    padding: 10px;
    border: none;
    border-radius: 0 0 4px 4px;
    background-color: rgba(0, 0, 0, 0.7);
    background-image: linear-gradient(to bottom,
                                      rgba(0, 0, 0, 0.2),
                                      transparent 2px);
    background-clip: padding-box;
}

.app-notification:backdrop,
.app-notification.frame:backdrop {
    background-image: none;
}

.app-notification button,
.app-notification headerbar button.titlebutton,
headerbar .app-notification button.titlebutton,
.app-notification .titlebar button.titlebutton,
.titlebar .app-notification button.titlebutton,
.app-notification calendar.header button.titlebutton,
calendar.header .app-notification button.titlebutton,
.app-notification.frame button {
    color: @theme_dark_fg_color;
    border-color: rgba(37, 88, 128, 0.7);
    background-image: linear-gradient(to bottom,
                                      rgba(0, 0, 0, 0.7),
                                      rgba(0, 0, 0, 0.7));
    background-clip: padding-box;
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.1);
    text-shadow: none;
    -gtk-icon-shadow: 0 1px black;
    outline-color: rgba(238, 238, 236, 0.3);
    border-radius: 3px;
    padding: 0 0px 2px 0px;
}

.app-notification button.flat,
.app-notification headerbar button.titlebutton,
headerbar .app-notification button.titlebutton,
.app-notification .titlebar button.titlebutton,
.titlebar .app-notification button.titlebutton,
.app-notification calendar.header button.titlebutton,
calendar.header .app-notification button.titlebutton,
.app-notification.frame button.flat,
.app-notification.frame headerbar button.titlebutton,
headerbar .app-notification.frame button.titlebutton,
.app-notification.frame .titlebar button.titlebutton,
.titlebar .app-notification.frame button.titlebutton,
.app-notification.frame calendar.header button.titlebutton,
calendar.header .app-notification.frame button.titlebutton {
    -gtk-icon-shadow: 0 1px black;
    text-shadow: none;
}

.app-notification button:hover,
.app-notification.frame button:hover {
    color: black;
    border-color: rgba(0, 0, 0, 0.7);
    background-image: linear-gradient(to bottom,
                                      rgba(203, 213, 217, 0.7),
                                      rgba(203, 213, 217, 0.7));
    background-clip: padding-box;
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.1);
    text-shadow: none;
    -gtk-icon-shadow: 0 1px black;
    outline-color: rgba(238, 238, 236, 0.3);
    border-radius: 3px;
    padding: 0 0px 2px 0px;
}

.app-notification button:checked,
.app-notification button:backdrop:checked,
.app-notification.frame button:checked,
.app-notification.frame button:backdrop:active {
    color: white;
    border-color: rgba(0, 0, 0, 0.7);
    background-image: linear-gradient(to bottom,
                                      rgba(37, 88, 128, 0.7),
                                      rgba(37, 88, 128, 0.7));
    background-clip: padding-box;
    box-shadow: none;
    text-shadow: none;
    -gtk-icon-shadow: none;
    outline-color: rgba(238, 238, 236, 0.3);
    border-radius: 3px;
}

.app-notification button:disabled,
.app-notification button:backdrop:disabled,
.app-notification.frame button:disabled,
.app-notification.frame button:backdrop:disabled {
    color: #878989;
    border-color: rgba(0, 0, 0, 0.7);
    background-image: linear-gradient(to bottom,
                                      rgba(52, 57, 57, 0.5),
                                      rgba(52, 57, 57, 0.5));
    background-clip: padding-box;
    box-shadow: none;
    text-shadow: none;
    -gtk-icon-shadow: none;
    border-radius: 3px;
    padding: 0px;
}

.app-notification button:backdrop,
.app-notification.frame button:backdrop {
    color: #eeeeec;
    border-color: rgba(0, 0, 0, 0.7);
    background-image: linear-gradient(to bottom,
                                      rgba(172, 205, 138, 0.7),
                                      rgba(172, 205, 138, 0.7));
    background-clip: padding-box;
    box-shadow: none;
    text-shadow: none;
    -gtk-icon-shadow: none;
    border-radius: 3px;
    padding: 0px;
}

/**************
 * Calendar   *
 **************/

calendar {
    padding: 1px;
}

calendar.view {
    border-radius: 4px;
    border-style: solid;
    border-width: 1px;
    border-color: @notebook_border;
    padding: 2px;
}

calendar.header {
    border-radius: 4px 4px 0px 0px;
    background-image: linear-gradient(to bottom,
                                      shade(@theme_bg_color, 1.04),
                                      shade(@theme_bg_color, 0.89));
    border-width: 0;
}

calendar.expander,
calendar.button,
calendar.button.flat,
calendar.button:disabled {
    border-color: transparent;
    background-image: none;
    background-color: transparent;
    border-radius: 0px;
    box-shadow: none;
}

/* disable shadows and button background on arrows */
calendar.button:first-child,
calendar.button:last-child {
    box-shadow: none;
    background-image: none;
}

/* disable button background on arrows */
calendar.button:hover:first-child,
calendar.button:hover:last-child {
    background-image: none;
    border-radius: 3px;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

calendar {
    color: @theme_fg_color;
    text-shadow: none;
}

calendar:indeterminate {
    color: alpha(@theme_fg_color, 0.4);
}

highlight,
calendar.highlight {
    background-color: @theme_selected_bg_color;
    color: @theme_selected_fg_color;
    border-radius: 0px;
    padding: 0px;
    border-width: 0;
    border-color: transparent;
}

menuitem calendar,
menuitem calendar.button,
menuitem calendar.header,
menuitem calendar.view {
    background-color: shade(@theme_bg_dark_color, 0.82);
    background-image: none;
    border-radius: 0px;
    border-style: solid;
    border-width: 0px;
    padding: 0px;
    color: @theme_base_color;
}

menuitem calendar {
    background-color: shade (@menu_bg_color, 1.3);
    background-image: none;
}

/**************
 * GtkInfoBar *
 **************/

infobar {
    border-width: 0;
    border-style: none;
}

.info,
.question,
.warning,
.error {
    background-color: @info_bg_color;
    color: @infobar_fg_color;
    text-shadow: none;
    border-color: darker(@info_bg_color);
}

.warning {
    color: @warning_fg_color;
}

.info button.close,
.warning button.close,
.question button.close,
.error button.close {
    color: @theme_fg_color;
    -gtk-icon-shadow: none;
}

.info button.close:hover,
.warning button.close:hover,
.question button.close:hover,
.error button.close:hover {
    background-image: linear-gradient(to bottom,
                                      alpha(white, 0.3),
                                      alpha(white, 0.2) 30%,
                                      alpha(black, 0.02));
}

.info button.close:checked,
.warning button.close:checked,
.question button.close:checked,
.error button.close:checked {
    color: @infobar_fg_color;
    background-image: linear-gradient(to bottom,
                                      alpha(black, 0.1),
                                      transparent);
}

entry.info,
entry.info:focus,
.info button,
.info button:disabled,
.info button:checked,
entry.warning,
entry.warning:focus,
.warning button,
.warning button:disabled,
.warning button:checked,
entry.error,
entry.error:focus,
.error button,
.error button:disabled,
.error button:checked,
entry.question,
entry.question:focus,
.question button,
.question button:disabled,
.question button:checked {
    color: @theme_fg_color;
    border-color: darker(@info_bg_color);
    border-style: solid;
    border-width: 1px;
}

/* Warning Bar */
infobar.horizontal.error {
    background-color: @error_bg_color;
    color: @error_fg_color;
    border-color: darker(@error_bg_color);
    border-width: 1px ;
    border-style: solid;
}

/* Question Bar */
infobar.horizontal.info .horizontal {
    background-color: @question_bg_color;
    color: @question_fg_color;
}

infobar.horizontal.info .horizontal button.flat.raised.close,
infobar.horizontal.info .horizontal button.flat.raised.close:hover,
infobar.horizontal.info .horizontal button.flat.raised.close:checked {
    border-radius: 3px;
    box-shadow: none;
}

/***************
 * Dialog      *
 ***************/

.prompt,
messagedialog {
    -GtkDialog-content-area-border: 0;
    -GtkDialog-action-area-border: 12;
    -GtkDialog-button-spacing: 0;
    margin: 0;
    padding: 0;
}

/* ie. caja properties-window notes tab */
dialog notebook.frame > stack > scrolledwindow.frame {
    border-style: none;
}

/* credits in GtkAbout windows */
dialog .dialog-vbox scrolledwindow.frame > viewport.view.frame {
    background-color: shade (@theme_bg_color, 1.10);
}

dialog scrolledwindow.frame viewport .vertical expander .vertical {
    background-color: @theme_base_color;
    border-radius: 3px;
    border-color: @notebook_border;
    border-style: solid;
    border-width: 1px;
}

/* middle buttons */
.dialog-action-area.linked > button.text-button,
.dialog-action-area.linked > button.text-button:focus,
.dialog-action-area.linked > button.text-button:hover,
.dialog-action-area.linked > button.text-button:hover:active,
.dialog-action-area.linked > button.text-button:focus:hover,
.dialog-action-area.linked > button.text-button:focus:hover:active,
.dialog-action-area.linked > button.text-button:checked,
.dialog-action-area.linked > button.text-button:checked:hover,
.dialog-action-area.linked > button.text-button:checked:hover:active,
.dialog-action-area.linked > button.text-button:disabled {
    border-width: 1px 1px 1px 0px;
    border-radius: 0;
    padding:  6px 6px;
    margin: 0px 0px 0px -2px;
    min-height: 16px;
    min-width: 16px;
}

/* left button */
.dialog-action-area.linked > button.text-button:first-child,
.dialog-action-area.linked > button.text-button:focus:first-child,
.dialog-action-area.linked > button.text-button:hover:first-child,
.dialog-action-area.linked > button.text-button:hover:active:first-child,
.dialog-action-area.linked > button.text-button:focus:hover:first-child,
.dialog-action-area.linked > button.text-button:focus:hover:active:first-child,
.dialog-action-area.linked > button.text-button:checked:first-child,
.dialog-action-area.linked > button.text-button:checked:hover:first-child,
.dialog-action-area.linked > button.text-button:checked:hover:active:first-child,
.dialog-action-area.linked > button.text-button:disabled:first-child {
    border-radius: 5px 0 0 5px;
    border-width: 1px 1px 1px 1px;
}

/* right button */
.dialog-action-area.linked > button.text-button:last-child,
.dialog-action-area.linked > button.text-button:focus:last-child,
.dialog-action-area.linked > button.text-button:hover:last-child,
.dialog-action-area.linked > button.text-button:hover:active:last-child,
.dialog-action-area.linked > button.text-button:focus:hover:last-child,
.dialog-action-area.linked > button.text-button:focus:hover:active:last-child,
.dialog-action-area.linked > button.text-button:checked:last-child,
.dialog-action-area.linked > button.text-button:checked:hover:last-child,
.dialog-action-area.linked > button.text-button:checked:hover:active:last-child,
.dialog-action-area.linked > button.text-button:disabled:last-child {
    margin: 0px 0px 0px -2px;
    border-width: 1px 1px 1px 0px;
    border-radius: 0 5px 5px 0;
}

/* single button */
.dialog-action-area.linked > button.text-button:only-child,
.dialog-action-area.linked > button.text-button:focus:only-child,
.dialog-action-area.linked > button.text-button:hover:only-child,
.dialog-action-area.linked > button.text-button:hover:active:only-child,
.dialog-action-area.linked > button.text-button:focus:hover:only-child,
.dialog-action-area.linked > button.text-button:focus:hover:active:only-child,
.dialog-action-area.linked > button.text-button:checked:only-child,
.dialog-action-area.linked > button.text-button:checked:hover:only-child,
.dialog-action-area.linked > button.text-button:checked:hover:active:only-child,
.dialog-action-area.linked > button.text-button:disabled:last-child {
    border-width: 1px;
    border-image-width: 1px;
    border-radius: 5px;
}

.dialog-action-area.linked > button.text-button {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (@button_gradient1),
                                     color-stop (0.50, @button_gradient3),
                                     to   (@button_gradient4));
    box-shadow: inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset -1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
}

.dialog-action-area.linked > button.text-button:focus {
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

.dialog-action-area.linked > button.text-button:hover {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_gradient1, 1.03)),
                                     color-stop (0.50, shade(@button_gradient3, 1.03)),
                                     to   (shade(@button_gradient4, 1.01)));
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

.dialog-action-area.linked > button.text-button:hover:active {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade (@theme_bg_color, 1.20)),
                                     color-stop (0.50, shade (@theme_bg_color, 1.00)),
                                     color-stop (0.50, shade (@theme_bg_color, 0.99)),
                                     to (shade (@theme_bg_color, 0.80)));
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

.dialog-action-area.linked button.suggested-action,
.dialog-action-area.linked button.suggested-action:active,
.dialog-action-area.linked button.suggested-action:checked,
.dialog-action-area.linked button.suggested-action:disabled {
    box-shadow: none;
}

.dialog-action-area.linked > button.text-button label {
     padding: 2px 0px 0px 0px;
}

/**************
 * Dim labels *
 **************/

.view.dim-label,
.dim-label,
.dim-label:hover,
.dim-label:focus,
list row.activatable .dim-label {
    color: mix (@theme_fg_color, @theme_bg_color, 0.27);
    text-shadow: none;
}

.dim-label:selected,
.dim-label:selected:focus,
list row.activatable:selected .dim-label {
    color: shade (@theme_selected_fg_color, 0.7);
    text-shadow: none;
}

/*******
 * OSD *
 *******/

.background.osd {
    color: @osd_fg;
    text-shadow: none;
    border-style: solid;
    border-width: 1px;
    border-color: shade (@theme_selected_bg_color, 0.8);
    border-radius: 0px;
    background-image: linear-gradient(to left,
                                      alpha(shade(@theme_selected_bg_color, 1.2), 0.7),
                                      alpha(shade(@theme_selected_bg_color, 0.95), 0.7));
    background-color: alpha(shade(@theme_selected_bg_color, 1.0), 0.4);
}

overlay.osd {
    background-color: transparent;
}

.osd.frame {
    background-clip: border-box;
    background-origin: border-box;
}

.osd button,
.osd button:focus,
.osd button:checked,
.osd button:hover:active,
.osd button:focus:hover:active,
button.osd,
button.osd:focus,
button.osd:checked,
button.osd:hover:active,
button.osd:focus:hover:active {
    border-width: 1px;
    border-style: solid;
    border-image: none;
    border-color: @osd_button_border;
    border-radius: 5px;
    box-shadow: none;
}

.osd button,
.osd button:hover,
.osd button:checked,
button.osd,
button.osd:hover,
button.osd:checked {
    background-color: shade(@osd_bg, 1.10);
    border-radius: 5px;
    border-color: @osd_button_border;
}

.osd button:hover,
.osd button:checked,
button.osd:hover,
button.osd:checked {
    background-color: transparent;
    box-shadow: none;
}

.osd button:disabled,
button.osd:disabled {
    background-image: none;
    border-color: @osd_button_bg_insensitive;
    background-color: transparent;
    box-shadow: none;
    color: @osd_button_fg_insensitive;
}

.osd button:checked:disabled,
button.osd:checked:disabled {
    background-image: none;
    background-color: @osd_button_bg_insensitive_active;
    color: @osd_button_fg_insensitive;
}

.osd button,
.osd button:focus,
button.osd,
button.osd:focus {
    padding: 4px;
    background-image: linear-gradient(to bottom,
                                      @osd_button_bg_a,
                                      @osd_button_bg_b 68%,
                                      @osd_button_bg_c);
    color: @osd_button_fg;
    text-shadow: none;
    -gtk-icon-shadow: 0 -1px @osd_button_shadow;
}

.osd button:hover,
button.osd:hover,
.osd .linked button:hover {
    background-image: linear-gradient(to bottom,
                                      @osd_button_bg_hover_a,
                                      @osd_button_bg_hover_b 68%,
                                      @osd_button_bg_hover_c);
    color: @osd_button_fg_hover;
}

.osd button:checked,
.osd button:checked:hover,
.osd button:checked:hover:active,
.osd button:hover:active,
.osd button:focus:hover:active,
.osd button.popup:checked,
button.osd:checked,
button.osd:checked:hover,
button.osd:checked:hover:active,
button.osd:hover:active,
button.osd:focus:hover:active,
button.osd.menu-button:checked {
    background-image: linear-gradient(to bottom,
                                      @osd_button_bg_active_a,
                                      @osd_button_bg_active_b 68%,
                                      @osd_button_bg_active_c);
    color: @osd_button_fg_active;
    text-shadow: none;
}

.osd button.popup:checked {
    background-color: transparent;
    border-color: @osd_button_border;
}

/* ie. gnome-weather */
.linked.stack-switcher.osd button {
    border-width: 1px 0 1px 0px;
    color: @osd_button_fg_hover;
    text-shadow: none;
}

.linked.stack-switcher.osd button:checked {
    color: shade(@theme_fg_color, 1.00);
}

.linked.stack-switcher.osd button:first-child {
    border-width: 1px 1px 1px 1px;
}

.linked.stack-switcher.osd button:last-child {
    border-width: 1px 1px 1px 0px;
}

.linked.stack-switcher.osd button:only-child {
    border-width: 1px;
}

/* ie. parole media-player */
/* previous/play/next */
.osd .horizontal .horizontal button {
    padding: 5px 8px;
}

.osd .horizontal .horizontal button:disabled {
    border-color: @osd_button_bg_disabled;
}

.osd .horizontal .horizontal label {
    padding: 5px 5px;
    background-color: transparent;
    background-image: linear-gradient(to bottom,
                                      @osd_button_bg_a,
                                      @osd_button_bg_b 68%,
                                      @osd_button_bg_c);
    border-color: @osd_button_bg_insensitive;
    border-style: solid;
    border-width: 1px;
    border-radius: 5px;
}

toolbar.osd {
    color: @osd_fg;
    text-shadow: none;
    padding: 10px;
    border-style: solid;
    border-width: 1px;
    border-color: shade (@theme_selected_bg_color, 0.8);
    border-radius: 7px;
    background-image: linear-gradient(to left,
                                      alpha(shade(@theme_selected_bg_color, 1.2), 0.7),
                                      alpha(shade(@theme_selected_bg_color, 0.95), 0.7));
    background-color: alpha(shade(@theme_selected_bg_color, 1.0), 0.4);
    -GtkToolbar-button-relief: normal;
}

toolbar.osd button,
toolbar.osd button:hover,
toolbar.osd button:focus,
toolbar.osd button:focus:hover,
toolbar.osd button:focus:hover:active,
toolbar.osd button:hover:active,
toolbar.osd .linked button
toolbar.osd .linked button:hover,
toolbar.osd .linked button:hover:active,
toolbar.osd .linked button:focus,
toolbar.osd .linked button:focus:hover,
toolbar.osd .linked button:focus:hover:active,
toolbar.osd button.scale.flat.image-button {
    padding: 8px;
    border-width: 1px;
    border-radius: 5px;
}

toolbar.osd button:first-child,
toolbar.osd .linked button:first-child,
toolbar.osd .linked button:focus:hover:first-child,
toolbar.osd .linked button:focus:hover:active:first-child {
    border-radius: 5px 0 0 5px;
    border-width: 1px 0 1px 1px;
    box-shadow: inset -1px 0 @osd_button_inset;
}

toolbar.osd button:last-child,
toolbar.osd .linked button:last-child,
toolbar.osd .linked button:focus:hover:last-child,
toolbar.osd .linked button:focus:hover:active:last-child {
    box-shadow: none;
    border-radius: 0 5px 5px 0;
    border-width: 1px 1px 1px 0;
}

toolbar.osd button:only-child,
toolbar.osd .linked button:only-child,
toolbar.osd toolitem button,
toolbar.osd toolitem button:only-child,
toolbar.osd toolitem button:last-child,
toolbar.osd toolitem button:first-child {
    border-width: 1px;
    border-radius: 5px;
    border-style: solid;
    box-shadow: none;
}

toolbar.osd separator {
    color: shade(@osd_lowlight, 0.80);
}

/* used by gnome-settings-daemon's media-keys OSD
   and Epiphany */
.osd trough {
    background-color: @osd_trough_bg;
    border-width: 0;
}

.osd progressbar {
    background-color: @osd_fg;
}

.osd scale trough:disabled,
.osd scale trough.highlight:disabled {
    background-image: none;
    background-color: transparent;
}

.osd popover.background.scale-popup {
    color: @osd_fg;
    border-style: solid;
    border-width: 1px;
    border-color: shade (@theme_selected_bg_color, 0.8);
    border-radius: 4px;
    background-image: linear-gradient(to bottom,
                                      alpha(shade(@theme_selected_bg_color, 1.2), 0.7),
                                      alpha(shade(@theme_selected_bg_color, 0.95), 0.7));
    background-color: alpha(shade(@theme_selected_bg_color, 1.0), 0.4);
}

.osd popover.background.scale-popup button.flat.image-button {
    background-image: linear-gradient(to bottom,
                                      @osd_button_bg_a,
                                      @osd_button_bg_b 68%,
                                      @osd_button_bg_c);
    border-radius: 4px;
    border-width: 1px;
    border-color: @osd_button_border;
    box-shadow: none;
    padding: 2px;
}

.osd popover.background.scale-popup button.flat.image-button:hover {
    background-image: linear-gradient(to bottom,
                                      @osd_button_bg_hover_a,
                                      @osd_button_bg_hover_b 68%,
                                      @osd_button_bg_hover_c);
    border-color: alpha(shade(@theme_selected_bg_color, 2.2), 0.8);
/*    -gtk-image-effect: highlight; */
}

.osd popover.background.scale-popup button.flat.image-button:disabled {
    background-image: none;
    background-color: transparent;
    border-image: none;
    border-color: transparent;
    box-shadow: none;
}

.osd progressbar,
progressbar .osd {
    padding: 0;
}

.osd progressbar.horizontal,
progressbar.horizontal .osd {
    min-height: 3px;
}

.osd progressbar trough,
progressbar .osd trough {
    padding: 0;
    border-image: none;
    border-style: none;
    border-width: 0;
    background-image: none;
    background-color: transparent;
    border-radius: 0;
}

.osd progressbar,
progressbar .osd {
    border-style: none;
    background-color: @theme_selected_bg_color;
    background-image: none;
    border-radius: 0;
}

.osd view {
    background-color: @osd_view_bg;
}

.osd scrollbar trough.trough {
    background-color: @osd_scrollbar_trough;
}

.osd scrollbar trough.slider {
    background-color: @osd_scrollbar_slider;
}

.osd scrollbar trough.slider:hover {
    background-color: @osd_scrollbar_slider_prelight;
}

.osd scrollbar trough.slider:active {
    background-color: @osd_scrollbar_slider_active;
}

.osd iconview.cell:selected,
.osd iconview.cell:selected:focus {
    background-color: transparent;
    border-style: solid;
    border-radius: 15px;
    border-width: 3px;
    border-color: @osd_button_fg;
    outline-color: transparent;
}

/* ie. colorchooser */
.osd.popover {
    background-image: none;
    background-color: alpha(shade(#3D3E40, 0.85), 0.35);
    border: 1px solid black;
    box-shadow: none;
    color: @theme_selected_fg_color;
}

.osd.popover > grid {
    text-shadow: 1px 1px alpha (#000000, 0.8);
}

.osd.popover toolbar {
    background-image: none;
    background-color: transparent;
    border: none;
    box-shadow: none;
}

.osd.popover button {
    text-shadow: none;
    -gtk-icon-shadow: 0 -1px @osd_text_shadow;
}

.osd.popover button:checked {
    box-shadow: none;
}

.osd.popover button:disabled {
    color: alpha(@theme_selected_fg_color, 0.4);
}

.osd.popover > grid > spinbutton {
    text-shadow: none;
    color: @theme_fg_color;
}

.osd.popover spinbutton entry,
.osd.popover spinbutton entry:focus,
.osd.popover spinbutton entry:backdrop {
    border-width: 1px;
    border-style: none;
    border-radius: 0px;
    box-shadow: none;
    padding: 5px 10px 5px 3px;
}

.osd.popover spinbutton button,
.osd.popover spinbutton button:focus
.osd.popover spinbutton button:backdrop {
    min-width: 16px;
    min-height: 16px;
    border-width: 1px;
    border-style: none;
    border-radius: 0px;
    box-shadow: none;
    padding: 5px;
}

.osd.popover spinbutton button:hover {
    background-image: linear-gradient(to bottom,
                                      alpha(shade(@theme_selected_bg_color, 1.2), 0.4),
                                      alpha(shade(@theme_selected_bg_color, 0.95), 0.4));
    background-color: alpha(shade(@theme_selected_bg_color, 1.0), 0.4);
}

/* used by Documents */
.osd .page-thumbnail {
    border-style: solid;
    border-width: 1px;
    border-color: @osd_lowlight;
    /* when there's no pixbuf yet */
    background-color: @osd_bg;
}

/*************
 * Popovers *
 *************/

popover.background {
    background-clip: initial;
    color: @theme_fg_dark_color;
    margin: 10px;
    padding: 2px;
    border-color: @borders_headerbar;
    border-width: 1px;
    border-style: solid;
    border-radius: 6px;
    background-color: @bg_dark_color;
    box-shadow: 0 1px 5px @wm_shadow;
    text-shadow: none;
    -gtk-icon-shadow: none;
}

popover .dim-label,
popover .dim-label:hover,
popover .dim-label:focus {
    color: @theme_fg_dark_color;
}

popover > list,
popover > .view,
popover > toolbar popover.osd > toolbar,
popover > .inline-toolbar popover.osd > toolbar,
popover > searchbar popover.osd > toolbar,
popover > .location-bar popover.osd > toolbar,
popover > toolbar popover.osd > .inline-toolbar,
popover > .inline-toolbar .popover.osd > .inline-toolbar,
popover > searchbar popover.osd > .inline-toolbar,
popover > .location-bar popover.osd > .inline-toolbar,
popover > toolbar popover.osd > searchbar,
popover > .inline-toolbar popover.osd > searchbar,
popover > searchbar popover.osd > searchbar,
popover > .location-bar popover.osd > searchbar
popover > .inline-toolbar popover.osd > .location-bar,
popover > searchbar popover.osd > .location-bar,
popover > .location-bar popover.osd > .location-bar {
    border-style: none;
    background-color: transparent;
}

popover separator {
    font-size: 80%;
    font-weight: bold;
    color: alpha(@theme_fg_dark_color,0.6);
    text-shadow: none;
    background-color: transparent;
    -gtk-icon-shadow: none;
    border: 0;
}

popover.background.scale-popup button.flat.image-button:disabled {
    background-image: none;
    background-color: transparent;
    border-image: none;
    border-color: transparent;
    box-shadow: none;
}

popover.background.scale-popup button.flat.image-button {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    border-radius: 4px;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

popover.background.scale-popup button.flat.image-button:hover {
/*    -gtk-image-effect: highlight; */
}

popover.background.scale-popup scale .trough,
popover.background.scale-popup scale .trough.vertical {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade (@scale_border_a, 1.10)),
                                     to (shade (@scale_border_a, 1.51)));
}

popover.background.scale-popup scale .trough.highlight,
popover.background.scale-popup scale .trough.highlight.vertical {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade (@theme_selected_bg_color, 1.31)),
                                     to (shade (@theme_selected_bg_color, 1.00)));
}

/* needs to be here to avoid a override by .popover.scale-popup */
.osd .scale.trough,
.osd popover.background.scale-popup scale trough {
    border-color: @osd_scale_border;
    border-image: none;
    background-image: linear-gradient(to bottom,
                                      shade(@osd_button_border, 0.70),
                                      shade(@osd_button_border, 0.90));
    background-color: transparent;
}

.osd .scale.trough.highlight,
.osd popover.background.scale-popup scale trough highlight {
    background-image: none;
    background-color: @theme_selected_bg_color;
    border-color: @scale_highlight_border;
}

popover .list {
    background-color: @theme_base_color;
}

/* more/less volume button */
popover button.image-button:hover {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

popover button.image-button:disabled {
    background-image: none;
    background-color: transparent;
    box-shadow: inset  0px  1px @insensitive_border_color,
                inset  1px  0px @insensitive_border_color,
                inset -1px  0px @insensitive_border_color,
                inset  0px -1px @insensitive_border_color;
}

popover > box > button.text-button,
popover > box > button.text-button:hover,
popover > box > button.text-button:focus { /* ie. gedit menu button popover */
    padding: 6px;
}

popover > box > button.text-button { /* ie. gedit menu button popover */
    background-image: none;
    color: @theme_fg_dark_color;
    border-radius: 5px;
}

modelbutton.flat,
.linked button.image-button.model {
    min-height: 24px;
    padding: 4px;
}

modelbutton.flat arrow.left {
    -gtk-icon-source: -gtk-icontheme("pan-start-symbolic");
}

modelbutton.flat arrow.right {
    -gtk-icon-source: -gtk-icontheme("pan-end-symbolic");
}

modelbutton.flat,
modelbutton.flat:first-child,
modelbutton.flat:last-child,
modelbutton.flat:only-child {
    background-image: none;
    color: @theme_fg_dark_color;
    border-radius: 5px;
    padding: 6px 0px 6px 6px;
    outline-style: none;
}

modelbutton.flat:checked,
modelbutton.flat:disabled,
modelbutton.flat:checked:disabled,
modelbutton.flat,
modelbutton.flat:focus,
modelbutton.flat:checked:focus,
modelbutton.flat:checked:first-child,
modelbutton.flat:disabled:first-child,
modelbutton.flat:checked:disabled:first-child,
modelbutton.flat:first-child,
modelbutton.flat:focus:first-child,
modelbutton.flat:checked:focus:first-child,
modelbutton.flat:checked:last-child,
modelbutton.flat:disabled:last-child,
modelbutton.flat:checked:disabled:last-child,
modelbutton.flat:last-child,
modelbutton.flat:focus:last-child,
modelbutton.flat:checked:focus:last-child,
modelbutton.flat:checked:only-child,
modelbutton.flat:disabled:only-child,
modelbutton.flat:checked:disabled:only-child,
modelbutton.flat:only-child,
modelbutton.flat:focus:only-child,
modelbutton.flat:checked:focus:only-child,
.linked button.image-button.model,
popover > box > button.text-button { /* ie. gedit menu button popover */
    background-color: shade (@theme_bg_dark_color, 1.0);
    background-image: none;
    border-color: transparent;
    border-image: none;
    border-style: none;
    box-shadow: none;
    border-radius: 5px;
}

/* use box-shadow for outlines */
modelbutton.flat:focus,
modelbutton.flat:focus:first-child,
modelbutton.flat:focus:last-child,
modelbutton.flat:focus:only-child {
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

modelbutton.flat:checked:hover:only-child,
modelbutton.flat:checked:hover:active:only-child,
modelbutton.flat:focus:hover:active:only-child,
modelbutton.flat:hover:active:only-child,
modelbutton.flat:hover:only-child,
modelbutton.flat:selected:only-child,
modelbutton.flat:checked:hover:first-child,
modelbutton.flat:checked:hover:active:first-child,
modelbutton.flat:focus:hover:active:first-child,
modelbutton.flat:hover:active:first-child,
modelbutton.flat:hover:first-child,
modelbutton.flat:selected:first-child,
modelbutton.flat:checked:hover:last-child,
modelbutton.flat:checked:hover:active:last-child,
modelbutton.flat:focus:hover:active:last-child,
modelbutton.flat:hover:active:last-child,
modelbutton.flat:hover:last-child,
modelbutton.flat:selected:last-child,
modelbutton.flat:checked:hover,
modelbutton.flat:checked:hover:active,
modelbutton.flat:focus:hover:active,
modelbutton.flat:hover:active,
modelbutton.flat:hover,
modelbutton.flat:selected,
popover > box > button.text-button:hover,
popover > box > button.text-button:checked,
popover > box > button.text-button:hover:active,
popover > box > button.text-button:checked:hover,
popover > box > button.text-button:checked:hover:active {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    background-color: shade (@theme_bg_dark_color, 1.2);
    color: shade (@theme_selected_bg_color, 1.6);
    text-shadow: none;
    border-width: 0;
    border-color: transparent;
    border-radius: 5px;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

popover .linked button:focus,
.linked button.image-button.model,
.linked button.image-button.model:focus,
.linked button.image-button.model:first-child,
.linked button.image-button.model:focus:first-child,
.linked button.image-button.model:last-child,
.linked button.image-button.model:focus:last-child {
    background-color: shade (@theme_bg_dark_color, 1.0);
    background-image: none;
    border-color: transparent;
    border-image: none;
    border-style: none;
    box-shadow: none;
    border-radius: 3px;
}

popover .linked button:focus,
popover .linked button:focus:first-child,
popover .linked button:focus:last-child,
popover .linked button:focus:only-child,
.linked button.image-button.model:focus,
.linked button.image-button.model:focus:first-child,
.linked button.image-button.model:focus:last-child {
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

popover .linked button:hover,
popover .linked button:focus:hover,
.linked button.image-button.model:checked,
.linked button.image-button.model:hover,
.linked button.image-button.model:hover:active,
.linked button.image-button.model:checked:hover,
.linked button.image-button.model:checked:hover:active {
    color: @fg_dark_color;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

/* middle button*/
.linked button.image-button.model:hover,
.linked button.image-button.model:hover:active,
.linked button.image-button.model:checked:hover,
.linked button.image-button.model:checked:hover:active {
    border-right-width: 0px;
    border-left-width:  0px;
    border-radius: 0;
}

/* left button*/
.linked button.image-button.model:hover:first-child,
.linked button.image-button.model:hover:active:first-child,
.linked button.image-button.model:checked:hover:first-child,
.linked button.image-button.model:checked:hover:active:first-child {
    border-right-width: 0px;
    border-radius: 5px 0 0 5px;
}

/* right button*/
.linked button.image-button.model:hover:last-child,
.linked button.image-button.model:hover:active:last-child,
.linked button.image-button.model:checked:hover:last-child,
.linked button.image-button.model:checked:hover:active:last-child {
    border-left-width:  0px;
    border-radius: 0 5px 5px 0;
}

popover > box > button.text-button:disabled {
    color: mix (@menu_fg_dark_color, @menu_bg_dark_color, 0.4);
}

popover button.default.text-button.suggested-action {
    background-image: none;
    color: @theme_fg_dark_color;
    text-shadow: none;
    border-width: 0;
    border-color: transparent;
    border-radius: 5px;
    padding: 5px 4px;
}

/* override theme_bg color */
popover button.default.text-button.suggested-action:disabled {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 1.0)),
                                     to   (shade(@menu_bg_dark_color, 1.0)));
}

popover button.default.text-button.suggested-action:hover {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    background-color: shade (@theme_bg_dark_color, 1.2);
    color: shade (@theme_selected_bg_color, 1.3);
    text-shadow: none;
    border-width: 0;
    border-color: transparent;
    border-radius: 5px;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

entry.cursor-handle,
.cursor-handle {
    background-color: transparent;
    background-image: none;
    box-shadow: none;
    border-style: none;
}

entry.cursor-handle.top,
.cursor-handle.top {
    -gtk-icon-source: -gtk-icontheme("selection-start-symbolic");
}

entry.cursor-handle.bottom,
.cursor-handle.bottom {
    -gtk-icon-source: -gtk-icontheme("selection-end-symbolic");
}

/***************
 * Header bars *
 ***************/

headerbar,
.horizontal.titlebar,  /* eg. tilix */
.background.ssd > paned.horizontal.titlebar,
.background.csd > paned.horizontal.titlebar,
.background.solid-csd > paned.horizontal.titlebar {
    background-color: @theme_bg_dark_color;
    background-image: linear-gradient(to bottom,
                                      @wm_bg_a,
                                      @wm_bg_b);
    box-shadow: inset 0 -1px shade(@wm_bg_b, 0.95);
}

headerbar,
.titlebar,
headerbar.titlebar,
.background.ssd > paned.horizontal.titlebar,
.background.csd > paned.horizontal.titlebar,
.background.solid-csd > paned.horizontal.titlebar {
    border-width: 0px 0px 1px 0px;
    border-style: solid;
    border-color: shade(@borders_headerbar, 0.90);
    border-radius: 7px 7px 0px 0px;
    padding: 2px 6px;
}

.horizontal.titlebar headerbar:first-child,
paned.horizontal.titlebar headerbar:first-child {
	border-top-right-radius: 0px;
}

.horizontal.titlebar headerbar:last-child,
paned.horizontal.titlebar headerbar:last-child {
	border-top-left-radius: 0px;
}

.background.ssd > paned.horizontal.titlebar > separator, /* gedit */
.background.csd > paned.horizontal.titlebar > separator,
.background.solid-csd > paned.horizontal.titlebar > separator,
.horizontal.titlebar separator.vertical.tilix-title-separator {  /* tilix */
    min-width: 1px;
    background-color: shade(@menu_fg_dark_color, 0.3);
    border-image: -gtk-gradient (linear,
                                 left top, right top,
                                 from (alpha (#000, 0.00)),
                                 color-stop (0.25, alpha (#000, 0.03)),
                                 color-stop (0.85, alpha (#000, 0.03)),
                                 to (alpha (#000, 0.00))) 1;
    border-style: solid;
}

headerbar.titlebar:backdrop {
    border-image: linear-gradient(to top,
                                  @unfocused_borders_headerbar,
                                  @unfocused_borders_headerbar 1px,
                                  @theme_unfocused_bg_color 1px) 0 0 2;
    background-color: @theme_bg_dark_color;
    text-shadow: none;
    background-image: none;
    box-shadow: none;
}

headerbar button {
    padding-left:  4px;
    padding-right: 4px;
}

headerbar button,
headerbar button:last-child,
headerbar button:first-child,
headerbar button:only-child,
headerbar .linked button,
headerbar .linked button:last-child,
headerbar .linked button:first-child,
headerbar .linked button:only-child,
headerbar .linked button:disabled,
headerbar .linked button:disabled:last-child,
headerbar .linked button:disabled:first-child,
headerbar .linked button:disabled:only-child
headerbar .linked button:focus,
headerbar .linked button:focus:last-child,
headerbar .linked button:focus:first-child,
headerbar .linked button:focus:only-child,
headerbar .linked button:backdrop,
headerbar .linked button:backdrop:last-child,
headerbar .linked button:backdrop:first-child,
headerbar .linked button:backdrop:only-child {
    background-image: none;
    text-shadow: none;
    -gtk-icon-shadow: none;
    color: @theme_fg_dark_color;
    border-width: 1px;
    border-radius: 5px;
    box-shadow: none;
}

headerbar .linked entry,
headerbar .linked button,
headerbar .linked button:disabled,
headerbar .linked button:focus,
headerbar .linked button:backdrop {
    border-radius: 0px;

}

headerbar .linked button:first-child,
headerbar .linked button:disabled:first-child,
headerbar .linked button:focus:first-child,
headerbar .linked button:backdrop:first-child {
    border-radius: 5px 0px 0px 5px;
}

headerbar .linked button:last-child,
headerbar .linked button:disabled:last-child,
headerbar .linked button:focus:last-child,
headerbar .linked button:backdrop:last-child {
    border-radius: 0px 5px 5px 0px;
}

headerbar .linked button:only-child,
headerbar .linked button:disabled:only-child
headerbar .linked button:focus:only-child,
headerbar .linked button:backdrop:only-child {
    border-radius: 5px;
}

headerbar button:backdrop {
    border-width: 1px;
    border-radius: 5px;
    color: @theme_text_dark_color;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@theme_unfocused_bg_color, 1.05)),
                                     to   (shade(@theme_unfocused_bg_color, 0.85)));
}

headerbar button.default,
headerbar button:hover,
headerbar button:checked,
headerbar button:hover:active,
headerbar button:focus:hover:active,
headerbar button.text-button:hover:active,
headerbar button:checked:hover,
headerbar button:checked:hover:active,
headerbar button:hover:first-child,
headerbar button:checked:first-child,
headerbar button:hover:active:first-child,
headerbar button:checked:hover:first-child,
headerbar button:checked:hover:active:first-child,
headerbar button:hover:last-child,
headerbar button:checked:last-child,
headerbar button:hover:active:last-child,
headerbar button:checked:hover:last-child,
headerbar button:checked:hover:active:last-child,
headerbar button:hover:only-child,
headerbar button:checked:only-child,
headerbar button:hover:active:last-child,
headerbar button:checked:hover:only-child,
headerbar button:checked:hover:active:only-child,
headerbar .linked button:hover,
headerbar .linked button:checked,
headerbar .linked button:hover:active,
headerbar .linked button:checked:hover,
headerbar .linked button:checked:hover:active,
headerbar .linked button:hover:first-child,
headerbar .linked button:checked:first-child,
headerbar .linked button:hover:active:first-child,
headerbar .linked button:checked:hover:first-child,
headerbar .linked button:checked:hover:active:first-child,
headerbar .linked button:hover:last-child,
headerbar .linked button:checked:last-child,
headerbar .linked button:hover:active:last-child,
headerbar .linked button:checked:hover:last-child,
headerbar .linked button:checked:hover:active:last-child,
headerbar .linked button:hover:only-child,
headerbar .linked button:checked:only-child,
headerbar .linked button:hover:active:last-child,
headerbar .linked button:checked:hover:only-child,
headerbar .linked button:checked:hover:active:only-child {
    color: shade (@theme_selected_bg_color, 1.6);
    border-width: 1px;
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    border-top-color: shade(@button_raised_gradient_color_a, 0.50);
    border-bottom-color: shade(@button_raised_gradient_color_a, 0.50);
    border-right-color: shade(@button_raised_gradient_color_a, 0.50);
    border-left-color: shade(@button_raised_gradient_color_a, 0.50);
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

headerbar button:disabled,
headerbar button:disabled:last-child,
headerbar button:disabled:first-child,
headerbar .linked entry:disabled,
headerbar .linked button:disabled,
headerbar .linked button:disabled:last-child,
headerbar .linked button:disabled:first-child,
headerbar .linked entry:backdrop:disabled {
    color: mix (@menu_fg_dark_color, @menu_bg_dark_color, 0.4);
    background-image: none;
    background-color: @theme_bg_dark_color;
    border-color: @theme_button_border_dark;
    box-shadow: none;
    text-shadow: none;
    -gtk-icon-shadow: none;
    -gtk-icon-effect: dim;
}

headerbar > button:disabled {
    background-color: transparent;
    text-shadow: none;
    -gtk-icon-shadow: none;
}

headerbar.titlebar .linked button.image-button:disabled {
    box-shadow: none;
}

/* ie. gitg */
headerbar.titlebar button.default.text-button.suggested-action,
headerbar.titlebar button.default.text-button.suggested-action:focus {
    color: @theme_fg_dark_color;
}

headerbar.titlebar button.default.text-button.suggested-action:hover {
    color: shade (@theme_selected_bg_color, 1.6);
}

headerbar > button.text-button:hover,
headerbar > button.text-button:focus,
headerbar > button.text-button:focus:hover:active,
headerbar > button.text-button,
headerbar > button.text-button.radio,
headerbar > .linked > button.text-button,
headerbar > .linked > button.text-button:focus:hover:active,
headerbar > .linked > button.text-button.radio {
    padding: 4px 6px;
}

headerbar > button.image-button,
headerbar > button.image-button:focus,
headerbar > button.image-button:hover,
headerbar > button.image-button:backdrop {
    padding: 5px 5px 6px 5px;
}

headerbar > stackswitcher.linked.stack-switcher > button.text-button.radio {
    border-right-width: 0px;
    border-left-width:  0px;
    border-radius: 0px;
}

headerbar > stackswitcher.linked.stack-switcher > button.text-button.radio:first-child {
    border-radius: 5px 0 0 5px;
    border-width: 1px;
    border-right-width: 0px;
}

headerbar > stackswitcher.linked.stack-switcher > button.text-button.radio:last-child {
    border-radius: 0 5px 5px 0;
    border-width: 1px;
    border-left-width: 0px;
}

headerbar.titlebar > stackswitcher.linked.stack-switcher > button.text-button.radio.needs-attention >  label {
    background-color: transparent;
    color: @theme_dark_fg_color;
    border-radius: 3px;
    box-shadow: inset  0px  1px shade (@info_fg_color, 1.3),
                inset  1px  0px shade (@info_fg_color, 1.3),
                inset -1px  0px shade (@info_fg_color, 1.3),
                inset  0px -1px shade (@info_fg_color, 1.3);
}

headerbar title {
    font-size: 110%;
    font-weight: bold;
    color: @theme_text_dark_color;
}

headerbar .subtitle {
    font-size: 90%;
    color: @theme_text_dark_color;
}

headerbar toolitem separator,
headerbar separator,
headerbar separator:disabled,
headerbar paned > separator {
    border-color: alpha (shade(@theme_bg_dark_color, 0.2), 0.24);
    border-bottom-color: @theme_bg_dark_color;
    border-right-color:  @theme_bg_dark_color;
}

/*******
 * CSD *
 *******/

.tiled .titlebar {
    border-radius: 0;
}

.maximized .titlebar {
    border-radius: 0;
}

/* this is the default titlebar that is added by GTK
 * when client-side decorations are in use and the application
 * did not set a custom titlebar.
 */
.titlebar.default-decoration {
    border: none;
    box-shadow: none;
}

.titlebar .title {
    font-size: 100%;
    font-weight: bold;
    background: none;
    color: @theme_text_dark_color;
}

.titlebar button.titlebutton,
.titlebar button.titlebutton:first-child,
.titlebar button.titlebutton:last-child,
.titlebar button.titlebutton:only-child {
    -gtk-icon-shadow: 0px 1px @theme_shadow_dark_color;
    color: @wm_title;
    background: none;
    background-color: transparent;
    padding: 5px 5px 6px 5px;
    margin: 0px -3px 0px -3px;
    border-width: 1px;
    border-radius: 5px;
    border-color: transparent;
    border-style: solid;
    border-image: none;
    box-shadow: inset  0px  1px shade(@theme_bg_dark_color, 1.05),
                inset  1px  0px shade(@theme_bg_dark_color, 0.97),
                inset  0px -1px shade(@theme_bg_dark_color, 0.93),
                inset -1px  0px shade(@theme_bg_dark_color, 0.93);
}

.titlebar button.titlebutton:hover,
.titlebar button.titlebutton:focus:hover,
.titlebar button.titlebutton:focus:hover:active,
.titlebar button.titlebutton:checked,
.titlebar button.titlebutton:checked:focus {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    background-color: transparent;
    border-radius: 5px;
    border-width: 1px;
    border-color: transparent;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

.titlebar button.titlebutton:backdrop {
    background: none;
    color: @theme_text_dark_color;
    border-image: none;
    -gtk-icon-shadow: none;
}

/* Middle titlebar-button */
.titlebar .linked button.titlebutton,
.titlebar .linked button.titlebutton:focus,
.titlebar .linked button.titlebutton:disabled,
.titlebar .raised.linked button.titlebutton,
.titlebar .raised.linked button.titlebutton:focus,
.titlebar .raised.linked button.titlebutton:disabled {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_raised_gradient_color_b, 0.90)),
                                     to   (shade(@button_raised_gradient_color_a, 0.80)));
    color: @theme_fg_dark_color;
    border-width: 1px;
    border-right-width: 0px;
    border-left-width:  0px;
    border-radius: 0;
    padding: 5px 5px 6px 5px;
}

.titlebar .linked button.titlebutton:hover,
.titlebar .linked button.titlebutton:checked,
.titlebar .linked button.titlebutton:focus:hover:active,
.titlebar .linked button.titlebutton:checked:hover,
.titlebar .linked button.titlebutton:checked:focus:hover:active,
.titlebar .raised.linked button.titlebutton:hover,
.titlebar .raised.linked button.titlebutton:checked,
.titlebar .raised.linked button.titlebutton:focus:hover:active,
.titlebar .raised.linked button.titlebutton:checked:hover,
.titlebar .raised.linked button.titlebutton:checked:focus:hover:active {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    padding: 5px 5px 6px 5px;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
    color: @theme_fg_dark_color;
    border-width: 1px;
    border-right-width: 0px;
    border-left-width:  0px;
    border-radius: 0;
    padding: 5px 5px 6px 5px;
}

/* Leftmost titlebar-button */
.titlebar .linked button.titlebutton:first-child,
.titlebar .linked button.titlebutton:focus:first-child,
.titlebar .linked button.titlebutton:disabled:first-child,
.titlebar .raised.linked button.titlebutton:first-child,
.titlebar .raised.linked button.titlebutton:focus:first-child,
.titlebar .raised.linked button.titlebutton:disabled:first-child {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_raised_gradient_color_b, 0.90)),
                                     to   (shade(@button_raised_gradient_color_a, 0.80)));
    color: @theme_fg_dark_color;
    border-width: 1px;
    border-right-width: 0;
    border-radius: 5px;
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
    padding: 5px 5px 6px 5px;
}

.titlebar .linked button.titlebutton:hover:first-child,
.titlebar .linked button.titlebutton:checked:first-child,
.titlebar .linked button.titlebutton:focus:hover:active:first-child,
.titlebar .linked button.titlebutton:checked:hover:first-child,
.titlebar .linked button.titlebutton:checked:focus:hover:active:first-child,
.titlebar .raised.linked button.titlebutton:hover:first-child,
.titlebar .raised.linked button.titlebutton:checked:first-child,
.titlebar .raised.linked button.titlebutton:focus:hover:active:first-child,
.titlebar .raised.linked button.titlebutton:checked:hover:first-child,
.titlebar .raised.linked button.titlebutton:checked:focus:hover:active:first-child {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    padding: 5px 5px 6px 5px;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
    color: @theme_fg_dark_color;
    border-width: 1px;
    border-right-width: 0;
    border-radius: 5px;
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
    padding: 5px 5px 6px 5px;
}

/* rightmost titlebar-button */
.titlebar .linked button.titlebutton:last-child,
.titlebar .linked button.titlebutton:focus:last-child,
.titlebar .linked button.titlebutton:disabled:last-child,
.titlebar .raised.linked button.titlebutton:last-child,
.titlebar .raised.linked button.titlebutton:focus:last-child,
.titlebar .raised.linked button.titlebutton:disabled:last-child {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_raised_gradient_color_b, 0.90)),
                                     to   (shade(@button_raised_gradient_color_a, 0.80)));
    color: @theme_fg_dark_color;
    border-width: 1px;
    border-left-width: 0px;
    border-radius: 5px;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    padding: 5px 5px 6px 5px;
}

.titlebar .linked button.titlebutton:hover:last-child,
.titlebar .linked button.titlebutton:checked:last-child,
.titlebar .linked button.titlebutton:focus:hover:active:last-child,
.titlebar .linked button.titlebutton:checked:hover:last-child,
.titlebar .linked button.titlebutton:checked:focus:hover:active:last-child,
.titlebar .raised.linked button.titlebutton:hover:last-child,
.titlebar .raised.linked button.titlebutton:checked:last-child,
.titlebar .raised.linked button.titlebutton:focus:hover:active:last-child,
.titlebar .raised.linked button.titlebutton:checked:hover:last-child,
.titlebar .raised.linked button.titlebutton:checked:focus:hover:active:last-child {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    padding: 5px 5px 6px 5px;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
    color: @theme_fg_dark_color;
    border-width: 1px;
    border-left-width: 0px;
    border-radius: 5px;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    padding: 5px 5px 6px 5px;
}

/* Linked single titlebar-button */
.titlebar .linked button.titlebutton:only-child,
.titlebar .linked button.titlebutton:focus:only-child,
.titlebar .linked button.titlebutton:disabled:only-child,
.titlebar .raised.linked button.titlebutton:only-child,
.titlebar .raised.linked button.titlebutton:focus:only-child,
.titlebar .raised.linked button.titlebutton:disabled:only-child {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_raised_gradient_color_b, 0.90)),
                                     to   (shade(@button_raised_gradient_color_a, 0.80)));
    color: @theme_fg_dark_color;
    border-width: 1px;
    border-radius: 5px;
    padding: 5px 5px 6px 5px;
}

.titlebar .linked button.titlebutton:hover:only-child,
.titlebar .linked button.titlebutton:checked:only-child,
.titlebar .linked button.titlebutton:focus:hover:active:only-child,
.titlebar .linked button.titlebutton:checked:hover:only-child,
.titlebar .linked button.titlebutton:checked:focus:hover:active:only-child,
.titlebar .raised.linked button.titlebutton:hover:only-child,
.titlebar .raised.linked button.titlebutton:checked:only-child,
.titlebar .raised.linked button.titlebutton:focus:hover:active:only-child,
.titlebar .raised.linked button.titlebutton:checked:hover:only-child,
.titlebar .raised.linked button.titlebutton:checked:focus:hover:active:only-child {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@menu_bg_dark_color, 2.03)),
                                     to   (shade(@menu_bg_dark_color, 1.17)));
    padding: 5px 5px 6px 5px;
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
    color: @theme_fg_dark_color;
    border-width: 1px;
    border-radius: 5px;
    padding: 5px 5px 6px 5px;
}

/* workaround to avoid unwanted black frames if switching compositor on/off */
.background decoration  {
    box-shadow: none;
}

.background.csd decoration,
window.unified {
    border-color: darker(@theme_bg_dark_color);
    border-radius: 7px 7px 0 0;
    border-width: 1px;
    border-style: solid;
/*    background-color: @theme_bg_color; */
    box-shadow: 0 0 0 1px @wm_border, 0 2px 8px 3px @wm_shadow;
    /* this is used for the resize cursor area */
    margin: 10px;
}
 
/* workaround to avoid unwanted black frames if switching compositor on/off */
decoration:backdrop {
/*    background-color: @theme_bg_dark_color; */
/*    box-shadow: 0 0 0 1px shade(@wm_border,1.1), 0 2px 5px 1px @wm_shadow;*/
    box-shadow: none;
}

.tiled decoration {
    border-radius: 0;
/*    background-color: @theme_bg_color; */
}

.ssd decoration {
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.23);
}

.solid-csd decoration {
    border-radius: 0;
    margin: 1px;
    background-color: @wm_bg_a;
    border: solid 1px @wm_csd_solid_border_color;
    box-shadow: none;
}

/* workaround to avoid unwanted black frames if switching compositor on/off */
.csd.popup decoration {
    border-radius: 0;
    box-shadow: none;
}

messagedialog.csd decoration {
    border-radius: 7px;
    box-shadow: 0 1px 5px shade (@theme_selected_bg_color, 1.3);
}

/*********************
 * Spinner Animation *
 *********************/
/* This is could be CPU-intensive */

@keyframes spin {
	to { -gtk-icon-transform: rotate(1turn); }
}

spinner {
	background: none;
	opacity: 0;
	-gtk-icon-source: -gtk-icontheme("process-working-symbolic");
}

spinner:checked {
	opacity: 1;
	animation: spin 1s linear infinite;
}

spinner:checked:disabled {
	opacity: 0.5;
}

/************************
 * overshoot/undershoot *
 ************************/

/* displays at end of mouse scrolling */
overshoot.top {
    background-image: -gtk-gradient(radial,
                                    center top, 0,
                                    center top, 0.5,
                                    to(@overshoot_bg_color),
                                    to(rgba(137, 158, 179, 0))),
                      -gtk-gradient(radial,
                                    center top, 0,
                                    center top, 0.6,
                                    from(rgba(56, 73, 87, 0.17)),
                                    to(rgba(56, 73, 87, 0)));
    background-size: 100% 5%, 100% 100%;
    background-repeat: no-repeat;
    background-position: center top;
    background-color: transparent;
    border: none;
    box-shadow: none;
}

overshoot.top:backdrop {
    background-image: -gtk-gradient(radial,
                                    center top, 0,
                                    center top, 0.5,
                                    to(@overshoot_backdrop_bg_color),
                                    to(rgba(131, 137, 145, 0)));
    background-size: 100% 5%;
    background-repeat: no-repeat;
    background-position: center top;
    background-color: transparent;
    border: none;
    box-shadow: none;
}

overshoot.bottom {
    background-image: -gtk-gradient(radial,
                                    center bottom, 0,
                                    center bottom, 0.5,
                                    to(@overshoot_bg_color),
                                    to(rgba(137, 158, 179, 0))),
                      -gtk-gradient(radial,
                                    center bottom, 0,
                                    center bottom, 0.6,
                                    from(rgba(56, 73, 87, 0.17)),
                                    to(rgba(56, 73, 87, 0)));
    background-size: 100% 5%, 100% 100%;
    background-repeat: no-repeat;
    background-position: center bottom;
    background-color: transparent;
    border: none;
    box-shadow: none;
}

overshoot.bottom:backdrop {
    background-image: -gtk-gradient(radial,
                                    center bottom, 0,
                                    center bottom, 0.5,
                                    to(@overshoot_backdrop_bg_color),
                                    to(rgba(131, 137, 145, 0)));
    background-size: 100% 5%;
    background-repeat: no-repeat;
    background-position: center bottom;
    background-color: transparent;
    border: none;
    box-shadow: none;
}

overshoot.left {
    background-image: -gtk-gradient(radial,
                                    left center, 0,
                                    left center, 0.5,
                                    to(@overshoot_bg_color),
                                    to(rgba(137, 158, 179, 0))),
                      -gtk-gradient(radial,
                                    left center, 0,
                                    left center, 0.6,
                                    from(rgba(56, 73, 87, 0.07)),
                                    to(rgba(56, 73, 87, 0)));
    background-size: 5% 100%, 100% 100%;
    background-repeat: no-repeat;
    background-position: left center;
    background-color: transparent;
    border: none;
    box-shadow: none;
}

overshoot.left:backdrop {
    background-image: -gtk-gradient(radial,
                                    left center, 0,
                                    left center, 0.5,
                                    to(@overshoot_backdrop_bg_color),
                                    to(rgba(131, 137, 145, 0)));
    background-size: 5% 100%;
    background-repeat: no-repeat;
    background-position: left center;
    background-color: transparent;
    border: none;
    box-shadow: none;
}

overshoot.right {
    background-image: -gtk-gradient(radial,
                                    right center, 0,
                                    right center, 0.5,
                                    to(@overshoot_bg_color),
                                    to(rgba(137, 158, 179, 0))),
                      -gtk-gradient(radial,
                                    right center, 0,
                                    right center, 0.6,
                                    from(rgba(56, 73, 87, 0.07)),
                                    to(rgba(56, 73, 87, 0)));
    background-size: 5% 100%, 100% 100%;
    background-repeat: no-repeat;
    background-position: right center;
    background-color: transparent;
    border: none;
    box-shadow: none;
}

overshoot.right:backdrop {
    background-image: -gtk-gradient(radial,
                                    right center, 0,
                                    right center, 0.5,
                                    to(@overshoot_backdrop_bg_color),
                                    to(rgba(131, 137, 145, 0)));
    background-size: 5% 100%;
    background-repeat: no-repeat;
    background-position: right center;
    background-color: transparent;
    border: none;
    box-shadow: none;
}

/* result is disable undershoot */
undershoot.top {
    background-color: transparent;
    background-image: linear-gradient(to left,
                                      rgba(255, 255, 255, 0.2) 50%,
                                      rgba(0, 0, 0, 0.2) 50%);
    background-size: 10px 0px;
    background-repeat: repeat-x;
    background-origin: content-box;
    background-position: center top;
}

undershoot.bottom {
    background-color: transparent;
    background-image: linear-gradient(to left,
                                      rgba(255, 255, 255, 0.2) 50%,
                                      rgba(0, 0, 0, 0.2) 50%);
    background-size: 10px 0px;
    background-repeat: repeat-x;
    background-origin: content-box;
    background-position: center bottom;
}

undershoot.left {
    background-color: transparent;
    background-image: linear-gradient(to top,
                                      rgba(255, 255, 255, 0.2) 50%,
                                      rgba(0, 0, 0, 0.2) 50%);
    background-size: 0px 10px;
    background-repeat: repeat-y;
    background-origin: content-box;
    background-position: left center;
}

undershoot.right {
    background-color: transparent;
    background-image: linear-gradient(to top,
                                      rgba(255, 255, 255, 0.2) 50%,
                                      rgba(0, 0, 0, 0.2) 50%);
    background-size: 0px 10px;
    background-repeat: repeat-y;
    background-origin: content-box;
    background-position: right center;
}

/************
 * GtkStack *
 ************/

stack > .horizontal > .vertical > frame > border {
    background-color: shade (@theme_bg_color, 1.1);
    border-radius: 4px;
}

stacksidebar.sidebar,
stacksidebar.sidebar > scrolledwindow,
stacksidebar.sidebar > scrolledwindow > viewport.frame,
stacksidebar.sidebar > scrolledwindow > viewport.frame list {
    border-radius: 4px 0px 0px 4px;
}

stacksidebar.sidebar list row.activatable:hover {
    border-radius: 3px;
    border-style: none;
}

stack .linked.vertical entry {
    border-radius: 5px;
    border-style: solid;
    border-width: 1px 1px 0px 1px;
    box-shadow: inset  0px  2px alpha(#fff, 0.11),
                inset  2px  0px alpha(#fff, 0.09),
                inset -2px  0px alpha(#fff, 0.09),
                inset  0px -2px alpha(#fff, 0.09),
                inset  0px  1px alpha(shade(@button_border, 1.00), 0.70),
                inset  1px  0px alpha(shade(@button_border, 0.94), 0.80),
                inset -1px  0px alpha(shade(@button_border, 0.94), 0.70),
                inset  0px -1px alpha(shade(@button_border, 0.88), 0.90);
}

stack .vertical.linked > combobox:first-child > .horizontal.linked > button.combo:first-child,
stack .vertical.linked > combobox:first-child > .horizontal.linked > button.combo:hover:first-child,
stack .vertical.linked > combobox:first-child > .horizontal.linked > button.combo:focus:first-child,
stack .vertical.linked > combobox:first-child > .horizontal.linked > button.combo:focus:hover:first-child,
stack .vertical.linked > combobox:first-child > .horizontal.linked > button.combo:checked:first-child,
stack .vertical.linked > combobox:first-child > .horizontal.linked > button.combo:disabled:first-child {
    border-radius: 5px 5px 0 0;
    border-width: 1px;
    border-style: solid;
    border-color: shade(@notebook_border, 1.0);
    padding: 3px 5px;
    box-shadow: none;
}

stack .linked.vertical button:last-child,
stack .linked.vertical button:hover:last-child,
stack .linked.vertical button:focus:last-child,
stack .linked.vertical button:focus:hover:last-child,
stack .linked.vertical button:checked:last-child,
stack .linked.vertical button:disabled:last-child {
    border-radius: 0 0 5px 5px;
    border-top-width: 0;
    border-style: solid;
    border-color: shade(@notebook_border, 1.0);
    padding: 5px 5px;
    box-shadow: none;
}

stack .linked.vertical spinbutton.horizontal {
    border-style: none;
}

stack .linked.vertical spinbutton.horizontal entry,
stack .linked.vertical spinbutton.horizontal entry:hover,
stack .linked.vertical spinbutton.horizontal entry:focus,
stack .linked.vertical spinbutton.horizontal entry:active,
stack .linked.vertical spinbutton.horizontal entry:checked,
stack .linked.vertical spinbutton.horizontal entry:disabled {
    border-radius: 0px;
    border-width: 0px 0px 1px 1px;
    border-style: solid;
    border-color: shade(@notebook_border, 1.0);
    padding: 6px;
}

stack .linked.vertical spinbutton.horizontal entry,
stack .linked.vertical spinbutton.horizontal entry:focus,
stack .linked.vertical spinbutton.horizontal entry:active {
    box-shadow: none;
}

stack .linked.vertical spinbutton.horizontal button,
stack .linked.vertical spinbutton.horizontal button:last-child,
stack .linked.vertical spinbutton.horizontal button:hover,
stack .linked.vertical spinbutton.horizontal button:hover:last-child,
stack .linked.vertical spinbutton.horizontal button:hover:active,
stack .linked.vertical spinbutton.horizontal button:hover:active:last-child,
stack .linked.vertical spinbutton.horizontal button:focus,
stack .linked.vertical spinbutton.horizontal button:focus:last-child,
stack .linked.vertical spinbutton.horizontal button:focus:hover,
stack .linked.vertical spinbutton.horizontal button:focus:hover:last-child,
stack .linked.vertical spinbutton.horizontal button:focus:hover:active,
stack .linked.vertical spinbutton.horizontal button:focus:hover:active:last-child,
stack .linked.vertical spinbutton.horizontal button:active,
stack .linked.vertical spinbutton.horizontal button:active:last-child,
stack .linked.vertical spinbutton.horizontal button:disabled,
stack .linked.vertical spinbutton.horizontal button:disabled:last-child {
    border-radius: 0px;
    border-width: 0px;
    border-style: none;
    padding: 0px 6px;
    background-color: transparent;
    background-image: none;
    border-image: none;
    box-shadow: none;
    padding: 4px 6px;
}

stack .linked.vertical spinbutton.horizontal button:hover,
stack .linked.vertical spinbutton.horizontal button:focus:hover,
stack .linked.vertical spinbutton.horizontal button:hover:last-child,
stack .linked.vertical spinbutton.horizontal button:focus:hover:last-child {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade(@button_gradient1, 1.03)),
                                     color-stop (0.50, shade(@button_gradient3, 1.03)),
                                     to   (shade(@button_gradient4, 1.01)));
}

stack .linked.vertical spinbutton.horizontal button:active,
stack .linked.vertical spinbutton.horizontal button:active:last-child {
    background-image: -gtk-gradient (linear,
                                     left top, left bottom,
                                     from (shade (@theme_bg_color, 1.20)),
                                     color-stop (0.50, shade (@theme_bg_color, 1.00)),
                                     color-stop (0.50, shade (@theme_bg_color, 0.99)),
                                     to (shade (@theme_bg_color, 0.80)));
}

stack .linked.vertical spinbutton.horizontal button,
stack .linked.vertical spinbutton.horizontal button:focus,
stack .linked.vertical spinbutton.horizontal button:disabled {
    border-width: 0px 1px 1px 1px;
    border-style: solid;
    border-color: shade(@notebook_border, 1.0);
}

stack .linked.vertical spinbutton.horizontal button:last-child,
stack .linked.vertical spinbutton.horizontal button:focus:last-child,
stack .linked.vertical spinbutton.horizontal button:disabled:last-child {
    border-width: 0px 1px 1px 0px;
    border-style: solid;
    border-color: shade(@notebook_border, 1.0);
}

stack .linked.vertical spinbutton.horizontal button:active,
stack .linked.vertical spinbutton.horizontal button:hover,
stack .linked.vertical spinbutton.horizontal button:focus:hover {
    border-width: 0px 1px 1px 1px;
    border-style: solid;
    border-color: shade(@button_border_active, 1.0);
}

stack .linked.vertical spinbutton.horizontal button:active:last-child,
stack .linked.vertical spinbutton.horizontal button:hover:last-child,
stack .linked.vertical spinbutton.horizontal button:focus:hover:last-child {
    border-width: 0px 1px 1px 0px;
    border-style: solid;
    border-color: shade(@button_border_active, 1.0);
}

stack .linked.vertical spinbutton.horizontal button:hover,
stack .linked.vertical spinbutton.horizontal button:focus:hover,
stack .linked.vertical spinbutton.horizontal button:active,
stack .linked.vertical spinbutton.horizontal button:hover:last-child,
stack .linked.vertical spinbutton.horizontal button:focus:hover:last-child,
stack .linked.vertical spinbutton.horizontal button:active:last-child {
    box-shadow: inset  0px  1px shade (@theme_selected_bg_color, 1.3),
                inset  1px  0px shade (@theme_selected_bg_color, 1.3),
                inset -1px  0px shade (@theme_selected_bg_color, 1.3),
                inset  0px -1px shade (@theme_selected_bg_color, 1.3);
}

/****************
 * print dialog *
 ****************/

printdialog.background .vertical.view.dialog-vbox {
    background-color: shade (@theme_bg_color, 1.0);
}

printdialog.background notebook {
    border-width: 0px 1px 1px 1px;
    border-radius: 0px 0px 4px 4px;
}

printdialog.background notebook.header {
    border-radius: 0px;
}

printdialog.background notebook tab label {
    color: mix (@theme_fg_color, @theme_bg_color, 0.40);
    font-weight: normal;
}

printdialog.background notebook .prelight-page,
printdialog.background notebook .prelight-page label {
    color: mix (@theme_fg_color, @theme_bg_color, 0.15);
}

printdialog.background notebook .active-page,
notebook tab .active-page label {
    color: @theme_fg_color;
}

printdialog.background notebook tab.top:active,
printdialog.background notebook tab.top:hover:active {
    background-image: linear-gradient(to bottom,
                                      shade(@theme_bg_color, 1.18),
                                      shade(@theme_bg_color, 1.1));
    border-radius: 4px 4px 0 0;
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: @borders;
    box-shadow: none;
}

printdialog.background notebook tab.top:hover {
    background-image: linear-gradient(to bottom,
                                      alpha(@theme_base_color, 0.0),
                                      alpha(@theme_base_color, 0.3));
    border-radius: 4px 4px 0 0;
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: @borders;
    box-shadow: none;
}

printdialog.background notebook tab.top:active {
    border-bottom-color: @notebook_active_tab_border;
}

printdialog.background notebook button.text-button {
    background-color: transparent;
}

printdialog.background .vertical.view.dialog-vbox notebook button.combo {
    padding: 4px;
    border-radius: 4px;
}

printdialog.background paper {
    border-style: solid;
    border-width: 0.9px;
    border-radius: 0px;
    border-color: @notebook_border;
    background-color: @theme_base_color;
}

/******************
 * GtkFileChooser *
 ******************/

filechooser.vertical paned > separator {
    min-width: 3px;
    min-height: 3px;
    border-color: transparent;
}

filechooser paned.horizontal box.vertical {
    border-color: @notebook_border;
    border-style: solid;
    border-width: 1px;
}

filechooser #pathbarbox {
    background-color: shade(@theme_bg_color, 1.07);
    border-width: 0px 0px 1px 0px;
}

/* bg color srollbar junction */
filechooser paned.horizontal box.vertical box.horizontal .view box.vertical {
    background-color: shade(@theme_bg_color, 1.07);
    border-style: none;
}

filechooser placessidebar.sidebar {
    border-color: @notebook_border;
    border-style: solid;
    border-width: 1px 1px 1px 0px;
}

/*****************
 * Color Chooser *
 *****************/

button.color colorswatch.activatable {
    border-radius: 3px;
}

colorchooser {
    border-style: solid;
    border-color: @notebook_border;
    border-width: 1px;
    border-radius: 4px;
    background-color: shade (@theme_bg_color, 1.1);
    color: @theme_fg_color;
    box-shadow: none;
}

colorchooser box.vertical {
    padding: 6px;
}

colorswatch,
colorswatch:selected {
    border-width: 1px;
    border-style: solid;
    border-radius: 3px;
    border-color: @notebook_border;
    box-shadow: inset 0 2px alpha(black, 0.07),
                inset 1px 1px alpha(black, 0.07);
    background-color: transparent;
    background-clip: border-box;
}

colorswatch:hover {
    border-color: alpha(black, 0.45);
}

colorswatch.color-dark:hover {
    background-image: linear-gradient(to bottom,
                                      alpha(white, 0) 40%,
                                      alpha(white, 0.3));
}

colorswatch.color-light:hover {
    background-image: linear-gradient(to top,
                                      alpha(black, 0) 40%,
                                      alpha(black, 0.1));
}

colorswatch.color-light:selected:hover {
    background-image: none;
}

colorswatch {
    border-radius: 6px;
}

colorchooser #add-color-button {
    background-clip: padding-box;
    border-color: mix(@borders, @theme_bg_color, 0.3);
    background-color: mix(@borders, @theme_bg_color, 0.8);
}

colorchooser #add-color-button:hover {
    border-color: @borders;
    background-color: @borders;
    color: @theme_base_color;
}

.color-active-badge,
.color-active-badge:selected {
    border-style: solid;
    border-width: 2px;
    background-color: transparent;
}

.color-active-badge.color-light,
.color-active-badge.color-light:hover {
    border-color: #444444;
    color: #444444;
}

.color-active-badge.color-dark,
.color-active-badge.color-dark:hover {
    border-color: #cccccc;
    color: #cccccc;
}

colorchooser box.horizontal colorswatch {
    border-radius: 6px;
}

colorchooser box.horizontal colorswatch.color-dark:hover {
    background-image: none;
    border-color: alpha(black, 0.3);
}

/* color mix window */
colorchooser box.horizontal box.horizontal grid.horizontal{
    padding: 6px;
}

/*****************
 * Miscellaneous *
 *****************/

.floating-bar {
    background-image: linear-gradient(to bottom, 
                                      @theme_bg_color 20%, 
                                      shade(@theme_bg_color, 0.95));
    background-color: @theme_bg_color;
    border-color: shade(@theme_bg_color, 0.85);
    color: @theme_text_color;
    text-shadow: none;
    border-radius: 3px;
    border-width: 1px;
    border-style: solid;
    box-shadow: inset 1px 1px alpha(#fff, 0.07), -1px -1px alpha(#fff, 0.07);
}

.floating-bar.top {

    border-top-width: 0;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
}

.floating-bar.right {
    border-right-width: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.floating-bar.bottom {
    border-bottom-width: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.floating-bar.left {
    border-left-width: 0;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.floating-bar.bottom.right {
    box-shadow: inset 1px 1px alpha(#fff, 0.07);
}

.floating-bar.bottom.left {
    box-shadow: inset -1px 1px alpha(#fff, 0.07);
}

/***********
 * FlowBox *
 ***********/

flowbox {
    background-color: shade (@theme_bg_color, 1.1);
    -gtk-icon-style: regular;
    border-style: solid;
    border-color: alpha(@frame_color, 0.6);
    border-width: 1px 1px 1px 1px;
    border-radius: 3px;
    padding: 8px;
}

flowbox > flowboxchild,
flowbox > flowboxchild:focus,
flowbox > flowboxchild:backdrop {
    border-style: solid;
    border-width: 2px;
    border-radius: 3px;
    border-color: transparent;
    color: @theme_text_color;

}

flowbox > flowboxchild:selected,
flowbox > flowboxchild:selected:focus,
flowbox > flowboxchild:selected:hover,
flowbox > flowboxchild:selected:focus:hover {
    border-style: solid;
    border-width: 2px;
    border-radius: 3px;
    border-color: alpha(@theme_selected_bg_color, 0.75);
    color: @theme_text_color;
}

