@define-color bg_color -gtk-win32-color(button, btnface); @define-color text_color -gtk-win32-color(button, btntext); @define-color selected_bg_color -gtk-win32-color(button, highlight); @define-color selected_fg_color -gtk-win32-color(button, highlighttext); @define-color info_fg_color rgb(181, 171, 156); @define-color info_bg_color rgb(252, 252, 189); @define-color warning_fg_color rgb(173, 120, 41); @define-color warning_bg_color rgb(250, 173, 61); @define-color question_fg_color rgb(97, 122, 214); @define-color question_bg_color rgb(138, 173, 212); @define-color error_fg_color rgb(166, 38, 38); @define-color error_bg_color rgb(237, 54, 54); @define-color app_notification_a #aeaea4; @define-color app_notification_b #d1d1cb; @define-color app_notification_c #d8d8d3; @define-color app_notification_border #949486; @define-color primary_toolbarbutton_text_shadow alpha(black, 0.1); .background, viewport { /* XXX: This should be the default, but isn't?! */ font-family: "Segoe UI", Sans; font-size: 9pt; background-color: -gtk-win32-color(window, btnface); color: -gtk-win32-color(window, btntext); } * { -GtkScrolledWindow-scrollbars-spacing: 0; } :link { color: -gtk-win32-color(button, hotlight); } :visited { color: -gtk-win32-color(button, hotlight); } *:disabled { color: -gtk-win32-color(button, graytext); } *:selected, *:selected:focus { background-color: @selected_bg_color; color: @selected_fg_color; } .info { background-color: @info_bg_color; color: @info_fg_color; } .warning { background-color: @warning_bg_color; color: @warning_fg_color; } .question { background-color: @question_bg_color; color: @question_fg_color; } .error { background-color: @error_bg_color; color: @error_fg_color; } .highlight { background-color: @selected_bg_color; color: @selected_fg_color; } .light-area-focus { color: #000; } .dark-area-focus { color: #fff; } scrolledwindow.frame { border-style: solid; border-width: 2px; border-image: -gtk-win32-theme-part(listview, 5, 1) 2 2 2 2 stretch; } .view { border-width: 0; border-radius: 0; background-color: -gtk-win32-color(edit, window); color: @text_color; } .view:selected { background-color: shade(-gtk-win32-color(edit, window), 0.9); color: @fg_color; } .view:selected:focus { background-color: @selected_bg_color; color: @selected_fg_color; } tooltip, tooltip.background { background-color: -gtk-win32-color(tooltip, infobk); background-image: -gtk-win32-theme-part(tooltip, 1, 1); color: -gtk-win32-color(button, infotext); padding: 2px; } assistant .sidebar .highlight { font-weight: bold; color: -gtk-win32-color(button, captiontext); } /* checkmarks */ check { -gtk-icon-source: -gtk-win32-theme-part(button, 3, 1); min-width: -gtk-win32-part-width(button, 3, 1); min-height: -gtk-win32-part-height(button, 3, 1); } check:hover { -gtk-icon-source: -gtk-win32-theme-part(button, 3, 2); min-width: -gtk-win32-part-width(button, 3, 2); min-height: -gtk-win32-part-height(button, 3, 2); } check:active { -gtk-icon-source: -gtk-win32-theme-part(button, 3, 3); min-width: -gtk-win32-part-width(button, 3, 3); min-height: -gtk-win32-part-height(button, 3, 3); } check:disabled { -gtk-icon-source: -gtk-win32-theme-part(button, 3, 4); min-width: -gtk-win32-part-width(button, 3, 4); min-height: -gtk-win32-part-height(button, 3, 4); } check:checked { -gtk-icon-source: -gtk-win32-theme-part(button, 3, 5); min-width: -gtk-win32-part-width(button, 3, 5); min-height: -gtk-win32-part-height(button, 3, 5); } check:checked:hover { -gtk-icon-source: -gtk-win32-theme-part(button, 3, 6); min-width: -gtk-win32-part-width(button, 3, 6); min-height: -gtk-win32-part-height(button, 3, 6); } check:checked:active { -gtk-icon-source: -gtk-win32-theme-part(button, 3, 7); min-width: -gtk-win32-part-width(button, 3, 7); min-height: -gtk-win32-part-height(button, 3, 7); } check:checked:disabled { -gtk-icon-source: -gtk-win32-theme-part(button, 3, 8); min-width: -gtk-win32-part-width(button, 3, 8); min-height: -gtk-win32-part-height(button, 3, 8); } check:indeterminate { -gtk-icon-source: -gtk-win32-theme-part(button, 3, 9); min-width: -gtk-win32-part-width(button, 3, 9); min-height: -gtk-win32-part-height(button, 3, 9); } check:indeterminate:hover { -gtk-icon-source: -gtk-win32-theme-part(button, 3, 10); min-width: -gtk-win32-part-width(button, 3, 10); min-height: -gtk-win32-part-height(button, 3, 10); } check:indeterminate:active { -gtk-icon-source: -gtk-win32-theme-part(button, 3, 11); min-width: -gtk-win32-part-width(button, 3, 11); min-height: -gtk-win32-part-height(button, 3, 11); } check:indeterminate:disabled { -gtk-icon-source: -gtk-win32-theme-part(button, 3, 12); min-width: -gtk-win32-part-width(button, 3, 12); min-height: -gtk-win32-part-height(button, 3, 12); } /* radiomarks */ radio { -gtk-icon-source: -gtk-win32-theme-part(button, 2, 1); min-width: -gtk-win32-part-width(button, 2, 1); min-height: -gtk-win32-part-height(button, 2, 1); } radio:hover { -gtk-icon-source: -gtk-win32-theme-part(button, 2, 2); min-width: -gtk-win32-part-width(button, 2, 2); min-height: -gtk-win32-part-height(button, 2, 2); } radio:active { -gtk-icon-source: -gtk-win32-theme-part(button, 2, 3); min-width: -gtk-win32-part-width(button, 2, 3); min-height: -gtk-win32-part-height(button, 2, 3); } radio:disabled { -gtk-icon-source: -gtk-win32-theme-part(button, 2, 4); min-width: -gtk-win32-part-width(button, 2, 4); min-height: -gtk-win32-part-height(button, 2, 4); } radio:checked { -gtk-icon-source: -gtk-win32-theme-part(button, 2, 5); min-width: -gtk-win32-part-width(button, 2, 5); min-height: -gtk-win32-part-height(button, 2, 5); } radio:checked:hover { -gtk-icon-source: -gtk-win32-theme-part(button, 2, 6); min-width: -gtk-win32-part-width(button, 2, 6); min-height: -gtk-win32-part-height(button, 2, 6); } radio:checked:active { -gtk-icon-source: -gtk-win32-theme-part(button, 2, 7); min-width: -gtk-win32-part-width(button, 2, 7); min-height: -gtk-win32-part-height(button, 2, 7); } radio:checked:disabled { -gtk-icon-source: -gtk-win32-theme-part(button, 2, 8); min-width: -gtk-win32-part-width(button, 2, 8); min-height: -gtk-win32-part-height(button, 2, 8); } radio:indeterminate { -gtk-icon-source: cross-fade(30% -gtk-win32-theme-part(button, 2, 5), -gtk-win32-theme-part(button, 2, 1)); min-width: -gtk-win32-part-width(button, 2, 9); min-height: -gtk-win32-part-height(button, 2, 9); } radio:indeterminate:hover { -gtk-icon-source: cross-fade(30% -gtk-win32-theme-part(button, 2, 6), -gtk-win32-theme-part(button, 2, 2)); min-width: -gtk-win32-part-width(button, 2, 2); min-height: -gtk-win32-part-height(button, 2, 2); } radio:indeterminate:active { -gtk-icon-source: cross-fade(30% -gtk-win32-theme-part(button, 2, 7), -gtk-win32-theme-part(button, 2, 3)); min-width: -gtk-win32-part-width(button, 2, 3); min-height: -gtk-win32-part-height(button, 2, 3); } radio:indeterminate:disabled { -gtk-icon-source: cross-fade(30% -gtk-win32-theme-part(button, 2, 8), -gtk-win32-theme-part(button, 2, 4)); min-width: -gtk-win32-part-width(button, 2, 4); min-height: -gtk-win32-part-height(button, 2, 4); } /* Buttons */ button { background-image: -gtk-win32-theme-part(button, 1, 1); padding-top: calc(1px + -gtk-win32-part-border-top(button, 1, 1)); padding-right: calc(1px + -gtk-win32-part-border-right(button, 1, 1)); padding-bottom: calc(1px + -gtk-win32-part-border-bottom(button, 1, 1)); padding-left: calc(1px + -gtk-win32-part-border-left(button, 1, 1)); } button.default { background-image: -gtk-win32-theme-part(button, 1, 5); } button:hover { background-image: -gtk-win32-theme-part(button, 1, 2); } button:active, button:checked { background-image: -gtk-win32-theme-part(button, 1, 3); } /* XXX: Figure out how to handle disabled active togglebuttons */ button:disabled { background-image: -gtk-win32-theme-part(button, 1, 4); } /* checkbuttons */ /* This is the magic spacing that's hardcoded in Wine */ checkbutton:dir(ltr) check, radiobutton:dir(ltr) radio { margin-right: 6px; } checkbutton:dir(rtl) check, radiobutton:dir(rtl) radio { margin-left: 6px; } /* Frame */ frame { padding: 0px 10px; } frame > border { margin: 0px -10px; background-image: -gtk-win32-theme-part(button, 4, 1); padding-top: -gtk-win32-part-border-top(button, 4, 1); padding-right: -gtk-win32-part-border-right(button, 4, 1); padding-bottom: -gtk-win32-part-border-bottom(button, 4, 1); padding-left: -gtk-win32-part-border-left(button, 4, 1); } frame:disabled > border { margin: 0px -10px; background-image: -gtk-win32-theme-part(button, 4, 2); padding-top: -gtk-win32-part-border-top(button, 4, 2); padding-right: -gtk-win32-part-border-right(button, 4, 2); padding-bottom: -gtk-win32-part-border-bottom(button, 4, 2); padding-left: -gtk-win32-part-border-left(button, 4, 2); } frame > :not(border) { margin: 0px 2px; } /* Notebooks */ notebook > stack { background-image: -gtk-win32-theme-part(tab, 9, 1); } notebook > header > tabs { padding: 2px; } notebook > header.top > tabs { padding-bottom: 0px; } notebook > header.right > tabs { padding-left: 0px; } notebook > header.bottom > tabs { padding-top: 0px; } notebook > header.left > tabs { padding-right: 0px; } notebook > header > tabs > tab { background-image: -gtk-win32-theme-part(tab, 1, 1); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 1, 1)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 1, 1)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 1, 1)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 1, 1)); } notebook > header > tabs > tab:hover { background-image: -gtk-win32-theme-part(tab, 1, 2); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 1, 2)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 1, 2)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 1, 2)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 1, 2)); } notebook > header > tabs > tab:focus { background-image: -gtk-win32-theme-part(tab, 1, 5); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 1, 5)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 1, 5)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 1, 5)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 1, 5)); } notebook > header > tabs > tab:disabled { background-image: -gtk-win32-theme-part(tab, 1, 4); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 1, 4)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 1, 4)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 1, 4)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 1, 4)); } notebook > header > tabs > tab:checked { background-image: -gtk-win32-theme-part(tab, 5, 3); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 5, 3)); padding-right: calc(5px + -gtk-win32-part-border-right(tab, 5, 3)); padding-bottom: calc(4px + -gtk-win32-part-border-bottom(tab, 5, 3)); padding-left: calc(5px + -gtk-win32-part-border-left(tab, 5, 3)); margin: -2px; } notebook > header > tabs > tab:first-child { background-image: -gtk-win32-theme-part(tab, 2, 1); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 2, 1)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 2, 1)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 2, 1)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 2, 1)); } notebook > header > tabs > tab:first-child:hover { background-image: -gtk-win32-theme-part(tab, 2, 2); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 2, 2)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 2, 2)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 2, 2)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 2, 2)); } notebook > header > tabs > tab:first-child:focus { background-image: -gtk-win32-theme-part(tab, 1, 5); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 2, 5)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 2, 5)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 2, 5)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 2, 5)); } notebook > header > tabs > tab:first-child:disabled { background-image: -gtk-win32-theme-part(tab, 1, 4); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 2, 4)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 2, 4)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 2, 4)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 2, 4)); } notebook > header > tabs > tab:first-child:checked { background-image: -gtk-win32-theme-part(tab, 6, 3); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 6, 3)); padding-right: calc(5px + -gtk-win32-part-border-right(tab, 6, 3)); padding-bottom: calc(4px + -gtk-win32-part-border-bottom(tab, 6, 3)); padding-left: calc(5px + -gtk-win32-part-border-left(tab, 6, 3)); margin: -2px; } notebook > header > tabs > tab:last-child { background-image: -gtk-win32-theme-part(tab, 3, 1); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 3, 1)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 3, 1)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 3, 1)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 3, 1)); } notebook > header > tabs > tab:last-child:hover { background-image: -gtk-win32-theme-part(tab, 3, 2); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 3, 2)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 3, 2)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 3, 2)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 3, 2)); } notebook > header > tabs > tab:last-child:focus { background-image: -gtk-win32-theme-part(tab, 3, 5); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 3, 5)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 3, 5)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 3, 5)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 3, 5)); } notebook > header > tabs > tab:last-child:disabled { background-image: -gtk-win32-theme-part(tab, 3, 4); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 3, 4)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 3, 4)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 3, 4)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 3, 4)); } notebook > header > tabs > tab:last-child:checked { background-image: -gtk-win32-theme-part(tab, 7, 3); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 7, 3)); padding-right: calc(5px + -gtk-win32-part-border-right(tab, 7, 3)); padding-bottom: calc(4px + -gtk-win32-part-border-bottom(tab, 7, 3)); padding-left: calc(5px + -gtk-win32-part-border-left(tab, 7, 3)); margin: -2px; } notebook > header > tabs > tab:only-child { background-image: -gtk-win32-theme-part(tab, 4, 1); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 4, 1)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 4, 1)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 4, 1)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 4, 1)); } notebook > header > tabs > tab:only-child:hover { background-image: -gtk-win32-theme-part(tab, 4, 2); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 4, 2)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 4, 2)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 4, 2)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 4, 2)); } notebook > header > tabs > tab:only-child:focus { background-image: -gtk-win32-theme-part(tab, 4, 5); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 4, 5)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 4, 5)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 4, 5)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 4, 5)); } notebook > header > tabs > tab:only-child:disabled { background-image: -gtk-win32-theme-part(tab, 4, 4); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 4, 4)); padding-right: calc(3px + -gtk-win32-part-border-right(tab, 4, 4)); padding-bottom: calc(2px + -gtk-win32-part-border-bottom(tab, 4, 4)); padding-left: calc(3px + -gtk-win32-part-border-left(tab, 4, 4)); } notebook > header > tabs > tab:only-child:checked { background-image: -gtk-win32-theme-part(tab, 8, 3); padding-top: calc(1px + -gtk-win32-part-border-top(tab, 8, 3)); padding-right: calc(5px + -gtk-win32-part-border-right(tab, 8, 3)); padding-bottom: calc(4px + -gtk-win32-part-border-bottom(tab, 8, 3)); padding-left: calc(5px + -gtk-win32-part-border-left(tab, 8, 3)); margin: -2px; } /* Scrollbars */ /* TODO: Win32 has different concept for upper and lower trough, we don't use this atm */ scrollbar { background-color: transparent; } scrollbar.horizontal button { min-width : -gtk-win32-size(scrollbar, cxhscroll); min-height : -gtk-win32-size(scrollbar, cyhscroll); } scrollbar.vertical button { min-width : -gtk-win32-size(scrollbar, cxvscroll); min-height : -gtk-win32-size(scrollbar, cyvscroll); } scrollbar button, scrollbar button:disabled { color: transparent; margin: 0; padding: 0; } /* up button */ scrollbar.vertical button.up { background-image: -gtk-win32-theme-part(scrollbar, 1 , 1); } scrollbar.vertical:hover button.up { background-image: -gtk-win32-theme-part(scrollbar, 1 , 17); } scrollbar.vertical:hover button.up:hover { background-image: -gtk-win32-theme-part(scrollbar, 1 , 2); } scrollbar.vertical:hover button.up:active { background-image: -gtk-win32-theme-part(scrollbar, 1 , 3); } scrollbar.vertical:hover button.up:disabled { background-image: -gtk-win32-theme-part(scrollbar, 1 , 4); } /* down button */ scrollbar.vertical button.down { background-image: -gtk-win32-theme-part(scrollbar, 1 , 5); } scrollbar.vertical:hover button.down { background-image: -gtk-win32-theme-part(scrollbar, 1 , 18); } scrollbar.vertical:hover button.down:hover { background-image: -gtk-win32-theme-part(scrollbar, 1 , 6); } scrollbar.vertical:hover button.down:active { background-image: -gtk-win32-theme-part(scrollbar, 1 , 7); } scrollbar.vertical:hover button.down:disabled { background-image: -gtk-win32-theme-part(scrollbar, 1 , 8); } /* left button */ scrollbar.horizontal button.up { background-image: -gtk-win32-theme-part(scrollbar, 1 , 9); } scrollbar.horizontal:hover button.up { background-image: -gtk-win32-theme-part(scrollbar, 1 , 19); } scrollbar.horizontal:hover button.up:hover { background-image: -gtk-win32-theme-part(scrollbar, 1 , 10); } scrollbar.horizontal:hover button.up:active { background-image: -gtk-win32-theme-part(scrollbar, 1 , 11); } scrollbar.horizontal:hover button.up:disabled { background-image: -gtk-win32-theme-part(scrollbar, 1 , 12); } /* right button */ scrollbar.horizontal button.down { background-image: -gtk-win32-theme-part(scrollbar, 1 , 13); } scrollbar.horizontal:hover button.down { background-image: -gtk-win32-theme-part(scrollbar, 1 , 20); } scrollbar.horizontal:hover button.down:hover { background-image: -gtk-win32-theme-part(scrollbar, 1 , 14); } scrollbar.horizontal:hover button.down:active { background-image: -gtk-win32-theme-part(scrollbar, 1 , 16); } scrollbar.horizontal:hover button.down:disabled { background-image: -gtk-win32-theme-part(scrollbar, 1 , 17); } scrollbar trough { border-width: 0; background-image: -gtk-win32-theme-part(scrollbar, 6, 1); } scrollbar trough.vertical { border-width: 0; background-image: -gtk-win32-theme-part(scrollbar, 2, 1, over(6, 1)); } scrollbar.horizontal slider { min-height: -gtk-win32-size(scrollbar, cyhscroll); min-width: -gtk-win32-size(scrollbar, cxhthumb); } scrollbar.vertical slider { min-width: -gtk-win32-size(scrollbar, cxvscroll); min-height: -gtk-win32-size(scrollbar, cyvthumb); } scrollbar slider { border-width: 0; background-image: -gtk-win32-theme-part(scrollbar, 2, 1, over(8, 1)); } scrollbar slider:hover { background-image: -gtk-win32-theme-part(scrollbar, 2, 2, over(8, 2)); } scrollbar slider:active { background-image: -gtk-win32-theme-part(scrollbar, 2, 3, over(8, 3)); } scrollbar slider:disabled { /* There's a theme part for "disabled slider", but the only app observed to have a disabled scrollbar (Notepad) does not draw its slider at all when scrollbar is disabled. */ background-image: none; background-color: transparent; } scrollbar.vertical slider { background-image: -gtk-win32-theme-part(scrollbar, 3, 1, over(9, 1)); } scrollbar.vertical slider:hover { background-image: -gtk-win32-theme-part(scrollbar, 3, 2, over(9, 2)); } scrollbar.vertical slider:active { background-image: -gtk-win32-theme-part(scrollbar, 3, 3, over(9, 3)); } scrollbar.vertical slider:disabled { background-image: none; background-color: transparent; } /* Entry */ textview.view, entry { background-image: -gtk-win32-theme-part(edit, 1, 1); /* The 1em/3 is the "margin" that Windows uses. I'm pretty sure that's the "ABC width" of the font. But we don't get those fancy things in CSS. */ padding: -gtk-win32-size(edit, cyedge) calc(-gtk-win32-size(edit, cxedge) + 1em/3); } textview.view:focus, entry:focus { background-image: -gtk-win32-theme-part(edit, 1, 3); } textview.view:disabled, entry:disabled { background-image: -gtk-win32-theme-part(edit, 1, 4); color: -gtk-win32-color(edit, graytext); } selection { background: -gtk-win32-color(edit, highlight); color: -gtk-win32-color(edit, highlighttext); } entry.flat { padding: 0px; background-image: -gtk-win32-theme-part(edit, 3, 1); } entry.flat:focus { background-image: -gtk-win32-theme-part(edit, 3, 3); } entry.flat:disabled { background-image: -gtk-win32-theme-part(edit, 3, 4); color: -gtk-win32-color(edit, graytext); } /* Spinbutton (horizontal) */ spinbutton.horizontal { padding: 2px 1px; background-image: -gtk-win32-theme-part(edit, 1, 1); } spinbutton.horizontal:focus { background-image: -gtk-win32-theme-part(edit, 1, 3); } spinbutton.horizontal:disabled { background-image: -gtk-win32-theme-part(edit, 1, 4); } spinbutton.horizontal entry { all: unset; padding: 0px calc(1em/3); } spinbutton.horizontal button { all: unset; color: transparent; min-width: 15px; min-height: 9px; background-size: 15px 9px; background-repeat: no-repeat; } spinbutton.horizontal button.down { background-image: -gtk-win32-theme-part(spin, 2, 1); background-position: top center; padding-left: 1px; margin-left: -1px; margin-top: 8px; margin-bottom: -8px; margin-right: -1px; } spinbutton.horizontal button.up { background-image: -gtk-win32-theme-part(spin, 1, 1); background-position: bottom center; margin-top: -8px; margin-bottom: 8px; margin-left: -16px; margin-right: -1px; } spinbutton.horizontal button.down:hover { background-image: -gtk-win32-theme-part(spin, 2, 2); } spinbutton.horizontal button.up:hover { background-image: -gtk-win32-theme-part(spin, 1, 2); } spinbutton.horizontal button.down:active { background-image: -gtk-win32-theme-part(spin, 2, 3); } spinbutton.horizontal button.up:active { background-image: -gtk-win32-theme-part(spin, 1, 3); } spinbutton.horizontal button.down:disabled { background-image: -gtk-win32-theme-part(spin, 2, 4); } spinbutton.horizontal button.up:disabled { background-image: -gtk-win32-theme-part(spin, 1, 4); } /* Spinbutton (vertical) */ spinbutton.vertical button, spinbutton.vertical button:focus { background-color: transparent; color: rgba(0, 0, 0, 0); background-image: -gtk-win32-theme-part(spin, 1, 1, margins(0 -1 -0 -1)); } spinbutton.vertical button:last-child, spinbutton.vertical button:focus:last-child { background-image: -gtk-win32-theme-part(spin, 2, 1, margins(0 -1 0 -1)); } spinbutton.vertical button:hover, spinbutton.vertical button:hover:focus { background-image: -gtk-win32-theme-part(spin, 1, 2, margins(0 -1 -0 -1)); } spinbutton.vertical button:hover:last-child, spinbutton.vertical button:hover:focus:last-child { background-image: -gtk-win32-theme-part(spin, 2, 2, margins(0 -1 0 -1)); } spinbutton.vertical button:active, spinbutton.vertical button:active:hover, spinbutton.vertical button:active:focus, spinbutton.vertical button:active:hover:focus { background-image: -gtk-win32-theme-part(spin, 1, 3, margins(0 -1 -0 -1)); } spinbutton.vertical button:active:last-child, spinbutton.vertical button:active:hover:last-child, spinbutton.vertical button:active:focus:last-child, spinbutton.vertical button:active:hover:focus:last-child { background-image: -gtk-win32-theme-part(spin, 2, 3, margins(0 -1 0 -1)); } spinbutton.vertical button:disabled { background-image: -gtk-win32-theme-part(spin, 1, 4, margins(0 -1 -0 -1)); } spinbutton.vertical button:disabled:last-child { background-image: -gtk-win32-theme-part(spin, 2, 4, margins(0 -1 0 -1)); } spinbutton button:dir(rtl), spinbutton button:focus:dir(rtl) { background-color: transparent; background-image: -gtk-win32-theme-part(spin, 2, 1, margins(0 -1 -1 -1)); color: rgba(0, 0, 0, 0); } spinbutton button:first-child:dir(rtl), spinbutton button:focus:first-child:dir(rtl) { background-image: -gtk-win32-theme-part(spin, 1, 1, margins(-1 -1 0 -1)); } spinbutton button:hover:dir(rtl), spinbutton button:hover:focus:dir(rtl) { background-image: -gtk-win32-theme-part(spin, 2, 2, margins(0 -1 -1 -1)); } spinbutton button:hover:first-child:dir(rtl), spinbutton button:hover:focus:first-child:dir(rtl) { background-image: -gtk-win32-theme-part(spin, 1, 2, margins(-1 -1 0 -1)); } spinbutton button:active:dir(rtl), spinbutton button:active:hover:dir(rtl), spinbutton button:active:focus:dir(rtl), spinbutton button:active:hover:focus:dir(rtl) { background-image: -gtk-win32-theme-part(spin, 2, 3, margins(0 -1 -1 -1)); } spinbutton button:active:first-child:dir(rtl), spinbutton button:active:hover:first-child:dir(rtl), spinbutton button:active:focus:first-child:dir(rtl), spinbutton button:active:hover:focus:first-child:dir(rtl) { background-image: -gtk-win32-theme-part(spin, 1, 3, margins(-1 -1 0 -1)); } spinbutton button:disabled:dir(rtl) { background-image: -gtk-win32-theme-part(spin, 2, 4, margins(0 -1 -1 -1)); } spinbutton button:disabled:first-child:dir(rtl) { background-image: -gtk-win32-theme-part(spin, 1, 4, margins(-1 -1 0 -1)); } /* Ranges */ scale.horizontal trough { margin: calc( -gtk-win32-part-height(trackbar, 4, 1) / 2 + 1px ) 0; padding: 0 calc( -gtk-win32-part-width(trackbar, 4, 1) / 2); background-image: -gtk-win32-theme-part(trackbar, 1, 1); min-height: -gtk-win32-part-height(trackbar, 1, 1); } scale.vertical trough { margin: 0 calc( -gtk-win32-part-width(trackbar, 8, 1) / 2 + 1px ); padding: calc( -gtk-win32-part-height(trackbar, 8, 1) / 2 ) 0; background-image: -gtk-win32-theme-part(trackbar, 2, 1); min-width: -gtk-win32-part-width(trackbar, 2, 1); } scale.horizontal indicator { min-height: -gtk-win32-part-height(trackbar, 9, 1); min-width: -gtk-win32-part-width(trackbar, 9, 1); color: shade(@bg_color, 0.6); margin-top: -2px; margin-bottom: 2px; } scale.vertical indicator { min-height: -gtk-win32-part-height(trackbar, 10, 1) ; min-width: -gtk-win32-part-width(trackbar, 10, 1); color: shade(@bg_color, 0.6); margin-left: -2px; margin-right: 2px; } scale.horizontal slider { min-height: -gtk-win32-part-height(trackbar, 4, 1); min-width: -gtk-win32-part-width(trackbar, 4, 1); margin: calc( (-gtk-win32-part-height(trackbar, 4, 1) - -gtk-win32-part-height(trackbar, 1, 1)) / -2) 0; } scale.vertical slider { min-height: -gtk-win32-part-height(trackbar, 8, 1); min-width: -gtk-win32-part-width(trackbar, 8, 1); margin: 0 calc( (-gtk-win32-part-width(trackbar, 8, 1) - -gtk-win32-part-width(trackbar, 2, 1)) / -2); } scale.horizontal slider { background-image: -gtk-win32-theme-part(trackbar, 3,1) } scale.horizontal.marks-after slider { background-image: -gtk-win32-theme-part(trackbar, 4,1) } scale.horizontal slider:hover { background-image: -gtk-win32-theme-part(trackbar, 3,2) } scale.horizontal.marks-after slider:hover { background-image: -gtk-win32-theme-part(trackbar, 4,2) } scale.horizontal slider:focus { background-image: -gtk-win32-theme-part(trackbar, 3,4) } scale.horizontal.marks-after slider:focus { background-image: -gtk-win32-theme-part(trackbar, 4,4) } scale.horizontal slider:active { background-image: -gtk-win32-theme-part(trackbar, 3,3) } scale.horizontal.marks-after slider:active { background-image: -gtk-win32-theme-part(trackbar, 4,3) } scale.horizontal slider:disabled { background-image: -gtk-win32-theme-part(trackbar, 3,5) } scale.horizontal.marks-after slider:disabled { background-image: -gtk-win32-theme-part(trackbar, 4,5) } scale.vertical slider { background-image: -gtk-win32-theme-part(trackbar, 6, 1) } scale.vertical.marks-after slider { background-image: -gtk-win32-theme-part(trackbar, 8, 1) } scale.vertical slider:hover { background-image: -gtk-win32-theme-part(trackbar, 6, 2) } scale.vertical.marks-after slider:hover { background-image: -gtk-win32-theme-part(trackbar, 8, 2) } scale.vertical slider:focus { background-image: -gtk-win32-theme-part(trackbar, 6, 4) } scale.vertical.marks-after slider:focus { background-image: -gtk-win32-theme-part(trackbar, 8, 4) } scale.vertical slider:active { background-image: -gtk-win32-theme-part(trackbar, 6, 3) } scale.vertical.marks-after slider:active { background-image: -gtk-win32-theme-part(trackbar, 8, 3) } scale.vertical slider:disabled { background-image: -gtk-win32-theme-part(trackbar, 6, 5) } scale.vertical.marks-after slider:disabled { background-image: -gtk-win32-theme-part(trackbar, 8, 5) } scale.horizontal highlight { background-image: -gtk-win32-theme-part(progress, 5,1); margin: 0 calc( -gtk-win32-part-width(trackbar, 4, 1) / -2); } scale.vertical highlight { background-image: -gtk-win32-theme-part(progress, 6,1); margin: calc( -gtk-win32-part-height(trackbar, 6, 1) / -2) 0; } scale value { margin-bottom: 5px; } /* Progress bars */ progressbar { background-color: transparent; padding: 0; } progressbar trough { border-width: 0; background-image: -gtk-win32-theme-part(progress, 1, 1); } progressbar progress, entry progress, entry progress:focus { border-width: 0; background-image: -gtk-win32-theme-part(progress, 5, 1); } progressbar progress.pulse, entry progress.pulse, entry progress.pulse:focus { background-color: transparent; background-image: -gtk-win32-theme-part(progress, 8, 1); } progressbar.vertical trough { background-image: -gtk-win32-theme-part(progress, 2, 1); } progressbar.vertical progress { background-image: -gtk-win32-theme-part(progress, 6, 1); } progressbar.vertical progress.pulse { background-image: -gtk-win32-theme-part(progress, 10, 1); } /* Combobox */ combobox entry { margin-right: calc( -2ex - -gtk-win32-part-width(combobox, 6, 1)); background-image: -gtk-win32-theme-part(combobox, 4, 1)); } combobox entry:hover { background-image: -gtk-win32-theme-part(combobox, 4, 2); } combobox entry:focus { background-image: -gtk-win32-theme-part(combobox, 4, 3); } combobox:disabled entry { background-image: -gtk-win32-theme-part(combobox, 5, 4); } combobox entry, combobox entry:disabled, combobox entry:focus { padding-left: 1ex; } combobox button { padding: 2px; } combobox entry + button { padding: 0; background-image: none; } combobox button arrow { background-image: -gtk-win32-theme-part(combobox, 6, 1); min-height: -gtk-win32-part-height(combobox, 6, 1); /* this width is too small, so better put some padding */ min-width: -gtk-win32-part-width(combobox, 6, 1); padding: 0 1ex; } combobox entry + button:hover arrow { background-image: -gtk-win32-theme-part(combobox, 6, 2); } combobox entry + button:disabled { background-image: none; } combobox entry + button:disabled arrow { background-image: -gtk-win32-theme-part(combobox, 6, 4); } combobox entry + button:checked arrow { background-image: -gtk-win32-theme-part(combobox, 6, 3); } combobox menu { /* Dropdown list should have "window" color, as listbox contents do (usually it's "white") */ background-color: -gtk-win32-color(listview, window); padding: 2px; } combobox menuitem { padding: 0 2px; } combobox menuitem > cellview { padding: 0px; } /* Toolbar */ toolbar { background-color: transparent; border-width: 0; background-image: -gtk-win32-theme-part(rebar, 6, 1); } toolbar button, toolbar button:focus { background-color: transparent; background-image: -gtk-win32-theme-part(toolbar, 1, 1); } toolbar button:hover, toolbar button:hover:focus { background-image: -gtk-win32-theme-part(toolbar, 1, 2); } toolbar button:active { background-image: -gtk-win32-theme-part(toolbar, 1, 3); } toolbar button:active:hover { background-image: -gtk-win32-theme-part(toolbar, 1, 6); } toolbar button:disabled { background-image: -gtk-win32-theme-part(toolbar, 1, 4); } /* Column headers */ header button, header button:focus { background-color: transparent; border-width: 0; background-image: -gtk-win32-theme-part(header, 1, 1); } header button:hover, header button:hover:focus { background-image: -gtk-win32-theme-part(header, 1, 2); } header button:active, header button:active:hover, header button:active:focus, header button:active:hover:focus { background-image: -gtk-win32-theme-part(header, 1, 3); } /* Switch */ switch { background-image: -gtk-win32-theme-part(button, 1, 1); } switch:checked { background-image: -gtk-win32-theme-part(button, 1, 3); } switch:disabled { background-image: -gtk-win32-theme-part(button, 1, 4); } switch slider { background-image: -gtk-win32-theme-part(button, 1, 1); } switch:hover slider { background-image: -gtk-win32-theme-part(button, 1, 2); } switch:checked slider { background-image: -gtk-win32-theme-part(button, 1, 3); } switch:disabled slider { background-image: -gtk-win32-theme-part(button, 1, 4); } /* Menus */ menu { background-color: -gtk-win32-color(button, menu); border-color: shade(-gtk-win32-color(button, menu), 0.6); border-style: solid; border-width: 1px; padding: 2px; } menuitem { color: -gtk-win32-color(button, menutext); } menubar menuitem *:backdrop { color: mix(-gtk-win32-color(button, menutext), white, 0.5); } menubar > menuitem { padding: 3px 5px; } /* Add more padding to menus, increasing visible height of each menuitem */ menu * { padding: 2px; } /* Assistant */ GtkAssistant .sidebar .highlight { background-color: gray; font-weight: bold; } GtkAssistant .sidebar { padding: 12px; background-color: white; border-image: none; border-width: 0 1px 0 0; border-style: solid; } colorswatch { border-style: solid; border-width: 1px; } colorswatch:hover { border-color: shade(@bg_color, 0.2); } separator, separator:hover { color: shade(@bg_color, 0.6); } statusbar > frame { border-width: 1px 1px 1px 1px; border-style: solid; border-image: -gtk-win32-theme-part(status, 0, 0, margins(-1 0 0 0)) 2 1 1 1 stretch; background-image: none; } /* Spinner */ @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; } spinner:active { background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.916667)), to(transparent)), -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.833333)), to(transparent)), -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.75)), to(transparent)), -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.666667)), to(transparent)), -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.583333)), to(transparent)), -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.5)), to(transparent)), -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.416667)), to(transparent)), -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.333333)), to(transparent)), -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.25)), to(transparent)), -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.166667)), to(transparent)), -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.0833333)), to(transparent)), -gtk-gradient(radial, center center, 0, center center, 0.5, to(currentColor), to(transparent)); animation: spinner 1s infinite linear; } /* Popovers */ popover { border-radius: 3px; background-clip: border-box; background-color: @bg_color; border-color: rgba(0, 0, 0, 1); border-width: 1px; border-style: solid; box-shadow: 0 2px 3px alpha(black, 0.5); margin: 10px; padding: 2px; } popover > list, popover > .view, popover > toolbar { background-color: transparent; } /* Listbox */ list { background-color: -gtk-win32-color(listbox, window); } /* Dim label */ .dim-label { color: alpha(currentColor, 0.55); text-shadow: none; } /* Modelbuttons */ modelbutton:focus, modelbutton { background-color: transparent; background-image: -gtk-win32-theme-part(menu, 14, 1); } modelbutton:active, modelbutton:active:focus { background-color: transparent; background-image: -gtk-win32-theme-part(menu, 14, 1); } modelbutton:active:hover:focus, modelbutton:hover:focus, modelbutton:hover { background-image: -gtk-win32-theme-part(menu, 14, 2); } modelbutton:active:hover:disabled:focus, modelbutton:hover:disabled:focus, modelbutton:hover:disabled { background-image: -gtk-win32-theme-part(menu, 14, 4); } modelbutton radio:focus, modelbutton radio, modelbutton radio:hover, modelbutton radio:disabled { background-color: transparent; background-image: none; border-width: 0; } modelbutton radio:active:focus, modelbutton radio:active, modelbutton radio:active:hover { background-image: -gtk-win32-theme-part(menu, 12, 2, over(11, 3)); border-width: 0; } modelbutton radio:indeterminate:focus, modelbutton radio:indeterminate, modelbutton radio:indeterminate:disabled, modelbutton radio:indeterminate:hover, modelbutton radio:indeterminate:active, modelbutton radio:indeterminate:active:hover { background-image: none; /* Fall back to default, this state is not in win32 */ border-width: 0; } modelbutton radio:disabled:active:focus, modelbutton radio:disabled:active, modelbutton radio:disabled:active:hover { background-image: -gtk-win32-theme-part(menu, 12, 1, over(11, 4)); border-width: 0; } modelbutton check:focus, modelbutton check, modelbutton check:disabled, modelbutton check:hover, modelbutton check:hover:focus { background-color: transparent; background-image: none; border-width: 0; } modelbutton check:active:focus, modelbutton check:active, modelbutton check:active:hover:focus, modelbutton check:active:hover { background-image: -gtk-win32-theme-part(menu, 12, 2, over(11, 1)); border-width: 0; } modelbutton check:indeterminate:focus, modelbutton check:indeterminate, modelbutton check:indeterminate:disabled, modelbutton check:indeterminate:disabled:focus, modelbutton check:indeterminate:hover, modelbutton check:indeterminate:hover:focus, modelbutton check:indeterminate:active, modelbutton check:indeterminate:active:focus, modelbutton check:indeterminate:active:hover:focus, modelbutton check:indeterminate:active:hover { background-image: none; /* Fall back to default, this state is not in win32 */ border-width: 0; } modelbutton check:disabled:active:focus, modelbutton check:disabled:active, modelbutton check:disabled:active:hover:focus, modelbutton check:disabled:active:hover { background-image: -gtk-win32-theme-part(menu, 12, 1, over(11, 2)); border-width: 0; } /* Application notification */ .app-notification { border-style: solid; border-color: @app_notification_border; border-width: 0 1px 1px 1px; border-radius: 0 0 5px 5px; padding: 8px; background-image: linear-gradient(to bottom, @app_notification_a, @app_notification_b 18%, @app_notification_c); color: @theme_text_color; text-shadow: 0 1px @primary_toolbarbutton_text_shadow; border-image: none; }