From 9bf6f4ec2f77fd09a12ba2b68416e81a13b4ca3d Mon Sep 17 00:00:00 2001 From: blue-devil-93 <59343188+blue-devil-93@users.noreply.github.com> Date: Thu, 24 Jun 2021 10:32:21 +0200 Subject: Propose a different traditional ok implentation (#290) * tr * Propose another Traditonal Ok implementation based on Yaru * Makefile * fix makefile * remove whitespace+ * remove trailing whitespaces * rename it to traditionalok * move Theme to yaruok * Fix regression in mate appearance yaruok * Sync with official branch * readd traditionalokf * fix YaruOK case mismatch * improve tabs on gtk4 * fix Makefile.am * Add YaruGreen * Fix YaruGreen GTK3 * Fix Build - first try * Fix Build - second try * Fix Build - third try * improve colors of yaru green, decrease tab size * import scrollbar code from traditional green to yaru green * fix build * Tab_alignment_fix_for_yaru_green * add panel grip * decrease_tab_size fix_panel fix_link_color * sync_yru_ok_with_green * addpanel_gripper_to yaru * darken yarugreen scrollbar as requested * decrease border radius for popover on yaru grren and ok * decrease border radius for popover on yaru grren and ok . * fiy overlay - first try * fix osd colors * improve tabs and panel grabber * decrease popover and menu radius to 2px * fix mate-calc * fix mate-calc. --- desktop-themes/YaruGreen/COPYING | 674 +++ desktop-themes/YaruGreen/Makefile.am | 20 + desktop-themes/YaruGreen/gtk-2.0/Makefile.am | 9 + desktop-themes/YaruGreen/gtk-2.0/applications.rc | 72 + desktop-themes/YaruGreen/gtk-2.0/gtkrc | 408 ++ desktop-themes/YaruGreen/gtk-3.0/Makefile.am | 20 + desktop-themes/YaruGreen/gtk-3.0/README | 34 + desktop-themes/YaruGreen/gtk-3.0/_apps.scss | 1144 +++++ .../YaruGreen/gtk-3.0/_colors-public.scss | 119 + desktop-themes/YaruGreen/gtk-3.0/_colors.scss | 243 + desktop-themes/YaruGreen/gtk-3.0/_common.scss | 5038 ++++++++++++++++++++ desktop-themes/YaruGreen/gtk-3.0/_drawing.scss | 661 +++ desktop-themes/YaruGreen/gtk-3.0/_headerbar.scss | 268 ++ desktop-themes/YaruGreen/gtk-3.0/_palette.scss | 55 + desktop-themes/YaruGreen/gtk-3.0/_tweaks.scss | 462 ++ desktop-themes/YaruGreen/gtk-3.0/assets.svg | 1319 +++++ desktop-themes/YaruGreen/gtk-3.0/assets.txt | 63 + .../YaruGreen/gtk-3.0/assets/Makefile.am | 136 + .../YaruGreen/gtk-3.0/assets/bullet-symbolic.svg | 155 + .../gtk-3.0/assets/bullet-symbolic.symbolic.png | Bin 0 -> 285 bytes .../YaruGreen/gtk-3.0/assets/check-symbolic.svg | 154 + .../gtk-3.0/assets/check-symbolic.symbolic.png | Bin 0 -> 438 bytes .../YaruGreen/gtk-3.0/assets/dash-symbolic.svg | 155 + .../gtk-3.0/assets/dash-symbolic.symbolic.png | Bin 0 -> 200 bytes .../YaruGreen/gtk-3.0/assets/panel-grid.svg | 173 + .../YaruGreen/gtk-3.0/assets/slider-horz-grip.png | Bin 0 -> 173 bytes ...ider-horz-scale-has-marks-above-active-dark.png | Bin 0 -> 776 bytes ...er-horz-scale-has-marks-above-active-dark@2.png | Bin 0 -> 1839 bytes .../slider-horz-scale-has-marks-above-active.png | Bin 0 -> 778 bytes .../slider-horz-scale-has-marks-above-active@2.png | Bin 0 -> 1890 bytes ...er-horz-scale-has-marks-above-backdrop-dark.png | Bin 0 -> 659 bytes ...-horz-scale-has-marks-above-backdrop-dark@2.png | Bin 0 -> 1423 bytes ...e-has-marks-above-backdrop-insensitive-dark.png | Bin 0 -> 659 bytes ...has-marks-above-backdrop-insensitive-dark@2.png | Bin 0 -> 1423 bytes ...-scale-has-marks-above-backdrop-insensitive.png | Bin 0 -> 641 bytes ...cale-has-marks-above-backdrop-insensitive@2.png | Bin 0 -> 1456 bytes .../slider-horz-scale-has-marks-above-backdrop.png | Bin 0 -> 660 bytes ...lider-horz-scale-has-marks-above-backdrop@2.png | Bin 0 -> 1505 bytes .../slider-horz-scale-has-marks-above-dark.png | Bin 0 -> 767 bytes .../slider-horz-scale-has-marks-above-dark@2.png | Bin 0 -> 1774 bytes ...lider-horz-scale-has-marks-above-hover-dark.png | Bin 0 -> 775 bytes ...der-horz-scale-has-marks-above-hover-dark@2.png | Bin 0 -> 1834 bytes .../slider-horz-scale-has-marks-above-hover.png | Bin 0 -> 757 bytes .../slider-horz-scale-has-marks-above-hover@2.png | Bin 0 -> 1763 bytes ...horz-scale-has-marks-above-insensitive-dark.png | Bin 0 -> 659 bytes ...rz-scale-has-marks-above-insensitive-dark@2.png | Bin 0 -> 1423 bytes ...ider-horz-scale-has-marks-above-insensitive.png | Bin 0 -> 641 bytes ...er-horz-scale-has-marks-above-insensitive@2.png | Bin 0 -> 1446 bytes .../assets/slider-horz-scale-has-marks-above.png | Bin 0 -> 749 bytes .../assets/slider-horz-scale-has-marks-above@2.png | Bin 0 -> 1705 bytes ...ider-horz-scale-has-marks-below-active-dark.png | Bin 0 -> 785 bytes ...er-horz-scale-has-marks-below-active-dark@2.png | Bin 0 -> 1877 bytes .../slider-horz-scale-has-marks-below-active.png | Bin 0 -> 791 bytes .../slider-horz-scale-has-marks-below-active@2.png | Bin 0 -> 1919 bytes ...er-horz-scale-has-marks-below-backdrop-dark.png | Bin 0 -> 674 bytes ...-horz-scale-has-marks-below-backdrop-dark@2.png | Bin 0 -> 1478 bytes ...e-has-marks-below-backdrop-insensitive-dark.png | Bin 0 -> 674 bytes ...has-marks-below-backdrop-insensitive-dark@2.png | Bin 0 -> 1478 bytes ...-scale-has-marks-below-backdrop-insensitive.png | Bin 0 -> 676 bytes ...cale-has-marks-below-backdrop-insensitive@2.png | Bin 0 -> 1491 bytes .../slider-horz-scale-has-marks-below-backdrop.png | Bin 0 -> 678 bytes ...lider-horz-scale-has-marks-below-backdrop@2.png | Bin 0 -> 1490 bytes .../slider-horz-scale-has-marks-below-dark.png | Bin 0 -> 768 bytes .../slider-horz-scale-has-marks-below-dark@2.png | Bin 0 -> 1761 bytes ...lider-horz-scale-has-marks-below-hover-dark.png | Bin 0 -> 796 bytes ...der-horz-scale-has-marks-below-hover-dark@2.png | Bin 0 -> 1854 bytes .../slider-horz-scale-has-marks-below-hover.png | Bin 0 -> 764 bytes .../slider-horz-scale-has-marks-below-hover@2.png | Bin 0 -> 1816 bytes ...horz-scale-has-marks-below-insensitive-dark.png | Bin 0 -> 674 bytes ...rz-scale-has-marks-below-insensitive-dark@2.png | Bin 0 -> 1478 bytes ...ider-horz-scale-has-marks-below-insensitive.png | Bin 0 -> 678 bytes ...er-horz-scale-has-marks-below-insensitive@2.png | Bin 0 -> 1490 bytes .../assets/slider-horz-scale-has-marks-below.png | Bin 0 -> 724 bytes .../assets/slider-horz-scale-has-marks-below@2.png | Bin 0 -> 1725 bytes .../YaruGreen/gtk-3.0/assets/slider-vert-grip.png | Bin 0 -> 162 bytes ...ider-vert-scale-has-marks-above-active-dark.png | Bin 0 -> 819 bytes ...er-vert-scale-has-marks-above-active-dark@2.png | Bin 0 -> 1905 bytes .../slider-vert-scale-has-marks-above-active.png | Bin 0 -> 838 bytes .../slider-vert-scale-has-marks-above-active@2.png | Bin 0 -> 1953 bytes ...er-vert-scale-has-marks-above-backdrop-dark.png | Bin 0 -> 665 bytes ...-vert-scale-has-marks-above-backdrop-dark@2.png | Bin 0 -> 1510 bytes ...e-has-marks-above-backdrop-insensitive-dark.png | Bin 0 -> 665 bytes ...has-marks-above-backdrop-insensitive-dark@2.png | Bin 0 -> 1510 bytes ...-scale-has-marks-above-backdrop-insensitive.png | Bin 0 -> 689 bytes ...cale-has-marks-above-backdrop-insensitive@2.png | Bin 0 -> 1518 bytes .../slider-vert-scale-has-marks-above-backdrop.png | Bin 0 -> 677 bytes ...lider-vert-scale-has-marks-above-backdrop@2.png | Bin 0 -> 1526 bytes .../slider-vert-scale-has-marks-above-dark.png | Bin 0 -> 808 bytes .../slider-vert-scale-has-marks-above-dark@2.png | Bin 0 -> 1818 bytes ...lider-vert-scale-has-marks-above-hover-dark.png | Bin 0 -> 838 bytes ...der-vert-scale-has-marks-above-hover-dark@2.png | Bin 0 -> 1870 bytes .../slider-vert-scale-has-marks-above-hover.png | Bin 0 -> 820 bytes .../slider-vert-scale-has-marks-above-hover@2.png | Bin 0 -> 1843 bytes ...vert-scale-has-marks-above-insensitive-dark.png | Bin 0 -> 665 bytes ...rt-scale-has-marks-above-insensitive-dark@2.png | Bin 0 -> 1510 bytes ...ider-vert-scale-has-marks-above-insensitive.png | Bin 0 -> 689 bytes ...er-vert-scale-has-marks-above-insensitive@2.png | Bin 0 -> 1521 bytes .../assets/slider-vert-scale-has-marks-above.png | Bin 0 -> 803 bytes .../assets/slider-vert-scale-has-marks-above@2.png | Bin 0 -> 1806 bytes ...ider-vert-scale-has-marks-below-active-dark.png | Bin 0 -> 850 bytes ...er-vert-scale-has-marks-below-active-dark@2.png | Bin 0 -> 1877 bytes .../slider-vert-scale-has-marks-below-active.png | Bin 0 -> 842 bytes .../slider-vert-scale-has-marks-below-active@2.png | Bin 0 -> 1906 bytes ...er-vert-scale-has-marks-below-backdrop-dark.png | Bin 0 -> 682 bytes ...-vert-scale-has-marks-below-backdrop-dark@2.png | Bin 0 -> 1482 bytes ...e-has-marks-below-backdrop-insensitive-dark.png | Bin 0 -> 682 bytes ...has-marks-below-backdrop-insensitive-dark@2.png | Bin 0 -> 1482 bytes ...-scale-has-marks-below-backdrop-insensitive.png | Bin 0 -> 688 bytes ...cale-has-marks-below-backdrop-insensitive@2.png | Bin 0 -> 1526 bytes .../slider-vert-scale-has-marks-below-backdrop.png | Bin 0 -> 687 bytes ...lider-vert-scale-has-marks-below-backdrop@2.png | Bin 0 -> 1526 bytes .../slider-vert-scale-has-marks-below-dark.png | Bin 0 -> 827 bytes .../slider-vert-scale-has-marks-below-dark@2.png | Bin 0 -> 1794 bytes ...lider-vert-scale-has-marks-below-hover-dark.png | Bin 0 -> 857 bytes ...der-vert-scale-has-marks-below-hover-dark@2.png | Bin 0 -> 1867 bytes .../slider-vert-scale-has-marks-below-hover.png | Bin 0 -> 823 bytes .../slider-vert-scale-has-marks-below-hover@2.png | Bin 0 -> 1835 bytes ...vert-scale-has-marks-below-insensitive-dark.png | Bin 0 -> 682 bytes ...rt-scale-has-marks-below-insensitive-dark@2.png | Bin 0 -> 1482 bytes ...ider-vert-scale-has-marks-below-insensitive.png | Bin 0 -> 688 bytes ...er-vert-scale-has-marks-below-insensitive@2.png | Bin 0 -> 1528 bytes .../assets/slider-vert-scale-has-marks-below.png | Bin 0 -> 809 bytes .../assets/slider-vert-scale-has-marks-below@2.png | Bin 0 -> 1785 bytes .../gtk-3.0/assets/text-select-end-active-dark.png | Bin 0 -> 824 bytes .../assets/text-select-end-active-dark@2.png | Bin 0 -> 1550 bytes .../gtk-3.0/assets/text-select-end-active.png | Bin 0 -> 773 bytes .../gtk-3.0/assets/text-select-end-active@2.png | Bin 0 -> 1603 bytes .../gtk-3.0/assets/text-select-end-dark.png | Bin 0 -> 844 bytes .../gtk-3.0/assets/text-select-end-dark@2.png | Bin 0 -> 1617 bytes .../gtk-3.0/assets/text-select-end-hover-dark.png | Bin 0 -> 857 bytes .../assets/text-select-end-hover-dark@2.png | Bin 0 -> 1637 bytes .../gtk-3.0/assets/text-select-end-hover.png | Bin 0 -> 741 bytes .../gtk-3.0/assets/text-select-end-hover@2.png | Bin 0 -> 1478 bytes .../YaruGreen/gtk-3.0/assets/text-select-end.png | Bin 0 -> 731 bytes .../YaruGreen/gtk-3.0/assets/text-select-end@2.png | Bin 0 -> 1481 bytes .../assets/text-select-start-active-dark.png | Bin 0 -> 770 bytes .../assets/text-select-start-active-dark@2.png | Bin 0 -> 1481 bytes .../gtk-3.0/assets/text-select-start-active.png | Bin 0 -> 744 bytes .../gtk-3.0/assets/text-select-start-active@2.png | Bin 0 -> 1524 bytes .../gtk-3.0/assets/text-select-start-dark.png | Bin 0 -> 788 bytes .../gtk-3.0/assets/text-select-start-dark@2.png | Bin 0 -> 1513 bytes .../assets/text-select-start-hover-dark.png | Bin 0 -> 792 bytes .../assets/text-select-start-hover-dark@2.png | Bin 0 -> 1548 bytes .../gtk-3.0/assets/text-select-start-hover.png | Bin 0 -> 716 bytes .../gtk-3.0/assets/text-select-start-hover@2.png | Bin 0 -> 1442 bytes .../YaruGreen/gtk-3.0/assets/text-select-start.png | Bin 0 -> 720 bytes .../gtk-3.0/assets/text-select-start@2.png | Bin 0 -> 1439 bytes desktop-themes/YaruGreen/gtk-3.0/gtk.css | 2927 ++++++++++++ desktop-themes/YaruGreen/gtk-3.0/gtk.scss | 12 + .../YaruGreen/gtk-3.0/libhandy/_Adwaita-base.scss | 337 ++ .../YaruGreen/gtk-3.0/libhandy/_definitions.scss | 66 + .../YaruGreen/gtk-3.0/libhandy/_fallback-base.scss | 170 + .../YaruGreen/gtk-3.0/libhandy/_headerbar.scss | 6 + .../YaruGreen/gtk-3.0/libhandy/_shared-base.scss | 21 + desktop-themes/YaruGreen/gtk-3.0/parse-sass.sh | 12 + desktop-themes/YaruGreen/gtk-3.0/settings.ini.in | 6 + desktop-themes/YaruGreen/gtk-4.0/README | 37 + .../YaruGreen/gtk-4.0/_colors-public.scss | 119 + desktop-themes/YaruGreen/gtk-4.0/_colors.scss | 239 + desktop-themes/YaruGreen/gtk-4.0/_common.scss | 4411 +++++++++++++++++ desktop-themes/YaruGreen/gtk-4.0/_drawing.scss | 520 ++ desktop-themes/YaruGreen/gtk-4.0/_headerbar.scss | 133 + desktop-themes/YaruGreen/gtk-4.0/_palette.scss | 56 + desktop-themes/YaruGreen/gtk-4.0/_tweaks.scss | 387 ++ desktop-themes/YaruGreen/gtk-4.0/assets.svg | 1319 +++++ desktop-themes/YaruGreen/gtk-4.0/assets.txt | 44 + .../YaruGreen/gtk-4.0/assets/bullet-symbolic.svg | 155 + .../gtk-4.0/assets/bullet-symbolic.symbolic.png | Bin 0 -> 244 bytes .../gtk-4.0/assets/bullet@2-symbolic.symbolic.png | Bin 0 -> 285 bytes .../YaruGreen/gtk-4.0/assets/check-symbolic.svg | 153 + .../gtk-4.0/assets/check-symbolic.symbolic.png | Bin 0 -> 310 bytes .../gtk-4.0/assets/check@2-symbolic.symbolic.png | Bin 0 -> 398 bytes .../YaruGreen/gtk-4.0/assets/dash-symbolic.svg | 155 + .../gtk-4.0/assets/dash-symbolic.symbolic.png | Bin 0 -> 185 bytes .../gtk-4.0/assets/dash@2-symbolic.symbolic.png | Bin 0 -> 202 bytes ...ider-horz-scale-has-marks-above-active-dark.png | Bin 0 -> 776 bytes ...er-horz-scale-has-marks-above-active-dark@2.png | Bin 0 -> 1839 bytes .../slider-horz-scale-has-marks-above-active.png | Bin 0 -> 778 bytes .../slider-horz-scale-has-marks-above-active@2.png | Bin 0 -> 1890 bytes ...er-horz-scale-has-marks-above-backdrop-dark.png | Bin 0 -> 733 bytes ...-horz-scale-has-marks-above-backdrop-dark@2.png | Bin 0 -> 1423 bytes ...e-has-marks-above-backdrop-insensitive-dark.png | Bin 0 -> 733 bytes ...has-marks-above-backdrop-insensitive-dark@2.png | Bin 0 -> 1423 bytes ...-scale-has-marks-above-backdrop-insensitive.png | Bin 0 -> 755 bytes ...cale-has-marks-above-backdrop-insensitive@2.png | Bin 0 -> 1456 bytes .../slider-horz-scale-has-marks-above-backdrop.png | Bin 0 -> 753 bytes ...lider-horz-scale-has-marks-above-backdrop@2.png | Bin 0 -> 1505 bytes .../slider-horz-scale-has-marks-above-dark.png | Bin 0 -> 767 bytes .../slider-horz-scale-has-marks-above-dark@2.png | Bin 0 -> 1774 bytes ...lider-horz-scale-has-marks-above-hover-dark.png | Bin 0 -> 775 bytes ...der-horz-scale-has-marks-above-hover-dark@2.png | Bin 0 -> 1834 bytes .../slider-horz-scale-has-marks-above-hover.png | Bin 0 -> 757 bytes .../slider-horz-scale-has-marks-above-hover@2.png | Bin 0 -> 1763 bytes ...horz-scale-has-marks-above-insensitive-dark.png | Bin 0 -> 659 bytes ...rz-scale-has-marks-above-insensitive-dark@2.png | Bin 0 -> 1423 bytes ...ider-horz-scale-has-marks-above-insensitive.png | Bin 0 -> 641 bytes ...er-horz-scale-has-marks-above-insensitive@2.png | Bin 0 -> 1446 bytes .../assets/slider-horz-scale-has-marks-above.png | Bin 0 -> 749 bytes .../assets/slider-horz-scale-has-marks-above@2.png | Bin 0 -> 1705 bytes ...ider-horz-scale-has-marks-below-active-dark.png | Bin 0 -> 785 bytes ...er-horz-scale-has-marks-below-active-dark@2.png | Bin 0 -> 1877 bytes .../slider-horz-scale-has-marks-below-active.png | Bin 0 -> 791 bytes .../slider-horz-scale-has-marks-below-active@2.png | Bin 0 -> 1919 bytes ...er-horz-scale-has-marks-below-backdrop-dark.png | Bin 0 -> 746 bytes ...-horz-scale-has-marks-below-backdrop-dark@2.png | Bin 0 -> 1478 bytes ...e-has-marks-below-backdrop-insensitive-dark.png | Bin 0 -> 746 bytes ...has-marks-below-backdrop-insensitive-dark@2.png | Bin 0 -> 1478 bytes ...-scale-has-marks-below-backdrop-insensitive.png | Bin 0 -> 769 bytes ...cale-has-marks-below-backdrop-insensitive@2.png | Bin 0 -> 1491 bytes .../slider-horz-scale-has-marks-below-backdrop.png | Bin 0 -> 768 bytes ...lider-horz-scale-has-marks-below-backdrop@2.png | Bin 0 -> 1490 bytes .../slider-horz-scale-has-marks-below-dark.png | Bin 0 -> 768 bytes .../slider-horz-scale-has-marks-below-dark@2.png | Bin 0 -> 1761 bytes ...lider-horz-scale-has-marks-below-hover-dark.png | Bin 0 -> 796 bytes ...der-horz-scale-has-marks-below-hover-dark@2.png | Bin 0 -> 1854 bytes .../slider-horz-scale-has-marks-below-hover.png | Bin 0 -> 764 bytes .../slider-horz-scale-has-marks-below-hover@2.png | Bin 0 -> 1816 bytes ...horz-scale-has-marks-below-insensitive-dark.png | Bin 0 -> 674 bytes ...rz-scale-has-marks-below-insensitive-dark@2.png | Bin 0 -> 1478 bytes ...ider-horz-scale-has-marks-below-insensitive.png | Bin 0 -> 678 bytes ...er-horz-scale-has-marks-below-insensitive@2.png | Bin 0 -> 1490 bytes .../assets/slider-horz-scale-has-marks-below.png | Bin 0 -> 724 bytes .../assets/slider-horz-scale-has-marks-below@2.png | Bin 0 -> 1725 bytes ...ider-vert-scale-has-marks-above-active-dark.png | Bin 0 -> 819 bytes ...er-vert-scale-has-marks-above-active-dark@2.png | Bin 0 -> 1905 bytes .../slider-vert-scale-has-marks-above-active.png | Bin 0 -> 838 bytes .../slider-vert-scale-has-marks-above-active@2.png | Bin 0 -> 1953 bytes ...er-vert-scale-has-marks-above-backdrop-dark.png | Bin 0 -> 719 bytes ...-vert-scale-has-marks-above-backdrop-dark@2.png | Bin 0 -> 1510 bytes ...e-has-marks-above-backdrop-insensitive-dark.png | Bin 0 -> 719 bytes ...has-marks-above-backdrop-insensitive-dark@2.png | Bin 0 -> 1510 bytes ...-scale-has-marks-above-backdrop-insensitive.png | Bin 0 -> 743 bytes ...cale-has-marks-above-backdrop-insensitive@2.png | Bin 0 -> 1518 bytes .../slider-vert-scale-has-marks-above-backdrop.png | Bin 0 -> 744 bytes ...lider-vert-scale-has-marks-above-backdrop@2.png | Bin 0 -> 1526 bytes .../slider-vert-scale-has-marks-above-dark.png | Bin 0 -> 808 bytes .../slider-vert-scale-has-marks-above-dark@2.png | Bin 0 -> 1818 bytes ...lider-vert-scale-has-marks-above-hover-dark.png | Bin 0 -> 838 bytes ...der-vert-scale-has-marks-above-hover-dark@2.png | Bin 0 -> 1870 bytes .../slider-vert-scale-has-marks-above-hover.png | Bin 0 -> 820 bytes .../slider-vert-scale-has-marks-above-hover@2.png | Bin 0 -> 1843 bytes ...vert-scale-has-marks-above-insensitive-dark.png | Bin 0 -> 665 bytes ...rt-scale-has-marks-above-insensitive-dark@2.png | Bin 0 -> 1510 bytes ...ider-vert-scale-has-marks-above-insensitive.png | Bin 0 -> 689 bytes ...er-vert-scale-has-marks-above-insensitive@2.png | Bin 0 -> 1521 bytes .../assets/slider-vert-scale-has-marks-above.png | Bin 0 -> 803 bytes .../assets/slider-vert-scale-has-marks-above@2.png | Bin 0 -> 1806 bytes ...ider-vert-scale-has-marks-below-active-dark.png | Bin 0 -> 850 bytes ...er-vert-scale-has-marks-below-active-dark@2.png | Bin 0 -> 1877 bytes .../slider-vert-scale-has-marks-below-active.png | Bin 0 -> 842 bytes .../slider-vert-scale-has-marks-below-active@2.png | Bin 0 -> 1906 bytes ...er-vert-scale-has-marks-below-backdrop-dark.png | Bin 0 -> 713 bytes ...-vert-scale-has-marks-below-backdrop-dark@2.png | Bin 0 -> 1482 bytes ...e-has-marks-below-backdrop-insensitive-dark.png | Bin 0 -> 713 bytes ...has-marks-below-backdrop-insensitive-dark@2.png | Bin 0 -> 1482 bytes ...-scale-has-marks-below-backdrop-insensitive.png | Bin 0 -> 728 bytes ...cale-has-marks-below-backdrop-insensitive@2.png | Bin 0 -> 1526 bytes .../slider-vert-scale-has-marks-below-backdrop.png | Bin 0 -> 728 bytes ...lider-vert-scale-has-marks-below-backdrop@2.png | Bin 0 -> 1526 bytes .../slider-vert-scale-has-marks-below-dark.png | Bin 0 -> 827 bytes .../slider-vert-scale-has-marks-below-dark@2.png | Bin 0 -> 1794 bytes ...lider-vert-scale-has-marks-below-hover-dark.png | Bin 0 -> 857 bytes ...der-vert-scale-has-marks-below-hover-dark@2.png | Bin 0 -> 1867 bytes .../slider-vert-scale-has-marks-below-hover.png | Bin 0 -> 823 bytes .../slider-vert-scale-has-marks-below-hover@2.png | Bin 0 -> 1835 bytes ...vert-scale-has-marks-below-insensitive-dark.png | Bin 0 -> 682 bytes ...rt-scale-has-marks-below-insensitive-dark@2.png | Bin 0 -> 1482 bytes ...ider-vert-scale-has-marks-below-insensitive.png | Bin 0 -> 688 bytes ...er-vert-scale-has-marks-below-insensitive@2.png | Bin 0 -> 1528 bytes .../assets/slider-vert-scale-has-marks-below.png | Bin 0 -> 809 bytes .../assets/slider-vert-scale-has-marks-below@2.png | Bin 0 -> 1785 bytes .../gtk-4.0/assets/text-select-end-active-dark.png | Bin 0 -> 776 bytes .../assets/text-select-end-active-dark@2.png | Bin 0 -> 1593 bytes .../gtk-4.0/assets/text-select-end-active.png | Bin 0 -> 773 bytes .../gtk-4.0/assets/text-select-end-active@2.png | Bin 0 -> 1603 bytes .../gtk-4.0/assets/text-select-end-dark.png | Bin 0 -> 779 bytes .../gtk-4.0/assets/text-select-end-dark@2.png | Bin 0 -> 1617 bytes .../gtk-4.0/assets/text-select-end-hover-dark.png | Bin 0 -> 779 bytes .../assets/text-select-end-hover-dark@2.png | Bin 0 -> 1637 bytes .../gtk-4.0/assets/text-select-end-hover.png | Bin 0 -> 741 bytes .../gtk-4.0/assets/text-select-end-hover@2.png | Bin 0 -> 1478 bytes .../YaruGreen/gtk-4.0/assets/text-select-end.png | Bin 0 -> 731 bytes .../YaruGreen/gtk-4.0/assets/text-select-end@2.png | Bin 0 -> 1481 bytes .../assets/text-select-start-active-dark.png | Bin 0 -> 737 bytes .../assets/text-select-start-active-dark@2.png | Bin 0 -> 1525 bytes .../gtk-4.0/assets/text-select-start-active.png | Bin 0 -> 744 bytes .../gtk-4.0/assets/text-select-start-active@2.png | Bin 0 -> 1524 bytes .../gtk-4.0/assets/text-select-start-dark.png | Bin 0 -> 750 bytes .../gtk-4.0/assets/text-select-start-dark@2.png | Bin 0 -> 1513 bytes .../assets/text-select-start-hover-dark.png | Bin 0 -> 752 bytes .../assets/text-select-start-hover-dark@2.png | Bin 0 -> 1548 bytes .../gtk-4.0/assets/text-select-start-hover.png | Bin 0 -> 716 bytes .../gtk-4.0/assets/text-select-start-hover@2.png | Bin 0 -> 1442 bytes .../YaruGreen/gtk-4.0/assets/text-select-start.png | Bin 0 -> 720 bytes .../gtk-4.0/assets/text-select-start@2.png | Bin 0 -> 1439 bytes desktop-themes/YaruGreen/gtk-4.0/gtk.css | 1984 ++++++++ desktop-themes/YaruGreen/gtk-4.0/gtk.scss | 15 + desktop-themes/YaruGreen/gtk-4.0/parse-sass.sh | 12 + desktop-themes/YaruGreen/gtk-4.0/render-assets.sh | 34 + desktop-themes/YaruGreen/index.theme.in | 13 + desktop-themes/YaruGreen/metacity-1/Makefile.am | 8 + .../YaruGreen/metacity-1/metacity-theme-1.xml | 954 ++++ 302 files changed, 25687 insertions(+) create mode 100644 desktop-themes/YaruGreen/COPYING create mode 100644 desktop-themes/YaruGreen/Makefile.am create mode 100644 desktop-themes/YaruGreen/gtk-2.0/Makefile.am create mode 100644 desktop-themes/YaruGreen/gtk-2.0/applications.rc create mode 100644 desktop-themes/YaruGreen/gtk-2.0/gtkrc create mode 100644 desktop-themes/YaruGreen/gtk-3.0/Makefile.am create mode 100644 desktop-themes/YaruGreen/gtk-3.0/README create mode 100644 desktop-themes/YaruGreen/gtk-3.0/_apps.scss create mode 100644 desktop-themes/YaruGreen/gtk-3.0/_colors-public.scss create mode 100644 desktop-themes/YaruGreen/gtk-3.0/_colors.scss create mode 100644 desktop-themes/YaruGreen/gtk-3.0/_common.scss create mode 100644 desktop-themes/YaruGreen/gtk-3.0/_drawing.scss create mode 100644 desktop-themes/YaruGreen/gtk-3.0/_headerbar.scss create mode 100644 desktop-themes/YaruGreen/gtk-3.0/_palette.scss create mode 100644 desktop-themes/YaruGreen/gtk-3.0/_tweaks.scss create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets.svg create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets.txt create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/Makefile.am create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/bullet-symbolic.svg create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/bullet-symbolic.symbolic.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/check-symbolic.svg create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/check-symbolic.symbolic.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/dash-symbolic.svg create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/dash-symbolic.symbolic.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/panel-grid.svg create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-grip.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-grip.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start@2.png create mode 100644 desktop-themes/YaruGreen/gtk-3.0/gtk.css create mode 100644 desktop-themes/YaruGreen/gtk-3.0/gtk.scss create mode 100644 desktop-themes/YaruGreen/gtk-3.0/libhandy/_Adwaita-base.scss create mode 100644 desktop-themes/YaruGreen/gtk-3.0/libhandy/_definitions.scss create mode 100644 desktop-themes/YaruGreen/gtk-3.0/libhandy/_fallback-base.scss create mode 100644 desktop-themes/YaruGreen/gtk-3.0/libhandy/_headerbar.scss create mode 100644 desktop-themes/YaruGreen/gtk-3.0/libhandy/_shared-base.scss create mode 100755 desktop-themes/YaruGreen/gtk-3.0/parse-sass.sh create mode 100644 desktop-themes/YaruGreen/gtk-3.0/settings.ini.in create mode 100644 desktop-themes/YaruGreen/gtk-4.0/README create mode 100644 desktop-themes/YaruGreen/gtk-4.0/_colors-public.scss create mode 100644 desktop-themes/YaruGreen/gtk-4.0/_colors.scss create mode 100755 desktop-themes/YaruGreen/gtk-4.0/_common.scss create mode 100644 desktop-themes/YaruGreen/gtk-4.0/_drawing.scss create mode 100644 desktop-themes/YaruGreen/gtk-4.0/_headerbar.scss create mode 100644 desktop-themes/YaruGreen/gtk-4.0/_palette.scss create mode 100644 desktop-themes/YaruGreen/gtk-4.0/_tweaks.scss create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets.svg create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets.txt create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/bullet-symbolic.svg create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/bullet-symbolic.symbolic.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/bullet@2-symbolic.symbolic.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/check-symbolic.svg create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/check-symbolic.symbolic.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/check@2-symbolic.symbolic.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/dash-symbolic.svg create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/dash-symbolic.symbolic.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/dash@2-symbolic.symbolic.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover-dark.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover-dark@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover@2.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start.png create mode 100644 desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start@2.png create mode 100755 desktop-themes/YaruGreen/gtk-4.0/gtk.css create mode 100644 desktop-themes/YaruGreen/gtk-4.0/gtk.scss create mode 100755 desktop-themes/YaruGreen/gtk-4.0/parse-sass.sh create mode 100644 desktop-themes/YaruGreen/gtk-4.0/render-assets.sh create mode 100644 desktop-themes/YaruGreen/index.theme.in create mode 100644 desktop-themes/YaruGreen/metacity-1/Makefile.am create mode 100644 desktop-themes/YaruGreen/metacity-1/metacity-theme-1.xml (limited to 'desktop-themes/YaruGreen') diff --git a/desktop-themes/YaruGreen/COPYING b/desktop-themes/YaruGreen/COPYING new file mode 100644 index 00000000..94a9ed02 --- /dev/null +++ b/desktop-themes/YaruGreen/COPYING @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/desktop-themes/YaruGreen/Makefile.am b/desktop-themes/YaruGreen/Makefile.am new file mode 100644 index 00000000..187b2ff0 --- /dev/null +++ b/desktop-themes/YaruGreen/Makefile.am @@ -0,0 +1,20 @@ +THEME_NAME = YaruGreen + +theme_in_files = index.theme.in +themedir = $(datadir)/themes/$(THEME_NAME) +theme_DATA = COPYING index.theme + +%.theme: %.theme.in +if USE_NLS + $(AM_V_GEN) $(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@ +else + $(AM_V_GEN) cp -f $< $@ +endif + +SUBDIRS = \ + gtk-2.0 \ + gtk-3.0 \ + metacity-1 + +CLEANFILES = index.theme +EXTRA_DIST = $(theme_in_files) diff --git a/desktop-themes/YaruGreen/gtk-2.0/Makefile.am b/desktop-themes/YaruGreen/gtk-2.0/Makefile.am new file mode 100644 index 00000000..55a17f54 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-2.0/Makefile.am @@ -0,0 +1,9 @@ +THEME_NAME=YaruGreen + +themedir = $(datadir)/themes/$(THEME_NAME)/gtk-2.0 + +theme_DATA = \ + applications.rc \ + gtkrc + +EXTRA_DIST = $(theme_DATA) diff --git a/desktop-themes/YaruGreen/gtk-2.0/applications.rc b/desktop-themes/YaruGreen/gtk-2.0/applications.rc new file mode 100644 index 00000000..068f00df --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-2.0/applications.rc @@ -0,0 +1,72 @@ +style "workspace-switcher" +{ + bg[SELECTED] = shade (1.0, @selected_bg_color) + bg[PRELIGHT] = shade (1.0, @selected_bg_color) +} + +widget "*WnckPager*" style "workspace-switcher" + +# Workaround for the evolution ETable (bug #527532) +widget_class "*.." style "treeview_header" +# Workaround for the evolution ETree +widget_class "*.." style "treeview_header" + +# Special case the caja-extra-view-widget +# ToDo: A more generic approach for all applications that have a widget like this. +widget "*.caja-extra-view-widget" style : highest "caja-location" + +# Work around for http://bugzilla.gnome.org/show_bug.cgi?id=382646 +# Note that this work around assumes that the combobox is _not_ in appears-as-list mode. +widget_class "*.." style "text_is_fg_color_workaround" +# This is the part of the workaround that fixes the menus +widget "*.gtk-combobox-popup-menu.*" style "menuitem_text_is_fg_color_workaround" + +# Work around the usage of GtkLabel inside GtkListItems to display text. +# This breaks because the label is shown on a background that is based on the base color. +widget_class "**" style "fg_is_text_color_workaround" +# GtkCList also uses the fg color to draw text on top of the base colors. +widget_class "*" style "fg_is_text_color_workaround" +# Caja when renaming files, and maybe other places. +widget_class "*" style "fg_is_text_color_workaround" + +# See the documentation of the style. +widget_class "EShellWindow.GtkVBox.BonoboDock.BonoboDockBand.BonoboDockItem*" style "evo_new_button_workaround" + +########################################################################## +# Chromium. +########################################################################## + +style "chromium_toolbar_button" { + engine "clearlooks" { + colorize_scrollbar = TRUE + reliefstyle = 1 + menubarstyle = 2 + toolbarstyle = 1 + animation = FALSE + radius = 3.0 + style = GUMMY + + # Set a hint to disable backward compatibility fallbacks. + hint = "use-hints" + } +} + +style "chrome-hacks" +{ + ChromeGtkFrame::frame-color = "#B9C0A9" + ChromeGtkFrame::frame-gradient-color = "#B0DC8C" + ChromeGtkFrame::frame-gradient-size = 16 + ChromeGtkFrame::inactive-frame-color = "#dedcda" + ChromeGtkFrame::inactive-frame-gradient-color = "#e3e2e0" + ChromeGtkFrame::incognito-frame-color = "#6E994B" + ChromeGtkFrame::incognito-frame-gradient-color = shade (1.02, "#6E994B") + ChromeGtkFrame::incognito-inactive-frame-color = "#d5d3d1" + ChromeGtkFrame::incognito-inactive-frame-gradient-color = shade (1.02, "#d5d3d1") + ChromeGtkFrame::scrollbar-trough-color = shade (0.9, "#edeceb") + ChromeGtkFrame::scrollbar-slider-prelight-color = shade (1.05, "#B9C0A9") + ChromeGtkFrame::scrollbar-slider-normal-color = "#B9C0A9" +} + +class "ChromeGtkFrame" style "chrome-hacks" +widget_class "*Chrom*Button*" style "chromium_toolbar_button" + diff --git a/desktop-themes/YaruGreen/gtk-2.0/gtkrc b/desktop-themes/YaruGreen/gtk-2.0/gtkrc new file mode 100644 index 00000000..57301335 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-2.0/gtkrc @@ -0,0 +1,408 @@ + +# Please keep this gtkrc in sync with the other ones from Clearlooks based themes. + +gtk-color-scheme = "base_color:#ffffff\nfg_color:#000000\ntooltip_fg_color:#000000\nselected_bg_color:#B9C0A9\nselected_fg_color:#42453E\ntext_color:#1a1a1a\nbg_color:#edeceb\ntooltip_bg_color:#EAF5B5\nlink_color:#0000ee\nvisited_link_color:#551a8b" + +style "default" { + xthickness = 1 + ythickness = 1 + + ####################### + # Style Properties + ####################### + GtkButton::child-displacement-x = 1 + GtkButton::child-displacement-y = 1 + GtkButton::default-border = { 0, 0, 0, 0 } + GtkButton::image-spacing = 4 + GtkToolButton::icon-spacing = 4 + + GtkCheckButton::indicator-size = 14 + + GtkPaned::handle-size = 6 + + GtkRange::trough-border = 0 + GtkRange::slider-width = 15 + GtkRange::stepper-size = 15 + + GtkScale::slider-length = 23 + GtkScale::trough-side-details = 1 + + GtkScrollbar::min-slider-length = 30 + GtkMenuBar::internal-padding = 0 + GtkExpander::expander-size = 16 + GtkToolbar::internal-padding = 1 + GtkTreeView::expander-size = 14 + GtkTreeView::vertical-separator = 0 + + GtkMenu::horizontal-padding = 0 + GtkMenu::vertical-padding = 0 + + WnckTasklist::fade-overlay-rect = 0 + # The following line hints to gecko (and possibly other appliations) + # that the entry should be drawn transparently on the canvas. + # Without this, gecko will fill in the background of the entry. + GtkEntry::honors-transparent-bg-hint = 1 + + GtkEntry::progress-border = { 2, 2, 2, 2 } + + GtkWidget::link-color = @link_color + GtkWidget::visited-link-color = @visited_link_color + + #################### + # Color Definitions + #################### + bg[NORMAL] = @bg_color + bg[PRELIGHT] = shade (1.02, @bg_color) + bg[SELECTED] = @selected_bg_color + bg[INSENSITIVE] = @bg_color + bg[ACTIVE] = shade (0.9, @bg_color) + + fg[NORMAL] = @fg_color + fg[PRELIGHT] = @fg_color + fg[SELECTED] = @selected_fg_color + fg[INSENSITIVE] = darker (@bg_color) + fg[ACTIVE] = @fg_color + + text[NORMAL] = @text_color + text[PRELIGHT] = @text_color + text[SELECTED] = @selected_fg_color + text[INSENSITIVE] = darker (@bg_color) + text[ACTIVE] = @selected_fg_color + + base[NORMAL] = @base_color + base[PRELIGHT] = shade (0.95, @bg_color) + base[SELECTED] = @selected_bg_color + base[INSENSITIVE] = @bg_color + base[ACTIVE] = shade (0.9, @selected_bg_color) + + engine "clearlooks" { + colorize_scrollbar = TRUE + reliefstyle = 1 + menubarstyle = 2 + toolbarstyle = 1 + animation = FALSE + radius = 3.0 + style = GUMMY + + # Set a hint to disable backward compatibility fallbacks. + hint = "use-hints" + } +} + +style "wide" { + xthickness = 2 + ythickness = 2 +} + +style "wider" { + xthickness = 3 + ythickness = 3 +} + +style "entry" { + xthickness = 3 + ythickness = 3 + + bg[SELECTED] = mix (0.4, @selected_bg_color, @base_color) + fg[SELECTED] = @text_color + + engine "clearlooks" { + focus_color = shade (0.65, @selected_bg_color) + } +} + +style "spinbutton" { + + engine "clearlooks" { + hint = "spinbutton" + } +} + +style "scale" { + xthickness = 2 + ythickness = 2 + + engine "clearlooks" { + hint = "scale" + } +} + +style "vscale" { + + engine "clearlooks" { + hint = "vscale" + } +} + +style "hscale" { + + engine "clearlooks" { + hint = "hscale" + } +} + +style "scrollbar" { + xthickness = 2 + ythickness = 2 + + engine "clearlooks" { + hint = "scrollbar" + } +} + +style "hscrollbar" { + + engine "clearlooks" { + hint = "hscrollbar" + } +} + +style "vscrollbar" { + + engine "clearlooks" { + hint = "vscrollbar" + } +} + +style "notebook_bg" { + + bg[NORMAL] = shade (1.02, @bg_color) +} + +style "button" { + xthickness = 3 + ythickness = 3 + + bg[NORMAL] = shade (1.04, @bg_color) + bg[PRELIGHT] = shade (1.06, @bg_color) + bg[ACTIVE] = shade (0.85, @bg_color) +} + +# The color is changed by the notebook_bg style, this style +# changes the x/ythickness +style "notebook" { + xthickness = 3 + ythickness = 3 +} + +style "statusbar" { + + engine "clearlooks" { + hint = "statusbar" + } +} + +style "comboboxentry" { + + engine "clearlooks" { + # Note: + # If you set the appears-as-list option on comboboxes in the theme, + # then you should set this hint on the combobox instead. + hint = "comboboxentry" + } +} + +style "menubar" { + + engine "clearlooks" { + hint = "menubar" + } +} + +style "menu" { + xthickness = 1 + ythickness = 1 + + bg[NORMAL] = shade (1.08, @bg_color) + + engine "clearlooks" { + radius = 0.0 + } +} + +style "menu_item" { + xthickness = 2 + ythickness = 3 + + fg[PRELIGHT] = @selected_fg_color +} + +# This style is there to modify the separator menu items. The goals are: +# 1. Get a specific height. +# 2. The line should go to the edges (ie. no border at the left/right) +style "separator_menu_item" { + xthickness = 1 + ythickness = 0 + + GtkSeparatorMenuItem::horizontal-padding = 0 + GtkWidget::wide-separators = 1 + GtkWidget::separator-width = 1 + GtkWidget::separator-height = 7 +} + +style "frame_title" { + + fg[NORMAL] = lighter (@fg_color) +} + +style "treeview" { + + engine "clearlooks" { + hint = "treeview" + } +} + +# The almost useless progress bar style +style "progressbar" { + xthickness = 1 + ythickness = 1 + + fg[PRELIGHT] = @selected_fg_color + + engine "clearlooks" { + # Explicitly set the radius for the progress bars inside menu items. + radius = 3.0 + + hint = "progressbar" + } +} + +# This style is based on the default style, so that the colors from the button +# style are overriden again. +style "treeview_header" = "default" { + xthickness = 2 + ythickness = 1 + + engine "clearlooks" { + hint = "treeview-header" + } +} + +style "tooltips" { + xthickness = 4 + ythickness = 4 + + bg[NORMAL] = @tooltip_bg_color + fg[NORMAL] = @tooltip_fg_color +} + +# fix for caja + +style "caja-location" { + + bg[NORMAL] = mix (0.60, shade (1.05, @bg_color), @bg_color) +} +widget "*.caja-extra-view-widget" style : highest "caja-location" + +# Wrokaroudn style for places where the text color is used instead of the fg color. +style "text_is_fg_color_workaround" { + + text[NORMAL] = @fg_color + text[PRELIGHT] = @fg_color + text[SELECTED] = @selected_fg_color + text[ACTIVE] = @fg_color + text[INSENSITIVE] = darker (@bg_color) +} + +# Workaround style for menus where the text color is used instead of the fg color. +style "menuitem_text_is_fg_color_workaround" { + + text[NORMAL] = @fg_color + text[PRELIGHT] = @selected_fg_color + text[SELECTED] = @selected_fg_color + text[ACTIVE] = @fg_color + text[INSENSITIVE] = darker (@bg_color) +} + +# Workaround style for places where the fg color is used instead of the text color. +style "fg_is_text_color_workaround" { + + fg[NORMAL] = @text_color + fg[PRELIGHT] = @text_color + fg[SELECTED] = @selected_fg_color + fg[ACTIVE] = @selected_fg_color + fg[INSENSITIVE] = darker (@bg_color) +} + +# Style to set the toolbar to use a flat style. This is because the "New" button in +# Evolution is not drawn transparent. So if there is a gradient in the background it will +# look really wrong. +# See http://bugzilla.gnome.org/show_bug.cgi?id=446953. +style "evo_new_button_workaround" { + + engine "clearlooks" { + toolbarstyle = 0 + } +} + +############################################################################### +# The following part of the gtkrc applies the different styles to the widgets. +############################################################################### + +# The default style is applied to every widget +class "GtkWidget" style "default" + +class "GtkSeparator" style "wide" +class "GtkFrame" style "wide" +class "GtkCalendar" style "wide" +class "GtkEntry" style "entry" + +class "GtkSpinButton" style "spinbutton" +class "GtkScale" style "scale" +class "GtkVScale" style "vscale" +class "GtkHScale" style "hscale" +class "GtkScrollbar" style "scrollbar" +class "GtkHScrollbar" style "hscrollbar" +class "GtkVScrollbar" style "vscrollbar" + +# General matching follows. The order is choosen so that the right styles override +# each other. EG. progressbar needs to be more important than the menu match. +widget_class "*" style "notebook_bg" +# This is not perfect, it could be done better. +# (That is modify *every* widget in the notebook, and change those back that +# we really don't want changed) +widget_class "**" style "notebook_bg" +widget_class "**" style "notebook_bg" +widget_class "**" style "notebook_bg" +widget_class "**" style "notebook_bg" +widget_class "**" style "notebook_bg" + +widget_class "*" style "button" +widget_class "*" style "notebook" +widget_class "**" style "statusbar" + +widget_class "**" style "comboboxentry" +widget_class "**" style "comboboxentry" + +widget_class "**" style "menubar" +widget_class "**" style "menu" +widget_class "**" style "menu_item" +widget_class "**" style "separator_menu_item" + +widget_class "*.." style "frame_title" +widget_class "*.*" style "treeview" + +widget_class "*" style "progressbar" + +# Treeview headers (and similar stock GTK+ widgets) +widget_class "*.." style "treeview_header" +widget_class "*.." style "treeview_header" +widget_class "*.." style "treeview_header" +widget_class "*.." style "treeview_header" + +# The window of the tooltip is called "gtk-tooltip" +################################################################## +# FIXME: +# This will not work if one embeds eg. a button into the tooltip. +# As far as I can tell right now we will need to rework the theme +# quite a bit to get this working correctly. +# (It will involve setting different priorities, etc.) +################################################################## +widget "gtk-tooltip*" style "tooltips" + +########################################################################## +# Following are special cases and workarounds for issues in applications. +########################################################################## + +include "applications.rc" + diff --git a/desktop-themes/YaruGreen/gtk-3.0/Makefile.am b/desktop-themes/YaruGreen/gtk-3.0/Makefile.am new file mode 100644 index 00000000..38dc7810 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/Makefile.am @@ -0,0 +1,20 @@ +THEME_NAME=YaruGreen + +themedir = $(datadir)/themes/$(THEME_NAME)/gtk-3.0 + +theme_DATA = \ + gtk.css \ + settings.ini + +%.ini: %.ini.in + $(AM_V_GEN) sed -e 's|@bindir[@]|$(bindir)|g' $< > $@ + +EXTRA_DIST = \ + $(theme_DATA) \ + settings.ini.in + +CLEAN = \ + settings.ini + +SUBDIRS = \ + assets diff --git a/desktop-themes/YaruGreen/gtk-3.0/README b/desktop-themes/YaruGreen/gtk-3.0/README new file mode 100644 index 00000000..f7a50bec --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/README @@ -0,0 +1,34 @@ +Summary +------- + +* Do not edit the CSS directly, edit the source SCSS files +* To be able to use the latest/adequate version of SASS, install sassc +* The configure script will detect whether or not you have sassc installed; + if you do, it will regenerate the CSS every time you modify the SCSS files + and rebuild GTK+. + +How to tweak the theme +---------------------- + +Adwaita is a complex theme, so to keep it maintainable it's written and processed in SASS. The +generated CSS is then transformed into a GResource file during GTK+ build and used at runtime in a +non-legible or editable form. + +It is very likely your change will happen in the _common.scss file. That's where all the widget +selectors are defined. Here's a rundown of the "supporting" stylesheets, that are unlikely to be the +right place for a drive by stylesheet fix: + +_colors.scss - global color definitions. We keep the number of defined colors to a necessary minimum, + most colors are derived form a handful of basics. It covers both the light variant and + the dark variant. + +_colors-public.scss - SCSS colors exported through gtk to allow for 3rd party apps color mixing. + +_drawing.scss - drawing helper mixings/functions to allow easier definition of widget drawing under + specific context. This is why Adwaita isn't 15000 LOC. + +_common.scss - actual definitions of style for each widget. This is where you are likely to add/remove + your changes. + +You can read about SASS at http://sass-lang.com/documentation/. Once you make +your changes to the _common.scss file, GTK+ will rebuild the CSS files. diff --git a/desktop-themes/YaruGreen/gtk-3.0/_apps.scss b/desktop-themes/YaruGreen/gtk-3.0/_apps.scss new file mode 100644 index 00000000..ef2aaa7a --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/_apps.scss @@ -0,0 +1,1144 @@ +@import "palette"; + +/* set $ambiance to null, unless already defined */ +$ambiance: null !default; + +/*********** + * Tweak Tool * + ***********/ + list.tweak-categories separator { + // hide sidebar separators + // make the sidebar look like a normal sidebar + background: transparent; + } + + /*********** + * Nautilus * + ***********/ + .nautilus-window { + .nautilus-canvas-item.dim-label, + .nautilus-list-dim-label { + color: mix($text_color, $base_color); + } + // keep details box visible + // details box looks ugly when many items are selected and it floats above the orange + background-image: none; + background-color: if($variant=='light', white, $bg_color); + &:backdrop { background-color: if($variant=='light', $backdrop_base_color, $backdrop_bg_color); } + + placessidebar { + background-color: if($variant=='light', $bg_color, $base_color); + &:backdrop { + background-color: $backdrop_bg_color; + } + } + + // Makes icons less bright in backdrop + @at-root %dim_icons_in_backdrop, + & *scrolledwindow:backdrop { opacity: 0.9; } + + infobar { + background-color: if($variant=="light", lighten($silk, 10%), $slate); + &:backdrop { background-color: $backdrop_bg_color; } + } + + paned box.floating-bar { + background-color: $bg_color; + border-style: solid; + border-color: if($variant=='light', lighten($borders_color, 8.3%), darken($borders_color, 1%)); + border-width: 1px 0 0 1px; + border-radius: $button_radius 0 0 0; + + button:dir(ltr).circular.flat.image-button { + background: radial-gradient(circle at 50%, white 35%, $bg_color 1%); + color: $destructive_color; + } + + button:dir(ltr).circular.flat.image-button:hover { + border: 1px solid $borders_color; + background: radial-gradient(circle at 50%, white 30%, $base_hover_color 16%); + color: lighten($destructive_color, 5%); + + } + } + + .searchbar-container searchbar { + // get rid of a 1px white line shown at the top of the window + // applies to the desktop too + background: transparent; + border-color: transparent; + } + + treeview:drop(active):focus { + // drop target green bottom border was missing + border-bottom: 1px solid $drop_target_color; + } + + treeview.view header button { + background-color: if($variant=='light', $base_color, $base_color); + background-image: none; + border-color: transparentize($borders_color, 0.6); + border-left: 1px; + + &:hover {background-color: $bg_color;} + &:backdrop { background-color: $backdrop_base_color;} + } + + .nautilus-list-view .view { + border-bottom: 1px solid transparentize($borders_color, 0.8); + + // Hide superfluous treeview drop target indication + &.dnd { border-style: none; } + + $_selection_bg: if($variant=='light', darken($bg_color, 5%), lighten($base_color, 5%)); + treeview { + &:selected { + background-color: $_selection_bg; + color: $fg_color; + &:hover { + background-color: if($variant=='light', darken($_selection_bg, 5%), lighten($_selection_bg, 5%)); + } + &:backdrop { + color: $backdrop_fg_color; + background-color: $_selection_bg; + } + } + } + } + + notebook > header { + background: $bg_color; + } + + paned > separator { + // separator between sidebar and main window view + background-image: image(if($variant=='light', transparentize($borders_color, 0.6), darken($borders_color, 1%))); + &:backdrop { background-image: image(transparentize($borders_color, 0.7)); } + } + + // custom code from nautilus Adwaita.css for entries and the pathbar + entry.search > * { + margin: 5px; + } + + .path-bar-box { + border-radius: 5px; + border: 1px solid if($ambiance, darken($headerbar_bg_color, 9%), $borders_color); + &:backdrop { border-color: if($ambiance, $headerbar_bg_color, $backdrop_borders_color);} + background-color: if($ambiance, lighten($headerbar_bg_color, 6.5%), $bg_color); + padding-right: 6px; + &:backdrop { border-color: if($ambiance, darken($inkstone, 9%), $backdrop_borders_color); } + } + + .nautilus-path-bar button { + margin: 0px; + } + + .nautilus-path-bar button:first-child { + border-width: 0px 1px 0px 0px; + border-radius: 3.5px 0px 0px 3.5px; + } + + .nautilus-path-bar button:not(:first-child) { + border-width: 0px 1px 0px 1px; + border-radius: 0px 0px 0px 0px; + } + + .nautilus-path-bar button:not(:checked) image { opacity: 0.8; } /* dim the icon when not checked */ + + // This is the Icon + Text beneath - it's one widget + .nautilus-canvas-item { + outline-width: 0; + // First, remove the background + background-color: rgba(255, 255, 255, 0.1); + // Then bring it back for when it receives a direction + &:selected:not(:backdrop) { + &:dir(ltr) { background-color: $selected_bg_color; } + &:not(:dir(ltr)) { background-color: rgba(175, 175, 175, 0.5); } + color: $selected_fg_color; + } + + &:backdrop:selected { + background-color: $selected_bg_color; + color: $backdrop_selected_fg_color; + } + } +} + +// Nautilus disk space dialogue styling +// Copied from the nautilus adwaita.css +// keeping the CSS code style to make upstream updates easier + +$_disk_space_unknown: $insensitive_bg_color; +$_disk_space_used: $progress_bg_color; +$_disk_space_free: if($variant=='light', darken($bg_color, 10%), $bg_color); + +.disk-space-display { + border-style: solid; + border-width: 2px; +} + +.disk-space-display.unknown { + background-color: $_disk_space_unknown; + border-color: transparentize($_disk_space_unknown, 0.7); + color: $_disk_space_unknown; +} +.disk-space-display.unknown.border { + color: transparentize($_disk_space_unknown, 0.7); +} + +.disk-space-display.used { + background-color: $_disk_space_used; + border-color: transparentize($_disk_space_used, 0.7); + color: $_disk_space_used; +} +.disk-space-display.used.border { + color: transparentize($_disk_space_used, 0.7); +} + +.disk-space-display.free { + background-color: $_disk_space_free; + border-color: transparentize($_disk_space_free, 0.7); + color: $_disk_space_free; +} +.disk-space-display.free.border { + color: transparentize($_disk_space_free, 0.7); +} + +/************ + * Terminal * + ************/ + +$_terminal_bg_color: #300A24; +$_terminal_fg_color: white; + +terminal-window { + + // use unity 8 colors + // only colors, let everything else be inherited + .terminal-screen { + // inherits from .background + background-color: $_terminal_bg_color; + color: $_terminal_fg_color; + + &:backdrop { + background-color: lighten($_terminal_bg_color, 2%); + color: $backdrop_selected_fg_color; + } + } + + notebook { + scrollbar { + // inherits from scrollbar + background-color: transparent; + border-color: transparent; + + &:backdrop { + background-color: transparent; + border-color: transparent + } + + slider { + // avoids scrollbar protruding from the terminal window on wayland session + // workaround for https://bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1720651 + margin: 0; + border-width: 3px; + + &:backdrop { + background-color: gtkalpha(currentColor, 0.1); + } + + &:disabled { + background-color: transparent; + } + } + + &.dragging, + &.hovering { + background-color: transparent; + } + } + } +} + + /****************** + * GNOME Software * + ******************/ + .review-row { + margin-bottom: 10px; + padding: 6px 12px; + box-shadow: 0 1px 2.5px transparentize(black, 0.75); + outline-offset: -1px; + + &, + &:not(:selected):not(:backdrop):hover, + &:not(:selected):not(:backdrop):active { background-color: $base_color; } + + &:backdrop { background-color: $backdrop_base_color; } + + &:last-child { margin-bottom: 0; } + + > grid { margin-top: -24px; } + } + + .app-listbox-header { background: $dark_fill; } + + .list-box-app-row { + border-radius: 0; + border-color: $borders_color; + border-style: none solid solid solid; + border-width: 0 1px 1px 1px; + margin: -1px 0 0 0; + + & ~ separator { + background-color: $bg_color; + border: none; + min-height: 0px; + } + } + + // Avoid double border when list in included in a box (e.g. Updates view) + box > list row.list-box-app-row { + border: none; + } + + //Used as update count in GNOME software + .counter-label { + margin-top: 2px; + margin-bottom: 2px; + border-width: 0px; + padding-left: 2px; + padding-right: 2px; + box-shadow: inset 0 0 10px 10px $success_color; + } + + /********* + * Gedit * + *********/ + .gedit-bottom-panel-paned notebook > header { + background: if($variant==light, $porcelain, $bg_color); + } + + .gedit-bottom-panel-paned ~ statusbar { + // give gedit's bottom panel a border + border-top: 1px solid $borders_color; + + &:backdrop { border-color: $backdrop_borders_color; } + } + + .gedit-search-slider { + // gives gedit search entry some padding and a border + // otherwise it's right under the headerbar + background: $bg_color; + border: 1px solid $borders_color; + border-top-style: none; + padding: 4px 8px; + border-radius: 0 0 5px 5px; // same radius as tooltips + + &:backdrop { + background-color: $backdrop_bg_color; + border-color: $backdrop_borders_color; + } + } + + .gedit-search-entry-occurrences-tag { + color: transparentize($fg_color, 0.65); + border: none; // Removed ugly tag border + box-shadow: none; // Removed button inset shadow + margin: 2px; + padding: 2px; + } + + .gedit-document-panel { // 'documents' pane + + background-color: $bg_color; + row.activatable { padding: 6px; } + + row button { // 'close' button + min-width: 22px; + min-height: 22px; + padding: 0; + margin: 0; + border: none; + } + + row:hover button { + &:hover { + background-color: rgba($fg_color, 0.15); + } + &:active { + background-color: rgba($fg_color, 0.25); + } + } + + row:hover:selected button:hover { + color: $selected_fg_color; + } + } + + /*************** + * GNOME Disks * + ***************/ + + headerbar button image ~ window decoration ~ menu separator { + // gnome disks headerbar menu seems to inherit the headerbar separator bg color + // no unique class names or id used here so this rule is as specific as it can be + background: $borders_color; + } + + /******** + * Nemo * + ********/ + .nemo-properties-dialog { + .dialog-action-box .dialog-action-area { + // add margin to preferences buttons + margin: 2px 6px 4px; + } + + toolbar stackswitcher.linked button { + margin-right: 0; + &:backdrop { + color: $backdrop_fg_color; + background-color: $backdrop_bg_color; + } + } + } + + .nemo-window { + .sidebar { + scrolledwindow.frame.nemo-places-sidebar { + // get rid of double border in sidebar + border: none; + } + + viewport.frame box.vertical treeview.view.places-treeview { + // use sidebar bg color + background-image: image($sidebar_bg_color); + border-radius: 0; // get rid of weird radius on selected rows + &:backdrop { background-image: image($backdrop_sidebar_bg_color); } + &:selected { background: $selected_bg_color; } + &:not(:selected) { + &:not(:backdrop):hover { background-image: image($base_hover_color); } + } + } + + } + + .nemo-inactive-pane .view, .nemo-inactive-pane iconview { + // Shades the background of the inactive pane + background-color: $backdrop_bg_color; + } + + .nemo-window-pane { + widget.entry { + // Add border around rename text entry + border: 1px solid; + border-radius: 3px; + color: $fg_color; + border-color: $selected_bg_color; + background-color: $bg_color; + } + widget.entry:selected { + // Add highlighting to selected text in rename text entry + border: 1px solid; + border-radius: 3px; + color: $selected_fg_color; + border-color: $selected_bg_color; + background-color: $selected_bg_color; + } + } + + .view { + // imports nautilus tweaks + // dim icons in backdrop + &:backdrop { @extend %dim_icons_in_backdrop; } + } + + toolbar.horizontal.primary-toolbar { + // add border under toolbar + border-bottom: 1px solid $borders_color; + + widget.linked.raised button { + // use proper icons for next and left in stackswitcher-like pathbar + &:first-child widget {-gtk-icon-source: -gtk-icontheme('go-previous-symbolic'); } + &:last-child widget {-gtk-icon-source: -gtk-icontheme('go-next-symbolic'); } + } + + toolitem box widget * { + // reset toolbar button dimensions + min-height: 0; + min-width: 0; + } + + .linked button { + // link linked buttons + margin-right: 0; + } + + button { + // return non-flat buttons + @each $state, $t in ("", "normal"), + (":hover", "hover"), + (":active, &:checked", "active"), + (":disabled", "insensitive"), + (":disabled:active, &:disabled:checked", "insensitive-active"), + (":backdrop", "backdrop"), + (":backdrop:active, &:backdrop:checked", 'backdrop-active'), + (":backdrop:disabled", 'backdrop-insensitive'), + (":backdrop:disabled:active, &:backdrop:disabled:checked", 'backdrop-insensitive-active') { + &#{$state} { @include button($t) } + } + } + } + } + + /************* + * GNOME ToDo * + **************/ + + .org-gnome-Todo { + taskrow.activatable.new-task-row button.popup.toggle { + border-radius: 0px; + border: none; + border-left: 1px solid $borders-color; + padding-left: 10px; padding-right: 10px; + -gtk-outline-radius: 0px; + + } + + viewport.view, listbox.transparent { + background-color: darken($base_color,5%); + &:backdrop { background-color: $backdrop_base_color} + } + } + + /*********** + * Firefox * + ***********/ + #MozillaGtkWidget.background { + // REMOVE THIS when firefox supports rounded menus + menu, .menu,.context-menu { border-radius: 0; } + + @if $ambiance { + menubar, + .menubar, + menubar > menuitem:hover { + background-color: $headerbar_bg_color; + color:$headerbar_fg_color; + } + } + + // Adapt scrollbars a bit more to the GTK Scrollbar styling + scrollbar { + background-color: transparent; + border-color: transparent; + + slider { + background-color: darken($scrollbar_slider_color, 10%); + &:hover { background-color: darken($scrollbar_slider_hover_color, 10%); } + &:hover:active { background-color: $scrollbar_slider_active_color; } + &:backdrop { background-color: $backdrop_scrollbar_slider_color; } + &:disabled { background-color: transparent; } + } + + trough { + background-color: transparentize($bg_color, 0.8); + } + } + } + + normal-button { + @include button(normal); + + &:hover { + @include button(hover); + } + &:active { @include button(active)} + + &:disabled {@include button(insensitive);} + } + + /*********** + * Ubiquity * + ***********/ + + #live_installer { + + #title_eventbox { + background-color: $bg_color; + color: $fg_color; + &:backdrop { + background-color: $backdrop_bg_color; + color: $backdrop_fg_color; + } + } + + #dot_grid progressbar { + border-radius: 100%; + padding: 1px; + padding-top: 2px; + background-color: white; + border: 1px solid $progress_bg_color; + + .empty { + border-radius: 100%; + background-color: white; + padding: 0px; + } + + .full progress { + border-radius: 100%; + padding: 1px; + padding-top: 2px; + margin-bottom: 2px; + } + } + } + #dialog-action_area1 { padding-bottom: 5px; padding-right: 5px } + + /*********** + * Geary * + ***********/ + + .geary-expanded headerbar { border: none; } + + /*********** + * usb-creator-gtk * + ***********/ + + #dialog-action_area3 { margin: 5px; } + + /*********** + * Evolution * + ***********/ + + assistant.background scrolledwindow .vertical checkbutton { + // checkbox is clipped but this is undetectable till it gets keyboard focus + // so we're pushing it to the right to have the focus ring be displayed properly + margin-left: 1px + } + + +/*********** +* Mate * +***********/ +$_panel_bg_color: $bg_color; +$_panel_fg_color: $fg_color; +$_base_bg_color: if($ambiance==true, $_panel_bg_color, if($variant=='light', $bg_color, $_panel_bg_color)); +$_base_fg_color: if($ambiance==true, $_panel_fg_color, if($variant=='light', $fg_color, $_panel_fg_color)); +$_backdrop_base_bg_color: lighten(if($ambiance==true, $_panel_bg_color, if($variant=='light', $bg_color, $_panel_bg_color)), 3%); +$_backdrop_base_fg_color: transparentize(if($ambiance==true, $_panel_fg_color, if($variant=='light', $fg_color, $_panel_fg_color)), 0.3); +$_base_insensitive_fg_color: if($ambiance==true, lighten($_panel_fg_color, 10%), if($variant=='light', $insensitive_fg_color, lighten($_panel_fg_color, 10%))); +$_base_border_color: if($ambiance==true, $headerbar_border_color, if($variant=='light', $borders_color, $headerbar_border_color)); +$_base_hover_color: if($ambiance==true, lighten($_panel_bg_color, 4%), if($variant=='light', darken($bg_color, 4%), lighten($_panel_bg_color, 4%))); +$_base_active_color: if($ambiance==true, darken($_panel_bg_color, 4%), if($variant=='light', darken($bg_color, 4%), darken($_panel_bg_color, 4%))); +$_wm_border: if($variant=='light', transparentize(black, 0.77), transparentize($borders_color, 0.1)); +$_wm_border_backdrop: if($variant=='light', transparentize(black, 0.82), transparentize($borders_color, 0.1)); +$_wm_shadow: 0 3px 9px 1px transparentize(black, 0.5), 0 0 0 1px $_wm_border; //doing borders with box-shadow; + +/************** + * Mate-Panel * + **************/ + +/* the panel bar itself */ +#PanelPlug, +.mate-panel-menu-bar, +PanelToplevel.background { + background-color: $_base_bg_color; + background-image: none; + color: $fg_color; + text-shadow: none; + menu { + border-radius: $menu_radius; + padding: 4px 0px; + .csd & { + border: none; // axes borders in a composited env + border-radius: $menu_radius; + } + } +} +// Axe the border under panel menubars +#PanelPlug menubar { box-shadow: none; } + +/* workaround to avoid unwanted black frames behind menus if switching compositor on/off */ +.mate-panel-menu-bar .window-frame.csd.popup { + box-shadow: none; +} + +// Force round menus for MATE, because they are populated from the top/bottom panels +// And thus for MATE not just "legacy" menus used in "old" applications +menubar, +.menubar { + + > menuitem { + + menu { + &:dir(rtl), &:dir(ltr) { // specificity bump + border-radius: $menu_radius; + } + } + } + + .csd.popup decoration { border-radius: $menu_radius; } +} + +/* hide buttons */ +PanelToplevel > widget > button { + border-image: none; + background-image: none; + background: transparent; + border-style: none; + border-radius: 0px; + padding: 0px; + box-shadow: none; + color: $_base_fg_color; +} + +#PanelApplet { + border-radius: $menu_radius; +} + +PanelWidget > PanelSeparator { + border-width: 0; + background-color: transparent; + color: $_base_border_color; +} + +/* the grid left from wnckpager and wncktasklist */ +MatePanelAppletFrameDBus > MatePanelAppletFrameDBus { + background-image: none; + background-color: transparent; + background-repeat: no-repeat; + background-position: left; +} + +/* this makes text readable with all kind of wallpapers if using a transparent panel */ +#PanelApplet label, +.mate-panel-menu-bar menubar > menuitem { + color: $_base_fg_color; + text-shadow: none; + &:hover { + color: $_base_fg_color; + background-image: linear-gradient(to bottom, + $button_active_gradient_a, + $button_active_gradient_b 3px, + $button_active_gradient_c 4px, + $button_active_gradient_d 50%, + $button_active_gradient_e 50%, + $button_active_gradient_f); + // box-shadow: inset 0 -3px 0 0 $selected_bg_color; + } +} + +/* outlines */ +window.background, /* selector where outlines are writen on GtkTrayIcon */ +.mate-panel-menu-bar menubar, +.mate-panel-menu-bar button, +.mate-panel-menu-bar PanelApplet { + outline-style: solid; + outline-offset: -2px; + outline-color: $focus_border_color; +} + +PanelApplet.wnck-applet .wnck-pager { + outline-style: solid; + outline-offset: -1px; + outline-color: $focus_border_color; +} + +/* main menu */ +/* set normal menubar menuitem */ +.mate-panel-menu-bar menubar > menuitem { + background-image: none; + box-shadow: none; +} + +/* set selected menubar menuitem */ +.mate-panel-menu-bar menubar > menuitem:hover { + background-color: transparent; + background-clip: border-box; + background-image: image($_base_hover_color); +} + +/* set normal menubar menu menuitem */ +.mate-panel-menu-bar menubar > menuitem > .popup.csd > menu > menuitem { + padding: 4px 5px 4px 5px; + border-width: 0px; +} + +/* set Mate menu menuitem */ +.mate-panel-menu-bar menu menuitem { + padding: 4px 5px 4px 5px; + border-width: 0px; +} + +/* all applets */ +.mate-panel-menu-bar #PanelApplet button { + &, &.flat { + &.toggle { + background-color: transparent; + color: $_base_fg_color; + border-radius: 4px; + border-color: $borders_color; + border-right-width: 1px; + border-left-width: 1px; + border-color: rgba(0,0,0,0.0); + box-shadow: inset 0px 1px $borders_color,inset 0px -1px $borders_color, inset 1px 0px $borders_color,inset -1px 0px $borders_color; + border-image: none; + text-shadow: none; + background-image: linear-gradient(to bottom, $button_gradient_a,$button_gradient_b 50%, $button_gradient_c 50%, $button_gradient_d ); + + + &:hover, &:active:hover, &:checked:hover { + background-image: linear-gradient(to bottom, + $button_hover_gradient_a 5%, + $button_hover_gradient_b 95%, + $button_hover_gradient_c); + border-color: $core_color_a; + } + + &:checked { + + + background-image: linear-gradient(to bottom, + $button_active_gradient_a, + $button_active_gradient_b 3px, + $button_active_gradient_c 4px, + $button_active_gradient_d 50%, + $button_active_gradient_e 50%, + $button_active_gradient_f); + } + } + } +} + +/* clock window */ +#MatePanelPopupWindow { + border-radius: $button_radius; +} + + +#PanelApplet > #clock-applet-button.flat.toggle { + background-color: transparent; + background-image: none; + border-color: transparent; + border-width: 0px; + box-shadow: none; +} + +#PanelApplet > #clock-applet-button.flat.toggle:hover { + box-shadow: inset 0px 1px $borders_color,inset 0px -1px $borders_color, inset 1px 0px $borders_color,inset -1px 0px $borders_color; + background-image: linear-gradient(to bottom, + $button_hover_gradient_a 5%, + $button_hover_gradient_b 95%, + $button_hover_gradient_c); + } + +#PanelApplet > #clock-applet-button.flat.toggle:checked { + box-shadow: inset 0px 1px $borders_color,inset 0px -1px $borders_color, inset 1px 0px $borders_color,inset -1px 0px $borders_color; + background-image: linear-gradient(to bottom, + $button_active_gradient_a, + $button_active_gradient_b 3px, + $button_active_gradient_c 4px, + $button_active_gradient_d 50%, + $button_active_gradient_e 50%, + $button_active_gradient_f); + } + +/* volume applet */ +.mate-panel-applet-slider, +.mate-panel-applet-slider.background { + border-radius: $menu_radius; + border: 1px solid $_wm_border; + background: transparent; + + frame { + background-color: $bg_color; + border-radius: $menu_radius; + padding: 1px; + margin: 1px; + + border { + border-image: none; + border-style: none; + border-radius:2px; + } + + frame { + background-color:transparent; + padding: 3px; + } + + /* brightness applet */ + button { + padding: 4px 5px 4px 0px; + background-image: none; + background-color: transparent; + border-style: none; + border-image: none; + color: $_base_fg_color; + margin: 0px; + &:checked { + // box-shadow: inset 0 -3px 0 0 $selected_bg_color; + } + } + } +} + +/* mate-indicator-applet */ +/* needed for a transparent panel */ +#fast-user-switch-applet > #fast-user-switch-menubar { + background-color: transparent; +} + +/* Classic icon style */ +.mate-panel-menu-bar { + -PanelMenuBar-icon-visible: true; +} + +/* system-monitor-applet, kill light frame border */ +.multiload-applet > box.horizontal > box.vertical > frame > border { + border-color: transparent; +} + +.multiload-applet > box.horizontal > box.vertical > frame { + box-shadow: $_wm_shadow; +} + +/***************** + * Mate-terminal * + *****************/ + +/* override for pavu-control */ +window.background.mate-terminal > box.vertical > notebook > header.top, +window.background.mate-terminal > box.vertical > notebook > stack > box { + border-style: none; + border-width: 0px; +} + +/* vte use hardcoded colors as upstream, ubuntu is patched */ +window.background.mate-terminal { + + + scrollbar { + &, &.vertical { + &, &:backdrop { + background-color: transparent; + } + } + + } + + } + + +// /* mate-screensaver lock dialog */ + +.lock-dialog { + // border-radius: $window_radius; + // box-shadow: 0 0 0 1px $_wm_border, 0 2px 8px 3px $_wm_shadow; +} + +// .lock-dialog frame { +// border-radius: 0px; +// border-style: none; +// border-width: 0px; +// } + +// .lock-dialog notebook { +// background-color: $_base_bg_color; +// } + +/****************** + * multimedia OSD * + ******************/ + +MsdOsdWindow.background.osd { + border-radius: $window_radius; + border: 1px solid transparentize(white, 0.85); + background-color: $osd_bg_color; + color: $osd_fg_color; + + .trough { + border-radius: $button_radius; + border: none; + background: darken($osd_fg_color, 70%); + } + + .progressbar { + border-radius: $button_radius; + background-color: $osd_fg_color; + border: none; + } +} + +.background.osd { + color: $osd_fg_color; + background-image: none; + background-color: $osd_bg_color; + border-radius: $window_radius; + border: 1px solid transparentize(white, 0.85); + + :selected { + background-color: $selected_bg_color; + } +} + +/************** + * Brisk-menu * + **************/ + +.brisk-menu { + .apps-list, .categories-list, entry { + margin: 4px; + } + + .apps-list, .categories-list { + border-radius: $menu_radius; + row:selected { background-color: $selected_bg_color; color: $selected_fg_color; } + } + + /* classic session button */ + button.flat.session-button { + padding: 5px 6px; + min-width: 24px; + } + + scrolledwindow { + border-width: 1px; + border-style: solid; + border-color: transparent; + margin: 4px; + } + + scrollbar { + background-image: none; + background-color: transparent; + border-style: solid; + border-color: transparent; + } +} + +// This should move into _tweaks.scss +// Or best would be adwaita, since there is no :hover for iconview there +iconview { + border-radius: $button_radius; + &:hover { + background-color: lighten($selected_bg_color, 10%); + } +} + + + +/* mate-keyboard-layout-view, mate-keyboard-layout-chooser */ +/* this way it styles only the border of the keys, the bg of the map itself + use the .view class */ +matekbd-keyboard-drawing { + background-color: $_base_bg_color; +} + +matekbd-keyboard-drawing:selected { + background-color: $selected_bg_color; + color: $selected_fg_color; +} + +#xkb-layout-chooser > box.dialog-vbox > box.vertical > box.vertical > frame > border { + border-radius: 0px; +} + +scrollbar { + background-image: none; + background-color: transparent; +} + +// Axing the border-radii for classic (not csd) dialog buttons +// So we don't end up with rounded buttons in a squared dialog frame +messagedialog.background:not(.csd) { + .dialog-action-area button { + border-radius: $button_radius; + -gtk-outline-radius: $button_radius; + border: 1px solid $borders_color; + margin: 4px; + margin-bottom: 6px; + &:first-child { + margin-left: 6px; + } + &:last-child { + margin-right: 6px; + } + } +} + +/************** + * Caja * + **************/ + +window.background.caja-navigation-window #Toolbar:backdrop { background-color: $backdrop_bg_color; } + +.caja-pathbar button { + min-width: 24px; + border-radius: 0; + border-right-width: 0; + margin-right: -3px; +} + +.caja-pathbar button.slider-button:nth-child(odd) { + border-radius: $button_radius 0px 0px $button_radius; +} + +.caja-pathbar button.slider-button:nth-child(even) { + border-radius: 0 $button_radius $button_radius 0; + border-right-width: 1px; +} + +// Removes roundness and highlight from +// Headerbars that are not the last vertical top element +// of the window +.background:not(.csd) headerbar:not(.titlebar) { + border-radius: 0; + box-shadow: none; +} + +// style mate control center +#slab_section_style2.vertical:dir(ltr) { + background-color: $base_color; + &, label { + &, &:dir(ltr) { + color: $text_color; + &:backdrop { color: $backdrop_text_color; } + } + } +} + +// Style mate panel pull down terminal search bar +window#Main.background { + $_pull_down_terminal_border_color: if($variant=='light', $borders_color, lighten(desaturate($base_color, 100%), 14%)); + #search { + background: $base_color; + color: $fg_color; + box-shadow: inset 100px 100px $base_color; // very dirty hack, otherwise we can't set the bg + border-bottom: 1px solid $_pull_down_terminal_border_color; + entry { border-color: $_pull_down_terminal_border_color; } + } + + +} + +window > box.vertical > box.vertical > box.vertical button.text-button { padding-left: 0px; padding-right: 0px; min-width: 2px; margin: 0px; } + +MatePanelAppletFrameDBus > MatePanelAppletFrameDBus { + background-image: -gtk-scaled(url("assets/panel-grid.svg")); + background-color: transparent; + color: #8f8f8f; + background-repeat: no-repeat; + background-position: left; +} + +/* for firefox and probably other apps */ +label:selected, +label selection, +label selection:focus, +label selection:hover { + color: $selected_fg_color; +} + diff --git a/desktop-themes/YaruGreen/gtk-3.0/_colors-public.scss b/desktop-themes/YaruGreen/gtk-3.0/_colors-public.scss new file mode 100644 index 00000000..3b638e2b --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/_colors-public.scss @@ -0,0 +1,119 @@ +//apps rely on some named colors to be exported +/* GTK NAMED COLORS + ---------------- + use responsibly! */ + +// Sass thinks we're using the colors in the variables as strings and may shoot +// warning, it's innocuous and can be defeated by using "" + $var +/* +widget text/foreground color */ +@define-color theme_fg_color #{"" +$fg_color}; + +/* +text color for entries, views and content in general */ +@define-color theme_text_color #{"" +$text_color}; + +/* +widget base background color */ +@define-color theme_bg_color #{"" +$bg_color}; + +/* +text widgets and the like base background color */ +@define-color theme_base_color #{"" +$base_color}; + +/* +base background color of selections */ +@define-color theme_selected_bg_color #{"" +$selected_bg_color}; + +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color #{"" +$selected_fg_color}; + +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #{"" +$insensitive_bg_color}; + +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color #{"" +$insensitive_fg_color}; + +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #{"" +$base_color}; + +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color #{"" +$backdrop_fg_color}; + +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color #{"" +$text_color}; + +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #{"" +$backdrop_bg_color}; + +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #{"" +$backdrop_base_color}; + +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #{"" +$selected_bg_color}; + +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color #{"" + $selected_fg_color}; + +/* +insensitive color on backdrop windows*/ +@define-color unfocused_insensitive_color #{"" + $backdrop_insensitive_color}; + +/* +widgets main borders color */ +@define-color borders #{"" +$borders_color}; + +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders #{"" +$backdrop_borders_color}; + +/* +these are pretty self explicative */ +@define-color warning_color #{"" +$warning_color}; +@define-color error_color #{"" +$error_color}; +@define-color success_color #{"" +$success_color}; +//@define-color destructive_color #{$destructive_color} + +//WM + +$_wm_highlight: if($variant=='light', $top_hilight, // Sass gets mad if this is + transparentize(black,1)); // done directly in the + // color definition + +/* +these colors are exported for the window manager and shouldn't be used in applications, +read if you used those and something break with a version upgrade you're on your own... */ +@define-color wm_title shade(#{$fg_color}, 1.8); +@define-color wm_unfocused_title #{$backdrop_fg_color}; +@define-color wm_highlight #{"" + $_wm_highlight}; +@define-color wm_borders_edge #{"" + $borders_edge}; + +@define-color wm_bg_a shade(#{$bg_color}, 1.2); +@define-color wm_bg_b #{$bg_color}; + +@define-color wm_shadow alpha(black, 0.35); +@define-color wm_border alpha(black, 0.18); + +@define-color wm_button_hover_color_a shade(#{$bg_color}, 1.3); +@define-color wm_button_hover_color_b #{$bg_color}; +@define-color wm_button_active_color_a shade(#{$bg_color}, 0.85); +@define-color wm_button_active_color_b shade(#{$bg_color}, 0.89); +@define-color wm_button_active_color_c shade(#{$bg_color}, 0.9); + +//FIXME this is really an API + +/* content view background such as thumbnails view in Photos or Boxes */ +@define-color content_view_bg #{"" + $base_color}; + +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #{"" + if($variant == 'light', $base_color, darken($base_color,6%))}; diff --git a/desktop-themes/YaruGreen/gtk-3.0/_colors.scss b/desktop-themes/YaruGreen/gtk-3.0/_colors.scss new file mode 100644 index 00000000..08934392 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/_colors.scss @@ -0,0 +1,243 @@ +// When color definition differs for dark and light variant +// it gets @if ed depending on $variant + +// + +@function gtkalpha($color, $opacity) { + @if $color=="currentColor" { + @return unquote("alpha(#{$color}, #{$opacity})"); + } @else { + @return rgba($color, $opacity); + } +} + +@function gtkmix($color1, $color2, $multiplier) { + $alpha: blend(alpha($color1), alpha($color2), $multiplier); + + @if $alpha<=0 { + @return rgba(0, 0, 0, $alpha); + } @else { + $red: blend(red($color1) * alpha($color1), red($color2) * alpha($color2), $multiplier) / $alpha; + $green: blend(green($color1) * alpha($color1), green($color2) * alpha($color2), $multiplier) / $alpha; + $blue: blend(blue($color1) * alpha($color1), blue($color2) * alpha($color2), $multiplier) / $alpha; + + @return rgba($red, $green, $blue, $alpha); + } +} + +@function gtkshade($color, $multiplier) { + $new: hsla(hue($color), saturation($color) * $multiplier, lightness($color) * $multiplier, alpha($color)); + @return $new; +} + +// +@import 'palette'; + +$base_color: #ffffff; +$text_color: #1a1a1a; +$bg_color: $core_color_b; +$fg_color: #000000; + +$selected_fg_color: #42453E; +$selected_bg_color: gtkshade($core_color_a,0.9); + +$selected_borders_color: gtkshade($core_color_a,0.61); +$borders_color: gtkshade($core_color_b, 0.61); +$alt_borders_color: if($variant == 'light', darken($bg_color, 24%), darken($bg_color, 8%)); +$borders_edge: if($variant == 'light', transparentize(white, 0.2), transparentize($fg_color, 0.93)); +$link_color: darken($core_color_a, 40%); +$link_visited_color: #551a8b; +$top_hilight: $borders_edge; +$dark_fill: mix($borders_color, $bg_color, 50%); +$headerbar_color: if($variant == 'light', lighten($bg_color, 5%), darken($bg_color, 3%)); +$popover_bg_color: gtkshade($core_color_b, 1.1); +$popover_hover_color: #000000; + +$scrollbar_bg_color: if($variant == 'light', mix($bg_color, $fg_color, 80%), mix($base_color, $bg_color, 50%)); +$scrollbar_slider_color: mix($fg_color, $bg_color, 60%); +$scrollbar_slider_hover_color: mix($fg_color, $bg_color, 80%); +$scrollbar_slider_active_color: if($variant=='light', darken($selected_bg_color, 10%), lighten($selected_bg_color, 10%)); + +$warning_color: $yellow; +$error_color: $red; +$success_color: lighten($green, 5%); +$destructive_color: if($variant == 'light', $red, darken($red, 10%)); + +$osd_fg_color: #eeeeec; +$osd_text_color: white; +$osd_bg_color: transparentize(#252621, 0.2); +$osd_insensitive_bg_color: $osd_bg_color; +$osd_insensitive_fg_color: $osd_fg_color; +$osd_borders_color: transparentize(black, 0.3); + +$sidebar_bg_color: mix($bg_color, $base_color, 50%); +$base_hover_color: transparentize($fg_color, 0.95); + +$tooltip_borders_color: transparentize(white, 0.9); +$shadow_color: transparentize(black, 0.9); + +$drop_target_color: $success_color; + +//insensitive state derived colors +$insensitive_fg_color: gtkshade($core_color_b, 0.70); +$insensitive_bg_color: $bg_color; +$insensitive_borders_color: gtkshade($core_color_b, 0.79); + +//colors for the backdrop state, derived from the main colors. +$backdrop_base_color: if($variant == 'light', darken($base_color, 1%), lighten($base_color, 3%)); +$backdrop_text_color: if($variant == 'light', transparentize($text_color, 0.31), transparentize(white, 0.45)); +$backdrop_bg_color: if($variant == 'light', $bg_color, lighten($bg_color, 3%)); +$backdrop_fg_color: if($variant == 'light', mix($fg_color, $backdrop_bg_color, 80%), transparentize(white, 0.35)); +$backdrop_insensitive_color: if($variant == 'light', darken($backdrop_bg_color, 15%), lighten($backdrop_bg_color, 15%)); +$backdrop_selected_fg_color: if($variant == 'light', $backdrop_base_color, $backdrop_text_color); +$backdrop_borders_color: mix($borders_color, $bg_color, 80%); +$backdrop_dark_fill: mix($backdrop_borders_color, $backdrop_bg_color, 35%); +$backdrop_sidebar_bg_color: mix($backdrop_bg_color, $backdrop_base_color, 50%); + +$backdrop_scrollbar_bg_color: darken($backdrop_bg_color, 3%); +$backdrop_scrollbar_slider_color: mix($backdrop_fg_color, $backdrop_bg_color, 40%); + +$backdrop_menu_color: if($variant == 'light', $backdrop_base_color, mix($backdrop_bg_color, $backdrop_base_color, 20%)); + +//special cased widget colors +$suggested_bg_color: if($variant == 'light', lighten($green, 5%), darken($green, 5%)); +$suggested_border_color: if($variant=='light', darken($suggested_bg_color, 5%), darken($suggested_bg_color, 10%)); +$progress_bg_color: if($variant== 'light', lighten($secondary_accent_bg_color, 10%), lighten($secondary_accent_bg_color, 5%)); +$progress_border_color: $selected_borders_color; +$checkradio_bg_color: darken($core_color_a , 20%);; +$checkradio_fg_color: $borders_color; +$checkradio_borders_color: $borders_color; +$focus_border_color: $borders_color; +$coloured_focus_border_color: transparentize(white, 0.3); +// Headerbar bg colors for the "mixed" theme +$headerbar_bg_color: #323030; +$headerbar_fg_color: $fg_color; +$headerbar_border_color: $borders_color; +$headerbar_text_color: $silk; +$headerbar_insensitive_color: mix($headerbar_fg_color, $headerbar_bg_color, 50%); +$backdrop_headerbar_bg_color: lighten($headerbar_bg_color, 5%); +$backdrop_headerbar_fg_color: mix($headerbar_fg_color, $headerbar_bg_color, 70%); +$backdrop_headerbar_text_color: mix($headerbar_text_color, $backdrop_headerbar_bg_color, 70%); +$backdrop_headerbar_insensitive_color: mix($headerbar_fg_color, $backdrop_headerbar_bg_color, 70%); + +// +// button +// +$button_gradient_a: gtkshade($core_color_b, 1.07); +$button_gradient_b: gtkshade($core_color_b, 1.06); +$button_gradient_c: gtkshade($core_color_b, 1.04); +$button_gradient_d: gtkshade($core_color_b, 0.98); + +$button_default_border_color: gtkshade($core_color_a, 0.5); +$button_default_box_shadow_color: gtkshade($core_color_a, 1.2); + +/* hover */ + +$button_hover_gradient_a: $base_color; +$button_hover_gradient_b: gtkshade($core_color_b, 1.05); +$button_hover_gradient_c: $core_color_b; + +/* active */ + +$button_active_text_color: $fg_color; + +$button_active_gradient_a: gtkshade($core_color_b, 0.85); +$button_active_gradient_b: gtkshade($core_color_b, 0.90); +$button_active_gradient_c: gtkshade($core_color_b, 0.91); +$button_active_gradient_d: gtkshade($core_color_b, 0.86); +$button_active_gradient_e: gtkshade($core_color_b, 0.84); +$button_active_gradient_f: gtkshade($core_color_b, 0.80); + +/* insensitive */ + +$button_insensitive_inner_border_color: gtkshade($core_color_b, 1.05); + +$button_insensitive_gradient_a: gtkshade($core_color_b, 1.04); +$button_insensitive_gradient_b: gtkshade($core_color_b, 1.01); +$button_insensitive_gradient_c: gtkshade($core_color_b, 0.99); +$button_insensitive_gradient_d: gtkshade($core_color_b, 0.96); + +/* active insensitive */ + +$button_active_insensitive_gradient_a: gtkshade($core_color_b, 0.98); +$button_active_insensitive_gradient_b: gtkshade($core_color_b, 1.02); +$button_active_insensitive_gradient_c: gtkshade($core_color_b, 1.03); +$button_active_insensitive_gradient_d: gtkshade($core_color_b, 1.01); +$button_active_insensitive_gradient_e: gtkshade($core_color_b, 0.99); +$button_active_insensitive_gradient_f: gtkshade($core_color_b, 0.96); + +/* primary toolbar focus */ + +$pt_button_focus_gradient_a: mix(#fafafa, gtkshade($core_color_a, 1.09), 0.3); +$pt_button_focus_gradient_b: mix(#ededed, gtkshade($core_color_a, 1.05), 0.3); +$pt_button_focus_gradient_c: mix(#e8e8e8, gtkshade($core_color_a, 1.01), 0.25); +$pt_button_focus_gradient_d: mix(#e8e8e8, gtkshade($core_color_a, 0.96), 0.3); + +/* primary toolbar focus hover */ + +$pt_button_focus_hover_gradient_a: mix(#fcfcfc, gtkshade($core_color_a, 1.09), 0.15); +$pt_button_focus_hover_gradient_b: mix(#fcfcfc, gtkshade($core_color_a, 1.05), 0.15); +$pt_button_focus_hover_gradient_c: mix(#fcfcfc, gtkshade($core_color_a, 1.01), 0.2); +$pt_button_focus_hover_gradient_d: mix(#e8e8e8, gtkshade($core_color_a, 0.96), 0.2); + + + +// +// entry +// +$entry_text_color: $text_color; +$entry_inner_border_color: gtkshade($core_color_b, 0.96); +$entry_bg_color: $base_color; + +// +// menu +// +$menu_color: gtkshade($core_color_b, 1.1); +$menu_bg_color: gtkshade($bg_color, 1.04); +$menu_fg_color: $fg_color; +$menu_border_color: gtkshade($core_color_b, 0.72); + +// +// menubar +// + +$menubar_gradient_a: gtkshade($core_color_b, 0.99); +$menubar_gradient_b: gtkshade($core_color_b, 0.98); +$menubar_gradient_c: gtkshade($core_color_b, 0.96); + + +$menubar_menuitem_hover_color: $selected_fg_color; +$menubar_menuitem_hover_border_color: gtkshade($core_color_a, 0.58); + +$menubar_menuitem_hover_gradient_a: $core_color_a; +$menubar_menuitem_hover_gradient_b: gtkshade($core_color_a, 0.95); +$menubar_menuitem_hover_gradient_c: gtkshade($core_color_a, 0.93); +$menubar_menuitem_hover_gradient_d: gtkshade($core_color_a, 0.88); + +// +// progressbar +// + +$progressbar_border_color: mix(#6a6a6a, gtkshade($core_color_a, 0.75), 0.80); +$progressbar_pattern_color: $progressbar_border_color; + +$progressbar_bg_color: $core_color_a; + +$progressbar_gradient_a: $progressbar_bg_color; +$progressbar_gradient_b: $menubar_menuitem_hover_gradient_b; +$progressbar_gradient_c: $menubar_menuitem_hover_gradient_c; +$progressbar_gradient_d: $menubar_menuitem_hover_gradient_d; + +// +// toolbar +// +$toolbar_gradient_a: gtkshade($core_color_b, 1.04); +$toolbar_gradient_b: gtkshade($core_color_b, 1.01); +$toolbar_gradient_c: $core_color_b; +$toolbar_gradient_d: gtkshade($core_color_b, 0.97); +$toolbar_border_top_color: gtkshade($core_color_b, 0.82); +$toolbar_border_bottom_color: $toolbar_border_top_color; + + +//notebook +$notebook_base_color: lighten($bg_color, 3%) diff --git a/desktop-themes/YaruGreen/gtk-3.0/_common.scss b/desktop-themes/YaruGreen/gtk-3.0/_common.scss new file mode 100644 index 00000000..203bc59c --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/_common.scss @@ -0,0 +1,5038 @@ +@function gtkalpha($c,$a) { + @return unquote("alpha(#{$c},#{$a})"); +} + +$ease-out-quad: cubic-bezier(0.25, 0.46, 0.45, 0.94); +$asset_suffix: if($variant=='dark', '-dark', ''); +$backdrop_transition: 200ms ease-out; +$button_transition: all 200ms $ease-out-quad; +$button_radius: 4px; // Yaru change: we want everything to be less round +$model_button_radius: 3px; // blx change: we want everything to be less round +$menu_radius: 2px; // Yaru change: we want everything to be less round +$window_radius: $button_radius + 3; +$popover_radius: 2px; // Yaru change: we want everything to be less round + +// Optional compact sizes for buttons, headerbar and headerbar widgets +$_sizevariant: 'default'; //compact otherwise +$_headerbar_height: if($_sizevariant=='default', 10px, 20px); +$_entry_height: if($_sizevariant=='default', 32px, 28px); +$_btn_pad: if($_sizevariant=='default', 3px 8px, 2px 6px); +$_hb_btn_pad: if($_sizevariant=='default', 2px, 2px); +$_img_btn_pad: if($_sizevariant=='default', 5px, 2px); +$_sel_menu_pad: if($_sizevariant=='default', 6px 10px, 4px 10px); +$_circ_btn_pad: if($_sizevariant=='default', 4px, 2px); +$_switch_margin: if($_sizevariant=='default', 10px, 7px); + +* { + padding: 0; + -GtkToolButton-icon-spacing: 4; + -GtkTextView-error-underline-color: $error_color; + + // The size for scrollbars. The slider is 2px smaller, but we keep it + // up so that the whole area is sensitive to button presses for the + // slider. The stepper button is larger in both directions, the slider + // only in the width + + -GtkScrolledWindow-scrollbar-spacing: 0; + + -GtkToolItemGroup-expander-size: 11; + + -GtkWidget-text-handle-width: 20; + -GtkWidget-text-handle-height: 24; + + -GtkDialog-button-spacing: 4; + -GtkDialog-action-area-border: 0; + + // We use the outline properties to signal the focus properties + // to the adwaita engine: using real CSS properties is faster, + // and we don't use any outlines for now. + + outline-color: gtkalpha(currentColor, 0.3); + outline-style: dashed; + outline-offset: -3px; + outline-width: 1px; + -gtk-outline-radius: $button-radius - 2; + + -gtk-secondary-caret-color: $selected_bg_color +} + + +/*************** + * Base States * + ***************/ +.background { + color: $fg_color; + background-color: $bg_color; + + &:backdrop { + color: $backdrop_fg_color; + background-color: $backdrop_bg_color; + text-shadow: none; + -gtk-icon-shadow: none; + } +} + +/* + These wildcard seems unavoidable, need to investigate. + Wildcards are bad and troublesome, use them with care, + or better, just don't. + Everytime a wildcard is used a kitten dies, painfully. +*/ + +*:disabled { -gtk-icon-effect: dim; } + +.gtkstyle-fallback { + color: $fg_color; + background-color: $bg_color; + + &:hover { + color: $fg_color; + background-color: lighten($bg_color, 10%); + } + + &:active { + color: $fg_color; + background-color: darken($bg_color, 10%); + } + + &:disabled { + color: $insensitive_fg_color; + background-color: $insensitive_bg_color; + } + + &:selected { + color: $selected_fg_color; + background-color: $selected_bg_color; + } +} + +.view, +%view { + color: $text_color; + background-color: $base_color; + + &:backdrop { + color: $backdrop_text_color; + background-color: $backdrop_base_color; + &:disabled { color: $backdrop_insensitive_color; } + } + + &:disabled { + color: $insensitive_fg_color; + background-color: $insensitive_bg_color; + } + + &:selected { + &:focus, & { + @extend %selected_items; + + border-radius: 3px; + } + } +} + +.view, +textview { + text { + @extend %view; + + selection { &:focus, & { @extend %selected_items; }} + } +} + +textview border { background-color: mix($bg_color, $base_color, 50%); } + +iconview { @extend .view; } + +.rubberband, +rubberband { + border: 1px solid darken($selected_bg_color, 10%); + background-color: transparentize(darken($selected_bg_color, 10%), 0.8); +} + +flowbox { + rubberband { @extend rubberband; } + + flowboxchild { + padding: 3px; + + &:selected { + @extend %selected_items; + + outline-offset: -2px; + } + } +} + +.content-view .tile { + margin: 2px; + background-color: if($variant=='light', transparent, black); + border-radius: 0; + padding: 0; + + &:backdrop { background-color: if($variant=='light', transparent, darken($backdrop_base_color,5%)); } + &:active, &:selected { background-color: if($variant=='light', transparent, $selected_bg_color); } + &:disabled { background-color: if($variant=='light', transparent, $insensitive_bg_color); } +} + +label { + caret-color: currentColor; // this shouldn't be needed. + + &.separator { + @extend .dim-label; + } + + &:selected { @extend %nobg_selected_items; } + + selection { + background-color: $selected_bg_color; + color: $selected_fg_color; + } + + &:disabled { + color: $insensitive_fg_color; + + button & { color: inherit; } + + &:backdrop { + color: $backdrop_insensitive_color; + + button & { color: inherit; } + } + + selection { @extend %selected_items_disabled; } + } + + &:backdrop { + selection { @extend %selected_items_backdrop; } + } + + &.error { + color: $error_color; + &:disabled { color: transparentize($error_color,0.5); } + &:disabled:backdrop { color: transparentize($error_color,0.6); } + } +} + +.dim-label { + opacity: 0.55; + text-shadow: none; +} + +assistant { + .sidebar { + background-color: $base_color; + border-top: 1px solid $borders_color; + + &:backdrop { + background-color: $backdrop_base_color; + border-color: $backdrop_borders_color; + } + } + + &.csd .sidebar { border-top-style: none; } + + .sidebar label { padding: 6px 12px; } + + .sidebar label.highlight { background-color: mix($bg_color, $fg_color, 80%); } +} + +%osd, +.osd { + color: $osd_fg_color; + border: none; + background-color: $osd_bg_color; + background-clip: padding-box; + text-shadow: 0 1px black; + -gtk-icon-shadow: 0 1px black; + + &:backdrop { + text-shadow: none; + -gtk-icon-shadow: none; + } +} + + +/********************* + * Spinner Animation * + *********************/ +@keyframes spin { + to { -gtk-icon-transform: rotate(1turn); } +} + +spinner { + background: none; + &:backdrop { color: $backdrop_fg_color; } + opacity: 0; // non spinning spinner makes no sense + -gtk-icon-source: -gtk-icontheme('process-working-symbolic'); + + &:checked { + opacity: 1; + animation: spin 1s linear infinite; + + &:disabled { opacity: 0.5; } + } +} + +/********************** + * General Typography * + **********************/ + +.large-title { + font-weight: 300; + font-size: 24pt; +} +.title-1 { + font-weight: 800; + font-size: 20pt; +} +.title-2 { + font-weight: 800; + font-size: 15pt; +} +.title-3 { + font-weight: 700; + font-size: 15pt; +} +.title-4 { + font-weight: 700; + font-size: 13pt; +} +.heading { + font-weight: 700; + font-size: 11pt; +} +.body { + font-weight: 400; + font-size: 11pt; +} +.caption-heading { + font-weight: 700; + font-size: 9pt; +} +.caption { + font-weight: 400; + font-size: 9pt; +} + +/**************** + * Text Entries * + ****************/ + +%entry, +entry { + %entry_basic, & { + min-height: $_entry_height; + padding-left: 8px; + padding-right: 8px; + border: 1px solid; + border-radius: $button_radius; + transition: all 200ms $ease-out-quad; + + @include entry(normal); + + image { // icons inside the entry + &.left { margin-right: 6px; } + &.right { margin-left: 6px; } + } + + + &.flat { + &:focus, &:backdrop, &:disabled, &:backdrop:disabled, & { + min-height: 0; + padding: 2px; + background-color: transparent; + border-color: transparent; + border-radius: 0; + } + } + + &:focus { @include entry(focus); } + + &:disabled { @include entry(insensitive); } + + &:backdrop { + @include entry(backdrop); + + transition: $backdrop_transition; + } + + &:backdrop:disabled { @include entry(backdrop-insensitive); } + + selection { @extend %selected_items; } + + // entry error and warning style + @each $e_type, $e_color in (error, $error_color), + (warning, $warning_color) { + &.#{$e_type} { + color: $e_color; + border-color: entry_focus_border($e_color); + + &:focus { @include entry(focus, $e_color); } + + selection { background-color: $e_color; } + } + } + + image { // entry icons colors + color: mix($fg_color, $base_color, 80%); + + &:hover { color: $fg_color; } + + &:active { color: $selected_bg_color; } + + &:backdrop { color: mix($backdrop_fg_color, $backdrop_base_color, 80%); } + } + + &:drop(active) { + &:focus, & { + border-color: $drop_target_color; + box-shadow: inset 0 0 0 1px $drop_target_color; + } + } + + .osd & { + @include entry(osd); + + &:focus { @include entry(osd-focus); } + + &:backdrop { @include entry(osd-backdrop); } + + &:disabled { @include entry(osd-insensitive); } + } + } + + progress { + margin: 2px -6px; + background-color: transparent; + background-image: none; + border-radius: 0; + border-width: 0 0 2px; + border-color: $progress_bg_color; + border-style: solid; + box-shadow: none; + + &:backdrop { background-color: transparent; } + } + + // linked entries + .linked:not(.vertical) > & { @extend %linked; } + .linked:not(.vertical) > &:focus + &, + .linked:not(.vertical) > &:focus + button, + .linked:not(.vertical) > &:focus + combobox > box > button.combo { border-left-color: entry_focus_border(); } + + .linked:not(.vertical) > &:focus.error + &, + .linked:not(.vertical) > &:focus.error + button, + .linked:not(.vertical) > &:focus.error + combobox > box > button.combo { border-left-color: entry_focus_border($error_color); } + + .linked:not(.vertical) > &:drop(active) + &, + .linked:not(.vertical) > &:drop(active) + button, + .linked:not(.vertical) > &:drop(active) + combobox > box > button.combo { border-left-color: $drop_target_color; } + + // Vertically linked entries + // FIXME: take care of "colored" entries + .linked.vertical > & { + @extend %linked_vertical; + + // brighter border between linked entries + &:not(:disabled) + entry:not(:disabled), + &:not(:disabled) + %entry:not(:disabled) { + border-top-color: mix($borders_color, $base_color, 30%); + + &:backdrop { border-top-color: mix($backdrop_borders_color, $backdrop_base_color, 30%); } + } + + // brighter border between linked insensitive entries + &:disabled + %entry:disabled, + &:disabled + entry:disabled { border-top-color: mix($borders_color, $base_color, 30%); } + + // color back the top border of a linked focused entry following another entry. + // :not(:only-child) is a specificity bump hack. + + %entry:focus:not(:only-child), + + entry:focus:not(:only-child) { border-top-color: entry_focus_border(); } + + + %entry:focus.error:not(:only-child), + + entry:focus.error:not(:only-child) { border-top-color: entry_focus_border($error_color); } + + + %entry:drop(active):not(:only-child), + + entry:drop(active):not(:only-child) { border-top-color: $drop_target_color; } + + // this takes care of coloring the top border of the focused entry subsequent widget. + // :not(:only-child) is a specificity bump hack. + &:focus:not(:only-child) { + + %entry, + + entry, + + button, + + combobox > box > button.combo { border-top-color: entry_focus_border(); } + } + + &:focus.error:not(:only-child) { + + %entry, + + entry, + + button, + + combobox > box > button.combo { border-top-color: entry_focus_border($error_color); } + } + + &:drop(active):not(:only-child) { + + %entry, + + entry, + + button, + + combobox > box > button.combo { border-top-color: $drop_target_color; } + } + } + + &.error { color: $error_color; } +} + +treeview entry { + &:focus { + &:dir(rtl), &:dir(ltr) { // specificity bump hack + background-color: $base_color; + transition-property: color, background; + } + } + + &.flat, & { + border-radius: 0; + background-image: none; + background-color: $base_color; + + &:focus { border-color: $selected_bg_color; } + } +} + +.entry-tag { + // sizing + padding: 5px; + + margin-top: 2px; + margin-bottom: 2px; + + // side margins: compensate the entry padding with a negative margin + // then the negative margin itself + :dir(ltr) & { + margin-left: 8px; + margin-right: -5px; + } + :dir(rtl) & { + margin-left: -5px; + margin-right: 8px; + } + + border-style: none; + + $_entry_tag_color: if($variant=='light', $selected_fg_color, $base_color); + color: $_entry_tag_color; + + $_entry_tag_bg: if($variant=='light', $selected_bg_color, mix($fg_color, $base_color, 50%)); + background-color: $_entry_tag_bg; + + &:hover { + background-color: lighten($_entry_tag_bg, 10%); + } + + :backdrop & { + color: $backdrop_base_color; + background-color: if($variant=='light', $selected_bg_color, + mix($backdrop_fg_color, $backdrop_base_color, 50%)); + } + + &.button { + background-color: transparent; + color: transparentize($_entry_tag_color, 0.3); + } + + :not(:backdrop) &.button { + &:hover { + border: 1px solid $_entry_tag_bg; + color: $_entry_tag_color; + } + &:active { + background-color: $_entry_tag_bg; + color: transparentize($_entry_tag_color, 0.3); + } + } +} + +/*********** + * Buttons * + ***********/ +// stuff for .needs-attention +$_dot_color: if($variant=='light', $selected_bg_color, + lighten($selected_bg_color,15%)); +@keyframes needs_attention { + from { + background-image: -gtk-gradient(radial, + center center, 0, + center center, 0.01, + to($_dot_color), + to(transparent)); + } + + to { + background-image: -gtk-gradient(radial, + center center, 0, + center center, 0.5, + to($selected_bg_color), + to(transparent)); + } +} + +%button, +button { + @at-root %button_basic, & { + + min-height: 24px; + min-width: 16px; + padding: $_btn_pad; + border: 1px solid; + border-radius: $button_radius; + transition: $button_transition; + + @include button(normal); + + @at-root %button_basic_flat, + &.flat { + @include button(undecorated); + // to avoid adiacent buttons borders clashing when transitioning, the transition on the normal state is set + // to none, while it's added back in the hover state, so the button decoration will fade in on hover, but + // it won't fade out when the pointer leave the button allocation area. To make the transition more evident + // in this case the duration is increased. + transition: none; + + &:hover { + transition: $button_transition; + transition-duration: 500ms; + + &:active { transition: $button_transition; } + } + } + + &:hover { + @include button(hover); + -gtk-icon-effect: highlight; + } + + &:active, + &:checked { + @include button(active); + + transition-duration: 50ms; + } + + &:backdrop { + &.flat, & { + @include button(backdrop); + + transition: $backdrop_transition; + -gtk-icon-effect: none; + + &:active, + &:checked { @include button(backdrop-active); } + + &:disabled { + @include button(backdrop-insensitive); + + &:active, + &:checked { @include button(backdrop-insensitive-active); } + } + } + } + + @at-root %button_basic_flat, + &.flat { &:backdrop, &:disabled, &:backdrop:disabled { @include button(undecorated); }} + + &:disabled { + @include button(insensitive); + + &:active, + &:checked { @include button(insensitive-active); } + } + + &.image-button { + min-width: 24px; + padding-left: $_img_btn_pad; + padding-right: $_img_btn_pad; + } + + &.text-button { + padding-left: 16px; + padding-right: 16px; + } + + &.text-button.image-button { + padding-left: 8px; + padding-right: 8px; + + label { + padding-left: 8px; + padding-right: 8px; + } + } + + @at-root %button_basic_drop_active, + &:drop(active) { + color: $drop_target_color; + border-color: $drop_target_color; + box-shadow: inset 0 0 0 1px $drop_target_color; + } + } + + @at-root %button_selected, & { + row:selected & { + @if $variant == 'light' { border-color: $selected_borders_color; } + } + + @at-root %button_selected_flat, &.flat { + row:selected & { + &:not(:active):not(:checked):not(:hover):not(disabled) { + color: $selected_fg_color; + border-color: transparent; + + &:backdrop { color: if($variant=='light', $backdrop_base_color, $backdrop_fg_color); } + } + } + } + } + + + // big standalone buttons like in Documents pager + &.osd { + min-width: 26px; + min-height: 32px; + + &.image-button { min-width: 34px; } + + color: $osd_fg_color; + border-radius: 5px; + + @include button(osd); + + border: none; + box-shadow: none; + + &:hover { + @include button(osd-hover); + + border: none; + box-shadow: none; + } + + &:active, + &:checked { + @include button(osd-active); + + border: none; + box-shadow: none; + } + + &:disabled { + &:backdrop, & { + @include button(osd-insensitive); + + border: none; + } + } + + &:backdrop { + @include button(osd-backdrop); + + border: none; + } + } + + //overlay / OSD style + @at-root %osd_button, + .osd & { + @include button(osd); + + &:hover { @include button(osd-hover); } + + &:active, + &:checked { &:backdrop, & { @include button(osd-active); }} + + &:disabled { &:backdrop, & { @include button(osd-insensitive); }} + + &:backdrop { @include button(osd-backdrop); } + + &.flat { + @include button(undecorated); + + box-shadow: none; //FIXME respect no edge on the button mixin + text-shadow: 0 1px black; + -gtk-icon-shadow: 0 1px black; + + &:hover { @include button(osd-hover); } + + &:disabled { + @include button(osd-insensitive); + background-image: none; + border-color: transparent; + box-shadow: none; + } + + &:backdrop { @include button(undecorated); } + + &:active, + &:checked { @include button(osd-active); } + } + } + + // Suggested and Destructive Action buttons + @each $b_type, $b_color in (suggested-action, $suggested_bg_color), + (destructive-action, $destructive_color) { + &.#{$b_type} { + @include button(normal, $b_color); + + &.flat { + @include button(undecorated); + + color: $b_color; //FIXME: does it work on the dark variant? + } + + &:hover { @include button(hover, $b_color); } + + &:active, + &:checked { @include button(active, $b_color); } + + &:backdrop, + &.flat:backdrop { + @include button(backdrop, $b_color, white); + + &:active, + &:checked { @include button(backdrop-active, $b_color, white); } + + &:disabled { + @include button(backdrop-insensitive); + + &:active, + &:checked { @include button(backdrop-insensitive-active, $b_color, white); } + } + } + + &.flat { + &:backdrop, &:disabled, &:backdrop:disabled { + @include button(undecorated); + + color: transparentize($b_color, 0.2); + } + } + + &:disabled { + @include button(insensitive); + + &:active, + &:checked { @include button(insensitive-active, $b_color, white); } + } + + .osd & { + @include button(osd, $b_color); + + &:hover { @include button(osd-hover, $b_color); } + + &:active, + &:checked { &:backdrop, & { @include button(osd-active, $b_color); }} + + &:disabled { &:backdrop, & { @include button(osd-insensitive, $b_color); }} + + &:backdrop { @include button(osd-backdrop, $b_color); } + } + } + } + + .stack-switcher > & { + // to position the needs attention dot, padding is added to the button + // child, a label needs just lateral padding while an icon needs vertical + // padding added too. + + outline-offset: -3px; // needs to be set or it gets overriden by GtkRadioButton outline-offset + + > label { + padding-left: 6px; // label padding + padding-right: 6px; // + } + + > image { + padding-left: 6px; // image padding + padding-right: 6px; // + padding-top: 3px; // + padding-bottom: 3px; // + } + + &.text-button { + // compensate text-button paddings + padding-left: 10px; + padding-right: 10px; + } + + &.image-button { + // we want image buttons to have a 1:1 aspect ratio, so compensation + // of the padding added to the GtkImage is needed + padding-left: 2px; + padding-right: 2px; + } + + &.needs-attention { + > label, + > image { @extend %needs_attention; } + + &:active, + &:checked { + > label, + > image { + animation: none; + background-image: none; + } + } + } + } + + // hide separators + &.font, + &.file { separator { background-color: transparent; }} + + &.font { > box > box > label { font-weight: bold; }} + + // inline-toolbar buttons + .inline-toolbar & { @extend %linked; } + + .primary-toolbar & { -gtk-icon-shadow: none; } // tango icons don't need shadows + + .linked > & { @extend %linked; } + + .linked.vertical > & { @extend %linked_vertical; } + + &.circular { // The Bloody Circul Button + border-radius: 9999px; + -gtk-outline-radius: 9999px; + padding: $_circ_btn_pad; /* circles instead of ellipses */ + + label { padding: 0; } + + // the followind code is needed since we use a darker bottom border on buttons, which looks pretty + // bad with a 100% border radius (see https://bugzilla.gnome.org/show_bug.cgi?id=771205 for details), + // so on relevant states we an additional background-image with a gradient clipped on the border-box, + // so setting a transparent border would reveal it. + + $_border_bg: linear-gradient(to top, $alt-borders-color 25%, $borders-color 50%); + + &:not(.flat):not(.osd):not(:checked):not(:active):not(:disabled):not(:backdrop) { + @include button(normal); + + background-image: $button_fill, $_border_bg; + border-color: transparent; + } + + &:hover:not(.osd):not(:checked):not(:active):not(:disabled):not(:backdrop) { + @include button(hover); + + background-image: $button_fill, $_border_bg; + border-color: transparent; + } + + background-origin: padding-box, border-box; + background-clip: padding-box, border-box; + } +} + +%needs_attention { + animation: needs_attention 150ms ease-in; + $_dot_shadow: _text_shadow_color(); + $_dot_shadow_r: if($variant=='light',0.5,0.45); + background-image: -gtk-gradient(radial, + center center, 0, + center center, 0.5, + to($_dot_color), + to(transparent)), + -gtk-gradient(radial, + center center, 0, + center center, $_dot_shadow_r, + to($_dot_shadow), + to(transparent)); + background-size: 6px 6px, 6px 6px; + background-repeat: no-repeat; + + @if $variant == 'light' { background-position: right 3px, right 4px; } + + @else { background-position: right 3px, right 2px; } + + &:backdrop { background-size: 6px 6px, 0 0;} + + &:dir(rtl) { + @if $variant == 'light' { background-position: left 3px, left 4px; } + + @else { background-position: left 3px, left 2px; } + } +} + + +// all the following is for the +|- buttons on inline toolbars, that way +// should really be deprecated... +.inline-toolbar toolbutton > button { // redefining the button look is + // needed since those are flat... + @include button(normal); + + &:hover { @include button(hover); } + + &:active, + &:checked{ @include button(active); } + + &:disabled { + @include button(insensitive); + + &:active, + &:checked { @include button(insensitive-active); } + } + + &:backdrop { + @include button(backdrop); + + &:active, + &:checked { @include button(backdrop-active); } + + &:disabled { + @include button(backdrop-insensitive); + + &:active, + &:checked { @include button(backdrop-insensitive-active); } + } + } +} + +// More inline toolbar buttons +toolbar.inline-toolbar toolbutton { + > button.flat { @extend %linked_middle; } + + &:first-child > button.flat { @extend %linked_left; } + + &:last-child > button.flat { @extend %linked_right; } + + &:only-child > button.flat { @extend %linked_only_child; } +} + +%linked_middle { + border-right-style: none; + border-radius: 0; + -gtk-outline-radius: 0; +} + +%linked_left { + border-top-left-radius: $button_radius; + border-bottom-left-radius: $button_radius; + -gtk-outline-top-left-radius: $button_radius; + -gtk-outline-bottom-left-radius: $button_radius; +} + +%linked_right { + border-right-style: solid; + border-top-right-radius: $button_radius; + border-bottom-right-radius: $button_radius; + -gtk-outline-top-right-radius: $button_radius; + -gtk-outline-bottom-right-radius: $button_radius; +} + +%linked_only_child { + border-style: solid; + border-radius: $button_radius; + -gtk-outline-radius: $button_radius; +} + +// .linked assumes Box, which reverses nodes in RTL, so 1st child is always left +%linked { + @extend %linked_middle; + + &:first-child { @extend %linked_left; } + &:last-child { @extend %linked_right; } + + &:only-child { @extend %linked_only_child; } +} + +// Other widgets use widget child order, so 1st/last child are at text start/end +%linked_flippable { + @extend %linked_middle; + + &:dir(ltr) { + &:first-child { @extend %linked_left; } + &:last-child { @extend %linked_right; } + } + + &:dir(rtl) { + &:first-child { @extend %linked_right; } + &:last-child { @extend %linked_left; } + } + + &:only-child { @extend %linked_only_child; } +} + +%linked_vertical_middle { + border-style: solid solid none solid; + border-radius: 0; + -gtk-outline-radius: 0; +} + +%linked_vertical_top { + border-top-left-radius: $button_radius; + border-top-right-radius: $button_radius; + -gtk-outline-top-left-radius: $button_radius; + -gtk-outline-top-right-radius: $button_radius; +} + +%linked_vertical_bottom { + border-bottom-style: solid; + border-bottom-left-radius: $button_radius; + border-bottom-right-radius: $button_radius; + -gtk-outline-bottom-left-radius: $button_radius; + -gtk-outline-bottom-right-radius: $button_radius; +} + +%linked_vertical_only_child { + border-style: solid; + border-radius: $button_radius; + -gtk-outline-radius: $button_radius; +} + +%linked_vertical { + @extend %linked_vertical_middle; + + &:first-child { @extend %linked_vertical_top; } + + &:last-child { @extend %linked_vertical_bottom; } + + &:only-child { @extend %linked_vertical_only_child; } +} + +%undecorated_button { + background-color: transparent; + background-image: none; + border-color: transparent; + box-shadow: inset 0 1px transparentize(white, 1), + 0 1px transparentize(white, 1); + text-shadow: none; + -gtk-icon-shadow: none; +} + +/* menu buttons */ +modelbutton.flat, +.menuitem.button.flat { + min-height: 26px; + padding-left: 5px; + padding-right: 5px; + border-radius: $model_button_radius; + outline-offset: -2px; + + @extend %undecorated_button; + + &:hover {box-shadow: inset 0px 1px $menubar_menuitem_hover_border_color, inset 0px -1px $menubar_menuitem_hover_border_color; + border-style:solid; + background-image: linear-gradient(to bottom, + $menubar_menuitem_hover_gradient_a, + $menubar_menuitem_hover_gradient_b 50%, + $menubar_menuitem_hover_gradient_c 50%, + $menubar_menuitem_hover_gradient_d ); + background-color: $selected_bg_color; + color: $selected_fg_color; } + + &:selected { @extend %selected_items; } + + &:backdrop, + &:backdrop:hover { @extend %undecorated_button; } +} + +modelbutton.flat arrow { + background: none; + + &:hover { background: none; } + + &.left { -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); } + + &.right { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); } +} + +button.color { + padding: 4px; + + colorswatch:only-child { + &, overlay { border-radius: 0; } + + @if $variant == 'light' { + box-shadow: 0 1px _text_shadow_color(); + + .osd & { box-shadow: none; } + } + } + + @if $variant == 'light' { + .osd &, & { + &:disabled, + &:backdrop, + &:active, + &:checked { colorswatch:only-child { box-shadow: none; }} + } + } +} + +/* list buttons */ +/* tone down as per new designs, see issue #1473, #1748 */ +list row button.image-button:not(.flat) { + @extend %undecorated_button; + border: 1px solid transparentize($borders_color, .5); + &:hover { @include button(hover); } + &:active, + &:checked { @include button(active); } +} + +/********* + * Links * + *********/ + +%link, +*:link { + color: $link_color; + + &:visited { + color: $link_visited_color; + + *:selected & { color: mix($selected_fg_color, $link_visited_color, 60%); } + } + + &:hover { + $_fg: lighten($link_color, 10%); + color: $_fg; + + *:selected & { color: mix($selected_fg_color, $_fg, 90%); } + } + + &:active { + color: $link_color; + + *:selected & { color: mix($selected_fg_color, $link_color, 80%); } + } + + &:disabled, &:disabled:backdrop { color: transparentize(desaturate($link_color, 100%), 0.2); } + + &:backdrop { &:backdrop:hover, &:backdrop:hover:selected, & { color: transparentize($link_color, 0.1); }} + + @at-root %link_selected, + &:selected, + *:selected & { color: mix($selected_fg_color, $link_color, 80%); } +} + +button:link, +button:visited { + @extend %undecorated_button; + + @extend %link; + + text-shadow: none; + + &:hover, + &:active, + &:checked { + @extend %undecorated_button; + + text-shadow: none; + } + + > label { + @extend %link; + + text-decoration-line: underline; + + } +} + + +/***************** + * GtkSpinButton * + *****************/ +spinbutton { + &:not(.vertical) { + // in this horizontal configuration, the whole spinbutton + // behaves as the entry, so we extend the entry styling + // and nuke the style on the internal entry + @extend %entry; + + padding: 0; + + %spinbutton_horz_entry { + min-width: 28px; + // reset all the other props since the spinbutton node is styled here + margin: 0; + background: none; + background-color: transparent; + border: none; + border-radius: 0; + box-shadow: none; + + &:backdrop:disabled { background-color: transparent; } + } + + entry { + @extend %spinbutton_horz_entry; + } + + button { + min-height: 16px; + margin: 0; + padding-bottom: 0; + padding-top: 0; + color: mix($fg_color, $base_color, 90%); + background-image: none; + border-style: none none none solid; + border-color: transparentize($borders_color, 0.7); + border-radius: 0; + box-shadow: none; + + &:dir(rtl) { border-style: none solid none none; } + + &:hover { + color: $fg_color; + background-color: $base_hover_color; + } + + &:disabled { + color: transparentize($insensitive_fg_color, 0.7); + background-color: transparent; + } + + &:active { + background-color: transparentize(black, 0.9); + box-shadow: inset 0 2px 3px -1px transparentize(black, 0.8); + } + + &:backdrop { + color: mix($backdrop_fg_color, $backdrop_base_color, 90%); + background-color: transparent; + border-color: transparentize($backdrop_borders_color, 0.7); + transition: $backdrop_transition; + } + + &:backdrop:disabled { + color: transparentize($backdrop_insensitive_color,0.7); + background-color: transparent; + background-image: none; + border-style: none none none solid; // It is needed or it gets overridden + + &:dir(rtl) { border-style: none solid none none; } + } + + &:dir(ltr):last-child { border-radius: 0 $button_radius $button_radius 0; } + + &:dir(rtl):first-child { border-radius: $button_radius 0 0 $button_radius; } + } + } + + // OSD horizontal + .osd &:not(.vertical) { + entry { + @extend %spinbutton_horz_entry; + } + + button { + @include button(undecorated); + + color: $osd_fg_color; + border-style: none none none solid; + border-color: transparentize($osd_borders_color, 0.3); + border-radius: 0; + box-shadow: none; + -gtk-icon-shadow: 0 1px black; + + &:dir(rtl) { border-style: none solid none none; } + + &:hover { + @include button(undecorated); + + color: $osd_fg_color; + border-color: transparentize(opacify($osd_borders_color, 1), 0.5); + background-color: transparentize($osd_fg_color, 0.9); + -gtk-icon-shadow: 0 1px black; + box-shadow: none; + } + + &:backdrop { + @include button(undecorated); + + color: $osd_fg_color; + border-color: transparentize(opacify($osd_borders_color, 1), 0.5); + -gtk-icon-shadow: none; + box-shadow: none; + } + + &:disabled { + @include button(undecorated); + + color: $osd_insensitive_fg_color; + border-color: transparentize(opacify($osd_borders_color, 1), 0.5); + -gtk-icon-shadow: none; + box-shadow: none; + } + + &:dir(ltr):last-child { border-radius: 0 $button_radius $button_radius 0; } + + &:dir(rtl):first-child { border-radius: $button_radius 0 0 $button_radius; } + } + } + + // Vertical + &.vertical { + // in the vertical configuration, we treat the spinbutton + // as a box, and tweak the style of the entry in the middle + // so that it's linked + + // FIXME: this should not be set at all, but otherwise it gets the wrong + // color + &:disabled { color: $insensitive_fg_color; } + + &:backdrop:disabled { color: $backdrop_insensitive_color; } + + &:drop(active) { + border-color: transparent; + box-shadow: none; + } + + entry { + min-height: 32px; + min-width: 32px; + padding: 0; + border-radius: 0; + } + + button { + min-height: 32px; + min-width: 32px; + padding: 0; + + &.up { @extend %top_button; } + + &.down { @extend %bottom_button; } + } + + %top_button { + border-radius: $button_radius $button_radius 0 0; + border-style: solid solid none solid; + } + + %bottom_button { + border-radius: 0 0 $button_radius $button_radius; + border-style: none solid solid solid; + } + } + + // OSD vertical + .osd &.vertical button:first-child { + @include button(osd); + + &:hover { @include button(osd-hover);} + + &:active { @include button(osd-active); } + + &:disabled { @include button(osd-insensitive); } + + &:backdrop { @include button(osd-backdrop); } + } + + // Misc + treeview &:not(.vertical) { + min-height: 0; + border-style: none; + border-radius: 0; + + entry { + min-height: 0; + padding: 1px 2px; + } + } + font-feature-settings: "tnum"; +} + + +/************** + * ComboBoxes * + **************/ +combobox { + arrow { + -gtk-icon-source: -gtk-icontheme('pan-down-symbolic'); + min-height: 16px; + min-width: 16px; + } + + &.linked { + button:nth-child(2) { + &:dir(ltr) { @extend %linked_right; } + &:dir(rtl) { @extend %linked_left; } + } + } + + &:drop(active) { // FIXME: untested + box-shadow: none; + + button.combo { @extend %button_basic_drop_active; } + } +} + +// the combo is a composite widget so the way we do button linking doesn't +// work, special case needed. See +// https://bugzilla.gnome.org/show_bug.cgi?id=733979 + +.linked:not(.vertical) > combobox > box > button.combo { @extend %linked_middle; } +.linked:not(.vertical) > combobox:first-child > box > button.combo { @extend %linked_left; } +.linked:not(.vertical) > combobox:last-child > box > button.combo { @extend %linked_right; } +.linked:not(.vertical) > combobox:only-child > box > button.combo { @extend %linked_only_child; } + +.linked.vertical > combobox > box > button.combo { @extend %linked_vertical_middle; } +.linked.vertical > combobox:first-child > box > button.combo { @extend %linked_vertical_top; } +.linked.vertical > combobox:last-child > box > button.combo { @extend %linked_vertical_bottom; } +.linked.vertical > combobox:only-child > box > button.combo { @extend %linked_vertical_only_child; } + + +/************ + * Toolbars * + ************/ +%toolbar { + -GtkWidget-window-dragging: true; + padding: 4px; + background-color: $bg_color; +} + +toolbar { + @extend %toolbar; + + background-image: linear-gradient(to bottom, + $toolbar_gradient_a 2px, + $toolbar_gradient_b 50%, + $toolbar_gradient_c 50%, + $toolbar_gradient_d); + padding: 2px ; + border-width: 1px 0 1px 0; + border-radius: 0; + border-style: solid; + border-top-color: $menu_color; + border-bottom-color: $toolbar_border_bottom_color; + + // on OSD + + .osd & { background-color: transparent; } + + // stand-alone OSD toolbars + &.osd { + padding: 13px; + border: none; + border-radius: 5px; + background-color: $osd_bg_color; + + &.left, + &.right, + &.top, + &.bottom { border-radius: 0; } // positional classes for `attached` osd toolbars + } + + // toolbar separators + &.horizontal separator { margin: 0 7px 1px 6px; } + &.vertical separator { margin: 6px 1px 7px 0; } + + &:not(.inline-toolbar):not(.osd) { + // workaround: add margins to the children of tool items to simulate + // spacing, ignore the overflow button (.toggle) and the overflow menu + // (.popup) + > *:not(.toggle):not(.popup) > * { + margin-right: 1px; + margin-bottom: 1px; + } + } +} + +//searchbar, location-bar & inline-toolbar +.inline-toolbar { + @extend %toolbar; + + @extend %darkbar; + + padding: 3px; + border-width: 0 1px 1px; + border-radius: 0 0 5px 5px; +} + +searchbar > revealer > box, +.location-bar { + @extend %toolbar; + + @extend %darkbar; + + border-width: 0 0 1px; + padding: 3px; +} + +searchbar > revealer > box { + // workaround: undo the GtkContainer:border-width and use CSS padding instead + margin: -6px; + padding: 6px; +} + +%darkbar { + border-style: solid; + border-color: $borders_color; + $_bg: mix($bg_color, $borders_color, 70%); + background-color: $_bg; + + &:backdrop { + border-color: $backdrop_borders_color; + background-color: $backdrop_dark_fill; + box-shadow: none; + transition: $backdrop_transition; + } +} + + +/*************** + * Header bars * + ***************/ +%titlebar, +headerbar { + padding: 0 2px; + min-height: $_headerbar_height; + border-width: 0 0 1px; + border-style: solid; + border-color: $alt_borders_color; + border-radius: 0; + color: $fg_color; + + @include headerbar_fill(darken($bg_color, 10%)); + + &:backdrop { + border-color: $backdrop_borders_color; + @include headerbar_fill(darken($bg_color, 10%)); + box-shadow: inset 0 1px $top_hilight; + transition: $backdrop_transition; + } + + .title { + padding-left: 12px; + padding-right: 12px; + font-weight: bold; + } + + .subtitle { + font-size: smaller; + padding-left: 12px; + padding-right: 12px; + + @extend .dim-label; + } + + /* Darken switchbuttons for headerbars. issue #1588 */ + stackswitcher button:checked, + button.toggle:checked { + + background: if($variant == 'light', image(darken($bg_color, 17%)), image(darken($bg_color, 9%))); + border-color: darken($borders_color, 6%); // Yaru change: with our button styling we do not want a stronger bottom border + // border-top-color: darken($borders_color, 8%); + + } + + .selection-mode &, + &.selection-mode { + $_hc: mix($top_hilight, $suggested_bg_color, 50%); // hilight color + + color: $selected_fg_color; + border-color: $suggested_border_color; + text-shadow: 0 -1px transparentize(black, 0.5); + + @include headerbar_fill($suggested_bg_color, $_hc); + + &:backdrop { + background-color: $suggested_bg_color; + background-image: none; + box-shadow: inset 0 1px mix($top_hilight, $suggested_bg_color, 60%); + + label { + text-shadow: none; + color: $selected_fg_color; + } + } + + .subtitle:link { @extend %link_selected; } + + button { + @include button(normal, $suggested_bg_color, $fg_color); + min-height: 10px; + @at-root %selection_mode_button_flat, + &.flat { @include button(undecorated); } + + &:hover { @include button(hover, $suggested_bg_color, $fg_color); } + + &:active, + &:checked, + &.toggle:checked, + &.toggle:active { @include button(active, $suggested_bg_color, $fg_color); } + + &:backdrop { + &.flat, & { + @include button(backdrop, $suggested_bg_color, $fg_color); + + -gtk-icon-effect: none; + border-color: $suggested_border_color; + + &:active, + &:checked { + @include button(backdrop-active, $suggested_bg_color, $fg_color); + + border-color: $suggested_border_color; + } + + &:disabled { + @include button(backdrop-insensitive, $suggested_bg_color, $fg_color); + + border-color: $suggested_border_color; + + &:active, &:checked { + @include button(backdrop-insensitive-active, $suggested_bg_color, $fg_color); + + border-color: $suggested_border_color; + } + } + } + } + + @at-root %selection_mode_button_flat, + &.flat { &:backdrop, &:disabled, &:backdrop:disabled { @include button(undecorated); }} + + &:disabled { + @include button(insensitive, $suggested_bg_color, $fg_color); + + &:active, + &:checked { @include button(insensitive-active, $suggested_bg_color, $fg_color); } + } + + &.suggested-action { + @include button(normal); + + border-color: $suggested_border_color; + + &:hover { + @include button(hover); + + border-color: $suggested_border_color; + } + + &:active { + @include button(active); + + border-color: $suggested_border_color; + } + + &:disabled { + @include button(insensitive); + + border-color: $suggested_border_color; + } + + &:backdrop { + @include button(backdrop); + + border-color: $suggested_border_color; + } + + &:backdrop:disabled { + @include button(backdrop-insensitive); + + border-color: $suggested_border_color; + } + } + } + + .selection-menu { + &:backdrop, & { + border-color: transparentize($suggested_bg_color, 1); + background-color: transparentize($suggested_bg_color, 1); + background-image: none; + box-shadow: none; + min-height: 20px; + padding: $_sel_menu_pad; + + arrow { -GtkArrow-arrow-scaling: 1; } + + .arrow { + -gtk-icon-source: -gtk-icontheme('pan-down-symbolic'); + color: transparentize($selected_fg_color,0.5); + -gtk-icon-shadow: none; + } + } + } + } + + // squared corners when the window is maximized, tiled, or fullscreen + .tiled &, + .tiled-top &, + .tiled-right &, + .tiled-bottom &, + .tiled-left &, + .maximized &, + .fullscreen & { + &:backdrop, & { + border-radius: 0; + } + } + + &.default-decoration { + min-height: 28px; + padding: 4px; + + button.titlebutton { + min-height: 26px; + min-width: 26px; + margin: 0; + padding: 0; + } + } + + + + separator.titlebutton { opacity: 0; } /* hide the close button separator */ + + .solid-csd & { + &:backdrop, & { + &:dir(rtl), &:dir(ltr) { // specificity bump + margin-left: -1px; + margin-right: -1px; + margin-top: -1px; + border-radius: 0; + box-shadow: none; + } + } + } +} + +headerbar { + color: $fg_color; + // add vertical margins to common widget on the headerbar to avoid them spanning the whole height + entry, + spinbutton, + separator:not(.sidebar), + button { + margin-top: $_hb_btn_pad; + margin-bottom: $_hb_btn_pad; + } + switch { + margin-top: $_switch_margin; + margin-bottom: $_switch_margin; + } + + &.titlebar headerbar:not(.titlebar) { + // Drop the background of non-titlebar nested headerbars. This is needed to + // work around headerbar sliding animation issues without refactoring + // Adwaita's support of titlebars and headerbars as it may break + // applications. + // See https://gitlab.gnome.org/GNOME/gtk/issues/1264 for more information. + background: none; + box-shadow: none; + } +} + +.background .titlebar { + &:backdrop, & { + border-top-left-radius: $window_radius; + border-top-right-radius: $window_radius; + } +} + +.background.tiled .titlebar, +.background.tiled-top .titlebar, +.background.tiled-right .titlebar, +.background.tiled-bottom .titlebar, +.background.tiled-left .titlebar, +.background.maximized .titlebar, +.background.solid-csd .titlebar { + &:backdrop, & { + border-top-left-radius: 0; + border-top-right-radius: 0; + } +} + +headerbar { // headerbar border rounding + + window separator:first-child + &, + window &:first-child { &:backdrop, & { border-top-left-radius: 7px; }} + window &:last-child { &:backdrop, & { border-top-right-radius: 7px; }} + + window stack & { // tackles the stacked headerbars case + &:first-child, &:last-child { + &:backdrop, & { + border-top-left-radius: 7px; + border-top-right-radius: 7px; + } + } + } + + window.tiled &, + window.tiled-top &, + window.tiled-right &, + window.tiled-bottom &, + window.tiled-left &, + window.maximized &, + window.fullscreen &, + window.solid-csd & { + &, &:backdrop { + &, + &:first-child, + &:last-child, + &:only-child { + border-top-left-radius: 0; + border-top-right-radius: 0; + } + } + } +} + +.titlebar:not(headerbar) { + window.csd > & { + // in csd we assume every titlebar is a headerbar so reset anything, this is needed for split toolbars cases + padding: 0; + background-color: transparent; + background-image: none; + border-style: none; + border-color: transparent; + box-shadow: none; + } + + separator { background-color: $borders_color; } // FIXME: use darker border? + + @extend %titlebar; +} + +// Development versions of apps to use a differently styled headerbar + +window.devel { + headerbar.titlebar:not(.selection-mode) { + $c: darken($bg_color, 10%); + $gradient: cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, + linear-gradient(to right, transparent 65%, transparentize($selected_bg_color, 0.8)), + linear-gradient(to top, darken($c, 3%), $c 3px, lighten($c, 6%)); + @if $variant == 'dark' { + $gradient: cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, + linear-gradient(to right, transparent 65%, transparentize($selected_bg_color, 0.9)), + linear-gradient(to top, lighten($c, 3%) 3px, lighten($c, 5%)); + } + + background: $bg_color $gradient; + + &:backdrop { + background: $bg_color cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, + image($bg_color); /* background-color would flash */ + } + } +} + +/************ + * Pathbars * + ************/ + +// GtkPathBar does not work with just .linked, so we must override that. But we +// can’t simply remove .linked from the widget as that might break other themes. +// Note also we select on filechooser to avoid interfering with NautilusPathBar. +filechooser .path-bar.linked > button { + @extend %linked_flippable; +} + +.path-bar button { + &.text-button, &.image-button, & { + padding-left: 4px; + padding-right: 4px; + } + + &.text-button.image-button label { + padding-left: 0; + padding-right: 0; + } + + &.text-button.image-button, & { + label:last-child { padding-right: 8px; } + label:first-child { padding-left: 8px; } + } + + image { + padding-left: 4px; + padding-right: 4px; + } + + &.slider-button { + padding-left: 0; + padding-right: 0; + } +} + + +/************** + * Tree Views * + **************/ +treeview.view { + @at-root * { + -GtkTreeView-horizontal-separator: 4; + -GtkTreeView-grid-line-width: 1; + -GtkTreeView-grid-line-pattern: ''; + -GtkTreeView-tree-line-width: 1; + -GtkTreeView-tree-line-pattern: ''; + -GtkTreeView-expander-size: 16; + } + + border-left-color: mix($fg_color, $base_color, 50%); // this is actually the tree lines color, + border-top-color: $bg_color; // while this is the grid lines color, better then nothing + + rubberband { @extend rubberband; } // to avoid borders being overridden by the previously set props + + &:selected { + &:focus, & { + border-radius: 0; + color: $selected_fg_color; + @extend %selected_items; + } + + &:backdrop, & { + border-left-color: mix($selected_fg_color, $selected_bg_color, 50%); + border-top-color: transparentize($fg_color, 0.9); // doesn't work unfortunatelly + } + } + + &:disabled { + color: $insensitive_fg_color; + + &:selected { + color: mix($selected_fg_color, $selected_bg_color, 40%); + &:backdrop { color: mix($backdrop_selected_fg_color, $selected_bg_color, 30%); } + } + + &:backdrop { color: $backdrop_insensitive_color; } + } + + &.separator { + min-height: 2px; + color: $bg_color; + + &:backdrop { color: transparentize($bg_color, 0.9); } + } + + &:backdrop { + border-left-color: mix($backdrop_fg_color, $backdrop_bg_color, 50%); + border-top: $backdrop_bg_color; + } + &:drop(active) { + border-style: solid none; + border-width: 1px; + border-color: $selected_borders_color; + + &.after { border-top-style: none; } + + &.before { border-bottom-style: none; } + } + + &.expander { + -gtk-icon-source: -gtk-icontheme('pan-end-symbolic'); + + &:dir(rtl) { -gtk-icon-source: -gtk-icontheme('pan-end-symbolic-rtl'); } + + color: mix($text_color, $base_color, 70%); + + &:hover { color: $text_color; } + + &:selected { + color: mix($selected_fg_color, $selected_bg_color, 70%); + + &:hover { color: $selected_fg_color; } + + &:backdrop { color: mix($backdrop_selected_fg_color, $selected_bg_color, 70%); } + } + + &:checked { -gtk-icon-source: -gtk-icontheme('pan-down-symbolic'); } + + &:backdrop { color: mix($backdrop_fg_color, $backdrop_base_color, 70%); } + } + + &.progressbar { // progress bar in treeviews + @if $variant == light { color: $base_color; } + + background-color: $progress_bg_color; + background-image: image($progress_bg_color); + box-shadow: none; + + &:selected { + &:focus, & { + + @if $variant == 'light' { + color: $selected_bg_color; + + } + + @else { box-shadow: inset 0 1px transparentize(white, 0.95); } + + background-image: image($base_color); + + &:backdrop { + @if $variant == 'light' { + color: $selected_bg_color; + } + background-color: $backdrop_base_color; + } + } + } + + &:backdrop { + @if $variant == 'light' { color: $backdrop_base_color; } + + @else { border-color: $backdrop_base_color; } + background-image: none; + box-shadow: none; + } + } + + &.trough { // progress bar trough in treeviews + background-color: transparentize($fg_color,0.9); + + &:selected { + &:focus, & { + background-color: if($variant == 'light', + transparentize($selected_fg_color, 0.7), + darken($selected_bg_color, 10%)); + + } + } + } + + header { + button { + $_column_header_color: mix($fg_color, $base_color, 70%); + + @extend %column_header_button; + + color: $_column_header_color; + background-color: $base_color; + font-weight: bold; + text-shadow: none; + box-shadow: none; + + &:hover { + @extend %column_header_button; + + color: mix($_column_header_color, $fg_color, 50%); + box-shadow: none; + transition: none; //I shouldn't need this + } + + &:active { + @extend %column_header_button; + + color: $fg_color; + transition: none; //I shouldn't need this + } + } + } + + button.dnd, + header.button.dnd { // for treeview-like derive widgets + &:active, &:selected, &:hover, & { + padding: 0 6px; + color: $base_color; + background-image: none; + background-color: $selected_bg_color; + border-style: none; + border-radius: 0; + box-shadow: inset 0 0 0 1px $base_color; + text-shadow: none; + transition: none; + } + } + + acceleditor > label { background-color: $selected_bg_color; } // see tests/testaccel to test +} + +%column_header_button { + $column_header_button_gradient_a: gtkshade($core_color_b, 1.05); +$column_header_button_gradient_b: gtkshade($core_color_b, 1.02); +$column_header_button_gradient_c: $core_color_b; +$column_header_button_gradient_d: gtkshade($core_color_b, 0.96); + + padding: 0 6px; + background-image: linear-gradient(to bottom, + $column_header_button_gradient_a , + $column_header_button_gradient_b 50%, + $column_header_button_gradient_c 50%, + $column_header_button_gradient_d); + border-style: none solid solid none; + border-color: $borders_color; + border-radius: 0; + text-shadow: none; + background-color: $column_header_button_gradient_a; + + &:disabled { + border-color: $bg_color; + background-image: none; + } + + &:backdrop { + color: mix($backdrop_fg_color, $backdrop_bg_color, 50%); + border-color: $backdrop_bg_color; + border-style: none solid solid none; + background-image: none; + background-color: $backdrop_base_color; + + &:disabled { + border-color: $backdrop_bg_color; + background-image: none; + } + } + + &:last-child { &:backdrop, & { border-right-style: none; }} +} + + + +/********* + * Menus * + *********/ +menubar, +.menubar { + -GtkWidget-window-dragging: true; + padding: 0px; + box-shadow: inset 0 -1px transparentize(black, 0.9); + background-image: linear-gradient(to bottom, + $menubar_gradient_a, + $menubar_gradient_b 50%, + $menubar_gradient_c); + + + &:backdrop { background-color: $backdrop_bg_color; } + + > menuitem { + min-height: 16px; + padding: 4px 8px; + border-width: 1px 1px 0px; + border-color: transparent; + border-style:solid; + + // remove padding and rounding from menubar submenus + menu { + &:dir(rtl), &:dir(ltr) { // specificity bump + border-radius: 0; + padding: 0; + } + } + + &:hover { //Seems like it :hover even with keyboard focus + border-width: 1px 1px 0px; + border-color: $menubar_menuitem_hover_border_color; + border-style:solid; + color: $link_color; + background-image: linear-gradient(to bottom, + $menubar_menuitem_hover_gradient_a, + $menubar_menuitem_hover_gradient_b 50%, + $menubar_menuitem_hover_gradient_c 50%, + $menubar_menuitem_hover_gradient_d ); + } + + &:disabled { + color: $insensitive_fg_color; + box-shadow: none; + } + } + + // remove padding and rounding from menubar submenu decoration + .csd.popup decoration {border-radius:0;} +} + +// Needed to make the border-radius of menus work +// otherwise the background bleeds out of the menu edges +.background.popup { background-color: transparent; } + +menu, +.menu, +.context-menu { + margin: 4px; // see https://bugzilla.gnome.org/show_bug.cgi?id=591258 + padding: 4px 0px; + background-color: $menu_color; + border: 1px solid $borders_color; // adds borders in a non composited env + + .csd & { + border: none; // axes borders in a composited env + border-radius: $menu_radius; + } + + &:backdrop { background-color: $backdrop_menu_color; } + + menuitem { + min-height: 16px; + min-width: 40px; + padding: 4px 6px; + text-shadow: none; + + &:hover { + color: $selected_fg_color; + background-color: $selected_bg_color; + box-shadow: inset 0px 1px $menubar_menuitem_hover_border_color, inset 0px -1px $menubar_menuitem_hover_border_color; + border-style:solid; + background-image: linear-gradient(to bottom, + $menubar_menuitem_hover_gradient_a, + $menubar_menuitem_hover_gradient_b 50%, + $menubar_menuitem_hover_gradient_c 50%, + $menubar_menuitem_hover_gradient_d ); + } + + &:disabled { + color: $insensitive_fg_color; + &:backdrop { color: $backdrop_insensitive_color; } + } + + &:backdrop, + &:backdrop:hover { + color: $backdrop_fg_color; + background-color: transparent; + } + + // submenu indicators + arrow { + min-height: 16px; + min-width: 16px; + + &:dir(ltr) { + -gtk-icon-source: -gtk-icontheme('pan-end-symbolic'); + margin-left: 10px; + } + + &:dir(rtl) { + -gtk-icon-source:-gtk-icontheme('pan-end-symbolic-rtl'); + margin-right: 10px; + } + } + + // avoids labels color being overridden, see + // https://bugzilla.gnome.org/show_bug.cgi?id=767058 + label { &:dir(rtl), &:dir(ltr) { color: inherit; }} + } + + // overflow arrows + > arrow { + @include button(undecorated); + + min-height: 16px; + min-width: 16px; + padding: 4px; + background-color: $menu_color; + border-radius: 0; + + &.top { + margin-top: -4px; + border-bottom: 1px solid mix($fg_color, $base_color, 10%); + border-top-right-radius: $menu_radius; + border-top-left-radius: $menu_radius; + -gtk-icon-source: -gtk-icontheme('pan-up-symbolic'); + } + + &.bottom { + margin-top: 8px; + margin-bottom: -12px; + border-top: 1px solid mix($fg_color, $base_color, 10%); + border-bottom-right-radius: $menu_radius; + border-bottom-left-radius: $menu_radius; + -gtk-icon-source: -gtk-icontheme('pan-down-symbolic'); + } + + &:hover { background-color: mix($fg_color, $base_color, 10%); } + + &:backdrop { background-color: $backdrop_menu_color; } + + &:disabled { + color: transparent; + background-color: transparent; + border-color: transparent ; + } + } +} + +menuitem { + accelerator { color: gtkalpha(currentColor,0.55); } + + check, + radio { + min-height: 16px; + min-width: 16px; + + &:dir(ltr) { margin-right: 7px; } + &:dir(rtl) { margin-left: 7px; } + } +} + +/*************** + * Popovers * + ***************/ + +popover.background { + padding: 2px; + background-color: $popover_bg_color; + + .csd &, & { + border: 1px solid $borders_color; + border-radius: $popover_radius; + } + + .csd & { + $_popover_border: if($variant=='light', transparentize(black, 0.77), transparentize($borders_color, 0.1)); + + background-clip: padding-box; + border-color: $borders_color; + } + + box-shadow: 0 1px 2px transparentize(black, 0.7); + + &:backdrop { + background-color: $backdrop_bg_color; + box-shadow: none; + } + + > list, + > .view, + > toolbar { + border-style: none; + background-color: transparent; + } + + .csd &, & { + &.touch-selection, + &.magnifier { + @extend %osd; + + border: 1px solid transparentize(white, 0.9); + + button { @extend %osd_button }; + } + + &.osd { @extend %osd; } + } + + separator { margin: 3px; } + + list separator { margin: 0px; } +} + +/************* + * Notebooks * + *************/ +notebook { + > header.top {padding-top: 1px; box-shadow: 0px -1px $bg_color, 0px -2px $bg_color, 1px 0px $bg_color, -1px 0px $bg_color; border-top-color: $bg_color; } + > header.bottom {padding-bottom: 2px; box-shadow: 0px 1px $bg_color, 0px 2px $bg_color, 1px 0px $bg_color, -1px 0px $bg_color; border-bottom-color: $bg_color; } + > header.left {padding-left: 3px; box-shadow: 0px 1px $bg_color, 0px -1px $bg_color, 1px 0px $bg_color, -1px 0px $bg_color; border-left-color: $bg_color;} + > header.right {padding-right: 3px; box-shadow: 0px 1px $bg_color, 0px -1px $bg_color, 1px 0px $bg_color, -1px 0px $bg_color; border-right-color: $bg_color; } + + + > header { + padding: 1px; + border-color: $borders_color; + border-width: 1px; + background-color: $dark_fill; + + &:backdrop { + border-color: $backdrop_borders_color; + background-color: $backdrop_dark_fill; + } + + tabs { margin: -1px; } + + &.top { + border-bottom-style: solid; + > tabs { + margin-bottom: -2px; margin-top: 2px; + > tab { + background-image: linear-gradient(to bottom, gtkshade($bg_color, 1.02), gtkshade($bg_color, 0.8)); + box-shadow: 0px -1px $borders_color, 1px 0px $borders_color, -1px 0px $borders_color, inset 0px -1px $borders_color; + border-top-left-radius: 3px; + border-top-right-radius: 3px; + &:hover { } // Yaru change: 4px underlines are too much + + &:backdrop { } + + &:checked { background-image: linear-gradient(to bottom, + gtkshade($core_color_a, 0.7), + $core_color_a 3px, + desaturate(darken($core_color_a, 30%), 15%) 5px, + lighten($notebook_base_color, 4%) 5px, + $notebook_base_color); + box-shadow: 0px -1px desaturate(darken($core_color_a, 30%), 15%), 1px 0px $borders_color, -1px 0px $borders_color; } // Yaru change: 4px underlines are too much + } + } + } + + &.bottom { + border-top-style: solid; + > tabs { + margin-top: -2px; margin-bottom: 2px; + > tab { + background-image: linear-gradient(to top, gtkshade($bg_color, 1.02), gtkshade($bg_color, 0.8)); + box-shadow: 0px 1px $borders_color , 1px 0px $borders_color, -1px 0px $borders_color, inset 0px 1px $borders_color; + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; + &:hover { } // Yaru change: 4px underlines are too much + + &:backdrop { } + + &:checked { background-image: linear-gradient(to top, + gtkshade($core_color_a, 0.7), + $core_color_a 3px, + desaturate(darken($core_color_a, 30%), 15%) 5px, + lighten($notebook_base_color, 4%) 5px, + $notebook_base_color); + box-shadow: 0px 1px desaturate(darken($core_color_a, 30%), 15%) , 1px 0px $borders_color, -1px 0px $borders_color; } // Yaru change: 4px underlines are too much + } + } + } + + &.left { + border-right-style: solid; + > tabs { + margin-right: -2px; + > tab { + background-image: linear-gradient(to right, gtkshade($bg_color, 1.02), gtkshade($bg_color, 0.8)); + box-shadow: 0px 1px $borders_color , 0px -1px $borders_color, -1px 0px $borders_color, inset -1px 0px $borders_color; + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; + + &:hover { } // Yaru change: 4px underlines are too much + + &:backdrop { } + + &:checked { background-image: linear-gradient(to right, + gtkshade($core_color_a, 0.7), + $core_color_a 3px, + desaturate(darken($core_color_a, 30%), 15%) 5px, + lighten($notebook_base_color, 4%) 5px, + $notebook_base_color); + box-shadow: -1px 0px desaturate(darken($core_color_a, 30%), 15%) , 0px -1px $borders_color,0px 1px $borders_color; } // Yaru change: 4px underlines are too much + } + } + } + + &.right { + border-left-style: solid; + > tabs { + margin-left: -2px; + > tab { + background-image: linear-gradient(to left, gtkshade($bg_color, 1.02), gtkshade($bg_color, 0.8)); + box-shadow: 0px 1px $borders_color , 0px -1px $borders_color, 1px 0px $borders_color, inset 1px 0px $borders_color; + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; + &:hover { } // Yaru change: 4px underlines are too much + + &:backdrop { } + + &:checked { background-image: linear-gradient(to left, + gtkshade($core_color_a, 0.7), + $core_color_a 3px, + desaturate(darken($core_color_a, 30%), 15%) 5px, + lighten($notebook_base_color, 4%) 5px, + $notebook_base_color); + box-shadow:1px 0px desaturate(darken($core_color_a, 30%), 15%), 0px -1px $borders_color,0px 1px $borders_color;} // Yaru change: 4px underlines are too much + } + } + } + + &.top > tabs > arrow { + @extend %notebook_vert_arrows; + + border-top-style: none; + } + + &.bottom > tabs > arrow { + @extend %notebook_vert_arrows; + + border-bottom-style: none; + } + + @at-root %notebook_vert_arrows { + margin-left: -5px; + margin-right: -5px; + padding-left: 4px; + padding-right: 4px; + + &.down { -gtk-icon-source: -gtk-icontheme('pan-start-symbolic'); } + + &.up { -gtk-icon-source: -gtk-icontheme('pan-end-symbolic'); } + } + + &.left > tabs > arrow { + @extend %notebook_horz_arrows; + + border-left-style: none; + } + + &.right > tabs > arrow { + @extend %notebook_horz_arrows; + + border-right-style: none; + } + + @at-root %notebook_horz_arrows { + margin-top: -5px; + margin-bottom: -5px; + padding-top: 4px; + padding-bottom: 4px; + + &.down { -gtk-icon-source: -gtk-icontheme('pan-up-symbolic'); } + + &.up { -gtk-icon-source: -gtk-icontheme('pan-down-symbolic'); } + } + + > tabs > arrow { + @extend %button_basic; + + @extend %button_basic_flat; + + min-height: 16px; + min-width: 16px; + border-radius: 0; + + &:hover:not(:active):not(:backdrop) { + background-clip: padding-box; + background-image: none; + background-color: transparentize(white, 0.7); + border-color: transparent; + box-shadow: none; + } + + &:disabled { @include button(undecorated); } + } + + tab { + min-height: 22px; + min-width: 22px; + padding: 3px 12px; + + outline-offset: -5px; + + color: $fg_color; + font-weight: normal; + + border-width: 0px; // for reorderable tabs + border-color: transparent; // + + &:hover { + color: $fg_color; + background-color: darken($bg_color,4%); + + &.reorderable-page { + border-color: transparentize($borders_color, 0.7); + background-color: transparentize($bg_color, 0.8); + } + } + + &:backdrop { + color: mix($backdrop_fg_color, $backdrop_bg_color, 60%); + + &.reorderable-page { + border-color: transparent; + background-color: transparent; + } + } + + &:checked { + color: $fg_color; + &.reorderable-page { + border-color: transparentize($borders_color, 0.5); + background-color: transparentize($bg_color, 0.5); + + &:hover { background-color: transparentize($bg_color, 0.3); } + } + } + + &:backdrop:checked { + color: $backdrop_fg_color; + + &.reorderable-page { + border-color: $backdrop_borders_color; + background-color: $backdrop_bg_color; + } + } + + // colors the button like the label, overridden otherwise + button.flat { + &:hover { color: currentColor; } + + &, &:backdrop { color: gtkalpha(currentColor, 0.3); } + + padding: 0; + margin-top: 4px; + margin-bottom: 4px; + // FIXME: generalize .small-button? + min-width: 20px; + min-height: 20px; + + &:last-child { + margin-left: 4px; + margin-right: -4px; + } + + &:first-child { + margin-left: -4px; + margin-right: 4px; + } + } + } + + &.top, + &.bottom { + tabs { + padding-left: 0px; + padding-right: 0px; + + &:not(:only-child) { + margin-left: 1px; + margin-right: 1px; + + &:first-child { margin-left: 0px; } + &:last-child { margin-right: -1px; } + } + + tab { + margin-left: 0px; + margin-right: 0px; + + &.reorderable-page { border-style: none solid; } + } + } + } + + &.left, + &.right { + tabs { + padding-top: 0px; + padding-bottom: 0px; + + &:not(:only-child) { + margin-top: 0px; + margin-bottom: 0px; + + &:first-child { margin-top: 0px; } + &:last-child { margin-bottom: -1px; } + } + + tab { + margin-top: 0px; + margin-bottom: 0px; + + &.reorderable-page { border-style: solid none; } + } + } + } + + &.top tab { padding-bottom: 4px; } + &.bottom tab { padding-top: 4px; } + } + + > stack:not(:only-child) { // the :not(:only-child) is for "hidden" notebooks + background-color: $notebook_base_color; + + &:backdrop { background-color: $notebook_base_color; } + } +} + + +/************** + * Scrollbars * + **************/ +$scrollbar_trough_gradient_a: gtkshade($core_color_b, 0.86); +$scrollbar_trough_gradient_b: gtkshade($core_color_b, 0.90); + +$scrollbar_slider_bg_color: gtkshade($core_color_a, 0.99); +$scrollbar_slider_gradient_a: gtkshade($scrollbar_slider_bg_color,0.90); +$scrollbar_slider_gradient_b: gtkshade($core_color_a, 0.88); +$scrollbar_slider_gradient_c: gtkshade($core_color_a, 0.85); +$scrollbar_slider_gradient_d: gtkshade($core_color_a, 0.80); +$scrollbar_slider_inner_border_color: gtkshade($core_color_a, 1.04); + +$scrollbar_slider_hover_bg_color: gtkshade($core_color_a, 1.03); +$scrollbar_slider_hover_gradient_a: gtkshade($scrollbar_slider_hover_bg_color, 0.93); +$scrollbar_slider_hover_gradient_b: gtkshade($core_color_a, 0.92); +$scrollbar_slider_hover_gradient_c: gtkshade($core_color_a, 0.90); +$scrollbar_slider_hover_gradient_d: gtkshade($core_color_a, 0.86); + +scrollbar { + $_slider_min_length: 40px; + + // disable steppers + @at-root * { + -GtkScrollbar-has-backward-stepper: true; + -GtkScrollbar-has-forward-stepper: true; + } + + background-color: $scrollbar_bg_color; + transition: 300ms $ease-out-quad; + + // scrollbar border + &.top { border-bottom: 1px solid $borders_color; } + &.bottom { border-top: 1px solid $borders_color; } + &.left { border-right: 1px solid $borders_color; } + &.right { border-left: 1px solid $borders_color; } + + &:backdrop { + background-color: $backdrop_scrollbar_bg_color; + border-color: $backdrop_borders_color; + transition: $backdrop_transition; + } + + &.horizontal trough { + min-height: 14px; + border-radius: 0px; + border-width: 0px 1px 0px 1px; + border-image: none; + background-image: linear-gradient(to bottom, + $scrollbar_trough_gradient_a, + $scrollbar_trough_gradient_b 50%); +} + + &.vertical trough { + min-height: 14px; + border-radius: 0px; + border-width: 0px 1px 0px 1px; + border-image: none; + background-image: linear-gradient(to right, + $scrollbar_trough_gradient_a, + $scrollbar_trough_gradient_b 50% ); +} + + &.horizontal slider { + background-position: center center; + background-image: url("assets/slider-horz-grip.png"), linear-gradient(to bottom, + transparentize($scrollbar_slider_gradient_a, 0.01) 1px, + transparentize($scrollbar_slider_gradient_b, 0.01) 50%, + transparentize($scrollbar_slider_gradient_c, 0.01) 50%, + transparentize($scrollbar_slider_gradient_d, 0.01) 95%); + } + + &.vertical slider { + background-position: center center; + background-image: url("assets/slider-vert-grip.png"), linear-gradient(to right, + transparentize($scrollbar_slider_gradient_a, 0.01) 1px, + transparentize($scrollbar_slider_gradient_b, 0.01) 50%, + transparentize($scrollbar_slider_gradient_c, 0.01) 50%, + transparentize($scrollbar_slider_gradient_d, 0.01) 95%); + } + + &.vertical slider:hover { + background-position: center center; + background-image: url("assets/slider-vert-grip.png"), linear-gradient(to right, + $scrollbar_slider_inner_border_color, + $scrollbar_slider_hover_gradient_a 1px, + $scrollbar_slider_hover_gradient_b 50%, + $scrollbar_slider_hover_gradient_c 50%, + $scrollbar_slider_hover_gradient_d 95%, + $scrollbar_slider_inner_border_color); +} + + &.horizontal slider:hover { + background-position: center center; + background-image: url("assets/slider-horz-grip.png"), linear-gradient(to bottom, + $scrollbar_slider_inner_border_color, + $scrollbar_slider_hover_gradient_a 1px, + $scrollbar_slider_hover_gradient_b 50%, + $scrollbar_slider_hover_gradient_c 50%, + $scrollbar_slider_hover_gradient_d 95%, + $scrollbar_slider_inner_border_color); +} + + // slider + slider { + background-repeat: no-repeat; + background-position: center center; + min-width: 14px; + min-height: 14px; + border: 1px solid darken($core_color_a , 35%); + border-radius: 0px; + // background-clip: padding-box; + // background-color: $scrollbar_slider_color; + + &:hover { background-color: $scrollbar_slider_hover_color; } + + &:hover:active { background-color: $scrollbar_slider_active_color; } + + &:backdrop { background-color: $backdrop_scrollbar_slider_color; } + + &:disabled { background-color: transparent; } + } + + &.fine-tune { + slider { + min-width: 4px; + min-height: 4px; + } + + &.horizontal slider { border-width: 5px 4px; } + &.vertical slider { border-width: 4px 5px; } + } + + &.overlay-indicator { + &:not(.dragging):not(.hovering) { + border-color: transparent; + opacity: 0.4; + background-color: transparent; + + slider { + margin: 0; + min-width: 3px; + min-height: 3px; + background-color: $fg_color; + border: 1px solid if($variant == 'light', white, black); + } + + button { + min-width: 5px; + min-height: 5px; + background-color: $fg_color; + background-clip: padding-box; + border-radius: 100%; + border: 1px solid if($variant == 'light', white, black); + -gtk-icon-source: none; + } + + &.horizontal { + slider { + margin: 0 0px; + min-width: $_slider_min_length; + } + + button { + margin: 1px 2px; + min-width: 5px; + } + } + + &.vertical { + slider { + margin: 0px 0; + min-height: $_slider_min_length; + } + + button { + margin: 2px 1px; + min-height: 5px; + } + } + } + + &.dragging, + &.hovering { opacity: 0.8; } + } + + &.horizontal slider { min-width: $_slider_min_length; } + + &.vertical slider { min-height: $_slider_min_length; } + + // button styling + button { + padding: 0; + min-width: 13px; + min-height: 13px; + border-style: none; + border-radius: 0; + transition-property: min-height, min-width, color; + + @include button(undecorated); + + color: $scrollbar_slider_color; + + &:hover { + @include button(undecorated); + + color: $scrollbar_slider_hover_color; + } + &:active, &:checked { + @include button(undecorated); + + color: $scrollbar_slider_active_color; + } + &:disabled { + @include button(undecorated); + + color: transparentize($scrollbar_slider_color, 0.8); + } + &:backdrop { + @include button(undecorated); + + color: $backdrop_scrollbar_slider_color; + + &:disabled { + @include button(undecorated); + + color: transparentize($backdrop_scrollbar_slider_color, 0.8); + } + } + } + + // button icons + &.vertical { + button { + &.down { -gtk-icon-source: -gtk-icontheme('pan-down-symbolic'); } + + &.up { -gtk-icon-source: -gtk-icontheme('pan-up-symbolic'); } + } + } + + &.horizontal { + button { + &.down { -gtk-icon-source: -gtk-icontheme('pan-end-symbolic'); } + + &.up { -gtk-icon-source: -gtk-icontheme('pan-start-symbolic'); } + } + } +} + +treeview ~ scrollbar.vertical { + border-top: 1px solid $borders_color; + margin-top: -1px; +} + +/********** + * Switch * + **********/ +switch { + outline-offset: -4px; + + // similar to the .scale + border: 1px solid $borders_color; + border-radius: 14px; + color: $fg_color; + background-color: $dark_fill; + text-shadow: 0 1px transparentize(black, 0.9); + + &:checked { + color: $selected_fg_color; + border-color: $checkradio_borders_color; + background-color: $checkradio_bg_color; + text-shadow: 0 1px transparentize($selected_borders_color, 0.5), + 0 0 2px transparentize(white, 0.4); + } + + &:disabled { + color: $insensitive_fg_color; + border-color: $borders_color; + background-color: $insensitive_bg_color; + text-shadow: none; + } + + &:backdrop { + color: $backdrop_fg_color; + border-color: $backdrop_borders_color; + background-color: $backdrop_dark_fill; + text-shadow: none; + transition: $backdrop_transition; + + &:checked { + @if $variant == 'light' { color: $backdrop_bg_color; } + border-color: if($variant == 'light', $checkradio_borders_color, + $selected_borders_color); + background-color: $checkradio_bg_color; + } + + &:disabled { + color: $backdrop_insensitive_color; + border-color: $backdrop_borders_color; + background-color: $insensitive_bg_color; + } + } + + slider { + margin: -1px; + min-width: 24px; + min-height: 24px; + border: 1px solid; + border-radius: 50%; + transition: $button_transition; + -gtk-outline-radius: 20px; + + @if $variant == 'light' { + @include button(normal-alt, $edge: $shadow_color); + } + @else { + @include button(normal-alt, $c: lighten($bg_color,6%), $edge: $shadow_color); + } + } + + image { color: transparent; } /* only show i / o for the accessible theme */ + + &:hover slider { + @if $variant == 'light' { + @include button(hover-alt, $edge: $shadow_color); + } + @else { + @include button(hover-alt, $c: lighten($bg_color,6%), $edge: $shadow_color); + } + } + + &:checked > slider { border: 1px solid $checkradio_borders_color; } + + &:disabled slider { @include button(insensitive); } + + &:backdrop { + slider { + transition: $backdrop_transition; + + @include button(backdrop); + } + + &:checked > slider { border-color: $checkradio_borders_color; } + + &:disabled slider { @include button(backdrop-insensitive); } + } + + row:selected & { + @if $variant == 'light' { + box-shadow: none; + border-color: $checkradio_borders_color; + + &:backdrop { border-color: $checkradio_borders_color; } + + > slider { &:checked, & { border-color: $checkradio_borders_color; } } + } + } + +} + + +/************************* + * Check and Radio items * + *************************/ +// draw regular check and radio items using our PNG assets +// all assets are rendered from assets.svg. never add pngs directly + + +//selection-mode +@each $check_state, $check_icon, $check_color, $check_background in + ('', 'none', 'transparent', $checkradio_bg_color), + (':hover', 'none', 'transparent', $checkradio_bg_color), + (':active', 'none', 'transparent', $checkradio_bg_color), + (':backdrop', 'none', 'transparent', '#{desaturate($checkradio_bg_color, 100%)}'), + (':checked', '-gtk-icontheme(\'object-select-symbolic\')', $osd_fg_color, $checkradio_bg_color), + (':checked:hover', '-gtk-icontheme(\'object-select-symbolic\')', $osd_fg_color, $checkradio_bg_color), + (':checked:active', '-gtk-icontheme(\'object-select-symbolic\')', $osd_fg_color, $checkradio_bg_color), + (':backdrop:checked', '-gtk-icontheme(\'object-select-symbolic\')', '#{transparentize($osd_fg_color, 0.2)}', '#{desaturate($checkradio_bg_color, 100%)}'), { + + .view.content-view.check#{$check_state}:not(list), + .content-view:not(list) check#{$check_state} { + margin: 4px; + min-width: 32px; + min-height: 32px; + color: #{$check_color}; + background-color: #{$check_background}; + border-radius: 5px; + background-image: none; + transition: 200ms; + box-shadow: none; + border-width: 0; + -gtk-icon-source: #{$check_icon}; + -gtk-icon-shadow: none; + } +} + +checkbutton.text-button, radiobutton.text-button { + // this is for a nice focus on check and radios text + padding: 2px 0; + outline-offset: 0; + + label:not(:only-child) { + &:first-child { margin-left: 4px; } + &:last-child { margin-right: 4px; } + } +} + +check, +radio { + margin: 0 4px; + + &:only-child { margin: 0; } + + popover & { // when in a popover add more space between the label and the check, reset the other side margin. + // See https://bugzilla.gnome.org/show_bug.cgi?id=779570 for details. + &.left:dir(rtl) { + margin-left: 0; + margin-right: 12px; + } + + &.right:dir(ltr) { + margin-left: 12px; + margin-right: 0; + } + } + + min-height: 14px; + min-width: 14px; + border: 1px solid; + -gtk-icon-source: none; + + & { + // for unchecked + $_c: if($variant=='light', white, $bg_color); + + @each $state, $t in ("", "normal"), + (":hover", "hover"), + (":active", "active"), + (":disabled", "insensitive"), + (":backdrop", "backdrop"), + (":backdrop:disabled", 'backdrop-insensitive') { + &#{$state} { + @include check($t, $_c); + } + } + } + + & { + // for checked + @each $t in (':checked'), (':indeterminate') { + &#{$t} { + @each $state, $t in ("", "normal"), + (":hover", "hover"), + (":active", "active"), + (":disabled", "insensitive"), + (":backdrop", "backdrop"), + (":backdrop:disabled", 'backdrop-insensitive') { + &#{$state} { + @include check($t, $checkradio_bg_color, $fg_color, $checked: true); + } + } + } + } + } + + &:backdrop { transition: $backdrop_transition; } + + + @if $variant == 'light' { + // the borders of the light variant versions of checks and radios are too similar in luminosity to the selected background + // color, hence we need special casing. + // row:selected & { border-color: $checkradio_borders_color; } + } + + .osd & { + @include button(osd); + + &:hover { @include button(osd); } + &:active { @include button(osd-active); } + &:backdrop { @include button(osd-backdrop); } + &:disabled { @include button(osd-insensitive); } + } + + menu menuitem & { + margin: 0; // this is a workaround for a menu check/radio size allocation issue + + &, &:checked, &:indeterminate { + &, &:hover, &:disabled { //FIXME use button reset mixin + min-height: 14px; + min-width: 14px; + background-image: none; + background-color: transparent; + box-shadow: none; + -gtk-icon-shadow: none; + color: inherit; + border-color: currentColor; + } + } + } +} + +%check, +check { + border-radius: 1px; + + &:checked { -gtk-icon-source: image(-gtk-recolor(url("assets/check-symbolic.svg")), + -gtk-recolor(url("assets/check-symbolic.symbolic.png"))); } + + &:indeterminate { -gtk-icon-source: image(-gtk-recolor(url("assets/dash-symbolic.svg")), + -gtk-recolor(url("assets/dash-symbolic.symbolic.png"))); } +} + +%radio, +radio { + border-radius: 100%; + + &:checked { -gtk-icon-source: image(-gtk-recolor(url("assets/bullet-symbolic.svg")), + -gtk-recolor(url("assets/bullet-symbolic.symbolic.png"))); } + + &:indeterminate { -gtk-icon-source: image(-gtk-recolor(url("assets/dash-symbolic.svg")), + -gtk-recolor(url("assets/dash-symbolic.symbolic.png"))); } +} + +// ANIMATION: +// this is made with those pretty convoluted transitions, since checks and radios have to animate only on state changes, +// the transformation is set on the active state and it get reset on the checked state. +radio:not(:indeterminate):not(:checked):active:not(:backdrop) { -gtk-icon-transform: scale(0); } + +check:not(:indeterminate):not(:checked):active:not(:backdrop) { -gtk-icon-transform: translate(6px, -3px) rotate(-45deg) scaleY(0.2) rotate(45deg) scaleX(0); } + +radio, +check { + &:active { -gtk-icon-transform: scale(0, 1); border-color: $borders_color; } // should tackle the indeterminate state, untested + + &:checked:not(:backdrop), &:indeterminate:not(:backdrop) { + -gtk-icon-transform: unset; + transition: 400ms; + } +} + +menu menuitem { + radio, + check { + &:checked:not(:backdrop), &:indeterminate:not(:backdrop) { transition: none; } + } +} + +treeview.view check, +treeview.view radio { + &:selected { + &:focus, & { + color: $checkradio_fg_color; + + @if $variant == 'light' { border-color: $selected_borders_color; } + } + } +} + +treeview.view radio:selected { &:focus, & { @extend %radio; }} // This is a workaround + + +/************ + * GtkScale * + ************/ +%scale_trough { + border: 1px solid $borders_color; + border-radius: 3px; + background-color: gtkshade($core_color_b, 0.90); + + &:disabled { background-color: $insensitive_bg_color; } + + &:backdrop { + background-color: $backdrop_dark_fill; + border-color: $backdrop_borders_color; + transition: $backdrop_transition; + + &:disabled { background-color: $insensitive_bg_color; } + } + + // ...on selected list rows + row:selected & { &:disabled, & { border-color: $selected_borders_color; }} + + // OSD + .osd & { + border-color: $osd_borders_color; + background-color: transparentize($osd_borders_color, 0.2); + + &:disabled { background-color: $osd_insensitive_bg_color; } + } +} + +%scale_highlight { + border: 1px solid $progress_border_color; + border-radius: 3px; + background-color: gtkshade($core_color_a, 0.90); + + &:disabled { + background-color: transparent; + border-color: transparent; + } + + &:backdrop { + border-color: $progress_border_color; + &:disabled { + background-color: transparent; + border-color: transparent; + } + } + + // ...on selected list rows + row:selected & { &:disabled, & { border-color: $selected_borders_color; }} + + // OSD + .osd & { + border-color: $osd_borders_color; + + &:disabled { border-color: transparent; } + } +} + +scale { + // sizing + $_marks_length: 6px; + $_marks_distance: 6px; + + min-height: 10px; + min-width: 10px; + padding: 11px; + + // those are inside the trough node, I need them to show their own border over the trough one, so negative margin + fill, + highlight { margin: -1px; } + + // the slider is inside the trough, so to have make it bigger there's a negative margin + + slider { + min-height: 18px; + min-width: 18px; + margin: -9px; + } + + // click-and-hold the slider to activate + &.fine-tune { + &.horizontal { + padding-top: 9px; + padding-bottom: 9px; + min-height: 16px; + } + + &.vertical { + padding-left: 9px; + padding-right: 9px; + min-width: 16px; + } + + // to make the trough grow in fine-tune mode + slider { margin: -6px; } + + fill, + highlight, + trough { + border-radius: 5px; + -gtk-outline-radius: 7px; + } + } + + // the backing bit + trough { + @extend %scale_trough; + + outline-offset: 2px; + -gtk-outline-radius: 5px; + } + + // the colored part of the backing bit + highlight { @extend %scale_highlight; } + + // this is another differently styled part of the backing bit, the most relevant use case is for example + // in media player to indicate how much video stream as been cached + fill { + @extend %scale_trough; + + &:backdrop, & { background-color: $borders_color; } + + &:disabled { + &:backdrop, & { + border-color: transparent; + background-color: transparent; + } + } + + // OSD + .osd & { + background-color: mix($osd_fg_color, $osd_borders_color, 25%); + + &:disabled { + &:backdrop, & { + border-color: transparent; + background-color: transparent; + } + } + } + } + + &.horizontal slider { + + min-width: 20px; + } + + &.vertical slider { + min-height: 20px; + + } + + slider { + @include button(normal, $edge: $shadow_color); + min-height: 12px; + min-width: 12px; + margin: -5px; + + border: 1px solid darken($alt_borders_color, 3%); + border-radius: 3px; + transition: $button_transition; + transition-property: background, border, box-shadow; + + &:hover { @include button(hover, $edge: $shadow_color); } + + &:active { border-color: $progress_border_color; } + + &:disabled { @include button(insensitive); } + + &:backdrop { + transition: $backdrop_transition; + + @include button(backdrop); + + &:disabled { @include button(backdrop-insensitive); } + } + + // ...on selected list rows + row:selected & { &:disabled, & { border-color: $selected_borders_color; } } + + // OSD + .osd & { + @include button(osd); + border-color: darken($osd_borders_color, 3%); + background-color: opacify($osd_bg_color, 1); // solid background needed here + + &:hover { + @include button(osd-hover); + background-color: opacify($osd_bg_color, 1); // solid background needed here + } + + &:active { + @include button(osd-active); + background-color: opacify($osd_bg_color, 1); // solid background needed here + } + + &:disabled { + @include button(osd-insensitive); + background-color: opacify($osd_bg_color, 1); // solid background needed here + } + + &:backdrop { + @include button(osd-backdrop); + background-color: opacify($osd_bg_color, 1); // solid background needed here + + &:disabled { + @include button(osd-backdrop-insensitive); + background-color: opacify($osd_bg_color, 1); // solid background needed here + } + } + } + } + + marks, + value { + color: gtkalpha(currentColor, 0.55); + font-feature-settings: "tnum"; + } + + //marks margins + @each $scale_orient, $marks_class, $marks_pos, $marks_margin in (horizontal, top, top, bottom), + (horizontal, bottom, bottom, top), + (vertical, top, left, right), + (vertical, bottom, right, left) { + &.#{$scale_orient} marks { + &.#{$marks_class} { + margin-#{$marks_margin}: $_marks_distance; + margin-#{$marks_pos}: -($_marks_distance + $_marks_length); + } + } + + &.#{$scale_orient}.fine-tune marks { + &.#{$marks_class} { + margin-#{$marks_margin}: $_marks_distance; + margin-#{$marks_pos}: -($_marks_distance + $_marks_length - 3px); + } + } + } + + &.horizontal { + indicator { + min-height: $_marks_length; + min-width: 1px; + } + + &.fine-tune indicator { min-height: ($_marks_length - 3px); } + } + + &.vertical { + indicator { + min-height: 1px; + min-width: $_marks_length; + } + + &.fine-tune indicator { min-width: ($_marks_length - 3px); } + } + + // *WARNING* scale with marks madness following + + // FIXME: OSD and selected list rows missing, I don't feel like adding the other 144 assets needed for those... + $suffix: if($variant == 'light', '', '-dark'); + + @each $dir_class, $dir_infix in ('horizontal', 'horz'), + ('vertical', 'vert') { + @each $marks_infix, $marks_class in ('scale-has-marks-above', 'marks-before:not(.marks-after)'), + ('scale-has-marks-below', 'marks-after:not(.marks-before)') { + @each $state, $state_infix in ('', ''), + (':hover', '-hover'), + (':active', '-active'), + (':disabled', '-insensitive'), + (':backdrop', '-backdrop'), + (':backdrop:disabled', '-backdrop-insensitive') { + &.#{$dir_class}.#{$marks_class} { + + slider { + &#{$state} { + // an asymmetric slider asset is used here, so the margins are uneven, the smaller + // margin is set on the point side. + margin: -10px; + $_scale_asset: 'assets/slider-#{$dir_infix}-#{$marks_infix}#{$state_infix}#{$suffix}'; + border-style: none; + border-radius: 0; + + background-color: transparent; + background-image: -gtk-scaled(url('#{$_scale_asset}.png'), url('#{$_scale_asset}@2.png')); + + $_scale_slider_bg_pos: bottom; + + @if $dir_class == 'horizontal' { + min-height: 26px; + min-width: 22px; + + @if $marks_infix == 'scale-has-marks-above' { + margin-top: -14px; + + $_scale_slider_bg_pos: top; + } + + @else { margin-bottom: -14px; } + } + + @else { + min-height: 22px; + min-width: 26px; + + @if $marks_infix == 'scale-has-marks-above' { + margin-left: -14px; + + $_scale_slider_bg_pos: left bottom; + } + + @else { + margin-right: -14px; + + $_scale_slider_bg_pos: right bottom; + } + } + + background-position: $_scale_slider_bg_pos; + background-repeat: no-repeat; + box-shadow: none; + } + } + + &.fine-tune slider { + // bigger negative margins to make the trough grow here as well + margin: -7px; + + @if $dir_class == 'horizontal' { + @if $marks_infix == 'scale-has-marks-above' { margin-top: -11px; } + + @else { margin-bottom: -11px; } + } + + @else { + @if $marks_infix == 'scale-has-marks-above' { margin-left: -11px; } + + @else { margin-right: -11px; } + } + } + } + } + } + } + + &.color { + min-height: 0; + min-width: 0; + + trough { + background-image: image($borders_color); + background-repeat: no-repeat; + } + + &.horizontal { + padding: 0 0 15px 0; + + trough { + padding-bottom: 4px; + background-position: 0 -3px; + border-top-left-radius: 0; + border-top-right-radius: 0; + } + + slider { + &:dir(ltr), &:dir(rtl) { // specificity bumb + &:hover, &:backdrop, &:disabled, &:backdrop:disabled, & { + margin-bottom: -15px; + margin-top: 6px; + } + } + } + } + + &.vertical { + &:dir(ltr) { + padding: 0 0 0 15px; + + trough { + padding-left: 4px; + background-position: 3px 0; + border-bottom-right-radius: 0; + border-top-right-radius: 0; + } + + slider { + &:hover, &:backdrop, &:disabled, &:backdrop:disabled, & { + margin-left: -15px; + margin-right: 6px; + } + } + } + + &:dir(rtl) { + padding: 0 15px 0 0; + + trough { + padding-right: 4px; + background-position: -3px 0; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + } + + slider { + &:hover, &:backdrop, &:disabled, &:backdrop:disabled, & { + margin-right: -15px; + margin-left: 6px; + } + } + } + } + + &.fine-tune { + &.horizontal { + &:dir(ltr), &:dir(rtl) { // specificity bump + padding: 0 0 12px 0; + + trough { + padding-bottom: 7px; + background-position: 0 -6px; + } + + slider { + margin-bottom: -15px; + margin-top: 6px; + } + } + } + + &.vertical { + &:dir(ltr) { + padding: 0 0 0 12px; + + trough { + padding-left: 7px; + background-position: 6px 0; + } + + slider { + margin-left: -15px; + margin-right: 6px; + } + } + + &:dir(rtl) { + padding: 0 12px 0 0; + + trough { + padding-right: 7px; + background-position: -6px 0; + } + + slider { + margin-right: -15px; + margin-left: 6px; + } + } + } + } + } +} + + +/***************** + * Progress bars * + *****************/ +progressbar { + // sizing + &.horizontal { + trough, + progress { min-height: 16px; } + } + + &.vertical { + trough, + progress { min-width: 16px; } + } + + &.horizontal progress { margin: 0 -1px; + background-image: + repeating-linear-gradient(135deg, + gtkalpha($progressbar_pattern_color, 0.0), + gtkalpha($progressbar_pattern_color, 0.0) 12px, + gtkalpha($progressbar_pattern_color, 0.4) 12px, + gtkalpha($progressbar_pattern_color, 0.4) 24px), + linear-gradient(to bottom, + gtkalpha($progressbar_gradient_a, 0.7), + gtkalpha($progressbar_gradient_b, 0.7) 50%, + gtkalpha($progressbar_gradient_c, 0.7) 50%, + gtkalpha($progressbar_gradient_d, 0.7));} // the progress node is positioned after the trough border + &.vertical progress { margin: -1px 0; + background-image: + repeating-linear-gradient(45deg, + gtkalpha($progressbar_pattern_color, 0.0), + gtkalpha($progressbar_pattern_color, 0.0) 12px, + gtkalpha($progressbar_pattern_color, 0.5) 12px, + gtkalpha($progressbar_pattern_color, 0.5) 24px), + linear-gradient(to right, + gtkalpha($progressbar_gradient_a, 0.7), + gtkalpha($progressbar_gradient_b, 0.7) 50%, + gtkalpha($progressbar_gradient_c, 0.7) 50%, + gtkalpha($progressbar_gradient_d, 0.7)); } // this moves it over it. + + + // FIXME: insensitive state missing and some other state should be set probably + font-size: smaller; + color: transparentize($fg_color, 0.6); + font-feature-settings: "tnum"; + + &:backdrop { + box-shadow: none; + transition: $backdrop_transition; + } + + trough { @extend %scale_trough; } + + progress { + @extend %scale_highlight; + + border-radius: 1.5px; + + &.left { + border-top-left-radius: 2px; + border-bottom-left-radius: 2px; + } + + &.right { + border-top-right-radius: 2px; + border-bottom-right-radius: 2px; + } + + &.top { + border-top-right-radius: 2px; + border-top-left-radius: 2px; + } + + &.bottom { + border-bottom-right-radius: 2px; + border-bottom-left-radius: 2px; + } + } + + &.osd { // progressbar.osd used for epiphany page loading progress + min-width: 3px; + min-height: 3px; + background-color: transparent; + + trough { + border-style: none; + border-radius: 0; + background-color: transparent; + box-shadow: none; + } + + progress { + border-style: none; + border-radius: 0; + } + } + + trough.empty progress { all: unset; } // makes the progress indicator disappear, when the fraction is 0 +} + + +/************* + * Level Bar * + *************/ +levelbar { + &.horizontal { + block { + min-height: 1px; + } + + &.discrete block { + margin: 0 1px; + min-width: 32px; + } + } + + &.vertical { + block { + min-width: 1px; + } + + &.discrete block { + margin: 1px 0; + min-height: 32px; + } + } + + &:backdrop { transition: $backdrop_transition; } + + trough { + border: 1px solid; + padding: 2px; + border-radius: 3px; + @include entry(normal); + + &:backdrop { @include entry(backdrop); } + } + + block { + border: 1px solid; + border-radius: 1px; + + &.low { + border-color: if($variant == 'light', darken($warning_color, 20%), $warning_color); + background-color: $warning_color; + + &:backdrop { border-color: $warning_color; }; + } + + &.high, + &:not(.empty) { + border-color: if($variant == 'light', darken($progress_bg_color, 20%), $progress_bg_color); + background-color: $progress_bg_color; + + &:backdrop { border-color: $progress_bg_color; } + } + + &.full { + border-color: if($variant == 'light', darken($success_color, 20%), $success_color); + background-color: $success_color; + + &:backdrop { border-color: $success_color; }; + } + + &.empty { + background-color: transparent; + border-color: if($variant == 'light', transparentize($fg_color,0.8), transparentize($fg_color,0.9)); + + &:backdrop { border-color: transparentize($backdrop_fg_color,0.85); } + } + } +} + + +/**************** + * Print dialog * +*****************/ +printdialog { + paper { + color: $fg_color; + border: 1px solid $borders_color; + background: white; + padding: 0; + + &:backdrop { + color: $backdrop_fg_color; + border-color: $backdrop_borders_color; + } + } + + .dialog-action-box { margin: 12px; } +} + + +/********** + * Frames * + **********/ +frame > border, +.frame { + box-shadow: none; + margin: 0; + padding: 0; + border-radius: 0; + border: 1px solid $borders_color; + + &.flat { border-style: none; } + + &:backdrop { border-color: $backdrop_borders_color; } +} + +actionbar > revealer > box { + padding: 6px; + border-top: 1px solid $borders_color; + + &:backdrop { border-color: $backdrop_borders_color; } +} + +scrolledwindow { + viewport.frame { // avoid double borders when viewport inside scrolled window + border-style: none; + } + + // This is used when content is touch-dragged past boundaries. + // draws a box on top of the content, the size changes programmatically. + overshoot { + &.top { + @include overshoot(top); + + &:backdrop { @include overshoot(top, backdrop); } + } + + &.bottom { + @include overshoot(bottom); + + &:backdrop { @include overshoot(bottom, backdrop); } + } + + &.left { + @include overshoot(left); + + &:backdrop { @include overshoot(left, backdrop); } + } + + &.right { + @include overshoot(right); + + &:backdrop { @include overshoot(right, backdrop); } + } + } + + + junction { // the small square between two scrollbars + border-color: transparent; + // the border image is used to add the missing dot between the borders, details, details, details... + border-image: linear-gradient(to bottom, $borders_color 1px, transparent 1px) 0 0 0 1 / 0 1px stretch; + background-color: $scrollbar_bg_color; + + &:dir(rtl) { border-image-slice: 0 1 0 0; } + + &:backdrop { + border-image-source: linear-gradient(to bottom, $backdrop_borders_color 1px, transparent 1px); + background-color: $backdrop_scrollbar_bg_color; + transition: $backdrop_transition; + } + } +} + +//vbox and hbox separators +separator { + background: transparentize(black, 0.9); + min-width: 1px; + min-height: 1px; +} + + +/********* + * Lists * + *********/ +list { + color: $text_color; + background-color: $base_color; + border-color: $borders_color; + + &:backdrop { + color: $backdrop_text_color; + background-color: $backdrop_base_color; + border-color: $backdrop_borders_color; + } + + row { padding: 2px; } +} + +row { + transition: all 150ms $ease-out-quad; + + &:hover { transition: none; } + + &:backdrop { transition: $backdrop_transition; } + + &.activatable { + &.has-open-popup, // this is for indicathing which row generated a popover see https://bugzilla.gnome.org/show_bug.cgi?id=754411 + + &:hover { background-color: $selected_bg_color; } + + &:active { box-shadow: inset 0 2px 2px -2px transparentize(black, 0.8); } + + &:backdrop:hover { background-color: transparent; } + + &:selected { + &:active { box-shadow: inset 0 2px 3px -1px transparentize(black, 0.5); } + + &.has-open-popup, + &:hover { background-color: $selected_bg_color; } + + &:backdrop { background-color: $selected_bg_color; } + } + } + + &:selected { @extend %selected_items; } +} + + +/********************* + * App Notifications * + *********************/ +.app-notification, +.app-notification.frame { + @extend %osd; + + padding: 10px; + border-radius: 0 0 5px 5px; + background-color: $osd_bg_color; + background-image: linear-gradient(to bottom, transparentize(black, 0.8), + transparent 2px); + background-clip: padding-box; + + &:backdrop { + background-image: none; + transition: $backdrop_transition; + } + + button { @extend %osd_button; } + + border { border: none; } +} + + +/************* + * Expanders * + *************/ +expander { + title > arrow { + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme('pan-end-symbolic'); + &:dir(rtl) { -gtk-icon-source: -gtk-icontheme('pan-end-symbolic-rtl'); } + + &:hover { color: lighten($fg_color,30%); } //only lightens the arrow + &:disabled { color: $insensitive_fg_color; } + &:disabled:backdrop { color: $backdrop_insensitive_color; } + + &:checked { -gtk-icon-source: -gtk-icontheme('pan-down-symbolic'); } + } +} + + +/************ + * Calendar * + ***********/ +calendar { + color: $text_color; + border: 1px solid $borders_color; + + &:selected { + @extend %selected_items; + + border-radius: 3px; + } + + &.header { + border-bottom-color: transparentize(black, 0.9); + + &:backdrop { border-bottom-color: transparentize(black, 0.9); } + } + + &.button { + @extend %undecorated_button; + + color: transparentize($fg_color, 0.55); + + &:hover { color: $fg_color; } + + &:backdrop { color: transparentize($backdrop_fg_color,0.55); } + + &:disabled { color: transparentize($insensitive_fg_color,0.55); } + } + + &.highlight { + color: $insensitive_fg_color; + + &:backdrop { color: $backdrop_insensitive_color; } + } + + &:backdrop { + color: $backdrop_text_color; + border-color: $backdrop_borders_color; + } + + &:indeterminate { color: gtkalpha(currentColor, 0.1); } +} + + +/*********** + * Dialogs * + ***********/ +messagedialog { // Message Dialog styling + .titlebar { + min-height: 20px; + background-image: none; + background-color: $bg_color; + border-style: none; + border-top-left-radius: 7px; + border-top-right-radius: 7px; + } + + &.csd { // rounded bottom border styling for csd version + &.background { + // bigger radius for better antialiasing + border-bottom-left-radius: $window_radius+1; + border-bottom-right-radius: $window_radius+1; + } + + .dialog-action-area button { + padding: 10px 14px; // labels are not vertically centered on message dialog, this is a workaround + border-right-style: none; + border-bottom-style: none; + border-radius: 0; + -gtk-outline-radius: 0; + + &:first-child { + border-left-style: none; + border-bottom-left-radius: $button_radius + 2; + -gtk-outline-bottom-left-radius: $button_radius + 2; + } + + &:last-child { + border-bottom-right-radius: $button_radius + 2; + -gtk-outline-bottom-right-radius: $button_radius + 2; + } + } + } +} + +filechooser { + .dialog-action-box { + border-top: 1px solid $borders_color; + + &:backdrop { border-top-color: $backdrop_borders_color; } + } + + #pathbarbox { border-bottom: 1px solid $bg_color; } +} + +filechooserbutton:drop(active) { + box-shadow: none; + border-color: transparent; +} + + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; + background-color: mix($bg_color, $base_color, 50%); + + &:not(separator) { + @at-root %sidebar_left, + &:dir(ltr), + &.left, + &.left:dir(rtl) { + border-right: 1px solid $borders_color; + border-left-style: none; + } + + @at-root %sidebar_right, + &:dir(rtl), + &.right { + border-left: 1px solid $borders_color; + border-right-style: none; + } + } + + &:backdrop { + background-color: $backdrop_sidebar_bg_color; + border-color: $backdrop_borders_color; + transition: $backdrop_transition; + } + + list { background-color: transparent; } + + paned & { &.left, &.right, &.left:dir(rtl), &:dir(rtl), &:dir(ltr), & { border-style: none; }} +} + +stacksidebar { + &.sidebar { + &:dir(ltr), + &.left, + &.left:dir(rtl) { list { @extend %sidebar_left; }} + + &:dir(rtl), + &.right { list { @extend %sidebar_right; }} + } + + row { + padding: 10px 4px; + + > label { + padding-left: 6px; + padding-right: 6px; + } + + &.needs-attention > label { + @extend %needs_attention; + + background-size: 6px 6px, 0 0; + } + } +} + +separator.sidebar { + background-color: $borders_color; + + &:backdrop { + background-color: $backdrop_borders_color; + } + + &.selection-mode, + .selection-mode & { + background-color: darken($suggested_bg_color, 20%); + } +} + + +/**************** + * File chooser * + ****************/ +$_placesidebar_icons_opacity: 0.7; + +row image.sidebar-icon { opacity: $_placesidebar_icons_opacity; } // dim the sidebar icons + // see bug #786613 for details + // on this oddity + +placessidebar { + > viewport.frame { border-style: none; } + + row { + // Needs overriding of the GtkListBoxRow padding + min-height: 36px; + padding: 0px; + + // Using margins/padding directly in the SidebarRow + // will make the animation of the new bookmark row jump + > revealer { padding: 0 14px; } + + &:selected { color: $selected_fg_color; } + + &:disabled { color: $insensitive_fg_color; } + + &:backdrop { + color: $backdrop_fg_color; + + &:selected { color: $backdrop_selected_fg_color; } + + &:disabled { color: $backdrop_insensitive_color; } + } + + image.sidebar-icon { + &:dir(ltr) { padding-right: 8px; } + &:dir(rtl) { padding-left: 8px; } + } + + label.sidebar-label { + &:dir(ltr) { padding-right: 2px; } + &:dir(rtl) { padding-left: 2px; } + } + + @at-root button.sidebar-button { + @extend %button_basic_flat; + + @extend %button_selected_flat; + + min-height: 26px; + min-width: 26px; + margin-top: 3px; + margin-bottom: 3px; + padding: 0; + border-radius: 100%; + -gtk-outline-radius: 100%; + + &:not(:hover):not(:active), + &:backdrop { > image { opacity: $_placesidebar_icons_opacity; }} + } + + // in the sidebar case it makes no sense to click the selected row + &:selected:active { box-shadow: none; } + + &.sidebar-placeholder-row { + padding: 0 8px; + min-height: 2px; + background-image: image($drop_target_color); + background-clip: content-box; + } + + &.sidebar-new-bookmark-row { color: $selected_bg_color; } + + &:drop(active):not(:disabled) { + color: $drop_target_color; + box-shadow: inset 0 1px $drop_target_color, + inset 0 -1px $drop_target_color; + + &:selected { + color: $selected_fg_color; + background-color: $drop_target_color; + } + } + } +} + +placesview { + .server-list-button > image { + transition: 200ms $ease-out-quad; + -gtk-icon-transform: rotate(0turn); + } + + .server-list-button:checked > image { + transition: 200ms $ease-out-quad; + -gtk-icon-transform: rotate(-0.5turn); + } + + row.activatable:hover { background-color: transparent; } + + // this selects the "connect to server" label + > actionbar > revealer > box > label { + padding-left: 8px; + padding-right: 8px; + } +} + + +/********* + * Paned * + *********/ +paned { + > separator { + min-width: 1px; + min-height: 1px; + -gtk-icon-source: none; // defeats the ugly default handle decoration + border-style: none; // just to be sure + background-color: transparent; + // workaround, using background istead of a border since the border will get rendered twice (?) + background-image: image($borders_color); + background-size: 1px 1px; + + &:selected { background-image: image($selected_bg_color); } // FIXME is this needed? + + &:backdrop { background-image: image($backdrop_borders_color); } + + &.wide { + min-width: 5px; + min-height: 5px; + background-color: $bg_color; + background-image: image($borders_color), image($borders_color); + background-size: 1px 1px, 1px 1px; + + &:backdrop { + background-color: $backdrop_bg_color; + background-image: image($backdrop_borders_color), + image($backdrop_borders_color); + } + } + } + + &.horizontal > separator { + background-repeat: repeat-y; + + &:dir(ltr) { + margin: 0 -8px 0 0; + padding: 0 8px 0 0; + background-position: left; + } + &:dir(rtl) { + margin: 0 0 0 -8px; + padding: 0 0 0 8px; + background-position: right; + } + + &.wide { + margin: 0; + padding: 0; + background-repeat: repeat-y, repeat-y; + background-position: left, right; + } + } + + &.vertical > separator { + margin: 0 0 -8px 0; + padding: 0 0 8px 0; + background-repeat: repeat-x; + background-position: top; + + &.wide { + margin: 0; + padding: 0; + background-repeat: repeat-x, repeat-x; + background-position: bottom, top; + } + } +} + + +/************** + * GtkInfoBar * + **************/ +infobar { + border-style: none; + + &.action:hover > revealer > box { + background-color: if($variant == 'light', desaturate(lighten(invert($selected_bg_color), 47%), 30%), + desaturate(darken(invert($selected_bg_color),42%), 70%)); + border-bottom: 1px solid lighten($borders_color, 5%); + } + + &.info, + &.question, + &.warning, + &.error { + &:backdrop > revealer > box, & > revealer > box { + label, & { color: $fg_color; } + background-color: if($variant == 'light', desaturate(lighten(invert($selected_bg_color), 45%), 30%), + desaturate(darken(invert($selected_bg_color),40%), 70%)); + border-bottom: 1px solid lighten($borders_color, 5%); + } + + text-shadow: none; + + &:backdrop { text-shadow: none; } + + button { + // FIXME: extend selection mode buttons + @include button(normal, $bg_color, $fg_color, none); + + &:hover { @include button(hover, $bg_color, $fg_color, none); } + + &:active, + &:checked { @include button(active, $bg_color, $fg_color, none); } + + &:disabled { @include button(insensitive,$bg_color,$fg_color,none); } + + &:backdrop { + @include button(backdrop, $bg_color, $fg_color, none); + border-color: _border_color($bg_color); + + &:disabled { + @include button(backdrop-insensitive, $bg_color, + $fg_color, none); + border-color: _border_color($bg_color); + } + } + &:backdrop, & { + label, & { color: $fg_color; } + } + } + + selection { background-color: darken($bg_color, 10%); } + + *:link { color: $link_color; } + } +} + + +/************ + * Tooltips * + ************/ +tooltip { + &.background { + // background-color needs to be set this way otherwise it gets drawn twice + // see https://bugzilla.gnome.org/show_bug.cgi?id=736155 for details. + background-color: transparentize(black, 0.2); + background-clip: padding-box; + border: 1px solid $tooltip_borders_color; // this suble border is meant to + // not make the tooltip melt with + // very dark backgrounds + } + + padding: 4px; /* not working */ + border-radius: 5px; + box-shadow: none; // otherwise it gets inherited by windowframe.csd + text-shadow: 0 1px black; + + // FIXME: we need a border or tooltips vanish on black background. + decoration { background-color: transparent; } + + * { // Yeah this is ugly + padding: 4px; + background-color: transparent; + color: white; + } +} + + +/***************** + * Color Chooser * + *****************/ +colorswatch { + // This widget is made of two boxes one on top of the other, the lower box is colorswatch {} the other one + // is colorswatch overlay {}, colorswatch has the programmatically set background, so most of the style is + // applied to the overlay box. + + &:drop(active), & { border-style: none; } // FIXME: implement a proper drop(active) state + + $_colorswatch_radius: 5px; + + // base color corners rounding + // to avoid the artifacts caused by rounded corner anti-aliasing the base color + // sports a bigger radius. + // nth-child is needed by the custom color strip. + + &.top { + border-top-left-radius: $_colorswatch_radius + 0.5px; + border-top-right-radius: $_colorswatch_radius + 0.5px; + + overlay { + border-top-left-radius: $_colorswatch_radius; + border-top-right-radius: $_colorswatch_radius; + } + } + + &.bottom { + border-bottom-left-radius: $_colorswatch_radius + 0.5px; + border-bottom-right-radius: $_colorswatch_radius + 0.5px; + + overlay { + border-bottom-left-radius: $_colorswatch_radius; + border-bottom-right-radius: $_colorswatch_radius; + } + } + + &.left, + &:first-child:not(.top) { + border-top-left-radius: $_colorswatch_radius + 0.5px; + border-bottom-left-radius: $_colorswatch_radius + 0.5px; + + overlay { + border-top-left-radius: $_colorswatch_radius; + border-bottom-left-radius: $_colorswatch_radius; + } + } + + &.right, + &:last-child:not(.bottom) { + border-top-right-radius: $_colorswatch_radius + 0.5px; + border-bottom-right-radius: $_colorswatch_radius + 0.5px; + + overlay { + border-top-right-radius: $_colorswatch_radius; + border-bottom-right-radius: $_colorswatch_radius; + } + } + + &.dark { + outline-color: transparentize(white, 0.4); + + overlay { + color: white; + + &:hover { border-color: if($variant == 'light', transparentize(black, 0.2), $borders_color); } + + &:backdrop { color: transparentize(white, 0.5); } + } + } + + &.light { + outline-color: transparentize(black, 0.4); + + overlay { + color: black; + + &:hover { border-color: if($variant == 'light', transparentize(black, 0.5), $borders_color); } + + &:backdrop { color: transparentize(black, 0.5); } + } + } + + &:drop(active) { + box-shadow: none; + + &.light overlay { + border-color: $drop_target_color; + box-shadow: inset 0 0 0 2px if($variant == 'light', darken($drop_target_color, 7%), $borders_color), + inset 0 0 0 1px $drop_target_color; + } + + &.dark overlay { + border-color: $drop_target_color; + box-shadow: inset 0 0 0 2px if($variant == 'light', transparentize(black, 0.7), $borders_color), + inset 0 0 0 1px $drop_target_color; + } + } + + overlay { + border: 1px solid if($variant == 'light', transparentize(black, 0.7), $borders_color); + + &:hover { + box-shadow: inset 0 1px transparentize(white, 0.6), + inset 0 -1px transparentize(black, 0.8); + } + + &:backdrop, &:backdrop:hover { + border-color: if($variant == 'light', transparentize(black, 0.7), $borders_color); + box-shadow: none; + } + } + + &#add-color-button { + border-radius: $_colorswatch_radius $_colorswatch_radius 0 0; + + &:only-child { border-radius: $_colorswatch_radius; } + + overlay { + @include button(normal); + + &:hover { @include button(hover); } + + &:backdrop { @include button(backdrop); } + } + } + + &:disabled { + opacity: 0.5; + + overlay { + border-color: transparentize(black, 0.4); + box-shadow: none; + } + } + + row:selected & { box-shadow: 0 0 0 2px $selected_fg_color; } + + &#editor-color-sample { + border-radius: 4px; + + overlay { border-radius: 4.5px; } + } +} + +// colorscale popup +colorchooser .popover.osd { border-radius: 5px; } + +/******** + * Misc * + ********/ +//content view (grid/list) +.content-view { + background-color: darken($bg_color,7%); + + &:hover { -gtk-icon-effect: highlight; } + + &:backdrop { background-color: darken($bg_color,7%); } + + rubberband, .rubberband { @extend rubberband; } +} + +.scale-popup { + .osd & { @extend %osd; } + + .osd & button.flat { //FIXME: quick hack, redo properly + border-style: none; + border-radius: 5px; + } + + button { // +/- buttons on GtkVolumeButton popup + &:hover { + @extend %undecorated_button; + background-color: transparentize($fg_color,0.9); + border-radius: 5px; + } + + &:backdrop { &:hover, &:disabled, & { @extend %undecorated_button; }} + } +} + + +/********************** + * Window Decorations * + *********************/ +decoration { + border-radius: $window_radius $window_radius 0 0; + // lamefun trick to get rounded borders regardless of CSD use + border-width: 0px; + + // this needs to be transparent + // see bug #722563 + $_wm_border: if($variant=='light', transparentize(black, 0.77), transparentize($borders_color, 0.1)); + $_wm_border_backdrop: if($variant=='light', transparentize(black, 0.82), transparentize($borders_color, 0.1)); + + box-shadow: 1px 1px 0px $fg_color,-1px 1px 0px $fg_color, 1px -1px 0px $fg_color, -1px -1px 0px $fg_color; + + + // FIXME rationalize shadows + + // this is used for the resize cursor area + margin: 10px; + + &:backdrop { + // the transparent shadow here is to enforce that the shadow extents don't + // change when we go to backdrop, to prevent jumping windows. + // The biggest shadow should be in the same order then in the active state + // or the jumping will happen during the transition. + box-shadow: 1px 1px 0px $fg_color,-1px 1px 0px $fg_color, 1px -1px 0px $fg_color, -1px -1px 0px $fg_color; + //doing borders with box-shadow + transition: $backdrop_transition; + } + + .maximized &, + .fullscreen &, + .tiled &, + .tiled-top &, + .tiled-right &, + .tiled-bottom &, + .tiled-left & { border-radius: 0; } + + .popup & { box-shadow: none; } + + // server-side decorations as used by mutter + .ssd & { box-shadow: 0 0 0 1px $_wm_border; } //just doing borders, wm draws actual shadows + + .csd.popup & { + border-radius: $menu_radius; + box-shadow: 0 1px 2px transparentize(black, 0.8), + 0 0 0 1px transparentize($_wm_border, 0.1); + } + + tooltip.csd & { + border-radius: 5px; + box-shadow: none; + } + + messagedialog.csd & { + border-radius: $window_radius; + box-shadow: 0 1px 2px transparentize(black, 0.8), + 0 0 0 1px transparentize($_wm_border, 0.1); + } + + .solid-csd & { + margin: 0; + padding: 4px; + background-color: $borders_color; + border: solid 1px $borders_color; + border-radius: 0; + box-shadow: inset 0 0 0 3px $headerbar_color, inset 0 1px $top_hilight; + + &:backdrop { box-shadow: inset 0 0 0 3px $backdrop_bg_color, inset 0 1px $top_hilight; } + } +} + +// Window Close button +button.titlebutton { + + border-width:1px; + border-style:solid; + &:not(.appmenu) { + border-radius: 4px; + padding: $_hb_btn_pad; + margin: 0 2px; + min-width: 0; + min-height: 0; + } + + + &:backdrop { } +} + +.selection-mode headerbar button.titlebutton, +.selection-mode .titlebar button.titlebutton, +headerbar.selection-mode button.titlebutton, +.titlebar.selection-mode button.titlebutton { + + &:backdrop { } +} + +// catch all extend :) + +%selected_items { + background-color: $selected_bg_color; + + &.hover { color: $selected_fg_color;} + @at-root %nobg_selected_items, & { + color: $selected_fg_color; + + @at-root %selected_items_disabled, + &:disabled { color: mix($selected_fg_color, $selected_bg_color, 50%); } + + @at-root %selected_items_backdrop, + &:backdrop { + color: $backdrop_selected_fg_color; + + &:disabled { color: mix($backdrop_selected_fg_color, $selected_bg_color, 30%); } + } + } +} + +.monospace { font-family: monospace; } + + +/********************** + * Touch Copy & Paste * + *********************/ +//touch selection handlebars for the Popover.osd above +cursor-handle { + background-color: transparent; + background-image: none; + box-shadow: none; + border-style: none; + + @each $s,$as in ('',''), + (':hover','-hover'), + (':active','-active') { //no need for insensitive and backdrop + &.top#{$s}:dir(ltr), &.bottom#{$s}:dir(rtl) { + $_url: 'assets/text-select-start#{$as}#{$asset_suffix}'; + -gtk-icon-source: -gtk-scaled(url('#{$_url}.png'), + url('#{$_url}@2.png')); + padding-left: 10px; + } + + &.bottom#{$s}:dir(ltr), &.top#{$s}:dir(rtl) { + $_url: 'assets/text-select-end#{$as}#{$asset_suffix}'; + -gtk-icon-source: -gtk-scaled(url('#{$_url}.png'), + url('#{$_url}@2.png')); + padding-right: 10px; + } + + &.insertion-cursor#{$s}:dir(ltr), &.insertion-cursor#{$s}:dir(rtl) { + $_url: 'assets/slider-horz-scale-has-marks-above#{$as}#{$asset_suffix}'; + -gtk-icon-source: -gtk-scaled(url('#{$_url}.png'), + url('#{$_url}@2.png')); + } + } +} + +.context-menu { font: initial; } // Decouple the font of context menus from their entry/textview + +// shortcut window keys +.keycap { + min-width: 20px; + min-height: 25px; + margin-top: 2px; + padding-bottom: 3px; + padding-left: 6px; + padding-right: 6px; + + color: $fg_color; + background-color: $base_color; + border: 1px solid; + border-color: if($variant == 'light', mix($borders_color, $bg_color, 50%), $borders_color); + border-radius: 5px; + box-shadow: if($variant == 'light', inset 0 -3px mix($base_color, $bg_color, 20%), inset 0 -3px mix($borders_color, $base_color, 60%)); + font-size: smaller; + + &:backdrop { + background-color: $backdrop_base_color; + color: $backdrop_fg_color; + transition: $backdrop_transition; + } +} + +:not(decoration):not(window):drop(active):focus, +:not(decoration):not(window):drop(active) { // FIXME needs to be done widget by widget, this wildcard should really die + border-color: $drop_target_color; + box-shadow: inset 0 0 0 1px $drop_target_color; + caret-color: $drop_target_color; +} + +stackswitcher button.text-button { min-width: 100px; } // FIXME aggregate with buttons + +stackswitcher button.circular, +stackswitcher button.text-button.circular { // FIXME aggregate with buttons + min-width: 32px; + min-height: 32px; + padding: 0; +} + +/************* + * App Icons * + *************/ +/* Outline for low res icons */ +.lowres-icon { + -gtk-icon-shadow: 0 -1px rgba(0,0,0,0.05), + 1px 0 rgba(0,0,0,0.1), + 0 1px rgba(0,0,0,0.3), + -1px 0 rgba(0,0,0,0.1); +} + +/* Dropshadow for large icons */ +.icon-dropshadow { + -gtk-icon-shadow: 0 1px 12px rgba(0,0,0,0.05), + 0 -1px rgba(0,0,0,0.05), + 1px 0 rgba(0,0,0,0.1), + 0 1px rgba(0,0,0,0.3), + -1px 0 rgba(0,0,0,0.1); +} + +/********* + * Emoji * + ********/ + +popover.emoji-picker { + padding-left: 0; + padding-right: 0; + + entry.search { margin: 3px 5px 5px 5px; } +} + +button.emoji-section { + border-color: transparent; + border-width: 3px; + border-style: none none solid; + border-radius: 0; + + margin: 2px 4px 2px 4px; + padding: 3px 0 0; + min-width: 32px; + min-height: 28px; + + /* reset props inherited from the button style */ + background: none; + box-shadow: none; + text-shadow: none; + + outline-offset: -5px; + + &:first-child { margin-left: 7px; } + &:last-child { margin-right: 7px; } + + &:backdrop:not(:checked) { border-color: transparent; } + &:hover { border-color: if($variant == 'light', $borders_color, transparentize($fg_color, .9)); } + &:checked { border-color: $selected_bg_color; } + + label { + padding: 0; + + opacity: 0.55; + } + + &:hover label { opacity: 0.775; } + &:checked label { opacity: 1; } +} + +popover.emoji-picker .emoji { + font-size: x-large; + padding: 6px; + + :hover { + background: $selected_bg_color; + border-radius: 6px; + } +} + +popover.emoji-completion arrow { + border: none; + background: none; +} + +popover.emoji-completion contents row box { + padding: 2px 10px; +} + +popover.emoji-completion .emoji:hover { + background: $popover_hover_color; +} diff --git a/desktop-themes/YaruGreen/gtk-3.0/_drawing.scss b/desktop-themes/YaruGreen/gtk-3.0/_drawing.scss new file mode 100644 index 00000000..d03a2642 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/_drawing.scss @@ -0,0 +1,661 @@ +// Drawing mixins + + + +// generic drawing of more complex things + +@function _widget_edge($c:$borders_edge) { +// outer highlight "used" on most widgets + @if $c == none { @return none; } + @else { @return 0 1px $c; } +} + +@mixin _shadows($list...) { +// +// Helper mixin to stack up to box-shadows; +// + $shadows: null; + + @each $shadow in $list { + @if $shadow!=none { $shadows: $shadows, $shadow; } + } + + box-shadow: $shadows; +} + +// entries // Yaru change: we detached focus from selection +@function entry_focus_border($fc:$focus_border_color) { + @if $variant == 'light' { @return $fc; } + @else { @return $focus_border_color } +} + +@function entry_focus_shadow($fc:$focus_border_color) { @return inset 0 0 0 1px $fc; } // Yaru change: we detached focus from selection + +@mixin entry($t, $fc:$focus_border_color, $edge: none) { // Yaru change: we detached focus from selection +// +// Entries drawing function +// +// $t: entry type +// $fc: focus color +// $edge: set to none to not draw the bottom edge or specify a color to not +// use the default one +// +// possible $t values: +// normal, focus, insensitive, backdrop, backdrop-insensitive, osd, osd-focus, osd-backdrop; +// + + $_blank_edge: if($edge == none, none, 0 1px transparentize($edge, 1)); + $_entry_edge: if($edge == none, none, _widget_edge($edge)); + + @if $t==normal { + color: $text_color; + border-color: $borders_color; + background-color: $base_color; + @include _shadows(entry_focus_shadow(transparentize($fc, 1)), $_entry_edge); + // for the transition to work the number of shadows in different states needs to match, hence the transparent shadow here. + } + @if $t==focus { + box-shadow: inset 0px 1px $button_default_box_shadow_color, + inset 1px 0px $button_default_box_shadow_color, + inset -1px 0px $button_default_box_shadow_color, + inset 0px -1px $button_default_box_shadow_color; + border-color: $button_default_border_color; + } + @if $t==insensitive { + color: $insensitive_fg_color; + border-color: $borders_color; + background-color: $insensitive_bg_color; + box-shadow: $_entry_edge; + } + @if $t==backdrop { + color: $backdrop_text_color; + border-color: $backdrop_borders_color; + background-color: $backdrop_base_color; + box-shadow: $_blank_edge; + } + @if $t==backdrop-insensitive { + color: $backdrop_insensitive_color; + border-color: $backdrop_borders_color; + background-color: $insensitive_bg_color; + box-shadow: $_blank_edge; + } + @if $t==osd { + color: $osd_text_color; + border-color: $osd_borders_color; + background-color: transparentize(opacify($osd_borders_color, 1), 0.5); + background-clip: padding-box; + box-shadow: none; + text-shadow: 0 1px black; + -gtk-icon-shadow: 0 1px black; + } + @if $t==osd-focus { + color: $osd_text_color; + border-color: $selected_bg_color; + background-color: transparentize(opacify($osd_borders_color, 1), 0.5); + background-clip: padding-box; + box-shadow: entry_focus_shadow($fc); + text-shadow: 0 1px black; + -gtk-icon-shadow: 0 1px black; + } + @if $t==osd-insensitive { + color: $osd_insensitive_fg_color; + border-color: $osd_borders_color; + background-color: $osd_insensitive_bg_color; + background-clip: padding-box; + box-shadow: none; + text-shadow: none; + -gtk-icon-shadow: none; + } + @if $t==osd-backdrop { + color: $osd_text_color; + border-color: $osd_borders_color; + background-color: transparentize(opacify($osd_borders_color, 1), 0.5); + background-clip: padding-box; + box-shadow: none; + text-shadow: none; + -gtk-icon-shadow: none; + } +} + +// buttons + +@function _border_color($c, $darker: false) { + @if $darker == true { @return darken($c, 20%); } + @else { @return darken($c, 10%); } +} + +@function _text_shadow_color ($tc: $fg_color, $bg: $bg_color) { +// +// calculate the color of text shadows +// +// $tc is the text color +// $bg is the background color +// + $_lbg: lightness($bg)/100%; + @if lightness($tc)<50% { @return transparentize(white, 1-$_lbg/($_lbg*1.3)); } + @else { @return transparentize(black, $_lbg*0.8); } +} + +@function _button_hilight_color($c) { +// +// calculate the right top hilight color for buttons +// +// $c: base color; +// + @if lightness($c)>95% { @return white; } + @else if lightness($c)>90% { @return transparentize(white, 0.2); } + @else if lightness($c)>80% { @return transparentize(white, 0.5); } + @else if lightness($c)>50% { @return transparentize(white, 0.8); } + @else if lightness($c)>40% { @return transparentize(white, 0.9); } + @else { @return transparentize(white, 0.98); } +} + +@mixin _button_text_shadow ($tc:$fg_color, $bg:$bg_color) { +// +// helper function for the text emboss effect +// +// $tc is the optional text color, not the shadow color +// +// TODO: this functions needs a way to deal with special cases +// + + $_shadow: _text_shadow_color($tc, $bg); + + @if lightness($tc)<50% { + text-shadow: 0 1px $_shadow; + -gtk-icon-shadow: 0 1px $_shadow; + } + @else { + text-shadow: 0 -1px $_shadow; + -gtk-icon-shadow: 0 -1px $_shadow; + } +} + +@mixin button($t, $c:$bg_color, $tc:$fg_color, $edge: none) { +// +// Button drawing function +// +// $t: button type, +// $c: base button color for colored* types +// $tc: optional text color for colored* types +// $edge: set to none to not draw the bottom edge or specify a color to not +// use the default one +// +// possible $t values: +// normal, hover, active, insensitive, insensitive-active, +// backdrop, backdrop-active, backdrop-insensitive, backdrop-insensitive-active, +// osd, osd-hover, osd-active, osd-insensitive, osd-backdrop, undecorated +// +// This mixin sets the $button_fill global variable which containts the button background-image +// + $_hilight_color: _button_hilight_color($c); + $_button_edge: if($edge == none, none, _widget_edge($edge)); + $_blank_edge: if($edge == none, none, _widget_edge(transparentize($edge,1))); + $_button_shadow: 0 1px 2px transparentize($shadow_color, 0.03); + + @if $t==normal { + // + // normal button + // + color: $tc; + outline-color: $focus_border_color; // Yaru change: we detached focus from selection + border-color: if($c != $bg_color, _border_color($c), $borders_color); + // border-bottom-color: if($c != $bg_color, _border_color($c, true), $alt_borders_color); + // Yaru change: we don't want to use gradients on buttons + + background-image: linear-gradient(to bottom, $button_gradient_a,$button_gradient_b 50%, $button_gradient_c 50%, $button_gradient_d ); + @include _button_text_shadow($tc, $c); + @include _shadows(0 1px transparentize(black, 0.95)); // Yaru change: stronger shadows for flatter buttons + } + + @else if $t==hover { + // + // hovered button + // + color: $tc; + outline-color: $focus_border_color; // Yaru change: we detached focus from selection + border-color: if($c != $bg_color, _border_color($c), $borders_color); + border-bottom-color: if($c != $bg_color, _border_color($c, true), $alt_borders_color); + + + @include _button_text_shadow($tc, lighten($c, 6%)); + @include _shadows(inset 0 1px _button_hilight_color(lighten($c, 6%)), $_button_edge, $_button_shadow); + background-color: $selected_bg_color; + box-shadow: 0 1px transparentize(black, if($variant=='light', 0.85, 0.9)); // Yaru change: stronger shadows for flatter buttons + background-image: linear-gradient(to bottom, + $button_hover_gradient_a 5%, + $button_hover_gradient_b 95%, + $button_hover_gradient_c); + } + + @if $t==normal-alt { + // + // normal button alternative look + // + color: $tc; + outline-color: $focus_border_color; // Yaru change: we detached focus from selection + border-color: if($c != $bg_color, _border_color($c, true), $alt_borders_color); + @include _button_text_shadow($tc, $c); + @if $variant == 'light' { + background-image: linear-gradient(to bottom, lighten($c, 5%) 20%, $c 90%); + @include _shadows(inset 0 1px _button_hilight_color(lighten($c, 6%)), + $_button_edge, $_button_shadow); + } + @else { + background-image: linear-gradient(to bottom, darken($c, 3%) 20%, darken($c, 6%) 90%); + @include _shadows(inset 0 1px $_hilight_color, + $_button_edge, $_button_shadow); + } + @include _shadows(0 1px transparentize(black, 0.95)); // Yaru change: stronger shadows for flatter buttons + background-image: image(if($variant=='light', lighten($c, 10%), $warm_gray)); // Yaru change: brighter alt + background-clip: padding-box; // Yaru change: fix background overflow + } + + @else if $t==hover-alt { + // + // hovered button alternative look + // + color: $tc; + outline-color: $focus_border_color; // Yaru change: we detached focus from selection + border-color: if($c != $bg_color, _border_color($c, true), $alt_borders_color); + @if $variant == 'light' { + $button_fill: linear-gradient(to bottom, lighten($c, 9%) 10%, lighten($c, 4%) 90%) !global; + @include _shadows(inset 0 1px _button_hilight_color(lighten($c, 6%)), + $_button_edge, $_button_shadow); + } + @else { + $button_fill: linear-gradient(to bottom, $c 20%, darken($c, 4%) 90%) !global; + @include _shadows(inset 0 1px $_hilight_color, + $_button_edge, $_button_shadow); + } + background-image: image(if($variant=='light', lighten($c, 16%), lighten($warm_gray, 4%))); // Yaru change: brighter alt hover + box-shadow: 0 1px transparentize(black, 0.85); // Yaru change: stronger shadows for flatter buttons + } + + @else if $t==active { + // + // pushed button + // + color: $tc; + outline-color: $focus_border_color; // Yaru change: we detached focus from selection + border-color: if($c != $bg_color, _border_color($c), $borders_color); + + background-image: linear-gradient(to bottom,$button_active_gradient_a, + $button_active_gradient_b 3px, + $button_active_gradient_c 4px, + $button_active_gradient_d 50%, + $button_active_gradient_e 50%, + $button_active_gradient_f); + @include _shadows(inset 0 1px transparentize($_hilight_color, 1), $_button_edge); + + text-shadow: none; + -gtk-icon-shadow: none; + } + + @else if $t==insensitive { + // + // insensitive button + // + $_bg: if($c != $bg_color, mix($c, $base_color, 85%), $insensitive_bg_color); + + color: if($tc != $fg_color, mix($tc, $_bg, 50%), $insensitive_fg_color); + border-color: if($c != $bg_color, _border_color($c), $insensitive_borders_color); + background-image: linear-gradient(to bottom, $button_insensitive_gradient_a,$button_insensitive_gradient_b 50%, $button_insensitive_gradient_c 50%, $button_insensitive_gradient_d ); + text-shadow: none; + -gtk-icon-shadow: none; + // white with 0 alpha to avoid an ugly transition, since no color means + // black with 0 alpha + @include _shadows(inset 0 1px transparentize(white, 1), $_button_edge); + } + + @else if $t==insensitive-active { + // + // insensitive pushed button + // + $_bg: if($variant == 'light', darken(mix($c, $base_color, 85%), 8%), darken(mix($c, $base_color, 85%), 6%)); + $_bc: if($c != $bg_color, _border_color($c), $insensitive_borders_color); + + color: if($c != $bg_color, mix($tc, $_bg, 60%), $insensitive_fg_color); + border-color: $_bc; + $button_fill: image($_bg) !global; + background-image: linear-gradient(to bottom, + $button_active_insensitive_gradient_a, + $button_active_insensitive_gradient_b 3px, + $button_active_insensitive_gradient_c 4px, + $button_active_insensitive_gradient_d 50%, + $button_active_insensitive_gradient_e 50%, + $button_active_insensitive_gradient_f); + // white with 0 alpha to avoid an ugly transition, since no color means + // black with 0 alpha + @include _shadows(inset 0 1px transparentize(white, 1), $_button_edge); + } + + @else if $t==backdrop { + // + // backdrop button + // + $_bg: if($c != $bg_color, $c, $backdrop_bg_color); + $_bc: if($variant == 'light', $c, _border_color($c)); + + color: if($tc != $fg_color, mix($tc, $_bg, 80%), $backdrop_fg_color); + border-color: if($c != $bg_color, $_bc, $backdrop_borders_color); + //see at normal + background-image: linear-gradient(to bottom, $button_gradient_a,$button_gradient_b 50%, $button_gradient_c 50%, $button_gradient_d ); + text-shadow: none; + -gtk-icon-shadow: none; + @include _shadows(inset 0 1px transparentize(white, 1), $_blank_edge); + } + + @else if $t==backdrop-active { + // + // backdrop pushed button + // + $_bg: if($variant == 'light', darken(mix($c, $base_color, 85%), 8%), darken(mix($c, $base_color, 85%), 4%)); + $_bc: if($variant == 'light', $_bg ,_border_color($c)); + + color: if($tc != $fg_color, mix($tc, $_bg, 80%), $backdrop_fg_color); + border-color: if($c != $bg_color, $_bc, $backdrop_borders_color); + $button_fill: image($_bg) !global; + background-image: $button_fill; + @include _shadows(inset 0 1px transparentize(white, 1), $_blank_edge); + } + + @else if $t==backdrop-insensitive { + // + // backdrop insensitive button + // + + $_bg: if($c != $bg_color, mix($c, $base_color, 85%), if($variant=='light', $insensitive_bg_color, lighten($insensitive_bg_color, 3%))); // Yaru change + $_bc: if($variant == 'light', $_bg,_border_color($c)); + + color: if($c != $bg_color, mix($tc, $_bg, 35%), $backdrop_insensitive_color); + border-color: if($c != $bg_color, $_bc, $backdrop_borders_color); + background-image: linear-gradient(to bottom, $button_insensitive_gradient_a,$button_insensitive_gradient_b 50%, $button_insensitive_gradient_c 50%, $button_insensitive_gradient_d ); + text-shadow: none; + -gtk-icon-shadow: none; + // white with 0 alpha to avoid an ugly transition, since no color means + // black with 0 alpha + @include _shadows(inset 0 1px transparentize(white, 1), $_blank_edge); + } + + @else if $t==backdrop-insensitive-active { + // + // backdrop insensitive pushed button + // + + $_bg: if($variant == 'light', darken(mix($c, $base_color, 85%), 8%), darken(mix($c, $base_color, 85%), 4%)); + $_bc: if($variant == 'light', $_bg, _border_color($c)); + + color: if($c != $bg_color, mix($tc, $_bg, 35%), $backdrop_insensitive_color); + border-color: if($c != $bg_color, $_bc, $backdrop_borders_color); + $button_fill: image($_bg) !global; + background-image: $button_fill; + @include _shadows(inset 0 1px transparentize(white, 1), $_blank_edge); + } + + @else if $t==osd { + // + // normal osd button + // + $_bg: if($c != $bg_color, transparentize($c, 0.5), lighten($osd_bg_color, 9%)); // Yaru change: make osd buttons visible + + color: $osd_fg_color; + border-color: $osd_borders_color; + background-color: transparent; + $button_fill: image($_bg) !global; + background-image: $button_fill; + background-clip: padding-box; + // box-shadow: inset 0 1px transparentize(white, 0.9); // Yaru change: remove the shadow + text-shadow: 0 1px black; + -gtk-icon-shadow: 0 1px black; + outline-color: transparentize($osd_fg_color, 0.7); + } + + @else if $t==osd-hover { + // + // active osd button + // + $_bg: if($c != $bg_color, transparentize($c, 0.3), lighten($osd_bg_color, 12%)); + + color: white; + border-color: $osd_borders_color; + background-color: transparent; + $button_fill: image($_bg) !global; + background-image: $button_fill; + background-clip: padding-box; + // box-shadow: inset 0 1px transparentize(white, 0.9); // Yaru change: remove the shadow + text-shadow: 0 1px black; + -gtk-icon-shadow: 0 1px black; + outline-color: transparentize($osd_fg_color, 0.7); + } + + @else if $t==osd-active { + // + // active osd button + // + $_bg: if($c != $bg_color, $c, $osd_borders_color); + + color: white; + border-color: $osd_borders_color; + background-color: transparent; + $button_fill: image($_bg) !global; + background-image: $button_fill; + background-clip: padding-box; + box-shadow: none; + text-shadow: none; + -gtk-icon-shadow: none; + outline-color: transparentize($osd_fg_color, 0.7); + } + + @else if $t==osd-insensitive { + // + // insensitive osd button + // + color: $osd_insensitive_fg_color; + border-color: $osd_borders_color; + background-color: transparent; + $button_fill: image($osd_insensitive_bg_color) !global; + background-image: $button_fill; + background-clip: padding-box; + box-shadow: none; + text-shadow: none; + -gtk-icon-shadow: none; + } + + @else if $t==osd-backdrop { + // + // backdrop osd button + // + $_bg: if($c != $bg_color, transparentize($c, 0.5), $osd_bg_color); + + color: $osd_fg_color; + border-color: $osd_borders_color; + background-color: transparent; + $button_fill: image($_bg) !global; + background-image: $button_fill; + background-clip: padding-box; + box-shadow: none; + text-shadow: none; + -gtk-icon-shadow: none; + } + + @else if $t==undecorated { + // + // reset + // + border-color: transparent; + background-color: transparent; + $button_fill: none !global; + background-image: $button_fill; + + @include _shadows(inset 0 1px transparentize(white, 1), $_blank_edge); + + text-shadow: none; + -gtk-icon-shadow: none; + } +} + +@mixin headerbar_fill($c:$headerbar_color, $hc:$top_hilight, $ov: none) { +// +// headerbar fill +// +// $c: base color +// $hc: top highlight color +// $ov: a background layer for background shorthand (hence no commas!) +// + background-image: linear-gradient(to bottom, +gtkshade($selected_bg_color, 1.08) , +gtkshade($selected_bg_color, 1.02) 50%, +gtkshade($selected_bg_color, 1.0) 50%, +gtkshade($selected_bg_color, 0.94)); + + + + &:backdrop{ + background-image: linear-gradient(to bottom, + gtkshade($bg_color, 0.99) , +gtkshade($bg_color, 0.95) 50%, +gtkshade($bg_color, 0.93)50%, +gtkshade($bg_color, 0.89)); + + } +} + +@mixin overshoot($p, $t:normal, $c:$fg_color) { +// +// overshoot +// +// $p: position +// $t: type +// $c: base color +// +// possible $p values: +// top, bottom, right, left +// +// possible $t values: +// normal, backdrop +// + + $_small_gradient_length: 5%; + $_big_gradient_length: 100%; + + $_position: center top; + $_small_gradient_size: 100% $_small_gradient_length; + $_big_gradient_size: 100% $_big_gradient_length; + + @if $p==bottom { + $_position: center bottom; + $_linear_gradient_direction: to top; + } + + @else if $p==right { + $_position: right center; + $_small_gradient_size: $_small_gradient_length 100%; + $_big_gradient_size: $_big_gradient_length 100%; + } + + @else if $p==left { + $_position: left center; + $_small_gradient_size: $_small_gradient_length 100%; + $_big_gradient_size: $_big_gradient_length 100%; + } + + $_small_gradient_color: $c; + $_big_gradient_color: $c; + + @if $c==$fg_color { + $_small_gradient_color: darken($borders_color, 10%); + $_big_gradient_color: $fg_color; + + @if $t==backdrop { $_small_gradient_color: $backdrop_borders_color; } + } + + $_small_gradient: -gtk-gradient(radial, + $_position, 0, + $_position, 0.5, + to($_small_gradient_color), + to(transparentize($_small_gradient_color, 1))); + + $_big_gradient: -gtk-gradient(radial, + $_position, 0, + $_position, 0.6, + from(transparentize($_big_gradient_color, 0.93)), + to(transparentize($_big_gradient_color, 1))); + + @if $t==normal { + background-image: $_small_gradient, $_big_gradient; + background-size: $_small_gradient_size, $_big_gradient_size; + } + + @else if $t==backdrop { + background-image: $_small_gradient; + background-size: $_small_gradient_size; + } + + background-repeat: no-repeat; + background-position: $_position; + + background-color: transparent; // reset some properties to be sure to not inherit them somehow + border: none; // + box-shadow: none; // +} + +/*************************** + * Check and Radio buttons * + ***************************/ + + @mixin check($t, $c:$bg_color, $tc:$fg_color, $checked: false) { + // Check/Radio drawing function + // + // $t: check/radio type, + // $c: base button color for colored* types + // $tc: optional text color for colored* types + // $checked: bool to chose between checked/unchecked + // + // possible $t values: + // normal, hover, active, insensitive, backdrop, backdrop-insensitive + + $_border_color: if($c==$checkradio_bg_color, $c, $alt_borders_color); + $_dim_border_color: transparentize($_border_color, if($variant == 'light', 0.3, 0.7)); + + @if $t==normal { // Yaru change: no gradients, better borders + background-clip: if($checked, border-box, padding-box); + background-image: image(white); + border-color: $_border_color; + box-shadow: 0 1px transparentize(black, 0.95); + color: $fg_color; + } + + @if $t==hover { + background-image: image($core_color_a); + border-color: darken($core_color_a , 20%); + } + + @if $t==active { + border-color: $borders_color; + background-image: image(white); + box-shadow: none; + color: $fg_color; + } + + @if $t==insensitive { + box-shadow: none; + color: $insensitive_fg_color; + border-color: $insensitive_borders_color; + background-image: image($insensitive_bg_color); + } + + @if $t==backdrop { + background-image: image(white); + border-color: $_border_color; + box-shadow: 0 1px transparentize(black, 0.95); + color: $fg_color; + } + + @if $t==backdrop-insensitive { + box-shadow: none; + color: $backdrop_fg_color; + border-color: $insensitive_borders_color; + background-image: image($insensitive_bg_color); + } +} diff --git a/desktop-themes/YaruGreen/gtk-3.0/_headerbar.scss b/desktop-themes/YaruGreen/gtk-3.0/_headerbar.scss new file mode 100644 index 00000000..09599aec --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/_headerbar.scss @@ -0,0 +1,268 @@ +// Color variables dependant on $headerbar_bg_color defined in _colors.scss +$_button_bg_color: lighten($headerbar_bg_color, 7.5%); +$_button_border_color: darken($headerbar_bg_color, 9%); +// deducted from the color used in common which is $backdrop_borders_color: mix($borders_color, $bg_color, 80%); +$_backdrop_button_border_color: darken($inkstone, 9%); + +// overwriting the headerbar styling from common, for the inverted look in the ambiance theme +headerbar, +.titlebar { + @include headerbar_fill($headerbar_bg_color, $hc: $headerbar_border_color); + color: $headerbar_fg_color; + border-color: $borders_color; + + .title, + label.title { + color: darken($borders_color, 25%); text-shadow:none; + &:backdrop { color: darken($borders_color, 15%); text-shadow:none; } + } + + &.backdrop { + } + + .maximized &, + .fullscreen & { + box-shadow: none; + } + + entry { + &, + &:backdrop { + border-color: darken($headerbar_bg_color, 8%); + } + + &:focus { @include entry(focus); } + } + + + + separator { + background: image(lighten($_button_border_color, 5%)); + &:backdrop { + background: image($_backdrop_button_border_color); + } + } + + // Re-style switches because they are drawn on a dark headerbar + switch { + border-color: $_button_border_color; + color: $headerbar_fg_color; + background-color: $_button_bg_color; + + &:hover { background-color: lighten($_button_bg_color, 2%); } + + &:backdrop { + background-color: lighten($backdrop_headerbar_bg_color, 2%); + + &, + &:checked { border-color: darken($_backdrop_button_border_color, 4%); } + + &:disabled { + background-color: $backdrop_headerbar_bg_color; + border-color: $_backdrop_button_border_color; + } + } + + &:disabled { + background-color: $headerbar_bg_color; + border-color: $_button_border_color; + } + + &:checked { + color: $selected_fg_color; + border-color: $_button_border_color; + background-color: $checkradio_bg_color; + } + } + + // Re-style sliders for switches and scales do make them look sharp on the dark headerbar + switch, scale { + slider { + &:checked { + border-color: $checkradio_borders_color; + } + &:backdrop { + @include button(backdrop-alt, $_button_bg_color); + + &, + &:checked, + &:disabled, + &:checked:disabled { + border-color: darken($_backdrop_button_border_color, 4%); box-shadow: none; + } + } + + &:not(:checked) { + border-color: $_button_border_color; + } + &:disabled { + @include button(insensitive, darken($headerbar_bg_color, 8%)); + } + } + } + + // re-insert the full selection mode section from common ... + .selection-mode &, + &.selection-mode { + $_hc: mix($top_hilight, $suggested_bg_color, 50%); // hilight color + + color: $selected_fg_color; + border-color: $suggested_border_color; + + @include headerbar_fill($suggested_bg_color, $_hc); + + separator { + background: image(lighten($suggested_bg_color, 5%)); + } + + &:backdrop { + background-color: $suggested_bg_color; + background-image: none; + box-shadow: inset 0 1px mix($top_hilight, $suggested_bg_color, 60%); + + label { + text-shadow: none; + color: $selected_fg_color; + } + } + + .subtitle:link { @extend %link_selected; } + + button, + button.image-button, + button.image-button.toggle, + button.text.button, + button.toggle, + box button.toggle, + buttonbox.toggle, + stackswitcher button, + filechooser .path-bar.linked>button, + .path-bar button { + @include button(normal, $suggested_bg_color, $selected_fg_color); + &.flat { + @include button(undecorated); + } + + &:hover { + @include button(hover, $suggested_bg_color, $selected_fg_color); + } + + &:active, + &:checked, + &.toggle:checked, + &.toggle:active { + @include button(active, $suggested_bg_color, $selected_fg_color); + } + + &:backdrop { + + &.flat, + & { + @include button(backdrop, $suggested_bg_color, $selected_fg_color); + + //-gtk-icon-effect: none; + border-color: lighten($suggested_bg_color, 5%); + + &:active, + &:checked { + @include button(backdrop-active, $suggested_bg_color, $selected_fg_color); + + border-color: $suggested_border_color; + } + + &:disabled { + @include button(backdrop-insensitive, $suggested_bg_color, $selected_fg_color); + + border-color: $suggested_border_color; + + &:active, + &:checked { + @include button(backdrop-insensitive-active, $suggested_bg_color, $selected_fg_color); + + border-color: $suggested_border_color; + } + } + } + } + + &.flat { + + &:backdrop, + &:disabled, + &:backdrop:disabled { + @include button(undecorated); + } + } + + &:disabled { + @include button(insensitive, $suggested_bg_color, $selected_fg_color); + + &:active, + &:checked { + @include button(insensitive-active, $suggested_bg_color, $selected_fg_color); + } + } + + &.suggested-action { + @include button(normal); + + border-color: $suggested_border_color; + + &:hover { + @include button(hover); + + border-color: $suggested_border_color; + } + + &:active { + @include button(active); + + border-color: darken($suggested_border_color, 10%); + } + + &:disabled { + @include button(insensitive); + + border-color: $suggested_border_color; + } + + &:backdrop { + @include button(backdrop); + + border-color: $suggested_border_color; + } + + &:backdrop:disabled { + @include button(backdrop-insensitive); + + border-color: $suggested_border_color; + } + } + } + + .selection-menu { + + &:backdrop, + & { + border-color: transparentize($suggested_bg_color, 1); + background-color: transparentize($suggested_bg_color, 1); + background-image: none; + box-shadow: none; + min-height: 20px; + padding: $_sel_menu_pad; + + arrow { + -GtkArrow-arrow-scaling: 1; + } + + .arrow { + -gtk-icon-source: -gtk-icontheme('pan-down-symbolic'); + color: transparentize($selected_fg_color, 0.5); + -gtk-icon-shadow: none; + } + } + } + } +} + + diff --git a/desktop-themes/YaruGreen/gtk-3.0/_palette.scss b/desktop-themes/YaruGreen/gtk-3.0/_palette.scss new file mode 100644 index 00000000..91ba4df0 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/_palette.scss @@ -0,0 +1,55 @@ +// Blacks +$jet: #181818; +$inkstone: #3D3D3D; +$slate: #5D5D5D; +$graphite: #666666; + +// Whites +$white: #FFFFFF; +$porcelain: #F7F7F7; +$silk: #CCC; +$warm_gray: #AEA79F; +$ash: #878787; + +// Purples +$aubergine: #924D8B; +$purple: #762572; +$light_aubergine: #77216F; +$mid_aubergine: #5E2750; +$dark_aubergine: #2C001E; + +// Reds +$red: #c7162b; + +// Oranges +$orange: #E95420; + +// Yellows +$yellow: #f99b11; + +// Greens +$green: #87a556; + +// Blues +$blue: #19B6EE; +$linkblue: #007aa6; +$darkblue: #335280; + + +// Semantic colors +$primary_accent_bg_color: #1977ee; +$primary_accent_fg_color: $white; +$secondary_accent_bg_color: #1977ee; +$secondary_accent_fg_color: $white; + + +/*************** + * core colors * + ***************/ + +/* Core colors are only used in the current file, as bases for other + color declarations. */ + +$core_color_a: gtkshade(#B9C0A9, 1.15); /* Core color for blue widgets in TraditionalOK. */ +$core_color_b: #edeceb; /* Core color for gray widgets in TraditionalOK. */ + diff --git a/desktop-themes/YaruGreen/gtk-3.0/_tweaks.scss b/desktop-themes/YaruGreen/gtk-3.0/_tweaks.scss new file mode 100644 index 00000000..4cbdb537 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/_tweaks.scss @@ -0,0 +1,462 @@ +$_base_hover_color: transparentize($fg_color, 0.85); +$_base_active_color: transparentize($fg_color, 0.75); +$_titlebutton_height: 24px; + +@mixin draw_circle($c, $size:$_titlebutton_height) { + $button_size: $size + 2px * 2; + $circle_size: 20px / $button_size / 2; + + background-image: -gtk-gradient(radial, + center center, 0, + center center, $circle_size, + to($c), + to(transparent)); +} + +@mixin undershoot($p) { + // + // undershoot + // + // $p: position + // + // possible $p values: + // top, bottom, right, left + // + + $_us_shadow_color: if($variant=='light', $silk, $jet); + $_us_shadow_alpha: 0.8; + + $_gradient_dir: left; + $_dash_bg_size: 10px 1px; + $_gradient_repeat: repeat-x; + $_bg_pos: center $p; + + background-color: transparent; // shouldn't be needed, but better to be sure; + + @if ($p == left) or ($p == right) { + $_gradient_dir: top; + $_dash_bg_size: 1px 10px; + $_gradient_repeat: repeat-y; + $_bg_pos: $p center; + } + + padding-#{$p}: 1px; + background-size: $_dash_bg_size; + background-repeat: $_gradient_repeat; + background-origin: content-box; + background-position: $_bg_pos; + border: none; + + @if ($p == left) { + box-shadow: inset 2px 0 0 transparentize($_us_shadow_color, $_us_shadow_alpha), + inset 1px 0 0 transparentize(darken($_us_shadow_color, 20%), $_us_shadow_alpha); + } + @else if ($p == right) { + box-shadow: inset -2px 0 0 transparentize($_us_shadow_color, $_us_shadow_alpha), + inset -1px 0 0 transparentize(darken($_us_shadow_color, 20%), $_us_shadow_alpha); + } + @else if ($p == top) { + box-shadow: inset 0 2px 0 0 transparentize($_us_shadow_color, $_us_shadow_alpha), + inset 0 1px 0 0 transparentize(darken($_us_shadow_color, 20%), $_us_shadow_alpha); + } + @else if ($p == bottom) { + box-shadow: inset 0 -2px 0 0 transparentize($_us_shadow_color, $_us_shadow_alpha), + inset 0 -1px 0 0 transparentize(darken($_us_shadow_color, 20%), $_us_shadow_alpha); + } +} + +// with a flatter headerbar and buttons, we dont need that heavy shadows, remove this when upstream agrees +headerbar *, button * { + text-shadow: none; +// -gtk-icon-shadow: none; +} + +// blue spinner, white spinner for colored buttons +spinner { + &:not(:backdrop) { + color: $blue; + } + button.suggested-action &, button.destructive-action & { + color: $selected_fg_color; + &:backdrop { color: $backdrop_selected_fg_color; } + } +} + +// titlebutton +button.titlebutton:not(.appmenu) { + + &, + &:hover, + &:active { + + headerbar &, + .titlebar &, + headerbar.selection-mode & { + + // spec bump otherwise :backdrop will still have a bg + &, + &:backdrop { + // @extend %undecorated_button; + } + } + } + + // Important - otherwise the circle size is wrong + min-height: $_titlebutton_height; + min-width: $_titlebutton_height; + padding: 2px; + + headerbar &, + .titlebar &, + headerbar.selection-mode &, + & { + &.maximize, &.minimize, &.close { + color: white; + -gtk-icon-shadow: 0 -1px black, 0 1px black, -1px 0px black, 1px 0px black; + background-image: linear-gradient(to bottom, + $menubar_menuitem_hover_gradient_a, + $menubar_menuitem_hover_gradient_b 50%, + $menubar_menuitem_hover_gradient_c 50%, + $menubar_menuitem_hover_gradient_d ); + box-shadow: inset 0px 1px rgba(255,255,255, 0.1),inset 0px -1px rgba(255,255,255, 0.1), inset 1px 0px rgba(255,255,255, 0.1), inset -1px 0px rgba(255,255,255, 0.1); + + &:backdrop { + background-image: none; + box-shadow: inset 0px 1px rgba(255,255,255, 0.5),inset 0px -1px rgba(255,255,255, 0.5), inset 1px 0px rgba(255,255,255, 0.5), inset -1px 0px rgba(255,255,255, 0.5); + border-color: $borders_color; + } + + border-color: gtkshade(#86abd9, 0.6); + &, &:backdrop { + &:hover { + background-image: linear-gradient(to bottom, + $menubar_menuitem_hover_gradient_a, + $menubar_menuitem_hover_gradient_b) + // @include draw_circle(if($ambiance==true, lighten($inkstone, 7%), $_base_hover_color)); + } + + &:active { + background-image: linear-gradient(to bottom, + darken($core_color_a, 14%), + darken($core_color_a, 15%)) + // @include draw_circle(if($ambiance==true, lighten($inkstone, 12%), $_base_active_color)); + } + } + } + + &.close{ + -gtk-icon-shadow: 0 -2px black,0 2px black, 2px 0px black, -2px 0px black, 0 -1px white, 0 1px white, -1px 0px white, 1px 0px white,; + + } + } +} + +// we prefered our gray hover for menus and popovers, orange is a very strong color +menu, +.menu, +.context-menu { + menuitem { + + &:hover { + color: $selected_fg_color; + background-color: $selected_bg_color; + } + } +} + +// We don't want menuitems to look like links, we should propose this upstream +menubar, +.menubar { + > menuitem { + &:hover { + color: $selected_fg_color; + background-color: $selected_bg_color; + } + } +} + +// We don't want the app notifications to look like OSD because they are interactive +.app-notification, +.app-notification.frame { + padding: 10px; + margin: 12px; + color: $text_color; + border-radius: $menu_radius; + background: none; + background-color: $menu_color; + border: 1px solid $borders_color; + box-shadow: 0 2px 5px transparentize(black, 0.8); + text-shadow: none; + + button { + &, &:dir(ltr), &:dir(rtl) { + &.text-button, &.image-button, & { + @include button(normal); + &.flat { @include button(undecorated); } + &:hover { @include button(hover); } + &:active { @include button(active); } + &:backdrop { + @include button(backdrop); + &.flat { @include button(undecorated); } + } + &:disabled { @include button(insensitive); } + } + } + } + + &:backdrop { + background-color: $backdrop_bg_color; + color: $backdrop_text_color; + box-shadow: none; + transition: $backdrop_transition; + } + + border { border: none; } +} + +// 2 pixel transparentized focus rings +// upstream is also interested in this + +*:not(button) { + outline-color: $focus_border_color; + outline-style: solid; + outline-offset: -2px; + outline-width: 2px; + -gtk-outline-radius: $button-radius; + :selected & { outline-color: $coloured_focus_border_color; } +} + +button { + outline-color: $focus_border_color; + outline-style: solid; + outline-offset: -2px; + outline-width: 2px; + -gtk-outline-radius: $button-radius; + &.suggested-action, &.destructive-action{ &, &:hover, &:active { outline-color: $coloured_focus_border_color; } } +} + +switch { + &, &:hover { slider { outline-color: transparent; } } + &:focus { + box-shadow: 0 0 0 3px if($variant=='light', lighten(opacify($focus_border_color, 1), 20%), $focus_border_color); + } +} + +checkbutton, +radiobutton { + outline-color: $focus_border_color; + outline-offset: 1px; + outline-width: 2px; + row:selected & , treeview:selected & { outline-color: $coloured_focus_border_color; } +} + +treeview { + outline-color: $focus_border_color; + -gtk-outline-radius: 0px; + + &:selected { + outline-color: $coloured_focus_border_color; + } +} + +notebook > header { + &, &:backdrop { background: transparent; } + tabs { + &, &:hover, &:backdrop { + &, &.right, &.left, &.top, &.bottom { + background-color: transparent; + tab { + outline-width: 1px; + outline-offset: -2px; + &, &:dir(ltr), &:dir(rtl) { + &, &:backdrop { + &, &:checked { + &, &:hover, &:active { + background-color: transparent; + border-color: transparent; + } + } + } + } + } + } + } + } +} + +// With the conservative tab styling scrolled windows need the undershoots + +scrolledwindow { + undershoot { + &.top { @include undershoot(top); } + + &.bottom { @include undershoot(bottom); } + + &.left { @include undershoot(left); } + + &.right { @include undershoot(right); } + } +} + +// Check/radios in menus do not need a border + +check, +radio { + menu menuitem & { + &, &:checked, &:indeterminate { + &, &:hover, &:disabled { + border-color: transparent; + } + } + } +} +// Fixes selected disabled check/radios leaking selected_bg_color, should move to upstream +treeview.view check, +treeview.view radio { + &:selected { + &:focus, & { + &:disabled { color: $insensitive_fg_color; } + } + } +} + +// Reducing the amount of the palette's background colors to two + +.sidebar { background-color: $bg_color; } + +// Treeview items misses a hover, port to upstream + +treeview:hover { background: $selected_bg_color; } + +scale { + slider { + .osd & { + @include button(osd); + background-image: image(darken($osd_fg_color, 2%)); + + &:hover { + background-image: image(darken($osd_fg_color, 10%)); + } + + &:active { + background-image: image(darken($osd_fg_color, 25%)); + } + } + } +} + +// Rubberband selection shall match with shell's tile-preview +.rubberband, +rubberband { + background-color: transparentize($ash, 0.8); + border: 1px solid if($variant == 'light', transparentize($silk, 0.2), transparentize(darken($silk, 10%), 0.4)); +} +// Fix for color chose buttons, should be moved to upstream as it is variable +// If the min-height is not set, it stretches compact headerbars +button.color { min-height: $_headerbar_height / 2; } + +// Entries drown if drawn on widgets with $base_color +// Fixing this at least for notebooks, since entries on tabs is a common pattern +@if $variant=='dark' { + notebook entry { background-color: darken($base_color, 2%); } +} + +// Make all :not:(.empty) level bars green - should be moved to upstream +levelbar { + block { + &.high, + &:not(.empty) { + border-color: if($variant == 'light', darken($success_color, 20%), $success_color); + background-color: $success_color; + &:backdrop { border-color: $success_color; } + } + } +} + +// Strengthen the menu shadows +// And lighten up the dark shell menu/popover border to increase visibility +$_dark_theme_outer_menu_border: lighten(desaturate($base_color, 100%), 14%); +decoration { + .csd.popup & { + box-shadow: 0 1px 2px 1px transparentize(black, if($variant=='light', 0.7, 0.6)), + 0 0 0 1px if($variant=='light', transparentize(black, 0.77), $_dark_theme_outer_menu_border); + } +} +@if $variant=='dark' { + menu separator { + background-color: $_dark_theme_outer_menu_border; + } +} +popover.background { + .csd &, & { + border-color: if($variant=='light', transparentize(black, 0.77), $_dark_theme_outer_menu_border); + &:backdrop { border-color: $backdrop_borders_color; } + } + @if $variant=='dark' { + separator { + background-color: $_dark_theme_outer_menu_border; + } + } +} +// Adapt dark gtk3 scale and levelbar troughs to the shell +@if $variant=='dark' { + scale, progressbar { + trough { + border-color: $_dark_theme_outer_menu_border; + background-color: $_dark_theme_outer_menu_border; + } + &:backdrop { + trough { + border-color: darken($_dark_theme_outer_menu_border, 5%); + background-color: darken($_dark_theme_outer_menu_border, 5%); + } + } + } + levelbar block.empty { + border-color: $_dark_theme_outer_menu_border; + background-color: $_dark_theme_outer_menu_border; + &:backdrop { + border-color: darken($_dark_theme_outer_menu_border, 5%); + background-color: darken($_dark_theme_outer_menu_border, 5%); + } + } +} + +// Reduce hyper prominent dark theme check switch border in backdrop +switch { + @if $variant=='dark' { + &:not(:checked):not(:backdrop):not(:disabled) { background-color: lighten($bg_color, 5%); } + } + &:backdrop { + &:checked:not(:disabled) { + &, slider { border-color: if($variant=='light', $checkradio_borders_color, $backdrop_borders_color); } + } + } +} + +// Due to the ubuntu orange beeing quiet bright +// we change the sidebar selection from a full orange +// row to a thin orange stripe plus a soft gray selection +$_selection_bg: if($variant=='light', darken($bg_color, 5%), lighten($base_color, 5%)); +list row, placessidebar row, sidebar row, .sidebar row { + &:selected { + &.activatable, & { + &, &:hover { + color: $selected_fg_color; + background-color: $_selection_bg; + &, button { &, & image { color: $text_color; } } + box-shadow: inset 4px 0 0 $selected_bg_color; + &:backdrop { + &, button { &, & image { color: $backdrop_fg_color; } } + background-color: if($variant=='light', $_selection_bg, lighten($_selection_bg, 2%)); + } + } + } + } +} + + +check:checked, radio:checked {border-color:$borders_color;color: $fg_color;}; +check:selected, radio:selected { color: $fg_color;}; + + diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets.svg b/desktop-themes/YaruGreen/gtk-3.0/assets.svg new file mode 100644 index 00000000..e3604c2a --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/assets.svg @@ -0,0 +1,1319 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets.txt b/desktop-themes/YaruGreen/gtk-3.0/assets.txt new file mode 100644 index 00000000..1b407300 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/assets.txt @@ -0,0 +1,63 @@ +text-select-end +text-select-end-hover +text-select-end-active +text-select-start +text-select-start-hover +text-select-start-active +titlebutton-hover +titlebutton-active +titlebutton-selection-mode-hover +titlebutton-selection-mode-active +close-button +close-button-hover +close-button-active +close-button-backdrop +close-button-selection-mode +slider-horz-scale-has-marks-below +slider-horz-scale-has-marks-below-hover +slider-horz-scale-has-marks-below-active +slider-horz-scale-has-marks-below-insensitive +slider-horz-scale-has-marks-below-backdrop +slider-horz-scale-has-marks-below-backdrop-insensitive +slider-vert-scale-has-marks-below +slider-vert-scale-has-marks-below-hover +slider-vert-scale-has-marks-below-active +slider-vert-scale-has-marks-below-insensitive +slider-vert-scale-has-marks-below-backdrop +slider-vert-scale-has-marks-below-backdrop-insensitive +slider-horz-scale-has-marks-above +slider-horz-scale-has-marks-above-hover +slider-horz-scale-has-marks-above-active +slider-horz-scale-has-marks-above-insensitive +slider-horz-scale-has-marks-above-backdrop +slider-horz-scale-has-marks-above-backdrop-insensitive +slider-vert-scale-has-marks-above +slider-vert-scale-has-marks-above-hover +slider-vert-scale-has-marks-above-active +slider-vert-scale-has-marks-above-insensitive +slider-vert-scale-has-marks-above-backdrop +slider-vert-scale-has-marks-above-backdrop-insensitive +slider-horz-scale-has-marks-below-dark +slider-horz-scale-has-marks-below-hover-dark +slider-horz-scale-has-marks-below-active-dark +slider-horz-scale-has-marks-below-insensitive-dark +slider-horz-scale-has-marks-below-backdrop-dark +slider-horz-scale-has-marks-below-backdrop-insensitive-dark +slider-vert-scale-has-marks-below-dark +slider-vert-scale-has-marks-below-hover-dark +slider-vert-scale-has-marks-below-active-dark +slider-vert-scale-has-marks-below-insensitive-dark +slider-vert-scale-has-marks-below-backdrop-dark +slider-vert-scale-has-marks-below-backdrop-insensitive-dark +slider-horz-scale-has-marks-above-dark +slider-horz-scale-has-marks-above-hover-dark +slider-horz-scale-has-marks-above-active-dark +slider-horz-scale-has-marks-above-insensitive-dark +slider-horz-scale-has-marks-above-backdrop-dark +slider-horz-scale-has-marks-above-backdrop-insensitive-dark +slider-vert-scale-has-marks-above-dark +slider-vert-scale-has-marks-above-hover-dark +slider-vert-scale-has-marks-above-active-dark +slider-vert-scale-has-marks-above-insensitive-dark +slider-vert-scale-has-marks-above-backdrop-dark +slider-vert-scale-has-marks-above-backdrop-insensitive-dark diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/Makefile.am b/desktop-themes/YaruGreen/gtk-3.0/assets/Makefile.am new file mode 100644 index 00000000..5ea9bdbc --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/assets/Makefile.am @@ -0,0 +1,136 @@ +THEME_NAME=YaruGreen + +themedir = $(datadir)/themes/$(THEME_NAME)/gtk-3.0/assets + +theme_DATA = \ + panel-grid.svg \ + slider-horz-grip.png \ + slider-vert-grip.png \ + bullet-symbolic.svg \ + bullet-symbolic.symbolic.png \ + check-symbolic.svg \ + check-symbolic.symbolic.png \ + dash-symbolic.svg \ + dash-symbolic.symbolic.png \ + slider-horz-scale-has-marks-above@2.png \ + slider-horz-scale-has-marks-above-active@2.png \ + slider-horz-scale-has-marks-above-active-dark@2.png \ + slider-horz-scale-has-marks-above-active-dark.png \ + slider-horz-scale-has-marks-above-active.png \ + slider-horz-scale-has-marks-above-backdrop@2.png \ + slider-horz-scale-has-marks-above-backdrop-dark@2.png \ + slider-horz-scale-has-marks-above-backdrop-dark.png \ + slider-horz-scale-has-marks-above-backdrop-insensitive@2.png \ + slider-horz-scale-has-marks-above-backdrop-insensitive-dark@2.png \ + slider-horz-scale-has-marks-above-backdrop-insensitive-dark.png \ + slider-horz-scale-has-marks-above-backdrop-insensitive.png \ + slider-horz-scale-has-marks-above-backdrop.png \ + slider-horz-scale-has-marks-above-dark@2.png \ + slider-horz-scale-has-marks-above-dark.png \ + slider-horz-scale-has-marks-above-hover@2.png \ + slider-horz-scale-has-marks-above-hover-dark@2.png \ + slider-horz-scale-has-marks-above-hover-dark.png \ + slider-horz-scale-has-marks-above-hover.png \ + slider-horz-scale-has-marks-above-insensitive@2.png \ + slider-horz-scale-has-marks-above-insensitive-dark@2.png \ + slider-horz-scale-has-marks-above-insensitive-dark.png \ + slider-horz-scale-has-marks-above-insensitive.png \ + slider-horz-scale-has-marks-above.png \ + slider-horz-scale-has-marks-below@2.png \ + slider-horz-scale-has-marks-below-active@2.png \ + slider-horz-scale-has-marks-below-active-dark@2.png \ + slider-horz-scale-has-marks-below-active-dark.png \ + slider-horz-scale-has-marks-below-active.png \ + slider-horz-scale-has-marks-below-backdrop@2.png \ + slider-horz-scale-has-marks-below-backdrop-dark@2.png \ + slider-horz-scale-has-marks-below-backdrop-dark.png \ + slider-horz-scale-has-marks-below-backdrop-insensitive@2.png \ + slider-horz-scale-has-marks-below-backdrop-insensitive-dark@2.png \ + slider-horz-scale-has-marks-below-backdrop-insensitive-dark.png \ + slider-horz-scale-has-marks-below-backdrop-insensitive.png \ + slider-horz-scale-has-marks-below-backdrop.png \ + slider-horz-scale-has-marks-below-dark@2.png \ + slider-horz-scale-has-marks-below-dark.png \ + slider-horz-scale-has-marks-below-hover@2.png \ + slider-horz-scale-has-marks-below-hover-dark@2.png \ + slider-horz-scale-has-marks-below-hover-dark.png \ + slider-horz-scale-has-marks-below-hover.png \ + slider-horz-scale-has-marks-below-insensitive@2.png \ + slider-horz-scale-has-marks-below-insensitive-dark@2.png \ + slider-horz-scale-has-marks-below-insensitive-dark.png \ + slider-horz-scale-has-marks-below-insensitive.png \ + slider-horz-scale-has-marks-below.png \ + slider-vert-scale-has-marks-above@2.png \ + slider-vert-scale-has-marks-above-active@2.png \ + slider-vert-scale-has-marks-above-active-dark@2.png \ + slider-vert-scale-has-marks-above-active-dark.png \ + slider-vert-scale-has-marks-above-active.png \ + slider-vert-scale-has-marks-above-backdrop@2.png \ + slider-vert-scale-has-marks-above-backdrop-dark@2.png \ + slider-vert-scale-has-marks-above-backdrop-dark.png \ + slider-vert-scale-has-marks-above-backdrop-insensitive@2.png \ + slider-vert-scale-has-marks-above-backdrop-insensitive-dark@2.png \ + slider-vert-scale-has-marks-above-backdrop-insensitive-dark.png \ + slider-vert-scale-has-marks-above-backdrop-insensitive.png \ + slider-vert-scale-has-marks-above-backdrop.png \ + slider-vert-scale-has-marks-above-dark@2.png \ + slider-vert-scale-has-marks-above-dark.png \ + slider-vert-scale-has-marks-above-hover@2.png \ + slider-vert-scale-has-marks-above-hover-dark@2.png \ + slider-vert-scale-has-marks-above-hover-dark.png \ + slider-vert-scale-has-marks-above-hover.png \ + slider-vert-scale-has-marks-above-insensitive@2.png \ + slider-vert-scale-has-marks-above-insensitive-dark@2.png \ + slider-vert-scale-has-marks-above-insensitive-dark.png \ + slider-vert-scale-has-marks-above-insensitive.png \ + slider-vert-scale-has-marks-above.png \ + slider-vert-scale-has-marks-below@2.png \ + slider-vert-scale-has-marks-below-active@2.png \ + slider-vert-scale-has-marks-below-active-dark@2.png \ + slider-vert-scale-has-marks-below-active-dark.png \ + slider-vert-scale-has-marks-below-active.png \ + slider-vert-scale-has-marks-below-backdrop@2.png \ + slider-vert-scale-has-marks-below-backdrop-dark@2.png \ + slider-vert-scale-has-marks-below-backdrop-dark.png \ + slider-vert-scale-has-marks-below-backdrop-insensitive@2.png \ + slider-vert-scale-has-marks-below-backdrop-insensitive-dark@2.png \ + slider-vert-scale-has-marks-below-backdrop-insensitive-dark.png \ + slider-vert-scale-has-marks-below-backdrop-insensitive.png \ + slider-vert-scale-has-marks-below-backdrop.png \ + slider-vert-scale-has-marks-below-dark@2.png \ + slider-vert-scale-has-marks-below-dark.png \ + slider-vert-scale-has-marks-below-hover@2.png \ + slider-vert-scale-has-marks-below-hover-dark@2.png \ + slider-vert-scale-has-marks-below-hover-dark.png \ + slider-vert-scale-has-marks-below-hover.png \ + slider-vert-scale-has-marks-below-insensitive@2.png \ + slider-vert-scale-has-marks-below-insensitive-dark@2.png \ + slider-vert-scale-has-marks-below-insensitive-dark.png \ + slider-vert-scale-has-marks-below-insensitive.png \ + slider-vert-scale-has-marks-below.png \ + text-select-end@2.png \ + text-select-end-active@2.png \ + text-select-end-active-dark@2.png \ + text-select-end-active-dark.png \ + text-select-end-active.png \ + text-select-end-dark@2.png \ + text-select-end-dark.png \ + text-select-end-hover@2.png \ + text-select-end-hover-dark@2.png \ + text-select-end-hover-dark.png \ + text-select-end-hover.png \ + text-select-end.png \ + text-select-start@2.png \ + text-select-start-active@2.png \ + text-select-start-active-dark@2.png \ + text-select-start-active-dark.png \ + text-select-start-active.png \ + text-select-start-dark@2.png \ + text-select-start-dark.png \ + text-select-start-hover@2.png \ + text-select-start-hover-dark@2.png \ + text-select-start-hover-dark.png \ + text-select-start-hover.png \ + text-select-start.png + +EXTRA_DIST = $(theme_DATA) diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/bullet-symbolic.svg b/desktop-themes/YaruGreen/gtk-3.0/assets/bullet-symbolic.svg new file mode 100644 index 00000000..cd6ba90d --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/assets/bullet-symbolic.svg @@ -0,0 +1,155 @@ + + + + + + + + image/svg+xml + + Gnome Symbolic Icon Theme + + + + + + + Gnome Symbolic Icon Theme + + + + + + + + + + + + + + + + + diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/bullet-symbolic.symbolic.png b/desktop-themes/YaruGreen/gtk-3.0/assets/bullet-symbolic.symbolic.png new file mode 100644 index 00000000..651cb6d9 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/bullet-symbolic.symbolic.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/check-symbolic.svg b/desktop-themes/YaruGreen/gtk-3.0/assets/check-symbolic.svg new file mode 100644 index 00000000..aaccf0f6 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/assets/check-symbolic.svg @@ -0,0 +1,154 @@ + + + + + + + + image/svg+xml + + Gnome Symbolic Icon Theme + + + + + + + Gnome Symbolic Icon Theme + + + + + + + + + + + + + + + + + diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/check-symbolic.symbolic.png b/desktop-themes/YaruGreen/gtk-3.0/assets/check-symbolic.symbolic.png new file mode 100644 index 00000000..f35c2a8b Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/check-symbolic.symbolic.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/dash-symbolic.svg b/desktop-themes/YaruGreen/gtk-3.0/assets/dash-symbolic.svg new file mode 100644 index 00000000..90623932 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/assets/dash-symbolic.svg @@ -0,0 +1,155 @@ + + + + + + image/svg+xml + + Gnome Symbolic Icon Theme + + + + + + + Gnome Symbolic Icon Theme + + + + + + + + + + + + + + + + + diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/dash-symbolic.symbolic.png b/desktop-themes/YaruGreen/gtk-3.0/assets/dash-symbolic.symbolic.png new file mode 100644 index 00000000..5b5fb6b6 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/dash-symbolic.symbolic.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/panel-grid.svg b/desktop-themes/YaruGreen/gtk-3.0/assets/panel-grid.svg new file mode 100644 index 00000000..c33d2470 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/assets/panel-grid.svg @@ -0,0 +1,173 @@ + + + + + + + + image/svg+xml + + Gnome Symbolic Icon Theme + + + + + + + + Gnome Symbolic Icon Theme + + + + + + + + + + + + + + + diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-grip.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-grip.png new file mode 100644 index 00000000..313c11dc Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-grip.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active-dark.png new file mode 100644 index 00000000..f0d0300d Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active-dark@2.png new file mode 100644 index 00000000..6bc3bc21 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active.png new file mode 100644 index 00000000..fb20f8b7 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active@2.png new file mode 100644 index 00000000..844bc450 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-active@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-dark.png new file mode 100644 index 00000000..fb57411a Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-dark@2.png new file mode 100644 index 00000000..0d5171e7 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark.png new file mode 100644 index 00000000..fb57411a Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark@2.png new file mode 100644 index 00000000..0d5171e7 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive.png new file mode 100644 index 00000000..05cd4174 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive@2.png new file mode 100644 index 00000000..53f66ba5 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop.png new file mode 100644 index 00000000..6aa2d3e2 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop@2.png new file mode 100644 index 00000000..31d75e1d Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-backdrop@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-dark.png new file mode 100644 index 00000000..c98dee13 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-dark@2.png new file mode 100644 index 00000000..a2a20978 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover-dark.png new file mode 100644 index 00000000..866ba7ae Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover-dark@2.png new file mode 100644 index 00000000..0a4e6422 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover.png new file mode 100644 index 00000000..65467468 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover@2.png new file mode 100644 index 00000000..4ef11532 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-hover@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive-dark.png new file mode 100644 index 00000000..fb57411a Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive-dark@2.png new file mode 100644 index 00000000..0d5171e7 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive.png new file mode 100644 index 00000000..05cd4174 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive@2.png new file mode 100644 index 00000000..c4a397f2 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above.png new file mode 100644 index 00000000..5f436d7e Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above@2.png new file mode 100644 index 00000000..e6e2e941 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-above@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active-dark.png new file mode 100644 index 00000000..ad226129 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active-dark@2.png new file mode 100644 index 00000000..610b705a Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active.png new file mode 100644 index 00000000..7521777d Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active@2.png new file mode 100644 index 00000000..3badb682 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-active@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-dark.png new file mode 100644 index 00000000..69d8a190 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-dark@2.png new file mode 100644 index 00000000..8ba45992 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark.png new file mode 100644 index 00000000..69d8a190 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark@2.png new file mode 100644 index 00000000..8ba45992 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive.png new file mode 100644 index 00000000..78cc5ab1 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive@2.png new file mode 100644 index 00000000..8e17a55d Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop.png new file mode 100644 index 00000000..05109492 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop@2.png new file mode 100644 index 00000000..cf5f21ec Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-backdrop@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-dark.png new file mode 100644 index 00000000..e7a14422 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-dark@2.png new file mode 100644 index 00000000..c6ba515d Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover-dark.png new file mode 100644 index 00000000..fb5cb2ed Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover-dark@2.png new file mode 100644 index 00000000..b403101b Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover.png new file mode 100644 index 00000000..63e32784 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover@2.png new file mode 100644 index 00000000..2c7b389d Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-hover@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive-dark.png new file mode 100644 index 00000000..69d8a190 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive-dark@2.png new file mode 100644 index 00000000..8ba45992 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive.png new file mode 100644 index 00000000..05109492 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive@2.png new file mode 100644 index 00000000..cf5f21ec Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below.png new file mode 100644 index 00000000..e5799529 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below@2.png new file mode 100644 index 00000000..519fac11 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-horz-scale-has-marks-below@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-grip.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-grip.png new file mode 100644 index 00000000..4b5a55a3 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-grip.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active-dark.png new file mode 100644 index 00000000..6e7feac4 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active-dark@2.png new file mode 100644 index 00000000..79633f39 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active.png new file mode 100644 index 00000000..74a4e10e Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active@2.png new file mode 100644 index 00000000..d230d5c3 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-active@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-dark.png new file mode 100644 index 00000000..3485541e Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-dark@2.png new file mode 100644 index 00000000..a85ec9fb Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark.png new file mode 100644 index 00000000..3485541e Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark@2.png new file mode 100644 index 00000000..a85ec9fb Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive.png new file mode 100644 index 00000000..3786c106 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive@2.png new file mode 100644 index 00000000..252d798b Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop.png new file mode 100644 index 00000000..4bd63616 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop@2.png new file mode 100644 index 00000000..88508458 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-backdrop@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-dark.png new file mode 100644 index 00000000..ef8cdd26 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-dark@2.png new file mode 100644 index 00000000..3c5c8c6a Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover-dark.png new file mode 100644 index 00000000..c056cfe5 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover-dark@2.png new file mode 100644 index 00000000..75671254 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover.png new file mode 100644 index 00000000..0c494233 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover@2.png new file mode 100644 index 00000000..93053c32 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-hover@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive-dark.png new file mode 100644 index 00000000..3485541e Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive-dark@2.png new file mode 100644 index 00000000..a85ec9fb Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive.png new file mode 100644 index 00000000..3786c106 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive@2.png new file mode 100644 index 00000000..d57d8a96 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above.png new file mode 100644 index 00000000..ac73b4b0 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above@2.png new file mode 100644 index 00000000..82d983d9 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-above@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active-dark.png new file mode 100644 index 00000000..c494ab16 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active-dark@2.png new file mode 100644 index 00000000..7f71adca Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active.png new file mode 100644 index 00000000..9c866c81 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active@2.png new file mode 100644 index 00000000..3dc76089 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-active@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-dark.png new file mode 100644 index 00000000..14972bd3 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-dark@2.png new file mode 100644 index 00000000..9d438798 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark.png new file mode 100644 index 00000000..14972bd3 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark@2.png new file mode 100644 index 00000000..9d438798 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive.png new file mode 100644 index 00000000..e7b880b0 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive@2.png new file mode 100644 index 00000000..0628fdd4 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop.png new file mode 100644 index 00000000..b5a68d8e Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop@2.png new file mode 100644 index 00000000..0628fdd4 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-backdrop@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-dark.png new file mode 100644 index 00000000..5874c29c Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-dark@2.png new file mode 100644 index 00000000..05def561 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover-dark.png new file mode 100644 index 00000000..79d96ae1 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover-dark@2.png new file mode 100644 index 00000000..bb1816e5 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover.png new file mode 100644 index 00000000..e225ac10 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover@2.png new file mode 100644 index 00000000..8a02b661 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-hover@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive-dark.png new file mode 100644 index 00000000..14972bd3 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive-dark@2.png new file mode 100644 index 00000000..9d438798 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive.png new file mode 100644 index 00000000..e7b880b0 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive@2.png new file mode 100644 index 00000000..056cf5c2 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below.png new file mode 100644 index 00000000..230b1462 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below@2.png new file mode 100644 index 00000000..3ae316f5 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/slider-vert-scale-has-marks-below@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active-dark.png new file mode 100644 index 00000000..539ebb0d Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active-dark@2.png new file mode 100644 index 00000000..441c8fd4 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active.png new file mode 100644 index 00000000..359598cd Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active@2.png new file mode 100644 index 00000000..1fc19786 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-active@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-dark.png new file mode 100644 index 00000000..598e4a8a Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-dark@2.png new file mode 100644 index 00000000..e528b3bf Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover-dark.png new file mode 100644 index 00000000..d24e2fc4 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover-dark@2.png new file mode 100644 index 00000000..e986fefc Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover.png new file mode 100644 index 00000000..409889f3 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover@2.png new file mode 100644 index 00000000..7dd54768 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end-hover@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end.png new file mode 100644 index 00000000..53fdf496 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end@2.png new file mode 100644 index 00000000..2fb30824 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-end@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active-dark.png new file mode 100644 index 00000000..e9333bf2 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active-dark@2.png new file mode 100644 index 00000000..e89be041 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active.png new file mode 100644 index 00000000..3b0d0c56 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active@2.png new file mode 100644 index 00000000..7c4c65e1 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-active@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-dark.png new file mode 100644 index 00000000..12f66206 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-dark@2.png new file mode 100644 index 00000000..9535b0bb Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover-dark.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover-dark.png new file mode 100644 index 00000000..12afe669 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover-dark@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover-dark@2.png new file mode 100644 index 00000000..4d3ac002 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover.png new file mode 100644 index 00000000..0aebd3c9 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover@2.png new file mode 100644 index 00000000..d8832354 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start-hover@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start.png new file mode 100644 index 00000000..7d92c9d4 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start@2.png b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start@2.png new file mode 100644 index 00000000..160d576a Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-3.0/assets/text-select-start@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-3.0/gtk.css b/desktop-themes/YaruGreen/gtk-3.0/gtk.css new file mode 100644 index 00000000..e65a7f8b --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/gtk.css @@ -0,0 +1,2927 @@ +/*************** core colors * */ +/* Core colors are only used in the current file, as bases for other color declarations. */ +/* Core color for blue widgets in TraditionalOK. */ +/* Core color for gray widgets in TraditionalOK. */ +/* hover */ +/* active */ +/* insensitive */ +/* active insensitive */ +/* primary toolbar focus */ +/* primary toolbar focus hover */ +/*************************** Check and Radio buttons * */ +* { padding: 0; -GtkToolButton-icon-spacing: 4; -GtkTextView-error-underline-color: #c7162b; -GtkScrolledWindow-scrollbar-spacing: 0; -GtkToolItemGroup-expander-size: 11; -GtkWidget-text-handle-width: 20; -GtkWidget-text-handle-height: 24; -GtkDialog-button-spacing: 4; -GtkDialog-action-area-border: 0; outline-color: alpha(currentColor,0.3); outline-style: dashed; outline-offset: -3px; outline-width: 1px; -gtk-outline-radius: 2px; -gtk-secondary-caret-color: #bfc6b0; } + +/*************** Base States * */ +.background { color: #000000; background-color: #edeceb; } + +.background:backdrop { color: #2f2f2f; background-color: #edeceb; text-shadow: none; -gtk-icon-shadow: none; } + +/* These wildcard seems unavoidable, need to investigate. Wildcards are bad and troublesome, use them with care, or better, just don't. Everytime a wildcard is used a kitten dies, painfully. */ +*:disabled { -gtk-icon-effect: dim; } + +.gtkstyle-fallback { color: #000000; background-color: #edeceb; } + +.gtkstyle-fallback:hover { color: #000000; background-color: white; } + +.gtkstyle-fallback:active { color: #000000; background-color: #d5d3d0; } + +.gtkstyle-fallback:disabled { color: #a9a5a2; background-color: #edeceb; } + +.gtkstyle-fallback:selected { color: #42453E; background-color: #bfc6b0; } + +.view, iconview, .view text, iconview text, textview text { color: #1a1a1a; background-color: #ffffff; } + +.view:backdrop, iconview:backdrop, .view text:backdrop, iconview text:backdrop, textview text:backdrop { color: rgba(26, 26, 26, 0.69); background-color: #fcfcfc; } + +.view:backdrop:disabled, iconview:backdrop:disabled, .view text:backdrop:disabled, iconview text:backdrop:disabled, textview text:backdrop:disabled { color: #c9c6c3; } + +.view:disabled, iconview:disabled, .view text:disabled, iconview text:disabled, textview text:disabled { color: #a9a5a2; background-color: #edeceb; } + +.view:selected:focus, iconview:selected:focus, .view:selected, iconview:selected, .view text:selected:focus, iconview text:selected:focus, textview text:selected:focus, .view text:selected, iconview text:selected, textview text:selected { border-radius: 3px; } + +textview border { background-color: #f6f6f5; } + +.rubberband, rubberband, flowbox rubberband, treeview.view rubberband, .content-view rubberband, .content-view .rubberband { border: 1px solid #a7b092; background-color: rgba(167, 176, 146, 0.2); } + +flowbox flowboxchild { padding: 3px; } + +flowbox flowboxchild:selected { outline-offset: -2px; } + +.content-view .tile { margin: 2px; background-color: transparent; border-radius: 0; padding: 0; } + +.content-view .tile:backdrop { background-color: transparent; } + +.content-view .tile:active, .content-view .tile:selected { background-color: transparent; } + +.content-view .tile:disabled { background-color: transparent; } + +label { caret-color: currentColor; } + +label selection { background-color: #bfc6b0; color: #42453E; } + +label:disabled { color: #a9a5a2; } + +button label:disabled { color: inherit; } + +label:disabled:backdrop { color: #c9c6c3; } + +button label:disabled:backdrop { color: inherit; } + +label.error { color: #c7162b; } + +label.error:disabled { color: rgba(199, 22, 43, 0.5); } + +label.error:disabled:backdrop { color: rgba(199, 22, 43, 0.4); } + +.dim-label, label.separator, .titlebar:not(headerbar) .subtitle, headerbar .subtitle { opacity: 0.55; text-shadow: none; } + +assistant .sidebar { background-color: #ffffff; border-top: 1px solid #94908c; } + +assistant .sidebar:backdrop { background-color: #fcfcfc; border-color: #a5a29f; } + +assistant.csd .sidebar { border-top-style: none; } + +assistant .sidebar label { padding: 6px 12px; } + +assistant .sidebar label.highlight { background-color: #bebdbc; } + +.csd popover.background.touch-selection, .csd popover.background.magnifier, popover.background.touch-selection, popover.background.magnifier, .csd popover.background.osd, popover.background.osd, .app-notification, .app-notification.frame, .osd .scale-popup, .osd { color: #eeeeec; border: none; background-color: rgba(37, 38, 33, 0.8); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; } + +popover.background.touch-selection:backdrop, popover.background.magnifier:backdrop, popover.background.osd:backdrop, .app-notification:backdrop, .osd .scale-popup:backdrop, .osd:backdrop { text-shadow: none; -gtk-icon-shadow: none; } + +/********************* Spinner Animation * */ +@keyframes spin { to { -gtk-icon-transform: rotate(1turn); } } + +spinner { background: none; opacity: 0; -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); } + +spinner:backdrop { color: #2f2f2f; } + +spinner:checked { opacity: 1; animation: spin 1s linear infinite; } + +spinner:checked:disabled { opacity: 0.5; } + +/********************** General Typography * */ +.large-title { font-weight: 300; font-size: 24pt; } + +.title-1 { font-weight: 800; font-size: 20pt; } + +.title-2 { font-weight: 800; font-size: 15pt; } + +.title-3 { font-weight: 700; font-size: 15pt; } + +.title-4 { font-weight: 700; font-size: 13pt; } + +.heading { font-weight: 700; font-size: 11pt; } + +.body { font-weight: 400; font-size: 11pt; } + +.caption-heading { font-weight: 700; font-size: 9pt; } + +.caption { font-weight: 400; font-size: 9pt; } + +/**************** Text Entries * */ +spinbutton:not(.vertical), entry { min-height: 32px; padding-left: 8px; padding-right: 8px; border: 1px solid; border-radius: 4px; transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); color: #1a1a1a; border-color: #94908c; background-color: #ffffff; box-shadow: inset 0 0 0 1px rgba(148, 144, 140, 0); } + +spinbutton:not(.vertical) image.left, entry image.left { margin-right: 6px; } + +spinbutton:not(.vertical) image.right, entry image.right { margin-left: 6px; } + +spinbutton.flat:focus:not(.vertical), spinbutton.flat:backdrop:not(.vertical), spinbutton.flat:disabled:not(.vertical), spinbutton.flat:backdrop:disabled:not(.vertical), spinbutton.flat:not(.vertical), entry.flat:focus, entry.flat:backdrop, entry.flat:disabled, entry.flat:backdrop:disabled, entry.flat { min-height: 0; padding: 2px; background-color: transparent; border-color: transparent; border-radius: 0; } + +spinbutton:focus:not(.vertical), entry:focus { box-shadow: inset 0px 1px #fafaf8, inset 1px 0px #fafaf8, inset -1px 0px #fafaf8, inset 0px -1px #fafaf8; border-color: #6b715f; } + +spinbutton:disabled:not(.vertical), entry:disabled { color: #a9a5a2; border-color: #94908c; background-color: #edeceb; box-shadow: none; } + +spinbutton:backdrop:not(.vertical), entry:backdrop { color: rgba(26, 26, 26, 0.69); border-color: #a5a29f; background-color: #fcfcfc; box-shadow: none; transition: 200ms ease-out; } + +spinbutton:backdrop:disabled:not(.vertical), entry:backdrop:disabled { color: #c9c6c3; border-color: #a5a29f; background-color: #edeceb; box-shadow: none; } + +spinbutton.error:not(.vertical), entry.error { color: #c7162b; border-color: #c7162b; } + +spinbutton.error:focus:not(.vertical), entry.error:focus { box-shadow: inset 0px 1px #fafaf8, inset 1px 0px #fafaf8, inset -1px 0px #fafaf8, inset 0px -1px #fafaf8; border-color: #6b715f; } + +spinbutton.error:not(.vertical) selection, entry.error selection { background-color: #c7162b; } + +spinbutton.warning:not(.vertical), entry.warning { color: #f99b11; border-color: #f99b11; } + +spinbutton.warning:focus:not(.vertical), entry.warning:focus { box-shadow: inset 0px 1px #fafaf8, inset 1px 0px #fafaf8, inset -1px 0px #fafaf8, inset 0px -1px #fafaf8; border-color: #6b715f; } + +spinbutton.warning:not(.vertical) selection, entry.warning selection { background-color: #f99b11; } + +spinbutton:not(.vertical) image, entry image { color: #333333; } + +spinbutton:not(.vertical) image:hover, entry image:hover { color: #000000; } + +spinbutton:not(.vertical) image:active, entry image:active { color: #bfc6b0; } + +spinbutton:not(.vertical) image:backdrop, entry image:backdrop { color: #585858; } + +spinbutton:drop(active):focus:not(.vertical), spinbutton:drop(active):not(.vertical), entry:drop(active):focus, entry:drop(active) { border-color: #93af66; box-shadow: inset 0 0 0 1px #93af66; } + +.osd spinbutton:not(.vertical), .osd entry { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: rgba(0, 0, 0, 0.5); background-clip: padding-box; box-shadow: none; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; } + +.osd spinbutton:focus:not(.vertical), .osd entry:focus { color: white; border-color: #bfc6b0; background-color: rgba(0, 0, 0, 0.5); background-clip: padding-box; box-shadow: inset 0 0 0 1px #94908c; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; } + +.osd spinbutton:backdrop:not(.vertical), .osd entry:backdrop { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: rgba(0, 0, 0, 0.5); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; } + +.osd spinbutton:disabled:not(.vertical), .osd entry:disabled { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: rgba(37, 38, 33, 0.8); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; } + +spinbutton:not(.vertical) progress, entry progress { margin: 2px -6px; background-color: transparent; background-image: none; border-radius: 0; border-width: 0 0 2px; border-color: #4893f2; border-style: solid; box-shadow: none; } + +spinbutton:not(.vertical) progress:backdrop, entry progress:backdrop { background-color: transparent; } + +.linked:not(.vertical) > spinbutton:focus:not(.vertical) + spinbutton:not(.vertical), .linked:not(.vertical) > spinbutton:focus:not(.vertical) + button, .linked:not(.vertical) > spinbutton:focus:not(.vertical) + combobox > box > button.combo, .linked:not(.vertical) > entry:focus + spinbutton:not(.vertical), .linked:not(.vertical) > entry:focus + button, .linked:not(.vertical) > entry:focus + combobox > box > button.combo, .linked:not(.vertical) > spinbutton:focus:not(.vertical) + entry, .linked:not(.vertical) > entry:focus + entry { border-left-color: #94908c; } + +.linked:not(.vertical) > spinbutton:focus.error:not(.vertical) + spinbutton:not(.vertical), .linked:not(.vertical) > spinbutton:focus.error:not(.vertical) + button, .linked:not(.vertical) > spinbutton:focus.error:not(.vertical) + combobox > box > button.combo, .linked:not(.vertical) > entry:focus.error + spinbutton:not(.vertical), .linked:not(.vertical) > entry:focus.error + button, .linked:not(.vertical) > entry:focus.error + combobox > box > button.combo, .linked:not(.vertical) > spinbutton:focus.error:not(.vertical) + entry, .linked:not(.vertical) > entry:focus.error + entry { border-left-color: #c7162b; } + +.linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + spinbutton:not(.vertical), .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + button, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + combobox > box > button.combo, .linked:not(.vertical) > entry:drop(active) + spinbutton:not(.vertical), .linked:not(.vertical) > entry:drop(active) + button, .linked:not(.vertical) > entry:drop(active) + combobox > box > button.combo, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + entry, .linked:not(.vertical) > entry:drop(active) + entry { border-left-color: #93af66; } + +.linked.vertical > spinbutton:not(:disabled):not(.vertical) + entry:not(:disabled), .linked.vertical > spinbutton:not(:disabled):not(.vertical) + spinbutton:not(:disabled):not(.vertical), .linked.vertical > entry:not(:disabled) + entry:not(:disabled), .linked.vertical > entry:not(:disabled) + spinbutton:not(:disabled):not(.vertical) { border-top-color: #dfdedd; } + +.linked.vertical > spinbutton:not(:disabled):not(.vertical) + entry:not(:disabled):backdrop, .linked.vertical > spinbutton:not(:disabled):not(.vertical) + spinbutton:not(:disabled):backdrop:not(.vertical), .linked.vertical > entry:not(:disabled) + entry:not(:disabled):backdrop, .linked.vertical > entry:not(:disabled) + spinbutton:not(:disabled):backdrop:not(.vertical) { border-top-color: #e2e1e0; } + +.linked.vertical > spinbutton:disabled:not(.vertical) + spinbutton:disabled:not(.vertical), .linked.vertical > spinbutton:disabled:not(.vertical) + entry:disabled, .linked.vertical > entry:disabled + spinbutton:disabled:not(.vertical), .linked.vertical > entry:disabled + entry:disabled { border-top-color: #dfdedd; } + +.linked.vertical > spinbutton:not(.vertical) + spinbutton:focus:not(:only-child):not(.vertical), .linked.vertical > spinbutton:not(.vertical) + entry:focus:not(:only-child), .linked.vertical > entry + spinbutton:focus:not(:only-child):not(.vertical), .linked.vertical > entry + entry:focus:not(:only-child) { border-top-color: #94908c; } + +.linked.vertical > spinbutton:not(.vertical) + spinbutton:focus.error:not(:only-child):not(.vertical), .linked.vertical > spinbutton:not(.vertical) + entry:focus.error:not(:only-child), .linked.vertical > entry + spinbutton:focus.error:not(:only-child):not(.vertical), .linked.vertical > entry + entry:focus.error:not(:only-child) { border-top-color: #c7162b; } + +.linked.vertical > spinbutton:not(.vertical) + spinbutton:drop(active):not(:only-child):not(.vertical), .linked.vertical > spinbutton:not(.vertical) + entry:drop(active):not(:only-child), .linked.vertical > entry + spinbutton:drop(active):not(:only-child):not(.vertical), .linked.vertical > entry + entry:drop(active):not(:only-child) { border-top-color: #93af66; } + +.linked.vertical > spinbutton:focus:not(:only-child):not(.vertical) + spinbutton:not(.vertical), .linked.vertical > spinbutton:focus:not(:only-child):not(.vertical) + entry, .linked.vertical > spinbutton:focus:not(:only-child):not(.vertical) + button, .linked.vertical > spinbutton:focus:not(:only-child):not(.vertical) + combobox > box > button.combo, .linked.vertical > entry:focus:not(:only-child) + spinbutton:not(.vertical), .linked.vertical > entry:focus:not(:only-child) + entry, .linked.vertical > entry:focus:not(:only-child) + button, .linked.vertical > entry:focus:not(:only-child) + combobox > box > button.combo { border-top-color: #94908c; } + +.linked.vertical > spinbutton:focus.error:not(:only-child):not(.vertical) + spinbutton:not(.vertical), .linked.vertical > spinbutton:focus.error:not(:only-child):not(.vertical) + entry, .linked.vertical > spinbutton:focus.error:not(:only-child):not(.vertical) + button, .linked.vertical > spinbutton:focus.error:not(:only-child):not(.vertical) + combobox > box > button.combo, .linked.vertical > entry:focus.error:not(:only-child) + spinbutton:not(.vertical), .linked.vertical > entry:focus.error:not(:only-child) + entry, .linked.vertical > entry:focus.error:not(:only-child) + button, .linked.vertical > entry:focus.error:not(:only-child) + combobox > box > button.combo { border-top-color: #c7162b; } + +.linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + spinbutton:not(.vertical), .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + entry, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + button, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + combobox > box > button.combo, .linked.vertical > entry:drop(active):not(:only-child) + spinbutton:not(.vertical), .linked.vertical > entry:drop(active):not(:only-child) + entry, .linked.vertical > entry:drop(active):not(:only-child) + button, .linked.vertical > entry:drop(active):not(:only-child) + combobox > box > button.combo { border-top-color: #93af66; } + +spinbutton.error:not(.vertical), entry.error { color: #c7162b; } + +treeview entry:focus:dir(rtl), treeview entry:focus:dir(ltr) { background-color: #ffffff; transition-property: color, background; } + +treeview entry.flat, treeview entry { border-radius: 0; background-image: none; background-color: #ffffff; } + +treeview entry.flat:focus, treeview entry:focus { border-color: #bfc6b0; } + +.entry-tag { padding: 5px; margin-top: 2px; margin-bottom: 2px; border-style: none; color: #42453E; background-color: #bfc6b0; } + +:dir(ltr) .entry-tag { margin-left: 8px; margin-right: -5px; } + +:dir(rtl) .entry-tag { margin-left: -5px; margin-right: 8px; } + +.entry-tag:hover { background-color: #d7dbcd; } + +:backdrop .entry-tag { color: #fcfcfc; background-color: #bfc6b0; } + +.entry-tag.button { background-color: transparent; color: rgba(66, 69, 62, 0.7); } + +:not(:backdrop) .entry-tag.button:hover { border: 1px solid #bfc6b0; color: #42453E; } + +:not(:backdrop) .entry-tag.button:active { background-color: #bfc6b0; color: rgba(66, 69, 62, 0.7); } + +/*********** Buttons * */ +@keyframes needs_attention { from { background-image: -gtk-gradient(radial, center center, 0, center center, 0.01, to(#bfc6b0), to(transparent)); } + to { background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(#bfc6b0), to(transparent)); } } + +notebook > header > tabs > arrow, button { min-height: 24px; min-width: 16px; padding: 3px 8px; border: 1px solid; border-radius: 4px; transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +notebook > header > tabs > arrow, button.sidebar-button, notebook > header > tabs > arrow.flat, button.flat { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; transition: none; } + +notebook > header > tabs > arrow:hover, button.sidebar-button:hover, notebook > header > tabs > arrow.flat:hover, button.flat:hover { transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition-duration: 500ms; } + +notebook > header > tabs > arrow:hover:active, button.sidebar-button:hover:active, notebook > header > tabs > arrow.flat:hover:active, button.flat:hover:active { transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +notebook > header > tabs > arrow:hover, button:hover { color: #000000; outline-color: #94908c; border-color: #94908c; border-bottom-color: #b3afab; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); -gtk-icon-effect: highlight; } + +notebook > header > tabs > arrow:active, notebook > header > tabs > arrow:checked, button:active, button:checked { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; transition-duration: 50ms; } + +notebook > header > tabs > arrow:backdrop.flat, notebook > header > tabs > arrow:backdrop, button:backdrop.flat, button:backdrop { color: #2f2f2f; border-color: #a5a29f; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); transition: 200ms ease-out; -gtk-icon-effect: none; } + +notebook > header > tabs > arrow:backdrop.flat:active, notebook > header > tabs > arrow:backdrop.flat:checked, notebook > header > tabs > arrow:backdrop:active, notebook > header > tabs > arrow:backdrop:checked, button:backdrop.flat:active, button:backdrop.flat:checked, button:backdrop:active, button:backdrop:checked { color: #2f2f2f; border-color: #a5a29f; background-image: image(#dddbd8); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +notebook > header > tabs > arrow:backdrop.flat:disabled, notebook > header > tabs > arrow:backdrop:disabled, button:backdrop.flat:disabled, button:backdrop:disabled { color: #c9c6c3; border-color: #a5a29f; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +notebook > header > tabs > arrow:backdrop.flat:disabled:active, notebook > header > tabs > arrow:backdrop.flat:disabled:checked, notebook > header > tabs > arrow:backdrop:disabled:active, notebook > header > tabs > arrow:backdrop:disabled:checked, button:backdrop.flat:disabled:active, button:backdrop.flat:disabled:checked, button:backdrop:disabled:active, button:backdrop:disabled:checked { color: #c9c6c3; border-color: #a5a29f; background-image: image(#dddbd8); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +notebook > header > tabs > arrow:backdrop, button.sidebar-button:backdrop, notebook > header > tabs > arrow:disabled, button.sidebar-button:disabled, notebook > header > tabs > arrow:backdrop:disabled, button.sidebar-button:backdrop:disabled, notebook > header > tabs > arrow.flat:backdrop, notebook > header > tabs > arrow.flat:disabled, notebook > header > tabs > arrow.flat:backdrop:disabled, button.flat:backdrop, button.flat:disabled, button.flat:backdrop:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +notebook > header > tabs > arrow:disabled, button:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +notebook > header > tabs > arrow:disabled:active, notebook > header > tabs > arrow:disabled:checked, button:disabled:active, button:disabled:checked { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #e9e7e6, #f1f1f0 3px, #f4f3f2 4px, #efeeed 50%, #ebeae9 50%, #e4e3e1); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +notebook > header > tabs > arrow.image-button, button.image-button { min-width: 24px; padding-left: 5px; padding-right: 5px; } + +notebook > header > tabs > arrow.text-button, button.text-button { padding-left: 16px; padding-right: 16px; } + +notebook > header > tabs > arrow.text-button.image-button, button.text-button.image-button { padding-left: 8px; padding-right: 8px; } + +notebook > header > tabs > arrow.text-button.image-button label, button.text-button.image-button label { padding-left: 8px; padding-right: 8px; } + +combobox:drop(active) button.combo, notebook > header > tabs > arrow:drop(active), button:drop(active) { color: #93af66; border-color: #93af66; box-shadow: inset 0 0 0 1px #93af66; } + +row:selected button { border-color: #848c71; } + +row:selected button.sidebar-button:not(:active):not(:checked):not(:hover):not(disabled), row:selected button.flat:not(:active):not(:checked):not(:hover):not(disabled) { color: #42453E; border-color: transparent; } + +row:selected button.sidebar-button:not(:active):not(:checked):not(:hover):not(disabled):backdrop, row:selected button.flat:not(:active):not(:checked):not(:hover):not(disabled):backdrop { color: #fcfcfc; } + +button.osd { min-width: 26px; min-height: 32px; color: #eeeeec; border-radius: 5px; color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(61, 63, 54, 0.8)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); border: none; box-shadow: none; } + +button.osd.image-button { min-width: 34px; } + +button.osd:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(69, 71, 61, 0.8)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); border: none; box-shadow: none; } + +button.osd:active, button.osd:checked { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(0, 0, 0, 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: none; box-shadow: none; } + +button.osd:disabled:backdrop, button.osd:disabled { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(37, 38, 33, 0.8)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; border: none; } + +button.osd:backdrop { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(37, 38, 33, 0.8)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; border: none; } + +.csd popover.background.touch-selection button, .csd popover.background.magnifier button, popover.background.touch-selection button, popover.background.magnifier button, .app-notification button, .app-notification.frame button, .osd button { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(61, 63, 54, 0.8)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); } + +popover.background.touch-selection button:hover, popover.background.magnifier button:hover, .app-notification button:hover, .osd button:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(69, 71, 61, 0.8)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); } + +popover.background.touch-selection button:active:backdrop, popover.background.magnifier button:active:backdrop, .app-notification button:active:backdrop, popover.background.touch-selection button:active, popover.background.magnifier button:active, .app-notification button:active, popover.background.touch-selection button:checked:backdrop, popover.background.magnifier button:checked:backdrop, .app-notification button:checked:backdrop, popover.background.touch-selection button:checked, popover.background.magnifier button:checked, .app-notification button:checked, .osd button:active:backdrop, .osd button:active, .osd button:checked:backdrop, .osd button:checked { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(0, 0, 0, 0.7)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; outline-color: rgba(238, 238, 236, 0.3); } + +popover.background.touch-selection button:disabled:backdrop, popover.background.magnifier button:disabled:backdrop, .app-notification button:disabled:backdrop, popover.background.touch-selection button:disabled, popover.background.magnifier button:disabled, .app-notification button:disabled, .osd button:disabled:backdrop, .osd button:disabled { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(37, 38, 33, 0.8)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; } + +popover.background.touch-selection button:backdrop, popover.background.magnifier button:backdrop, .app-notification button:backdrop, .osd button:backdrop { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(37, 38, 33, 0.8)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; } + +popover.background.touch-selection button.flat, popover.background.magnifier button.flat, .app-notification button.flat, .osd button.flat { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; box-shadow: none; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; } + +popover.background.touch-selection button.flat:hover, popover.background.magnifier button.flat:hover, .app-notification button.flat:hover, .osd button.flat:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(69, 71, 61, 0.8)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); } + +popover.background.touch-selection button.flat:disabled, popover.background.magnifier button.flat:disabled, .app-notification button.flat:disabled, .osd button.flat:disabled { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(37, 38, 33, 0.8)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; background-image: none; border-color: transparent; box-shadow: none; } + +popover.background.touch-selection button.flat:backdrop, popover.background.magnifier button.flat:backdrop, .app-notification button.flat:backdrop, .osd button.flat:backdrop { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +popover.background.touch-selection button.flat:active, popover.background.magnifier button.flat:active, .app-notification button.flat:active, popover.background.touch-selection button.flat:checked, popover.background.magnifier button.flat:checked, .app-notification button.flat:checked, .osd button.flat:active, .osd button.flat:checked { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(0, 0, 0, 0.7)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; outline-color: rgba(238, 238, 236, 0.3); } + +button.suggested-action { color: #000000; outline-color: #94908c; border-color: #79944d; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +button.suggested-action.flat { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: #93af66; } + +button.suggested-action:hover { color: #000000; outline-color: #94908c; border-color: #79944d; border-bottom-color: #5e733c; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); } + +button.suggested-action:active, button.suggested-action:checked { color: #000000; outline-color: #94908c; border-color: #79944d; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +button.suggested-action:backdrop, button.suggested-action.flat:backdrop { color: #e9efe0; border-color: #93af66; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +button.suggested-action:backdrop:active, button.suggested-action:backdrop:checked, button.suggested-action.flat:backdrop:active, button.suggested-action.flat:backdrop:checked { color: #e9efe0; border-color: #90ad62; background-image: image(#90ad62); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +button.suggested-action:backdrop:disabled, button.suggested-action.flat:backdrop:disabled { color: #c9c6c3; border-color: #a5a29f; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +button.suggested-action:backdrop:disabled:active, button.suggested-action:backdrop:disabled:checked, button.suggested-action.flat:backdrop:disabled:active, button.suggested-action.flat:backdrop:disabled:checked { color: #b7ca99; border-color: #90ad62; background-image: image(#90ad62); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +button.suggested-action.flat:backdrop, button.suggested-action.flat:disabled, button.suggested-action.flat:backdrop:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: rgba(147, 175, 102, 0.8); } + +button.suggested-action:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +button.suggested-action:disabled:active, button.suggested-action:disabled:checked { color: #d3dec0; border-color: #79944d; background-image: linear-gradient(to bottom, #e9e7e6, #f1f1f0 3px, #f4f3f2 4px, #efeeed 50%, #ebeae9 50%, #e4e3e1); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.osd button.suggested-action { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(147, 175, 102, 0.5)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); } + +.osd button.suggested-action:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(147, 175, 102, 0.7)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); } + +.osd button.suggested-action:active:backdrop, .osd button.suggested-action:active, .osd button.suggested-action:checked:backdrop, .osd button.suggested-action:checked { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(#93af66); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; outline-color: rgba(238, 238, 236, 0.3); } + +.osd button.suggested-action:disabled:backdrop, .osd button.suggested-action:disabled { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(37, 38, 33, 0.8)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; } + +.osd button.suggested-action:backdrop { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(147, 175, 102, 0.5)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; } + +button.destructive-action { color: #000000; outline-color: #94908c; border-color: #991121; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +button.destructive-action.flat { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: #c7162b; } + +button.destructive-action:hover { color: #000000; outline-color: #94908c; border-color: #991121; border-bottom-color: #6b0c17; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px rgba(255, 255, 255, 0.1), 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); } + +button.destructive-action:active, button.destructive-action:checked { color: #000000; outline-color: #94908c; border-color: #991121; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +button.destructive-action:backdrop, button.destructive-action.flat:backdrop { color: #f4d0d5; border-color: #c7162b; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +button.destructive-action:backdrop:active, button.destructive-action:backdrop:checked, button.destructive-action.flat:backdrop:active, button.destructive-action.flat:backdrop:checked { color: #f0d5d8; border-color: #b42c3c; background-image: image(#b42c3c); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +button.destructive-action:backdrop:disabled, button.destructive-action.flat:backdrop:disabled { color: #c9c6c3; border-color: #a5a29f; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +button.destructive-action:backdrop:disabled:active, button.destructive-action:backdrop:disabled:checked, button.destructive-action.flat:backdrop:disabled:active, button.destructive-action.flat:backdrop:disabled:checked { color: #ce7680; border-color: #b42c3c; background-image: image(#b42c3c); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +button.destructive-action.flat:backdrop, button.destructive-action.flat:disabled, button.destructive-action.flat:backdrop:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: rgba(199, 22, 43, 0.8); } + +button.destructive-action:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +button.destructive-action:disabled:active, button.destructive-action:disabled:checked { color: #e1aab1; border-color: #991121; background-image: linear-gradient(to bottom, #e9e7e6, #f1f1f0 3px, #f4f3f2 4px, #efeeed 50%, #ebeae9 50%, #e4e3e1); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.osd button.destructive-action { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(199, 22, 43, 0.5)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); } + +.osd button.destructive-action:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(199, 22, 43, 0.7)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); } + +.osd button.destructive-action:active:backdrop, .osd button.destructive-action:active, .osd button.destructive-action:checked:backdrop, .osd button.destructive-action:checked { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(#c7162b); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; outline-color: rgba(238, 238, 236, 0.3); } + +.osd button.destructive-action:disabled:backdrop, .osd button.destructive-action:disabled { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(37, 38, 33, 0.8)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; } + +.osd button.destructive-action:backdrop { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(199, 22, 43, 0.5)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; } + +.stack-switcher > button { outline-offset: -3px; } + +.stack-switcher > button > label { padding-left: 6px; padding-right: 6px; } + +.stack-switcher > button > image { padding-left: 6px; padding-right: 6px; padding-top: 3px; padding-bottom: 3px; } + +.stack-switcher > button.text-button { padding-left: 10px; padding-right: 10px; } + +.stack-switcher > button.image-button { padding-left: 2px; padding-right: 2px; } + +.stack-switcher > button.needs-attention:active > label, .stack-switcher > button.needs-attention:active > image, .stack-switcher > button.needs-attention:checked > label, .stack-switcher > button.needs-attention:checked > image { animation: none; background-image: none; } + +button.font separator, button.file separator { background-color: transparent; } + +button.font > box > box > label { font-weight: bold; } + +.primary-toolbar button { -gtk-icon-shadow: none; } + +button.circular { border-radius: 9999px; -gtk-outline-radius: 9999px; padding: 4px; /* circles instead of ellipses */ background-origin: padding-box, border-box; background-clip: padding-box, border-box; } + +button.circular label { padding: 0; } + +button.circular:not(.flat):not(.osd):not(:checked):not(:active):not(:disabled):not(:backdrop) { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); background-image: image(rgba(199, 22, 43, 0.5)), linear-gradient(to top, #b3afab 25%, #94908c 50%); border-color: transparent; } + +button.circular:hover:not(.osd):not(:checked):not(:active):not(:disabled):not(:backdrop) { color: #000000; outline-color: #94908c; border-color: #94908c; border-bottom-color: #b3afab; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); background-image: image(rgba(199, 22, 43, 0.5)), linear-gradient(to top, #b3afab 25%, #94908c 50%); border-color: transparent; } + +.stack-switcher > button.needs-attention > label, .stack-switcher > button.needs-attention > image, stacksidebar row.needs-attention > label { animation: needs_attention 150ms ease-in; background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(#bfc6b0), to(transparent)), -gtk-gradient(radial, center center, 0, center center, 0.5, to(rgba(255, 255, 255, 0.769231)), to(transparent)); background-size: 6px 6px, 6px 6px; background-repeat: no-repeat; background-position: right 3px, right 4px; } + +.stack-switcher > button.needs-attention > label:backdrop, .stack-switcher > button.needs-attention > image:backdrop, stacksidebar row.needs-attention > label:backdrop { background-size: 6px 6px, 0 0; } + +.stack-switcher > button.needs-attention > label:dir(rtl), .stack-switcher > button.needs-attention > image:dir(rtl), stacksidebar row.needs-attention > label:dir(rtl) { background-position: left 3px, left 4px; } + +.inline-toolbar toolbutton > button { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +.inline-toolbar toolbutton > button:hover { color: #000000; outline-color: #94908c; border-color: #94908c; border-bottom-color: #b3afab; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); } + +.inline-toolbar toolbutton > button:active, .inline-toolbar toolbutton > button:checked { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +.inline-toolbar toolbutton > button:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.inline-toolbar toolbutton > button:disabled:active, .inline-toolbar toolbutton > button:disabled:checked { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #e9e7e6, #f1f1f0 3px, #f4f3f2 4px, #efeeed 50%, #ebeae9 50%, #e4e3e1); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.inline-toolbar toolbutton > button:backdrop { color: #2f2f2f; border-color: #a5a29f; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.inline-toolbar toolbutton > button:backdrop:active, .inline-toolbar toolbutton > button:backdrop:checked { color: #2f2f2f; border-color: #a5a29f; background-image: image(#dddbd8); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.inline-toolbar toolbutton > button:backdrop:disabled { color: #c9c6c3; border-color: #a5a29f; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.inline-toolbar toolbutton > button:backdrop:disabled:active, .inline-toolbar toolbutton > button:backdrop:disabled:checked { color: #c9c6c3; border-color: #a5a29f; background-image: image(#dddbd8); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +toolbar.inline-toolbar toolbutton > button.flat, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry, .inline-toolbar button, .linked > button, filechooser .path-bar.linked > button, .linked:not(.vertical) > combobox > box > button.combo { border-right-style: none; border-radius: 0; -gtk-outline-radius: 0; } + +toolbar.inline-toolbar toolbutton:first-child > button.flat, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child, .inline-toolbar button:first-child, .linked > button:first-child, filechooser .path-bar.linked > button:dir(ltr):first-child, filechooser .path-bar.linked > button:dir(rtl):last-child, combobox.linked button:nth-child(2):dir(rtl), .linked:not(.vertical) > combobox:first-child > box > button.combo { border-top-left-radius: 4px; border-bottom-left-radius: 4px; -gtk-outline-top-left-radius: 4px; -gtk-outline-bottom-left-radius: 4px; } + +toolbar.inline-toolbar toolbutton:last-child > button.flat, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child, .inline-toolbar button:last-child, .linked > button:last-child, filechooser .path-bar.linked > button:dir(ltr):last-child, filechooser .path-bar.linked > button:dir(rtl):first-child, combobox.linked button:nth-child(2):dir(ltr), .linked:not(.vertical) > combobox:last-child > box > button.combo { border-right-style: solid; border-top-right-radius: 4px; border-bottom-right-radius: 4px; -gtk-outline-top-right-radius: 4px; -gtk-outline-bottom-right-radius: 4px; } + +toolbar.inline-toolbar toolbutton:only-child > button.flat, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child, .inline-toolbar button:only-child, .linked > button:only-child, filechooser .path-bar.linked > button:only-child, .linked:not(.vertical) > combobox:only-child > box > button.combo { border-style: solid; border-radius: 4px; -gtk-outline-radius: 4px; } + +.linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry, .linked.vertical > button, .linked.vertical > combobox > box > button.combo { border-style: solid solid none solid; border-radius: 0; -gtk-outline-radius: 0; } + +.linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child, .linked.vertical > button:first-child, .linked.vertical > combobox:first-child > box > button.combo { border-top-left-radius: 4px; border-top-right-radius: 4px; -gtk-outline-top-left-radius: 4px; -gtk-outline-top-right-radius: 4px; } + +.linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child, .linked.vertical > button:last-child, .linked.vertical > combobox:last-child > box > button.combo { border-bottom-style: solid; border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; -gtk-outline-bottom-left-radius: 4px; -gtk-outline-bottom-right-radius: 4px; } + +.linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child, .linked.vertical > button:only-child, .linked.vertical > combobox:only-child > box > button.combo { border-style: solid; border-radius: 4px; -gtk-outline-radius: 4px; } + +modelbutton.flat, .menuitem.button.flat, modelbutton.flat:backdrop, modelbutton.flat:backdrop:hover, .menuitem.button.flat:backdrop, .menuitem.button.flat:backdrop:hover, list row button.image-button:not(.flat), button:link, button:visited, button:link:hover, button:link:active, button:link:checked, button:visited:hover, button:visited:active, button:visited:checked, calendar.button, .scale-popup button:hover, .scale-popup button:backdrop:hover, .scale-popup button:backdrop:disabled, .scale-popup button:backdrop { background-color: transparent; background-image: none; border-color: transparent; box-shadow: inset 0 1px rgba(255, 255, 255, 0), 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +/* menu buttons */ +modelbutton.flat, .menuitem.button.flat { min-height: 26px; padding-left: 5px; padding-right: 5px; border-radius: 3px; outline-offset: -2px; } + +modelbutton.flat:hover, .menuitem.button.flat:hover { box-shadow: inset 0px 1px #7d856c, inset 0px -1px #7d856c; border-style: solid; background-image: linear-gradient(to bottom, #d3d8c7, #c9cfbb 50%, #c5cbb7 50%, #bbc2ab); background-color: #bfc6b0; color: #42453E; } + +modelbutton.flat arrow { background: none; } + +modelbutton.flat arrow:hover { background: none; } + +modelbutton.flat arrow.left { -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); } + +modelbutton.flat arrow.right { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); } + +button.color { padding: 4px; } + +button.color colorswatch:only-child { box-shadow: 0 1px rgba(255, 255, 255, 0.769231); } + +button.color colorswatch:only-child, button.color colorswatch:only-child overlay { border-radius: 0; } + +.osd button.color colorswatch:only-child { box-shadow: none; } + +.osd button.color:disabled colorswatch:only-child, .osd button.color:backdrop colorswatch:only-child, .osd button.color:active colorswatch:only-child, .osd button.color:checked colorswatch:only-child, button.color:disabled colorswatch:only-child, button.color:backdrop colorswatch:only-child, button.color:active colorswatch:only-child, button.color:checked colorswatch:only-child { box-shadow: none; } + +/* list buttons */ +/* tone down as per new designs, see issue #1473, #1748 */ +list row button.image-button:not(.flat) { border: 1px solid rgba(148, 144, 140, 0.5); } + +list row button.image-button:not(.flat):hover { color: #000000; outline-color: #94908c; border-color: #94908c; border-bottom-color: #b3afab; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); } + +list row button.image-button:not(.flat):active, list row button.image-button:not(.flat):checked { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +/********* Links * */ +button:link, button:visited, button:link > label, button:visited > label, *:link { color: #717c57; } + +button:visited, button:link > label:visited, button:visited > label:visited, *:link:visited { color: #551a8b; } + +*:selected button:visited, *:selected button:link > label:visited, *:selected button:visited > label:visited, *:selected *:link:visited { color: #4a345d; } + +button:hover:link, button:hover:visited, button:link > label:hover, button:visited > label:hover, *:link:hover { color: #8c996d; } + +*:selected button:hover:link, *:selected button:hover:visited, *:selected button:link > label:hover, *:selected button:visited > label:hover, *:selected *:link:hover { color: #494d43; } + +button:active:link, button:active:visited, button:link > label:active, button:visited > label:active, *:link:active { color: #717c57; } + +*:selected button:active:link, *:selected button:active:visited, *:selected button:link > label:active, *:selected button:visited > label:active, *:selected *:link:active { color: #4b5043; } + +button:disabled:link, button:disabled:visited, button:link > label:disabled, button:visited > label:disabled, button:disabled:backdrop:link, button:disabled:backdrop:visited, button:link > label:disabled:backdrop, button:visited > label:disabled:backdrop, *:link:disabled, *:link:disabled:backdrop { color: rgba(106, 106, 106, 0.8); } + +button:backdrop:backdrop:hover:link, button:backdrop:backdrop:hover:visited, button:link > label:backdrop:backdrop:hover, button:visited > label:backdrop:backdrop:hover, button:backdrop:backdrop:hover:selected:link, button:backdrop:backdrop:hover:selected:visited, button:link > label:backdrop:backdrop:hover:selected, button:visited > label:backdrop:backdrop:hover:selected, button:backdrop:link, button:backdrop:visited, button:link > label:backdrop, button:visited > label:backdrop, *:link:backdrop:backdrop:hover, *:link:backdrop:backdrop:hover:selected, *:link:backdrop { color: rgba(113, 124, 87, 0.9); } + +.selection-mode headerbar .subtitle:link, headerbar.selection-mode .subtitle:link, .selection-mode .titlebar .subtitle:link, .titlebar.selection-mode .subtitle:link, button:selected:link, button:selected:visited, button:link > label:selected, button:visited > label:selected, *:selected button:link, *:selected button:visited, *:selected button:link > label, *:selected button:visited > label, *:link:selected, *:selected *:link { color: #4b5043; } + +button:link, button:visited { text-shadow: none; } + +button:link:hover, button:link:active, button:link:checked, button:visited:hover, button:visited:active, button:visited:checked { text-shadow: none; } + +button:link > label, button:visited > label { text-decoration-line: underline; } + +/***************** GtkSpinButton * */ +spinbutton { font-feature-settings: "tnum"; } + +spinbutton:not(.vertical) { padding: 0; } + +spinbutton:not(.vertical) entry, .osd spinbutton:not(.vertical) entry { min-width: 28px; margin: 0; background: none; background-color: transparent; border: none; border-radius: 0; box-shadow: none; } + +spinbutton:not(.vertical) entry:backdrop:disabled { background-color: transparent; } + +spinbutton:not(.vertical) button { min-height: 16px; margin: 0; padding-bottom: 0; padding-top: 0; color: #1a1a1a; background-image: none; border-style: none none none solid; border-color: rgba(148, 144, 140, 0.3); border-radius: 0; box-shadow: none; } + +spinbutton:not(.vertical) button:dir(rtl) { border-style: none solid none none; } + +spinbutton:not(.vertical) button:hover { color: #000000; background-color: rgba(0, 0, 0, 0.05); } + +spinbutton:not(.vertical) button:disabled { color: rgba(169, 165, 162, 0.3); background-color: transparent; } + +spinbutton:not(.vertical) button:active { background-color: rgba(0, 0, 0, 0.1); box-shadow: inset 0 2px 3px -1px rgba(0, 0, 0, 0.2); } + +spinbutton:not(.vertical) button:backdrop { color: #444444; background-color: transparent; border-color: rgba(165, 162, 159, 0.3); transition: 200ms ease-out; } + +spinbutton:not(.vertical) button:backdrop:disabled { color: rgba(201, 198, 195, 0.3); background-color: transparent; background-image: none; border-style: none none none solid; } + +spinbutton:not(.vertical) button:backdrop:disabled:dir(rtl) { border-style: none solid none none; } + +spinbutton:not(.vertical) button:dir(ltr):last-child { border-radius: 0 4px 4px 0; } + +spinbutton:not(.vertical) button:dir(rtl):first-child { border-radius: 4px 0 0 4px; } + +.osd spinbutton:not(.vertical) button { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: #eeeeec; border-style: none none none solid; border-color: rgba(0, 0, 0, 0.4); border-radius: 0; box-shadow: none; -gtk-icon-shadow: 0 1px black; } + +.osd spinbutton:not(.vertical) button:dir(rtl) { border-style: none solid none none; } + +.osd spinbutton:not(.vertical) button:hover { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: #eeeeec; border-color: rgba(0, 0, 0, 0.5); background-color: rgba(238, 238, 236, 0.1); -gtk-icon-shadow: 0 1px black; box-shadow: none; } + +.osd spinbutton:not(.vertical) button:backdrop { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: #eeeeec; border-color: rgba(0, 0, 0, 0.5); -gtk-icon-shadow: none; box-shadow: none; } + +.osd spinbutton:not(.vertical) button:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: #eeeeec; border-color: rgba(0, 0, 0, 0.5); -gtk-icon-shadow: none; box-shadow: none; } + +.osd spinbutton:not(.vertical) button:dir(ltr):last-child { border-radius: 0 4px 4px 0; } + +.osd spinbutton:not(.vertical) button:dir(rtl):first-child { border-radius: 4px 0 0 4px; } + +spinbutton.vertical:disabled { color: #a9a5a2; } + +spinbutton.vertical:backdrop:disabled { color: #c9c6c3; } + +spinbutton.vertical:drop(active) { border-color: transparent; box-shadow: none; } + +spinbutton.vertical entry { min-height: 32px; min-width: 32px; padding: 0; border-radius: 0; } + +spinbutton.vertical button { min-height: 32px; min-width: 32px; padding: 0; } + +spinbutton.vertical button.up { border-radius: 4px 4px 0 0; border-style: solid solid none solid; } + +spinbutton.vertical button.down { border-radius: 0 0 4px 4px; border-style: none solid solid solid; } + +.osd spinbutton.vertical button:first-child { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(61, 63, 54, 0.8)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); } + +.osd spinbutton.vertical button:first-child:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(69, 71, 61, 0.8)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); } + +.osd spinbutton.vertical button:first-child:active { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(0, 0, 0, 0.7)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; outline-color: rgba(238, 238, 236, 0.3); } + +.osd spinbutton.vertical button:first-child:disabled { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(37, 38, 33, 0.8)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; } + +.osd spinbutton.vertical button:first-child:backdrop { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(37, 38, 33, 0.8)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; } + +treeview spinbutton:not(.vertical) { min-height: 0; border-style: none; border-radius: 0; } + +treeview spinbutton:not(.vertical) entry { min-height: 0; padding: 1px 2px; } + +/************** ComboBoxes * */ +combobox arrow { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); min-height: 16px; min-width: 16px; } + +combobox:drop(active) { box-shadow: none; } + +/************ Toolbars * */ +toolbar, .inline-toolbar, searchbar > revealer > box, .location-bar { -GtkWidget-window-dragging: true; padding: 4px; background-color: #edeceb; } + +toolbar { background-image: linear-gradient(to bottom, #f6f5f5 2px, #efeeed 50%, #edeceb 50%, #e6e5e4); padding: 2px; border-width: 1px 0 1px 0; border-radius: 0; border-style: solid; border-top-color: white; border-bottom-color: #c4c2bf; } + +.osd toolbar { background-color: transparent; } + +toolbar.osd { padding: 13px; border: none; border-radius: 5px; background-color: rgba(37, 38, 33, 0.8); } + +toolbar.osd.left, toolbar.osd.right, toolbar.osd.top, toolbar.osd.bottom { border-radius: 0; } + +toolbar.horizontal separator { margin: 0 7px 1px 6px; } + +toolbar.vertical separator { margin: 6px 1px 7px 0; } + +toolbar:not(.inline-toolbar):not(.osd) > *:not(.toggle):not(.popup) > * { margin-right: 1px; margin-bottom: 1px; } + +.inline-toolbar { padding: 3px; border-width: 0 1px 1px; border-radius: 0 0 5px 5px; } + +searchbar > revealer > box, .location-bar { border-width: 0 0 1px; padding: 3px; } + +searchbar > revealer > box { margin: -6px; padding: 6px; } + +.inline-toolbar, searchbar > revealer > box, .location-bar { border-style: solid; border-color: #94908c; background-color: #d2d0cf; } + +.inline-toolbar:backdrop, searchbar > revealer > box:backdrop, .location-bar:backdrop { border-color: #a5a29f; background-color: #d4d2d0; box-shadow: none; transition: 200ms ease-out; } + +/*************** Header bars * */ +.titlebar:not(headerbar), headerbar { padding: 0 2px; min-height: 10px; border-width: 0 0 1px; border-style: solid; border-color: #b3afab; border-radius: 0; color: #000000; background-image: linear-gradient(to bottom, #cdd3c1, #c3c9b4 50%, #bfc6b0 50%, #b4bca4); /* Darken switchbuttons for headerbars. issue #1588 */ /* hide the close button separator */ } + +.titlebar:backdrop:not(headerbar), headerbar:backdrop { background-image: linear-gradient(to bottom, #ebeae9, #e2e0df 50%, #dddbda 50%, #d4d2d0); } + +.titlebar:backdrop:not(headerbar), headerbar:backdrop { border-color: #a5a29f; background-image: linear-gradient(to bottom, #cdd3c1, #c3c9b4 50%, #bfc6b0 50%, #b4bca4); box-shadow: inset 0 1px rgba(255, 255, 255, 0.8); transition: 200ms ease-out; } + +.titlebar:backdrop:backdrop:not(headerbar), headerbar:backdrop:backdrop { background-image: linear-gradient(to bottom, #ebeae9, #e2e0df 50%, #dddbda 50%, #d4d2d0); } + +.titlebar:not(headerbar) .title, headerbar .title { padding-left: 12px; padding-right: 12px; font-weight: bold; } + +.titlebar:not(headerbar) .subtitle, headerbar .subtitle { font-size: smaller; padding-left: 12px; padding-right: 12px; } + +.titlebar:not(headerbar) stackswitcher button:checked, .titlebar:not(headerbar) button.toggle:checked, headerbar stackswitcher button:checked, headerbar button.toggle:checked { background: image(#c4c1bd); border-color: #85817d; } + +.selection-mode .titlebar:not(headerbar), .selection-mode.titlebar:not(headerbar), .selection-mode headerbar, headerbar.selection-mode { color: #42453E; border-color: #87a556; text-shadow: 0 -1px rgba(0, 0, 0, 0.5); background-image: linear-gradient(to bottom, #cdd3c1, #c3c9b4 50%, #bfc6b0 50%, #b4bca4); } + +.selection-mode .titlebar:backdrop:not(headerbar), .selection-mode.titlebar:backdrop:not(headerbar), .selection-mode headerbar:backdrop, headerbar.selection-mode:backdrop { background-image: linear-gradient(to bottom, #ebeae9, #e2e0df 50%, #dddbda 50%, #d4d2d0); } + +.selection-mode .titlebar:backdrop:not(headerbar), .selection-mode.titlebar:backdrop:not(headerbar), .selection-mode headerbar:backdrop, headerbar.selection-mode:backdrop { background-color: #93af66; background-image: none; box-shadow: inset 0 1px rgba(201, 215, 178, 0.88); } + +.selection-mode .titlebar:backdrop:not(headerbar) label, .selection-mode.titlebar:backdrop:not(headerbar) label, .selection-mode headerbar:backdrop label, headerbar.selection-mode:backdrop label { text-shadow: none; color: #42453E; } + +.selection-mode .titlebar:not(headerbar) button, .selection-mode.titlebar:not(headerbar) button, .selection-mode headerbar button, headerbar.selection-mode button { color: #000000; outline-color: #94908c; border-color: #79944d; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); min-height: 10px; } + +.selection-mode .titlebar:not(headerbar) button.flat, .selection-mode.titlebar:not(headerbar) button.flat, .selection-mode headerbar button.flat, headerbar.selection-mode button.flat { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +.selection-mode .titlebar:not(headerbar) button:hover, .selection-mode.titlebar:not(headerbar) button:hover, .selection-mode headerbar button:hover, headerbar.selection-mode button:hover { color: #000000; outline-color: #94908c; border-color: #79944d; border-bottom-color: #5e733c; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); } + +.selection-mode .titlebar:not(headerbar) button:active, .selection-mode .titlebar:not(headerbar) button:checked, .selection-mode .titlebar:not(headerbar) button.toggle:checked, .selection-mode .titlebar:not(headerbar) button.toggle:active, .selection-mode.titlebar:not(headerbar) button:active, .selection-mode.titlebar:not(headerbar) button:checked, .selection-mode.titlebar:not(headerbar) button.toggle:checked, .selection-mode.titlebar:not(headerbar) button.toggle:active, .selection-mode headerbar button:active, .selection-mode headerbar button:checked, .selection-mode headerbar button.toggle:checked, .selection-mode headerbar button.toggle:active, headerbar.selection-mode button:active, headerbar.selection-mode button:checked, headerbar.selection-mode button.toggle:checked, headerbar.selection-mode button.toggle:active { color: #000000; outline-color: #94908c; border-color: #79944d; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +.selection-mode .titlebar:not(headerbar) button:backdrop.flat, .selection-mode .titlebar:not(headerbar) button:backdrop, .selection-mode.titlebar:not(headerbar) button:backdrop.flat, .selection-mode.titlebar:not(headerbar) button:backdrop, .selection-mode headerbar button:backdrop.flat, .selection-mode headerbar button:backdrop, headerbar.selection-mode button:backdrop.flat, headerbar.selection-mode button:backdrop { color: #2f2f2f; border-color: #93af66; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); -gtk-icon-effect: none; border-color: #87a556; } + +.selection-mode .titlebar:not(headerbar) button:backdrop.flat:active, .selection-mode .titlebar:not(headerbar) button:backdrop.flat:checked, .selection-mode .titlebar:not(headerbar) button:backdrop:active, .selection-mode .titlebar:not(headerbar) button:backdrop:checked, .selection-mode.titlebar:not(headerbar) button:backdrop.flat:active, .selection-mode.titlebar:not(headerbar) button:backdrop.flat:checked, .selection-mode.titlebar:not(headerbar) button:backdrop:active, .selection-mode.titlebar:not(headerbar) button:backdrop:checked, .selection-mode headerbar button:backdrop.flat:active, .selection-mode headerbar button:backdrop.flat:checked, .selection-mode headerbar button:backdrop:active, .selection-mode headerbar button:backdrop:checked, headerbar.selection-mode button:backdrop.flat:active, headerbar.selection-mode button:backdrop.flat:checked, headerbar.selection-mode button:backdrop:active, headerbar.selection-mode button:backdrop:checked { color: #2f2f2f; border-color: #90ad62; background-image: image(#90ad62); box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #87a556; } + +.selection-mode .titlebar:not(headerbar) button:backdrop.flat:disabled, .selection-mode .titlebar:not(headerbar) button:backdrop:disabled, .selection-mode.titlebar:not(headerbar) button:backdrop.flat:disabled, .selection-mode.titlebar:not(headerbar) button:backdrop:disabled, .selection-mode headerbar button:backdrop.flat:disabled, .selection-mode headerbar button:backdrop:disabled, headerbar.selection-mode button:backdrop.flat:disabled, headerbar.selection-mode button:backdrop:disabled { color: #6a7a51; border-color: #a3bb7d; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #87a556; } + +.selection-mode .titlebar:not(headerbar) button:backdrop.flat:disabled:active, .selection-mode .titlebar:not(headerbar) button:backdrop.flat:disabled:checked, .selection-mode .titlebar:not(headerbar) button:backdrop:disabled:active, .selection-mode .titlebar:not(headerbar) button:backdrop:disabled:checked, .selection-mode.titlebar:not(headerbar) button:backdrop.flat:disabled:active, .selection-mode.titlebar:not(headerbar) button:backdrop.flat:disabled:checked, .selection-mode.titlebar:not(headerbar) button:backdrop:disabled:active, .selection-mode.titlebar:not(headerbar) button:backdrop:disabled:checked, .selection-mode headerbar button:backdrop.flat:disabled:active, .selection-mode headerbar button:backdrop.flat:disabled:checked, .selection-mode headerbar button:backdrop:disabled:active, .selection-mode headerbar button:backdrop:disabled:checked, headerbar.selection-mode button:backdrop.flat:disabled:active, headerbar.selection-mode button:backdrop.flat:disabled:checked, headerbar.selection-mode button:backdrop:disabled:active, headerbar.selection-mode button:backdrop:disabled:checked { color: #5e7040; border-color: #90ad62; background-image: image(#90ad62); box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #87a556; } + +.selection-mode .titlebar:not(headerbar) button.flat:backdrop, .selection-mode .titlebar:not(headerbar) button.flat:disabled, .selection-mode .titlebar:not(headerbar) button.flat:backdrop:disabled, .selection-mode.titlebar:not(headerbar) button.flat:backdrop, .selection-mode.titlebar:not(headerbar) button.flat:disabled, .selection-mode.titlebar:not(headerbar) button.flat:backdrop:disabled, .selection-mode headerbar button.flat:backdrop, .selection-mode headerbar button.flat:disabled, .selection-mode headerbar button.flat:backdrop:disabled, headerbar.selection-mode button.flat:backdrop, headerbar.selection-mode button.flat:disabled, headerbar.selection-mode button.flat:backdrop:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +.selection-mode .titlebar:not(headerbar) button:disabled, .selection-mode.titlebar:not(headerbar) button:disabled, .selection-mode headerbar button:disabled, headerbar.selection-mode button:disabled { color: #a9a5a2; border-color: #79944d; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.selection-mode .titlebar:not(headerbar) button:disabled:active, .selection-mode .titlebar:not(headerbar) button:disabled:checked, .selection-mode.titlebar:not(headerbar) button:disabled:active, .selection-mode.titlebar:not(headerbar) button:disabled:checked, .selection-mode headerbar button:disabled:active, .selection-mode headerbar button:disabled:checked, headerbar.selection-mode button:disabled:active, headerbar.selection-mode button:disabled:checked { color: #3a4527; border-color: #79944d; background-image: linear-gradient(to bottom, #e9e7e6, #f1f1f0 3px, #f4f3f2 4px, #efeeed 50%, #ebeae9 50%, #e4e3e1); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.selection-mode .titlebar:not(headerbar) button.suggested-action, .selection-mode.titlebar:not(headerbar) button.suggested-action, .selection-mode headerbar button.suggested-action, headerbar.selection-mode button.suggested-action { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); border-color: #87a556; } + +.selection-mode .titlebar:not(headerbar) button.suggested-action:hover, .selection-mode.titlebar:not(headerbar) button.suggested-action:hover, .selection-mode headerbar button.suggested-action:hover, headerbar.selection-mode button.suggested-action:hover { color: #000000; outline-color: #94908c; border-color: #94908c; border-bottom-color: #b3afab; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); border-color: #87a556; } + +.selection-mode .titlebar:not(headerbar) button.suggested-action:active, .selection-mode.titlebar:not(headerbar) button.suggested-action:active, .selection-mode headerbar button.suggested-action:active, headerbar.selection-mode button.suggested-action:active { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; border-color: #87a556; } + +.selection-mode .titlebar:not(headerbar) button.suggested-action:disabled, .selection-mode.titlebar:not(headerbar) button.suggested-action:disabled, .selection-mode headerbar button.suggested-action:disabled, headerbar.selection-mode button.suggested-action:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #87a556; } + +.selection-mode .titlebar:not(headerbar) button.suggested-action:backdrop, .selection-mode.titlebar:not(headerbar) button.suggested-action:backdrop, .selection-mode headerbar button.suggested-action:backdrop, headerbar.selection-mode button.suggested-action:backdrop { color: #2f2f2f; border-color: #a5a29f; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #87a556; } + +.selection-mode .titlebar:not(headerbar) button.suggested-action:backdrop:disabled, .selection-mode.titlebar:not(headerbar) button.suggested-action:backdrop:disabled, .selection-mode headerbar button.suggested-action:backdrop:disabled, headerbar.selection-mode button.suggested-action:backdrop:disabled { color: #c9c6c3; border-color: #a5a29f; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #87a556; } + +.selection-mode .titlebar:not(headerbar) .selection-menu:backdrop, .selection-mode .titlebar:not(headerbar) .selection-menu, .selection-mode.titlebar:not(headerbar) .selection-menu:backdrop, .selection-mode.titlebar:not(headerbar) .selection-menu, .selection-mode headerbar .selection-menu:backdrop, .selection-mode headerbar .selection-menu, headerbar.selection-mode .selection-menu:backdrop, headerbar.selection-mode .selection-menu { border-color: rgba(147, 175, 102, 0); background-color: rgba(147, 175, 102, 0); background-image: none; box-shadow: none; min-height: 20px; padding: 6px 10px; } + +.selection-mode .titlebar:not(headerbar) .selection-menu:backdrop arrow, .selection-mode .titlebar:not(headerbar) .selection-menu arrow, .selection-mode.titlebar:not(headerbar) .selection-menu:backdrop arrow, .selection-mode.titlebar:not(headerbar) .selection-menu arrow, .selection-mode headerbar .selection-menu:backdrop arrow, .selection-mode headerbar .selection-menu arrow, headerbar.selection-mode .selection-menu:backdrop arrow, headerbar.selection-mode .selection-menu arrow { -GtkArrow-arrow-scaling: 1; } + +.selection-mode .titlebar:not(headerbar) .selection-menu:backdrop .arrow, .selection-mode .titlebar:not(headerbar) .selection-menu .arrow, .selection-mode.titlebar:not(headerbar) .selection-menu:backdrop .arrow, .selection-mode.titlebar:not(headerbar) .selection-menu .arrow, .selection-mode headerbar .selection-menu:backdrop .arrow, .selection-mode headerbar .selection-menu .arrow, headerbar.selection-mode .selection-menu:backdrop .arrow, headerbar.selection-mode .selection-menu .arrow { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); color: rgba(66, 69, 62, 0.5); -gtk-icon-shadow: none; } + +.tiled .titlebar:backdrop:not(headerbar), .tiled .titlebar:not(headerbar), .tiled-top .titlebar:backdrop:not(headerbar), .tiled-top .titlebar:not(headerbar), .tiled-right .titlebar:backdrop:not(headerbar), .tiled-right .titlebar:not(headerbar), .tiled-bottom .titlebar:backdrop:not(headerbar), .tiled-bottom .titlebar:not(headerbar), .tiled-left .titlebar:backdrop:not(headerbar), .tiled-left .titlebar:not(headerbar), .maximized .titlebar:backdrop:not(headerbar), .maximized .titlebar:not(headerbar), .fullscreen .titlebar:backdrop:not(headerbar), .fullscreen .titlebar:not(headerbar), .tiled headerbar:backdrop, .tiled headerbar, .tiled-top headerbar:backdrop, .tiled-top headerbar, .tiled-right headerbar:backdrop, .tiled-right headerbar, .tiled-bottom headerbar:backdrop, .tiled-bottom headerbar, .tiled-left headerbar:backdrop, .tiled-left headerbar, .maximized headerbar:backdrop, .maximized headerbar, .fullscreen headerbar:backdrop, .fullscreen headerbar { border-radius: 0; } + +.default-decoration.titlebar:not(headerbar), headerbar.default-decoration { min-height: 28px; padding: 4px; } + +.default-decoration.titlebar:not(headerbar) button.titlebutton, headerbar.default-decoration button.titlebutton { min-height: 26px; min-width: 26px; margin: 0; padding: 0; } + +.titlebar:not(headerbar) separator.titlebutton, headerbar separator.titlebutton { opacity: 0; } + +.solid-csd .titlebar:backdrop:dir(rtl):not(headerbar), .solid-csd .titlebar:backdrop:dir(ltr):not(headerbar), .solid-csd .titlebar:dir(rtl):not(headerbar), .solid-csd .titlebar:dir(ltr):not(headerbar), .solid-csd headerbar:backdrop:dir(rtl), .solid-csd headerbar:backdrop:dir(ltr), .solid-csd headerbar:dir(rtl), .solid-csd headerbar:dir(ltr) { margin-left: -1px; margin-right: -1px; margin-top: -1px; border-radius: 0; box-shadow: none; } + +headerbar { color: #000000; } + +headerbar entry, headerbar spinbutton, headerbar separator:not(.sidebar), headerbar button { margin-top: 2px; margin-bottom: 2px; } + +headerbar switch { margin-top: 10px; margin-bottom: 10px; } + +headerbar.titlebar headerbar:not(.titlebar) { background: none; box-shadow: none; } + +.background .titlebar:backdrop, .background .titlebar { border-top-left-radius: 7px; border-top-right-radius: 7px; } + +.background.tiled .titlebar:backdrop, .background.tiled .titlebar, .background.tiled-top .titlebar:backdrop, .background.tiled-top .titlebar, .background.tiled-right .titlebar:backdrop, .background.tiled-right .titlebar, .background.tiled-bottom .titlebar:backdrop, .background.tiled-bottom .titlebar, .background.tiled-left .titlebar:backdrop, .background.tiled-left .titlebar, .background.maximized .titlebar:backdrop, .background.maximized .titlebar, .background.solid-csd .titlebar:backdrop, .background.solid-csd .titlebar { border-top-left-radius: 0; border-top-right-radius: 0; } + +window separator:first-child + headerbar:backdrop, window separator:first-child + headerbar, window headerbar:first-child:backdrop, window headerbar:first-child { border-top-left-radius: 7px; } + +window headerbar:last-child:backdrop, window headerbar:last-child { border-top-right-radius: 7px; } + +window stack headerbar:first-child:backdrop, window stack headerbar:first-child, window stack headerbar:last-child:backdrop, window stack headerbar:last-child { border-top-left-radius: 7px; border-top-right-radius: 7px; } + +window.tiled headerbar, window.tiled headerbar:first-child, window.tiled headerbar:last-child, window.tiled headerbar:only-child, window.tiled headerbar:backdrop, window.tiled headerbar:backdrop:first-child, window.tiled headerbar:backdrop:last-child, window.tiled headerbar:backdrop:only-child, window.tiled-top headerbar, window.tiled-top headerbar:first-child, window.tiled-top headerbar:last-child, window.tiled-top headerbar:only-child, window.tiled-top headerbar:backdrop, window.tiled-top headerbar:backdrop:first-child, window.tiled-top headerbar:backdrop:last-child, window.tiled-top headerbar:backdrop:only-child, window.tiled-right headerbar, window.tiled-right headerbar:first-child, window.tiled-right headerbar:last-child, window.tiled-right headerbar:only-child, window.tiled-right headerbar:backdrop, window.tiled-right headerbar:backdrop:first-child, window.tiled-right headerbar:backdrop:last-child, window.tiled-right headerbar:backdrop:only-child, window.tiled-bottom headerbar, window.tiled-bottom headerbar:first-child, window.tiled-bottom headerbar:last-child, window.tiled-bottom headerbar:only-child, window.tiled-bottom headerbar:backdrop, window.tiled-bottom headerbar:backdrop:first-child, window.tiled-bottom headerbar:backdrop:last-child, window.tiled-bottom headerbar:backdrop:only-child, window.tiled-left headerbar, window.tiled-left headerbar:first-child, window.tiled-left headerbar:last-child, window.tiled-left headerbar:only-child, window.tiled-left headerbar:backdrop, window.tiled-left headerbar:backdrop:first-child, window.tiled-left headerbar:backdrop:last-child, window.tiled-left headerbar:backdrop:only-child, window.maximized headerbar, window.maximized headerbar:first-child, window.maximized headerbar:last-child, window.maximized headerbar:only-child, window.maximized headerbar:backdrop, window.maximized headerbar:backdrop:first-child, window.maximized headerbar:backdrop:last-child, window.maximized headerbar:backdrop:only-child, window.fullscreen headerbar, window.fullscreen headerbar:first-child, window.fullscreen headerbar:last-child, window.fullscreen headerbar:only-child, window.fullscreen headerbar:backdrop, window.fullscreen headerbar:backdrop:first-child, window.fullscreen headerbar:backdrop:last-child, window.fullscreen headerbar:backdrop:only-child, window.solid-csd headerbar, window.solid-csd headerbar:first-child, window.solid-csd headerbar:last-child, window.solid-csd headerbar:only-child, window.solid-csd headerbar:backdrop, window.solid-csd headerbar:backdrop:first-child, window.solid-csd headerbar:backdrop:last-child, window.solid-csd headerbar:backdrop:only-child { border-top-left-radius: 0; border-top-right-radius: 0; } + +window.csd > .titlebar:not(headerbar) { padding: 0; background-color: transparent; background-image: none; border-style: none; border-color: transparent; box-shadow: none; } + +.titlebar:not(headerbar) separator { background-color: #94908c; } + +window.devel headerbar.titlebar:not(.selection-mode) { background: #edeceb cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, linear-gradient(to right, transparent 65%, rgba(191, 198, 176, 0.2)), linear-gradient(to top, #cecbc8, #d5d3d0 3px, #e3e2e0); } + +window.devel headerbar.titlebar:not(.selection-mode):backdrop { background: #edeceb cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, image(#edeceb); /* background-color would flash */ } + +/************ Pathbars * */ +.path-bar button.text-button, .path-bar button.image-button, .path-bar button { padding-left: 4px; padding-right: 4px; } + +.path-bar button.text-button.image-button label { padding-left: 0; padding-right: 0; } + +.path-bar button.text-button.image-button label:last-child, .path-bar button label:last-child { padding-right: 8px; } + +.path-bar button.text-button.image-button label:first-child, .path-bar button label:first-child { padding-left: 8px; } + +.path-bar button image { padding-left: 4px; padding-right: 4px; } + +.path-bar button.slider-button { padding-left: 0; padding-right: 0; } + +/************** Tree Views * */ +treeview.view { border-left-color: gray; border-top-color: #edeceb; } + +* { -GtkTreeView-horizontal-separator: 4; -GtkTreeView-grid-line-width: 1; -GtkTreeView-grid-line-pattern: ''; -GtkTreeView-tree-line-width: 1; -GtkTreeView-tree-line-pattern: ''; -GtkTreeView-expander-size: 16; } + +treeview.view:selected:focus, treeview.view:selected { border-radius: 0; color: #42453E; } + +treeview.view:selected:backdrop, treeview.view:selected { border-left-color: #818577; border-top-color: rgba(0, 0, 0, 0.1); } + +treeview.view:disabled { color: #a9a5a2; } + +treeview.view:disabled:selected { color: #8d9282; } + +treeview.view:disabled:selected:backdrop { color: #d1d6c7; } + +treeview.view:disabled:backdrop { color: #c9c6c3; } + +treeview.view.separator { min-height: 2px; color: #edeceb; } + +treeview.view.separator:backdrop { color: rgba(237, 236, 235, 0.1); } + +treeview.view:backdrop { border-left-color: #8e8e8d; border-top: #edeceb; } + +treeview.view:drop(active) { border-style: solid none; border-width: 1px; border-color: #848c71; } + +treeview.view:drop(active).after { border-top-style: none; } + +treeview.view:drop(active).before { border-bottom-style: none; } + +treeview.view.expander { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); color: #5f5f5f; } + +treeview.view.expander:dir(rtl) { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); } + +treeview.view.expander:hover { color: #1a1a1a; } + +treeview.view.expander:selected { color: #686c60; } + +treeview.view.expander:selected:hover { color: #42453E; } + +treeview.view.expander:selected:backdrop { color: #eaece5; } + +treeview.view.expander:checked { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +treeview.view.expander:backdrop { color: #6d6d6d; } + +treeview.view.progressbar { color: #ffffff; background-color: #4893f2; background-image: image(#4893f2); box-shadow: none; } + +treeview.view.progressbar:selected:focus, treeview.view.progressbar:selected { color: #bfc6b0; background-image: image(#ffffff); } + +treeview.view.progressbar:selected:focus:backdrop, treeview.view.progressbar:selected:backdrop { color: #bfc6b0; background-color: #fcfcfc; } + +treeview.view.progressbar:backdrop { color: #fcfcfc; background-image: none; box-shadow: none; } + +treeview.view.trough { background-color: rgba(0, 0, 0, 0.1); } + +treeview.view.trough:selected:focus, treeview.view.trough:selected { background-color: rgba(66, 69, 62, 0.3); } + +treeview.view header button { color: #4d4d4d; background-color: #ffffff; font-weight: bold; text-shadow: none; box-shadow: none; } + +treeview.view header button:hover { color: #272727; box-shadow: none; transition: none; } + +treeview.view header button:active { color: #000000; transition: none; } + +treeview.view button.dnd:active, treeview.view button.dnd:selected, treeview.view button.dnd:hover, treeview.view button.dnd, treeview.view header.button.dnd:active, treeview.view header.button.dnd:selected, treeview.view header.button.dnd:hover, treeview.view header.button.dnd { padding: 0 6px; color: #ffffff; background-image: none; background-color: #bfc6b0; border-style: none; border-radius: 0; box-shadow: inset 0 0 0 1px #ffffff; text-shadow: none; transition: none; } + +treeview.view acceleditor > label { background-color: #bfc6b0; } + +treeview.view header button, treeview.view header button:hover, treeview.view header button:active { padding: 0 6px; background-image: linear-gradient(to bottom, #f8f8f7, #f1f1f0 50%, #edeceb 50%, #e4e3e1); border-style: none solid solid none; border-color: #94908c; border-radius: 0; text-shadow: none; background-color: #f8f8f7; } + +treeview.view header button:disabled { border-color: #edeceb; background-image: none; } + +treeview.view header button:backdrop { color: #8e8e8d; border-color: #edeceb; border-style: none solid solid none; background-image: none; background-color: #fcfcfc; } + +treeview.view header button:backdrop:disabled { border-color: #edeceb; background-image: none; } + +treeview.view header button:last-child:backdrop, treeview.view header button:last-child { border-right-style: none; } + +/********* Menus * */ +menubar, .menubar { -GtkWidget-window-dragging: true; padding: 0px; box-shadow: inset 0 -1px rgba(0, 0, 0, 0.1); background-image: linear-gradient(to bottom, #ebeae9, #e9e7e6 50%, #e4e3e1); } + +menubar:backdrop, .menubar:backdrop { background-color: #edeceb; } + +menubar > menuitem, .menubar > menuitem { min-height: 16px; padding: 4px 8px; border-width: 1px 1px 0px; border-color: transparent; border-style: solid; } + +menubar > menuitem menu:dir(rtl), menubar > menuitem menu:dir(ltr), .menubar > menuitem menu:dir(rtl), .menubar > menuitem menu:dir(ltr) { border-radius: 0; padding: 0; } + +menubar > menuitem:hover, .menubar > menuitem:hover { border-width: 1px 1px 0px; border-color: #7d856c; border-style: solid; color: #717c57; background-image: linear-gradient(to bottom, #d3d8c7, #c9cfbb 50%, #c5cbb7 50%, #bbc2ab); } + +menubar > menuitem:disabled, .menubar > menuitem:disabled { color: #a9a5a2; box-shadow: none; } + +menubar .csd.popup decoration, .menubar .csd.popup decoration { border-radius: 0; } + +.background.popup { background-color: transparent; } + +menu, .menu, .context-menu { margin: 4px; padding: 4px 0px; background-color: white; border: 1px solid #94908c; } + +.csd menu, .csd .menu, .csd .context-menu { border: none; border-radius: 2px; } + +menu:backdrop, .menu:backdrop, .context-menu:backdrop { background-color: #fcfcfc; } + +menu menuitem, .menu menuitem, .context-menu menuitem { min-height: 16px; min-width: 40px; padding: 4px 6px; text-shadow: none; } + +menu menuitem:hover, .menu menuitem:hover, .context-menu menuitem:hover { color: #42453E; background-color: #bfc6b0; box-shadow: inset 0px 1px #7d856c, inset 0px -1px #7d856c; border-style: solid; background-image: linear-gradient(to bottom, #d3d8c7, #c9cfbb 50%, #c5cbb7 50%, #bbc2ab); } + +menu menuitem:disabled, .menu menuitem:disabled, .context-menu menuitem:disabled { color: #a9a5a2; } + +menu menuitem:disabled:backdrop, .menu menuitem:disabled:backdrop, .context-menu menuitem:disabled:backdrop { color: #c9c6c3; } + +menu menuitem:backdrop, menu menuitem:backdrop:hover, .menu menuitem:backdrop, .menu menuitem:backdrop:hover, .context-menu menuitem:backdrop, .context-menu menuitem:backdrop:hover { color: #2f2f2f; background-color: transparent; } + +menu menuitem arrow, .menu menuitem arrow, .context-menu menuitem arrow { min-height: 16px; min-width: 16px; } + +menu menuitem arrow:dir(ltr), .menu menuitem arrow:dir(ltr), .context-menu menuitem arrow:dir(ltr) { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); margin-left: 10px; } + +menu menuitem arrow:dir(rtl), .menu menuitem arrow:dir(rtl), .context-menu menuitem arrow:dir(rtl) { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); margin-right: 10px; } + +menu menuitem label:dir(rtl), menu menuitem label:dir(ltr), .menu menuitem label:dir(rtl), .menu menuitem label:dir(ltr), .context-menu menuitem label:dir(rtl), .context-menu menuitem label:dir(ltr) { color: inherit; } + +menu > arrow, .menu > arrow, .context-menu > arrow { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; min-height: 16px; min-width: 16px; padding: 4px; background-color: white; border-radius: 0; } + +menu > arrow.top, .menu > arrow.top, .context-menu > arrow.top { margin-top: -4px; border-bottom: 1px solid #e6e6e6; border-top-right-radius: 2px; border-top-left-radius: 2px; -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); } + +menu > arrow.bottom, .menu > arrow.bottom, .context-menu > arrow.bottom { margin-top: 8px; margin-bottom: -12px; border-top: 1px solid #e6e6e6; border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +menu > arrow:hover, .menu > arrow:hover, .context-menu > arrow:hover { background-color: #e6e6e6; } + +menu > arrow:backdrop, .menu > arrow:backdrop, .context-menu > arrow:backdrop { background-color: #fcfcfc; } + +menu > arrow:disabled, .menu > arrow:disabled, .context-menu > arrow:disabled { color: transparent; background-color: transparent; border-color: transparent; } + +menuitem accelerator { color: alpha(currentColor,0.55); } + +menuitem check, menuitem radio { min-height: 16px; min-width: 16px; } + +menuitem check:dir(ltr), menuitem radio:dir(ltr) { margin-right: 7px; } + +menuitem check:dir(rtl), menuitem radio:dir(rtl) { margin-left: 7px; } + +/*************** Popovers * */ +popover.background { padding: 2px; background-color: white; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); } + +.csd popover.background, popover.background { border: 1px solid #94908c; border-radius: 2px; } + +.csd popover.background { background-clip: padding-box; border-color: #94908c; } + +popover.background:backdrop { background-color: #edeceb; box-shadow: none; } + +popover.background > list, popover.background > .view, popover.background > iconview, popover.background > toolbar { border-style: none; background-color: transparent; } + +.csd popover.background.touch-selection, .csd popover.background.magnifier, popover.background.touch-selection, popover.background.magnifier { border: 1px solid rgba(255, 255, 255, 0.1); } + +popover.background separator { margin: 3px; } + +popover.background list separator { margin: 0px; } + +/************* Notebooks * */ +notebook > header.top { padding-top: 1px; box-shadow: 0px -1px #edeceb, 0px -2px #edeceb, 1px 0px #edeceb, -1px 0px #edeceb; border-top-color: #edeceb; } + +notebook > header.bottom { padding-bottom: 2px; box-shadow: 0px 1px #edeceb, 0px 2px #edeceb, 1px 0px #edeceb, -1px 0px #edeceb; border-bottom-color: #edeceb; } + +notebook > header.left { padding-left: 3px; box-shadow: 0px 1px #edeceb, 0px -1px #edeceb, 1px 0px #edeceb, -1px 0px #edeceb; border-left-color: #edeceb; } + +notebook > header.right { padding-right: 3px; box-shadow: 0px 1px #edeceb, 0px -1px #edeceb, 1px 0px #edeceb, -1px 0px #edeceb; border-right-color: #edeceb; } + +notebook > header { padding: 1px; border-color: #94908c; border-width: 1px; background-color: #c0bebc; } + +notebook > header:backdrop { border-color: #a5a29f; background-color: #d4d2d0; } + +notebook > header tabs { margin: -1px; } + +notebook > header.top { border-bottom-style: solid; } + +notebook > header.top > tabs { margin-bottom: -2px; margin-top: 2px; } + +notebook > header.top > tabs > tab { background-image: linear-gradient(to bottom, #f1f1f0, #c0bdba); box-shadow: 0px -1px #94908c, 1px 0px #94908c, -1px 0px #94908c, inset 0px -1px #94908c; border-top-left-radius: 3px; border-top-right-radius: 3px; } + +notebook > header.top > tabs > tab:checked { background-image: linear-gradient(to bottom, #979f84, #d3d8c7 3px, #848680 5px, #fefefe 5px, #f4f4f3); box-shadow: 0px -1px #848680, 1px 0px #94908c, -1px 0px #94908c; } + +notebook > header.bottom { border-top-style: solid; } + +notebook > header.bottom > tabs { margin-top: -2px; margin-bottom: 2px; } + +notebook > header.bottom > tabs > tab { background-image: linear-gradient(to top, #f1f1f0, #c0bdba); box-shadow: 0px 1px #94908c, 1px 0px #94908c, -1px 0px #94908c, inset 0px 1px #94908c; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; } + +notebook > header.bottom > tabs > tab:checked { background-image: linear-gradient(to top, #979f84, #d3d8c7 3px, #848680 5px, #fefefe 5px, #f4f4f3); box-shadow: 0px 1px #848680, 1px 0px #94908c, -1px 0px #94908c; } + +notebook > header.left { border-right-style: solid; } + +notebook > header.left > tabs { margin-right: -2px; } + +notebook > header.left > tabs > tab { background-image: linear-gradient(to right, #f1f1f0, #c0bdba); box-shadow: 0px 1px #94908c, 0px -1px #94908c, -1px 0px #94908c, inset -1px 0px #94908c; border-top-left-radius: 3px; border-bottom-left-radius: 3px; } + +notebook > header.left > tabs > tab:checked { background-image: linear-gradient(to right, #979f84, #d3d8c7 3px, #848680 5px, #fefefe 5px, #f4f4f3); box-shadow: -1px 0px #848680, 0px -1px #94908c, 0px 1px #94908c; } + +notebook > header.right { border-left-style: solid; } + +notebook > header.right > tabs { margin-left: -2px; } + +notebook > header.right > tabs > tab { background-image: linear-gradient(to left, #f1f1f0, #c0bdba); box-shadow: 0px 1px #94908c, 0px -1px #94908c, 1px 0px #94908c, inset 1px 0px #94908c; border-top-right-radius: 3px; border-bottom-right-radius: 3px; } + +notebook > header.right > tabs > tab:checked { background-image: linear-gradient(to left, #979f84, #d3d8c7 3px, #848680 5px, #fefefe 5px, #f4f4f3); box-shadow: 1px 0px #848680, 0px -1px #94908c, 0px 1px #94908c; } + +notebook > header.top > tabs > arrow { border-top-style: none; } + +notebook > header.bottom > tabs > arrow { border-bottom-style: none; } + +notebook > header.top > tabs > arrow, notebook > header.bottom > tabs > arrow { margin-left: -5px; margin-right: -5px; padding-left: 4px; padding-right: 4px; } + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); } + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); } + +notebook > header.left > tabs > arrow { border-left-style: none; } + +notebook > header.right > tabs > arrow { border-right-style: none; } + +notebook > header.left > tabs > arrow, notebook > header.right > tabs > arrow { margin-top: -5px; margin-bottom: -5px; padding-top: 4px; padding-bottom: 4px; } + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); } + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +notebook > header > tabs > arrow { min-height: 16px; min-width: 16px; border-radius: 0; } + +notebook > header > tabs > arrow:hover:not(:active):not(:backdrop) { background-clip: padding-box; background-image: none; background-color: rgba(255, 255, 255, 0.3); border-color: transparent; box-shadow: none; } + +notebook > header > tabs > arrow:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +notebook > header tab { min-height: 22px; min-width: 22px; padding: 3px 12px; outline-offset: -5px; color: #000000; font-weight: normal; border-width: 0px; border-color: transparent; } + +notebook > header tab:hover { color: #000000; background-color: #e3e2e0; } + +notebook > header tab:hover.reorderable-page { border-color: rgba(148, 144, 140, 0.3); background-color: rgba(237, 236, 235, 0.2); } + +notebook > header tab:backdrop { color: #7b7b7a; } + +notebook > header tab:backdrop.reorderable-page { border-color: transparent; background-color: transparent; } + +notebook > header tab:checked { color: #000000; } + +notebook > header tab:checked.reorderable-page { border-color: rgba(148, 144, 140, 0.5); background-color: rgba(237, 236, 235, 0.5); } + +notebook > header tab:checked.reorderable-page:hover { background-color: rgba(237, 236, 235, 0.7); } + +notebook > header tab:backdrop:checked { color: #2f2f2f; } + +notebook > header tab:backdrop:checked.reorderable-page { border-color: #a5a29f; background-color: #edeceb; } + +notebook > header tab button.flat { padding: 0; margin-top: 4px; margin-bottom: 4px; min-width: 20px; min-height: 20px; } + +notebook > header tab button.flat:hover { color: currentColor; } + +notebook > header tab button.flat, notebook > header tab button.flat:backdrop { color: alpha(currentColor,0.3); } + +notebook > header tab button.flat:last-child { margin-left: 4px; margin-right: -4px; } + +notebook > header tab button.flat:first-child { margin-left: -4px; margin-right: 4px; } + +notebook > header.top tabs, notebook > header.bottom tabs { padding-left: 0px; padding-right: 0px; } + +notebook > header.top tabs:not(:only-child), notebook > header.bottom tabs:not(:only-child) { margin-left: 1px; margin-right: 1px; } + +notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child { margin-left: 0px; } + +notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child { margin-right: -1px; } + +notebook > header.top tabs tab, notebook > header.bottom tabs tab { margin-left: 0px; margin-right: 0px; } + +notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page { border-style: none solid; } + +notebook > header.left tabs, notebook > header.right tabs { padding-top: 0px; padding-bottom: 0px; } + +notebook > header.left tabs:not(:only-child), notebook > header.right tabs:not(:only-child) { margin-top: 0px; margin-bottom: 0px; } + +notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child { margin-top: 0px; } + +notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child { margin-bottom: -1px; } + +notebook > header.left tabs tab, notebook > header.right tabs tab { margin-top: 0px; margin-bottom: 0px; } + +notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page { border-style: solid none; } + +notebook > header.top tab { padding-bottom: 4px; } + +notebook > header.bottom tab { padding-top: 4px; } + +notebook > stack:not(:only-child) { background-color: #f4f4f3; } + +notebook > stack:not(:only-child):backdrop { background-color: #f4f4f3; } + +/************** Scrollbars * */ +scrollbar { background-color: #bebdbc; transition: 300ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +* { -GtkScrollbar-has-backward-stepper: true; -GtkScrollbar-has-forward-stepper: true; } + +scrollbar.top { border-bottom: 1px solid #94908c; } + +scrollbar.bottom { border-top: 1px solid #94908c; } + +scrollbar.left { border-right: 1px solid #94908c; } + +scrollbar.right { border-left: 1px solid #94908c; } + +scrollbar:backdrop { background-color: #e6e4e3; border-color: #a5a29f; transition: 200ms ease-out; } + +scrollbar.horizontal trough { min-height: 14px; border-radius: 0px; border-width: 0px 1px 0px 1px; border-image: none; background-image: linear-gradient(to bottom, #cdcbc9, #d6d4d2 50%); } + +scrollbar.vertical trough { min-height: 14px; border-radius: 0px; border-width: 0px 1px 0px 1px; border-image: none; background-image: linear-gradient(to right, #cdcbc9, #d6d4d2 50%); } + +scrollbar.horizontal slider { background-position: center center; background-image: url("assets/slider-horz-grip.png"), linear-gradient(to bottom, rgba(189, 196, 174, 0.99) 1px, rgba(187, 194, 171, 0.99) 50%, rgba(181, 188, 165, 0.99) 50%, rgba(171, 179, 153, 0.99) 95%); } + +scrollbar.vertical slider { background-position: center center; background-image: url("assets/slider-vert-grip.png"), linear-gradient(to right, rgba(189, 196, 174, 0.99) 1px, rgba(187, 194, 171, 0.99) 50%, rgba(181, 188, 165, 0.99) 50%, rgba(171, 179, 153, 0.99) 95%); } + +scrollbar.vertical slider:hover { background-position: center center; background-image: url("assets/slider-vert-grip.png"), linear-gradient(to right, #dbdfd1, #cbd0bd 1px, #c3c9b5 50%, #bfc6b0 50%, #b7bea7 95%, #dbdfd1); } + +scrollbar.horizontal slider:hover { background-position: center center; background-image: url("assets/slider-horz-grip.png"), linear-gradient(to bottom, #dbdfd1, #cbd0bd 1px, #c3c9b5 50%, #bfc6b0 50%, #b7bea7 95%, #dbdfd1); } + +scrollbar slider { background-repeat: no-repeat; background-position: center center; min-width: 14px; min-height: 14px; border: 1px solid #7f8b61; border-radius: 0px; } + +scrollbar slider:hover { background-color: #2f2f2f; } + +scrollbar slider:hover:active { background-color: #a7b092; } + +scrollbar slider:backdrop { background-color: #a1a0a0; } + +scrollbar slider:disabled { background-color: transparent; } + +scrollbar.fine-tune slider { min-width: 4px; min-height: 4px; } + +scrollbar.fine-tune.horizontal slider { border-width: 5px 4px; } + +scrollbar.fine-tune.vertical slider { border-width: 4px 5px; } + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { border-color: transparent; opacity: 0.4; background-color: transparent; } + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) slider { margin: 0; min-width: 3px; min-height: 3px; background-color: #000000; border: 1px solid white; } + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { min-width: 5px; min-height: 5px; background-color: #000000; background-clip: padding-box; border-radius: 100%; border: 1px solid white; -gtk-icon-source: none; } + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal slider { margin: 0 0px; min-width: 40px; } + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { margin: 1px 2px; min-width: 5px; } + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical slider { margin: 0px 0; min-height: 40px; } + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { margin: 2px 1px; min-height: 5px; } + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { opacity: 0.8; } + +scrollbar.horizontal slider { min-width: 40px; } + +scrollbar.vertical slider { min-height: 40px; } + +scrollbar button { padding: 0; min-width: 13px; min-height: 13px; border-style: none; border-radius: 0; transition-property: min-height, min-width, color; border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: #5f5e5e; } + +scrollbar button:hover { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: #2f2f2f; } + +scrollbar button:active, scrollbar button:checked { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: #a7b092; } + +scrollbar button:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: rgba(95, 94, 94, 0.2); } + +scrollbar button:backdrop { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: #a1a0a0; } + +scrollbar button:backdrop:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; color: rgba(161, 160, 160, 0.2); } + +scrollbar.vertical button.down { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +scrollbar.vertical button.up { -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); } + +scrollbar.horizontal button.down { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); } + +scrollbar.horizontal button.up { -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); } + +treeview ~ scrollbar.vertical { border-top: 1px solid #94908c; margin-top: -1px; } + +/********** Switch * */ +switch { outline-offset: -4px; border: 1px solid #94908c; border-radius: 14px; color: #000000; background-color: #c0bebc; text-shadow: 0 1px rgba(0, 0, 0, 0.1); /* only show i / o for the accessible theme */ } + +switch:checked { color: #42453E; border-color: #94908c; background-color: #a3ae8b; text-shadow: 0 1px rgba(132, 140, 113, 0.5), 0 0 2px rgba(255, 255, 255, 0.6); } + +switch:disabled { color: #a9a5a2; border-color: #94908c; background-color: #edeceb; text-shadow: none; } + +switch:backdrop { color: #2f2f2f; border-color: #a5a29f; background-color: #d4d2d0; text-shadow: none; transition: 200ms ease-out; } + +switch:backdrop:checked { color: #edeceb; border-color: #94908c; background-color: #a3ae8b; } + +switch:backdrop:disabled { color: #c9c6c3; border-color: #a5a29f; background-color: #edeceb; } + +switch slider { margin: -1px; min-width: 24px; min-height: 24px; border: 1px solid; border-radius: 50%; transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); -gtk-outline-radius: 20px; color: #000000; outline-color: #94908c; border-color: #b3afab; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); background-image: linear-gradient(to bottom, #f9f9f8 20%, #edeceb 90%); box-shadow: inset 0 1px white, 0 1px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.07); box-shadow: 0 1px rgba(0, 0, 0, 0.05); background-image: image(white); background-clip: padding-box; } + +switch image { color: transparent; } + +switch:hover slider { color: #000000; outline-color: #94908c; border-color: #b3afab; box-shadow: inset 0 1px white, 0 1px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.07); background-image: image(white); box-shadow: 0 1px rgba(0, 0, 0, 0.15); } + +switch:checked > slider { border: 1px solid #94908c; } + +switch:disabled slider { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +switch:backdrop slider { transition: 200ms ease-out; color: #2f2f2f; border-color: #a5a29f; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +switch:backdrop:checked > slider { border-color: #94908c; } + +switch:backdrop:disabled slider { color: #c9c6c3; border-color: #a5a29f; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +row:selected switch { box-shadow: none; border-color: #94908c; } + +row:selected switch:backdrop { border-color: #94908c; } + +row:selected switch > slider:checked, row:selected switch > slider { border-color: #94908c; } + +/************************* Check and Radio items * */ +.view.content-view.check:not(list), iconview.content-view.check:not(list), .content-view:not(list) check { margin: 4px; min-width: 32px; min-height: 32px; color: transparent; background-color: #a3ae8b; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: none; -gtk-icon-shadow: none; } + +.view.content-view.check:hover:not(list), iconview.content-view.check:hover:not(list), .content-view:not(list) check:hover { margin: 4px; min-width: 32px; min-height: 32px; color: transparent; background-color: #a3ae8b; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: none; -gtk-icon-shadow: none; } + +.view.content-view.check:active:not(list), iconview.content-view.check:active:not(list), .content-view:not(list) check:active { margin: 4px; min-width: 32px; min-height: 32px; color: transparent; background-color: #a3ae8b; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: none; -gtk-icon-shadow: none; } + +.view.content-view.check:backdrop:not(list), iconview.content-view.check:backdrop:not(list), .content-view:not(list) check:backdrop { margin: 4px; min-width: 32px; min-height: 32px; color: transparent; background-color: #9d9d9d; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: none; -gtk-icon-shadow: none; } + +.view.content-view.check:checked:not(list), iconview.content-view.check:checked:not(list), .content-view:not(list) check:checked { margin: 4px; min-width: 32px; min-height: 32px; color: #eeeeec; background-color: #a3ae8b; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: -gtk-icontheme('object-select-symbolic'); -gtk-icon-shadow: none; } + +.view.content-view.check:checked:hover:not(list), iconview.content-view.check:checked:hover:not(list), .content-view:not(list) check:checked:hover { margin: 4px; min-width: 32px; min-height: 32px; color: #eeeeec; background-color: #a3ae8b; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: -gtk-icontheme('object-select-symbolic'); -gtk-icon-shadow: none; } + +.view.content-view.check:checked:active:not(list), iconview.content-view.check:checked:active:not(list), .content-view:not(list) check:checked:active { margin: 4px; min-width: 32px; min-height: 32px; color: #eeeeec; background-color: #a3ae8b; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: -gtk-icontheme('object-select-symbolic'); -gtk-icon-shadow: none; } + +.view.content-view.check:backdrop:checked:not(list), iconview.content-view.check:backdrop:checked:not(list), .content-view:not(list) check:backdrop:checked { margin: 4px; min-width: 32px; min-height: 32px; color: rgba(238, 238, 236, 0.8); background-color: #9d9d9d; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: -gtk-icontheme('object-select-symbolic'); -gtk-icon-shadow: none; } + +checkbutton.text-button, radiobutton.text-button { padding: 2px 0; outline-offset: 0; } + +checkbutton.text-button label:not(:only-child):first-child, radiobutton.text-button label:not(:only-child):first-child { margin-left: 4px; } + +checkbutton.text-button label:not(:only-child):last-child, radiobutton.text-button label:not(:only-child):last-child { margin-right: 4px; } + +check, radio { margin: 0 4px; min-height: 14px; min-width: 14px; border: 1px solid; -gtk-icon-source: none; } + +check:only-child, radio:only-child { margin: 0; } + +popover check.left:dir(rtl), popover radio.left:dir(rtl) { margin-left: 0; margin-right: 12px; } + +popover check.right:dir(ltr), popover radio.right:dir(ltr) { margin-left: 12px; margin-right: 0; } + +check, radio { background-clip: padding-box; background-image: image(white); border-color: #b3afab; box-shadow: 0 1px rgba(0, 0, 0, 0.05); color: #000000; } + +check:hover, radio:hover { background-image: image(#d3d8c7); border-color: #a3ae8b; } + +check:active, radio:active { border-color: #94908c; background-image: image(white); box-shadow: none; color: #000000; } + +check:disabled, radio:disabled { box-shadow: none; color: #a9a5a2; border-color: #bdbab8; background-image: image(#edeceb); } + +check:backdrop, radio:backdrop { background-image: image(white); border-color: #b3afab; box-shadow: 0 1px rgba(0, 0, 0, 0.05); color: #000000; } + +check:backdrop:disabled, radio:backdrop:disabled { box-shadow: none; color: #2f2f2f; border-color: #bdbab8; background-image: image(#edeceb); } + +check:checked, radio:checked { background-clip: border-box; background-image: image(white); border-color: #a3ae8b; box-shadow: 0 1px rgba(0, 0, 0, 0.05); color: #000000; } + +check:checked:hover, radio:checked:hover { background-image: image(#d3d8c7); border-color: #a3ae8b; } + +check:checked:active, radio:checked:active { border-color: #94908c; background-image: image(white); box-shadow: none; color: #000000; } + +check:checked:disabled, radio:checked:disabled { box-shadow: none; color: #a9a5a2; border-color: #bdbab8; background-image: image(#edeceb); } + +check:checked:backdrop, radio:checked:backdrop { background-image: image(white); border-color: #a3ae8b; box-shadow: 0 1px rgba(0, 0, 0, 0.05); color: #000000; } + +check:checked:backdrop:disabled, radio:checked:backdrop:disabled { box-shadow: none; color: #2f2f2f; border-color: #bdbab8; background-image: image(#edeceb); } + +check:indeterminate, radio:indeterminate { background-clip: border-box; background-image: image(white); border-color: #a3ae8b; box-shadow: 0 1px rgba(0, 0, 0, 0.05); color: #000000; } + +check:indeterminate:hover, radio:indeterminate:hover { background-image: image(#d3d8c7); border-color: #a3ae8b; } + +check:indeterminate:active, radio:indeterminate:active { border-color: #94908c; background-image: image(white); box-shadow: none; color: #000000; } + +check:indeterminate:disabled, radio:indeterminate:disabled { box-shadow: none; color: #a9a5a2; border-color: #bdbab8; background-image: image(#edeceb); } + +check:indeterminate:backdrop, radio:indeterminate:backdrop { background-image: image(white); border-color: #a3ae8b; box-shadow: 0 1px rgba(0, 0, 0, 0.05); color: #000000; } + +check:indeterminate:backdrop:disabled, radio:indeterminate:backdrop:disabled { box-shadow: none; color: #2f2f2f; border-color: #bdbab8; background-image: image(#edeceb); } + +check:backdrop, radio:backdrop { transition: 200ms ease-out; } + +.osd check, .osd radio { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(61, 63, 54, 0.8)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); } + +.osd check:hover, .osd radio:hover { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(61, 63, 54, 0.8)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); } + +.osd check:active, .osd radio:active { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(0, 0, 0, 0.7)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; outline-color: rgba(238, 238, 236, 0.3); } + +.osd check:backdrop, .osd radio:backdrop { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(37, 38, 33, 0.8)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; } + +.osd check:disabled, .osd radio:disabled { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(37, 38, 33, 0.8)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; } + +menu menuitem check, menu menuitem radio { margin: 0; } + +menu menuitem check, menu menuitem check:hover, menu menuitem check:disabled, menu menuitem check:checked, menu menuitem check:checked:hover, menu menuitem check:checked:disabled, menu menuitem check:indeterminate, menu menuitem check:indeterminate:hover, menu menuitem check:indeterminate:disabled, menu menuitem radio, menu menuitem radio:hover, menu menuitem radio:disabled, menu menuitem radio:checked, menu menuitem radio:checked:hover, menu menuitem radio:checked:disabled, menu menuitem radio:indeterminate, menu menuitem radio:indeterminate:hover, menu menuitem radio:indeterminate:disabled { min-height: 14px; min-width: 14px; background-image: none; background-color: transparent; box-shadow: none; -gtk-icon-shadow: none; color: inherit; border-color: currentColor; } + +check { border-radius: 1px; } + +check:checked { -gtk-icon-source: image(-gtk-recolor(url("assets/check-symbolic.svg")), -gtk-recolor(url("assets/check-symbolic.symbolic.png"))); } + +check:indeterminate { -gtk-icon-source: image(-gtk-recolor(url("assets/dash-symbolic.svg")), -gtk-recolor(url("assets/dash-symbolic.symbolic.png"))); } + +treeview.view radio:selected:focus, treeview.view radio:selected, radio { border-radius: 100%; } + +treeview.view radio:checked:selected, radio:checked { -gtk-icon-source: image(-gtk-recolor(url("assets/bullet-symbolic.svg")), -gtk-recolor(url("assets/bullet-symbolic.symbolic.png"))); } + +treeview.view radio:indeterminate:selected, radio:indeterminate { -gtk-icon-source: image(-gtk-recolor(url("assets/dash-symbolic.svg")), -gtk-recolor(url("assets/dash-symbolic.symbolic.png"))); } + +radio:not(:indeterminate):not(:checked):active:not(:backdrop) { -gtk-icon-transform: scale(0); } + +check:not(:indeterminate):not(:checked):active:not(:backdrop) { -gtk-icon-transform: translate(6px, -3px) rotate(-45deg) scaleY(0.2) rotate(45deg) scaleX(0); } + +radio:active, check:active { -gtk-icon-transform: scale(0, 1); border-color: #94908c; } + +radio:checked:not(:backdrop), radio:indeterminate:not(:backdrop), check:checked:not(:backdrop), check:indeterminate:not(:backdrop) { -gtk-icon-transform: unset; transition: 400ms; } + +menu menuitem radio:checked:not(:backdrop), menu menuitem radio:indeterminate:not(:backdrop), menu menuitem check:checked:not(:backdrop), menu menuitem check:indeterminate:not(:backdrop) { transition: none; } + +treeview.view check:selected:focus, treeview.view check:selected, treeview.view radio:selected:focus, treeview.view radio:selected { color: #94908c; border-color: #848c71; } + +/************ GtkScale * */ +scale trough, scale fill, progressbar trough { border: 1px solid #94908c; border-radius: 3px; background-color: #d6d4d2; } + +scale trough:disabled, scale fill:disabled, progressbar trough:disabled { background-color: #edeceb; } + +scale trough:backdrop, scale fill:backdrop, progressbar trough:backdrop { background-color: #d4d2d0; border-color: #a5a29f; transition: 200ms ease-out; } + +scale trough:backdrop:disabled, scale fill:backdrop:disabled, progressbar trough:backdrop:disabled { background-color: #edeceb; } + +row:selected scale trough:disabled, scale row:selected trough:disabled, row:selected scale fill:disabled, scale row:selected fill:disabled, row:selected progressbar trough:disabled, progressbar row:selected trough:disabled, row:selected scale trough, scale row:selected trough, row:selected scale fill, scale row:selected fill, row:selected progressbar trough, progressbar row:selected trough { border-color: #848c71; } + +.osd scale trough, scale .osd trough, .osd scale fill, scale .osd fill, .osd progressbar trough, progressbar .osd trough { border-color: rgba(0, 0, 0, 0.7); background-color: rgba(0, 0, 0, 0.5); } + +.osd scale trough:disabled, scale .osd trough:disabled, .osd scale fill:disabled, scale .osd fill:disabled, .osd progressbar trough:disabled, progressbar .osd trough:disabled { background-color: rgba(37, 38, 33, 0.8); } + +scale highlight, progressbar progress { border: 1px solid #848c71; border-radius: 3px; background-color: #bfc6b0; } + +scale highlight:disabled, progressbar progress:disabled { background-color: transparent; border-color: transparent; } + +scale highlight:backdrop, progressbar progress:backdrop { border-color: #848c71; } + +scale highlight:backdrop:disabled, progressbar progress:backdrop:disabled { background-color: transparent; border-color: transparent; } + +row:selected scale highlight:disabled, scale row:selected highlight:disabled, row:selected progressbar progress:disabled, progressbar row:selected progress:disabled, row:selected scale highlight, scale row:selected highlight, row:selected progressbar progress, progressbar row:selected progress { border-color: #848c71; } + +.osd scale highlight, scale .osd highlight, .osd progressbar progress, progressbar .osd progress { border-color: rgba(0, 0, 0, 0.7); } + +.osd scale highlight:disabled, scale .osd highlight:disabled, .osd progressbar progress:disabled, progressbar .osd progress:disabled { border-color: transparent; } + +scale { min-height: 10px; min-width: 10px; padding: 11px; } + +scale fill, scale highlight { margin: -1px; } + +scale slider { min-height: 18px; min-width: 18px; margin: -9px; } + +scale.fine-tune.horizontal { padding-top: 9px; padding-bottom: 9px; min-height: 16px; } + +scale.fine-tune.vertical { padding-left: 9px; padding-right: 9px; min-width: 16px; } + +scale.fine-tune slider { margin: -6px; } + +scale.fine-tune fill, scale.fine-tune highlight, scale.fine-tune trough { border-radius: 5px; -gtk-outline-radius: 7px; } + +scale trough { outline-offset: 2px; -gtk-outline-radius: 5px; } + +scale fill:backdrop, scale fill { background-color: #94908c; } + +scale fill:disabled:backdrop, scale fill:disabled { border-color: transparent; background-color: transparent; } + +.osd scale fill { background-color: rgba(91, 91, 90, 0.775); } + +.osd scale fill:disabled:backdrop, .osd scale fill:disabled { border-color: transparent; background-color: transparent; } + +scale.horizontal slider { min-width: 20px; } + +scale.vertical slider { min-height: 20px; } + +scale slider { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); min-height: 12px; min-width: 12px; margin: -5px; border: 1px solid #aca7a3; border-radius: 3px; transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition-property: background, border, box-shadow; } + +scale slider:hover { color: #000000; outline-color: #94908c; border-color: #94908c; border-bottom-color: #b3afab; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px white, 0 1px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); } + +scale slider:active { border-color: #848c71; } + +scale slider:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +scale slider:backdrop { transition: 200ms ease-out; color: #2f2f2f; border-color: #a5a29f; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +scale slider:backdrop:disabled { color: #c9c6c3; border-color: #a5a29f; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +row:selected scale slider:disabled, row:selected scale slider { border-color: #848c71; } + +.osd scale slider { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(61, 63, 54, 0.8)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); border-color: rgba(0, 0, 0, 0.7); background-color: #252621; } + +.osd scale slider:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(69, 71, 61, 0.8)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); background-color: #252621; } + +.osd scale slider:active { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(0, 0, 0, 0.7)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; outline-color: rgba(238, 238, 236, 0.3); background-color: #252621; } + +.osd scale slider:disabled { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(37, 38, 33, 0.8)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; background-color: #252621; } + +.osd scale slider:backdrop { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(37, 38, 33, 0.8)); background-clip: padding-box; box-shadow: none; text-shadow: none; -gtk-icon-shadow: none; background-color: #252621; } + +.osd scale slider:backdrop:disabled { background-color: #252621; } + +scale marks, scale value { color: alpha(currentColor,0.55); font-feature-settings: "tnum"; } + +scale.horizontal marks.top { margin-bottom: 6px; margin-top: -12px; } + +scale.horizontal.fine-tune marks.top { margin-bottom: 6px; margin-top: -9px; } + +scale.horizontal marks.bottom { margin-top: 6px; margin-bottom: -12px; } + +scale.horizontal.fine-tune marks.bottom { margin-top: 6px; margin-bottom: -9px; } + +scale.vertical marks.top { margin-right: 6px; margin-left: -12px; } + +scale.vertical.fine-tune marks.top { margin-right: 6px; margin-left: -9px; } + +scale.vertical marks.bottom { margin-left: 6px; margin-right: -12px; } + +scale.vertical.fine-tune marks.bottom { margin-left: 6px; margin-right: -9px; } + +scale.horizontal indicator { min-height: 6px; min-width: 1px; } + +scale.horizontal.fine-tune indicator { min-height: 3px; } + +scale.vertical indicator { min-height: 1px; min-width: 6px; } + +scale.vertical.fine-tune indicator { min-width: 3px; } + +scale.horizontal.marks-before:not(.marks-after) slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above.png"), url("assets/slider-horz-scale-has-marks-above@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; } + +scale.horizontal.marks-before:not(.marks-after) slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-hover.png"), url("assets/slider-horz-scale-has-marks-above-hover@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; } + +scale.horizontal.marks-before:not(.marks-after) slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-active.png"), url("assets/slider-horz-scale-has-marks-above-active@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; } + +scale.horizontal.marks-before:not(.marks-after) slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-insensitive.png"), url("assets/slider-horz-scale-has-marks-above-insensitive@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; } + +scale.horizontal.marks-before:not(.marks-after) slider:backdrop { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-backdrop.png"), url("assets/slider-horz-scale-has-marks-above-backdrop@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; } + +scale.horizontal.marks-before:not(.marks-after) slider:backdrop:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-backdrop-insensitive.png"), url("assets/slider-horz-scale-has-marks-above-backdrop-insensitive@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; } + +scale.horizontal.marks-after:not(.marks-before) slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below.png"), url("assets/slider-horz-scale-has-marks-below@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; } + +scale.horizontal.marks-after:not(.marks-before) slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-hover.png"), url("assets/slider-horz-scale-has-marks-below-hover@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; } + +scale.horizontal.marks-after:not(.marks-before) slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-active.png"), url("assets/slider-horz-scale-has-marks-below-active@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; } + +scale.horizontal.marks-after:not(.marks-before) slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-insensitive.png"), url("assets/slider-horz-scale-has-marks-below-insensitive@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; } + +scale.horizontal.marks-after:not(.marks-before) slider:backdrop { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-backdrop.png"), url("assets/slider-horz-scale-has-marks-below-backdrop@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; } + +scale.horizontal.marks-after:not(.marks-before) slider:backdrop:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-backdrop-insensitive.png"), url("assets/slider-horz-scale-has-marks-below-backdrop-insensitive@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; } + +scale.vertical.marks-before:not(.marks-after) slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above.png"), url("assets/slider-vert-scale-has-marks-above@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; } + +scale.vertical.marks-before:not(.marks-after) slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-hover.png"), url("assets/slider-vert-scale-has-marks-above-hover@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; } + +scale.vertical.marks-before:not(.marks-after) slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-active.png"), url("assets/slider-vert-scale-has-marks-above-active@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; } + +scale.vertical.marks-before:not(.marks-after) slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-insensitive.png"), url("assets/slider-vert-scale-has-marks-above-insensitive@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; } + +scale.vertical.marks-before:not(.marks-after) slider:backdrop { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-backdrop.png"), url("assets/slider-vert-scale-has-marks-above-backdrop@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; } + +scale.vertical.marks-before:not(.marks-after) slider:backdrop:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-backdrop-insensitive.png"), url("assets/slider-vert-scale-has-marks-above-backdrop-insensitive@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; } + +scale.vertical.marks-after:not(.marks-before) slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below.png"), url("assets/slider-vert-scale-has-marks-below@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; } + +scale.vertical.marks-after:not(.marks-before) slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-hover.png"), url("assets/slider-vert-scale-has-marks-below-hover@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; } + +scale.vertical.marks-after:not(.marks-before) slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-active.png"), url("assets/slider-vert-scale-has-marks-below-active@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; } + +scale.vertical.marks-after:not(.marks-before) slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-insensitive.png"), url("assets/slider-vert-scale-has-marks-below-insensitive@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; } + +scale.vertical.marks-after:not(.marks-before) slider:backdrop { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-backdrop.png"), url("assets/slider-vert-scale-has-marks-below-backdrop@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; } + +scale.vertical.marks-after:not(.marks-before) slider:backdrop:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-backdrop-insensitive.png"), url("assets/slider-vert-scale-has-marks-below-backdrop-insensitive@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; } + +scale.color { min-height: 0; min-width: 0; } + +scale.color trough { background-image: image(#94908c); background-repeat: no-repeat; } + +scale.color.horizontal { padding: 0 0 15px 0; } + +scale.color.horizontal trough { padding-bottom: 4px; background-position: 0 -3px; border-top-left-radius: 0; border-top-right-radius: 0; } + +scale.color.horizontal slider:dir(ltr):hover, scale.color.horizontal slider:dir(ltr):backdrop, scale.color.horizontal slider:dir(ltr):disabled, scale.color.horizontal slider:dir(ltr):backdrop:disabled, scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl):hover, scale.color.horizontal slider:dir(rtl):backdrop, scale.color.horizontal slider:dir(rtl):disabled, scale.color.horizontal slider:dir(rtl):backdrop:disabled, scale.color.horizontal slider:dir(rtl) { margin-bottom: -15px; margin-top: 6px; } + +scale.color.vertical:dir(ltr) { padding: 0 0 0 15px; } + +scale.color.vertical:dir(ltr) trough { padding-left: 4px; background-position: 3px 0; border-bottom-right-radius: 0; border-top-right-radius: 0; } + +scale.color.vertical:dir(ltr) slider:hover, scale.color.vertical:dir(ltr) slider:backdrop, scale.color.vertical:dir(ltr) slider:disabled, scale.color.vertical:dir(ltr) slider:backdrop:disabled, scale.color.vertical:dir(ltr) slider { margin-left: -15px; margin-right: 6px; } + +scale.color.vertical:dir(rtl) { padding: 0 15px 0 0; } + +scale.color.vertical:dir(rtl) trough { padding-right: 4px; background-position: -3px 0; border-bottom-left-radius: 0; border-top-left-radius: 0; } + +scale.color.vertical:dir(rtl) slider:hover, scale.color.vertical:dir(rtl) slider:backdrop, scale.color.vertical:dir(rtl) slider:disabled, scale.color.vertical:dir(rtl) slider:backdrop:disabled, scale.color.vertical:dir(rtl) slider { margin-right: -15px; margin-left: 6px; } + +scale.color.fine-tune.horizontal:dir(ltr), scale.color.fine-tune.horizontal:dir(rtl) { padding: 0 0 12px 0; } + +scale.color.fine-tune.horizontal:dir(ltr) trough, scale.color.fine-tune.horizontal:dir(rtl) trough { padding-bottom: 7px; background-position: 0 -6px; } + +scale.color.fine-tune.horizontal:dir(ltr) slider, scale.color.fine-tune.horizontal:dir(rtl) slider { margin-bottom: -15px; margin-top: 6px; } + +scale.color.fine-tune.vertical:dir(ltr) { padding: 0 0 0 12px; } + +scale.color.fine-tune.vertical:dir(ltr) trough { padding-left: 7px; background-position: 6px 0; } + +scale.color.fine-tune.vertical:dir(ltr) slider { margin-left: -15px; margin-right: 6px; } + +scale.color.fine-tune.vertical:dir(rtl) { padding: 0 12px 0 0; } + +scale.color.fine-tune.vertical:dir(rtl) trough { padding-right: 7px; background-position: -6px 0; } + +scale.color.fine-tune.vertical:dir(rtl) slider { margin-right: -15px; margin-left: 6px; } + +/***************** Progress bars * */ +progressbar { font-size: smaller; color: rgba(0, 0, 0, 0.4); font-feature-settings: "tnum"; } + +progressbar.horizontal trough, progressbar.horizontal progress { min-height: 16px; } + +progressbar.vertical trough, progressbar.vertical progress { min-width: 16px; } + +progressbar.horizontal progress { margin: 0 -1px; background-image: repeating-linear-gradient(135deg, alpha(#a0a88e,0), alpha(#a0a88e,0) 12px, alpha(#a0a88e,0.4) 12px, alpha(#a0a88e,0.4) 24px), linear-gradient(to bottom, alpha(#d3d8c7,0.7), alpha(#c9cfbb,0.7) 50%, alpha(#c5cbb7,0.7) 50%, alpha(#bbc2ab,0.7)); } + +progressbar.vertical progress { margin: -1px 0; background-image: repeating-linear-gradient(45deg, alpha(#a0a88e,0), alpha(#a0a88e,0) 12px, alpha(#a0a88e,0.5) 12px, alpha(#a0a88e,0.5) 24px), linear-gradient(to right, alpha(#d3d8c7,0.7), alpha(#c9cfbb,0.7) 50%, alpha(#c5cbb7,0.7) 50%, alpha(#bbc2ab,0.7)); } + +progressbar:backdrop { box-shadow: none; transition: 200ms ease-out; } + +progressbar progress { border-radius: 1.5px; } + +progressbar progress.left { border-top-left-radius: 2px; border-bottom-left-radius: 2px; } + +progressbar progress.right { border-top-right-radius: 2px; border-bottom-right-radius: 2px; } + +progressbar progress.top { border-top-right-radius: 2px; border-top-left-radius: 2px; } + +progressbar progress.bottom { border-bottom-right-radius: 2px; border-bottom-left-radius: 2px; } + +progressbar.osd { min-width: 3px; min-height: 3px; background-color: transparent; } + +progressbar.osd trough { border-style: none; border-radius: 0; background-color: transparent; box-shadow: none; } + +progressbar.osd progress { border-style: none; border-radius: 0; } + +progressbar trough.empty progress { all: unset; } + +/************* Level Bar * */ +levelbar.horizontal block { min-height: 1px; } + +levelbar.horizontal.discrete block { margin: 0 1px; min-width: 32px; } + +levelbar.vertical block { min-width: 1px; } + +levelbar.vertical.discrete block { margin: 1px 0; min-height: 32px; } + +levelbar:backdrop { transition: 200ms ease-out; } + +levelbar trough { border: 1px solid; padding: 2px; border-radius: 3px; color: #1a1a1a; border-color: #94908c; background-color: #ffffff; box-shadow: inset 0 0 0 1px rgba(148, 144, 140, 0); } + +levelbar trough:backdrop { color: rgba(26, 26, 26, 0.69); border-color: #a5a29f; background-color: #fcfcfc; box-shadow: none; } + +levelbar block { border: 1px solid; border-radius: 1px; } + +levelbar block.low { border-color: #a06104; background-color: #f99b11; } + +levelbar block.low:backdrop { border-color: #f99b11; } + +levelbar block.high, levelbar block:not(.empty) { border-color: #0f5fc5; background-color: #4893f2; } + +levelbar block.high:backdrop, levelbar block:not(.empty):backdrop { border-color: #4893f2; } + +levelbar block.full { border-color: #5e733c; background-color: #93af66; } + +levelbar block.full:backdrop { border-color: #93af66; } + +levelbar block.empty { background-color: transparent; border-color: rgba(0, 0, 0, 0.2); } + +levelbar block.empty:backdrop { border-color: rgba(47, 47, 47, 0.15); } + +/**************** Print dialog * */ +printdialog paper { color: #000000; border: 1px solid #94908c; background: white; padding: 0; } + +printdialog paper:backdrop { color: #2f2f2f; border-color: #a5a29f; } + +printdialog .dialog-action-box { margin: 12px; } + +/********** Frames * */ +frame > border, .frame { box-shadow: none; margin: 0; padding: 0; border-radius: 0; border: 1px solid #94908c; } + +frame > border.flat, .frame.flat { border-style: none; } + +frame > border:backdrop, .frame:backdrop { border-color: #a5a29f; } + +actionbar > revealer > box { padding: 6px; border-top: 1px solid #94908c; } + +actionbar > revealer > box:backdrop { border-color: #a5a29f; } + +scrolledwindow viewport.frame { border-style: none; } + +scrolledwindow overshoot.top { background-image: -gtk-gradient(radial, center top, 0, center top, 0.5, to(#7a7673), to(rgba(122, 118, 115, 0))), -gtk-gradient(radial, center top, 0, center top, 0.6, from(rgba(0, 0, 0, 0.07)), to(transparent)); background-size: 100% 5%, 100% 100%; background-repeat: no-repeat; background-position: center top; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow overshoot.top:backdrop { background-image: -gtk-gradient(radial, center top, 0, center top, 0.5, to(#a5a29f), to(rgba(165, 162, 159, 0))); background-size: 100% 5%; background-repeat: no-repeat; background-position: center top; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow overshoot.bottom { background-image: -gtk-gradient(radial, center bottom, 0, center bottom, 0.5, to(#7a7673), to(rgba(122, 118, 115, 0))), -gtk-gradient(radial, center bottom, 0, center bottom, 0.6, from(rgba(0, 0, 0, 0.07)), to(transparent)); background-size: 100% 5%, 100% 100%; background-repeat: no-repeat; background-position: center bottom; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow overshoot.bottom:backdrop { background-image: -gtk-gradient(radial, center bottom, 0, center bottom, 0.5, to(#a5a29f), to(rgba(165, 162, 159, 0))); background-size: 100% 5%; background-repeat: no-repeat; background-position: center bottom; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow overshoot.left { background-image: -gtk-gradient(radial, left center, 0, left center, 0.5, to(#7a7673), to(rgba(122, 118, 115, 0))), -gtk-gradient(radial, left center, 0, left center, 0.6, from(rgba(0, 0, 0, 0.07)), to(transparent)); background-size: 5% 100%, 100% 100%; background-repeat: no-repeat; background-position: left center; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow overshoot.left:backdrop { background-image: -gtk-gradient(radial, left center, 0, left center, 0.5, to(#a5a29f), to(rgba(165, 162, 159, 0))); background-size: 5% 100%; background-repeat: no-repeat; background-position: left center; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow overshoot.right { background-image: -gtk-gradient(radial, right center, 0, right center, 0.5, to(#7a7673), to(rgba(122, 118, 115, 0))), -gtk-gradient(radial, right center, 0, right center, 0.6, from(rgba(0, 0, 0, 0.07)), to(transparent)); background-size: 5% 100%, 100% 100%; background-repeat: no-repeat; background-position: right center; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow overshoot.right:backdrop { background-image: -gtk-gradient(radial, right center, 0, right center, 0.5, to(#a5a29f), to(rgba(165, 162, 159, 0))); background-size: 5% 100%; background-repeat: no-repeat; background-position: right center; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow junction { border-color: transparent; border-image: linear-gradient(to bottom, #94908c 1px, transparent 1px) 0 0 0 1/0 1px stretch; background-color: #bebdbc; } + +scrolledwindow junction:dir(rtl) { border-image-slice: 0 1 0 0; } + +scrolledwindow junction:backdrop { border-image-source: linear-gradient(to bottom, #a5a29f 1px, transparent 1px); background-color: #e6e4e3; transition: 200ms ease-out; } + +separator { background: rgba(0, 0, 0, 0.1); min-width: 1px; min-height: 1px; } + +/********* Lists * */ +list { color: #1a1a1a; background-color: #ffffff; border-color: #94908c; } + +list:backdrop { color: rgba(26, 26, 26, 0.69); background-color: #fcfcfc; border-color: #a5a29f; } + +list row { padding: 2px; } + +row { transition: all 150ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row:hover { transition: none; } + +row:backdrop { transition: 200ms ease-out; } + +row.activatable.has-open-popup, row.activatable:hover { background-color: #bfc6b0; } + +row.activatable:active { box-shadow: inset 0 2px 2px -2px rgba(0, 0, 0, 0.2); } + +row.activatable:backdrop:hover { background-color: transparent; } + +row.activatable:selected:active { box-shadow: inset 0 2px 3px -1px rgba(0, 0, 0, 0.5); } + +row.activatable:selected.has-open-popup, row.activatable:selected:hover { background-color: #bfc6b0; } + +row.activatable:selected:backdrop { background-color: #bfc6b0; } + +/********************* App Notifications * */ +.app-notification, .app-notification.frame { padding: 10px; border-radius: 0 0 5px 5px; background-color: rgba(37, 38, 33, 0.8); 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; transition: 200ms ease-out; } + +.app-notification border, .app-notification.frame border { border: none; } + +/************* Expanders * */ +expander title > arrow { min-width: 16px; min-height: 16px; -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); } + +expander title > arrow:dir(rtl) { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); } + +expander title > arrow:hover { color: #4d4d4d; } + +expander title > arrow:disabled { color: #a9a5a2; } + +expander title > arrow:disabled:backdrop { color: #c9c6c3; } + +expander title > arrow:checked { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +/************ Calendar * */ +calendar { color: #1a1a1a; border: 1px solid #94908c; } + +calendar:selected { border-radius: 3px; } + +calendar.header { border-bottom-color: rgba(0, 0, 0, 0.1); } + +calendar.header:backdrop { border-bottom-color: rgba(0, 0, 0, 0.1); } + +calendar.button { color: rgba(0, 0, 0, 0.45); } + +calendar.button:hover { color: #000000; } + +calendar.button:backdrop { color: rgba(47, 47, 47, 0.45); } + +calendar.button:disabled { color: rgba(169, 165, 162, 0.45); } + +calendar.highlight { color: #a9a5a2; } + +calendar.highlight:backdrop { color: #c9c6c3; } + +calendar:backdrop { color: rgba(26, 26, 26, 0.69); border-color: #a5a29f; } + +calendar:indeterminate { color: alpha(currentColor,0.1); } + +/*********** Dialogs * */ +messagedialog .titlebar { min-height: 20px; background-image: none; background-color: #edeceb; border-style: none; border-top-left-radius: 7px; border-top-right-radius: 7px; } + +messagedialog.csd.background { border-bottom-left-radius: 8px; border-bottom-right-radius: 8px; } + +messagedialog.csd .dialog-action-area button { padding: 10px 14px; border-right-style: none; border-bottom-style: none; border-radius: 0; -gtk-outline-radius: 0; } + +messagedialog.csd .dialog-action-area button:first-child { border-left-style: none; border-bottom-left-radius: 6px; -gtk-outline-bottom-left-radius: 6px; } + +messagedialog.csd .dialog-action-area button:last-child { border-bottom-right-radius: 6px; -gtk-outline-bottom-right-radius: 6px; } + +filechooser .dialog-action-box { border-top: 1px solid #94908c; } + +filechooser .dialog-action-box:backdrop { border-top-color: #a5a29f; } + +filechooser #pathbarbox { border-bottom: 1px solid #edeceb; } + +filechooserbutton:drop(active) { box-shadow: none; border-color: transparent; } + +/*********** Sidebar * */ +.sidebar { border-style: none; background-color: #f6f6f5; } + +stacksidebar.sidebar:dir(ltr) list, stacksidebar.sidebar.left list, stacksidebar.sidebar.left:dir(rtl) list, .sidebar:not(separator):dir(ltr), .sidebar:not(separator).left, .sidebar:not(separator).left:dir(rtl) { border-right: 1px solid #94908c; border-left-style: none; } + +stacksidebar.sidebar:dir(rtl) list, stacksidebar.sidebar.right list, .sidebar:not(separator):dir(rtl), .sidebar:not(separator).right { border-left: 1px solid #94908c; border-right-style: none; } + +.sidebar:backdrop { background-color: #f5f4f4; border-color: #a5a29f; transition: 200ms ease-out; } + +.sidebar list { background-color: transparent; } + +paned .sidebar.left, paned .sidebar.right, paned .sidebar.left:dir(rtl), paned .sidebar:dir(rtl), paned .sidebar:dir(ltr), paned .sidebar { border-style: none; } + +stacksidebar row { padding: 10px 4px; } + +stacksidebar row > label { padding-left: 6px; padding-right: 6px; } + +stacksidebar row.needs-attention > label { background-size: 6px 6px, 0 0; } + +separator.sidebar { background-color: #94908c; } + +separator.sidebar:backdrop { background-color: #a5a29f; } + +separator.sidebar.selection-mode, .selection-mode separator.sidebar { background-color: #5e733c; } + +/**************** File chooser * */ +row image.sidebar-icon { opacity: 0.7; } + +placessidebar > viewport.frame { border-style: none; } + +placessidebar row { min-height: 36px; padding: 0px; } + +placessidebar row > revealer { padding: 0 14px; } + +placessidebar row:selected { color: #42453E; } + +placessidebar row:disabled { color: #a9a5a2; } + +placessidebar row:backdrop { color: #2f2f2f; } + +placessidebar row:backdrop:selected { color: #fcfcfc; } + +placessidebar row:backdrop:disabled { color: #c9c6c3; } + +placessidebar row image.sidebar-icon:dir(ltr) { padding-right: 8px; } + +placessidebar row image.sidebar-icon:dir(rtl) { padding-left: 8px; } + +placessidebar row label.sidebar-label:dir(ltr) { padding-right: 2px; } + +placessidebar row label.sidebar-label:dir(rtl) { padding-left: 2px; } + +button.sidebar-button { min-height: 26px; min-width: 26px; margin-top: 3px; margin-bottom: 3px; padding: 0; border-radius: 100%; -gtk-outline-radius: 100%; } + +button.sidebar-button:not(:hover):not(:active) > image, button.sidebar-button:backdrop > image { opacity: 0.7; } + +placessidebar row:selected:active { box-shadow: none; } + +placessidebar row.sidebar-placeholder-row { padding: 0 8px; min-height: 2px; background-image: image(#93af66); background-clip: content-box; } + +placessidebar row.sidebar-new-bookmark-row { color: #bfc6b0; } + +placessidebar row:drop(active):not(:disabled) { color: #93af66; box-shadow: inset 0 1px #93af66, inset 0 -1px #93af66; } + +placessidebar row:drop(active):not(:disabled):selected { color: #42453E; background-color: #93af66; } + +placesview .server-list-button > image { transition: 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); -gtk-icon-transform: rotate(0turn); } + +placesview .server-list-button:checked > image { transition: 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); -gtk-icon-transform: rotate(-0.5turn); } + +placesview row.activatable:hover { background-color: transparent; } + +placesview > actionbar > revealer > box > label { padding-left: 8px; padding-right: 8px; } + +/********* Paned * */ +paned > separator { min-width: 1px; min-height: 1px; -gtk-icon-source: none; border-style: none; background-color: transparent; background-image: image(#94908c); background-size: 1px 1px; } + +paned > separator:selected { background-image: image(#bfc6b0); } + +paned > separator:backdrop { background-image: image(#a5a29f); } + +paned > separator.wide { min-width: 5px; min-height: 5px; background-color: #edeceb; background-image: image(#94908c), image(#94908c); background-size: 1px 1px, 1px 1px; } + +paned > separator.wide:backdrop { background-color: #edeceb; background-image: image(#a5a29f), image(#a5a29f); } + +paned.horizontal > separator { background-repeat: repeat-y; } + +paned.horizontal > separator:dir(ltr) { margin: 0 -8px 0 0; padding: 0 8px 0 0; background-position: left; } + +paned.horizontal > separator:dir(rtl) { margin: 0 0 0 -8px; padding: 0 0 0 8px; background-position: right; } + +paned.horizontal > separator.wide { margin: 0; padding: 0; background-repeat: repeat-y, repeat-y; background-position: left, right; } + +paned.vertical > separator { margin: 0 0 -8px 0; padding: 0 0 8px 0; background-repeat: repeat-x; background-position: top; } + +paned.vertical > separator.wide { margin: 0; padding: 0; background-repeat: repeat-x, repeat-x; background-position: bottom, top; } + +/************** GtkInfoBar * */ +infobar { border-style: none; } + +infobar.action:hover > revealer > box { background-color: #bcbcbc; border-bottom: 1px solid #a09d9a; } + +infobar.info, infobar.question, infobar.warning, infobar.error { text-shadow: none; } + +infobar.info:backdrop > revealer > box, infobar.info > revealer > box, infobar.question:backdrop > revealer > box, infobar.question > revealer > box, infobar.warning:backdrop > revealer > box, infobar.warning > revealer > box, infobar.error:backdrop > revealer > box, infobar.error > revealer > box { background-color: #b7b7b7; border-bottom: 1px solid #a09d9a; } + +infobar.info:backdrop > revealer > box label, infobar.info:backdrop > revealer > box, infobar.info > revealer > box label, infobar.info > revealer > box, infobar.question:backdrop > revealer > box label, infobar.question:backdrop > revealer > box, infobar.question > revealer > box label, infobar.question > revealer > box, infobar.warning:backdrop > revealer > box label, infobar.warning:backdrop > revealer > box, infobar.warning > revealer > box label, infobar.warning > revealer > box, infobar.error:backdrop > revealer > box label, infobar.error:backdrop > revealer > box, infobar.error > revealer > box label, infobar.error > revealer > box { color: #000000; } + +infobar.info:backdrop, infobar.question:backdrop, infobar.warning:backdrop, infobar.error:backdrop { text-shadow: none; } + +infobar.info button, infobar.question button, infobar.warning button, infobar.error button { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +infobar.info button:hover, infobar.question button:hover, infobar.warning button:hover, infobar.error button:hover { color: #000000; outline-color: #94908c; border-color: #94908c; border-bottom-color: #b3afab; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); } + +infobar.info button:active, infobar.info button:checked, infobar.question button:active, infobar.question button:checked, infobar.warning button:active, infobar.warning button:checked, infobar.error button:active, infobar.error button:checked { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +infobar.info button:disabled, infobar.question button:disabled, infobar.warning button:disabled, infobar.error button:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +infobar.info button:backdrop, infobar.question button:backdrop, infobar.warning button:backdrop, infobar.error button:backdrop { color: #2f2f2f; border-color: #a5a29f; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #d5d3d0; } + +infobar.info button:backdrop:disabled, infobar.question button:backdrop:disabled, infobar.warning button:backdrop:disabled, infobar.error button:backdrop:disabled { color: #c9c6c3; border-color: #a5a29f; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #d5d3d0; } + +infobar.info button:backdrop label, infobar.info button:backdrop, infobar.info button label, infobar.info button, infobar.question button:backdrop label, infobar.question button:backdrop, infobar.question button label, infobar.question button, infobar.warning button:backdrop label, infobar.warning button:backdrop, infobar.warning button label, infobar.warning button, infobar.error button:backdrop label, infobar.error button:backdrop, infobar.error button label, infobar.error button { color: #000000; } + +infobar.info selection, infobar.question selection, infobar.warning selection, infobar.error selection { background-color: #d5d3d0; } + +infobar.info *:link, infobar.question *:link, infobar.warning *:link, infobar.error *:link { color: #717c57; } + +/************ Tooltips * */ +tooltip { padding: 4px; /* not working */ border-radius: 5px; box-shadow: none; text-shadow: 0 1px black; } + +tooltip.background { background-color: rgba(0, 0, 0, 0.8); background-clip: padding-box; border: 1px solid rgba(255, 255, 255, 0.1); } + +tooltip decoration { background-color: transparent; } + +tooltip * { padding: 4px; background-color: transparent; color: white; } + +/***************** Color Chooser * */ +colorswatch:drop(active), colorswatch { border-style: none; } + +colorswatch.top { border-top-left-radius: 5.5px; border-top-right-radius: 5.5px; } + +colorswatch.top overlay { border-top-left-radius: 5px; border-top-right-radius: 5px; } + +colorswatch.bottom { border-bottom-left-radius: 5.5px; border-bottom-right-radius: 5.5px; } + +colorswatch.bottom overlay { border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; } + +colorswatch.left, colorswatch:first-child:not(.top) { border-top-left-radius: 5.5px; border-bottom-left-radius: 5.5px; } + +colorswatch.left overlay, colorswatch:first-child:not(.top) overlay { border-top-left-radius: 5px; border-bottom-left-radius: 5px; } + +colorswatch.right, colorswatch:last-child:not(.bottom) { border-top-right-radius: 5.5px; border-bottom-right-radius: 5.5px; } + +colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay { border-top-right-radius: 5px; border-bottom-right-radius: 5px; } + +colorswatch.dark { outline-color: rgba(255, 255, 255, 0.6); } + +colorswatch.dark overlay { color: white; } + +colorswatch.dark overlay:hover { border-color: rgba(0, 0, 0, 0.8); } + +colorswatch.dark overlay:backdrop { color: rgba(255, 255, 255, 0.5); } + +colorswatch.light { outline-color: rgba(0, 0, 0, 0.6); } + +colorswatch.light overlay { color: black; } + +colorswatch.light overlay:hover { border-color: rgba(0, 0, 0, 0.5); } + +colorswatch.light overlay:backdrop { color: rgba(0, 0, 0, 0.5); } + +colorswatch:drop(active) { box-shadow: none; } + +colorswatch:drop(active).light overlay { border-color: #93af66; box-shadow: inset 0 0 0 2px #829e53, inset 0 0 0 1px #93af66; } + +colorswatch:drop(active).dark overlay { border-color: #93af66; box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.3), inset 0 0 0 1px #93af66; } + +colorswatch overlay { border: 1px solid rgba(0, 0, 0, 0.3); } + +colorswatch overlay:hover { box-shadow: inset 0 1px rgba(255, 255, 255, 0.4), inset 0 -1px rgba(0, 0, 0, 0.2); } + +colorswatch overlay:backdrop, colorswatch overlay:backdrop:hover { border-color: rgba(0, 0, 0, 0.3); box-shadow: none; } + +colorswatch#add-color-button { border-radius: 5px 5px 0 0; } + +colorswatch#add-color-button:only-child { border-radius: 5px; } + +colorswatch#add-color-button overlay { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +colorswatch#add-color-button overlay:hover { color: #000000; outline-color: #94908c; border-color: #94908c; border-bottom-color: #b3afab; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); } + +colorswatch#add-color-button overlay:backdrop { color: #2f2f2f; border-color: #a5a29f; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +colorswatch:disabled { opacity: 0.5; } + +colorswatch:disabled overlay { border-color: rgba(0, 0, 0, 0.6); box-shadow: none; } + +row:selected colorswatch { box-shadow: 0 0 0 2px #42453E; } + +colorswatch#editor-color-sample { border-radius: 4px; } + +colorswatch#editor-color-sample overlay { border-radius: 4.5px; } + +colorchooser .popover.osd { border-radius: 5px; } + +/******** Misc * */ +.content-view { background-color: #dcdad8; } + +.content-view:hover { -gtk-icon-effect: highlight; } + +.content-view:backdrop { background-color: #dcdad8; } + +.osd .scale-popup button.flat { border-style: none; border-radius: 5px; } + +.scale-popup button:hover { background-color: rgba(0, 0, 0, 0.1); border-radius: 5px; } + +/********************** Window Decorations * */ +decoration { border-radius: 7px 7px 0 0; border-width: 0px; box-shadow: 1px 1px 0px #000000, -1px 1px 0px #000000, 1px -1px 0px #000000, -1px -1px 0px #000000; margin: 10px; } + +decoration:backdrop { box-shadow: 1px 1px 0px #000000, -1px 1px 0px #000000, 1px -1px 0px #000000, -1px -1px 0px #000000; transition: 200ms ease-out; } + +.maximized decoration, .fullscreen decoration, .tiled decoration, .tiled-top decoration, .tiled-right decoration, .tiled-bottom decoration, .tiled-left decoration { border-radius: 0; } + +.popup decoration { box-shadow: none; } + +.ssd decoration { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.23); } + +.csd.popup decoration { border-radius: 2px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.13); } + +tooltip.csd decoration { border-radius: 5px; box-shadow: none; } + +messagedialog.csd decoration { border-radius: 7px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.13); } + +.solid-csd decoration { margin: 0; padding: 4px; background-color: #94908c; border: solid 1px #94908c; border-radius: 0; box-shadow: inset 0 0 0 3px #f9f9f8, inset 0 1px rgba(255, 255, 255, 0.8); } + +.solid-csd decoration:backdrop { box-shadow: inset 0 0 0 3px #edeceb, inset 0 1px rgba(255, 255, 255, 0.8); } + +button.titlebutton { border-width: 1px; border-style: solid; } + +button.titlebutton:not(.appmenu) { border-radius: 4px; padding: 2px; margin: 0 2px; min-width: 0; min-height: 0; } + +.view:selected:focus, .view:selected, iconview:selected, .view text:selected, iconview text:selected, textview text:selected, .view text selection:focus, iconview text selection:focus, .view text selection, iconview text selection, textview text selection:focus, textview text selection, flowbox flowboxchild:selected, spinbutton:not(.vertical) selection, entry selection, modelbutton.flat:selected, .menuitem.button.flat:selected, treeview.view:selected:focus, treeview.view:selected, row:selected, calendar:selected { background-color: #bfc6b0; } + +iconview.hover:selected:focus, .hover.view:selected, iconview.hover:selected, iconview text.hover:selected:focus, textview text.hover:selected:focus, .view text.hover:selected, iconview text.hover:selected, textview text.hover:selected, iconview text selection.hover:focus, .view text selection.hover, iconview text selection.hover, textview text selection.hover, flowbox flowboxchild.hover:selected, spinbutton:not(.vertical) selection.hover, entry selection.hover, modelbutton.hover.flat:selected, .hover.menuitem.button.flat:selected, row.hover:selected, calendar.hover:selected { color: #42453E; } + +label:selected, .view:selected:focus, .view:selected, iconview:selected, .view text:selected, iconview text:selected, textview text:selected, .view text selection:focus, iconview text selection:focus, .view text selection, iconview text selection, textview text selection:focus, textview text selection, flowbox flowboxchild:selected, spinbutton:not(.vertical) selection, entry selection, modelbutton.flat:selected, .menuitem.button.flat:selected, treeview.view:selected:focus, treeview.view:selected, row:selected, calendar:selected { color: #42453E; } + +label:disabled selection, label:disabled:selected, iconview:disabled:selected:focus, .view:disabled:selected, iconview:disabled:selected, iconview text:disabled:selected:focus, textview text:disabled:selected:focus, .view text:disabled:selected, iconview text:disabled:selected, textview text:disabled:selected, iconview text selection:disabled:focus, .view text selection:disabled, iconview text selection:disabled, textview text selection:disabled, flowbox flowboxchild:disabled:selected, spinbutton:not(.vertical) selection:disabled, entry selection:disabled, modelbutton.flat:disabled:selected, .menuitem.button.flat:disabled:selected, row:disabled:selected, calendar:disabled:selected { color: #818577; } + +label:backdrop selection, label:backdrop:selected, iconview:backdrop:selected:focus, .view:backdrop:selected, iconview:backdrop:selected, iconview text:backdrop:selected:focus, textview text:backdrop:selected:focus, .view text:backdrop:selected, iconview text:backdrop:selected, textview text:backdrop:selected, iconview text selection:backdrop:focus, .view text selection:backdrop, iconview text selection:backdrop, textview text selection:backdrop, flowbox flowboxchild:backdrop:selected, spinbutton:not(.vertical) selection:backdrop, entry selection:backdrop, modelbutton.flat:backdrop:selected, .menuitem.button.flat:backdrop:selected, row:backdrop:selected, calendar:backdrop:selected { color: #fcfcfc; } + +label:backdrop selection:disabled, label:backdrop:disabled:selected, .view:backdrop:disabled:selected, iconview:backdrop:disabled:selected, .view text:backdrop:disabled:selected, iconview text:backdrop:disabled:selected, textview text:backdrop:disabled:selected, .view text selection:backdrop:disabled, iconview text selection:backdrop:disabled, textview text selection:backdrop:disabled, flowbox flowboxchild:backdrop:disabled:selected, spinbutton:not(.vertical) selection:backdrop:disabled, entry selection:backdrop:disabled, modelbutton.flat:backdrop:disabled:selected, .menuitem.button.flat:backdrop:disabled:selected, row:backdrop:disabled:selected, calendar:backdrop:disabled:selected { color: #d1d6c7; } + +.monospace { font-family: monospace; } + +/********************** Touch Copy & Paste * */ +cursor-handle { background-color: transparent; background-image: none; box-shadow: none; border-style: none; } + +cursor-handle.top:dir(ltr), cursor-handle.bottom:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/text-select-start.png"), url("assets/text-select-start@2.png")); padding-left: 10px; } + +cursor-handle.bottom:dir(ltr), cursor-handle.top:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/text-select-end.png"), url("assets/text-select-end@2.png")); padding-right: 10px; } + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above.png"), url("assets/slider-horz-scale-has-marks-above@2.png")); } + +cursor-handle.top:hover:dir(ltr), cursor-handle.bottom:hover:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/text-select-start-hover.png"), url("assets/text-select-start-hover@2.png")); padding-left: 10px; } + +cursor-handle.bottom:hover:dir(ltr), cursor-handle.top:hover:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/text-select-end-hover.png"), url("assets/text-select-end-hover@2.png")); padding-right: 10px; } + +cursor-handle.insertion-cursor:hover:dir(ltr), cursor-handle.insertion-cursor:hover:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-hover.png"), url("assets/slider-horz-scale-has-marks-above-hover@2.png")); } + +cursor-handle.top:active:dir(ltr), cursor-handle.bottom:active:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/text-select-start-active.png"), url("assets/text-select-start-active@2.png")); padding-left: 10px; } + +cursor-handle.bottom:active:dir(ltr), cursor-handle.top:active:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/text-select-end-active.png"), url("assets/text-select-end-active@2.png")); padding-right: 10px; } + +cursor-handle.insertion-cursor:active:dir(ltr), cursor-handle.insertion-cursor:active:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-active.png"), url("assets/slider-horz-scale-has-marks-above-active@2.png")); } + +.context-menu { font: initial; } + +.keycap { min-width: 20px; min-height: 25px; margin-top: 2px; padding-bottom: 3px; padding-left: 6px; padding-right: 6px; color: #000000; background-color: #ffffff; border: 1px solid; border-color: #c0bebc; border-radius: 5px; box-shadow: inset 0 -3px #f1f0ef; font-size: smaller; } + +.keycap:backdrop { background-color: #fcfcfc; color: #2f2f2f; transition: 200ms ease-out; } + +:not(decoration):not(window):drop(active):focus, :not(decoration):not(window):drop(active) { border-color: #93af66; box-shadow: inset 0 0 0 1px #93af66; caret-color: #93af66; } + +stackswitcher button.text-button { min-width: 100px; } + +stackswitcher button.circular, stackswitcher button.text-button.circular { min-width: 32px; min-height: 32px; padding: 0; } + +/************* App Icons * */ +/* Outline for low res icons */ +.lowres-icon { -gtk-icon-shadow: 0 -1px rgba(0, 0, 0, 0.05), 1px 0 rgba(0, 0, 0, 0.1), 0 1px rgba(0, 0, 0, 0.3), -1px 0 rgba(0, 0, 0, 0.1); } + +/* Dropshadow for large icons */ +.icon-dropshadow { -gtk-icon-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 -1px rgba(0, 0, 0, 0.05), 1px 0 rgba(0, 0, 0, 0.1), 0 1px rgba(0, 0, 0, 0.3), -1px 0 rgba(0, 0, 0, 0.1); } + +/********* Emoji * */ +popover.emoji-picker { padding-left: 0; padding-right: 0; } + +popover.emoji-picker entry.search { margin: 3px 5px 5px 5px; } + +button.emoji-section { border-color: transparent; border-width: 3px; border-style: none none solid; border-radius: 0; margin: 2px 4px 2px 4px; padding: 3px 0 0; min-width: 32px; min-height: 28px; /* reset props inherited from the button style */ background: none; box-shadow: none; text-shadow: none; outline-offset: -5px; } + +button.emoji-section:first-child { margin-left: 7px; } + +button.emoji-section:last-child { margin-right: 7px; } + +button.emoji-section:backdrop:not(:checked) { border-color: transparent; } + +button.emoji-section:hover { border-color: #94908c; } + +button.emoji-section:checked { border-color: #bfc6b0; } + +button.emoji-section label { padding: 0; opacity: 0.55; } + +button.emoji-section:hover label { opacity: 0.775; } + +button.emoji-section:checked label { opacity: 1; } + +popover.emoji-picker .emoji { font-size: x-large; padding: 6px; } + +popover.emoji-picker .emoji :hover { background: #bfc6b0; border-radius: 6px; } + +popover.emoji-completion arrow { border: none; background: none; } + +popover.emoji-completion contents row box { padding: 2px 10px; } + +popover.emoji-completion .emoji:hover { background: #000000; } + +/*************** core colors * */ +/* Core colors are only used in the current file, as bases for other color declarations. */ +/* Core color for blue widgets in TraditionalOK. */ +/* Core color for gray widgets in TraditionalOK. */ +/* set $ambiance to null, unless already defined */ +/*********** Tweak Tool * */ +list.tweak-categories separator { background: transparent; } + +/*********** Nautilus * */ +.nautilus-window { background-image: none; background-color: white; /* dim the icon when not checked */ } + +.nautilus-window .nautilus-canvas-item.dim-label, .nautilus-window label.nautilus-canvas-item.separator, .nautilus-window .titlebar:not(headerbar) .nautilus-canvas-item.subtitle, .titlebar:not(headerbar) .nautilus-window .nautilus-canvas-item.subtitle, .nautilus-window headerbar .nautilus-canvas-item.subtitle, headerbar .nautilus-window .nautilus-canvas-item.subtitle, .nautilus-window .nautilus-list-dim-label { color: #8d8d8d; } + +.nautilus-window:backdrop { background-color: #fcfcfc; } + +.nautilus-window placessidebar { background-color: #edeceb; } + +.nautilus-window placessidebar:backdrop { background-color: #edeceb; } + +.nemo-window .view:backdrop, .nemo-window iconview:backdrop, .nautilus-window *scrolledwindow:backdrop { opacity: 0.9; } + +.nautilus-window infobar { background-color: #e6e6e6; } + +.nautilus-window infobar:backdrop { background-color: #edeceb; } + +.nautilus-window paned box.floating-bar { background-color: #edeceb; border-style: solid; border-color: #a8a5a2; border-width: 1px 0 0 1px; border-radius: 4px 0 0 0; } + +.nautilus-window paned box.floating-bar button:dir(ltr).circular.flat.image-button { background: radial-gradient(circle at 50%, white 35%, #edeceb 1%); color: #c7162b; } + +.nautilus-window paned box.floating-bar button:dir(ltr).circular.flat.image-button:hover { border: 1px solid #94908c; background: radial-gradient(circle at 50%, white 30%, rgba(0, 0, 0, 0.05) 16%); color: #de1930; } + +.nautilus-window .searchbar-container searchbar { background: transparent; border-color: transparent; } + +.nautilus-window treeview:drop(active):focus { border-bottom: 1px solid #93af66; } + +.nautilus-window treeview.view header button { background-color: #ffffff; background-image: none; border-color: rgba(148, 144, 140, 0.4); border-left: 1px; } + +.nautilus-window treeview.view header button:hover { background-color: #edeceb; } + +.nautilus-window treeview.view header button:backdrop { background-color: #fcfcfc; } + +.nautilus-window .nautilus-list-view .view, .nautilus-window .nautilus-list-view iconview { border-bottom: 1px solid rgba(148, 144, 140, 0.2); } + +.nautilus-window .nautilus-list-view .view.dnd, .nautilus-window .nautilus-list-view iconview.dnd { border-style: none; } + +.nautilus-window .nautilus-list-view .view treeview:selected, .nautilus-window .nautilus-list-view iconview treeview:selected { background-color: #e1dfde; color: #000000; } + +.nautilus-window .nautilus-list-view .view treeview:selected:hover, .nautilus-window .nautilus-list-view iconview treeview:selected:hover { background-color: #d5d3d0; } + +.nautilus-window .nautilus-list-view .view treeview:selected:backdrop, .nautilus-window .nautilus-list-view iconview treeview:selected:backdrop { color: #2f2f2f; background-color: #e1dfde; } + +.nautilus-window notebook > header { background: #edeceb; } + +.nautilus-window paned > separator { background-image: image(rgba(148, 144, 140, 0.4)); } + +.nautilus-window paned > separator:backdrop { background-image: image(rgba(148, 144, 140, 0.3)); } + +.nautilus-window entry.search > * { margin: 5px; } + +.nautilus-window .path-bar-box { border-radius: 5px; border: 1px solid #1b1a1a; background-color: #434040; padding-right: 6px; } + +.nautilus-window .path-bar-box:backdrop { border-color: #323030; } + +.nautilus-window .path-bar-box:backdrop { border-color: #262626; } + +.nautilus-window .nautilus-path-bar button { margin: 0px; } + +.nautilus-window .nautilus-path-bar button:first-child { border-width: 0px 1px 0px 0px; border-radius: 3.5px 0px 0px 3.5px; } + +.nautilus-window .nautilus-path-bar button:not(:first-child) { border-width: 0px 1px 0px 1px; border-radius: 0px 0px 0px 0px; } + +.nautilus-window .nautilus-path-bar button:not(:checked) image { opacity: 0.8; } + +.nautilus-window .nautilus-canvas-item { outline-width: 0; background-color: rgba(255, 255, 255, 0.1); } + +.nautilus-window .nautilus-canvas-item:selected:not(:backdrop) { color: #42453E; } + +.nautilus-window .nautilus-canvas-item:selected:not(:backdrop):dir(ltr) { background-color: #bfc6b0; } + +.nautilus-window .nautilus-canvas-item:selected:not(:backdrop):not(:dir(ltr)) { background-color: rgba(175, 175, 175, 0.5); } + +.nautilus-window .nautilus-canvas-item:backdrop:selected { background-color: #bfc6b0; color: #fcfcfc; } + +.disk-space-display { border-style: solid; border-width: 2px; } + +.disk-space-display.unknown { background-color: #edeceb; border-color: rgba(237, 236, 235, 0.3); color: #edeceb; } + +.disk-space-display.unknown.border { color: rgba(237, 236, 235, 0.3); } + +.disk-space-display.used { background-color: #4893f2; border-color: rgba(72, 147, 242, 0.3); color: #4893f2; } + +.disk-space-display.used.border { color: rgba(72, 147, 242, 0.3); } + +.disk-space-display.free { background-color: #d5d3d0; border-color: rgba(213, 211, 208, 0.3); color: #d5d3d0; } + +.disk-space-display.free.border { color: rgba(213, 211, 208, 0.3); } + +/************ Terminal * */ +terminal-window .terminal-screen { background-color: #300A24; color: white; } + +terminal-window .terminal-screen:backdrop { background-color: #380c2a; color: #fcfcfc; } + +terminal-window notebook scrollbar { background-color: transparent; border-color: transparent; } + +terminal-window notebook scrollbar:backdrop { background-color: transparent; border-color: transparent; } + +terminal-window notebook scrollbar slider { margin: 0; border-width: 3px; } + +terminal-window notebook scrollbar slider:backdrop { background-color: alpha(currentColor,0.1); } + +terminal-window notebook scrollbar slider:disabled { background-color: transparent; } + +terminal-window notebook scrollbar.dragging, terminal-window notebook scrollbar.hovering { background-color: transparent; } + +/****************** GNOME Software * */ +.review-row { margin-bottom: 10px; padding: 6px 12px; box-shadow: 0 1px 2.5px rgba(0, 0, 0, 0.25); outline-offset: -1px; } + +.review-row, .review-row:not(:selected):not(:backdrop):hover, .review-row:not(:selected):not(:backdrop):active { background-color: #ffffff; } + +.review-row:backdrop { background-color: #fcfcfc; } + +.review-row:last-child { margin-bottom: 0; } + +.review-row > grid { margin-top: -24px; } + +.app-listbox-header { background: #c0bebc; } + +.list-box-app-row { border-radius: 0; border-color: #94908c; border-style: none solid solid solid; border-width: 0 1px 1px 1px; margin: -1px 0 0 0; } + +.list-box-app-row ~ separator { background-color: #edeceb; border: none; min-height: 0px; } + +box > list row.list-box-app-row { border: none; } + +.counter-label { margin-top: 2px; margin-bottom: 2px; border-width: 0px; padding-left: 2px; padding-right: 2px; box-shadow: inset 0 0 10px 10px #93af66; } + +/********* Gedit * */ +.gedit-bottom-panel-paned notebook > header { background: #F7F7F7; } + +.gedit-bottom-panel-paned ~ statusbar { border-top: 1px solid #94908c; } + +.gedit-bottom-panel-paned ~ statusbar:backdrop { border-color: #a5a29f; } + +.gedit-search-slider { background: #edeceb; border: 1px solid #94908c; border-top-style: none; padding: 4px 8px; border-radius: 0 0 5px 5px; } + +.gedit-search-slider:backdrop { background-color: #edeceb; border-color: #a5a29f; } + +.gedit-search-entry-occurrences-tag { color: rgba(0, 0, 0, 0.35); border: none; box-shadow: none; margin: 2px; padding: 2px; } + +.gedit-document-panel { background-color: #edeceb; } + +.gedit-document-panel row.activatable { padding: 6px; } + +.gedit-document-panel row button { min-width: 22px; min-height: 22px; padding: 0; margin: 0; border: none; } + +.gedit-document-panel row:hover button:hover { background-color: rgba(0, 0, 0, 0.15); } + +.gedit-document-panel row:hover button:active { background-color: rgba(0, 0, 0, 0.25); } + +.gedit-document-panel row:hover:selected button:hover { color: #42453E; } + +/*************** GNOME Disks * */ +headerbar button image ~ window decoration ~ menu separator { background: #94908c; } + +/******** Nemo * */ +.nemo-properties-dialog .dialog-action-box .dialog-action-area { margin: 2px 6px 4px; } + +.nemo-properties-dialog toolbar stackswitcher.linked button { margin-right: 0; } + +.nemo-properties-dialog toolbar stackswitcher.linked button:backdrop { color: #2f2f2f; background-color: #edeceb; } + +.nemo-window .sidebar scrolledwindow.frame.nemo-places-sidebar { border: none; } + +.nemo-window .sidebar viewport.frame box.vertical treeview.view.places-treeview { background-image: image(#f6f6f5); border-radius: 0; } + +.nemo-window .sidebar viewport.frame box.vertical treeview.view.places-treeview:backdrop { background-image: image(#f5f4f4); } + +.nemo-window .sidebar viewport.frame box.vertical treeview.view.places-treeview:selected { background: #bfc6b0; } + +.nemo-window .sidebar viewport.frame box.vertical treeview.view.places-treeview:not(:selected):not(:backdrop):hover { background-image: image(rgba(0, 0, 0, 0.05)); } + +.nemo-window .nemo-inactive-pane .view, .nemo-window .nemo-inactive-pane iconview, .nemo-window .nemo-inactive-pane iconview { background-color: #edeceb; } + +.nemo-window .nemo-window-pane widget.entry { border: 1px solid; border-radius: 3px; color: #000000; border-color: #bfc6b0; background-color: #edeceb; } + +.nemo-window .nemo-window-pane widget.entry:selected { border: 1px solid; border-radius: 3px; color: #42453E; border-color: #bfc6b0; background-color: #bfc6b0; } + +.nemo-window toolbar.horizontal.primary-toolbar { border-bottom: 1px solid #94908c; } + +.nemo-window toolbar.horizontal.primary-toolbar widget.linked.raised button:first-child widget { -gtk-icon-source: -gtk-icontheme("go-previous-symbolic"); } + +.nemo-window toolbar.horizontal.primary-toolbar widget.linked.raised button:last-child widget { -gtk-icon-source: -gtk-icontheme("go-next-symbolic"); } + +.nemo-window toolbar.horizontal.primary-toolbar toolitem box widget * { min-height: 0; min-width: 0; } + +.nemo-window toolbar.horizontal.primary-toolbar .linked button { margin-right: 0; } + +.nemo-window toolbar.horizontal.primary-toolbar button { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +.nemo-window toolbar.horizontal.primary-toolbar button:hover { color: #000000; outline-color: #94908c; border-color: #94908c; border-bottom-color: #b3afab; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); } + +.nemo-window toolbar.horizontal.primary-toolbar button:active, .nemo-window toolbar.horizontal.primary-toolbar button:checked { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +.nemo-window toolbar.horizontal.primary-toolbar button:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.nemo-window toolbar.horizontal.primary-toolbar button:disabled:active, .nemo-window toolbar.horizontal.primary-toolbar button:disabled:checked { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #e9e7e6, #f1f1f0 3px, #f4f3f2 4px, #efeeed 50%, #ebeae9 50%, #e4e3e1); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.nemo-window toolbar.horizontal.primary-toolbar button:backdrop { color: #2f2f2f; border-color: #a5a29f; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.nemo-window toolbar.horizontal.primary-toolbar button:backdrop:active, .nemo-window toolbar.horizontal.primary-toolbar button:backdrop:checked { color: #2f2f2f; border-color: #a5a29f; background-image: image(#dddbd8); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.nemo-window toolbar.horizontal.primary-toolbar button:backdrop:disabled { color: #c9c6c3; border-color: #a5a29f; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.nemo-window toolbar.horizontal.primary-toolbar button:backdrop:disabled:active, .nemo-window toolbar.horizontal.primary-toolbar button:backdrop:disabled:checked { color: #c9c6c3; border-color: #a5a29f; background-image: image(#dddbd8); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +/************* GNOME ToDo * */ +.org-gnome-Todo taskrow.activatable.new-task-row button.popup.toggle { border-radius: 0px; border: none; border-left: 1px solid #94908c; padding-left: 10px; padding-right: 10px; -gtk-outline-radius: 0px; } + +.org-gnome-Todo viewport.view, .org-gnome-Todo listbox.transparent { background-color: #f2f2f2; } + +.org-gnome-Todo viewport.view:backdrop, .org-gnome-Todo listbox.transparent:backdrop { background-color: #fcfcfc; } + +/*********** Firefox * */ +#MozillaGtkWidget.background menu, #MozillaGtkWidget.background .menu, #MozillaGtkWidget.background .context-menu { border-radius: 0; } + +#MozillaGtkWidget.background menubar, #MozillaGtkWidget.background .menubar, #MozillaGtkWidget.background menubar > menuitem:hover { background-color: #323030; color: #000000; } + +#MozillaGtkWidget.background scrollbar { background-color: transparent; border-color: transparent; } + +#MozillaGtkWidget.background scrollbar slider { background-color: #454545; } + +#MozillaGtkWidget.background scrollbar slider:hover { background-color: #161616; } + +#MozillaGtkWidget.background scrollbar slider:hover:active { background-color: #a7b092; } + +#MozillaGtkWidget.background scrollbar slider:backdrop { background-color: #a1a0a0; } + +#MozillaGtkWidget.background scrollbar slider:disabled { background-color: transparent; } + +#MozillaGtkWidget.background scrollbar trough { background-color: rgba(237, 236, 235, 0.2); } + +normal-button { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +normal-button:hover { color: #000000; outline-color: #94908c; border-color: #94908c; border-bottom-color: #b3afab; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); } + +normal-button:active { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +normal-button:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +/*********** Ubiquity * */ +#live_installer #title_eventbox { background-color: #edeceb; color: #000000; } + +#live_installer #title_eventbox:backdrop { background-color: #edeceb; color: #2f2f2f; } + +#live_installer #dot_grid progressbar { border-radius: 100%; padding: 1px; padding-top: 2px; background-color: white; border: 1px solid #4893f2; } + +#live_installer #dot_grid progressbar .empty { border-radius: 100%; background-color: white; padding: 0px; } + +#live_installer #dot_grid progressbar .full progress { border-radius: 100%; padding: 1px; padding-top: 2px; margin-bottom: 2px; } + +#dialog-action_area1 { padding-bottom: 5px; padding-right: 5px; } + +/*********** Geary * */ +.geary-expanded headerbar { border: none; } + +/*********** usb-creator-gtk * */ +#dialog-action_area3 { margin: 5px; } + +/*********** Evolution * */ +assistant.background scrolledwindow .vertical checkbutton { margin-left: 1px; } + +/*********** Mate * */ +/************** Mate-Panel * */ +/* the panel bar itself */ +#PanelPlug, .mate-panel-menu-bar, PanelToplevel.background { background-color: #edeceb; background-image: none; color: #000000; text-shadow: none; } + +#PanelPlug menu, .mate-panel-menu-bar menu, PanelToplevel.background menu { border-radius: 2px; padding: 4px 0px; } + +.csd #PanelPlug menu, .csd .mate-panel-menu-bar menu, .csd PanelToplevel.background menu { border: none; border-radius: 2px; } + +#PanelPlug menubar { box-shadow: none; } + +/* workaround to avoid unwanted black frames behind menus if switching compositor on/off */ +.mate-panel-menu-bar .window-frame.csd.popup { box-shadow: none; } + +menubar > menuitem menu:dir(rtl), menubar > menuitem menu:dir(ltr), .menubar > menuitem menu:dir(rtl), .menubar > menuitem menu:dir(ltr) { border-radius: 2px; } + +menubar .csd.popup decoration, .menubar .csd.popup decoration { border-radius: 2px; } + +/* hide buttons */ +PanelToplevel > widget > button { border-image: none; background-image: none; background: transparent; border-style: none; border-radius: 0px; padding: 0px; box-shadow: none; color: #000000; } + +#PanelApplet { border-radius: 2px; } + +PanelWidget > PanelSeparator { border-width: 0; background-color: transparent; color: #94908c; } + +/* the grid left from wnckpager and wncktasklist */ +MatePanelAppletFrameDBus > MatePanelAppletFrameDBus { background-image: none; background-color: transparent; background-repeat: no-repeat; background-position: left; } + +/* this makes text readable with all kind of wallpapers if using a transparent panel */ +#PanelApplet label, .mate-panel-menu-bar menubar > menuitem { color: #000000; text-shadow: none; } + +#PanelApplet label:hover, .mate-panel-menu-bar menubar > menuitem:hover { color: #000000; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); } + +/* outlines */ +window.background, .mate-panel-menu-bar menubar, .mate-panel-menu-bar button, .mate-panel-menu-bar PanelApplet { outline-style: solid; outline-offset: -2px; outline-color: #94908c; } + +PanelApplet.wnck-applet .wnck-pager { outline-style: solid; outline-offset: -1px; outline-color: #94908c; } + +/* main menu */ +/* set normal menubar menuitem */ +.mate-panel-menu-bar menubar > menuitem { background-image: none; box-shadow: none; } + +/* set selected menubar menuitem */ +.mate-panel-menu-bar menubar > menuitem:hover { background-color: transparent; background-clip: border-box; background-image: image(#f7f6f6); } + +/* set normal menubar menu menuitem */ +.mate-panel-menu-bar menubar > menuitem > .popup.csd > menu > menuitem { padding: 4px 5px 4px 5px; border-width: 0px; } + +/* set Mate menu menuitem */ +.mate-panel-menu-bar menu menuitem { padding: 4px 5px 4px 5px; border-width: 0px; } + +/* all applets */ +.mate-panel-menu-bar #PanelApplet button.toggle, .mate-panel-menu-bar #PanelApplet button.flat.toggle { background-color: transparent; color: #000000; border-radius: 4px; border-color: #94908c; border-right-width: 1px; border-left-width: 1px; border-color: transparent; box-shadow: inset 0px 1px #94908c, inset 0px -1px #94908c, inset 1px 0px #94908c, inset -1px 0px #94908c; border-image: none; text-shadow: none; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); } + +.mate-panel-menu-bar #PanelApplet button.toggle:hover, .mate-panel-menu-bar #PanelApplet button.toggle:active:hover, .mate-panel-menu-bar #PanelApplet button.toggle:checked:hover, .mate-panel-menu-bar #PanelApplet button.flat.toggle:hover, .mate-panel-menu-bar #PanelApplet button.flat.toggle:active:hover, .mate-panel-menu-bar #PanelApplet button.flat.toggle:checked:hover { background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); border-color: #d3d8c7; } + +.mate-panel-menu-bar #PanelApplet button.toggle:checked, .mate-panel-menu-bar #PanelApplet button.flat.toggle:checked { background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); } + +/* clock window */ +#MatePanelPopupWindow { border-radius: 4px; } + +#PanelApplet > #clock-applet-button.flat.toggle { background-color: transparent; background-image: none; border-color: transparent; border-width: 0px; box-shadow: none; } + +#PanelApplet > #clock-applet-button.flat.toggle:hover { box-shadow: inset 0px 1px #94908c, inset 0px -1px #94908c, inset 1px 0px #94908c, inset -1px 0px #94908c; background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); } + +#PanelApplet > #clock-applet-button.flat.toggle:checked { box-shadow: inset 0px 1px #94908c, inset 0px -1px #94908c, inset 1px 0px #94908c, inset -1px 0px #94908c; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); } + +/* volume applet */ +.mate-panel-applet-slider, .mate-panel-applet-slider.background { border-radius: 2px; border: 1px solid rgba(0, 0, 0, 0.23); background: transparent; } + +.mate-panel-applet-slider frame, .mate-panel-applet-slider.background frame { background-color: #edeceb; border-radius: 2px; padding: 1px; margin: 1px; /* brightness applet */ } + +.mate-panel-applet-slider frame border, .mate-panel-applet-slider.background frame border { border-image: none; border-style: none; border-radius: 2px; } + +.mate-panel-applet-slider frame frame, .mate-panel-applet-slider.background frame frame { background-color: transparent; padding: 3px; } + +.mate-panel-applet-slider frame button, .mate-panel-applet-slider.background frame button { padding: 4px 5px 4px 0px; background-image: none; background-color: transparent; border-style: none; border-image: none; color: #000000; margin: 0px; } + +/* mate-indicator-applet */ +/* needed for a transparent panel */ +#fast-user-switch-applet > #fast-user-switch-menubar { background-color: transparent; } + +/* Classic icon style */ +.mate-panel-menu-bar { -PanelMenuBar-icon-visible: true; } + +/* system-monitor-applet, kill light frame border */ +.multiload-applet > box.horizontal > box.vertical > frame > border { border-color: transparent; } + +.multiload-applet > box.horizontal > box.vertical > frame { box-shadow: 0 3px 9px 1px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(0, 0, 0, 0.23); } + +/***************** Mate-terminal * */ +/* override for pavu-control */ +window.background.mate-terminal > box.vertical > notebook > header.top, window.background.mate-terminal > box.vertical > notebook > stack > box { border-style: none; border-width: 0px; } + +/* vte use hardcoded colors as upstream, ubuntu is patched */ +window.background.mate-terminal scrollbar, window.background.mate-terminal scrollbar:backdrop, window.background.mate-terminal scrollbar.vertical, window.background.mate-terminal scrollbar.vertical:backdrop { background-color: transparent; } + +/****************** multimedia OSD * */ +MsdOsdWindow.background.osd { border-radius: 7px; border: 1px solid rgba(255, 255, 255, 0.15); background-color: rgba(37, 38, 33, 0.8); color: #eeeeec; } + +MsdOsdWindow.background.osd .trough { border-radius: 4px; border: none; background: #3e3e37; } + +MsdOsdWindow.background.osd .progressbar { border-radius: 4px; background-color: #eeeeec; border: none; } + +.background.osd { color: #eeeeec; background-image: none; background-color: rgba(37, 38, 33, 0.8); border-radius: 7px; border: 1px solid rgba(255, 255, 255, 0.15); } + +.background.osd :selected { background-color: #bfc6b0; } + +/************** Brisk-menu * */ +.brisk-menu { /* classic session button */ } + +.brisk-menu .apps-list, .brisk-menu .categories-list, .brisk-menu entry { margin: 4px; } + +.brisk-menu .apps-list, .brisk-menu .categories-list { border-radius: 2px; } + +.brisk-menu .apps-list row:selected, .brisk-menu .categories-list row:selected { background-color: #bfc6b0; color: #42453E; } + +.brisk-menu button.flat.session-button { padding: 5px 6px; min-width: 24px; } + +.brisk-menu scrolledwindow { border-width: 1px; border-style: solid; border-color: transparent; margin: 4px; } + +.brisk-menu scrollbar { background-image: none; background-color: transparent; border-style: solid; border-color: transparent; } + +iconview { border-radius: 4px; } + +iconview:hover { background-color: #d7dbcd; } + +/* mate-keyboard-layout-view, mate-keyboard-layout-chooser */ +/* this way it styles only the border of the keys, the bg of the map itself use the .view class */ +matekbd-keyboard-drawing { background-color: #edeceb; } + +matekbd-keyboard-drawing:selected { background-color: #bfc6b0; color: #42453E; } + +#xkb-layout-chooser > box.dialog-vbox > box.vertical > box.vertical > frame > border { border-radius: 0px; } + +scrollbar { background-image: none; background-color: transparent; } + +messagedialog.background:not(.csd) .dialog-action-area button { border-radius: 4px; -gtk-outline-radius: 4px; border: 1px solid #94908c; margin: 4px; margin-bottom: 6px; } + +messagedialog.background:not(.csd) .dialog-action-area button:first-child { margin-left: 6px; } + +messagedialog.background:not(.csd) .dialog-action-area button:last-child { margin-right: 6px; } + +/************** Caja * */ +window.background.caja-navigation-window #Toolbar:backdrop { background-color: #edeceb; } + +.caja-pathbar button { min-width: 24px; border-radius: 0; border-right-width: 0; margin-right: -3px; } + +.caja-pathbar button.slider-button:nth-child(odd) { border-radius: 4px 0px 0px 4px; } + +.caja-pathbar button.slider-button:nth-child(even) { border-radius: 0 4px 4px 0; border-right-width: 1px; } + +.background:not(.csd) headerbar:not(.titlebar) { border-radius: 0; box-shadow: none; } + +#slab_section_style2.vertical:dir(ltr) { background-color: #ffffff; } + +#slab_section_style2.vertical:dir(ltr), #slab_section_style2.vertical:dir(ltr):dir(ltr), #slab_section_style2.vertical:dir(ltr) label, #slab_section_style2.vertical:dir(ltr) label:dir(ltr) { color: #1a1a1a; } + +#slab_section_style2.vertical:dir(ltr):backdrop, #slab_section_style2.vertical:dir(ltr):dir(ltr):backdrop, #slab_section_style2.vertical:dir(ltr) label:backdrop, #slab_section_style2.vertical:dir(ltr) label:dir(ltr):backdrop { color: rgba(26, 26, 26, 0.69); } + +window#Main.background #search { background: #ffffff; color: #000000; box-shadow: inset 100px 100px #ffffff; border-bottom: 1px solid #94908c; } + +window#Main.background #search entry { border-color: #94908c; } + +window > box.vertical > box.vertical > box.vertical button.text-button { padding-left: 0px; padding-right: 0px; min-width: 2px; margin: 0px; } + +MatePanelAppletFrameDBus > MatePanelAppletFrameDBus { background-image: -gtk-scaled(url("assets/panel-grid.svg")); background-color: transparent; color: #8f8f8f; background-repeat: no-repeat; background-position: left; } + +/* for firefox and probably other apps */ +label:selected, label selection, label selection:focus, label selection:hover { color: #42453E; } + +headerbar *, button * { text-shadow: none; } + +spinner:not(:backdrop) { color: #19B6EE; } + +button.suggested-action spinner, button.destructive-action spinner { color: #42453E; } + +button.suggested-action spinner:backdrop, button.destructive-action spinner:backdrop { color: #fcfcfc; } + +button.titlebutton:not(.appmenu) { min-height: 24px; min-width: 24px; padding: 2px; } + +headerbar button.titlebutton:not(.appmenu).maximize, headerbar button.titlebutton:not(.appmenu).minimize, headerbar button.titlebutton:not(.appmenu).close, .titlebar button.titlebutton:not(.appmenu).maximize, .titlebar button.titlebutton:not(.appmenu).minimize, .titlebar button.titlebutton:not(.appmenu).close, headerbar.selection-mode button.titlebutton:not(.appmenu).maximize, headerbar.selection-mode button.titlebutton:not(.appmenu).minimize, headerbar.selection-mode button.titlebutton:not(.appmenu).close, button.titlebutton:not(.appmenu).maximize, button.titlebutton:not(.appmenu).minimize, button.titlebutton:not(.appmenu).close { color: white; -gtk-icon-shadow: 0 -1px black, 0 1px black, -1px 0px black, 1px 0px black; background-image: linear-gradient(to bottom, #d3d8c7, #c9cfbb 50%, #c5cbb7 50%, #bbc2ab); box-shadow: inset 0px 1px rgba(255, 255, 255, 0.1), inset 0px -1px rgba(255, 255, 255, 0.1), inset 1px 0px rgba(255, 255, 255, 0.1), inset -1px 0px rgba(255, 255, 255, 0.1); border-color: #48668a; } + +headerbar button.titlebutton:not(.appmenu).maximize:backdrop, headerbar button.titlebutton:not(.appmenu).minimize:backdrop, headerbar button.titlebutton:not(.appmenu).close:backdrop, .titlebar button.titlebutton:not(.appmenu).maximize:backdrop, .titlebar button.titlebutton:not(.appmenu).minimize:backdrop, .titlebar button.titlebutton:not(.appmenu).close:backdrop, headerbar.selection-mode button.titlebutton:not(.appmenu).maximize:backdrop, headerbar.selection-mode button.titlebutton:not(.appmenu).minimize:backdrop, headerbar.selection-mode button.titlebutton:not(.appmenu).close:backdrop, button.titlebutton:not(.appmenu).maximize:backdrop, button.titlebutton:not(.appmenu).minimize:backdrop, button.titlebutton:not(.appmenu).close:backdrop { background-image: none; box-shadow: inset 0px 1px rgba(255, 255, 255, 0.5), inset 0px -1px rgba(255, 255, 255, 0.5), inset 1px 0px rgba(255, 255, 255, 0.5), inset -1px 0px rgba(255, 255, 255, 0.5); border-color: #94908c; } + +headerbar button.titlebutton:not(.appmenu).maximize:hover, headerbar button.titlebutton:not(.appmenu).maximize:backdrop:hover, headerbar button.titlebutton:not(.appmenu).minimize:hover, headerbar button.titlebutton:not(.appmenu).minimize:backdrop:hover, headerbar button.titlebutton:not(.appmenu).close:hover, headerbar button.titlebutton:not(.appmenu).close:backdrop:hover, .titlebar button.titlebutton:not(.appmenu).maximize:hover, .titlebar button.titlebutton:not(.appmenu).maximize:backdrop:hover, .titlebar button.titlebutton:not(.appmenu).minimize:hover, .titlebar button.titlebutton:not(.appmenu).minimize:backdrop:hover, .titlebar button.titlebutton:not(.appmenu).close:hover, .titlebar button.titlebutton:not(.appmenu).close:backdrop:hover, headerbar.selection-mode button.titlebutton:not(.appmenu).maximize:hover, headerbar.selection-mode button.titlebutton:not(.appmenu).maximize:backdrop:hover, headerbar.selection-mode button.titlebutton:not(.appmenu).minimize:hover, headerbar.selection-mode button.titlebutton:not(.appmenu).minimize:backdrop:hover, headerbar.selection-mode button.titlebutton:not(.appmenu).close:hover, headerbar.selection-mode button.titlebutton:not(.appmenu).close:backdrop:hover, button.titlebutton:not(.appmenu).maximize:hover, button.titlebutton:not(.appmenu).maximize:backdrop:hover, button.titlebutton:not(.appmenu).minimize:hover, button.titlebutton:not(.appmenu).minimize:backdrop:hover, button.titlebutton:not(.appmenu).close:hover, button.titlebutton:not(.appmenu).close:backdrop:hover { background-image: linear-gradient(to bottom, #d3d8c7, #c9cfbb); } + +headerbar button.titlebutton:not(.appmenu).maximize:active, headerbar button.titlebutton:not(.appmenu).maximize:backdrop:active, headerbar button.titlebutton:not(.appmenu).minimize:active, headerbar button.titlebutton:not(.appmenu).minimize:backdrop:active, headerbar button.titlebutton:not(.appmenu).close:active, headerbar button.titlebutton:not(.appmenu).close:backdrop:active, .titlebar button.titlebutton:not(.appmenu).maximize:active, .titlebar button.titlebutton:not(.appmenu).maximize:backdrop:active, .titlebar button.titlebutton:not(.appmenu).minimize:active, .titlebar button.titlebutton:not(.appmenu).minimize:backdrop:active, .titlebar button.titlebutton:not(.appmenu).close:active, .titlebar button.titlebutton:not(.appmenu).close:backdrop:active, headerbar.selection-mode button.titlebutton:not(.appmenu).maximize:active, headerbar.selection-mode button.titlebutton:not(.appmenu).maximize:backdrop:active, headerbar.selection-mode button.titlebutton:not(.appmenu).minimize:active, headerbar.selection-mode button.titlebutton:not(.appmenu).minimize:backdrop:active, headerbar.selection-mode button.titlebutton:not(.appmenu).close:active, headerbar.selection-mode button.titlebutton:not(.appmenu).close:backdrop:active, button.titlebutton:not(.appmenu).maximize:active, button.titlebutton:not(.appmenu).maximize:backdrop:active, button.titlebutton:not(.appmenu).minimize:active, button.titlebutton:not(.appmenu).minimize:backdrop:active, button.titlebutton:not(.appmenu).close:active, button.titlebutton:not(.appmenu).close:backdrop:active { background-image: linear-gradient(to bottom, #b2bb9d, #afb99a); } + +headerbar button.titlebutton:not(.appmenu).close, .titlebar button.titlebutton:not(.appmenu).close, headerbar.selection-mode button.titlebutton:not(.appmenu).close, button.titlebutton:not(.appmenu).close { -gtk-icon-shadow: 0 -2px black, 0 2px black, 2px 0px black, -2px 0px black, 0 -1px white, 0 1px white, -1px 0px white, 1px 0px white; } + +menu menuitem:hover, .menu menuitem:hover, .context-menu menuitem:hover { color: #42453E; background-color: #bfc6b0; } + +menubar > menuitem:hover, .menubar > menuitem:hover { color: #42453E; background-color: #bfc6b0; } + +.app-notification, .app-notification.frame { padding: 10px; margin: 12px; color: #1a1a1a; border-radius: 2px; background: none; background-color: white; border: 1px solid #94908c; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); text-shadow: none; } + +.app-notification button.text-button, .app-notification button.image-button, .app-notification button, .app-notification button:dir(ltr).text-button, .app-notification button:dir(ltr).image-button, .app-notification button:dir(ltr), .app-notification button:dir(rtl).text-button, .app-notification button:dir(rtl).image-button, .app-notification button:dir(rtl), .app-notification.frame button.text-button, .app-notification.frame button.image-button, .app-notification.frame button, .app-notification.frame button:dir(ltr).text-button, .app-notification.frame button:dir(ltr).image-button, .app-notification.frame button:dir(ltr), .app-notification.frame button:dir(rtl).text-button, .app-notification.frame button:dir(rtl).image-button, .app-notification.frame button:dir(rtl) { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +.app-notification button.text-button.flat, .app-notification button.image-button.flat, .app-notification button.flat, .app-notification button:dir(ltr).text-button.flat, .app-notification button:dir(ltr).image-button.flat, .app-notification button:dir(ltr).flat, .app-notification button:dir(rtl).text-button.flat, .app-notification button:dir(rtl).image-button.flat, .app-notification button:dir(rtl).flat, .app-notification.frame button.text-button.flat, .app-notification.frame button.image-button.flat, .app-notification.frame button.flat, .app-notification.frame button:dir(ltr).text-button.flat, .app-notification.frame button:dir(ltr).image-button.flat, .app-notification.frame button:dir(ltr).flat, .app-notification.frame button:dir(rtl).text-button.flat, .app-notification.frame button:dir(rtl).image-button.flat, .app-notification.frame button:dir(rtl).flat { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +.app-notification button.text-button:hover, .app-notification button.image-button:hover, .app-notification button:hover, .app-notification button:dir(ltr).text-button:hover, .app-notification button:dir(ltr).image-button:hover, .app-notification button:dir(ltr):hover, .app-notification button:dir(rtl).text-button:hover, .app-notification button:dir(rtl).image-button:hover, .app-notification button:dir(rtl):hover, .app-notification.frame button.text-button:hover, .app-notification.frame button.image-button:hover, .app-notification.frame button:hover, .app-notification.frame button:dir(ltr).text-button:hover, .app-notification.frame button:dir(ltr).image-button:hover, .app-notification.frame button:dir(ltr):hover, .app-notification.frame button:dir(rtl).text-button:hover, .app-notification.frame button:dir(rtl).image-button:hover, .app-notification.frame button:dir(rtl):hover { color: #000000; outline-color: #94908c; border-color: #94908c; border-bottom-color: #b3afab; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); } + +.app-notification button.text-button:active, .app-notification button.image-button:active, .app-notification button:active, .app-notification button:dir(ltr).text-button:active, .app-notification button:dir(ltr).image-button:active, .app-notification button:dir(ltr):active, .app-notification button:dir(rtl).text-button:active, .app-notification button:dir(rtl).image-button:active, .app-notification button:dir(rtl):active, .app-notification.frame button.text-button:active, .app-notification.frame button.image-button:active, .app-notification.frame button:active, .app-notification.frame button:dir(ltr).text-button:active, .app-notification.frame button:dir(ltr).image-button:active, .app-notification.frame button:dir(ltr):active, .app-notification.frame button:dir(rtl).text-button:active, .app-notification.frame button:dir(rtl).image-button:active, .app-notification.frame button:dir(rtl):active { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +.app-notification button.text-button:backdrop, .app-notification button.image-button:backdrop, .app-notification button:backdrop, .app-notification button:dir(ltr).text-button:backdrop, .app-notification button:dir(ltr).image-button:backdrop, .app-notification button:dir(ltr):backdrop, .app-notification button:dir(rtl).text-button:backdrop, .app-notification button:dir(rtl).image-button:backdrop, .app-notification button:dir(rtl):backdrop, .app-notification.frame button.text-button:backdrop, .app-notification.frame button.image-button:backdrop, .app-notification.frame button:backdrop, .app-notification.frame button:dir(ltr).text-button:backdrop, .app-notification.frame button:dir(ltr).image-button:backdrop, .app-notification.frame button:dir(ltr):backdrop, .app-notification.frame button:dir(rtl).text-button:backdrop, .app-notification.frame button:dir(rtl).image-button:backdrop, .app-notification.frame button:dir(rtl):backdrop { color: #2f2f2f; border-color: #a5a29f; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.app-notification button.text-button:backdrop.flat, .app-notification button.image-button:backdrop.flat, .app-notification button:backdrop.flat, .app-notification button:dir(ltr).text-button:backdrop.flat, .app-notification button:dir(ltr).image-button:backdrop.flat, .app-notification button:dir(ltr):backdrop.flat, .app-notification button:dir(rtl).text-button:backdrop.flat, .app-notification button:dir(rtl).image-button:backdrop.flat, .app-notification button:dir(rtl):backdrop.flat, .app-notification.frame button.text-button:backdrop.flat, .app-notification.frame button.image-button:backdrop.flat, .app-notification.frame button:backdrop.flat, .app-notification.frame button:dir(ltr).text-button:backdrop.flat, .app-notification.frame button:dir(ltr).image-button:backdrop.flat, .app-notification.frame button:dir(ltr):backdrop.flat, .app-notification.frame button:dir(rtl).text-button:backdrop.flat, .app-notification.frame button:dir(rtl).image-button:backdrop.flat, .app-notification.frame button:dir(rtl):backdrop.flat { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +.app-notification button.text-button:disabled, .app-notification button.image-button:disabled, .app-notification button:disabled, .app-notification button:dir(ltr).text-button:disabled, .app-notification button:dir(ltr).image-button:disabled, .app-notification button:dir(ltr):disabled, .app-notification button:dir(rtl).text-button:disabled, .app-notification button:dir(rtl).image-button:disabled, .app-notification button:dir(rtl):disabled, .app-notification.frame button.text-button:disabled, .app-notification.frame button.image-button:disabled, .app-notification.frame button:disabled, .app-notification.frame button:dir(ltr).text-button:disabled, .app-notification.frame button:dir(ltr).image-button:disabled, .app-notification.frame button:dir(ltr):disabled, .app-notification.frame button:dir(rtl).text-button:disabled, .app-notification.frame button:dir(rtl).image-button:disabled, .app-notification.frame button:dir(rtl):disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.app-notification:backdrop, .app-notification.frame:backdrop { background-color: #edeceb; color: rgba(26, 26, 26, 0.69); box-shadow: none; transition: 200ms ease-out; } + +.app-notification border, .app-notification.frame border { border: none; } + +*:not(button) { outline-color: #94908c; outline-style: solid; outline-offset: -2px; outline-width: 2px; -gtk-outline-radius: 4px; } + +:selected *:not(button) { outline-color: rgba(255, 255, 255, 0.7); } + +button { outline-color: #94908c; outline-style: solid; outline-offset: -2px; outline-width: 2px; -gtk-outline-radius: 4px; } + +button.suggested-action, button.suggested-action:hover, button.suggested-action:active, button.destructive-action, button.destructive-action:hover, button.destructive-action:active { outline-color: rgba(255, 255, 255, 0.7); } + +switch slider, switch:hover slider { outline-color: transparent; } + +switch:focus { box-shadow: 0 0 0 3px #c5c3c1; } + +checkbutton, radiobutton { outline-color: #94908c; outline-offset: 1px; outline-width: 2px; } + +row:selected checkbutton, treeview:selected checkbutton, row:selected radiobutton, treeview:selected radiobutton { outline-color: rgba(255, 255, 255, 0.7); } + +treeview { outline-color: #94908c; -gtk-outline-radius: 0px; } + +treeview:selected { outline-color: rgba(255, 255, 255, 0.7); } + +notebook > header, notebook > header:backdrop { background: transparent; } + +notebook > header tabs, notebook > header tabs.right, notebook > header tabs.left, notebook > header tabs.top, notebook > header tabs.bottom, notebook > header tabs:hover, notebook > header tabs:hover.right, notebook > header tabs:hover.left, notebook > header tabs:hover.top, notebook > header tabs:hover.bottom, notebook > header tabs:backdrop, notebook > header tabs:backdrop.right, notebook > header tabs:backdrop.left, notebook > header tabs:backdrop.top, notebook > header tabs:backdrop.bottom { background-color: transparent; } + +notebook > header tabs tab, notebook > header tabs.right tab, notebook > header tabs.left tab, notebook > header tabs.top tab, notebook > header tabs.bottom tab, notebook > header tabs:hover tab, notebook > header tabs:hover.right tab, notebook > header tabs:hover.left tab, notebook > header tabs:hover.top tab, notebook > header tabs:hover.bottom tab, notebook > header tabs:backdrop tab, notebook > header tabs:backdrop.right tab, notebook > header tabs:backdrop.left tab, notebook > header tabs:backdrop.top tab, notebook > header tabs:backdrop.bottom tab { outline-width: 1px; outline-offset: -2px; } + +notebook > header tabs tab, notebook > header tabs tab:hover, notebook > header tabs tab:active, notebook > header tabs tab:checked, notebook > header tabs tab:checked:hover, notebook > header tabs tab:checked:active, notebook > header tabs tab:backdrop, notebook > header tabs tab:backdrop:hover, notebook > header tabs tab:backdrop:active, notebook > header tabs tab:backdrop:checked, notebook > header tabs tab:backdrop:checked:hover, notebook > header tabs tab:backdrop:checked:active, notebook > header tabs tab:dir(ltr), notebook > header tabs tab:dir(ltr):hover, notebook > header tabs tab:dir(ltr):active, notebook > header tabs tab:dir(ltr):checked, notebook > header tabs tab:dir(ltr):checked:hover, notebook > header tabs tab:dir(ltr):checked:active, notebook > header tabs tab:dir(ltr):backdrop, notebook > header tabs tab:dir(ltr):backdrop:hover, notebook > header tabs tab:dir(ltr):backdrop:active, notebook > header tabs tab:dir(ltr):backdrop:checked, notebook > header tabs tab:dir(ltr):backdrop:checked:hover, notebook > header tabs tab:dir(ltr):backdrop:checked:active, notebook > header tabs tab:dir(rtl), notebook > header tabs tab:dir(rtl):hover, notebook > header tabs tab:dir(rtl):active, notebook > header tabs tab:dir(rtl):checked, notebook > header tabs tab:dir(rtl):checked:hover, notebook > header tabs tab:dir(rtl):checked:active, notebook > header tabs tab:dir(rtl):backdrop, notebook > header tabs tab:dir(rtl):backdrop:hover, notebook > header tabs tab:dir(rtl):backdrop:active, notebook > header tabs tab:dir(rtl):backdrop:checked, notebook > header tabs tab:dir(rtl):backdrop:checked:hover, notebook > header tabs tab:dir(rtl):backdrop:checked:active, notebook > header tabs.right tab, notebook > header tabs.right tab:hover, notebook > header tabs.right tab:active, notebook > header tabs.right tab:checked, notebook > header tabs.right tab:checked:hover, notebook > header tabs.right tab:checked:active, notebook > header tabs.right tab:backdrop, notebook > header tabs.right tab:backdrop:hover, notebook > header tabs.right tab:backdrop:active, notebook > header tabs.right tab:backdrop:checked, notebook > header tabs.right tab:backdrop:checked:hover, notebook > header tabs.right tab:backdrop:checked:active, notebook > header tabs.right tab:dir(ltr), notebook > header tabs.right tab:dir(ltr):hover, notebook > header tabs.right tab:dir(ltr):active, notebook > header tabs.right tab:dir(ltr):checked, notebook > header tabs.right tab:dir(ltr):checked:hover, notebook > header tabs.right tab:dir(ltr):checked:active, notebook > header tabs.right tab:dir(ltr):backdrop, notebook > header tabs.right tab:dir(ltr):backdrop:hover, notebook > header tabs.right tab:dir(ltr):backdrop:active, notebook > header tabs.right tab:dir(ltr):backdrop:checked, notebook > header tabs.right tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.right tab:dir(ltr):backdrop:checked:active, notebook > header tabs.right tab:dir(rtl), notebook > header tabs.right tab:dir(rtl):hover, notebook > header tabs.right tab:dir(rtl):active, notebook > header tabs.right tab:dir(rtl):checked, notebook > header tabs.right tab:dir(rtl):checked:hover, notebook > header tabs.right tab:dir(rtl):checked:active, notebook > header tabs.right tab:dir(rtl):backdrop, notebook > header tabs.right tab:dir(rtl):backdrop:hover, notebook > header tabs.right tab:dir(rtl):backdrop:active, notebook > header tabs.right tab:dir(rtl):backdrop:checked, notebook > header tabs.right tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.right tab:dir(rtl):backdrop:checked:active, notebook > header tabs.left tab, notebook > header tabs.left tab:hover, notebook > header tabs.left tab:active, notebook > header tabs.left tab:checked, notebook > header tabs.left tab:checked:hover, notebook > header tabs.left tab:checked:active, notebook > header tabs.left tab:backdrop, notebook > header tabs.left tab:backdrop:hover, notebook > header tabs.left tab:backdrop:active, notebook > header tabs.left tab:backdrop:checked, notebook > header tabs.left tab:backdrop:checked:hover, notebook > header tabs.left tab:backdrop:checked:active, notebook > header tabs.left tab:dir(ltr), notebook > header tabs.left tab:dir(ltr):hover, notebook > header tabs.left tab:dir(ltr):active, notebook > header tabs.left tab:dir(ltr):checked, notebook > header tabs.left tab:dir(ltr):checked:hover, notebook > header tabs.left tab:dir(ltr):checked:active, notebook > header tabs.left tab:dir(ltr):backdrop, notebook > header tabs.left tab:dir(ltr):backdrop:hover, notebook > header tabs.left tab:dir(ltr):backdrop:active, notebook > header tabs.left tab:dir(ltr):backdrop:checked, notebook > header tabs.left tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.left tab:dir(ltr):backdrop:checked:active, notebook > header tabs.left tab:dir(rtl), notebook > header tabs.left tab:dir(rtl):hover, notebook > header tabs.left tab:dir(rtl):active, notebook > header tabs.left tab:dir(rtl):checked, notebook > header tabs.left tab:dir(rtl):checked:hover, notebook > header tabs.left tab:dir(rtl):checked:active, notebook > header tabs.left tab:dir(rtl):backdrop, notebook > header tabs.left tab:dir(rtl):backdrop:hover, notebook > header tabs.left tab:dir(rtl):backdrop:active, notebook > header tabs.left tab:dir(rtl):backdrop:checked, notebook > header tabs.left tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.left tab:dir(rtl):backdrop:checked:active, notebook > header tabs.top tab, notebook > header tabs.top tab:hover, notebook > header tabs.top tab:active, notebook > header tabs.top tab:checked, notebook > header tabs.top tab:checked:hover, notebook > header tabs.top tab:checked:active, notebook > header tabs.top tab:backdrop, notebook > header tabs.top tab:backdrop:hover, notebook > header tabs.top tab:backdrop:active, notebook > header tabs.top tab:backdrop:checked, notebook > header tabs.top tab:backdrop:checked:hover, notebook > header tabs.top tab:backdrop:checked:active, notebook > header tabs.top tab:dir(ltr), notebook > header tabs.top tab:dir(ltr):hover, notebook > header tabs.top tab:dir(ltr):active, notebook > header tabs.top tab:dir(ltr):checked, notebook > header tabs.top tab:dir(ltr):checked:hover, notebook > header tabs.top tab:dir(ltr):checked:active, notebook > header tabs.top tab:dir(ltr):backdrop, notebook > header tabs.top tab:dir(ltr):backdrop:hover, notebook > header tabs.top tab:dir(ltr):backdrop:active, notebook > header tabs.top tab:dir(ltr):backdrop:checked, notebook > header tabs.top tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.top tab:dir(ltr):backdrop:checked:active, notebook > header tabs.top tab:dir(rtl), notebook > header tabs.top tab:dir(rtl):hover, notebook > header tabs.top tab:dir(rtl):active, notebook > header tabs.top tab:dir(rtl):checked, notebook > header tabs.top tab:dir(rtl):checked:hover, notebook > header tabs.top tab:dir(rtl):checked:active, notebook > header tabs.top tab:dir(rtl):backdrop, notebook > header tabs.top tab:dir(rtl):backdrop:hover, notebook > header tabs.top tab:dir(rtl):backdrop:active, notebook > header tabs.top tab:dir(rtl):backdrop:checked, notebook > header tabs.top tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.top tab:dir(rtl):backdrop:checked:active, notebook > header tabs.bottom tab, notebook > header tabs.bottom tab:hover, notebook > header tabs.bottom tab:active, notebook > header tabs.bottom tab:checked, notebook > header tabs.bottom tab:checked:hover, notebook > header tabs.bottom tab:checked:active, notebook > header tabs.bottom tab:backdrop, notebook > header tabs.bottom tab:backdrop:hover, notebook > header tabs.bottom tab:backdrop:active, notebook > header tabs.bottom tab:backdrop:checked, notebook > header tabs.bottom tab:backdrop:checked:hover, notebook > header tabs.bottom tab:backdrop:checked:active, notebook > header tabs.bottom tab:dir(ltr), notebook > header tabs.bottom tab:dir(ltr):hover, notebook > header tabs.bottom tab:dir(ltr):active, notebook > header tabs.bottom tab:dir(ltr):checked, notebook > header tabs.bottom tab:dir(ltr):checked:hover, notebook > header tabs.bottom tab:dir(ltr):checked:active, notebook > header tabs.bottom tab:dir(ltr):backdrop, notebook > header tabs.bottom tab:dir(ltr):backdrop:hover, notebook > header tabs.bottom tab:dir(ltr):backdrop:active, notebook > header tabs.bottom tab:dir(ltr):backdrop:checked, notebook > header tabs.bottom tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.bottom tab:dir(ltr):backdrop:checked:active, notebook > header tabs.bottom tab:dir(rtl), notebook > header tabs.bottom tab:dir(rtl):hover, notebook > header tabs.bottom tab:dir(rtl):active, notebook > header tabs.bottom tab:dir(rtl):checked, notebook > header tabs.bottom tab:dir(rtl):checked:hover, notebook > header tabs.bottom tab:dir(rtl):checked:active, notebook > header tabs.bottom tab:dir(rtl):backdrop, notebook > header tabs.bottom tab:dir(rtl):backdrop:hover, notebook > header tabs.bottom tab:dir(rtl):backdrop:active, notebook > header tabs.bottom tab:dir(rtl):backdrop:checked, notebook > header tabs.bottom tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.bottom tab:dir(rtl):backdrop:checked:active, notebook > header tabs:hover tab, notebook > header tabs:hover tab:hover, notebook > header tabs:hover tab:active, notebook > header tabs:hover tab:checked, notebook > header tabs:hover tab:checked:hover, notebook > header tabs:hover tab:checked:active, notebook > header tabs:hover tab:backdrop, notebook > header tabs:hover tab:backdrop:hover, notebook > header tabs:hover tab:backdrop:active, notebook > header tabs:hover tab:backdrop:checked, notebook > header tabs:hover tab:backdrop:checked:hover, notebook > header tabs:hover tab:backdrop:checked:active, notebook > header tabs:hover tab:dir(ltr), notebook > header tabs:hover tab:dir(ltr):hover, notebook > header tabs:hover tab:dir(ltr):active, notebook > header tabs:hover tab:dir(ltr):checked, notebook > header tabs:hover tab:dir(ltr):checked:hover, notebook > header tabs:hover tab:dir(ltr):checked:active, notebook > header tabs:hover tab:dir(ltr):backdrop, notebook > header tabs:hover tab:dir(ltr):backdrop:hover, notebook > header tabs:hover tab:dir(ltr):backdrop:active, notebook > header tabs:hover tab:dir(ltr):backdrop:checked, notebook > header tabs:hover tab:dir(ltr):backdrop:checked:hover, notebook > header tabs:hover tab:dir(ltr):backdrop:checked:active, notebook > header tabs:hover tab:dir(rtl), notebook > header tabs:hover tab:dir(rtl):hover, notebook > header tabs:hover tab:dir(rtl):active, notebook > header tabs:hover tab:dir(rtl):checked, notebook > header tabs:hover tab:dir(rtl):checked:hover, notebook > header tabs:hover tab:dir(rtl):checked:active, notebook > header tabs:hover tab:dir(rtl):backdrop, notebook > header tabs:hover tab:dir(rtl):backdrop:hover, notebook > header tabs:hover tab:dir(rtl):backdrop:active, notebook > header tabs:hover tab:dir(rtl):backdrop:checked, notebook > header tabs:hover tab:dir(rtl):backdrop:checked:hover, notebook > header tabs:hover tab:dir(rtl):backdrop:checked:active, notebook > header tabs:hover.right tab, notebook > header tabs:hover.right tab:hover, notebook > header tabs:hover.right tab:active, notebook > header tabs:hover.right tab:checked, notebook > header tabs:hover.right tab:checked:hover, notebook > header tabs:hover.right tab:checked:active, notebook > header tabs:hover.right tab:backdrop, notebook > header tabs:hover.right tab:backdrop:hover, notebook > header tabs:hover.right tab:backdrop:active, notebook > header tabs:hover.right tab:backdrop:checked, notebook > header tabs:hover.right tab:backdrop:checked:hover, notebook > header tabs:hover.right tab:backdrop:checked:active, notebook > header tabs:hover.right tab:dir(ltr), notebook > header tabs:hover.right tab:dir(ltr):hover, notebook > header tabs:hover.right tab:dir(ltr):active, notebook > header tabs:hover.right tab:dir(ltr):checked, notebook > header tabs:hover.right tab:dir(ltr):checked:hover, notebook > header tabs:hover.right tab:dir(ltr):checked:active, notebook > header tabs:hover.right tab:dir(ltr):backdrop, notebook > header tabs:hover.right tab:dir(ltr):backdrop:hover, notebook > header tabs:hover.right tab:dir(ltr):backdrop:active, notebook > header tabs:hover.right tab:dir(ltr):backdrop:checked, notebook > header tabs:hover.right tab:dir(ltr):backdrop:checked:hover, notebook > header tabs:hover.right tab:dir(ltr):backdrop:checked:active, notebook > header tabs:hover.right tab:dir(rtl), notebook > header tabs:hover.right tab:dir(rtl):hover, notebook > header tabs:hover.right tab:dir(rtl):active, notebook > header tabs:hover.right tab:dir(rtl):checked, notebook > header tabs:hover.right tab:dir(rtl):checked:hover, notebook > header tabs:hover.right tab:dir(rtl):checked:active, notebook > header tabs:hover.right tab:dir(rtl):backdrop, notebook > header tabs:hover.right tab:dir(rtl):backdrop:hover, notebook > header tabs:hover.right tab:dir(rtl):backdrop:active, notebook > header tabs:hover.right tab:dir(rtl):backdrop:checked, notebook > header tabs:hover.right tab:dir(rtl):backdrop:checked:hover, notebook > header tabs:hover.right tab:dir(rtl):backdrop:checked:active, notebook > header tabs:hover.left tab, notebook > header tabs:hover.left tab:hover, notebook > header tabs:hover.left tab:active, notebook > header tabs:hover.left tab:checked, notebook > header tabs:hover.left tab:checked:hover, notebook > header tabs:hover.left tab:checked:active, notebook > header tabs:hover.left tab:backdrop, notebook > header tabs:hover.left tab:backdrop:hover, notebook > header tabs:hover.left tab:backdrop:active, notebook > header tabs:hover.left tab:backdrop:checked, notebook > header tabs:hover.left tab:backdrop:checked:hover, notebook > header tabs:hover.left tab:backdrop:checked:active, notebook > header tabs:hover.left tab:dir(ltr), notebook > header tabs:hover.left tab:dir(ltr):hover, notebook > header tabs:hover.left tab:dir(ltr):active, notebook > header tabs:hover.left tab:dir(ltr):checked, notebook > header tabs:hover.left tab:dir(ltr):checked:hover, notebook > header tabs:hover.left tab:dir(ltr):checked:active, notebook > header tabs:hover.left tab:dir(ltr):backdrop, notebook > header tabs:hover.left tab:dir(ltr):backdrop:hover, notebook > header tabs:hover.left tab:dir(ltr):backdrop:active, notebook > header tabs:hover.left tab:dir(ltr):backdrop:checked, notebook > header tabs:hover.left tab:dir(ltr):backdrop:checked:hover, notebook > header tabs:hover.left tab:dir(ltr):backdrop:checked:active, notebook > header tabs:hover.left tab:dir(rtl), notebook > header tabs:hover.left tab:dir(rtl):hover, notebook > header tabs:hover.left tab:dir(rtl):active, notebook > header tabs:hover.left tab:dir(rtl):checked, notebook > header tabs:hover.left tab:dir(rtl):checked:hover, notebook > header tabs:hover.left tab:dir(rtl):checked:active, notebook > header tabs:hover.left tab:dir(rtl):backdrop, notebook > header tabs:hover.left tab:dir(rtl):backdrop:hover, notebook > header tabs:hover.left tab:dir(rtl):backdrop:active, notebook > header tabs:hover.left tab:dir(rtl):backdrop:checked, notebook > header tabs:hover.left tab:dir(rtl):backdrop:checked:hover, notebook > header tabs:hover.left tab:dir(rtl):backdrop:checked:active, notebook > header tabs:hover.top tab, notebook > header tabs:hover.top tab:hover, notebook > header tabs:hover.top tab:active, notebook > header tabs:hover.top tab:checked, notebook > header tabs:hover.top tab:checked:hover, notebook > header tabs:hover.top tab:checked:active, notebook > header tabs:hover.top tab:backdrop, notebook > header tabs:hover.top tab:backdrop:hover, notebook > header tabs:hover.top tab:backdrop:active, notebook > header tabs:hover.top tab:backdrop:checked, notebook > header tabs:hover.top tab:backdrop:checked:hover, notebook > header tabs:hover.top tab:backdrop:checked:active, notebook > header tabs:hover.top tab:dir(ltr), notebook > header tabs:hover.top tab:dir(ltr):hover, notebook > header tabs:hover.top tab:dir(ltr):active, notebook > header tabs:hover.top tab:dir(ltr):checked, notebook > header tabs:hover.top tab:dir(ltr):checked:hover, notebook > header tabs:hover.top tab:dir(ltr):checked:active, notebook > header tabs:hover.top tab:dir(ltr):backdrop, notebook > header tabs:hover.top tab:dir(ltr):backdrop:hover, notebook > header tabs:hover.top tab:dir(ltr):backdrop:active, notebook > header tabs:hover.top tab:dir(ltr):backdrop:checked, notebook > header tabs:hover.top tab:dir(ltr):backdrop:checked:hover, notebook > header tabs:hover.top tab:dir(ltr):backdrop:checked:active, notebook > header tabs:hover.top tab:dir(rtl), notebook > header tabs:hover.top tab:dir(rtl):hover, notebook > header tabs:hover.top tab:dir(rtl):active, notebook > header tabs:hover.top tab:dir(rtl):checked, notebook > header tabs:hover.top tab:dir(rtl):checked:hover, notebook > header tabs:hover.top tab:dir(rtl):checked:active, notebook > header tabs:hover.top tab:dir(rtl):backdrop, notebook > header tabs:hover.top tab:dir(rtl):backdrop:hover, notebook > header tabs:hover.top tab:dir(rtl):backdrop:active, notebook > header tabs:hover.top tab:dir(rtl):backdrop:checked, notebook > header tabs:hover.top tab:dir(rtl):backdrop:checked:hover, notebook > header tabs:hover.top tab:dir(rtl):backdrop:checked:active, notebook > header tabs:hover.bottom tab, notebook > header tabs:hover.bottom tab:hover, notebook > header tabs:hover.bottom tab:active, notebook > header tabs:hover.bottom tab:checked, notebook > header tabs:hover.bottom tab:checked:hover, notebook > header tabs:hover.bottom tab:checked:active, notebook > header tabs:hover.bottom tab:backdrop, notebook > header tabs:hover.bottom tab:backdrop:hover, notebook > header tabs:hover.bottom tab:backdrop:active, notebook > header tabs:hover.bottom tab:backdrop:checked, notebook > header tabs:hover.bottom tab:backdrop:checked:hover, notebook > header tabs:hover.bottom tab:backdrop:checked:active, notebook > header tabs:hover.bottom tab:dir(ltr), notebook > header tabs:hover.bottom tab:dir(ltr):hover, notebook > header tabs:hover.bottom tab:dir(ltr):active, notebook > header tabs:hover.bottom tab:dir(ltr):checked, notebook > header tabs:hover.bottom tab:dir(ltr):checked:hover, notebook > header tabs:hover.bottom tab:dir(ltr):checked:active, notebook > header tabs:hover.bottom tab:dir(ltr):backdrop, notebook > header tabs:hover.bottom tab:dir(ltr):backdrop:hover, notebook > header tabs:hover.bottom tab:dir(ltr):backdrop:active, notebook > header tabs:hover.bottom tab:dir(ltr):backdrop:checked, notebook > header tabs:hover.bottom tab:dir(ltr):backdrop:checked:hover, notebook > header tabs:hover.bottom tab:dir(ltr):backdrop:checked:active, notebook > header tabs:hover.bottom tab:dir(rtl), notebook > header tabs:hover.bottom tab:dir(rtl):hover, notebook > header tabs:hover.bottom tab:dir(rtl):active, notebook > header tabs:hover.bottom tab:dir(rtl):checked, notebook > header tabs:hover.bottom tab:dir(rtl):checked:hover, notebook > header tabs:hover.bottom tab:dir(rtl):checked:active, notebook > header tabs:hover.bottom tab:dir(rtl):backdrop, notebook > header tabs:hover.bottom tab:dir(rtl):backdrop:hover, notebook > header tabs:hover.bottom tab:dir(rtl):backdrop:active, notebook > header tabs:hover.bottom tab:dir(rtl):backdrop:checked, notebook > header tabs:hover.bottom tab:dir(rtl):backdrop:checked:hover, notebook > header tabs:hover.bottom tab:dir(rtl):backdrop:checked:active, notebook > header tabs:backdrop tab, notebook > header tabs:backdrop tab:hover, notebook > header tabs:backdrop tab:active, notebook > header tabs:backdrop tab:checked, notebook > header tabs:backdrop tab:checked:hover, notebook > header tabs:backdrop tab:checked:active, notebook > header tabs:backdrop tab:backdrop, notebook > header tabs:backdrop tab:backdrop:hover, notebook > header tabs:backdrop tab:backdrop:active, notebook > header tabs:backdrop tab:backdrop:checked, notebook > header tabs:backdrop tab:backdrop:checked:hover, notebook > header tabs:backdrop tab:backdrop:checked:active, notebook > header tabs:backdrop tab:dir(ltr), notebook > header tabs:backdrop tab:dir(ltr):hover, notebook > header tabs:backdrop tab:dir(ltr):active, notebook > header tabs:backdrop tab:dir(ltr):checked, notebook > header tabs:backdrop tab:dir(ltr):checked:hover, notebook > header tabs:backdrop tab:dir(ltr):checked:active, notebook > header tabs:backdrop tab:dir(ltr):backdrop, notebook > header tabs:backdrop tab:dir(ltr):backdrop:hover, notebook > header tabs:backdrop tab:dir(ltr):backdrop:active, notebook > header tabs:backdrop tab:dir(ltr):backdrop:checked, notebook > header tabs:backdrop tab:dir(ltr):backdrop:checked:hover, notebook > header tabs:backdrop tab:dir(ltr):backdrop:checked:active, notebook > header tabs:backdrop tab:dir(rtl), notebook > header tabs:backdrop tab:dir(rtl):hover, notebook > header tabs:backdrop tab:dir(rtl):active, notebook > header tabs:backdrop tab:dir(rtl):checked, notebook > header tabs:backdrop tab:dir(rtl):checked:hover, notebook > header tabs:backdrop tab:dir(rtl):checked:active, notebook > header tabs:backdrop tab:dir(rtl):backdrop, notebook > header tabs:backdrop tab:dir(rtl):backdrop:hover, notebook > header tabs:backdrop tab:dir(rtl):backdrop:active, notebook > header tabs:backdrop tab:dir(rtl):backdrop:checked, notebook > header tabs:backdrop tab:dir(rtl):backdrop:checked:hover, notebook > header tabs:backdrop tab:dir(rtl):backdrop:checked:active, notebook > header tabs:backdrop.right tab, notebook > header tabs:backdrop.right tab:hover, notebook > header tabs:backdrop.right tab:active, notebook > header tabs:backdrop.right tab:checked, notebook > header tabs:backdrop.right tab:checked:hover, notebook > header tabs:backdrop.right tab:checked:active, notebook > header tabs:backdrop.right tab:backdrop, notebook > header tabs:backdrop.right tab:backdrop:hover, notebook > header tabs:backdrop.right tab:backdrop:active, notebook > header tabs:backdrop.right tab:backdrop:checked, notebook > header tabs:backdrop.right tab:backdrop:checked:hover, notebook > header tabs:backdrop.right tab:backdrop:checked:active, notebook > header tabs:backdrop.right tab:dir(ltr), notebook > header tabs:backdrop.right tab:dir(ltr):hover, notebook > header tabs:backdrop.right tab:dir(ltr):active, notebook > header tabs:backdrop.right tab:dir(ltr):checked, notebook > header tabs:backdrop.right tab:dir(ltr):checked:hover, notebook > header tabs:backdrop.right tab:dir(ltr):checked:active, notebook > header tabs:backdrop.right tab:dir(ltr):backdrop, notebook > header tabs:backdrop.right tab:dir(ltr):backdrop:hover, notebook > header tabs:backdrop.right tab:dir(ltr):backdrop:active, notebook > header tabs:backdrop.right tab:dir(ltr):backdrop:checked, notebook > header tabs:backdrop.right tab:dir(ltr):backdrop:checked:hover, notebook > header tabs:backdrop.right tab:dir(ltr):backdrop:checked:active, notebook > header tabs:backdrop.right tab:dir(rtl), notebook > header tabs:backdrop.right tab:dir(rtl):hover, notebook > header tabs:backdrop.right tab:dir(rtl):active, notebook > header tabs:backdrop.right tab:dir(rtl):checked, notebook > header tabs:backdrop.right tab:dir(rtl):checked:hover, notebook > header tabs:backdrop.right tab:dir(rtl):checked:active, notebook > header tabs:backdrop.right tab:dir(rtl):backdrop, notebook > header tabs:backdrop.right tab:dir(rtl):backdrop:hover, notebook > header tabs:backdrop.right tab:dir(rtl):backdrop:active, notebook > header tabs:backdrop.right tab:dir(rtl):backdrop:checked, notebook > header tabs:backdrop.right tab:dir(rtl):backdrop:checked:hover, notebook > header tabs:backdrop.right tab:dir(rtl):backdrop:checked:active, notebook > header tabs:backdrop.left tab, notebook > header tabs:backdrop.left tab:hover, notebook > header tabs:backdrop.left tab:active, notebook > header tabs:backdrop.left tab:checked, notebook > header tabs:backdrop.left tab:checked:hover, notebook > header tabs:backdrop.left tab:checked:active, notebook > header tabs:backdrop.left tab:backdrop, notebook > header tabs:backdrop.left tab:backdrop:hover, notebook > header tabs:backdrop.left tab:backdrop:active, notebook > header tabs:backdrop.left tab:backdrop:checked, notebook > header tabs:backdrop.left tab:backdrop:checked:hover, notebook > header tabs:backdrop.left tab:backdrop:checked:active, notebook > header tabs:backdrop.left tab:dir(ltr), notebook > header tabs:backdrop.left tab:dir(ltr):hover, notebook > header tabs:backdrop.left tab:dir(ltr):active, notebook > header tabs:backdrop.left tab:dir(ltr):checked, notebook > header tabs:backdrop.left tab:dir(ltr):checked:hover, notebook > header tabs:backdrop.left tab:dir(ltr):checked:active, notebook > header tabs:backdrop.left tab:dir(ltr):backdrop, notebook > header tabs:backdrop.left tab:dir(ltr):backdrop:hover, notebook > header tabs:backdrop.left tab:dir(ltr):backdrop:active, notebook > header tabs:backdrop.left tab:dir(ltr):backdrop:checked, notebook > header tabs:backdrop.left tab:dir(ltr):backdrop:checked:hover, notebook > header tabs:backdrop.left tab:dir(ltr):backdrop:checked:active, notebook > header tabs:backdrop.left tab:dir(rtl), notebook > header tabs:backdrop.left tab:dir(rtl):hover, notebook > header tabs:backdrop.left tab:dir(rtl):active, notebook > header tabs:backdrop.left tab:dir(rtl):checked, notebook > header tabs:backdrop.left tab:dir(rtl):checked:hover, notebook > header tabs:backdrop.left tab:dir(rtl):checked:active, notebook > header tabs:backdrop.left tab:dir(rtl):backdrop, notebook > header tabs:backdrop.left tab:dir(rtl):backdrop:hover, notebook > header tabs:backdrop.left tab:dir(rtl):backdrop:active, notebook > header tabs:backdrop.left tab:dir(rtl):backdrop:checked, notebook > header tabs:backdrop.left tab:dir(rtl):backdrop:checked:hover, notebook > header tabs:backdrop.left tab:dir(rtl):backdrop:checked:active, notebook > header tabs:backdrop.top tab, notebook > header tabs:backdrop.top tab:hover, notebook > header tabs:backdrop.top tab:active, notebook > header tabs:backdrop.top tab:checked, notebook > header tabs:backdrop.top tab:checked:hover, notebook > header tabs:backdrop.top tab:checked:active, notebook > header tabs:backdrop.top tab:backdrop, notebook > header tabs:backdrop.top tab:backdrop:hover, notebook > header tabs:backdrop.top tab:backdrop:active, notebook > header tabs:backdrop.top tab:backdrop:checked, notebook > header tabs:backdrop.top tab:backdrop:checked:hover, notebook > header tabs:backdrop.top tab:backdrop:checked:active, notebook > header tabs:backdrop.top tab:dir(ltr), notebook > header tabs:backdrop.top tab:dir(ltr):hover, notebook > header tabs:backdrop.top tab:dir(ltr):active, notebook > header tabs:backdrop.top tab:dir(ltr):checked, notebook > header tabs:backdrop.top tab:dir(ltr):checked:hover, notebook > header tabs:backdrop.top tab:dir(ltr):checked:active, notebook > header tabs:backdrop.top tab:dir(ltr):backdrop, notebook > header tabs:backdrop.top tab:dir(ltr):backdrop:hover, notebook > header tabs:backdrop.top tab:dir(ltr):backdrop:active, notebook > header tabs:backdrop.top tab:dir(ltr):backdrop:checked, notebook > header tabs:backdrop.top tab:dir(ltr):backdrop:checked:hover, notebook > header tabs:backdrop.top tab:dir(ltr):backdrop:checked:active, notebook > header tabs:backdrop.top tab:dir(rtl), notebook > header tabs:backdrop.top tab:dir(rtl):hover, notebook > header tabs:backdrop.top tab:dir(rtl):active, notebook > header tabs:backdrop.top tab:dir(rtl):checked, notebook > header tabs:backdrop.top tab:dir(rtl):checked:hover, notebook > header tabs:backdrop.top tab:dir(rtl):checked:active, notebook > header tabs:backdrop.top tab:dir(rtl):backdrop, notebook > header tabs:backdrop.top tab:dir(rtl):backdrop:hover, notebook > header tabs:backdrop.top tab:dir(rtl):backdrop:active, notebook > header tabs:backdrop.top tab:dir(rtl):backdrop:checked, notebook > header tabs:backdrop.top tab:dir(rtl):backdrop:checked:hover, notebook > header tabs:backdrop.top tab:dir(rtl):backdrop:checked:active, notebook > header tabs:backdrop.bottom tab, notebook > header tabs:backdrop.bottom tab:hover, notebook > header tabs:backdrop.bottom tab:active, notebook > header tabs:backdrop.bottom tab:checked, notebook > header tabs:backdrop.bottom tab:checked:hover, notebook > header tabs:backdrop.bottom tab:checked:active, notebook > header tabs:backdrop.bottom tab:backdrop, notebook > header tabs:backdrop.bottom tab:backdrop:hover, notebook > header tabs:backdrop.bottom tab:backdrop:active, notebook > header tabs:backdrop.bottom tab:backdrop:checked, notebook > header tabs:backdrop.bottom tab:backdrop:checked:hover, notebook > header tabs:backdrop.bottom tab:backdrop:checked:active, notebook > header tabs:backdrop.bottom tab:dir(ltr), notebook > header tabs:backdrop.bottom tab:dir(ltr):hover, notebook > header tabs:backdrop.bottom tab:dir(ltr):active, notebook > header tabs:backdrop.bottom tab:dir(ltr):checked, notebook > header tabs:backdrop.bottom tab:dir(ltr):checked:hover, notebook > header tabs:backdrop.bottom tab:dir(ltr):checked:active, notebook > header tabs:backdrop.bottom tab:dir(ltr):backdrop, notebook > header tabs:backdrop.bottom tab:dir(ltr):backdrop:hover, notebook > header tabs:backdrop.bottom tab:dir(ltr):backdrop:active, notebook > header tabs:backdrop.bottom tab:dir(ltr):backdrop:checked, notebook > header tabs:backdrop.bottom tab:dir(ltr):backdrop:checked:hover, notebook > header tabs:backdrop.bottom tab:dir(ltr):backdrop:checked:active, notebook > header tabs:backdrop.bottom tab:dir(rtl), notebook > header tabs:backdrop.bottom tab:dir(rtl):hover, notebook > header tabs:backdrop.bottom tab:dir(rtl):active, notebook > header tabs:backdrop.bottom tab:dir(rtl):checked, notebook > header tabs:backdrop.bottom tab:dir(rtl):checked:hover, notebook > header tabs:backdrop.bottom tab:dir(rtl):checked:active, notebook > header tabs:backdrop.bottom tab:dir(rtl):backdrop, notebook > header tabs:backdrop.bottom tab:dir(rtl):backdrop:hover, notebook > header tabs:backdrop.bottom tab:dir(rtl):backdrop:active, notebook > header tabs:backdrop.bottom tab:dir(rtl):backdrop:checked, notebook > header tabs:backdrop.bottom tab:dir(rtl):backdrop:checked:hover, notebook > header tabs:backdrop.bottom tab:dir(rtl):backdrop:checked:active { background-color: transparent; border-color: transparent; } + +scrolledwindow undershoot.top { background-color: transparent; padding-top: 1px; background-size: 10px 1px; background-repeat: repeat-x; background-origin: content-box; background-position: center top; border: none; box-shadow: inset 0 2px 0 0 rgba(204, 204, 204, 0.2), inset 0 1px 0 0 rgba(153, 153, 153, 0.2); } + +scrolledwindow undershoot.bottom { background-color: transparent; padding-bottom: 1px; background-size: 10px 1px; background-repeat: repeat-x; background-origin: content-box; background-position: center bottom; border: none; box-shadow: inset 0 -2px 0 0 rgba(204, 204, 204, 0.2), inset 0 -1px 0 0 rgba(153, 153, 153, 0.2); } + +scrolledwindow undershoot.left { background-color: transparent; padding-left: 1px; background-size: 1px 10px; background-repeat: repeat-y; background-origin: content-box; background-position: left center; border: none; box-shadow: inset 2px 0 0 rgba(204, 204, 204, 0.2), inset 1px 0 0 rgba(153, 153, 153, 0.2); } + +scrolledwindow undershoot.right { background-color: transparent; padding-right: 1px; background-size: 1px 10px; background-repeat: repeat-y; background-origin: content-box; background-position: right center; border: none; box-shadow: inset -2px 0 0 rgba(204, 204, 204, 0.2), inset -1px 0 0 rgba(153, 153, 153, 0.2); } + +menu menuitem check, menu menuitem check:hover, menu menuitem check:disabled, menu menuitem check:checked, menu menuitem check:checked:hover, menu menuitem check:checked:disabled, menu menuitem check:indeterminate, menu menuitem check:indeterminate:hover, menu menuitem check:indeterminate:disabled, menu menuitem radio, menu menuitem radio:hover, menu menuitem radio:disabled, menu menuitem radio:checked, menu menuitem radio:checked:hover, menu menuitem radio:checked:disabled, menu menuitem radio:indeterminate, menu menuitem radio:indeterminate:hover, menu menuitem radio:indeterminate:disabled { border-color: transparent; } + +treeview.view check:selected:focus:disabled, treeview.view check:selected:disabled, treeview.view radio:selected:focus:disabled, treeview.view radio:selected:disabled { color: #a9a5a2; } + +.sidebar { background-color: #edeceb; } + +treeview:hover { background: #bfc6b0; } + +.osd scale slider { color: #eeeeec; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(61, 63, 54, 0.8)); background-clip: padding-box; text-shadow: 0 1px black; -gtk-icon-shadow: 0 1px black; outline-color: rgba(238, 238, 236, 0.3); background-image: image(#e9e9e7); } + +.osd scale slider:hover { background-image: image(#d6d6d1); } + +.osd scale slider:active { background-image: image(#b2b2a9); } + +.rubberband, rubberband, flowbox rubberband, treeview.view rubberband, .content-view rubberband, .content-view .rubberband { background-color: rgba(135, 135, 135, 0.2); border: 1px solid rgba(204, 204, 204, 0.8); } + +button.color { min-height: 5px; } + +levelbar block.high, levelbar block:not(.empty) { border-color: #5e733c; background-color: #93af66; } + +levelbar block.high:backdrop, levelbar block:not(.empty):backdrop { border-color: #93af66; } + +.csd.popup decoration { box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(0, 0, 0, 0.23); } + +.csd popover.background, popover.background { border-color: rgba(0, 0, 0, 0.23); } + +.csd popover.background:backdrop, popover.background:backdrop { border-color: #a5a29f; } + +switch:backdrop:checked:not(:disabled), switch:backdrop:checked:not(:disabled) slider { border-color: #94908c; } + +list row:selected.activatable, list row:selected.activatable:hover, list row:selected, list row:selected:hover, placessidebar row:selected.activatable, placessidebar row:selected.activatable:hover, placessidebar row:selected, placessidebar row:selected:hover, sidebar row:selected.activatable, sidebar row:selected.activatable:hover, sidebar row:selected, sidebar row:selected:hover, .sidebar row:selected.activatable, .sidebar row:selected.activatable:hover, .sidebar row:selected, .sidebar row:selected:hover { color: #42453E; background-color: #e1dfde; box-shadow: inset 4px 0 0 #bfc6b0; } + +list row:selected.activatable, list row:selected.activatable image, list row:selected.activatable button, list row:selected.activatable button image, list row:selected.activatable:hover, list row:selected.activatable:hover image, list row:selected.activatable:hover button, list row:selected.activatable:hover button image, list row:selected, list row:selected image, list row:selected button, list row:selected button image, list row:selected:hover, list row:selected:hover image, list row:selected:hover button, list row:selected:hover button image, placessidebar row:selected.activatable, placessidebar row:selected.activatable image, placessidebar row:selected.activatable button, placessidebar row:selected.activatable button image, placessidebar row:selected.activatable:hover, placessidebar row:selected.activatable:hover image, placessidebar row:selected.activatable:hover button, placessidebar row:selected.activatable:hover button image, placessidebar row:selected, placessidebar row:selected image, placessidebar row:selected button, placessidebar row:selected button image, placessidebar row:selected:hover, placessidebar row:selected:hover image, placessidebar row:selected:hover button, placessidebar row:selected:hover button image, sidebar row:selected.activatable, sidebar row:selected.activatable image, sidebar row:selected.activatable button, sidebar row:selected.activatable button image, sidebar row:selected.activatable:hover, sidebar row:selected.activatable:hover image, sidebar row:selected.activatable:hover button, sidebar row:selected.activatable:hover button image, sidebar row:selected, sidebar row:selected image, sidebar row:selected button, sidebar row:selected button image, sidebar row:selected:hover, sidebar row:selected:hover image, sidebar row:selected:hover button, sidebar row:selected:hover button image, .sidebar row:selected.activatable, .sidebar row:selected.activatable image, .sidebar row:selected.activatable button, .sidebar row:selected.activatable button image, .sidebar row:selected.activatable:hover, .sidebar row:selected.activatable:hover image, .sidebar row:selected.activatable:hover button, .sidebar row:selected.activatable:hover button image, .sidebar row:selected, .sidebar row:selected image, .sidebar row:selected button, .sidebar row:selected button image, .sidebar row:selected:hover, .sidebar row:selected:hover image, .sidebar row:selected:hover button, .sidebar row:selected:hover button image { color: #1a1a1a; } + +list row:selected.activatable:backdrop, list row:selected.activatable:hover:backdrop, list row:selected:backdrop, list row:selected:hover:backdrop, placessidebar row:selected.activatable:backdrop, placessidebar row:selected.activatable:hover:backdrop, placessidebar row:selected:backdrop, placessidebar row:selected:hover:backdrop, sidebar row:selected.activatable:backdrop, sidebar row:selected.activatable:hover:backdrop, sidebar row:selected:backdrop, sidebar row:selected:hover:backdrop, .sidebar row:selected.activatable:backdrop, .sidebar row:selected.activatable:hover:backdrop, .sidebar row:selected:backdrop, .sidebar row:selected:hover:backdrop { background-color: #e1dfde; } + +list row:selected.activatable:backdrop, list row:selected.activatable:backdrop image, list row:selected.activatable:backdrop button, list row:selected.activatable:backdrop button image, list row:selected.activatable:hover:backdrop, list row:selected.activatable:hover:backdrop image, list row:selected.activatable:hover:backdrop button, list row:selected.activatable:hover:backdrop button image, list row:selected:backdrop, list row:selected:backdrop image, list row:selected:backdrop button, list row:selected:backdrop button image, list row:selected:hover:backdrop, list row:selected:hover:backdrop image, list row:selected:hover:backdrop button, list row:selected:hover:backdrop button image, placessidebar row:selected.activatable:backdrop, placessidebar row:selected.activatable:backdrop image, placessidebar row:selected.activatable:backdrop button, placessidebar row:selected.activatable:backdrop button image, placessidebar row:selected.activatable:hover:backdrop, placessidebar row:selected.activatable:hover:backdrop image, placessidebar row:selected.activatable:hover:backdrop button, placessidebar row:selected.activatable:hover:backdrop button image, placessidebar row:selected:backdrop, placessidebar row:selected:backdrop image, placessidebar row:selected:backdrop button, placessidebar row:selected:backdrop button image, placessidebar row:selected:hover:backdrop, placessidebar row:selected:hover:backdrop image, placessidebar row:selected:hover:backdrop button, placessidebar row:selected:hover:backdrop button image, sidebar row:selected.activatable:backdrop, sidebar row:selected.activatable:backdrop image, sidebar row:selected.activatable:backdrop button, sidebar row:selected.activatable:backdrop button image, sidebar row:selected.activatable:hover:backdrop, sidebar row:selected.activatable:hover:backdrop image, sidebar row:selected.activatable:hover:backdrop button, sidebar row:selected.activatable:hover:backdrop button image, sidebar row:selected:backdrop, sidebar row:selected:backdrop image, sidebar row:selected:backdrop button, sidebar row:selected:backdrop button image, sidebar row:selected:hover:backdrop, sidebar row:selected:hover:backdrop image, sidebar row:selected:hover:backdrop button, sidebar row:selected:hover:backdrop button image, .sidebar row:selected.activatable:backdrop, .sidebar row:selected.activatable:backdrop image, .sidebar row:selected.activatable:backdrop button, .sidebar row:selected.activatable:backdrop button image, .sidebar row:selected.activatable:hover:backdrop, .sidebar row:selected.activatable:hover:backdrop image, .sidebar row:selected.activatable:hover:backdrop button, .sidebar row:selected.activatable:hover:backdrop button image, .sidebar row:selected:backdrop, .sidebar row:selected:backdrop image, .sidebar row:selected:backdrop button, .sidebar row:selected:backdrop button image, .sidebar row:selected:hover:backdrop, .sidebar row:selected:hover:backdrop image, .sidebar row:selected:hover:backdrop button, .sidebar row:selected:hover:backdrop button image { color: #2f2f2f; } + +check:checked, radio:checked { border-color: #94908c; color: #000000; } + +check:selected, radio:selected { color: #000000; } + +headerbar, .titlebar { background-image: linear-gradient(to bottom, #cdd3c1, #c3c9b4 50%, #bfc6b0 50%, #b4bca4); color: #000000; border-color: #94908c; } + +headerbar:backdrop, .titlebar:backdrop { background-image: linear-gradient(to bottom, #ebeae9, #e2e0df 50%, #dddbda 50%, #d4d2d0); } + +headerbar .title, headerbar label.title, .titlebar .title, .titlebar label.title { color: #53504e; text-shadow: none; } + +headerbar .title:backdrop, headerbar label.title:backdrop, .titlebar .title:backdrop, .titlebar label.title:backdrop { color: #6d6a66; text-shadow: none; } + +.maximized headerbar, .fullscreen headerbar, .maximized .titlebar, .fullscreen .titlebar { box-shadow: none; } + +headerbar entry, headerbar entry:backdrop, .titlebar entry, .titlebar entry:backdrop { border-color: #1d1c1c; } + +headerbar entry:focus, .titlebar entry:focus { box-shadow: inset 0px 1px #fafaf8, inset 1px 0px #fafaf8, inset -1px 0px #fafaf8, inset 0px -1px #fafaf8; border-color: #6b715f; } + +headerbar separator, .titlebar separator { background: image(#282626); } + +headerbar separator:backdrop, .titlebar separator:backdrop { background: image(#262626); } + +headerbar switch, .titlebar switch { border-color: #1b1a1a; color: #000000; background-color: #464343; } + +headerbar switch:hover, .titlebar switch:hover { background-color: #4b4848; } + +headerbar switch:backdrop, .titlebar switch:backdrop { background-color: #444141; } + +headerbar switch:backdrop, headerbar switch:backdrop:checked, .titlebar switch:backdrop, .titlebar switch:backdrop:checked { border-color: #1c1c1c; } + +headerbar switch:backdrop:disabled, .titlebar switch:backdrop:disabled { background-color: #3f3c3c; border-color: #262626; } + +headerbar switch:disabled, .titlebar switch:disabled { background-color: #323030; border-color: #1b1a1a; } + +headerbar switch:checked, .titlebar switch:checked { color: #42453E; border-color: #1b1a1a; background-color: #a3ae8b; } + +headerbar switch slider:checked, headerbar scale slider:checked, .titlebar switch slider:checked, .titlebar scale slider:checked { border-color: #94908c; } + +headerbar switch slider:backdrop, headerbar switch slider:backdrop:checked, headerbar switch slider:backdrop:disabled, headerbar switch slider:backdrop:checked:disabled, headerbar scale slider:backdrop, headerbar scale slider:backdrop:checked, headerbar scale slider:backdrop:disabled, headerbar scale slider:backdrop:checked:disabled, .titlebar switch slider:backdrop, .titlebar switch slider:backdrop:checked, .titlebar switch slider:backdrop:disabled, .titlebar switch slider:backdrop:checked:disabled, .titlebar scale slider:backdrop, .titlebar scale slider:backdrop:checked, .titlebar scale slider:backdrop:disabled, .titlebar scale slider:backdrop:checked:disabled { border-color: #1c1c1c; box-shadow: none; } + +headerbar switch slider:not(:checked), headerbar scale slider:not(:checked), .titlebar switch slider:not(:checked), .titlebar scale slider:not(:checked) { border-color: #1b1a1a; } + +headerbar switch slider:disabled, headerbar scale slider:disabled, .titlebar switch slider:disabled, .titlebar scale slider:disabled { color: #a9a5a2; border-color: #030303; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.selection-mode headerbar, headerbar.selection-mode, .selection-mode .titlebar, .titlebar.selection-mode { color: #42453E; border-color: #87a556; background-image: linear-gradient(to bottom, #cdd3c1, #c3c9b4 50%, #bfc6b0 50%, #b4bca4); } + +.selection-mode headerbar:backdrop, headerbar.selection-mode:backdrop, .selection-mode .titlebar:backdrop, .titlebar.selection-mode:backdrop { background-image: linear-gradient(to bottom, #ebeae9, #e2e0df 50%, #dddbda 50%, #d4d2d0); } + +.selection-mode headerbar separator, headerbar.selection-mode separator, .selection-mode .titlebar separator, .titlebar.selection-mode separator { background: image(#9fb876); } + +.selection-mode headerbar:backdrop, headerbar.selection-mode:backdrop, .selection-mode .titlebar:backdrop, .titlebar.selection-mode:backdrop { background-color: #93af66; background-image: none; box-shadow: inset 0 1px rgba(201, 215, 178, 0.88); } + +.selection-mode headerbar:backdrop label, headerbar.selection-mode:backdrop label, .selection-mode .titlebar:backdrop label, .titlebar.selection-mode:backdrop label { text-shadow: none; color: #42453E; } + +.selection-mode headerbar button, .selection-mode headerbar button.image-button, .selection-mode headerbar button.image-button.toggle, .selection-mode headerbar button.text.button, .selection-mode headerbar button.toggle, .selection-mode headerbar box button.toggle, .selection-mode headerbar buttonbox.toggle, .selection-mode headerbar stackswitcher button, .selection-mode headerbar filechooser .path-bar.linked > button, .selection-mode headerbar .path-bar button, headerbar.selection-mode button, headerbar.selection-mode button.image-button, headerbar.selection-mode button.image-button.toggle, headerbar.selection-mode button.text.button, headerbar.selection-mode button.toggle, headerbar.selection-mode box button.toggle, headerbar.selection-mode buttonbox.toggle, headerbar.selection-mode stackswitcher button, headerbar.selection-mode filechooser .path-bar.linked > button, headerbar.selection-mode .path-bar button, .selection-mode .titlebar button, .selection-mode .titlebar button.image-button, .selection-mode .titlebar button.image-button.toggle, .selection-mode .titlebar button.text.button, .selection-mode .titlebar button.toggle, .selection-mode .titlebar box button.toggle, .selection-mode .titlebar buttonbox.toggle, .selection-mode .titlebar stackswitcher button, .selection-mode .titlebar filechooser .path-bar.linked > button, .selection-mode .titlebar .path-bar button, .titlebar.selection-mode button, .titlebar.selection-mode button.image-button, .titlebar.selection-mode button.image-button.toggle, .titlebar.selection-mode button.text.button, .titlebar.selection-mode button.toggle, .titlebar.selection-mode box button.toggle, .titlebar.selection-mode buttonbox.toggle, .titlebar.selection-mode stackswitcher button, .titlebar.selection-mode filechooser .path-bar.linked > button, .titlebar.selection-mode .path-bar button { color: #42453E; outline-color: #94908c; border-color: #79944d; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +.selection-mode headerbar button.flat, .selection-mode headerbar button.image-button.flat, .selection-mode headerbar button.image-button.toggle.flat, .selection-mode headerbar button.text.button.flat, .selection-mode headerbar button.toggle.flat, .selection-mode headerbar box button.toggle.flat, .selection-mode headerbar buttonbox.toggle.flat, .selection-mode headerbar stackswitcher button.flat, .selection-mode headerbar filechooser .path-bar.linked > button.flat, .selection-mode headerbar .path-bar button.flat, headerbar.selection-mode button.flat, headerbar.selection-mode button.image-button.flat, headerbar.selection-mode button.image-button.toggle.flat, headerbar.selection-mode button.text.button.flat, headerbar.selection-mode button.toggle.flat, headerbar.selection-mode box button.toggle.flat, headerbar.selection-mode buttonbox.toggle.flat, headerbar.selection-mode stackswitcher button.flat, headerbar.selection-mode filechooser .path-bar.linked > button.flat, headerbar.selection-mode .path-bar button.flat, .selection-mode .titlebar button.flat, .selection-mode .titlebar button.image-button.flat, .selection-mode .titlebar button.image-button.toggle.flat, .selection-mode .titlebar button.text.button.flat, .selection-mode .titlebar button.toggle.flat, .selection-mode .titlebar box button.toggle.flat, .selection-mode .titlebar buttonbox.toggle.flat, .selection-mode .titlebar stackswitcher button.flat, .selection-mode .titlebar filechooser .path-bar.linked > button.flat, .selection-mode .titlebar .path-bar button.flat, .titlebar.selection-mode button.flat, .titlebar.selection-mode button.image-button.flat, .titlebar.selection-mode button.image-button.toggle.flat, .titlebar.selection-mode button.text.button.flat, .titlebar.selection-mode button.toggle.flat, .titlebar.selection-mode box button.toggle.flat, .titlebar.selection-mode buttonbox.toggle.flat, .titlebar.selection-mode stackswitcher button.flat, .titlebar.selection-mode filechooser .path-bar.linked > button.flat, .titlebar.selection-mode .path-bar button.flat { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +.selection-mode headerbar button:hover, .selection-mode headerbar button.image-button:hover, .selection-mode headerbar button.image-button.toggle:hover, .selection-mode headerbar button.text.button:hover, .selection-mode headerbar button.toggle:hover, .selection-mode headerbar box button.toggle:hover, .selection-mode headerbar buttonbox.toggle:hover, .selection-mode headerbar stackswitcher button:hover, .selection-mode headerbar filechooser .path-bar.linked > button:hover, .selection-mode headerbar .path-bar button:hover, headerbar.selection-mode button:hover, headerbar.selection-mode button.image-button:hover, headerbar.selection-mode button.image-button.toggle:hover, headerbar.selection-mode button.text.button:hover, headerbar.selection-mode button.toggle:hover, headerbar.selection-mode box button.toggle:hover, headerbar.selection-mode buttonbox.toggle:hover, headerbar.selection-mode stackswitcher button:hover, headerbar.selection-mode filechooser .path-bar.linked > button:hover, headerbar.selection-mode .path-bar button:hover, .selection-mode .titlebar button:hover, .selection-mode .titlebar button.image-button:hover, .selection-mode .titlebar button.image-button.toggle:hover, .selection-mode .titlebar button.text.button:hover, .selection-mode .titlebar button.toggle:hover, .selection-mode .titlebar box button.toggle:hover, .selection-mode .titlebar buttonbox.toggle:hover, .selection-mode .titlebar stackswitcher button:hover, .selection-mode .titlebar filechooser .path-bar.linked > button:hover, .selection-mode .titlebar .path-bar button:hover, .titlebar.selection-mode button:hover, .titlebar.selection-mode button.image-button:hover, .titlebar.selection-mode button.image-button.toggle:hover, .titlebar.selection-mode button.text.button:hover, .titlebar.selection-mode button.toggle:hover, .titlebar.selection-mode box button.toggle:hover, .titlebar.selection-mode buttonbox.toggle:hover, .titlebar.selection-mode stackswitcher button:hover, .titlebar.selection-mode filechooser .path-bar.linked > button:hover, .titlebar.selection-mode .path-bar button:hover { color: #42453E; outline-color: #94908c; border-color: #79944d; border-bottom-color: #5e733c; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); } + +.selection-mode headerbar button:active, .selection-mode headerbar button:checked, .selection-mode headerbar button.toggle:checked, .selection-mode headerbar button.toggle:active, .selection-mode headerbar button.image-button:active, .selection-mode headerbar button.image-button:checked, .selection-mode headerbar button.image-button.toggle:checked, .selection-mode headerbar button.image-button.toggle:active, .selection-mode headerbar button.image-button.toggle:active, .selection-mode headerbar button.image-button.toggle:checked, .selection-mode headerbar button.image-button.toggle.toggle:checked, .selection-mode headerbar button.image-button.toggle.toggle:active, .selection-mode headerbar button.text.button:active, .selection-mode headerbar button.text.button:checked, .selection-mode headerbar button.text.button.toggle:checked, .selection-mode headerbar button.text.button.toggle:active, .selection-mode headerbar button.toggle:active, .selection-mode headerbar button.toggle:checked, .selection-mode headerbar button.toggle.toggle:checked, .selection-mode headerbar button.toggle.toggle:active, .selection-mode headerbar box button.toggle:active, .selection-mode headerbar box button.toggle:checked, .selection-mode headerbar box button.toggle.toggle:checked, .selection-mode headerbar box button.toggle.toggle:active, .selection-mode headerbar buttonbox.toggle:active, .selection-mode headerbar buttonbox.toggle:checked, .selection-mode headerbar buttonbox.toggle.toggle:checked, .selection-mode headerbar buttonbox.toggle.toggle:active, .selection-mode headerbar stackswitcher button:active, .selection-mode headerbar stackswitcher button:checked, .selection-mode headerbar stackswitcher button.toggle:checked, .selection-mode headerbar stackswitcher button.toggle:active, .selection-mode headerbar filechooser .path-bar.linked > button:active, .selection-mode headerbar filechooser .path-bar.linked > button:checked, .selection-mode headerbar filechooser .path-bar.linked > button.toggle:checked, .selection-mode headerbar filechooser .path-bar.linked > button.toggle:active, .selection-mode headerbar .path-bar button:active, .selection-mode headerbar .path-bar button:checked, .selection-mode headerbar .path-bar button.toggle:checked, .selection-mode headerbar .path-bar button.toggle:active, headerbar.selection-mode button:active, headerbar.selection-mode button:checked, headerbar.selection-mode button.toggle:checked, headerbar.selection-mode button.toggle:active, headerbar.selection-mode button.image-button:active, headerbar.selection-mode button.image-button:checked, headerbar.selection-mode button.image-button.toggle:checked, headerbar.selection-mode button.image-button.toggle:active, headerbar.selection-mode button.image-button.toggle:active, headerbar.selection-mode button.image-button.toggle:checked, headerbar.selection-mode button.image-button.toggle.toggle:checked, headerbar.selection-mode button.image-button.toggle.toggle:active, headerbar.selection-mode button.text.button:active, headerbar.selection-mode button.text.button:checked, headerbar.selection-mode button.text.button.toggle:checked, headerbar.selection-mode button.text.button.toggle:active, headerbar.selection-mode button.toggle:active, headerbar.selection-mode button.toggle:checked, headerbar.selection-mode button.toggle.toggle:checked, headerbar.selection-mode button.toggle.toggle:active, headerbar.selection-mode box button.toggle:active, headerbar.selection-mode box button.toggle:checked, headerbar.selection-mode box button.toggle.toggle:checked, headerbar.selection-mode box button.toggle.toggle:active, headerbar.selection-mode buttonbox.toggle:active, headerbar.selection-mode buttonbox.toggle:checked, headerbar.selection-mode buttonbox.toggle.toggle:checked, headerbar.selection-mode buttonbox.toggle.toggle:active, headerbar.selection-mode stackswitcher button:active, headerbar.selection-mode stackswitcher button:checked, headerbar.selection-mode stackswitcher button.toggle:checked, headerbar.selection-mode stackswitcher button.toggle:active, headerbar.selection-mode filechooser .path-bar.linked > button:active, headerbar.selection-mode filechooser .path-bar.linked > button:checked, headerbar.selection-mode filechooser .path-bar.linked > button.toggle:checked, headerbar.selection-mode filechooser .path-bar.linked > button.toggle:active, headerbar.selection-mode .path-bar button:active, headerbar.selection-mode .path-bar button:checked, headerbar.selection-mode .path-bar button.toggle:checked, headerbar.selection-mode .path-bar button.toggle:active, .selection-mode .titlebar button:active, .selection-mode .titlebar button:checked, .selection-mode .titlebar button.toggle:checked, .selection-mode .titlebar button.toggle:active, .selection-mode .titlebar button.image-button:active, .selection-mode .titlebar button.image-button:checked, .selection-mode .titlebar button.image-button.toggle:checked, .selection-mode .titlebar button.image-button.toggle:active, .selection-mode .titlebar button.image-button.toggle:active, .selection-mode .titlebar button.image-button.toggle:checked, .selection-mode .titlebar button.image-button.toggle.toggle:checked, .selection-mode .titlebar button.image-button.toggle.toggle:active, .selection-mode .titlebar button.text.button:active, .selection-mode .titlebar button.text.button:checked, .selection-mode .titlebar button.text.button.toggle:checked, .selection-mode .titlebar button.text.button.toggle:active, .selection-mode .titlebar button.toggle:active, .selection-mode .titlebar button.toggle:checked, .selection-mode .titlebar button.toggle.toggle:checked, .selection-mode .titlebar button.toggle.toggle:active, .selection-mode .titlebar box button.toggle:active, .selection-mode .titlebar box button.toggle:checked, .selection-mode .titlebar box button.toggle.toggle:checked, .selection-mode .titlebar box button.toggle.toggle:active, .selection-mode .titlebar buttonbox.toggle:active, .selection-mode .titlebar buttonbox.toggle:checked, .selection-mode .titlebar buttonbox.toggle.toggle:checked, .selection-mode .titlebar buttonbox.toggle.toggle:active, .selection-mode .titlebar stackswitcher button:active, .selection-mode .titlebar stackswitcher button:checked, .selection-mode .titlebar stackswitcher button.toggle:checked, .selection-mode .titlebar stackswitcher button.toggle:active, .selection-mode .titlebar filechooser .path-bar.linked > button:active, .selection-mode .titlebar filechooser .path-bar.linked > button:checked, .selection-mode .titlebar filechooser .path-bar.linked > button.toggle:checked, .selection-mode .titlebar filechooser .path-bar.linked > button.toggle:active, .selection-mode .titlebar .path-bar button:active, .selection-mode .titlebar .path-bar button:checked, .selection-mode .titlebar .path-bar button.toggle:checked, .selection-mode .titlebar .path-bar button.toggle:active, .titlebar.selection-mode button:active, .titlebar.selection-mode button:checked, .titlebar.selection-mode button.toggle:checked, .titlebar.selection-mode button.toggle:active, .titlebar.selection-mode button.image-button:active, .titlebar.selection-mode button.image-button:checked, .titlebar.selection-mode button.image-button.toggle:checked, .titlebar.selection-mode button.image-button.toggle:active, .titlebar.selection-mode button.image-button.toggle:active, .titlebar.selection-mode button.image-button.toggle:checked, .titlebar.selection-mode button.image-button.toggle.toggle:checked, .titlebar.selection-mode button.image-button.toggle.toggle:active, .titlebar.selection-mode button.text.button:active, .titlebar.selection-mode button.text.button:checked, .titlebar.selection-mode button.text.button.toggle:checked, .titlebar.selection-mode button.text.button.toggle:active, .titlebar.selection-mode button.toggle:active, .titlebar.selection-mode button.toggle:checked, .titlebar.selection-mode button.toggle.toggle:checked, .titlebar.selection-mode button.toggle.toggle:active, .titlebar.selection-mode box button.toggle:active, .titlebar.selection-mode box button.toggle:checked, .titlebar.selection-mode box button.toggle.toggle:checked, .titlebar.selection-mode box button.toggle.toggle:active, .titlebar.selection-mode buttonbox.toggle:active, .titlebar.selection-mode buttonbox.toggle:checked, .titlebar.selection-mode buttonbox.toggle.toggle:checked, .titlebar.selection-mode buttonbox.toggle.toggle:active, .titlebar.selection-mode stackswitcher button:active, .titlebar.selection-mode stackswitcher button:checked, .titlebar.selection-mode stackswitcher button.toggle:checked, .titlebar.selection-mode stackswitcher button.toggle:active, .titlebar.selection-mode filechooser .path-bar.linked > button:active, .titlebar.selection-mode filechooser .path-bar.linked > button:checked, .titlebar.selection-mode filechooser .path-bar.linked > button.toggle:checked, .titlebar.selection-mode filechooser .path-bar.linked > button.toggle:active, .titlebar.selection-mode .path-bar button:active, .titlebar.selection-mode .path-bar button:checked, .titlebar.selection-mode .path-bar button.toggle:checked, .titlebar.selection-mode .path-bar button.toggle:active { color: #42453E; outline-color: #94908c; border-color: #79944d; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +.selection-mode headerbar button:backdrop.flat, .selection-mode headerbar button:backdrop, .selection-mode headerbar button.image-button:backdrop.flat, .selection-mode headerbar button.image-button:backdrop, .selection-mode headerbar button.image-button.toggle:backdrop.flat, .selection-mode headerbar button.image-button.toggle:backdrop, .selection-mode headerbar button.text.button:backdrop.flat, .selection-mode headerbar button.text.button:backdrop, .selection-mode headerbar button.toggle:backdrop.flat, .selection-mode headerbar button.toggle:backdrop, .selection-mode headerbar box button.toggle:backdrop.flat, .selection-mode headerbar box button.toggle:backdrop, .selection-mode headerbar buttonbox.toggle:backdrop.flat, .selection-mode headerbar buttonbox.toggle:backdrop, .selection-mode headerbar stackswitcher button:backdrop.flat, .selection-mode headerbar stackswitcher button:backdrop, .selection-mode headerbar filechooser .path-bar.linked > button:backdrop.flat, .selection-mode headerbar filechooser .path-bar.linked > button:backdrop, .selection-mode headerbar .path-bar button:backdrop.flat, .selection-mode headerbar .path-bar button:backdrop, headerbar.selection-mode button:backdrop.flat, headerbar.selection-mode button:backdrop, headerbar.selection-mode button.image-button:backdrop.flat, headerbar.selection-mode button.image-button:backdrop, headerbar.selection-mode button.image-button.toggle:backdrop.flat, headerbar.selection-mode button.image-button.toggle:backdrop, headerbar.selection-mode button.text.button:backdrop.flat, headerbar.selection-mode button.text.button:backdrop, headerbar.selection-mode button.toggle:backdrop.flat, headerbar.selection-mode button.toggle:backdrop, headerbar.selection-mode box button.toggle:backdrop.flat, headerbar.selection-mode box button.toggle:backdrop, headerbar.selection-mode buttonbox.toggle:backdrop.flat, headerbar.selection-mode buttonbox.toggle:backdrop, headerbar.selection-mode stackswitcher button:backdrop.flat, headerbar.selection-mode stackswitcher button:backdrop, headerbar.selection-mode filechooser .path-bar.linked > button:backdrop.flat, headerbar.selection-mode filechooser .path-bar.linked > button:backdrop, headerbar.selection-mode .path-bar button:backdrop.flat, headerbar.selection-mode .path-bar button:backdrop, .selection-mode .titlebar button:backdrop.flat, .selection-mode .titlebar button:backdrop, .selection-mode .titlebar button.image-button:backdrop.flat, .selection-mode .titlebar button.image-button:backdrop, .selection-mode .titlebar button.image-button.toggle:backdrop.flat, .selection-mode .titlebar button.image-button.toggle:backdrop, .selection-mode .titlebar button.text.button:backdrop.flat, .selection-mode .titlebar button.text.button:backdrop, .selection-mode .titlebar button.toggle:backdrop.flat, .selection-mode .titlebar button.toggle:backdrop, .selection-mode .titlebar box button.toggle:backdrop.flat, .selection-mode .titlebar box button.toggle:backdrop, .selection-mode .titlebar buttonbox.toggle:backdrop.flat, .selection-mode .titlebar buttonbox.toggle:backdrop, .selection-mode .titlebar stackswitcher button:backdrop.flat, .selection-mode .titlebar stackswitcher button:backdrop, .selection-mode .titlebar filechooser .path-bar.linked > button:backdrop.flat, .selection-mode .titlebar filechooser .path-bar.linked > button:backdrop, .selection-mode .titlebar .path-bar button:backdrop.flat, .selection-mode .titlebar .path-bar button:backdrop, .titlebar.selection-mode button:backdrop.flat, .titlebar.selection-mode button:backdrop, .titlebar.selection-mode button.image-button:backdrop.flat, .titlebar.selection-mode button.image-button:backdrop, .titlebar.selection-mode button.image-button.toggle:backdrop.flat, .titlebar.selection-mode button.image-button.toggle:backdrop, .titlebar.selection-mode button.text.button:backdrop.flat, .titlebar.selection-mode button.text.button:backdrop, .titlebar.selection-mode button.toggle:backdrop.flat, .titlebar.selection-mode button.toggle:backdrop, .titlebar.selection-mode box button.toggle:backdrop.flat, .titlebar.selection-mode box button.toggle:backdrop, .titlebar.selection-mode buttonbox.toggle:backdrop.flat, .titlebar.selection-mode buttonbox.toggle:backdrop, .titlebar.selection-mode stackswitcher button:backdrop.flat, .titlebar.selection-mode stackswitcher button:backdrop, .titlebar.selection-mode filechooser .path-bar.linked > button:backdrop.flat, .titlebar.selection-mode filechooser .path-bar.linked > button:backdrop, .titlebar.selection-mode .path-bar button:backdrop.flat, .titlebar.selection-mode .path-bar button:backdrop { color: #525a46; border-color: #93af66; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #9fb876; } + +.selection-mode headerbar button:backdrop.flat:active, .selection-mode headerbar button:backdrop.flat:checked, .selection-mode headerbar button:backdrop:active, .selection-mode headerbar button:backdrop:checked, .selection-mode headerbar button.image-button:backdrop.flat:active, .selection-mode headerbar button.image-button:backdrop.flat:checked, .selection-mode headerbar button.image-button:backdrop:active, .selection-mode headerbar button.image-button:backdrop:checked, .selection-mode headerbar button.image-button.toggle:backdrop.flat:active, .selection-mode headerbar button.image-button.toggle:backdrop.flat:checked, .selection-mode headerbar button.image-button.toggle:backdrop:active, .selection-mode headerbar button.image-button.toggle:backdrop:checked, .selection-mode headerbar button.text.button:backdrop.flat:active, .selection-mode headerbar button.text.button:backdrop.flat:checked, .selection-mode headerbar button.text.button:backdrop:active, .selection-mode headerbar button.text.button:backdrop:checked, .selection-mode headerbar button.toggle:backdrop.flat:active, .selection-mode headerbar button.toggle:backdrop.flat:checked, .selection-mode headerbar button.toggle:backdrop:active, .selection-mode headerbar button.toggle:backdrop:checked, .selection-mode headerbar box button.toggle:backdrop.flat:active, .selection-mode headerbar box button.toggle:backdrop.flat:checked, .selection-mode headerbar box button.toggle:backdrop:active, .selection-mode headerbar box button.toggle:backdrop:checked, .selection-mode headerbar buttonbox.toggle:backdrop.flat:active, .selection-mode headerbar buttonbox.toggle:backdrop.flat:checked, .selection-mode headerbar buttonbox.toggle:backdrop:active, .selection-mode headerbar buttonbox.toggle:backdrop:checked, .selection-mode headerbar stackswitcher button:backdrop.flat:active, .selection-mode headerbar stackswitcher button:backdrop.flat:checked, .selection-mode headerbar stackswitcher button:backdrop:active, .selection-mode headerbar stackswitcher button:backdrop:checked, .selection-mode headerbar filechooser .path-bar.linked > button:backdrop.flat:active, .selection-mode headerbar filechooser .path-bar.linked > button:backdrop.flat:checked, .selection-mode headerbar filechooser .path-bar.linked > button:backdrop:active, .selection-mode headerbar filechooser .path-bar.linked > button:backdrop:checked, .selection-mode headerbar .path-bar button:backdrop.flat:active, .selection-mode headerbar .path-bar button:backdrop.flat:checked, .selection-mode headerbar .path-bar button:backdrop:active, .selection-mode headerbar .path-bar button:backdrop:checked, headerbar.selection-mode button:backdrop.flat:active, headerbar.selection-mode button:backdrop.flat:checked, headerbar.selection-mode button:backdrop:active, headerbar.selection-mode button:backdrop:checked, headerbar.selection-mode button.image-button:backdrop.flat:active, headerbar.selection-mode button.image-button:backdrop.flat:checked, headerbar.selection-mode button.image-button:backdrop:active, headerbar.selection-mode button.image-button:backdrop:checked, headerbar.selection-mode button.image-button.toggle:backdrop.flat:active, headerbar.selection-mode button.image-button.toggle:backdrop.flat:checked, headerbar.selection-mode button.image-button.toggle:backdrop:active, headerbar.selection-mode button.image-button.toggle:backdrop:checked, headerbar.selection-mode button.text.button:backdrop.flat:active, headerbar.selection-mode button.text.button:backdrop.flat:checked, headerbar.selection-mode button.text.button:backdrop:active, headerbar.selection-mode button.text.button:backdrop:checked, headerbar.selection-mode button.toggle:backdrop.flat:active, headerbar.selection-mode button.toggle:backdrop.flat:checked, headerbar.selection-mode button.toggle:backdrop:active, headerbar.selection-mode button.toggle:backdrop:checked, headerbar.selection-mode box button.toggle:backdrop.flat:active, headerbar.selection-mode box button.toggle:backdrop.flat:checked, headerbar.selection-mode box button.toggle:backdrop:active, headerbar.selection-mode box button.toggle:backdrop:checked, headerbar.selection-mode buttonbox.toggle:backdrop.flat:active, headerbar.selection-mode buttonbox.toggle:backdrop.flat:checked, headerbar.selection-mode buttonbox.toggle:backdrop:active, headerbar.selection-mode buttonbox.toggle:backdrop:checked, headerbar.selection-mode stackswitcher button:backdrop.flat:active, headerbar.selection-mode stackswitcher button:backdrop.flat:checked, headerbar.selection-mode stackswitcher button:backdrop:active, headerbar.selection-mode stackswitcher button:backdrop:checked, headerbar.selection-mode filechooser .path-bar.linked > button:backdrop.flat:active, headerbar.selection-mode filechooser .path-bar.linked > button:backdrop.flat:checked, headerbar.selection-mode filechooser .path-bar.linked > button:backdrop:active, headerbar.selection-mode filechooser .path-bar.linked > button:backdrop:checked, headerbar.selection-mode .path-bar button:backdrop.flat:active, headerbar.selection-mode .path-bar button:backdrop.flat:checked, headerbar.selection-mode .path-bar button:backdrop:active, headerbar.selection-mode .path-bar button:backdrop:checked, .selection-mode .titlebar button:backdrop.flat:active, .selection-mode .titlebar button:backdrop.flat:checked, .selection-mode .titlebar button:backdrop:active, .selection-mode .titlebar button:backdrop:checked, .selection-mode .titlebar button.image-button:backdrop.flat:active, .selection-mode .titlebar button.image-button:backdrop.flat:checked, .selection-mode .titlebar button.image-button:backdrop:active, .selection-mode .titlebar button.image-button:backdrop:checked, .selection-mode .titlebar button.image-button.toggle:backdrop.flat:active, .selection-mode .titlebar button.image-button.toggle:backdrop.flat:checked, .selection-mode .titlebar button.image-button.toggle:backdrop:active, .selection-mode .titlebar button.image-button.toggle:backdrop:checked, .selection-mode .titlebar button.text.button:backdrop.flat:active, .selection-mode .titlebar button.text.button:backdrop.flat:checked, .selection-mode .titlebar button.text.button:backdrop:active, .selection-mode .titlebar button.text.button:backdrop:checked, .selection-mode .titlebar button.toggle:backdrop.flat:active, .selection-mode .titlebar button.toggle:backdrop.flat:checked, .selection-mode .titlebar button.toggle:backdrop:active, .selection-mode .titlebar button.toggle:backdrop:checked, .selection-mode .titlebar box button.toggle:backdrop.flat:active, .selection-mode .titlebar box button.toggle:backdrop.flat:checked, .selection-mode .titlebar box button.toggle:backdrop:active, .selection-mode .titlebar box button.toggle:backdrop:checked, .selection-mode .titlebar buttonbox.toggle:backdrop.flat:active, .selection-mode .titlebar buttonbox.toggle:backdrop.flat:checked, .selection-mode .titlebar buttonbox.toggle:backdrop:active, .selection-mode .titlebar buttonbox.toggle:backdrop:checked, .selection-mode .titlebar stackswitcher button:backdrop.flat:active, .selection-mode .titlebar stackswitcher button:backdrop.flat:checked, .selection-mode .titlebar stackswitcher button:backdrop:active, .selection-mode .titlebar stackswitcher button:backdrop:checked, .selection-mode .titlebar filechooser .path-bar.linked > button:backdrop.flat:active, .selection-mode .titlebar filechooser .path-bar.linked > button:backdrop.flat:checked, .selection-mode .titlebar filechooser .path-bar.linked > button:backdrop:active, .selection-mode .titlebar filechooser .path-bar.linked > button:backdrop:checked, .selection-mode .titlebar .path-bar button:backdrop.flat:active, .selection-mode .titlebar .path-bar button:backdrop.flat:checked, .selection-mode .titlebar .path-bar button:backdrop:active, .selection-mode .titlebar .path-bar button:backdrop:checked, .titlebar.selection-mode button:backdrop.flat:active, .titlebar.selection-mode button:backdrop.flat:checked, .titlebar.selection-mode button:backdrop:active, .titlebar.selection-mode button:backdrop:checked, .titlebar.selection-mode button.image-button:backdrop.flat:active, .titlebar.selection-mode button.image-button:backdrop.flat:checked, .titlebar.selection-mode button.image-button:backdrop:active, .titlebar.selection-mode button.image-button:backdrop:checked, .titlebar.selection-mode button.image-button.toggle:backdrop.flat:active, .titlebar.selection-mode button.image-button.toggle:backdrop.flat:checked, .titlebar.selection-mode button.image-button.toggle:backdrop:active, .titlebar.selection-mode button.image-button.toggle:backdrop:checked, .titlebar.selection-mode button.text.button:backdrop.flat:active, .titlebar.selection-mode button.text.button:backdrop.flat:checked, .titlebar.selection-mode button.text.button:backdrop:active, .titlebar.selection-mode button.text.button:backdrop:checked, .titlebar.selection-mode button.toggle:backdrop.flat:active, .titlebar.selection-mode button.toggle:backdrop.flat:checked, .titlebar.selection-mode button.toggle:backdrop:active, .titlebar.selection-mode button.toggle:backdrop:checked, .titlebar.selection-mode box button.toggle:backdrop.flat:active, .titlebar.selection-mode box button.toggle:backdrop.flat:checked, .titlebar.selection-mode box button.toggle:backdrop:active, .titlebar.selection-mode box button.toggle:backdrop:checked, .titlebar.selection-mode buttonbox.toggle:backdrop.flat:active, .titlebar.selection-mode buttonbox.toggle:backdrop.flat:checked, .titlebar.selection-mode buttonbox.toggle:backdrop:active, .titlebar.selection-mode buttonbox.toggle:backdrop:checked, .titlebar.selection-mode stackswitcher button:backdrop.flat:active, .titlebar.selection-mode stackswitcher button:backdrop.flat:checked, .titlebar.selection-mode stackswitcher button:backdrop:active, .titlebar.selection-mode stackswitcher button:backdrop:checked, .titlebar.selection-mode filechooser .path-bar.linked > button:backdrop.flat:active, .titlebar.selection-mode filechooser .path-bar.linked > button:backdrop.flat:checked, .titlebar.selection-mode filechooser .path-bar.linked > button:backdrop:active, .titlebar.selection-mode filechooser .path-bar.linked > button:backdrop:checked, .titlebar.selection-mode .path-bar button:backdrop.flat:active, .titlebar.selection-mode .path-bar button:backdrop.flat:checked, .titlebar.selection-mode .path-bar button:backdrop:active, .titlebar.selection-mode .path-bar button:backdrop:checked { color: #525a45; border-color: #90ad62; background-image: image(#90ad62); box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #87a556; } + +.selection-mode headerbar button:backdrop.flat:disabled, .selection-mode headerbar button:backdrop:disabled, .selection-mode headerbar button.image-button:backdrop.flat:disabled, .selection-mode headerbar button.image-button:backdrop:disabled, .selection-mode headerbar button.image-button.toggle:backdrop.flat:disabled, .selection-mode headerbar button.image-button.toggle:backdrop:disabled, .selection-mode headerbar button.text.button:backdrop.flat:disabled, .selection-mode headerbar button.text.button:backdrop:disabled, .selection-mode headerbar button.toggle:backdrop.flat:disabled, .selection-mode headerbar button.toggle:backdrop:disabled, .selection-mode headerbar box button.toggle:backdrop.flat:disabled, .selection-mode headerbar box button.toggle:backdrop:disabled, .selection-mode headerbar buttonbox.toggle:backdrop.flat:disabled, .selection-mode headerbar buttonbox.toggle:backdrop:disabled, .selection-mode headerbar stackswitcher button:backdrop.flat:disabled, .selection-mode headerbar stackswitcher button:backdrop:disabled, .selection-mode headerbar filechooser .path-bar.linked > button:backdrop.flat:disabled, .selection-mode headerbar filechooser .path-bar.linked > button:backdrop:disabled, .selection-mode headerbar .path-bar button:backdrop.flat:disabled, .selection-mode headerbar .path-bar button:backdrop:disabled, headerbar.selection-mode button:backdrop.flat:disabled, headerbar.selection-mode button:backdrop:disabled, headerbar.selection-mode button.image-button:backdrop.flat:disabled, headerbar.selection-mode button.image-button:backdrop:disabled, headerbar.selection-mode button.image-button.toggle:backdrop.flat:disabled, headerbar.selection-mode button.image-button.toggle:backdrop:disabled, headerbar.selection-mode button.text.button:backdrop.flat:disabled, headerbar.selection-mode button.text.button:backdrop:disabled, headerbar.selection-mode button.toggle:backdrop.flat:disabled, headerbar.selection-mode button.toggle:backdrop:disabled, headerbar.selection-mode box button.toggle:backdrop.flat:disabled, headerbar.selection-mode box button.toggle:backdrop:disabled, headerbar.selection-mode buttonbox.toggle:backdrop.flat:disabled, headerbar.selection-mode buttonbox.toggle:backdrop:disabled, headerbar.selection-mode stackswitcher button:backdrop.flat:disabled, headerbar.selection-mode stackswitcher button:backdrop:disabled, headerbar.selection-mode filechooser .path-bar.linked > button:backdrop.flat:disabled, headerbar.selection-mode filechooser .path-bar.linked > button:backdrop:disabled, headerbar.selection-mode .path-bar button:backdrop.flat:disabled, headerbar.selection-mode .path-bar button:backdrop:disabled, .selection-mode .titlebar button:backdrop.flat:disabled, .selection-mode .titlebar button:backdrop:disabled, .selection-mode .titlebar button.image-button:backdrop.flat:disabled, .selection-mode .titlebar button.image-button:backdrop:disabled, .selection-mode .titlebar button.image-button.toggle:backdrop.flat:disabled, .selection-mode .titlebar button.image-button.toggle:backdrop:disabled, .selection-mode .titlebar button.text.button:backdrop.flat:disabled, .selection-mode .titlebar button.text.button:backdrop:disabled, .selection-mode .titlebar button.toggle:backdrop.flat:disabled, .selection-mode .titlebar button.toggle:backdrop:disabled, .selection-mode .titlebar box button.toggle:backdrop.flat:disabled, .selection-mode .titlebar box button.toggle:backdrop:disabled, .selection-mode .titlebar buttonbox.toggle:backdrop.flat:disabled, .selection-mode .titlebar buttonbox.toggle:backdrop:disabled, .selection-mode .titlebar stackswitcher button:backdrop.flat:disabled, .selection-mode .titlebar stackswitcher button:backdrop:disabled, .selection-mode .titlebar filechooser .path-bar.linked > button:backdrop.flat:disabled, .selection-mode .titlebar filechooser .path-bar.linked > button:backdrop:disabled, .selection-mode .titlebar .path-bar button:backdrop.flat:disabled, .selection-mode .titlebar .path-bar button:backdrop:disabled, .titlebar.selection-mode button:backdrop.flat:disabled, .titlebar.selection-mode button:backdrop:disabled, .titlebar.selection-mode button.image-button:backdrop.flat:disabled, .titlebar.selection-mode button.image-button:backdrop:disabled, .titlebar.selection-mode button.image-button.toggle:backdrop.flat:disabled, .titlebar.selection-mode button.image-button.toggle:backdrop:disabled, .titlebar.selection-mode button.text.button:backdrop.flat:disabled, .titlebar.selection-mode button.text.button:backdrop:disabled, .titlebar.selection-mode button.toggle:backdrop.flat:disabled, .titlebar.selection-mode button.toggle:backdrop:disabled, .titlebar.selection-mode box button.toggle:backdrop.flat:disabled, .titlebar.selection-mode box button.toggle:backdrop:disabled, .titlebar.selection-mode buttonbox.toggle:backdrop.flat:disabled, .titlebar.selection-mode buttonbox.toggle:backdrop:disabled, .titlebar.selection-mode stackswitcher button:backdrop.flat:disabled, .titlebar.selection-mode stackswitcher button:backdrop:disabled, .titlebar.selection-mode filechooser .path-bar.linked > button:backdrop.flat:disabled, .titlebar.selection-mode filechooser .path-bar.linked > button:backdrop:disabled, .titlebar.selection-mode .path-bar button:backdrop.flat:disabled, .titlebar.selection-mode .path-bar button:backdrop:disabled { color: #819267; border-color: #a3bb7d; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #87a556; } + +.selection-mode headerbar button:backdrop.flat:disabled:active, .selection-mode headerbar button:backdrop.flat:disabled:checked, .selection-mode headerbar button:backdrop:disabled:active, .selection-mode headerbar button:backdrop:disabled:checked, .selection-mode headerbar button.image-button:backdrop.flat:disabled:active, .selection-mode headerbar button.image-button:backdrop.flat:disabled:checked, .selection-mode headerbar button.image-button:backdrop:disabled:active, .selection-mode headerbar button.image-button:backdrop:disabled:checked, .selection-mode headerbar button.image-button.toggle:backdrop.flat:disabled:active, .selection-mode headerbar button.image-button.toggle:backdrop.flat:disabled:checked, .selection-mode headerbar button.image-button.toggle:backdrop:disabled:active, .selection-mode headerbar button.image-button.toggle:backdrop:disabled:checked, .selection-mode headerbar button.text.button:backdrop.flat:disabled:active, .selection-mode headerbar button.text.button:backdrop.flat:disabled:checked, .selection-mode headerbar button.text.button:backdrop:disabled:active, .selection-mode headerbar button.text.button:backdrop:disabled:checked, .selection-mode headerbar button.toggle:backdrop.flat:disabled:active, .selection-mode headerbar button.toggle:backdrop.flat:disabled:checked, .selection-mode headerbar button.toggle:backdrop:disabled:active, .selection-mode headerbar button.toggle:backdrop:disabled:checked, .selection-mode headerbar box button.toggle:backdrop.flat:disabled:active, .selection-mode headerbar box button.toggle:backdrop.flat:disabled:checked, .selection-mode headerbar box button.toggle:backdrop:disabled:active, .selection-mode headerbar box button.toggle:backdrop:disabled:checked, .selection-mode headerbar buttonbox.toggle:backdrop.flat:disabled:active, .selection-mode headerbar buttonbox.toggle:backdrop.flat:disabled:checked, .selection-mode headerbar buttonbox.toggle:backdrop:disabled:active, .selection-mode headerbar buttonbox.toggle:backdrop:disabled:checked, .selection-mode headerbar stackswitcher button:backdrop.flat:disabled:active, .selection-mode headerbar stackswitcher button:backdrop.flat:disabled:checked, .selection-mode headerbar stackswitcher button:backdrop:disabled:active, .selection-mode headerbar stackswitcher button:backdrop:disabled:checked, .selection-mode headerbar filechooser .path-bar.linked > button:backdrop.flat:disabled:active, .selection-mode headerbar filechooser .path-bar.linked > button:backdrop.flat:disabled:checked, .selection-mode headerbar filechooser .path-bar.linked > button:backdrop:disabled:active, .selection-mode headerbar filechooser .path-bar.linked > button:backdrop:disabled:checked, .selection-mode headerbar .path-bar button:backdrop.flat:disabled:active, .selection-mode headerbar .path-bar button:backdrop.flat:disabled:checked, .selection-mode headerbar .path-bar button:backdrop:disabled:active, .selection-mode headerbar .path-bar button:backdrop:disabled:checked, headerbar.selection-mode button:backdrop.flat:disabled:active, headerbar.selection-mode button:backdrop.flat:disabled:checked, headerbar.selection-mode button:backdrop:disabled:active, headerbar.selection-mode button:backdrop:disabled:checked, headerbar.selection-mode button.image-button:backdrop.flat:disabled:active, headerbar.selection-mode button.image-button:backdrop.flat:disabled:checked, headerbar.selection-mode button.image-button:backdrop:disabled:active, headerbar.selection-mode button.image-button:backdrop:disabled:checked, headerbar.selection-mode button.image-button.toggle:backdrop.flat:disabled:active, headerbar.selection-mode button.image-button.toggle:backdrop.flat:disabled:checked, headerbar.selection-mode button.image-button.toggle:backdrop:disabled:active, headerbar.selection-mode button.image-button.toggle:backdrop:disabled:checked, headerbar.selection-mode button.text.button:backdrop.flat:disabled:active, headerbar.selection-mode button.text.button:backdrop.flat:disabled:checked, headerbar.selection-mode button.text.button:backdrop:disabled:active, headerbar.selection-mode button.text.button:backdrop:disabled:checked, headerbar.selection-mode button.toggle:backdrop.flat:disabled:active, headerbar.selection-mode button.toggle:backdrop.flat:disabled:checked, headerbar.selection-mode button.toggle:backdrop:disabled:active, headerbar.selection-mode button.toggle:backdrop:disabled:checked, headerbar.selection-mode box button.toggle:backdrop.flat:disabled:active, headerbar.selection-mode box button.toggle:backdrop.flat:disabled:checked, headerbar.selection-mode box button.toggle:backdrop:disabled:active, headerbar.selection-mode box button.toggle:backdrop:disabled:checked, headerbar.selection-mode buttonbox.toggle:backdrop.flat:disabled:active, headerbar.selection-mode buttonbox.toggle:backdrop.flat:disabled:checked, headerbar.selection-mode buttonbox.toggle:backdrop:disabled:active, headerbar.selection-mode buttonbox.toggle:backdrop:disabled:checked, headerbar.selection-mode stackswitcher button:backdrop.flat:disabled:active, headerbar.selection-mode stackswitcher button:backdrop.flat:disabled:checked, headerbar.selection-mode stackswitcher button:backdrop:disabled:active, headerbar.selection-mode stackswitcher button:backdrop:disabled:checked, headerbar.selection-mode filechooser .path-bar.linked > button:backdrop.flat:disabled:active, headerbar.selection-mode filechooser .path-bar.linked > button:backdrop.flat:disabled:checked, headerbar.selection-mode filechooser .path-bar.linked > button:backdrop:disabled:active, headerbar.selection-mode filechooser .path-bar.linked > button:backdrop:disabled:checked, headerbar.selection-mode .path-bar button:backdrop.flat:disabled:active, headerbar.selection-mode .path-bar button:backdrop.flat:disabled:checked, headerbar.selection-mode .path-bar button:backdrop:disabled:active, headerbar.selection-mode .path-bar button:backdrop:disabled:checked, .selection-mode .titlebar button:backdrop.flat:disabled:active, .selection-mode .titlebar button:backdrop.flat:disabled:checked, .selection-mode .titlebar button:backdrop:disabled:active, .selection-mode .titlebar button:backdrop:disabled:checked, .selection-mode .titlebar button.image-button:backdrop.flat:disabled:active, .selection-mode .titlebar button.image-button:backdrop.flat:disabled:checked, .selection-mode .titlebar button.image-button:backdrop:disabled:active, .selection-mode .titlebar button.image-button:backdrop:disabled:checked, .selection-mode .titlebar button.image-button.toggle:backdrop.flat:disabled:active, .selection-mode .titlebar button.image-button.toggle:backdrop.flat:disabled:checked, .selection-mode .titlebar button.image-button.toggle:backdrop:disabled:active, .selection-mode .titlebar button.image-button.toggle:backdrop:disabled:checked, .selection-mode .titlebar button.text.button:backdrop.flat:disabled:active, .selection-mode .titlebar button.text.button:backdrop.flat:disabled:checked, .selection-mode .titlebar button.text.button:backdrop:disabled:active, .selection-mode .titlebar button.text.button:backdrop:disabled:checked, .selection-mode .titlebar button.toggle:backdrop.flat:disabled:active, .selection-mode .titlebar button.toggle:backdrop.flat:disabled:checked, .selection-mode .titlebar button.toggle:backdrop:disabled:active, .selection-mode .titlebar button.toggle:backdrop:disabled:checked, .selection-mode .titlebar box button.toggle:backdrop.flat:disabled:active, .selection-mode .titlebar box button.toggle:backdrop.flat:disabled:checked, .selection-mode .titlebar box button.toggle:backdrop:disabled:active, .selection-mode .titlebar box button.toggle:backdrop:disabled:checked, .selection-mode .titlebar buttonbox.toggle:backdrop.flat:disabled:active, .selection-mode .titlebar buttonbox.toggle:backdrop.flat:disabled:checked, .selection-mode .titlebar buttonbox.toggle:backdrop:disabled:active, .selection-mode .titlebar buttonbox.toggle:backdrop:disabled:checked, .selection-mode .titlebar stackswitcher button:backdrop.flat:disabled:active, .selection-mode .titlebar stackswitcher button:backdrop.flat:disabled:checked, .selection-mode .titlebar stackswitcher button:backdrop:disabled:active, .selection-mode .titlebar stackswitcher button:backdrop:disabled:checked, .selection-mode .titlebar filechooser .path-bar.linked > button:backdrop.flat:disabled:active, .selection-mode .titlebar filechooser .path-bar.linked > button:backdrop.flat:disabled:checked, .selection-mode .titlebar filechooser .path-bar.linked > button:backdrop:disabled:active, .selection-mode .titlebar filechooser .path-bar.linked > button:backdrop:disabled:checked, .selection-mode .titlebar .path-bar button:backdrop.flat:disabled:active, .selection-mode .titlebar .path-bar button:backdrop.flat:disabled:checked, .selection-mode .titlebar .path-bar button:backdrop:disabled:active, .selection-mode .titlebar .path-bar button:backdrop:disabled:checked, .titlebar.selection-mode button:backdrop.flat:disabled:active, .titlebar.selection-mode button:backdrop.flat:disabled:checked, .titlebar.selection-mode button:backdrop:disabled:active, .titlebar.selection-mode button:backdrop:disabled:checked, .titlebar.selection-mode button.image-button:backdrop.flat:disabled:active, .titlebar.selection-mode button.image-button:backdrop.flat:disabled:checked, .titlebar.selection-mode button.image-button:backdrop:disabled:active, .titlebar.selection-mode button.image-button:backdrop:disabled:checked, .titlebar.selection-mode button.image-button.toggle:backdrop.flat:disabled:active, .titlebar.selection-mode button.image-button.toggle:backdrop.flat:disabled:checked, .titlebar.selection-mode button.image-button.toggle:backdrop:disabled:active, .titlebar.selection-mode button.image-button.toggle:backdrop:disabled:checked, .titlebar.selection-mode button.text.button:backdrop.flat:disabled:active, .titlebar.selection-mode button.text.button:backdrop.flat:disabled:checked, .titlebar.selection-mode button.text.button:backdrop:disabled:active, .titlebar.selection-mode button.text.button:backdrop:disabled:checked, .titlebar.selection-mode button.toggle:backdrop.flat:disabled:active, .titlebar.selection-mode button.toggle:backdrop.flat:disabled:checked, .titlebar.selection-mode button.toggle:backdrop:disabled:active, .titlebar.selection-mode button.toggle:backdrop:disabled:checked, .titlebar.selection-mode box button.toggle:backdrop.flat:disabled:active, .titlebar.selection-mode box button.toggle:backdrop.flat:disabled:checked, .titlebar.selection-mode box button.toggle:backdrop:disabled:active, .titlebar.selection-mode box button.toggle:backdrop:disabled:checked, .titlebar.selection-mode buttonbox.toggle:backdrop.flat:disabled:active, .titlebar.selection-mode buttonbox.toggle:backdrop.flat:disabled:checked, .titlebar.selection-mode buttonbox.toggle:backdrop:disabled:active, .titlebar.selection-mode buttonbox.toggle:backdrop:disabled:checked, .titlebar.selection-mode stackswitcher button:backdrop.flat:disabled:active, .titlebar.selection-mode stackswitcher button:backdrop.flat:disabled:checked, .titlebar.selection-mode stackswitcher button:backdrop:disabled:active, .titlebar.selection-mode stackswitcher button:backdrop:disabled:checked, .titlebar.selection-mode filechooser .path-bar.linked > button:backdrop.flat:disabled:active, .titlebar.selection-mode filechooser .path-bar.linked > button:backdrop.flat:disabled:checked, .titlebar.selection-mode filechooser .path-bar.linked > button:backdrop:disabled:active, .titlebar.selection-mode filechooser .path-bar.linked > button:backdrop:disabled:checked, .titlebar.selection-mode .path-bar button:backdrop.flat:disabled:active, .titlebar.selection-mode .path-bar button:backdrop.flat:disabled:checked, .titlebar.selection-mode .path-bar button:backdrop:disabled:active, .titlebar.selection-mode .path-bar button:backdrop:disabled:checked { color: #758956; border-color: #90ad62; background-image: image(#90ad62); box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #87a556; } + +.selection-mode headerbar button.flat:backdrop, .selection-mode headerbar button.flat:disabled, .selection-mode headerbar button.flat:backdrop:disabled, .selection-mode headerbar button.image-button.flat:backdrop, .selection-mode headerbar button.image-button.flat:disabled, .selection-mode headerbar button.image-button.flat:backdrop:disabled, .selection-mode headerbar button.image-button.toggle.flat:backdrop, .selection-mode headerbar button.image-button.toggle.flat:disabled, .selection-mode headerbar button.image-button.toggle.flat:backdrop:disabled, .selection-mode headerbar button.text.button.flat:backdrop, .selection-mode headerbar button.text.button.flat:disabled, .selection-mode headerbar button.text.button.flat:backdrop:disabled, .selection-mode headerbar button.toggle.flat:backdrop, .selection-mode headerbar button.toggle.flat:disabled, .selection-mode headerbar button.toggle.flat:backdrop:disabled, .selection-mode headerbar box button.toggle.flat:backdrop, .selection-mode headerbar box button.toggle.flat:disabled, .selection-mode headerbar box button.toggle.flat:backdrop:disabled, .selection-mode headerbar buttonbox.toggle.flat:backdrop, .selection-mode headerbar buttonbox.toggle.flat:disabled, .selection-mode headerbar buttonbox.toggle.flat:backdrop:disabled, .selection-mode headerbar stackswitcher button.flat:backdrop, .selection-mode headerbar stackswitcher button.flat:disabled, .selection-mode headerbar stackswitcher button.flat:backdrop:disabled, .selection-mode headerbar filechooser .path-bar.linked > button.flat:backdrop, .selection-mode headerbar filechooser .path-bar.linked > button.flat:disabled, .selection-mode headerbar filechooser .path-bar.linked > button.flat:backdrop:disabled, .selection-mode headerbar .path-bar button.flat:backdrop, .selection-mode headerbar .path-bar button.flat:disabled, .selection-mode headerbar .path-bar button.flat:backdrop:disabled, headerbar.selection-mode button.flat:backdrop, headerbar.selection-mode button.flat:disabled, headerbar.selection-mode button.flat:backdrop:disabled, headerbar.selection-mode button.image-button.flat:backdrop, headerbar.selection-mode button.image-button.flat:disabled, headerbar.selection-mode button.image-button.flat:backdrop:disabled, headerbar.selection-mode button.image-button.toggle.flat:backdrop, headerbar.selection-mode button.image-button.toggle.flat:disabled, headerbar.selection-mode button.image-button.toggle.flat:backdrop:disabled, headerbar.selection-mode button.text.button.flat:backdrop, headerbar.selection-mode button.text.button.flat:disabled, headerbar.selection-mode button.text.button.flat:backdrop:disabled, headerbar.selection-mode button.toggle.flat:backdrop, headerbar.selection-mode button.toggle.flat:disabled, headerbar.selection-mode button.toggle.flat:backdrop:disabled, headerbar.selection-mode box button.toggle.flat:backdrop, headerbar.selection-mode box button.toggle.flat:disabled, headerbar.selection-mode box button.toggle.flat:backdrop:disabled, headerbar.selection-mode buttonbox.toggle.flat:backdrop, headerbar.selection-mode buttonbox.toggle.flat:disabled, headerbar.selection-mode buttonbox.toggle.flat:backdrop:disabled, headerbar.selection-mode stackswitcher button.flat:backdrop, headerbar.selection-mode stackswitcher button.flat:disabled, headerbar.selection-mode stackswitcher button.flat:backdrop:disabled, headerbar.selection-mode filechooser .path-bar.linked > button.flat:backdrop, headerbar.selection-mode filechooser .path-bar.linked > button.flat:disabled, headerbar.selection-mode filechooser .path-bar.linked > button.flat:backdrop:disabled, headerbar.selection-mode .path-bar button.flat:backdrop, headerbar.selection-mode .path-bar button.flat:disabled, headerbar.selection-mode .path-bar button.flat:backdrop:disabled, .selection-mode .titlebar button.flat:backdrop, .selection-mode .titlebar button.flat:disabled, .selection-mode .titlebar button.flat:backdrop:disabled, .selection-mode .titlebar button.image-button.flat:backdrop, .selection-mode .titlebar button.image-button.flat:disabled, .selection-mode .titlebar button.image-button.flat:backdrop:disabled, .selection-mode .titlebar button.image-button.toggle.flat:backdrop, .selection-mode .titlebar button.image-button.toggle.flat:disabled, .selection-mode .titlebar button.image-button.toggle.flat:backdrop:disabled, .selection-mode .titlebar button.text.button.flat:backdrop, .selection-mode .titlebar button.text.button.flat:disabled, .selection-mode .titlebar button.text.button.flat:backdrop:disabled, .selection-mode .titlebar button.toggle.flat:backdrop, .selection-mode .titlebar button.toggle.flat:disabled, .selection-mode .titlebar button.toggle.flat:backdrop:disabled, .selection-mode .titlebar box button.toggle.flat:backdrop, .selection-mode .titlebar box button.toggle.flat:disabled, .selection-mode .titlebar box button.toggle.flat:backdrop:disabled, .selection-mode .titlebar buttonbox.toggle.flat:backdrop, .selection-mode .titlebar buttonbox.toggle.flat:disabled, .selection-mode .titlebar buttonbox.toggle.flat:backdrop:disabled, .selection-mode .titlebar stackswitcher button.flat:backdrop, .selection-mode .titlebar stackswitcher button.flat:disabled, .selection-mode .titlebar stackswitcher button.flat:backdrop:disabled, .selection-mode .titlebar filechooser .path-bar.linked > button.flat:backdrop, .selection-mode .titlebar filechooser .path-bar.linked > button.flat:disabled, .selection-mode .titlebar filechooser .path-bar.linked > button.flat:backdrop:disabled, .selection-mode .titlebar .path-bar button.flat:backdrop, .selection-mode .titlebar .path-bar button.flat:disabled, .selection-mode .titlebar .path-bar button.flat:backdrop:disabled, .titlebar.selection-mode button.flat:backdrop, .titlebar.selection-mode button.flat:disabled, .titlebar.selection-mode button.flat:backdrop:disabled, .titlebar.selection-mode button.image-button.flat:backdrop, .titlebar.selection-mode button.image-button.flat:disabled, .titlebar.selection-mode button.image-button.flat:backdrop:disabled, .titlebar.selection-mode button.image-button.toggle.flat:backdrop, .titlebar.selection-mode button.image-button.toggle.flat:disabled, .titlebar.selection-mode button.image-button.toggle.flat:backdrop:disabled, .titlebar.selection-mode button.text.button.flat:backdrop, .titlebar.selection-mode button.text.button.flat:disabled, .titlebar.selection-mode button.text.button.flat:backdrop:disabled, .titlebar.selection-mode button.toggle.flat:backdrop, .titlebar.selection-mode button.toggle.flat:disabled, .titlebar.selection-mode button.toggle.flat:backdrop:disabled, .titlebar.selection-mode box button.toggle.flat:backdrop, .titlebar.selection-mode box button.toggle.flat:disabled, .titlebar.selection-mode box button.toggle.flat:backdrop:disabled, .titlebar.selection-mode buttonbox.toggle.flat:backdrop, .titlebar.selection-mode buttonbox.toggle.flat:disabled, .titlebar.selection-mode buttonbox.toggle.flat:backdrop:disabled, .titlebar.selection-mode stackswitcher button.flat:backdrop, .titlebar.selection-mode stackswitcher button.flat:disabled, .titlebar.selection-mode stackswitcher button.flat:backdrop:disabled, .titlebar.selection-mode filechooser .path-bar.linked > button.flat:backdrop, .titlebar.selection-mode filechooser .path-bar.linked > button.flat:disabled, .titlebar.selection-mode filechooser .path-bar.linked > button.flat:backdrop:disabled, .titlebar.selection-mode .path-bar button.flat:backdrop, .titlebar.selection-mode .path-bar button.flat:disabled, .titlebar.selection-mode .path-bar button.flat:backdrop:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +.selection-mode headerbar button:disabled, .selection-mode headerbar button.image-button:disabled, .selection-mode headerbar button.image-button.toggle:disabled, .selection-mode headerbar button.text.button:disabled, .selection-mode headerbar button.toggle:disabled, .selection-mode headerbar box button.toggle:disabled, .selection-mode headerbar buttonbox.toggle:disabled, .selection-mode headerbar stackswitcher button:disabled, .selection-mode headerbar filechooser .path-bar.linked > button:disabled, .selection-mode headerbar .path-bar button:disabled, headerbar.selection-mode button:disabled, headerbar.selection-mode button.image-button:disabled, headerbar.selection-mode button.image-button.toggle:disabled, headerbar.selection-mode button.text.button:disabled, headerbar.selection-mode button.toggle:disabled, headerbar.selection-mode box button.toggle:disabled, headerbar.selection-mode buttonbox.toggle:disabled, headerbar.selection-mode stackswitcher button:disabled, headerbar.selection-mode filechooser .path-bar.linked > button:disabled, headerbar.selection-mode .path-bar button:disabled, .selection-mode .titlebar button:disabled, .selection-mode .titlebar button.image-button:disabled, .selection-mode .titlebar button.image-button.toggle:disabled, .selection-mode .titlebar button.text.button:disabled, .selection-mode .titlebar button.toggle:disabled, .selection-mode .titlebar box button.toggle:disabled, .selection-mode .titlebar buttonbox.toggle:disabled, .selection-mode .titlebar stackswitcher button:disabled, .selection-mode .titlebar filechooser .path-bar.linked > button:disabled, .selection-mode .titlebar .path-bar button:disabled, .titlebar.selection-mode button:disabled, .titlebar.selection-mode button.image-button:disabled, .titlebar.selection-mode button.image-button.toggle:disabled, .titlebar.selection-mode button.text.button:disabled, .titlebar.selection-mode button.toggle:disabled, .titlebar.selection-mode box button.toggle:disabled, .titlebar.selection-mode buttonbox.toggle:disabled, .titlebar.selection-mode stackswitcher button:disabled, .titlebar.selection-mode filechooser .path-bar.linked > button:disabled, .titlebar.selection-mode .path-bar button:disabled { color: #73805e; border-color: #79944d; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.selection-mode headerbar button:disabled:active, .selection-mode headerbar button:disabled:checked, .selection-mode headerbar button.image-button:disabled:active, .selection-mode headerbar button.image-button:disabled:checked, .selection-mode headerbar button.image-button.toggle:disabled:active, .selection-mode headerbar button.image-button.toggle:disabled:checked, .selection-mode headerbar button.text.button:disabled:active, .selection-mode headerbar button.text.button:disabled:checked, .selection-mode headerbar button.toggle:disabled:active, .selection-mode headerbar button.toggle:disabled:checked, .selection-mode headerbar box button.toggle:disabled:active, .selection-mode headerbar box button.toggle:disabled:checked, .selection-mode headerbar buttonbox.toggle:disabled:active, .selection-mode headerbar buttonbox.toggle:disabled:checked, .selection-mode headerbar stackswitcher button:disabled:active, .selection-mode headerbar stackswitcher button:disabled:checked, .selection-mode headerbar filechooser .path-bar.linked > button:disabled:active, .selection-mode headerbar filechooser .path-bar.linked > button:disabled:checked, .selection-mode headerbar .path-bar button:disabled:active, .selection-mode headerbar .path-bar button:disabled:checked, headerbar.selection-mode button:disabled:active, headerbar.selection-mode button:disabled:checked, headerbar.selection-mode button.image-button:disabled:active, headerbar.selection-mode button.image-button:disabled:checked, headerbar.selection-mode button.image-button.toggle:disabled:active, headerbar.selection-mode button.image-button.toggle:disabled:checked, headerbar.selection-mode button.text.button:disabled:active, headerbar.selection-mode button.text.button:disabled:checked, headerbar.selection-mode button.toggle:disabled:active, headerbar.selection-mode button.toggle:disabled:checked, headerbar.selection-mode box button.toggle:disabled:active, headerbar.selection-mode box button.toggle:disabled:checked, headerbar.selection-mode buttonbox.toggle:disabled:active, headerbar.selection-mode buttonbox.toggle:disabled:checked, headerbar.selection-mode stackswitcher button:disabled:active, headerbar.selection-mode stackswitcher button:disabled:checked, headerbar.selection-mode filechooser .path-bar.linked > button:disabled:active, headerbar.selection-mode filechooser .path-bar.linked > button:disabled:checked, headerbar.selection-mode .path-bar button:disabled:active, headerbar.selection-mode .path-bar button:disabled:checked, .selection-mode .titlebar button:disabled:active, .selection-mode .titlebar button:disabled:checked, .selection-mode .titlebar button.image-button:disabled:active, .selection-mode .titlebar button.image-button:disabled:checked, .selection-mode .titlebar button.image-button.toggle:disabled:active, .selection-mode .titlebar button.image-button.toggle:disabled:checked, .selection-mode .titlebar button.text.button:disabled:active, .selection-mode .titlebar button.text.button:disabled:checked, .selection-mode .titlebar button.toggle:disabled:active, .selection-mode .titlebar button.toggle:disabled:checked, .selection-mode .titlebar box button.toggle:disabled:active, .selection-mode .titlebar box button.toggle:disabled:checked, .selection-mode .titlebar buttonbox.toggle:disabled:active, .selection-mode .titlebar buttonbox.toggle:disabled:checked, .selection-mode .titlebar stackswitcher button:disabled:active, .selection-mode .titlebar stackswitcher button:disabled:checked, .selection-mode .titlebar filechooser .path-bar.linked > button:disabled:active, .selection-mode .titlebar filechooser .path-bar.linked > button:disabled:checked, .selection-mode .titlebar .path-bar button:disabled:active, .selection-mode .titlebar .path-bar button:disabled:checked, .titlebar.selection-mode button:disabled:active, .titlebar.selection-mode button:disabled:checked, .titlebar.selection-mode button.image-button:disabled:active, .titlebar.selection-mode button.image-button:disabled:checked, .titlebar.selection-mode button.image-button.toggle:disabled:active, .titlebar.selection-mode button.image-button.toggle:disabled:checked, .titlebar.selection-mode button.text.button:disabled:active, .titlebar.selection-mode button.text.button:disabled:checked, .titlebar.selection-mode button.toggle:disabled:active, .titlebar.selection-mode button.toggle:disabled:checked, .titlebar.selection-mode box button.toggle:disabled:active, .titlebar.selection-mode box button.toggle:disabled:checked, .titlebar.selection-mode buttonbox.toggle:disabled:active, .titlebar.selection-mode buttonbox.toggle:disabled:checked, .titlebar.selection-mode stackswitcher button:disabled:active, .titlebar.selection-mode stackswitcher button:disabled:checked, .titlebar.selection-mode filechooser .path-bar.linked > button:disabled:active, .titlebar.selection-mode filechooser .path-bar.linked > button:disabled:checked, .titlebar.selection-mode .path-bar button:disabled:active, .titlebar.selection-mode .path-bar button:disabled:checked { color: #616f4c; border-color: #79944d; background-image: linear-gradient(to bottom, #e9e7e6, #f1f1f0 3px, #f4f3f2 4px, #efeeed 50%, #ebeae9 50%, #e4e3e1); box-shadow: inset 0 1px rgba(255, 255, 255, 0); } + +.selection-mode headerbar button.suggested-action, .selection-mode headerbar button.image-button.suggested-action, .selection-mode headerbar button.image-button.toggle.suggested-action, .selection-mode headerbar button.text.button.suggested-action, .selection-mode headerbar button.toggle.suggested-action, .selection-mode headerbar box button.toggle.suggested-action, .selection-mode headerbar buttonbox.toggle.suggested-action, .selection-mode headerbar stackswitcher button.suggested-action, .selection-mode headerbar filechooser .path-bar.linked > button.suggested-action, .selection-mode headerbar .path-bar button.suggested-action, headerbar.selection-mode button.suggested-action, headerbar.selection-mode button.image-button.suggested-action, headerbar.selection-mode button.image-button.toggle.suggested-action, headerbar.selection-mode button.text.button.suggested-action, headerbar.selection-mode button.toggle.suggested-action, headerbar.selection-mode box button.toggle.suggested-action, headerbar.selection-mode buttonbox.toggle.suggested-action, headerbar.selection-mode stackswitcher button.suggested-action, headerbar.selection-mode filechooser .path-bar.linked > button.suggested-action, headerbar.selection-mode .path-bar button.suggested-action, .selection-mode .titlebar button.suggested-action, .selection-mode .titlebar button.image-button.suggested-action, .selection-mode .titlebar button.image-button.toggle.suggested-action, .selection-mode .titlebar button.text.button.suggested-action, .selection-mode .titlebar button.toggle.suggested-action, .selection-mode .titlebar box button.toggle.suggested-action, .selection-mode .titlebar buttonbox.toggle.suggested-action, .selection-mode .titlebar stackswitcher button.suggested-action, .selection-mode .titlebar filechooser .path-bar.linked > button.suggested-action, .selection-mode .titlebar .path-bar button.suggested-action, .titlebar.selection-mode button.suggested-action, .titlebar.selection-mode button.image-button.suggested-action, .titlebar.selection-mode button.image-button.toggle.suggested-action, .titlebar.selection-mode button.text.button.suggested-action, .titlebar.selection-mode button.toggle.suggested-action, .titlebar.selection-mode box button.toggle.suggested-action, .titlebar.selection-mode buttonbox.toggle.suggested-action, .titlebar.selection-mode stackswitcher button.suggested-action, .titlebar.selection-mode filechooser .path-bar.linked > button.suggested-action, .titlebar.selection-mode .path-bar button.suggested-action { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: 0 1px rgba(0, 0, 0, 0.05); border-color: #87a556; } + +.selection-mode headerbar button.suggested-action:hover, .selection-mode headerbar button.image-button.suggested-action:hover, .selection-mode headerbar button.image-button.toggle.suggested-action:hover, .selection-mode headerbar button.text.button.suggested-action:hover, .selection-mode headerbar button.toggle.suggested-action:hover, .selection-mode headerbar box button.toggle.suggested-action:hover, .selection-mode headerbar buttonbox.toggle.suggested-action:hover, .selection-mode headerbar stackswitcher button.suggested-action:hover, .selection-mode headerbar filechooser .path-bar.linked > button.suggested-action:hover, .selection-mode headerbar .path-bar button.suggested-action:hover, headerbar.selection-mode button.suggested-action:hover, headerbar.selection-mode button.image-button.suggested-action:hover, headerbar.selection-mode button.image-button.toggle.suggested-action:hover, headerbar.selection-mode button.text.button.suggested-action:hover, headerbar.selection-mode button.toggle.suggested-action:hover, headerbar.selection-mode box button.toggle.suggested-action:hover, headerbar.selection-mode buttonbox.toggle.suggested-action:hover, headerbar.selection-mode stackswitcher button.suggested-action:hover, headerbar.selection-mode filechooser .path-bar.linked > button.suggested-action:hover, headerbar.selection-mode .path-bar button.suggested-action:hover, .selection-mode .titlebar button.suggested-action:hover, .selection-mode .titlebar button.image-button.suggested-action:hover, .selection-mode .titlebar button.image-button.toggle.suggested-action:hover, .selection-mode .titlebar button.text.button.suggested-action:hover, .selection-mode .titlebar button.toggle.suggested-action:hover, .selection-mode .titlebar box button.toggle.suggested-action:hover, .selection-mode .titlebar buttonbox.toggle.suggested-action:hover, .selection-mode .titlebar stackswitcher button.suggested-action:hover, .selection-mode .titlebar filechooser .path-bar.linked > button.suggested-action:hover, .selection-mode .titlebar .path-bar button.suggested-action:hover, .titlebar.selection-mode button.suggested-action:hover, .titlebar.selection-mode button.image-button.suggested-action:hover, .titlebar.selection-mode button.image-button.toggle.suggested-action:hover, .titlebar.selection-mode button.text.button.suggested-action:hover, .titlebar.selection-mode button.toggle.suggested-action:hover, .titlebar.selection-mode box button.toggle.suggested-action:hover, .titlebar.selection-mode buttonbox.toggle.suggested-action:hover, .titlebar.selection-mode stackswitcher button.suggested-action:hover, .titlebar.selection-mode filechooser .path-bar.linked > button.suggested-action:hover, .titlebar.selection-mode .path-bar button.suggested-action:hover { color: #000000; outline-color: #94908c; border-color: #94908c; border-bottom-color: #b3afab; text-shadow: 0 1px rgba(255, 255, 255, 0.769231); -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); box-shadow: inset 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.07); background-color: #bfc6b0; box-shadow: 0 1px rgba(0, 0, 0, 0.15); background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); border-color: #87a556; } + +.selection-mode headerbar button.suggested-action:active, .selection-mode headerbar button.image-button.suggested-action:active, .selection-mode headerbar button.image-button.toggle.suggested-action:active, .selection-mode headerbar button.text.button.suggested-action:active, .selection-mode headerbar button.toggle.suggested-action:active, .selection-mode headerbar box button.toggle.suggested-action:active, .selection-mode headerbar buttonbox.toggle.suggested-action:active, .selection-mode headerbar stackswitcher button.suggested-action:active, .selection-mode headerbar filechooser .path-bar.linked > button.suggested-action:active, .selection-mode headerbar .path-bar button.suggested-action:active, headerbar.selection-mode button.suggested-action:active, headerbar.selection-mode button.image-button.suggested-action:active, headerbar.selection-mode button.image-button.toggle.suggested-action:active, headerbar.selection-mode button.text.button.suggested-action:active, headerbar.selection-mode button.toggle.suggested-action:active, headerbar.selection-mode box button.toggle.suggested-action:active, headerbar.selection-mode buttonbox.toggle.suggested-action:active, headerbar.selection-mode stackswitcher button.suggested-action:active, headerbar.selection-mode filechooser .path-bar.linked > button.suggested-action:active, headerbar.selection-mode .path-bar button.suggested-action:active, .selection-mode .titlebar button.suggested-action:active, .selection-mode .titlebar button.image-button.suggested-action:active, .selection-mode .titlebar button.image-button.toggle.suggested-action:active, .selection-mode .titlebar button.text.button.suggested-action:active, .selection-mode .titlebar button.toggle.suggested-action:active, .selection-mode .titlebar box button.toggle.suggested-action:active, .selection-mode .titlebar buttonbox.toggle.suggested-action:active, .selection-mode .titlebar stackswitcher button.suggested-action:active, .selection-mode .titlebar filechooser .path-bar.linked > button.suggested-action:active, .selection-mode .titlebar .path-bar button.suggested-action:active, .titlebar.selection-mode button.suggested-action:active, .titlebar.selection-mode button.image-button.suggested-action:active, .titlebar.selection-mode button.image-button.toggle.suggested-action:active, .titlebar.selection-mode button.text.button.suggested-action:active, .titlebar.selection-mode button.toggle.suggested-action:active, .titlebar.selection-mode box button.toggle.suggested-action:active, .titlebar.selection-mode buttonbox.toggle.suggested-action:active, .titlebar.selection-mode stackswitcher button.suggested-action:active, .titlebar.selection-mode filechooser .path-bar.linked > button.suggested-action:active, .titlebar.selection-mode .path-bar button.suggested-action:active { color: #000000; outline-color: #94908c; border-color: #94908c; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; border-color: #6c8345; } + +.selection-mode headerbar button.suggested-action:disabled, .selection-mode headerbar button.image-button.suggested-action:disabled, .selection-mode headerbar button.image-button.toggle.suggested-action:disabled, .selection-mode headerbar button.text.button.suggested-action:disabled, .selection-mode headerbar button.toggle.suggested-action:disabled, .selection-mode headerbar box button.toggle.suggested-action:disabled, .selection-mode headerbar buttonbox.toggle.suggested-action:disabled, .selection-mode headerbar stackswitcher button.suggested-action:disabled, .selection-mode headerbar filechooser .path-bar.linked > button.suggested-action:disabled, .selection-mode headerbar .path-bar button.suggested-action:disabled, headerbar.selection-mode button.suggested-action:disabled, headerbar.selection-mode button.image-button.suggested-action:disabled, headerbar.selection-mode button.image-button.toggle.suggested-action:disabled, headerbar.selection-mode button.text.button.suggested-action:disabled, headerbar.selection-mode button.toggle.suggested-action:disabled, headerbar.selection-mode box button.toggle.suggested-action:disabled, headerbar.selection-mode buttonbox.toggle.suggested-action:disabled, headerbar.selection-mode stackswitcher button.suggested-action:disabled, headerbar.selection-mode filechooser .path-bar.linked > button.suggested-action:disabled, headerbar.selection-mode .path-bar button.suggested-action:disabled, .selection-mode .titlebar button.suggested-action:disabled, .selection-mode .titlebar button.image-button.suggested-action:disabled, .selection-mode .titlebar button.image-button.toggle.suggested-action:disabled, .selection-mode .titlebar button.text.button.suggested-action:disabled, .selection-mode .titlebar button.toggle.suggested-action:disabled, .selection-mode .titlebar box button.toggle.suggested-action:disabled, .selection-mode .titlebar buttonbox.toggle.suggested-action:disabled, .selection-mode .titlebar stackswitcher button.suggested-action:disabled, .selection-mode .titlebar filechooser .path-bar.linked > button.suggested-action:disabled, .selection-mode .titlebar .path-bar button.suggested-action:disabled, .titlebar.selection-mode button.suggested-action:disabled, .titlebar.selection-mode button.image-button.suggested-action:disabled, .titlebar.selection-mode button.image-button.toggle.suggested-action:disabled, .titlebar.selection-mode button.text.button.suggested-action:disabled, .titlebar.selection-mode button.toggle.suggested-action:disabled, .titlebar.selection-mode box button.toggle.suggested-action:disabled, .titlebar.selection-mode buttonbox.toggle.suggested-action:disabled, .titlebar.selection-mode stackswitcher button.suggested-action:disabled, .titlebar.selection-mode filechooser .path-bar.linked > button.suggested-action:disabled, .titlebar.selection-mode .path-bar button.suggested-action:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #87a556; } + +.selection-mode headerbar button.suggested-action:backdrop, .selection-mode headerbar button.image-button.suggested-action:backdrop, .selection-mode headerbar button.image-button.toggle.suggested-action:backdrop, .selection-mode headerbar button.text.button.suggested-action:backdrop, .selection-mode headerbar button.toggle.suggested-action:backdrop, .selection-mode headerbar box button.toggle.suggested-action:backdrop, .selection-mode headerbar buttonbox.toggle.suggested-action:backdrop, .selection-mode headerbar stackswitcher button.suggested-action:backdrop, .selection-mode headerbar filechooser .path-bar.linked > button.suggested-action:backdrop, .selection-mode headerbar .path-bar button.suggested-action:backdrop, headerbar.selection-mode button.suggested-action:backdrop, headerbar.selection-mode button.image-button.suggested-action:backdrop, headerbar.selection-mode button.image-button.toggle.suggested-action:backdrop, headerbar.selection-mode button.text.button.suggested-action:backdrop, headerbar.selection-mode button.toggle.suggested-action:backdrop, headerbar.selection-mode box button.toggle.suggested-action:backdrop, headerbar.selection-mode buttonbox.toggle.suggested-action:backdrop, headerbar.selection-mode stackswitcher button.suggested-action:backdrop, headerbar.selection-mode filechooser .path-bar.linked > button.suggested-action:backdrop, headerbar.selection-mode .path-bar button.suggested-action:backdrop, .selection-mode .titlebar button.suggested-action:backdrop, .selection-mode .titlebar button.image-button.suggested-action:backdrop, .selection-mode .titlebar button.image-button.toggle.suggested-action:backdrop, .selection-mode .titlebar button.text.button.suggested-action:backdrop, .selection-mode .titlebar button.toggle.suggested-action:backdrop, .selection-mode .titlebar box button.toggle.suggested-action:backdrop, .selection-mode .titlebar buttonbox.toggle.suggested-action:backdrop, .selection-mode .titlebar stackswitcher button.suggested-action:backdrop, .selection-mode .titlebar filechooser .path-bar.linked > button.suggested-action:backdrop, .selection-mode .titlebar .path-bar button.suggested-action:backdrop, .titlebar.selection-mode button.suggested-action:backdrop, .titlebar.selection-mode button.image-button.suggested-action:backdrop, .titlebar.selection-mode button.image-button.toggle.suggested-action:backdrop, .titlebar.selection-mode button.text.button.suggested-action:backdrop, .titlebar.selection-mode button.toggle.suggested-action:backdrop, .titlebar.selection-mode box button.toggle.suggested-action:backdrop, .titlebar.selection-mode buttonbox.toggle.suggested-action:backdrop, .titlebar.selection-mode stackswitcher button.suggested-action:backdrop, .titlebar.selection-mode filechooser .path-bar.linked > button.suggested-action:backdrop, .titlebar.selection-mode .path-bar button.suggested-action:backdrop { color: #2f2f2f; border-color: #a5a29f; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #87a556; } + +.selection-mode headerbar button.suggested-action:backdrop:disabled, .selection-mode headerbar button.image-button.suggested-action:backdrop:disabled, .selection-mode headerbar button.image-button.toggle.suggested-action:backdrop:disabled, .selection-mode headerbar button.text.button.suggested-action:backdrop:disabled, .selection-mode headerbar button.toggle.suggested-action:backdrop:disabled, .selection-mode headerbar box button.toggle.suggested-action:backdrop:disabled, .selection-mode headerbar buttonbox.toggle.suggested-action:backdrop:disabled, .selection-mode headerbar stackswitcher button.suggested-action:backdrop:disabled, .selection-mode headerbar filechooser .path-bar.linked > button.suggested-action:backdrop:disabled, .selection-mode headerbar .path-bar button.suggested-action:backdrop:disabled, headerbar.selection-mode button.suggested-action:backdrop:disabled, headerbar.selection-mode button.image-button.suggested-action:backdrop:disabled, headerbar.selection-mode button.image-button.toggle.suggested-action:backdrop:disabled, headerbar.selection-mode button.text.button.suggested-action:backdrop:disabled, headerbar.selection-mode button.toggle.suggested-action:backdrop:disabled, headerbar.selection-mode box button.toggle.suggested-action:backdrop:disabled, headerbar.selection-mode buttonbox.toggle.suggested-action:backdrop:disabled, headerbar.selection-mode stackswitcher button.suggested-action:backdrop:disabled, headerbar.selection-mode filechooser .path-bar.linked > button.suggested-action:backdrop:disabled, headerbar.selection-mode .path-bar button.suggested-action:backdrop:disabled, .selection-mode .titlebar button.suggested-action:backdrop:disabled, .selection-mode .titlebar button.image-button.suggested-action:backdrop:disabled, .selection-mode .titlebar button.image-button.toggle.suggested-action:backdrop:disabled, .selection-mode .titlebar button.text.button.suggested-action:backdrop:disabled, .selection-mode .titlebar button.toggle.suggested-action:backdrop:disabled, .selection-mode .titlebar box button.toggle.suggested-action:backdrop:disabled, .selection-mode .titlebar buttonbox.toggle.suggested-action:backdrop:disabled, .selection-mode .titlebar stackswitcher button.suggested-action:backdrop:disabled, .selection-mode .titlebar filechooser .path-bar.linked > button.suggested-action:backdrop:disabled, .selection-mode .titlebar .path-bar button.suggested-action:backdrop:disabled, .titlebar.selection-mode button.suggested-action:backdrop:disabled, .titlebar.selection-mode button.image-button.suggested-action:backdrop:disabled, .titlebar.selection-mode button.image-button.toggle.suggested-action:backdrop:disabled, .titlebar.selection-mode button.text.button.suggested-action:backdrop:disabled, .titlebar.selection-mode button.toggle.suggested-action:backdrop:disabled, .titlebar.selection-mode box button.toggle.suggested-action:backdrop:disabled, .titlebar.selection-mode buttonbox.toggle.suggested-action:backdrop:disabled, .titlebar.selection-mode stackswitcher button.suggested-action:backdrop:disabled, .titlebar.selection-mode filechooser .path-bar.linked > button.suggested-action:backdrop:disabled, .titlebar.selection-mode .path-bar button.suggested-action:backdrop:disabled { color: #c9c6c3; border-color: #a5a29f; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #87a556; } + +.selection-mode headerbar .selection-menu:backdrop, .selection-mode headerbar .selection-menu, headerbar.selection-mode .selection-menu:backdrop, headerbar.selection-mode .selection-menu, .selection-mode .titlebar .selection-menu:backdrop, .selection-mode .titlebar .selection-menu, .titlebar.selection-mode .selection-menu:backdrop, .titlebar.selection-mode .selection-menu { border-color: rgba(147, 175, 102, 0); background-color: rgba(147, 175, 102, 0); background-image: none; box-shadow: none; min-height: 20px; padding: 6px 10px; } + +.selection-mode headerbar .selection-menu:backdrop arrow, .selection-mode headerbar .selection-menu arrow, headerbar.selection-mode .selection-menu:backdrop arrow, headerbar.selection-mode .selection-menu arrow, .selection-mode .titlebar .selection-menu:backdrop arrow, .selection-mode .titlebar .selection-menu arrow, .titlebar.selection-mode .selection-menu:backdrop arrow, .titlebar.selection-mode .selection-menu arrow { -GtkArrow-arrow-scaling: 1; } + +.selection-mode headerbar .selection-menu:backdrop .arrow, .selection-mode headerbar .selection-menu .arrow, headerbar.selection-mode .selection-menu:backdrop .arrow, headerbar.selection-mode .selection-menu .arrow, .selection-mode .titlebar .selection-menu:backdrop .arrow, .selection-mode .titlebar .selection-menu .arrow, .titlebar.selection-mode .selection-menu:backdrop .arrow, .titlebar.selection-mode .selection-menu .arrow { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); color: rgba(66, 69, 62, 0.5); -gtk-icon-shadow: none; } + +/* GTK NAMED COLORS ---------------- use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color #000000; +/* +text color for entries, views and content in general */ +@define-color theme_text_color #1a1a1a; +/* +widget base background color */ +@define-color theme_bg_color #edeceb; +/* +text widgets and the like base background color */ +@define-color theme_base_color #ffffff; +/* +base background color of selections */ +@define-color theme_selected_bg_color #bfc6b0; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color #42453E; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #edeceb; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color #a9a5a2; +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #ffffff; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color #2f2f2f; +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color #1a1a1a; +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #edeceb; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #fcfcfc; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #bfc6b0; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color #42453E; +/* +insensitive color on backdrop windows*/ +@define-color unfocused_insensitive_color #c9c6c3; +/* +widgets main borders color */ +@define-color borders #94908c; +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders #a5a29f; +/* +these are pretty self explicative */ +@define-color warning_color #f99b11; +@define-color error_color #c7162b; +@define-color success_color #93af66; +/* +these colors are exported for the window manager and shouldn't be used in applications, +read if you used those and something break with a version upgrade you're on your own... */ +@define-color wm_title shade(#000000, 1.8); +@define-color wm_unfocused_title #2f2f2f; +@define-color wm_highlight rgba(255, 255, 255, 0.8); +@define-color wm_borders_edge rgba(255, 255, 255, 0.8); +@define-color wm_bg_a shade(#edeceb, 1.2); +@define-color wm_bg_b #edeceb; +@define-color wm_shadow alpha(black, 0.35); +@define-color wm_border alpha(black, 0.18); +@define-color wm_button_hover_color_a shade(#edeceb, 1.3); +@define-color wm_button_hover_color_b #edeceb; +@define-color wm_button_active_color_a shade(#edeceb, 0.85); +@define-color wm_button_active_color_b shade(#edeceb, 0.89); +@define-color wm_button_active_color_c shade(#edeceb, 0.9); +/* content view background such as thumbnails view in Photos or Boxes */ +@define-color content_view_bg #ffffff; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #ffffff; +row label.subtitle { font-size: smaller; opacity: 0.55; text-shadow: none; } + +row > box.header { margin-left: 12px; margin-right: 12px; min-height: 50px; } + +row > box.header > box.title { margin-top: 8px; margin-bottom: 8px; } + +row.expander { background-color: transparent; } + +row.expander list.nested > row { background-color: alpha(#edeceb, 0.5); border-color: alpha(#94908c, 0.7); border-style: solid; border-width: 1px 0px 0px 0px; } + +row.expander image.expander-row-arrow { transition: 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row.expander:checked image.expander-row-arrow { -gtk-icon-transform: rotate(0turn); } + +row.expander:not(:checked) image.expander-row-arrow { opacity: 0.55; text-shadow: none; } + +row.expander:not(:checked) image.expander-row-arrow:dir(ltr) { -gtk-icon-transform: rotate(-0.25turn); } + +row.expander:not(:checked) image.expander-row-arrow:dir(rtl) { -gtk-icon-transform: rotate(0.25turn); } + +row.expander:checked image.expander-row-arrow:not(:disabled) { color: #bfc6b0; } + +row.expander image.expander-row-arrow:disabled { color: #a9a5a2; } + +flap > dimming, deck > dimming, leaflet > dimming { background: rgba(0, 0, 0, 0.12); } + +flap > border, deck > border, leaflet > border { min-width: 1px; min-height: 1px; background: rgba(0, 0, 0, 0.05); } + +flap > shadow, deck > shadow, leaflet > shadow { min-width: 56px; min-height: 56px; } + +flap > shadow.left, deck > shadow.left, leaflet > shadow.left { background-image: linear-gradient(to right, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.01) 40px, transparent 56px), linear-gradient(to right, rgba(0, 0, 0, 0.03), rgba(0, 0, 0, 0.01) 7px, transparent 24px); } + +flap > shadow.right, deck > shadow.right, leaflet > shadow.right { background-image: linear-gradient(to left, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.01) 40px, transparent 56px), linear-gradient(to left, rgba(0, 0, 0, 0.03), rgba(0, 0, 0, 0.01) 7px, transparent 24px); } + +flap > shadow.up, deck > shadow.up, leaflet > shadow.up { background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.01) 40px, transparent 56px), linear-gradient(to bottom, rgba(0, 0, 0, 0.03), rgba(0, 0, 0, 0.01) 7px, transparent 24px); } + +flap > shadow.down, deck > shadow.down, leaflet > shadow.down { background-image: linear-gradient(to top, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.01) 40px, transparent 56px), linear-gradient(to top, rgba(0, 0, 0, 0.03), rgba(0, 0, 0, 0.01) 7px, transparent 24px); } + +flap > outline, deck > outline, leaflet > outline { min-width: 1px; min-height: 1px; background: rgba(255, 255, 255, 0.2); } + +avatar { border-radius: 9999px; -gtk-outline-radius: 9999px; font-weight: bold; } + +avatar.color1 { background-image: linear-gradient(#83b6ec, #337fdc); color: #cfe1f5; } + +avatar.color2 { background-image: linear-gradient(#7ad9f1, #0f9ac8); color: #caeaf2; } + +avatar.color3 { background-image: linear-gradient(#8de6b1, #29ae74); color: #cef8d8; } + +avatar.color4 { background-image: linear-gradient(#b5e98a, #6ab85b); color: #e6f9d7; } + +avatar.color5 { background-image: linear-gradient(#f8e359, #d29d09); color: #f9f4e1; } + +avatar.color6 { background-image: linear-gradient(#ffcb62, #d68400); color: #ffead1; } + +avatar.color7 { background-image: linear-gradient(#ffa95a, #ed5b00); color: #ffe5c5; } + +avatar.color8 { background-image: linear-gradient(#f78773, #e62d42); color: #f8d2ce; } + +avatar.color9 { background-image: linear-gradient(#e973ab, #e33b6a); color: #fac7de; } + +avatar.color10 { background-image: linear-gradient(#cb78d4, #9945b5); color: #e7c2e8; } + +avatar.color11 { background-image: linear-gradient(#9e91e8, #7a59ca); color: #d5d2f5; } + +avatar.color12 { background-image: linear-gradient(#e3cf9c, #b08952); color: #f2eade; } + +avatar.color13 { background-image: linear-gradient(#be916d, #785336); color: #e5d6ca; } + +avatar.color14 { background-image: linear-gradient(#c0bfbc, #6e6d71); color: #d8d7d3; } + +avatar.contrasted { color: #fff; } + +avatar.image { background: none; } + +viewswitchertitle viewswitcher { margin-left: 12px; margin-right: 12px; } + +statuspage > scrolledwindow > viewport > box { margin: 36px 12px; } + +statuspage > scrolledwindow > viewport > box > clamp > box > .icon { margin-bottom: 36px; opacity: 0.5; } + +statuspage > scrolledwindow > viewport > box > clamp > box > .title { margin-bottom: 12px; } + +statuspage > scrolledwindow > viewport > box > clamp > box > .description { margin-bottom: 36px; } + +popover.combo list { min-width: 200px; } + +window.csd.unified:not(.solid-csd) headerbar { border-radius: 0; } + +.windowhandle, .windowhandle * { -GtkWidget-window-dragging: true; } + +popover.combo { padding: 0px; } + +popover.combo list { border-style: none; background-color: transparent; } + +popover.combo list > row { padding: 0px 12px 0px 12px; min-height: 50px; } + +popover.combo list > row:not(:last-child) { border-bottom: 1px solid alpha(#94908c, 0.5); } + +popover.combo list > row:first-child { border-top-left-radius: 8px; -gtk-outline-top-left-radius: 7px; border-top-right-radius: 8px; -gtk-outline-top-right-radius: 7px; } + +popover.combo list > row:last-child { border-bottom-left-radius: 8px; -gtk-outline-bottom-left-radius: 7px; border-bottom-right-radius: 8px; -gtk-outline-bottom-right-radius: 7px; } + +popover.combo overshoot.top { border-top-left-radius: 8px; -gtk-outline-top-left-radius: 7px; border-top-right-radius: 8px; -gtk-outline-top-right-radius: 7px; } + +popover.combo overshoot.bottom { border-bottom-left-radius: 8px; -gtk-outline-bottom-left-radius: 7px; border-bottom-right-radius: 8px; -gtk-outline-bottom-right-radius: 7px; } + +popover.combo scrollbar.vertical { padding-top: 2px; padding-bottom: 2px; } + +popover.combo scrollbar.vertical:dir(ltr) { border-top-right-radius: 8px; -gtk-outline-top-right-radius: 7px; border-bottom-right-radius: 8px; -gtk-outline-bottom-right-radius: 7px; } + +popover.combo scrollbar.vertical:dir(rtl) { border-top-left-radius: 8px; -gtk-outline-top-left-radius: 7px; border-bottom-left-radius: 8px; -gtk-outline-bottom-left-radius: 7px; } + +row.expander { padding: 0px; } + +row.expander image.expander-row-arrow:dir(ltr) { margin-left: 6px; } + +row.expander image.expander-row-arrow:dir(rtl) { margin-right: 6px; } + +keypad .digit { font-size: 200%; font-weight: bold; } + +keypad .letters { font-size: 70%; } + +keypad .symbol { font-size: 160%; } + +viewswitcher, viewswitcher button { margin: 0; padding: 0; } + +viewswitcher button { border-radius: 0; border-top: 0; border-bottom: 0; box-shadow: none; font-size: 1rem; border-width: 0; } + +viewswitcher button:not(:checked):not(:hover) { background: transparent; } + +viewswitcher button:not(:only-child):not(:last-child) { border-right-width: 0px; } + +viewswitcher button:not(only-child):first-child:not(:checked):not(:hover), viewswitcher button:not(:checked):not(:hover) + button:not(:checked):not(:hover) { border-left-color: transparent; } + +viewswitcher button:not(only-child):last-child:not(:checked):not(:hover) { border-right-color: transparent; } + +viewswitcher button:not(:checked):hover:not(:backdrop) { background-image: image(lighter(#edeceb)); } + +viewswitcher button:not(only-child):first-child:not(:checked):hover, viewswitcher button:not(:checked):hover + button:not(:checked):not(:hover), viewswitcher button:not(:checked):not(:hover) + button:not(:checked):hover { border-left-color: shade(#94908c, 1.15); } + +viewswitcher button:not(only-child):last-child:not(:checked):hover { border-right-color: shade(#94908c, 1.15); } + +viewswitcher button:not(:checked):hover:backdrop { background-image: image(#edeceb); } + +headerbar viewswitcher button:not(:checked):hover:not(:backdrop) { background-image: linear-gradient(to top, shade(alpha(#edeceb, 0.7), 0.96) 2px, alpha(#edeceb, 0.7)); } + +headerbar viewswitcher button:not(:checked):not(only-child):first-child:hover, headerbar viewswitcher button:not(:checked):hover + button:not(:checked):not(:hover), headerbar viewswitcher button:not(:checked):not(:hover) + button:not(:checked):hover { border-left-color: #94908c; } + +headerbar viewswitcher button:not(:checked):not(only-child):last-child:hover { border-right-color: #94908c; } + +headerbar viewswitcher button:not(:checked):hover:backdrop { background-image: image(#edeceb); } + +viewswitcher button > stack > box.narrow { font-size: 0.75rem; padding-top: 7px; padding-bottom: 5px; } + +viewswitcher button > stack > box.narrow image, viewswitcher button > stack > box.narrow label { padding-left: 8px; padding-right: 8px; } + +viewswitcher button > stack > box.wide { padding: 8px 12px; } + +viewswitcher button > stack > box.wide label:dir(ltr) { padding-right: 7px; } + +viewswitcher button > stack > box.wide label:dir(rtl) { padding-left: 7px; } + +viewswitcher button > stack > box label.active { font-weight: bold; } + +viewswitcher button.needs-attention:active > stack > box label, viewswitcher button.needs-attention:checked > stack > box label { animation: none; background-image: none; } + +viewswitcher button.needs-attention > stack > box label { animation: needs_attention 150ms ease-in; background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(#1977ee), to(transparent)); background-size: 6px 6px, 6px 6px; background-repeat: no-repeat; background-position: right 0px, right 1px; } + +viewswitcher button.needs-attention > stack > box label:backdrop { background-size: 6px 6px, 0 0; } + +viewswitcher button.needs-attention > stack > box label:dir(rtl) { background-position: left 0px, left 1px; } + +viewswitcherbar actionbar > revealer > box { padding: 0; } + +list.content, list.content list { background-color: transparent; } + +list.content list.nested > row:not(:active):not(:hover):not(:selected), list.content list.nested > row:not(:active):hover:not(.activatable):not(:selected) { background-color: mix(#edeceb, #ffffff, 0.5); } + +list.content list.nested > row:not(:active):hover.activatable:not(:selected) { background-color: mix(#000000, #ffffff, 0.95); } + +list.content > row:not(.expander):not(:active):not(:hover):not(:selected), list.content > row:not(.expander):not(:active):hover:not(.activatable):not(:selected), list.content > row.expander row.header:not(:active):not(:hover):not(:selected), list.content > row.expander row.header:not(:active):hover:not(.activatable):not(:selected) { background-color: #ffffff; } + +list.content > row:not(.expander):not(:active):hover.activatable:not(:selected), list.content > row.expander row.header:not(:active):hover.activatable:not(:selected) { background-color: mix(#000000, #ffffff, 0.95); } + +list.content > row, list.content > row list > row { border-color: alpha(#94908c, 0.7); border-style: solid; transition: 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +list.content > row:not(:last-child) { border-width: 1px 1px 0px 1px; } + +list.content > row:first-child, list.content > row.expander:first-child row.header, list.content > row.expander:checked, list.content > row.expander:checked row.header, list.content > row.expander:checked + row, list.content > row.expander:checked + row.expander row.header { border-top-left-radius: 8px; -gtk-outline-top-left-radius: 7px; border-top-right-radius: 8px; -gtk-outline-top-right-radius: 7px; } + +list.content > row:last-child, list.content > row.checked-expander-row-previous-sibling, list.content > row.expander:checked { border-width: 1px; } + +list.content > row:last-child, list.content > row.checked-expander-row-previous-sibling, list.content > row.expander:checked, list.content > row.expander:not(:checked):last-child row.header, list.content > row.expander:not(:checked).checked-expander-row-previous-sibling row.header, list.content > row.expander.empty:checked row.header, list.content > row.expander list.nested > row:last-child { border-bottom-left-radius: 8px; -gtk-outline-bottom-left-radius: 7px; border-bottom-right-radius: 8px; -gtk-outline-bottom-right-radius: 7px; } + +list.content > row.expander:checked:not(:first-child), list.content > row.expander:checked + row { margin-top: 6px; } + +button.list-button:not(:active):not(:checked):not(:hover) { background: none; border: 1px solid alpha(#94908c, 0.5); box-shadow: none; } + +window.csd.unified:not(.solid-csd):not(.fullscreen) headerbar.selection-mode { box-shadow: none; } + +window.csd.unified:not(.solid-csd):not(.fullscreen):not(.tiled):not(.tiled-top):not(.tiled-bottom):not(.tiled-left):not(.tiled-right):not(.maximized), window.csd.unified:not(.solid-csd):not(.fullscreen):not(.tiled):not(.tiled-top):not(.tiled-bottom):not(.tiled-left):not(.tiled-right):not(.maximized) > decoration, window.csd.unified:not(.solid-csd):not(.fullscreen):not(.tiled):not(.tiled-top):not(.tiled-bottom):not(.tiled-left):not(.tiled-right):not(.maximized) > decoration-overlay { border-radius: 8px; } diff --git a/desktop-themes/YaruGreen/gtk-3.0/gtk.scss b/desktop-themes/YaruGreen/gtk-3.0/gtk.scss new file mode 100644 index 00000000..6a9e07fc --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/gtk.scss @@ -0,0 +1,12 @@ +$variant: 'light'; +$ambiance: true; + +@import 'colors'; +@import 'drawing'; +@import 'common'; +@import 'apps'; +@import 'tweaks'; +@import 'headerbar'; +@import 'colors-public'; +@import 'libhandy/Adwaita-base'; +@import "libhandy/headerbar"; diff --git a/desktop-themes/YaruGreen/gtk-3.0/libhandy/_Adwaita-base.scss b/desktop-themes/YaruGreen/gtk-3.0/libhandy/_Adwaita-base.scss new file mode 100644 index 00000000..4448d790 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/libhandy/_Adwaita-base.scss @@ -0,0 +1,337 @@ +// Include base styling. +@import 'fallback-base'; +@import 'shared-base'; + +// HdyComboRow + +popover.combo { + padding: 0px; + + list { + border-style: none; + background-color: transparent; + + > row { + padding: 0px 12px 0px 12px; + min-height: 50px; + + &:not(:last-child) { + border-bottom: 1px solid hdyalpha($borders_color, 0.5) + } + + &:first-child { + @include rounded-border(top); + } + + &:last-child { + @include rounded-border(bottom); + } + } + } + + @each $border in top, bottom { + overshoot.#{$border} { + @include rounded-border($border); + } + } + + scrollbar.vertical { + padding-top: 2px; + padding-bottom: 2px; + + &:dir(ltr) { + @include rounded-border(right); + } + + &:dir(rtl) { + @include rounded-border(left); + } + } +} + +// HdyExpanderRow + +row.expander { + padding: 0px; + + image.expander-row-arrow { + @include margin-start(6px); + } +} + +// HdyKeypad + +keypad { + .digit { + font-size: 200%; + font-weight: bold; + } + + .letters { + font-size: 70%; + } + + .symbol { + font-size: 160%; + } +} + +// HdyViewSwitcher + +viewswitcher { + &, & button { + margin: 0; + padding: 0; + } + + button { + border-radius: 0; + border-top: 0; + border-bottom: 0; + box-shadow: none; + font-size: 1rem; + border-width: 0; // Yaru: remove headerbar buttons border + + &:not(:checked):not(:hover) { + background: transparent; + } + + &:not(:only-child):not(:last-child) { + border-right-width: 0px; + } + + &:not(only-child):first-child:not(:checked):not(:hover), + &:not(:checked):not(:hover) + button:not(:checked):not(:hover) { + border-left-color: transparent; + } + + &:not(only-child):last-child:not(:checked):not(:hover) { + border-right-color: transparent; + } + + &:not(:checked):hover:not(:backdrop) { + background-image: image(lighter($bg_color)); + } + + &:not(only-child):first-child:not(:checked):hover, + &:not(:checked):hover + button:not(:checked):not(:hover), + &:not(:checked):not(:hover) + button:not(:checked):hover { + border-left-color: shade($borders_color, 1.15); + } + + &:not(only-child):last-child:not(:checked):hover { + border-right-color: shade($borders_color, 1.15); + } + + &:not(:checked):hover:backdrop { + background-image: image($bg_color); + } + + // View switcher in a header bar + headerbar &:not(:checked) { + &:hover:not(:backdrop) { + // Reimplementation of $button_fill from Adwaita. The colors are made + // only 70% visible to avoid the highlight to be too strong. + $c: hdyalpha($bg_color, 0.7); + $button_fill: if($variant == 'light', linear-gradient(to top, shade($c, 0.96) 2px, $c), + linear-gradient(to top, shade($c, 0.99) 2px, $c)) !global; + background-image: $button_fill; + } + + &:not(only-child):first-child:hover, + &:hover + button:not(:checked):not(:hover), + &:not(:hover) + button:not(:checked):hover { + border-left-color: $borders_color; + } + + &:not(only-child):last-child:hover { + border-right-color: $borders_color; + } + + &:hover:backdrop { + background-image: image($bg_color); + } + } + + // View switcher button + > stack > box { + &.narrow { + font-size: 0.75rem; + padding-top: 7px; + padding-bottom: 5px; + + image, + label { + padding-left: 8px; + padding-right: 8px; + } + } + + &.wide { + padding: 8px 12px; + + label { + &:dir(ltr) { + padding-right: 7px; + } + + &:dir(rtl) { + padding-left: 7px; + } + } + } + + label.active { + font-weight: bold; + } + } + + &.needs-attention { + &:active > stack > box label, + &:checked > stack > box label { + animation: none; + background-image: none; + } + + > stack > box label { + animation: needs_attention 150ms ease-in; + background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to($primary_accent_bg_color), to(transparent)); // Yaru: use our own palette + background-size: 6px 6px, 6px 6px; + background-repeat: no-repeat; + background-position: right 0px, right 1px; + + &:backdrop { + background-size: 6px 6px, 0 0; + } + + &:dir(rtl) { + background-position: left 0px, left 1px; + } + } + } + } +} + +// HdyViewSwitcherBar + +viewswitcherbar actionbar > revealer > box { + padding: 0; +} + +// Content list + +list.content { + &, + list { + background-color: transparent; + } + + // Nested rows background + list.nested > row:not(:active) { + &:not(:hover):not(:selected), + &:hover:not(.activatable):not(:selected) { + background-color: hdymix($bg_color, $base_color, 0.5); + } + + &:hover.activatable:not(:selected) { + background-color: hdymix($fg_color, $base_color, 0.95); + } + } + + > row { + // Regular rows and expander header rows background + &:not(.expander):not(:active):not(:hover):not(:selected), + &:not(.expander):not(:active):hover:not(.activatable):not(:selected), + &.expander row.header:not(:active):not(:hover):not(:selected), + &.expander row.header:not(:active):hover:not(.activatable):not(:selected) { + background-color: $base_color; + } + + &:not(.expander):not(:active):hover.activatable:not(:selected), + &.expander row.header:not(:active):hover.activatable:not(:selected) { + background-color: hdymix($fg_color, $base_color, 0.95); + } + + &, + list > row { + border-color: hdyalpha($borders_color, 0.7); + border-style: solid; + transition: 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); + } + + // Top border + &:not(:last-child) { + border-width: 1px 1px 0px 1px; + } + + // Rounded top + &:first-child, + &.expander:first-child row.header, + &.expander:checked, + &.expander:checked row.header, + &.expander:checked + row, + &.expander:checked + row.expander row.header { + @include rounded-border(top); + } + + // Bottom border + &:last-child, + &.checked-expander-row-previous-sibling, + &.expander:checked { + border-width: 1px; + } + + // Rounded bottom + &:last-child, + &.checked-expander-row-previous-sibling, + &.expander:checked, + &.expander:not(:checked):last-child row.header, + &.expander:not(:checked).checked-expander-row-previous-sibling row.header, + &.expander.empty:checked row.header, + &.expander list.nested > row:last-child { + @include rounded-border(bottom); + } + + // Add space around expanded rows + &.expander:checked:not(:first-child), + &.expander:checked + row { + margin-top: 6px; + } + } +} + +// List button + +button.list-button:not(:active):not(:checked):not(:hover) { + background: none; + border: 1px solid hdyalpha($borders_color, 0.5); + box-shadow: none; +} + +// Unified window + +window.csd.unified:not(.solid-csd):not(.fullscreen) { + // Remove the sheen on headerbar... + headerbar { + // box-shadow: inset 0 1px rgba(255, 255, 255, if($variant == 'light', 0.7, 0)); Yaru: drop headerbar box-shadow overwrite + + &.selection-mode { + box-shadow: none; + } + } + + // ...and add it on the window itself + > decoration-overlay { + // Use a white sheen instead of @borders, as it has to be neutral enough + // for any content and not just headerbar background + // box-shadow: inset 0 1px rgba(255, 255, 255, if($variant == 'light', 0.34, 0.065)); Yaru: drop headerbar box-shadow overwrite + } + + &:not(.tiled):not(.tiled-top):not(.tiled-bottom):not(.tiled-left):not(.tiled-right):not(.maximized) { + &, + > decoration, + > decoration-overlay { + border-radius: 8px; + } + } +} diff --git a/desktop-themes/YaruGreen/gtk-3.0/libhandy/_definitions.scss b/desktop-themes/YaruGreen/gtk-3.0/libhandy/_definitions.scss new file mode 100644 index 00000000..9225bffb --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/libhandy/_definitions.scss @@ -0,0 +1,66 @@ +//@import 'drawing'; + +@function hdyalpha($c, $a) { + @return unquote("alpha(#{$c}, #{$a})"); +} + +@function hdymix($c1, $c2, $r) { + @return unquote("mix(#{$c1}, #{$c2}, #{$r})"); +} + +$leaflet_dimming: rgba(0, 0, 0, if($variant == 'light', 0.12, 0.24)); +$leaflet_border: rgba(0, 0, 0, if($variant == 'light', 0.05, 0.2)); +$leaflet_outline: rgba(255, 255, 255, if($variant == 'light', 0.2, 0.05)); + +//@if $high_contrast { +// $leaflet_border: $borders_color; +// $leaflet_outline: transparent; +//} + +@mixin background-shadow($direction) { + background-image: + linear-gradient($direction, + rgba(0, 0, 0, if($variant == 'light', 0.05, 0.1)), + rgba(0, 0, 0, if($variant == 'light', 0.01, 0.02)) 40px, + rgba(0, 0, 0, 0) 56px), + linear-gradient($direction, + rgba(0, 0, 0, if($variant == 'light', 0.03, 0.06)), + rgba(0, 0, 0, if($variant == 'light', 0.01, 0.02)) 7px, + rgba(0, 0, 0, 0) 24px); +} + +// Makes the corners of the given border rounded. +// $border must be top, bottom, left, or right. +@mixin rounded-border($border) { + // The floors (top, bottom) and walls (left, right) of the corners matching + // $border. This is needed to easily form floor-wall pairs regardless of + // whether $border is a floor or a wall. + $corners: ( + 'top': (('top'), ('left', 'right')), + 'bottom': (('bottom'), ('left', 'right')), + 'left': (('top', 'bottom'), ('left')), + 'right': (('top', 'bottom'), ('right')), + ); + + @if not map-get($corners, $border) { + @error "Unknown border type: #{$border}"; + } + + // Loop through the floors and walls of the corners of $border. + @each $floor in nth(map-get($corners, $border), 1) { + @each $wall in nth(map-get($corners, $border), 2) { + border-#{$floor}-#{$wall}-radius: 8px; + -gtk-outline-#{$floor}-#{$wall}-radius: 7px; + } + } +} + +@mixin margin-start($margin) { + &:dir(ltr) { + margin-left: $margin; + } + + &:dir(rtl) { + margin-right: $margin; + } +} diff --git a/desktop-themes/YaruGreen/gtk-3.0/libhandy/_fallback-base.scss b/desktop-themes/YaruGreen/gtk-3.0/libhandy/_fallback-base.scss new file mode 100644 index 00000000..92c4321f --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/libhandy/_fallback-base.scss @@ -0,0 +1,170 @@ +@import 'definitions'; + +// HdyActionRow + +row { + label.subtitle { + font-size: smaller; + opacity: 0.55; + text-shadow: none; + } + + > box.header { + margin-left: 12px; + margin-right: 12px; + min-height: 50px; + + > box.title { + margin-top: 8px; + margin-bottom: 8px; + } + } +} + +// HdyExpanderRow + +row.expander { + // Drop transparent background on expander rows to let nested rows handle it, + // avoiding double highlights. + background-color: transparent; + + list.nested > row { + background-color: hdyalpha($bg_color, 0.5); + border-color: hdyalpha($borders_color, 0.7); + border-style: solid; + border-width: 1px 0px 0px 0px; + } + + // HdyExpanderRow arrow rotation + + image.expander-row-arrow { + transition: 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); + } + + &:checked image.expander-row-arrow { + -gtk-icon-transform: rotate(0turn); + } + + &:not(:checked) image.expander-row-arrow { + opacity: 0.55; + text-shadow: none; + + &:dir(ltr) { + -gtk-icon-transform: rotate(-0.25turn); + } + + &:dir(rtl) { + -gtk-icon-transform: rotate(0.25turn); + } + } + + &:checked image.expander-row-arrow:not(:disabled) { + color: $selected_bg_color; + } + + & image.expander-row-arrow:disabled { + color: $insensitive_fg_color; + } +} + +// Shadows + +flap, +deck, +leaflet { + > dimming { + background: $leaflet_dimming; + } + + > border { + min-width: 1px; + min-height: 1px; + background: $leaflet_border; + } + + > shadow { + min-width: 56px; + min-height: 56px; + + &.left { @include background-shadow(to right); } + &.right { @include background-shadow(to left); } + &.up { @include background-shadow(to bottom); } + &.down { @include background-shadow(to top); } + } + + > outline { + min-width: 1px; + min-height: 1px; + background: $leaflet_outline; + } +} + +// Avatar + +avatar { + border-radius: 9999px; + -gtk-outline-radius: 9999px; + font-weight: bold; + + // The list of colors to generate avatars. + // Each avatar color is represented by a font color, a gradient start color and a gradient stop color. + // There are 8 different colors for avtars in the list if you change the number of them you + // need to update the NUMBER_OF_COLORS in src/hdy-avatar.c. + // The 2D list has this form: ((font-color, gradient-top-color, gradient-bottom-color)). + $avatarcolorlist: ( + (#cfe1f5, #83b6ec, #337fdc), // blue + (#caeaf2, #7ad9f1, #0f9ac8), // cyan + (#cef8d8, #8de6b1, #29ae74), // green + (#e6f9d7, #b5e98a, #6ab85b), // lime + (#f9f4e1, #f8e359, #d29d09), // yellow + (#ffead1, #ffcb62, #d68400), // gold + (#ffe5c5, #ffa95a, #ed5b00), // orange + (#f8d2ce, #f78773, #e62d42), // raspberry + (#fac7de, #e973ab, #e33b6a), // magenta + (#e7c2e8, #cb78d4, #9945b5), // purple + (#d5d2f5, #9e91e8, #7a59ca), // violet + (#f2eade, #e3cf9c, #b08952), // beige + (#e5d6ca, #be916d, #785336), // brown + (#d8d7d3, #c0bfbc, #6e6d71), // gray + ); + + @for $i from 1 through length($avatarcolorlist) { + &.color#{$i} { + $avatarcolor: nth($avatarcolorlist, $i); + background-image: linear-gradient(nth($avatarcolor, 2), nth($avatarcolor, 3)); + color: nth($avatarcolor, 1); + } + } + + &.contrasted { color: #fff; } + + &.image { background: none; } +} + +// HdyViewSwitcherTitle + +viewswitchertitle viewswitcher { + margin-left: 12px; + margin-right: 12px; +} + +// HdyStatusPage + +statuspage > scrolledwindow > viewport > box { + margin: 36px 12px; + + > clamp > box { + > .icon { + margin-bottom: 36px; + opacity: 0.5; + } + + > .title { + margin-bottom: 12px; + } + + > .description { + margin-bottom: 36px; + } + } +} diff --git a/desktop-themes/YaruGreen/gtk-3.0/libhandy/_headerbar.scss b/desktop-themes/YaruGreen/gtk-3.0/libhandy/_headerbar.scss new file mode 100644 index 00000000..a2adde95 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/libhandy/_headerbar.scss @@ -0,0 +1,6 @@ +// overwriting the headerbar styling from common, for the inverted look in the ambiance theme + + +// Fix for Libhandy headerbar sidebar separator + + diff --git a/desktop-themes/YaruGreen/gtk-3.0/libhandy/_shared-base.scss b/desktop-themes/YaruGreen/gtk-3.0/libhandy/_shared-base.scss new file mode 100644 index 00000000..6fec1a0a --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/libhandy/_shared-base.scss @@ -0,0 +1,21 @@ +@import 'definitions'; + +// HdyComboRow + +popover.combo list { + min-width: 200px; +} + +window.csd.unified:not(.solid-csd) { + // Since corners are masked, there's no need for round corners anymore + headerbar { + border-radius: 0; + } +} + +.windowhandle { + &, & * { + // This is the most reliable way to enable window dragging + -GtkWidget-window-dragging: true; + } +} diff --git a/desktop-themes/YaruGreen/gtk-3.0/parse-sass.sh b/desktop-themes/YaruGreen/gtk-3.0/parse-sass.sh new file mode 100755 index 00000000..272da5d0 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/parse-sass.sh @@ -0,0 +1,12 @@ +#! /bin/bash + +if [ ! "$(which sassc 2> /dev/null)" ]; then + echo sassc needs to be installed to generate the css. + exit 1 +fi + +SASSC_OPT="-M -t compact" + +echo Generating the css... + +sassc $SASSC_OPT gtk.scss gtk.css diff --git a/desktop-themes/YaruGreen/gtk-3.0/settings.ini.in b/desktop-themes/YaruGreen/gtk-3.0/settings.ini.in new file mode 100644 index 00000000..4171a309 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-3.0/settings.ini.in @@ -0,0 +1,6 @@ +[Settings] +gtk-auto-mnemonics = 0 +gtk-color-scheme = "base_color:#ffffff\nbg_color:#edeceb\nfg_color:#000000\nselected_bg_color:#86abd9\nselected_fg_color:#ffffff\ntooltip_bg_color:#f5f5b5\ntooltip_fg_color:#000000\ntext_color:#1a1a1a\nlink_color:#0000ee\nvisited_link_color:#551a8b" +gtk-primary-button-warps-slider = false +gtk-print-preview-command = @bindir@/atril-previewer --unlink-tempfile --print-settings %s %f +gtk-visible-focus = automatic diff --git a/desktop-themes/YaruGreen/gtk-4.0/README b/desktop-themes/YaruGreen/gtk-4.0/README new file mode 100644 index 00000000..0588bcf5 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/README @@ -0,0 +1,37 @@ +Summary +------- + +* To be able to use the latest/adequate version of sass, install sassc +* meson will regenerate the CSS every time you modify the SCSS files. +* Note that meson always builds out-of-tree, so the modified css files will + appear in your builddir. + +How to tweak the theme +---------------------- + +Adwaita is a complex theme, so to keep it maintainable it's written and +processed in SASS. The generated CSS is then transformed into a gresource file +during gtk build and used at runtime in a non-legible or editable form. + +It is very likely your change will happen in the _common.scss file. That's where +all the widget selectors are defined. Here's a rundown of the "supporting" +stylesheets, that are unlikely to be the right place for a drive by stylesheet +fix: + +_colors.scss - global color definitions. We keep the number of defined + colors to a necessary minimum, most colors are derived + from a handful of basics. It covers both the light variant + and the dark variant. + +_colors-public.scss - SCSS colors exported through gtk to allow for 3rd party + apps color mixing. + +_drawing.scss - drawing helper mixings/functions to allow easier + definition of widget drawing under specific context. This + is why Adwaita isn't 15000 LOC. + +_common.scss - actual definitions of style for each widget. This is + where you are likely to add/remove your changes. + +You can read about SASS at http://sass-lang.com/documentation/. Once you make +your changes to the _common.scss file, GTK will rebuild the CSS files. diff --git a/desktop-themes/YaruGreen/gtk-4.0/_colors-public.scss b/desktop-themes/YaruGreen/gtk-4.0/_colors-public.scss new file mode 100644 index 00000000..3b638e2b --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/_colors-public.scss @@ -0,0 +1,119 @@ +//apps rely on some named colors to be exported +/* GTK NAMED COLORS + ---------------- + use responsibly! */ + +// Sass thinks we're using the colors in the variables as strings and may shoot +// warning, it's innocuous and can be defeated by using "" + $var +/* +widget text/foreground color */ +@define-color theme_fg_color #{"" +$fg_color}; + +/* +text color for entries, views and content in general */ +@define-color theme_text_color #{"" +$text_color}; + +/* +widget base background color */ +@define-color theme_bg_color #{"" +$bg_color}; + +/* +text widgets and the like base background color */ +@define-color theme_base_color #{"" +$base_color}; + +/* +base background color of selections */ +@define-color theme_selected_bg_color #{"" +$selected_bg_color}; + +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color #{"" +$selected_fg_color}; + +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #{"" +$insensitive_bg_color}; + +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color #{"" +$insensitive_fg_color}; + +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #{"" +$base_color}; + +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color #{"" +$backdrop_fg_color}; + +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color #{"" +$text_color}; + +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #{"" +$backdrop_bg_color}; + +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #{"" +$backdrop_base_color}; + +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #{"" +$selected_bg_color}; + +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color #{"" + $selected_fg_color}; + +/* +insensitive color on backdrop windows*/ +@define-color unfocused_insensitive_color #{"" + $backdrop_insensitive_color}; + +/* +widgets main borders color */ +@define-color borders #{"" +$borders_color}; + +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders #{"" +$backdrop_borders_color}; + +/* +these are pretty self explicative */ +@define-color warning_color #{"" +$warning_color}; +@define-color error_color #{"" +$error_color}; +@define-color success_color #{"" +$success_color}; +//@define-color destructive_color #{$destructive_color} + +//WM + +$_wm_highlight: if($variant=='light', $top_hilight, // Sass gets mad if this is + transparentize(black,1)); // done directly in the + // color definition + +/* +these colors are exported for the window manager and shouldn't be used in applications, +read if you used those and something break with a version upgrade you're on your own... */ +@define-color wm_title shade(#{$fg_color}, 1.8); +@define-color wm_unfocused_title #{$backdrop_fg_color}; +@define-color wm_highlight #{"" + $_wm_highlight}; +@define-color wm_borders_edge #{"" + $borders_edge}; + +@define-color wm_bg_a shade(#{$bg_color}, 1.2); +@define-color wm_bg_b #{$bg_color}; + +@define-color wm_shadow alpha(black, 0.35); +@define-color wm_border alpha(black, 0.18); + +@define-color wm_button_hover_color_a shade(#{$bg_color}, 1.3); +@define-color wm_button_hover_color_b #{$bg_color}; +@define-color wm_button_active_color_a shade(#{$bg_color}, 0.85); +@define-color wm_button_active_color_b shade(#{$bg_color}, 0.89); +@define-color wm_button_active_color_c shade(#{$bg_color}, 0.9); + +//FIXME this is really an API + +/* content view background such as thumbnails view in Photos or Boxes */ +@define-color content_view_bg #{"" + $base_color}; + +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #{"" + if($variant == 'light', $base_color, darken($base_color,6%))}; diff --git a/desktop-themes/YaruGreen/gtk-4.0/_colors.scss b/desktop-themes/YaruGreen/gtk-4.0/_colors.scss new file mode 100644 index 00000000..9fe84993 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/_colors.scss @@ -0,0 +1,239 @@ +// When color definition differs for dark and light variant +// it gets @if ed depending on $variant + +// + +@function gtkalpha($color, $opacity) { + @if $color=="currentColor" { + @return unquote("alpha(#{$color}, #{$opacity})"); + } @else { + @return rgba($color, $opacity); + } +} + +@function gtkmix($color1, $color2, $multiplier) { + $alpha: blend(alpha($color1), alpha($color2), $multiplier); + + @if $alpha<=0 { + @return rgba(0, 0, 0, $alpha); + } @else { + $red: blend(red($color1) * alpha($color1), red($color2) * alpha($color2), $multiplier) / $alpha; + $green: blend(green($color1) * alpha($color1), green($color2) * alpha($color2), $multiplier) / $alpha; + $blue: blend(blue($color1) * alpha($color1), blue($color2) * alpha($color2), $multiplier) / $alpha; + + @return rgba($red, $green, $blue, $alpha); + } +} + +@function gtkshade($color, $multiplier) { + $new: hsla(hue($color), saturation($color) * $multiplier, lightness($color) * $multiplier, alpha($color)); + @return $new; +} + +// +@import 'palette'; + +$base_color: #ffffff; +$text_color: #1a1a1a; +$bg_color: #edeceb; +$fg_color: #000000; + +$selected_fg_color: #ffffff; +$selected_bg_color: #86abd9; + +$selected_borders_color: #86abd9; +$borders_color: gtkshade($core_color_b, 0.67); +$alt_borders_color: if($variant == 'light', darken($bg_color, 24%), darken($bg_color, 8%)); +$borders_edge: if($variant == 'light', transparentize(white, 0.2), transparentize($fg_color, 0.93)); +$link_color: #0000ee; +$link_visited_color: #551a8b; +$top_hilight: $borders_edge; +$dark_fill: mix($borders_color, $bg_color, 50%); +$headerbar_bg_color: if($variant == 'light', lighten($bg_color, 5%), darken($bg_color, 3%)); +$menu_color: if($variant == 'light', $bg_color, $base_color); +$menu_selected_color: if($variant == 'light', darken($bg_color, 6%), darken($bg_color, 8%)); +$popover_bg_color: #f5f5b5; +$popover_hover_color: #000000; + +$scrollbar_bg_color: if($variant == 'light', mix($bg_color, $fg_color, 80%), mix($base_color, $bg_color, 50%)); +$scrollbar_slider_color: mix($fg_color, $bg_color, 60%); +$scrollbar_slider_hover_color: mix($fg_color, $bg_color, 80%); +$scrollbar_slider_active_color: if($variant=='light', darken($selected_bg_color, 10%), lighten($selected_bg_color, 10%)); + +$warning_color: $yellow; +$error_color: $red; +$success_color: lighten($green, 5%); +$destructive_color: if($variant == 'light', $red, darken($red, 10%)); + +$osd_fg_color: #eeeeec; +$osd_text_color: white; +$osd_bg_color: transparentize(lighten($jet, 2%),0.025); +$osd_insensitive_bg_color: transparentize(mix($osd_fg_color, opacify($osd_bg_color, 1), 10%), 0.5); +$osd_insensitive_fg_color: mix($osd_fg_color, opacify($osd_bg_color, 1), 50%); +$osd_borders_color: transparentize(black, 0.3); + +$sidebar_bg_color: mix($bg_color, $base_color, 50%); + +$tooltip_borders_color: transparentize(white, 0.9); +$shadow_color: transparentize(black, 0.9); + +$drop_target_color: $success_color; + +//insensitive state derived colors +$insensitive_fg_color: gtkshade($core_color_b, 0.70); +$insensitive_bg_color: $bg_color; +$insensitive_borders_color: gtkshade($core_color_b, 0.79); + +//colors for the backdrop state, derived from the main colors. +$backdrop_base_color: if($variant == 'light', darken($base_color, 1%), lighten($base_color, 3%)); +$backdrop_text_color: if($variant == 'light', transparentize($text_color, 0.31), transparentize(white, 0.45)); +$backdrop_bg_color: if($variant == 'light', $bg_color, lighten($bg_color, 3%)); +$backdrop_fg_color: if($variant == 'light', mix($fg_color, $backdrop_bg_color, 80%), transparentize(white, 0.35)); +$backdrop_insensitive_color: if($variant == 'light', darken($backdrop_bg_color, 15%), lighten($backdrop_bg_color, 15%)); +$backdrop_selected_fg_color: if($variant == 'light', $backdrop_base_color, $backdrop_text_color); +$backdrop_borders_color: mix($borders_color, $bg_color, 80%); +$backdrop_dark_fill: mix($backdrop_borders_color, $backdrop_bg_color, 35%); + +//special cased widget colors +$suggested_bg_color: if($variant == 'light', lighten($green, 5%), darken($green, 5%)); +$suggested_border_color: if($variant=='light', darken($suggested_bg_color, 5%), darken($suggested_bg_color, 10%)); +$progress_bg_color: if($variant== 'light', lighten($secondary_accent_bg_color, 10%), lighten($secondary_accent_bg_color, 5%)); +$progress_border_color: $progress_bg_color; +$spinner_color: $tertiary_accent_fg_color; +$checkradio_bg_color: darken($core_color_a , 20%);; +$checkradio_fg_color: $borders_color; +$checkradio_borders_color: $borders_color; +$focus_border_color: $borders_color; +$alt_focus_border_color: if($variant == 'light', transparentize(white, 0.2), transparentize(white,0.7)); +$switch_bg_color: if($variant=='light', lighten($secondary_accent_bg_color, 5%), $secondary_accent_bg_color); +$switch_borders_color: if($variant == 'light', darken($checkradio_bg_color, 10%), darken($checkradio_bg_color,40%)); +$dim_label_opacity: 0.55; + +// Headerbar bg colors for the "mixed" theme +$headerbar_bg_color: #323030; +$headerbar_fg_color: $fg_color; +$headerbar_border_color: $borders_color; +$headerbar_text_color: $silk; +$headerbar_insensitive_color: mix($headerbar_fg_color, $headerbar_bg_color, 50%); +$backdrop_headerbar_bg_color: lighten($headerbar_bg_color, 5%); +$backdrop_headerbar_fg_color: mix($headerbar_fg_color, $headerbar_bg_color, 70%); +$backdrop_headerbar_text_color: mix($headerbar_text_color, $backdrop_headerbar_bg_color, 70%); +$backdrop_headerbar_insensitive_color: mix($headerbar_fg_color, $backdrop_headerbar_bg_color, 70%); + +// +// button +// +$button_gradient_a: gtkshade($core_color_b, 1.07); +$button_gradient_b: gtkshade($core_color_b, 1.06); +$button_gradient_c: gtkshade($core_color_b, 1.04); +$button_gradient_d: gtkshade($core_color_b, 0.98); + +$button_default_border_color: #6699CC; +$button_default_box_shadow_color: #336699; + +/* hover */ + +$button_hover_gradient_a: $base_color; +$button_hover_gradient_b: gtkshade($core_color_b, 1.05); +$button_hover_gradient_c: $core_color_b; + +/* active */ + +$button_active_text_color: $fg_color; + +$button_active_gradient_a: gtkshade($core_color_b, 0.85); +$button_active_gradient_b: gtkshade($core_color_b, 0.90); +$button_active_gradient_c: gtkshade($core_color_b, 0.91); +$button_active_gradient_d: gtkshade($core_color_b, 0.86); +$button_active_gradient_e: gtkshade($core_color_b, 0.84); +$button_active_gradient_f: gtkshade($core_color_b, 0.80); + +/* insensitive */ + +$button_insensitive_inner_border_color: gtkshade($core_color_b, 1.05); + +$button_insensitive_gradient_a: gtkshade($core_color_b, 1.04); +$button_insensitive_gradient_b: gtkshade($core_color_b, 1.01); +$button_insensitive_gradient_c: gtkshade($core_color_b, 0.99); +$button_insensitive_gradient_d: gtkshade($core_color_b, 0.96); + +/* active insensitive */ + +$button_active_insensitive_gradient_a: gtkshade($core_color_b, 0.98); +$button_active_insensitive_gradient_b: gtkshade($core_color_b, 1.02); +$button_active_insensitive_gradient_c: gtkshade($core_color_b, 1.03); +$button_active_insensitive_gradient_d: gtkshade($core_color_b, 1.01); +$button_active_insensitive_gradient_e: gtkshade($core_color_b, 0.99); +$button_active_insensitive_gradient_f: gtkshade($core_color_b, 0.96); + +/* primary toolbar focus */ + +$pt_button_focus_gradient_a: mix(#fafafa, gtkshade($core_color_a, 1.09), 0.3); +$pt_button_focus_gradient_b: mix(#ededed, gtkshade($core_color_a, 1.05), 0.3); +$pt_button_focus_gradient_c: mix(#e8e8e8, gtkshade($core_color_a, 1.01), 0.25); +$pt_button_focus_gradient_d: mix(#e8e8e8, gtkshade($core_color_a, 0.96), 0.3); + +/* primary toolbar focus hover */ + +$pt_button_focus_hover_gradient_a: mix(#fcfcfc, gtkshade($core_color_a, 1.09), 0.15); +$pt_button_focus_hover_gradient_b: mix(#fcfcfc, gtkshade($core_color_a, 1.05), 0.15); +$pt_button_focus_hover_gradient_c: mix(#fcfcfc, gtkshade($core_color_a, 1.01), 0.2); +$pt_button_focus_hover_gradient_d: mix(#e8e8e8, gtkshade($core_color_a, 0.96), 0.2); + + + +// +// entry +// +$entry_text_color: $text_color; +$entry_inner_border_color: gtkshade($core_color_b, 0.96); +$entry_bg_color: $base_color; + +// +// menu +// +$menu_color: $base_color; +$menu_bg_color: gtkshade($bg_color, 1.04); +$menu_fg_color: $fg_color; +$menu_border_color: gtkshade($core_color_b, 0.72); + +// +// menubar +// + +$menubar_gradient_a: gtkshade($core_color_b, 0.99); +$menubar_gradient_b: gtkshade($core_color_b, 0.98); +$menubar_gradient_c: gtkshade($core_color_b, 0.96); + + +$menubar_menuitem_hover_color: $selected_fg_color; +$menubar_menuitem_hover_border_color: gtkshade($core_color_a, 0.58); + +$menubar_menuitem_hover_gradient_a: $core_color_a; +$menubar_menuitem_hover_gradient_b: gtkshade($core_color_a, 0.95); +$menubar_menuitem_hover_gradient_c: gtkshade($core_color_a, 0.93); +$menubar_menuitem_hover_gradient_d: gtkshade($core_color_a, 0.88); + +// +// progressbar +// + +$progressbar_border_color: mix(#6a6a6a, gtkshade($core_color_a, 0.75), 0.80); +$progressbar_pattern_color: $progressbar_border_color; + +$progressbar_bg_color: $core_color_a; + +$progressbar_gradient_a: $progressbar_bg_color; +$progressbar_gradient_b: $menubar_menuitem_hover_gradient_b; +$progressbar_gradient_c: $menubar_menuitem_hover_gradient_c; +$progressbar_gradient_d: $menubar_menuitem_hover_gradient_d; + +// +// toolbar +// +$toolbar_gradient_a: gtkshade($core_color_b, 1.04); +$toolbar_gradient_b: gtkshade($core_color_b, 1.01); +$toolbar_gradient_c: $core_color_b; +$toolbar_gradient_d: gtkshade($core_color_b, 0.97); +$toolbar_border_top_color: gtkshade($core_color_b, 0.82); +$toolbar_border_bottom_color: $toolbar_border_top_color; diff --git a/desktop-themes/YaruGreen/gtk-4.0/_common.scss b/desktop-themes/YaruGreen/gtk-4.0/_common.scss new file mode 100755 index 00000000..5eb62f50 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/_common.scss @@ -0,0 +1,4411 @@ +@function gtkalpha($c,$a) { + @return unquote("alpha(#{$c},#{$a})"); +} + +$ease-out-quad: cubic-bezier(0.25, 0.46, 0.45, 0.94); +$asset_suffix: if($variant=='dark', '-dark', ''); +$backdrop_transition: 200ms ease-out; +$button_transition: all 200ms $ease-out-quad; +$focus_transition: outline-width 200ms $ease-out-quad, outline-offset 200ms $ease-out-quad; +$button_radius: 4px; // Yaru change: we want everything to be less round +$menu_radius: 3px; // Yaru change: we want everything to be less round +$menu_margin: $menu_radius; //margin around menuitems & sidebar items +$window_radius: $button_radius + 3; +$popover_radius: $button_radius + 2; // Yaru change: we want everything to be less round + +/*************** + * Base States * + ***************/ +.background { + color: $fg_color; + background-color: $bg_color; + + &:backdrop { + text-shadow: none; + -gtk-icon-shadow: none; + } +} + +dnd { + color: $fg-color; +} + +.normal-icons { + -gtk-icon-size: 16px; +} + +.large-icons { + -gtk-icon-size: 32px; +} + +/* + These wildcard seems unavoidable, need to investigate. + Wildcards are bad and troublesome, use them with care, + or better, just don't. + Every time a wildcard is used a kitten dies, painfully. +*/ + +spinner:disabled, +arrow:disabled, +scrollbar:disabled, +check:disabled, +radio:disabled, +treeview.expander:disabled { -gtk-icon-filter: opacity(0.5); } + +.view, +%view { + color: $text_color; + background-color: $base_color; + + &:disabled { + color: $insensitive_fg_color; + background-color: $insensitive_bg_color; + } + + &:selected { + &:focus, & { + @extend %selected_items; + + border-radius: 3px; + } + } +} + +textview { + > text { + @extend %view; + + > selection { &:focus, & { @extend %selected_items; }} + } + + &:drop(active) { + caret-color: $drop_target_color; + } +} + +textview > border { background-color: mix($bg_color, $base_color, 50%); } + +iconview { + @extend .view; + + @include focus-ring(); + + &:drop(active) { + box-shadow: none; + } + + > dndtarget:drop(active) { + border-style: solid; + border-width: 1px; + border-color: $selected_borders_color; + } +} + +rubberband { + border: 1px solid darken($selected_bg_color, 10%); + background-color: transparentize(darken($selected_bg_color, 10%), 0.8); +} + +flowbox { + > rubberband { @extend rubberband; } + + > flowboxchild { + padding: 3px; + transition: $focus_transition; + + @include focus-ring(); + + &:selected { + outline-color: $alt_focus_border_color; + + @extend %selected_items; + } + } +} + +gridview { + > rubberband { @extend rubberband; } + + > child { + padding: 3px; + transition: $focus_transition; + + @include focus-ring(); + + &:selected { + outline-color: $alt_focus_border_color; + + @extend %selected_items; + } + + box { //cells + border-spacing: 8px; //label separation + margin: 12px; + } + } +} + +coverflow cover { + color: $text_color; + background-color: $base_color; + border: 1px solid black; +} + +label { + @include focus-ring(); + + &.separator { + @extend .dim-label; + } + + &:selected { @extend %nobg_selected_items; } + + > selection { + background-color: $selected_bg_color; + color: $selected_fg_color; + } + + &:disabled { + color: $insensitive_fg_color; + + button & { color: inherit; } + + > selection { @extend %selected_items_disabled; } + } + + &.error { + color: $error_color; + &:disabled { color: transparentize($error_color,0.5); } + } +} + +.dim-label { + opacity: $dim_label_opacity; + text-shadow: none; +} + +window.assistant { + .sidebar { + padding: $menu-margin; + border-top: 1px solid $borders_color; + } + + &.csd .sidebar { border-top-style: none; } + + .sidebar > label { padding: 6px 12px; } + + .sidebar > label.highlight { + background-color: $menu_selected_color; + border-radius: $menu-margin; + } +} + +window.aboutdialog image.large-icons { + -gtk-icon-size: 128px; +} + +%osd, +.osd { + color: $osd_fg_color; + border: none; + background-color: $osd_bg_color; + background-clip: padding-box; + -gtk-icon-shadow: 0 1px black; + +} + + +/********************* + * Spinner Animation * + *********************/ +@keyframes spin { + to { transform: rotate(1turn); } +} + +spinner { + background: none; + opacity: 0; // non spinning spinner makes no sense + -gtk-icon-source: -gtk-icontheme('process-working-symbolic'); + + &:checked { + opacity: 1; + animation: spin 1s linear infinite; + + &:disabled { opacity: 0.5; } + } +} + +/********************** + * General Typography * + **********************/ + +.large-title { + font-weight: 300; + font-size: 24pt; +} +.title-1 { + font-weight: 800; + font-size: 20pt; +} +.title-2 { + font-weight: 800; + font-size: 15pt; +} +.title-3 { + font-weight: 700; + font-size: 15pt; +} +.title-4 { + font-weight: 700; + font-size: 13pt; +} +.heading { + font-weight: 700; + font-size: 11pt; +} +.body { + font-weight: 400; + font-size: 11pt; +} +.caption-heading { + font-weight: 700; + font-size: 9pt; +} +.caption { + font-weight: 400; + font-size: 9pt; +} + +/**************** + * Text Entries * + ****************/ + +%entry, +entry { + %entry_basic, & { + min-height: 32px; + padding-left: 8px; + padding-right: 8px; + border: 1px solid; + border-radius: $button_radius; + border-spacing: 6px; + transition: all 200ms $ease-out-quad; + + @include entry(normal); + + @include focus-ring($focus-state: 'focus-within'); + + > image { // icons inside the entry + &.left { margin-right: 6px; } + &.right { margin-left: 6px; } + } + + > text > placeholder { + @extend .dim-label; + } + + > text > block-cursor { + @include entry(block_cursor); + } + + &.flat { + &:focus-within, &:backdrop, &:disabled, &:backdrop:disabled, & { + min-height: 0; + padding: 2px; + background-color: transparent; + border-color: transparent; + border-radius: 0; + } + } + + &:focus-within { + @include entry(focus); + > placeholder { + opacity: 0; /* We hide placeholders on focus */ + } + } + + &:disabled { @include entry(insensitive); } + + > text > selection { @extend %selected_items; } + + // entry error and warning style + @each $e_type, $e_color in (error, $error_color), + (warning, $warning_color) { + &.#{$e_type} { + color: $e_color; + + @include focus-ring($focus-state: 'focus-within', $fc: transparentize($e_color, 0.5)); + + &:focus-within { @include entry(focus, $e_color); } + + > selection { background-color: $e_color; } + } + } + + > image { // entry icons colors + color: mix($fg_color, $base_color, 80%); + + &:hover { color: $fg_color; } + + &:active { color: $selected_bg_color; } + + } + + &.password image.caps-lock-indicator { + color: mix($backdrop_fg_color, $backdrop_base_color, 80%); + } + + &:drop(active) { + &:focus-within, & { + border-color: $drop_target_color; + box-shadow: inset 0 0 0 1px $drop_target_color; + } + } + + .osd & { + @include entry(osd); + + &:focus-within { @include entry(osd-focus); } + + &:disabled { @include entry(osd-insensitive); } + } + } + + > progress { + margin-bottom: 2px; + } + + progress > trough > progress { + background-color: transparent; + background-image: none; + border-radius: 0; + border-width: 0 0 2px; + border-color: $selected_bg_color; + border-style: solid; + box-shadow: none; + + } + + // linked entries + .linked:not(.vertical) > & { @extend %linked; } + + .linked:not(.vertical) > &:drop(active) + &, + .linked:not(.vertical) > &:drop(active) + button, + .linked:not(.vertical) > &:drop(active) + menubutton > button, + .linked:not(.vertical) > &:drop(active) + dropdown > button, + .linked:not(.vertical) > &:drop(active) + colorbutton > button, + .linked:not(.vertical) > &:drop(active) + fontbutton > button, + .linked:not(.vertical) > &:drop(active) + filechooserbutton > button, + .linked:not(.vertical) > &:drop(active) + filechooserbutton > combobox > box > button.combo, + .linked:not(.vertical) > &:drop(active) + appchooserbutton > combobox > box > button.combo, + .linked:not(.vertical) > &:drop(active) + combobox > box > button.combo { border-left-color: $drop_target_color; } + + // Vertically linked entries + // FIXME: take care of "colored" entries + .linked.vertical > & { + @extend %linked_vertical; + + // brighter border between linked entries + &:not(:disabled) + entry:not(:disabled), + &:not(:disabled) + %entry:not(:disabled) { + border-top-color: mix($borders_color, $base_color, 30%); + } + + // brighter border between linked insensitive entries + &:disabled + %entry:disabled, + &:disabled + entry:disabled { border-top-color: mix($borders_color, $base_color, 30%); } + + + %entry:drop(active):not(:only-child), + + entry:drop(active):not(:only-child) { border-top-color: $drop_target_color; } + + &:drop(active):not(:only-child) { + + %entry, + + entry, + + button, + + menubutton > button, + + dropdown > button, + + colorbutton > button, + + fontbutton > button, + + filechooserbutton > button, + + filechooserbutton > combobox > box > button.combo, + + appchooserbutton > combobox > box > button.combo, + + combobox > box > button.combo { border-top-color: $drop_target_color; } + } + } + + &.error { color: $error_color; } +} + +treeview entry { + &:focus-within { + &:dir(rtl), &:dir(ltr) { // specificity bump hack + background-color: $base_color; + transition-property: color, background; + } + } + + &.flat, & { + border-radius: 0; + background-image: none; + background-color: $base_color; + + &:focus-within { border-color: $selected_bg_color; } + } +} + +/******************* + * Editable Labels * + *******************/ +editablelabel > stack > text { + @include entry(normal); +} + +/*********** + * Buttons * + ***********/ +// stuff for .needs-attention +$_dot_color: if($variant=='light', $selected_bg_color, + lighten($selected_bg_color,15%)); +@keyframes needs_attention { + from { background-image: radial-gradient(farthest-side, $_dot_color 0%, transparentize($_dot_color, 1) 0%); } + to { background-image: radial-gradient(farthest-side, $_dot_color 95%, transparentize($_dot_color, 1)); } +} + +%button, +button { + @at-root %button_basic, & { + + min-height: 24px; + min-width: 16px; + padding: 4px 9px; + border: 1px solid; + border-radius: $button_radius; + transition: $button_transition; + + @include button(normal); + + @include focus-ring(); + + &:hover { + @include button(hover); + -gtk-icon-filter: brightness(1.2); + } + + &:active, + &:checked { + @include button(active); + + transition-duration: 50ms; + } + + &:checked:hover { @include button(checked-hover); } + &:checked:active { @include button(checked-active); } + + &:backdrop { + &.flat, & { + @include button(backdrop); + + transition: $backdrop_transition; + -gtk-icon-filter: none; + + &:active, + &:checked { @include button(backdrop-active); } + + &:disabled { + @include button(backdrop-insensitive); + + &:active, + &:checked { @include button(backdrop-insensitive-active); } + } + } + } + + &:disabled { + @include button(insensitive); + + &:active, + &:checked { @include button(insensitive-active); } + } + + @at-root %button_basic_flat, + &.flat { + @include button(undecorated); + // to avoid adjacent buttons borders clashing when transitioning, the transition on the normal state is set + // to none, while it's added back in the hover state, so the button decoration will fade in on hover, but + // it won't fade out when the pointer leave the button allocation area. To make the transition more evident + // in this case the duration is increased. + transition: none; + + &:hover { + @include button(undecorated-hover); + transition: $button_transition; + transition-duration: 500ms; + } + &:active, + &:checked { + @include button(undecorated-active); + transition: $button_transition; + } + &:backdrop, &:disabled, &:backdrop:disabled { @include button(undecorated); } + } + + &.image-button { + min-width: 24px; + padding-left: 5px; + padding-right: 5px; + } + + &.text-button { + padding-left: 16px; + padding-right: 16px; + } + + &.text-button.image-button { + padding-left: 8px; + padding-right: 8px; + + label { + padding-left: 8px; + padding-right: 8px; + } + } + + @at-root %button_basic_drop_active, + &:drop(active) { + color: $drop_target_color; + border-color: $drop_target_color; + box-shadow: inset 0 0 0 1px $drop_target_color; + } + } + + @at-root %button_selected, & { + row:selected & { + @if $variant == 'light' { border-color: $selected_borders_color; } + } + + @at-root %button_selected_flat, &.flat { + row:selected & { + &:not(:active):not(:checked):not(:hover):not(disabled) { + color: $selected_fg_color; + border-color: transparent; + + &:backdrop { color: if($variant=='light', $backdrop_base_color, $backdrop_fg_color); } + } + } + } + } + + + // big standalone buttons like in Documents pager + &.osd { + min-width: 26px; + min-height: 32px; + + &.image-button { + min-width: 30px; + &:only-child { + margin: 4px; + border-radius: 50%; // completely round when it is a single button + box-shadow: 0 1px 2px transparentize(black, 0.8); // drop shadow for the only child + }; + } + + color: $osd_fg_color; + border-radius: 5px; + + @include button(osd); + + border: none; + box-shadow: none; + + &:hover { + @include button(osd-hover); + + border: none; + box-shadow: none; + } + + &:active, + &:checked { + @include button(osd-active); + + border: none; + box-shadow: none; + } + } + + //overlay / OSD style + @at-root %osd_button, + .osd & { + @include button(osd); + + &:hover { @include button(osd-hover); } + + &:active, + &:checked { &:backdrop, & { @include button(osd-active); }} + + &:disabled { &:backdrop, & { @include button(osd-insensitive); }} + + &.flat { + @include button(undecorated); + + box-shadow: none; + -gtk-icon-shadow: 0 1px black; + + &:hover { @include button(osd-hover); } + + &:disabled { + @include button(osd-insensitive); + background-image: none; + border-color: transparent; + box-shadow: none; + } + + &:active, + &:checked { @include button(osd-active); } + } + } + + // Suggested and Destructive Action buttons + @each $b_type, $b_color in (suggested-action, $suggested_bg_color), // Yaru change: use our own palette + (destructive-action, $destructive_color) { + &.#{$b_type} { + @include button(normal, $b_color, white); + @include focus-ring($fc: $alt_focus_border_color); + + &.flat { + @include button(undecorated); + + color: $b_color; //FIXME: does it work on the dark variant? + } + + &:hover { @include button(hover, $b_color, white); } + + &:active, + &:checked { @include button(active, $b_color, white); } + + &.flat { + &:disabled { + @include button(undecorated); + + color: transparentize($b_color, 0.2); + } + } + + &:disabled { + @include button(insensitive); + + &:active, + &:checked { @include button(insensitive-active, $b_color, white); } + } + + .osd & { + @include button(osd, $b_color); + + &:hover { @include button(osd-hover, $b_color); } + + &:active, + &:checked { &:backdrop, & { @include button(osd-active, $b_color); }} + + &:disabled { &:backdrop, & { @include button(osd-insensitive, $b_color); }} + + } + } + } + + stackswitcher > & { + // to position the needs attention dot, padding is added to the button + // child, a label needs just lateral padding while an icon needs vertical + // padding added too. + + > label { + padding: 0 6px; + margin: 0 -6px; + } + + > image { + padding: 3px 6px; + margin: -3px -6px; + } + + &.needs-attention { + > label, + > image { @extend %needs_attention; } + } + } + + // hide separators + &.font{ + separator { background-color: transparent; } + > box { border-spacing: 6px; } + > box > box > label { font-weight: bold; } + } + + .linked:not(.vertical) > & { @extend %linked; } + + .linked.vertical > & { @extend %linked_vertical; } + + &.circular { // force circular button shape + min-width: 32px; + min-height: 32px; + padding: 0; + border-radius: 9999px; + + label { padding: 0; } + } +} + +%needs_attention { + // the dot is drawn by using two radial gradient, the first one is the actual dot, the other + // simulates the shadow labels and icons normally have in buttons. + animation: needs_attention 150ms ease-in; + + background-image: radial-gradient(farthest-side, $_dot_color 96%, transparentize($_dot_color,1 )); + background-size: 6px 6px, 6px 6px; + background-repeat: no-repeat; + + @if $variant == 'light' { background-position: right 3px, right 4px; } + + @else { background-position: right 3px, right 2px; } + + &:backdrop { background-size: 6px 6px, 0 0;} + + &:dir(rtl) { + @if $variant == 'light' { background-position: left 3px, left 4px; } + + @else { background-position: left 3px, left 2px; } + } +} + + +%linked_not_left { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +%linked_not_right { + border-right-style: none; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +// 1st/last child are at text start/end +%linked { + &:dir(ltr) { + &:not(:first-child) { @extend %linked_not_left; } + &:not(:last-child) { @extend %linked_not_right; } + } + + &:dir(rtl) { + &:not(:first-child) { @extend %linked_not_right; } + &:not(:last-child) { @extend %linked_not_left; } + } +} + +%linked_not_top { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +%linked_not_bottom { + border-bottom-style: none; + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +%linked_vertical { + &:not(:first-child) { @extend %linked_not_top; } + + &:not(:last-child) { @extend %linked_not_bottom; } +} + +%undecorated_button { + background-color: transparent; + background-image: none; + border-color: transparent; + box-shadow: inset 0 1px transparentize(white, 1), + 0 1px transparentize(white, 1); + text-shadow: none; + -gtk-icon-shadow: none; +} + +.linked:not(.vertical) > menubutton, +.linked:not(.vertical) > dropdown, +.linked:not(.vertical) > colorbutton, +.linked:not(.vertical) > fontbutton, +.linked:not(.vertical) > filechooserbutton { + &:dir(ltr) { + &:not(:first-child) > button { @extend %linked_not_left; } + &:not(:last-child) > button { @extend %linked_not_right; } + } + + &:dir(rtl) { + &:not(:first-child) > button { @extend %linked_not_right; } + &:not(:last-child) > button { @extend %linked_not_left; } + } +} + +.linked.vertical > menubutton, +.linked.vertical > dropdown, +.linked.vertical > colorbutton, +.linked.vertical > fontbutton, +.linked.vertical > filechooserbutton { + &:not(:first-child) > button { @extend %linked_not_top; } + &:not(:last-child) > button { @extend %linked_not_bottom; } +} + +/* menu buttons */ +modelbutton.flat { + min-height: 26px; + padding-left: 5px; + padding-right: 5px; + border-radius: $button_radius; + + @extend %undecorated_button; + + &:hover { background-color: $menu_selected_color; } + + &:disabled { + color: $insensitive_fg_color; + + + } + + &:selected { @extend %selected_items; } +} + +modelbutton.flat arrow { + background: none; + min-width: 16px; + min-height: 16px; + opacity: 0.3; //dim icon + + &:hover { background: none; } + + &.left { -gtk-icon-source: -gtk-icontheme("go-previous-symbolic"); } + + &.right { -gtk-icon-source: -gtk-icontheme("go-next-symbolic"); } +} + +/* oldstyle toolbar buttons */ + +.toolbar button { + margin: 1px; + @extend %undecorated_button; + + &:hover { @include button('hover'); } + &:active { @include button('active'); } + &:disabled { @include button('insensitive'); } + &:backdrop { @include button('backdrop'); } + &:backdrop:disabled { @include button('backdrop-insensitive'); } +} + +button.color { + padding: 4px; + + > colorswatch:only-child { + &, > overlay { border-radius: 0; } + + @if $variant == 'light' { + box-shadow: 0 1px $shadow_color; + + .osd & { box-shadow: none; } + } + } + + @if $variant == 'light' { + .osd &, & { + &:disabled, + &:active, + &:checked { colorswatch:only-child { box-shadow: none; }} + } + } +} + +/* list buttons */ +/* tone down as per new designs, see issue #1473 */ +%list_button, +list > row button.image-button:not(.flat) { + @extend %undecorated_button; + border: 1px solid transparentize($borders_color, .5); + &:hover { @include button(hover); } + &:active, + &:checked { @include button(active); } +} + +/********* + * Links * + *********/ + +%link, +link { + color: $link_color; + text-decoration: underline; + + &:visited { + color: $link_visited_color; + + *:selected & { color: mix($selected_fg_color, $link_visited_color, 60%); } + } + + &:hover { + $_fg: lighten($link_color, 10%); + color: $_fg; + + *:selected & { color: mix($selected_fg_color, $_fg, 90%); } + } + + &:active { + color: $link_color; + + *:selected & { color: mix($selected_fg_color, $link_color, 80%); } + } + + &:disabled { color: transparentize(desaturate($link_color, 100%), 0.2); } + + @at-root %link_selected, + &:selected, + *:selected & { color: mix($selected_fg_color, $link_color, 80%); } +} + +link { + @include focus-ring(); +} + +button.link { + @extend %link; + + &, + &:hover, + &:active, + &:checked { + @extend %undecorated_button; + + text-shadow: none; + } + + > label { + text-decoration: underline; + } +} + + +/***************** + * GtkSpinButton * + *****************/ +spinbutton { + &:not(.vertical) { + // in this horizontal configuration, the whole spinbutton + // behaves as the entry, so we extend the entry styling + // and nuke the style on the internal entry + @extend %entry; + + padding: 0; + border-spacing: 0; + + %spinbutton_horz_entry { + min-width: 28px; + // reset all the other props since the spinbutton node is styled here + margin: 0; + background: none; + background-color: transparent; + border: none; + border-radius: 0; + box-shadow: none; + padding: 6px; + + &:backdrop:disabled { background-color: transparent; } + } + + > text { + @extend %spinbutton_horz_entry; + } + + /* :not here just to bump specificity above that of the list button styling */ + > button.image-button.up:not(.flat), + > button.image-button.down:not(.flat) { + min-height: 16px; + margin: 0; + padding-bottom: 0; + padding-top: 0; + color: mix($fg_color, $base_color, 90%); + background-image: none; + border-style: none none none solid; + border-color: transparentize($borders_color, 0.7); + border-radius: 0; + box-shadow: none; + + &:dir(rtl) { border-style: none solid none none; } + + &:hover { + color: $fg_color; + background-color: darken($bg_color,5%); + } + + &:disabled { + color: transparentize($insensitive_fg_color, 0.7); + background-color: transparent; + } + + &:active { + background-color: transparentize(black, 0.9); + box-shadow: inset 0 2px 3px -1px transparentize(black, 0.8); + } + + &:dir(ltr):last-child { border-radius: 0 $button_radius $button_radius 0; } + + &:dir(rtl):first-child { border-radius: $button_radius 0 0 $button_radius; } + } + } + + // OSD horizontal + .osd &:not(.vertical) { + > text { + @extend %spinbutton_horz_entry; + } + + > button.image-button.up:not(.flat), + > button.image-button.down:not(.flat) { + @include button(undecorated); + + color: $osd_fg_color; + border-style: none none none solid; + border-color: transparentize($osd_borders_color, 0.3); + border-radius: 0; + box-shadow: none; + -gtk-icon-shadow: 0 1px black; + + &:dir(rtl) { border-style: none solid none none; } + + &:hover { + @include button(undecorated); + + color: $osd_fg_color; + border-color: transparentize(opacify($osd_borders_color, 1), 0.5); + background-color: darken($osd_bg_color,10%); + -gtk-icon-shadow: 0 1px black; + box-shadow: none; + } + + &:disabled { + @include button(undecorated); + + color: $osd_insensitive_fg_color; + border-color: transparentize(opacify($osd_borders_color, 1), 0.5); + -gtk-icon-shadow: none; + box-shadow: none; + } + + &:dir(ltr):last-child { border-radius: 0 $button_radius $button_radius 0; } + + &:dir(rtl):first-child { border-radius: $button_radius 0 0 $button_radius; } + } + } + + // Vertical + &.vertical { + // in the vertical configuration, we treat the spinbutton + // as a box, and tweak the style of the entry in the middle + // so that it's linked + + // FIXME: this should not be set at all, but otherwise it gets the wrong + // color + &:disabled { color: $insensitive_fg_color; } + + &:drop(active) { + border-color: transparent; + box-shadow: none; + } + + > text { + @extend %entry; + + min-height: 32px; + min-width: 32px; + padding: 0; + border-radius: 0; + + > selection { @extend %selected_items; } + > block-cursor { @include entry(block_cursor); } + } + + > button { + min-height: 32px; + min-width: 32px; + padding: 0; + + &.up { @extend %top_button; } + + &.down { @extend %bottom_button; } + } + + %top_button { + border-bottom-style: none; + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + } + + %bottom_button { + border-top-style: none; + border-top-left-radius: 0; + border-top-right-radius: 0; + } + } + + // OSD vertical + .osd &.vertical > button:first-child { + @include button(osd); + + &:hover { @include button(osd-hover);} + + &:active { @include button(osd-active); } + + &:disabled { @include button(osd-insensitive); } + } + + // Misc + treeview &:not(.vertical) { + min-height: 0; + border-style: none; + border-radius: 0; + + > text { + min-height: 0; + padding: 1px 2px; + } + } + + font-feature-settings: "tnum"; +} + + +/************** + * ComboBoxes * + **************/ +dropdown > popover.menu.background > contents { padding: 0; } //allow search entries with no margin + +dropdown > button > box { + border-spacing: 6px; +} + +dropdown, +combobox { + arrow { + -gtk-icon-source: -gtk-icontheme('pan-down-symbolic'); + min-height: 16px; + min-width: 16px; + } + + // align menu labels with the button label + > popover.menu > contents modelbutton { + padding-left: 9px; + padding-right: 9px; + } + + &.linked { + button:nth-child(2) { + &:dir(ltr) { @extend %linked_not_left; } + &:dir(rtl) { @extend %linked_not_right; } + } + } + + &:drop(active) { // FIXME: untested + box-shadow: none; + + button.combo { @extend %button_basic_drop_active; } + } + + // newstyle + popover { + margin-top: 6px; + padding: 0; + + listview { + + margin: 8px 0; + + &>row { + padding: 8px; + + &:selected { + outline-color: $alt_focus_border_color; + color: $text-color; + background-color: $menu_selected_color; + } + } + } + + // drodowns with searchboxes on top + .dropdown-searchbar { + padding: 6px; + border-bottom: 1px solid $borders_color; + } + } +} + + +// the combo is a composite widget so the way we do button linking doesn't +// work, special case needed. See +// https://bugzilla.gnome.org/show_bug.cgi?id=733979 + +.linked:not(.vertical) > filechooserbutton > combobox, +.linked:not(.vertical) > appchooserbutton > combobox, +.linked:not(.vertical) > combobox { + &:dir(ltr) { + &:not(:first-child) > box > button.combo { @extend %linked_not_left; } + &:not(:last-child) > box > button.combo { @extend %linked_not_right; } + } + + &:dir(rtl) { + &:not(:first-child) > box > button.combo { @extend %linked_not_right; } + &:not(:last-child) > box > button.combo { @extend %linked_not_left; } + } +} + +.linked.vertical > filechooserbutton > combobox, +.linked.vertical > appchooserbutton > combobox, +.linked.vertical > combobox { + &:not(:first-child) > box > button.combo { @extend %linked_not_top; } + &:not(:last-child) > box > button.combo { @extend %linked_not_bottom; } +} + + +/************ + * Toolbars * + ************/ +%toolbar { + padding: 4px; + border-spacing: 4px; + background-color: $bg_color; +} + +.toolbar, +toolbar { + @extend %toolbar; + + background-image: linear-gradient(to bottom, + $toolbar_gradient_a 2px, + $toolbar_gradient_b 50%, + $toolbar_gradient_c 50%, + $toolbar_gradient_d); + padding: 2px ; + border-width: 1px 0 1px 0; + border-radius: 0; + border-style: solid; + border-top-color: $base_color; + border-bottom-color: $toolbar_border_bottom_color; + + // on OSD + .osd & { background-color: transparent; } + + // stand-alone OSD toolbars + &.osd { + padding: 13px; + border: none; + border-radius: 5px; + background-color: $osd_bg_color; + + &.left, + &.right, + &.top, + &.bottom { border-radius: 0; } // positional classes for `attached` osd toolbars + } + + // toolbar separators + &.horizontal > separator { margin: 4px 0; } + &.vertical > separator { margin: 0 4px; } +} + +//searchbar & location-bar +searchbar > revealer > box { + padding: 6px; + border-spacing: 6px; + @extend %toolbar; + + @extend %darkbar; + + border-width: 0 0 1px; +} + +%darkbar { + border-style: solid; + border-color: $borders_color; + $_bg: mix($bg_color, $borders_color, 70%); + background-color: $_bg; + + &:backdrop { + border-color: $backdrop_borders_color; + background-color: $backdrop_dark_fill; + box-shadow: none; + transition: $backdrop_transition; + } +} + +/************** + * GtkInfoBar * + **************/ +infobar { + > revealer > box { + padding: 8px; + border-spacing: 12px; + } + + &.action:hover > revealer > box { + background-color: if($variant == 'light', desaturate(lighten(invert($selected_bg_color), 47%), 30%), + desaturate(darken(invert($selected_bg_color), 42%), 70%)); + } + + &.info, + &.question, + &.warning, + &.error { + > revealer > box { + border-bottom: 1px solid lighten($borders_color, 5%); + background-color: if($variant == 'light', desaturate(lighten(invert($selected_bg_color), 45%), 30%), + desaturate(darken(invert($selected_bg_color), 40%), 70%)); + } + } +} + + //close button for info and searchbar (#3215) + + infobar .close, + searchbar .close { + @include button(undecorated); + min-width: 16px; + min-height: 16px; + padding: 4px; + border-radius: 50%; + + &:hover { @include button(hover); } + } + + +/***************** + * Title buttons * + *****************/ + +windowcontrols { + border-spacing: 6px; + + &:not(.empty) { + &.start:dir(ltr), + &.end:dir(rtl) { + margin-right: 7px; + } + + &.start:dir(rtl), + &.end:dir(ltr) { + margin-left: 7px; + } + } + + button { // Yaru changes: disable default windowcontrols button look (see _tweaks for yaru style) + //@extend %button_basic; + + //@extend %button_basic_flat; + + + border-radius: 9999px; + padding: 6px; + margin: 0 2px; + min-width: 0; + min-height: 0; + //&:hover { + //special case hover colors inside a headerbar + //@include button(undecorated-hover,$c:darken($headerbar_bg_color,6%)); + //} + //&:active, + //&:checked { @include button(undecorated-active,$c:darken($headerbar_bg_color,10%)); } + } +} + + +/*************** + * Header bars * + ***************/ +%titlebar, +headerbar { + padding: 0 6px; + min-height: 23px; + border-width: 0 0 1px; + border-style: solid; + border-color: $alt_borders_color; + border-radius: 0; + + @include headerbar_fill(darken($bg_color, 10%)); + + &:backdrop { + border-color: $backdrop_borders_color; + @include headerbar_fill(darken($bg_color, 10%)); + box-shadow: inset 0 1px $top_hilight; + + transition: $backdrop_transition; + } + + .title { + padding-left: 12px; + padding-right: 12px; + font-weight: bold; + } + + .subtitle { + font-size: smaller; + padding-left: 12px; + padding-right: 12px; + + @extend .dim-label; + } + + /* Darken switchbuttons for headerbars. issue #1588 */ + stackswitcher > button:checked, + button.toggle:checked { + + background: if($variant == 'light', image(darken($bg_color, 17%)), image(darken($bg_color, 9%))); + border-color: darken($borders_color, 6%); // Yaru changes: modify borders + // border-top-color: darken($borders_color, 8%); + &:backdrop { + @include button(backdrop-active); + } + } + + // squared corners when the window is maximized, tiled, or fullscreen + .tiled &, + .tiled-top &, + .tiled-left &, + .tiled-right &, + .tiled-bottom &, + .maximized &, + .fullscreen & { + &:backdrop, & { + border-radius: 0; + } + } + + &.default-decoration { + min-height: 28px; + padding: 4px; + + windowcontrols { + button, + menubutton { + min-height: 26px; + min-width: 26px; + margin: 0; + padding: 0; + } + + menubutton button { + min-height: 20px; + min-width: 20px; + margin: 0; + padding: 4px; + } + } + } + + .solid-csd & { + &:backdrop, & { + &:dir(rtl), &:dir(ltr) { // specificity bump + margin-left: -1px; + margin-right: -1px; + margin-top: -1px; + border-radius: 0; + box-shadow: none; + } + } + } +} + +headerbar { + > windowhandle > box { + &, + > box.start, + > box.end { + border-spacing: 6px; + } + } + + // add vertical margins to common widget on the headerbar to avoid them spanning the whole height + entry, + spinbutton, + separator:not(.sidebar), + button, + menubutton { + margin-top: 6px; + margin-bottom: 6px; + } + + // Reset margins for buttons inside menubutton + menubutton > button { + margin-top: 0px; + margin-bottom: 0px; + } + + switch { + margin-top: 10px; + margin-bottom: 10px; + } + + &.titlebar headerbar:not(.titlebar) { + // Drop the background of non-titlebar nested headerbars. This is needed to + // work around headerbar sliding animation issues without refactoring + // Adwaita's support of titlebars and headerbars as it may break + // applications. + // See https://gitlab.gnome.org/GNOME/gtk/issues/1264 for more information. + background: none; + box-shadow: none; + } +} + + +.titlebar:not(headerbar) { + window.csd > & { + // in csd we assume every titlebar is a headerbar so reset anything, this is needed for split toolbars cases + padding: 0; + background-color: transparent; + background-image: none; + border-style: none; + border-color: transparent; + box-shadow: none; + } + + separator { background-color: $borders_color; } // FIXME: use darker border? + + @extend %titlebar; +} + +// Development versions of apps to use a differently styled headerbar + +window.devel { + headerbar.titlebar { + $c: darken($bg_color, 10%); + $gradient: cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, + linear-gradient(to right, transparent 65%, transparentize($selected_bg_color, 0.8)), + linear-gradient(to top, darken($c, 3%), $c 3px, lighten($c, 6%)); + @if $variant == 'dark' { + $gradient: cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, + linear-gradient(to right, transparent 65%, transparentize($selected_bg_color, 0.9)), + linear-gradient(to top, lighten($c, 3%) 3px, lighten($c, 5%)); + } + + background: $bg_color $gradient; + + &:backdrop { + background: $bg_color cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, + image($bg_color); /* background-color would flash */ + } + } +} + +/************ + * Pathbars * + ************/ + +pathbar > button { + &.text-button, &.image-button, & { + padding-left: 4px; + padding-right: 4px; + } + + &.text-button.image-button label { + padding-left: 0; + padding-right: 0; + } + + &.text-button.image-button, & { + label:last-child { padding-right: 8px; } + label:first-child { padding-left: 8px; } + } + + image { + padding-left: 4px; + padding-right: 4px; + } + + &.slider-button { + padding-left: 0; + padding-right: 0; + } +} + + +/************** + * Tree Views * + **************/ + +$_treeview_borders_color: if($variant=='light',mix($borders_color, $base_color,80%),mix($fg_color, $base_color, 20%)); +$_treeview_backdrop_borders_color: if($variant=='light',mix($backdrop_borders_color, $base_color, 80%),mix($backdrop_fg_color, $base_color, 20%)); +columnview.view, +treeview.view { + border-left-color: $_treeview_borders_color; // this is actually the tree lines color, + border-top-color: $_treeview_borders_color; // while this is the grid lines color, better then nothing + + @include focus-ring(); + + > rubberband { @extend rubberband; } // to avoid borders being overridden by the previously set props + + &:selected { + &:focus, & { + border-radius: 0; + outline-color: $alt_focus_border_color; + + @extend %selected_items; + } + } + + &:disabled { + color: $insensitive_fg_color; + + &:selected { + color: mix($selected_fg_color, $selected_bg_color, 40%); + &:backdrop { color: mix($backdrop_selected_fg_color, $selected_bg_color, 30%); } + } + } + + &.separator { + min-height: 2px; + color: $_treeview_borders_color; + } + + &:backdrop { + border-left-color: $_treeview_backdrop_borders_color; + border-top: $_treeview_backdrop_borders_color; + } + + &:drop(active) { + box-shadow: none; + } + + > dndtarget:drop(active) { + border-style: solid none; + border-width: 1px; + border-color: $selected_borders_color; + + &.after { border-top-style: none; } + + &.before { border-bottom-style: none; } + } + + &.expander { + // GtkTreeView uses the larger of the expander’s min-width and min-height + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme('pan-end-symbolic'); + + &:dir(rtl) { -gtk-icon-source: -gtk-icontheme('pan-end-symbolic-rtl'); } + + color: mix($text_color, $base_color, 70%); + + &:hover { color: $text_color; } + + &:selected { + color: mix($selected_fg_color, $selected_bg_color, 70%); + + &:hover { color: $selected_fg_color; } + } + + &:checked { -gtk-icon-source: -gtk-icontheme('pan-down-symbolic'); } + } + + &.progressbar { // progress bar in treeviews + @if $variant == light { color: $base_color; } + + background-color: $selected_bg_color; + background-image: image($selected_bg_color); + box-shadow: none; + + &:selected { + &:focus, & { + + @if $variant == 'light' { + color: $selected_bg_color; + + } + + @else { box-shadow: inset 0 1px transparentize(white, 0.95); } + + background-image: image($base_color); + + &:backdrop { + @if $variant == 'light' { + color: $selected_bg_color; + } + background-color: $backdrop_base_color; + } + } + } + } + + &.trough { // progress bar trough in treeviews + background-color: transparentize($fg_color,0.9); + + &:selected { + &:focus, & { + background-color: if($variant == 'light', + transparentize($selected_fg_color, 0.7), + darken($selected_bg_color, 10%)); + + } + } + } + + > header { + > button { + $_column_header_color: mix($fg_color, $base_color, 50%); + + @extend %column_header_button; + + color: $_column_header_color; + background-color: $base_color; + font-weight: bold; + text-shadow: none; + box-shadow: none; + + &:hover { + @extend %column_header_button; + + color: mix($_column_header_color, $fg_color, 50%); + box-shadow: none; + transition: none; //I shouldn't need this + } + + &:active { + @extend %column_header_button; + + color: $fg_color; + transition: none; //I shouldn't need this + } + } + } + + button.dnd, + header.button.dnd { // for treeview-like derive widgets + &:active, &:selected, &:hover, & { + padding: 0 6px; + color: $base_color; + background-image: none; + background-color: $selected_bg_color; + border-style: none; + border-radius: 0; + box-shadow: inset 0 0 0 1px $base_color; + text-shadow: none; + transition: none; + } + } + + acceleditor > label { background-color: $selected_bg_color; } // see tests/testaccel to test +} + +%column_header_button { + padding: 0 6px; + background-image: none; + border-style: none none solid solid; + border-color: $_treeview_borders_color; + border-radius: 0; + text-shadow: none; + + &:disabled { + border-color: $bg_color; + background-image: none; + } + + &:last-child { &:backdrop, & { border-right-style: none; }} +} + +/*************** + * Popovers * + ***************/ + +popover.background { + background-color: transparent; + font: initial; // Decouple the font of popovers from their entry/textview + + > arrow, + > contents { + $_popover_border: if($variant=='light', transparentize(black, 0.77), transparentize($borders_color, 0.1)); + + background-color: $menu_color; + background-clip: padding-box; + border: 1px solid $_popover_border; + box-shadow: 0 1px 2px transparentize(black, 0.7); + } + + &:backdrop { + background-color: transparent; + } + + > contents { + padding: 8px; + border-radius: $popover_radius; + + > list, + > .view, + > toolbar { + border-style: none; + background-color: transparent; + } + + separator { + background-color: mix($bg_color, $borders_color, 30%); + margin: 3px; + } + + list separator { margin: 0; } + } + + .osd &, + &.touch-selection, + &.magnifier { + background-color: transparent; + + > arrow, + > contents { + @extend %osd; + + border: 1px solid transparentize(white, 0.9); + box-shadow: none; + } + } + + &.touch-selection, + &.magnifier { + button { @extend %osd_button; } + } +} + +magnifier { + background-color: $base_color; +} + +/********************** + * Popover Base Menus * + **********************/ + +$_menu-padding: 12px; //inner menuitem padding +//global $menu-margin for outside menuitems + +popover.menu { + padding: 0; + + box.inline-buttons { + padding: 0 $_menu-padding; + + button.image-button.model { + @include button(undecorated); + + min-height: 30px; + min-width: 30px; + padding: 0; + border: none; + outline: none; + transition: none; + + &:selected { background-image: linear-gradient(to bottom, + $menubar_menuitem_hover_gradient_a, + $menubar_menuitem_hover_gradient_b 50%, + $menubar_menuitem_hover_gradient_c 50%, + $menubar_menuitem_hover_gradient_d ); } + } + } + + box.circular-buttons { + padding: $_menu-padding $_menu-padding 6px; + + button.circular.image-button.model { + @extend %list_button; + + padding: 11px; + &:focus { + background-color: $menu_selected_color; + border-color: $menu_selected_color; + } + } + } + + & > arrow, + &.background > contents { + background-color: $menu_color; + padding: $menu-margin; + } + + &.background separator { + margin: 6px 0; + } + + accelerator { + color: gtkalpha(currentColor,0.55); + + &:dir(ltr) { margin-left: $_menu-padding; } + &:dir(rtl) { margin-right: $_menu-padding; } + } + + check, + radio { + @include check('menu', 'transparent', $text_color); + + &:hover { @include check('menu-active', 'transparent', $text_color); } + &:active { @include check('menu-active', 'transparent', $text_color); } + } + + //only menu radios have a border + radio { border-color: $borders_color; + &:active { border-color: transparentize($borders_color,0.5); } + } + + arrow.left, + radio.left, + check.left { + margin-left: -2px; + margin-right: 6px; + } + + arrow.right, + radio.right, + check.right { + margin-left: 6px; + margin-right: -2px; + } + + modelbutton { + min-height: 30px; + min-width: 40px; + padding: 0 $_menu-padding; + border-radius: $menu-margin; + + &:selected { + color: $selected_fg_color; + background-image: linear-gradient(to bottom, + $menubar_menuitem_hover_gradient_a, + $menubar_menuitem_hover_gradient_b 50%, + $menubar_menuitem_hover_gradient_c 50%, + $menubar_menuitem_hover_gradient_d ); + box-shadow: inset 0px 1px $menubar_menuitem_hover_border_color, inset 0px -1px $menubar_menuitem_hover_border_color; + } + &:selected:active { + //@extend %selected_items; + //color: $selected_fg_color; + background-color: darken($bg_color,14%); // matching buttons + } + } + + label.title { + font-weight: bold; + padding: 4px ($_menu-padding + 20px); //this will fall apart with font sizing + } +} + +// initial styling for popover menu and bar +menubar { + padding: 0px; + box-shadow: inset 0 -1px transparentize(black, 0.9); + + > item { + min-height: 16px; + padding: 4px 8px; + + &:selected { //Seems like it :hover even with keyboard focus + background-image: linear-gradient(to bottom, + $menubar_menuitem_hover_gradient_a, + $menubar_menuitem_hover_gradient_b 50%, + $menubar_menuitem_hover_gradient_c 50%, + $menubar_menuitem_hover_gradient_d ); + box-shadow: inset 1px 0px $menubar_menuitem_hover_border_color, inset -1px 0px $menubar_menuitem_hover_border_color; + > label {color: white;} + } + + &:disabled { + color: $insensitive_fg_color; + box-shadow: none; + } + } + + & > item popover.menu.background > contents { + padding: $menu-margin; + } + //nested submenus + & > item popover.menu popover.menu { + padding: 0 0 4px 0; + } + & > item popover.menu.background popover.menu.background > contents { + margin: 0; + border-radius: $popover_radius; //including top + } +} + + +/************* + * Notebooks * + *************/ +$notebook_base_color: lighten($bg_color, 3%); + +notebook { + border-color:#b0b9c9; + > header { + padding: 1px; + border-color: $borders_color; + box-shadow: 1px 1px $bg_color, 1px -1px $bg_color, -1px -1px $bg_color; + border-width: 1px; + background-color: transparent; // Yaru change: remove notebook background + + > tabs { margin: -1px; } + + &.top { + border-bottom-style: solid; + > tabs { + margin-bottom: -2px; + margin-top: 4px; + > tab { + background-image: linear-gradient(to bottom, gtkshade($bg_color, 1.02), gtkshade($bg_color, 0.8)); + box-shadow: 0px -1px $borders_color, 1px 0px $borders_color, -1px 0px $borders_color, inset 0px -1px $borders_color; + border-top-left-radius: 3px; + border-top-right-radius: 3px; + &:hover { } // Yaru change: 4px underlines are too much + + + &:checked { background-image: linear-gradient(to bottom, + $core_color_a 3px, + desaturate(darken($core_color_a, 30%), 15%) 5px, + $notebook_base_color 5px, + $notebook_base_color); + box-shadow: 0px -1px desaturate(darken($core_color_a, 30%), 15%), 1px 0px $borders_color, -1px 0px $borders_color; } // Yaru change: 4px underlines are too much + } + } + } + + &.bottom { + border-top-style: solid; + > tabs { + margin-top: -3px; + > tab { + background-image: linear-gradient(to top, gtkshade($bg_color, 1.02), gtkshade($bg_color, 0.8)); + box-shadow: 0px 1px $borders_color , 1px 0px $borders_color, -1px 0px $borders_color, inset 0px 1px $borders_color; + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; + &:hover { } // Yaru change: 4px underlines are too much + + + &:checked { background-image: linear-gradient(to top, + $core_color_a 3px, + desaturate(darken($core_color_a, 30%), 15%) 5px, + $notebook_base_color 5px, + $notebook_base_color); + box-shadow: 0px 1px desaturate(darken($core_color_a, 30%), 15%) , 1px 0px $borders_color, -1px 0px $borders_color; } // Yaru change: 4px underlines are too much + } + } + } + + &.left { + border-right-style: solid; + > tabs { + margin-right: -3px; + > tab { + background-image: linear-gradient(to right, gtkshade($bg_color, 1.02), gtkshade($bg_color, 0.8)); + box-shadow: 0px 1px $borders_color , 0px -1px $borders_color, -1px 0px $borders_color, inset -1px 0px $borders_color; + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; + + &:hover { } // Yaru change: 4px underlines are too much + + + &:checked { background-image: linear-gradient(to right, + $core_color_a 3px, + desaturate(darken($core_color_a, 30%), 15%) 5px, + $notebook_base_color 5px, + $notebook_base_color); + box-shadow: -1px 0px desaturate(darken($core_color_a, 30%), 15%) , 0px -1px $borders_color,0px 1px $borders_color; } // Yaru change: 4px underlines are too much + } + } + } + + &.right { + border-left-style: solid; + > tabs { + margin-left: -3px; + > tab { + background-image: linear-gradient(to left, gtkshade($bg_color, 1.02), gtkshade($bg_color, 0.8)); + box-shadow: 0px 1px $borders_color , 0px -1px $borders_color, 1px 0px $borders_color, inset 1px 0px $borders_color; + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; + &:hover { } // Yaru change: 4px underlines are too much + + + &:checked { background-image: linear-gradient(to left, + $core_color_a 3px, + desaturate(darken($core_color_a, 30%), 15%) 5px, + $notebook_base_color 5px, + $notebook_base_color); + box-shadow:1px 0px desaturate(darken($core_color_a, 30%), 15%), 0px -1px $borders_color,0px 1px $borders_color;} // Yaru change: 4px underlines are too much + } + } + } + + &.top > tabs > arrow { + @extend %notebook_vert_arrows; + + border-top-style: none; + } + + &.bottom > tabs > arrow { + @extend %notebook_vert_arrows; + + border-bottom-style: none; + } + + @at-root %notebook_vert_arrows { + margin-left: -5px; + margin-right: -5px; + padding-left: 4px; + padding-right: 4px; + + &.down { -gtk-icon-source: -gtk-icontheme('pan-start-symbolic'); } + + &.up { -gtk-icon-source: -gtk-icontheme('pan-end-symbolic'); } + } + + &.left > tabs > arrow { + @extend %notebook_horz_arrows; + + border-left-style: none; + } + + &.right > tabs > arrow { + @extend %notebook_horz_arrows; + + border-right-style: none; + } + + @at-root %notebook_horz_arrows { + margin-top: -5px; + margin-bottom: -5px; + padding-top: 4px; + padding-bottom: 4px; + + &.down { -gtk-icon-source: -gtk-icontheme('pan-up-symbolic'); } + + &.up { -gtk-icon-source: -gtk-icontheme('pan-down-symbolic'); } + } + + > tabs > arrow { + @extend %button_basic; + + @extend %button_basic_flat; + + min-height: 16px; + min-width: 16px; + border-radius: 0; + + &:hover:not(:active):not(:backdrop) { + background-clip: padding-box; + background-image: none; + background-color: transparentize(white, 0.7); + border-color: transparent; + box-shadow: none; + } + + &:disabled { @include button(undecorated); } + } + + > tabs > tab { + transition: $focus_transition; + min-height: 30px; + min-width: 30px; + padding: 3px 12px; + + color: $fg_color; + font-weight: normal; + + border-width: 1px; // for reorderable tabs + border-color: transparent; // + + &:hover { + color: $fg_color; + background-color: darken($dark_fill,4%); + + &.reorderable-page { + border-color: transparentize($borders_color, 0.7); + background-color: transparentize($bg_color, 0.8); + } + } + + &:not(:checked) { + outline-color: transparent; + } + + &:checked { + color: $fg_color; + &.reorderable-page { + border-color: transparentize($borders_color, 0.5); + background-color: transparentize($bg_color, 0.5); + + &:hover { background-color: transparentize($bg_color, 0.3); } + } + } + + // colors the button like the label, overridden otherwise + button.flat { + color: gtkalpha(currentColor, 0.3); + &:hover { color: $fg_color; } + + padding: 0; + margin-top: 4px; + margin-bottom: 4px; + // FIXME: generalize .small-button? + min-width: 20px; + min-height: 20px; + + &:last-child { + margin-left: 4px; + margin-right: -4px; + } + + &:first-child { + margin-left: -4px; + margin-right: 4px; + } + } + } + + &.top, + &.bottom { + > tabs { + padding-left: 0px; + padding-right: 0px; + + &:not(:only-child) { + margin-left: 1px; + margin-right: 1px; + + &:first-child { margin-left: 0px; } + &:last-child { margin-right: -1px; } + } + + > tab { + margin-left: 0px; + margin-right: 0px; + + &.reorderable-page { border-style: none solid; } + } + } + } + + &.left, + &.right { + > tabs { + padding-top: 0px; + padding-bottom: 0px; + + &:not(:only-child) { + margin-top: 0px; + margin-bottom: 0px; + + &:first-child { margin-top: 0px; } + &:last-child { margin-bottom: -1px; } + } + + > tab { + margin-top: 0px; + margin-bottom: 0px; + + &.reorderable-page { border-style: solid none; } + } + } + } + + &.top > tabs > tab { padding-bottom: 1px; } + &.bottom > tabs > tab { padding-top: 1px; } + } + + > stack:not(:only-child) { // the :not(:only-child) is for "hidden" notebooks + background-color: $notebook_base_color; + + &:backdrop { background-color: $notebook_base_color; } + } +} + + +/************** + * Scrollbars * + **************/ +scrollbar { + $_slider_min_length: 40px; + + background-color: $scrollbar_bg_color; + transition: 300ms $ease-out-quad; + + // scrollbar border + &.top { border-bottom: 1px solid $borders_color; } + &.bottom { border-top: 1px solid $borders_color; } + &.left { border-right: 1px solid $borders_color; } + &.right { border-left: 1px solid $borders_color; } + + > range > trough > slider { + min-width: 6px; + min-height: 6px; + margin: -1px; + border: 4px solid transparent; + border-radius: 8px; + background-clip: padding-box; + background-color: $scrollbar_slider_color; + + &:hover { background-color: $scrollbar_slider_hover_color; } + + &:hover:active { background-color: $scrollbar_slider_active_color; } + + &:disabled { background-color: transparent; } + } + + > range.fine-tune { + > trough > slider { + min-width: 4px; + min-height: 4px; + } + + &.horizontal > trough > slider { border-width: 5px 4px; } + &.vertical > trough > slider { border-width: 4px 5px; } + } + + &.overlay-indicator { + &:not(.dragging):not(.hovering) { + border-color: transparent; + opacity: 0.4; + background-color: transparent; + + > range > trough > slider { + margin: 0; + min-width: 3px; + min-height: 3px; + background-color: $fg_color; + border: 1px solid if($variant == 'light', white, black); + } + + &.horizontal { + > range > trough > slider { + margin: 0 2px; + min-width: $_slider_min_length; + } + } + + &.vertical { + > range > trough > slider { + margin: 2px 0; + min-height: $_slider_min_length; + } + } + } + + &.dragging, + &.hovering { opacity: 0.8; } + } + + &.horizontal > range > trough > slider { min-width: $_slider_min_length; } + &.vertical > range > trough > slider { min-height: $_slider_min_length; } +} + +treeview ~ scrollbar.vertical { + border-top: 1px solid $borders_color; + margin-top: -1px; +} + +/********** + * Switch * + **********/ +switch { + font-weight: bold; + font-size: smaller; + + // similar to the .scale + border: 1px solid $borders_color; + border-radius: 14px; + color: $fg_color; + background-color: $dark_fill; + transition: $focus_transition; + + @include focus-ring($offset: 0, $outer: true); + + headerbar & { background-color: darken($dark_fill,8%); } //3504 + + &:checked { + color: $selected_fg_color; + border-color: $switch_borders_color; + background-color: $switch_bg_color; + } + + &:disabled { + color: $insensitive_fg_color; + border-color: $borders_color; + background-color: $insensitive_bg_color; + text-shadow: none; + } + + > slider { + @include button(normal); + + margin: -1px; + min-width: 24px; + min-height: 24px; + border: 1px solid; + border-color: $borders_color; + border-radius: 50%; + transition: $button_transition; + } + + > image { color: transparent; } /* only show i / o for the accessible theme */ + + &:hover > slider { + @include button(hover); + } + + &:checked > slider { border: 1px solid $switch_borders_color; } + + &:disabled > slider { @include button(insensitive); } + + + row:selected & { + outline-color: $alt_focus_border_color; + + @if $variant == 'light' { + box-shadow: none; + border-color: $switch_borders_color; + + > slider { &:checked, & { border-color: $switch_borders_color; } } + } + } +} + + +/************************* + * Check and Radio items * + *************************/ +// draw regular check and radio items using our PNG assets +// all assets are rendered from assets.svg. never add pngs directly + + +//selection-mode +@each $check_state, $check_icon, $check_color, $check_background in + ('', 'none', 'transparent', $checkradio_bg_color), + (':hover', 'none', 'transparent', $checkradio_bg_color), + (':active', 'none', 'transparent', $checkradio_bg_color), + (':backdrop', 'none', 'transparent', '#{desaturate($checkradio_bg_color, 100%)}'), + (':checked', '-gtk-icontheme(\'object-select-symbolic\')', $osd_fg_color, $checkradio_bg_color), + (':checked:hover', '-gtk-icontheme(\'object-select-symbolic\')', $osd_fg_color, $checkradio_bg_color), + (':checked:active', '-gtk-icontheme(\'object-select-symbolic\')', $osd_fg_color, $checkradio_bg_color), + (':backdrop:checked', '-gtk-icontheme(\'object-select-symbolic\')', '#{transparentize($osd_fg_color, 0.2)}', '#{desaturate($checkradio_bg_color, 100%)}'), { + + .view.content-view.check#{$check_state}:not(list), + .content-view .tile check#{$check_state}:not(list) { + margin: 4px; + min-width: 32px; + min-height: 32px; + color: #{$check_color}; + background-color: #{$check_background}; + border-radius: 5px; + background-image: none; + transition: 200ms; + box-shadow: none; + border-width: 0; + -gtk-icon-source: #{$check_icon}; + -gtk-icon-shadow: none; + } +} + +checkbutton { + border-spacing: 4px; + border-radius: $button_radius; + transition: $focus_transition; + + @include focus-ring(); + + &.text-button { + // this is for a nice focus on check and radios text + padding: 4px; + } +} + +check, +radio { + min-height: 14px; + min-width: 14px; + border: 1px solid; + -gtk-icon-source: none; + + & { + // for unchecked + $_c: if($variant=='light', white, $bg_color); + + @each $state, $t in ("", "normal"), + (":hover", "hover"), + (":active", "active"), + (":disabled", "insensitive") { + &#{$state} { + @include check($t, $_c); + } + } + } + + & { + // for checked + @each $t in (':checked'), (':indeterminate') { + &#{$t} { + @each $state, $t in ("", "normal"), + (":hover", "hover"), + (":active", "active"), + (":disabled", "insensitive") { + &#{$state} { + @include check($t, $checkradio_bg_color, $checkradio_fg_color, $checked: true); + } + } + } + } + } + + @if $variant == 'light' { + // the borders of the light variant versions of checks and radios are too similar in luminosity to the selected background + // color, hence we need special casing. + row:selected & { border-color: $checkradio_borders_color; } + } + + .osd & { + @include button(osd); + + &:hover { @include button(osd); } + &:active { @include button(osd-active); } + &:disabled { @include button(osd-insensitive); } + } +} + +%check, +check { + border-radius: 3px; + -gtk-icon-size: 14px; + + &:checked { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/check-symbolic.symbolic.png")), + -gtk-recolor(url("assets/check@2-symbolic.symbolic.png"))); } + + &:indeterminate { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/dash-symbolic.symbolic.png")), + -gtk-recolor(url("assets/dash@2-symbolic.symbolic.png"))); } +} + +%radio, +radio { + border-radius: 100%; + -gtk-icon-size: 14px; + + &:checked { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/bullet-symbolic.symbolic.png")), + -gtk-recolor(url("assets/bullet@2-symbolic.symbolic.png"))); } + + &:indeterminate { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/dash-symbolic.symbolic.png")), + -gtk-recolor(url("assets/dash@2-symbolic.symbolic.png"))); } +} + +treeview.view check, +treeview.view radio { + &:selected { + &:focus, & { + color: $checkradio_fg_color; + + @if $variant == 'light' { border-color: $selected_borders_color; } + } + } +} + +treeview.view radio:selected { &:focus, & { @extend %radio; }} // This is a workaround + + +/************ + * GtkScale * + ************/ +%scale_trough { + border: 1px solid $borders_color; + border-radius: 3px; + background-color: gtkshade($core_color_b, 0.90); + + headerbar & { background-color: darken($dark_fill,8%); } //3504 + + &:disabled { + background-color: $insensitive_bg_color; + border-color: $insensitive_borders_color; + } + + // ...on selected list rows + row:selected & { + &:disabled, & { + outline-color: $alt_focus_border_color; + border-color: $selected_borders_color; + } + } + + // OSD + .osd & { + border-color: $osd_borders_color; + background-color: transparentize($osd_borders_color, 0.2); + + &:disabled { background-color: $osd_insensitive_bg_color; } + } +} + +%scale_highlight { + border: 1px solid $borders_color; // Yaru change: use our own palette + border-radius: 3px; + background-color: gtkshade($core_color_a, 0.90); + + &:disabled { + background-color: transparent; + border-color: transparent; + } + + // ...on selected list rows + row:selected & { &:disabled, & { border-color: $selected_borders_color; }} + + // OSD + .osd & { + border-color: $osd_borders_color; + + &:disabled { border-color: transparent; } + } +} + +scale { + // sizing + $_marks_length: 6px; + $_marks_distance: 6px; + + min-height: 5px; + min-width: 5px; + padding: 4px; + + @include focus-ring("> trough", $offset: 10px); + + // those are inside the trough node, I need them to show their own border over the trough one, so negative margin + > trough { + transition: $focus_transition; + + > fill, + > highlight { margin: -1px; } + + // the slider is inside the trough, so to have make it bigger there's a negative margin + + > slider { + min-height: 12px; + min-width: 12px; + margin: -5px; + padding: 0px; + border-radius: 3px; + } + } + + + &.horizontal > trough > slider { min-width: 25px} + &.vertical > trough > slider { min-height: 25px} + + // click-and-hold the slider to activate + &.fine-tune { + &.horizontal { + padding-top: 9px; + padding-bottom: 9px; + min-height: 16px; + } + + &.vertical { + padding-left: 9px; + padding-right: 9px; + min-width: 16px; + } + + // to make the trough grow in fine-tune mode + > trough > slider { margin: -6px; } + + > trough > fill, + > trough > highlight, + > trough { + border-radius: 5px; + } + } + + // the backing bit + > trough { + @extend %scale_trough; + } + + // the colored part of the backing bit + > trough > highlight { @extend %scale_highlight; } + + // this is another differently styled part of the backing bit, the most relevant use case is for example + // in media player to indicate how much video stream as been cached + > trough > fill { + @extend %scale_trough; + + + &:disabled { + border-color: transparent; + background-color: transparent; + } + + // OSD + .osd & { + background-color: mix($osd_fg_color, $osd_borders_color, 25%); + + &:disabled { + border-color: transparent; + background-color: transparent; + } + } + } + + &.horizontal > slider { + min-width: 25px; + } + + &.vertical > slider { + min-height: 25px; + } + + > trough > slider { + + @include button(normal); + + border-width: 1px; + border-style: solid; + border-radius: 3px; + transition: $button_transition; + transition-property: background, border, box-shadow; + + &:hover { @include button(hover); } + + &:active { border-color: $progress_bg_color; } // Yaru change: use our own palette + + &:disabled { @include button(insensitive); } + + // ...on selected list rows + row:selected & { &:disabled, & { border-color: $selected_borders_color; } } + + // OSD + .osd & { + @include button(osd); + border-color: darken($osd_borders_color, 3%); + background-color: opacify($osd_bg_color, 1); // solid background needed here + + &:hover { + @include button(osd-hover); + background-color: opacify($osd_bg_color, 1); // solid background needed here + } + + &:active { + @include button(osd-active); + background-color: opacify($osd_bg_color, 1); // solid background needed here + } + + &:disabled { + @include button(osd-insensitive); + background-color: opacify($osd_bg_color, 1); // solid background needed here + } + } + } + + > value { + color: gtkalpha(currentColor, 0.55); + font-feature-settings: "tnum"; + } + + &.horizontal { + > marks { + color: gtkalpha(currentColor, 0.55); + &.top { margin-bottom: $_marks_distance; } + &.bottom { margin-top: $_marks_distance; } + + indicator { + background-color: currentColor; + min-height: $_marks_length; + min-width: 1px; + } + } + + > value.left { margin-right: 9px; } + > value.right { margin-left: 9px; } + + &.fine-tune >marks { + &.top { margin-top: 3px; } + &.bottom { margin-bottom: 3px; } + + indicator { min-height: ($_marks_length - 3px); } + } + } + + &.vertical { + > marks { + color: gtkalpha(currentColor, 0.55); + &.top { margin-right: $_marks_distance; } + &.bottom { margin-left: $_marks_distance; } + + indicator { + background-color: currentColor; + min-height: 1px; + min-width: $_marks_length; + } + } + + > value.top { margin-bottom: 9px; } + > value.bottom { margin-top: 9px; } + + &.fine-tune >marks { + &.top { margin-left: 3px; } + &.bottom { margin-right: 3px; } + + indicator { min-height: ($_marks_length - 3px); } + } + } + + // *WARNING* scale with marks madness following + + // FIXME: OSD and selected list rows missing, I don't feel like adding the other 144 assets needed for those... + $suffix: if($variant == 'light', '', '-dark'); + + @each $dir_class, $dir_infix in ('horizontal', 'horz'), + ('vertical', 'vert') { + @each $marks_infix, $marks_class in ('scale-has-marks-above', 'marks-before:not(.marks-after)'), + ('scale-has-marks-below', 'marks-after:not(.marks-before)') { + @each $state, $state_infix in ('', ''), + (':hover', '-hover'), + (':active', '-active'), + (':disabled', '-insensitive') { + &.#{$dir_class}.#{$marks_class} { + + > trough > slider { + &#{$state} { + // an asymmetric slider asset is used here, so the margins are uneven, the smaller + // margin is set on the point side. + margin: -10px; + $_scale_asset: 'assets/slider-#{$dir_infix}-#{$marks_infix}#{$state_infix}#{$suffix}'; + border-style: none; + border-radius: 0; + + background-color: transparent; + background-image: -gtk-scaled(url('#{$_scale_asset}.png'), url('#{$_scale_asset}@2.png')); + + $_scale_slider_bg_pos: bottom; + + @if $dir_class == 'horizontal' { + min-height: 26px; + min-width: 22px; + + @if $marks_infix == 'scale-has-marks-above' { + margin-top: -14px; + + $_scale_slider_bg_pos: top; + } + + @else { margin-bottom: -14px; } + } + + @else { + min-height: 22px; + min-width: 26px; + + @if $marks_infix == 'scale-has-marks-above' { + margin-left: -14px; + + $_scale_slider_bg_pos: left bottom; + } + + @else { + margin-right: -14px; + + $_scale_slider_bg_pos: right bottom; + } + } + + background-position: $_scale_slider_bg_pos; + background-repeat: no-repeat; + box-shadow: none; + } + } + + &.fine-tune > trough > slider { + @if $dir_class == 'horizontal' { + // bigger negative margins to make the trough grow here as well + margin: -7px -10px; + + @if $marks_infix == 'scale-has-marks-above' { margin-top: -11px; } + + @else { margin-bottom: -11px; } + } + + @else { + margin: -10px -7px; + + @if $marks_infix == 'scale-has-marks-above' { margin-left: -11px; } + + @else { margin-right: -11px; } + } + } + } + } + } + } + + &.color { + min-height: 0; + min-width: 0; + + > trough { + background-image: image($borders_color); + background-repeat: no-repeat; + } + + &.horizontal { + padding: 0 0 15px 0; + + > trough { + padding-bottom: 4px; + background-position: 0 -3px; + border-top-left-radius: 0; + border-top-right-radius: 0; + } + + > trough > slider { + &:dir(ltr), &:dir(rtl) { // specificity bump + &:hover, &:backdrop, &:disabled, &:backdrop:disabled, & { + margin-bottom: -15px; + margin-top: 6px; + } + } + } + } + + &.vertical { + &:dir(ltr) { + padding: 0 0 0 15px; + + > trough { + padding-left: 4px; + background-position: 3px 0; + border-bottom-right-radius: 0; + border-top-right-radius: 0; + } + + > trough > slider { + &:hover, &:backdrop, &:disabled, &:backdrop:disabled, & { + margin-left: -15px; + margin-right: 6px; + } + } + } + + &:dir(rtl) { + padding: 0 15px 0 0; + + > trough { + padding-right: 4px; + background-position: -3px 0; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + } + + > trough > slider { + &:hover, &:backdrop, &:disabled, &:backdrop:disabled, & { + margin-right: -15px; + margin-left: 6px; + } + } + } + } + + &.fine-tune { + &.horizontal { + &:dir(ltr), &:dir(rtl) { // specificity bump + padding: 0 0 12px 0; + + > trough { + padding-bottom: 7px; + background-position: 0 -6px; + } + + > trough > slider { + margin-bottom: -15px; + margin-top: 6px; + } + } + } + + &.vertical { + &:dir(ltr) { + padding: 0 0 0 12px; + + > trough { + padding-left: 7px; + background-position: 6px 0; + } + + > trough > slider { + margin-left: -15px; + margin-right: 6px; + } + } + + &:dir(rtl) { + padding: 0 12px 0 0; + + > trough { + padding-right: 7px; + background-position: -6px 0; + } + + > trough > slider { + margin-right: -15px; + margin-left: 6px; + } + } + } + } + } +} + + +/***************** + * Progress bars * + *****************/ +progressbar { + // sizing + &.horizontal { + > trough { + min-width: 150px; + &, > progress { min-height: 16px; } + } + } + + &.vertical { + > trough { + min-height: 80px; + &, > progress { min-width: 16px; } + } + } + + &.horizontal > trough > progress { margin: 0 -1px; + background-image: + repeating-linear-gradient(135deg, + gtkalpha($progressbar_pattern_color, 0.0), + gtkalpha($progressbar_pattern_color, 0.0) 12px, + gtkalpha($progressbar_pattern_color, 0.5) 12px, + gtkalpha($progressbar_pattern_color, 0.5) 24px), + linear-gradient(to bottom, + gtkalpha($progressbar_gradient_a, 0.7), + gtkalpha($progressbar_gradient_b, 0.7) 50%, + gtkalpha($progressbar_gradient_c, 0.7) 50%, + gtkalpha($progressbar_gradient_d, 0.7));} // the progress node is positioned after the trough border + &.vertical > trough > progress { margin: -1px 0; + background-image: + repeating-linear-gradient(45deg, + gtkalpha($progressbar_pattern_color, 0.0), + gtkalpha($progressbar_pattern_color, 0.0) 12px, + gtkalpha($progressbar_pattern_color, 0.5) 12px, + gtkalpha($progressbar_pattern_color, 0.5) 24px), + linear-gradient(to right, + gtkalpha($progressbar_gradient_a, 0.7), + gtkalpha($progressbar_gradient_b, 0.7) 50%, + gtkalpha($progressbar_gradient_c, 0.7) 50%, + gtkalpha($progressbar_gradient_d, 0.7)); } // this moves it over it. + + + // FIXME: insensitive state missing and some other state should be set probably + font-size: smaller; + color: transparentize($fg_color, 0.6); + font-feature-settings: "tnum"; + + > trough { @extend %scale_trough; } + + > trough > progress { + @extend %scale_highlight; /* share most of scales' */ + /* override insensitive that is specific to progress */ + &:disabled { + background-color: $insensitive_fg_color; + border-color: $insensitive_fg_color; + } + + border-radius: 1.5px; + $_progress-radius: 5px; + &.left { + border-top-left-radius: $_progress-radius; + border-bottom-left-radius: $_progress-radius; + } + + &.right { + border-top-right-radius: $_progress-radius; + border-bottom-right-radius: $_progress-radius; + } + + &.top { + border-top-right-radius: $_progress-radius; + border-top-left-radius: $_progress-radius; + } + + &.bottom { + border-bottom-right-radius: $_progress-radius; + border-bottom-left-radius: $_progress-radius; + } + } + + &.osd { // progressbar.osd used for epiphany page loading progress + min-width: 3px; + min-height: 3px; + background-color: transparent; + + > trough { + border-style: none; + border-radius: 0; + background-color: transparent; + box-shadow: none; + + > progress { + border-style: none; + border-radius: 0; + } + } + } + + > trough.empty > progress { all: unset; } // makes the progress indicator disappear, when the fraction is 0 +} + +/************* + * Level Bar * + *************/ + +$_levelbar_size: 9px; +$_levelbar_border_radius: 5px; + +levelbar { + &.horizontal { + trough > block { + min-height: $_levelbar_size; + border-radius: $_levelbar_border_radius; + + &:dir(rtl) { + border-radius: 0 $_levelbar_border_radius $_levelbar_border_radius 0; + } + + &:dir(ltr) { + border-radius: $_levelbar_border_radius 0 0 $_levelbar_border_radius; + } + + &.empty,&.full { + border-radius: $_levelbar_border_radius; + } + } + + // segmented level bar + &.discrete { + trough > block { + min-height: 2px; + margin: 1px; + min-width: 24px; + border-radius:0; + &:first-child {border-radius: 2px 0 0 2px;} + &:last-child { + border-radius: 0 2px 2px 0; + } + } + } + } + + &.vertical { + trough > block { + min-width: $_levelbar_size; + border-radius: $_levelbar_border_radius; + } + + &.discrete > trough > block { + min-width: $_levelbar_size - 7px; + margin: 1px 0; + min-height: 32px; + } + } + + > trough { + padding: 0; + } + + // level bar colours + > trough > block { + border: 1px solid; + + &.low { + border-color: $warning_color; + background-color: $warning_color; + } + + &.high, + &:not(.empty) { + border-color: $progress_bg_color; // Yaru change: use our own palette + background-color: $progress_bg_color; // Yaru change: use our own palette + } + + &.full { + border-color: $success_color; + background-color: $success_color; + } + + &.empty { + background-color: $dark_fill; // Yaru change: use our own palette + border-color: $dark_fill; // Yaru change: use our own palette + } + } +} + + +/**************** + * Print dialog * +*****************/ +window.dialog.print { + drawing { + color: $fg_color; + background: none; + border: none; + padding: 0; + + paper { + background: white; + color: #2e3436; + border: 1px solid $borders_color; + } + + } + + .dialog-action-box { margin: 12px; } +} + + +/********** + * Frames * + **********/ +frame, +.frame { + border: 1px solid $borders_color; +} + +frame { + border-radius: $window_radius; + + > label { + margin: 4px; + } +} + +actionbar > revealer > box { + padding: 6px; + border-spacing: 6px; + border-top: 1px solid $borders_color; +} + +scrolledwindow { + // This is used when content is touch-dragged past boundaries. + // draws a box on top of the content, the size changes programmatically. + > overshoot { + &.top { + @include overshoot(top); + } + + &.bottom { + @include overshoot(bottom); + } + + &.left { + @include overshoot(left); + } + + &.right { + @include overshoot(right); + } + } + + > junction { // the small square between two scrollbars + // Only color the top-left (or top right in RTL) pixel, to visually connect + // the borders of the two scrollbars. + + background: $borders_color, + linear-gradient(to bottom, transparent 1px, $scrollbar_bg_color 1px), + linear-gradient(to right, transparent 1px, $scrollbar_bg_color 1px); + + &:dir(rtl) { + background: $borders_color, + linear-gradient(to bottom, transparent 1px, $scrollbar_bg_color 1px), + linear-gradient(to left, transparent 1px, $scrollbar_bg_color 1px); + } + } +} + +//vbox and hbox separators +separator { + background: lighten($borders_color, 5%); + min-width: 1px; + min-height: 1px; +} + + +/********* + * Lists * + *********/ +listview, +list { + color: $text_color; + background-color: $base_color; + border-color: $borders_color; + + &:backdrop { + color: $backdrop_text_color; + background-color: $backdrop_base_color; + border-color: $backdrop_borders_color; + } + + > row { padding: 2px; } + > row.expander { padding: 0px; } + > row.expander .row-header { padding: 2px; } + + &.horizontal row.separator, + &.separators.horizontal > row:not(.separator) { + border-left: 1px solid $_treeview_borders_color; + } + &:not(.horizontal) row.separator, + &.separators:not(.horizontal) > row:not(.separator) { + border-bottom: 1px solid $_treeview_borders_color; + } +} + +row { + @include focus-ring(); + + &.activatable { + &.has-open-popup, // this is for indicathing which row generated a popover see https://bugzilla.gnome.org/show_bug.cgi?id=754411 + + &:hover { background-color: if(variant == light, transparentize($fg_color, 0.9), transparentize($fg_color, 0.95)); } + + &:active { box-shadow: inset 0 2px 2px -2px transparentize(black, 0.8); } + + &:selected { + &:active { box-shadow: inset 0 2px 3px -1px transparentize(black, 0.5); } + + &.has-open-popup, + &:hover { background-color: mix($fg_color, $selected_bg_color, 10%); } + } + } + + &:selected { + outline-color: $alt_focus_border_color; + + @extend %selected_items; + } +} + +columnview { + // move padding to child cells + > listview > row { + padding: 0; + + // align horizontal sizing with header buttons + > cell { + padding: 8px 6px; + + &:not(:first-child) { + border-left: 1px solid transparent; + } + } + } + + // make column separators visible when :show-column-separators is true + &.column-separators > listview > row > cell { + border-left-color: $_treeview_borders_color; + } + + // shrink vertically for .data-table + &.data-table > listview > row > cell { + padding-top: 2px; + padding-bottom: 2px; + } +} + +treeexpander { + border-spacing: 4px; +} + +/******************************************************** + * Data Tables * + * treeview like tables with individual focusable cells * + * https://gitlab.gnome.org/GNOME/gtk/-/issues/2929 * + ********************************************************/ + +columnview row:not(:selected) cell editablelabel:not(.editing):focus-within { + outline: 2px solid $focus_border_color; +} + +columnview row:not(:selected) cell editablelabel.editing:focus-within { + outline: 2px solid $selected_bg_color; +} + +columnview row:not(:selected) cell editablelabel.editing text selection { + color: $selected_fg_color; + background-color: $selected_bg_color; +} + +/******************************************************* + * Rich Lists * + * Large list usually containing lots of widgets * + * https://gitlab.gnome.org/GNOME/gtk/-/issues/3073 * + *******************************************************/ + + +.rich-list { /* rich lists usually containing other widgets than just labels/text */ + & > row { + padding: 8px 12px; + min-height: 32px; /* should be tall even when only containing a label */ + + & > box { + border-spacing: 12px; + } + } +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + @extend %osd; + + padding: 10px; + border-spacing: 10px; + border-radius: 0 0 5px 5px; + background-color: $osd_bg_color; + background-image: linear-gradient(to bottom, transparentize(black, 0.8), + transparent 2px); + background-clip: padding-box; + + button { @extend %osd_button; } + + border { border: none; } +} + + +/************* + * Expanders * + *************/ +expander { + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme('pan-end-symbolic'); + &:dir(rtl) { -gtk-icon-source: -gtk-icontheme('pan-end-symbolic-rtl'); } + + &:disabled { color: $insensitive_fg_color; } + + &:checked { -gtk-icon-source: -gtk-icontheme('pan-down-symbolic'); } +} + +expander-widget { + @include focus-ring("> box > title"); + + > box > title { + transition: $focus_transition; + border-radius: $button_radius; + + &:hover > expander { + color: lighten($fg_color,30%); //only lightens the icon + } + } +} + +.navigation-sidebar, +placessidebar, +stackswitcher, +expander-widget { + &:not(decoration):not(window):drop(active):focus, + &:not(decoration):not(window):drop(active) { + box-shadow: none; + } +} + + +/************ + * Calendar * + ***********/ +calendar { + color: $text_color; + border: 1px solid $borders_color; + + > header { + border-bottom: 1px solid $borders_color; + + > button { + border: none; + box-shadow: none; + background: none; + border-radius: 0; + } + > button:backdrop { + background: none; + } + } + + > grid { + > label.day-name { + } + + > label.week-number { + } + + > label.today { + box-shadow: inset 0px -2px $borders_color; + + &:selected { + box-shadow: none; + } + } + + > label:focus { + outline-color: $focus_border_color; + outline-offset: -2px; + outline-width: 2px; + outline-style: solid; + } + + > label.day-number { + padding: 4px; + + &:selected{ + @extend %selected_items; + border-radius: 3px; + } + } + + > label.day-number.other-month { + color: gtkalpha(currentColor, 0.3); + } + } + +} + + +/*********** + * Dialogs * + ***********/ +window.dialog.message { // Message Dialog styling + .titlebar { + min-height: 20px; + background-image: none; + background-color: $bg_color; + border-style: none; + border-top-left-radius: 7px; + border-top-right-radius: 7px; + } + + box.dialog-vbox.vertical { + border-spacing: 10px; + } + + & label.title { + font-weight: 800; + font-size: 15pt; + } + + &.csd { // rounded bottom border styling for csd version + &.background { + // bigger radius for better antialiasing + border-bottom-left-radius: $window_radius+1; + border-bottom-right-radius: $window_radius+1; + } + + .dialog-action-area button { + padding: 10px 14px; // labels are not vertically centered on message dialog, this is a workaround + border-radius: 0; + border-left-style: solid; + border-right-style: none; + border-bottom-style: none; + + &:first-child{ + border-left-style: none; + border-bottom-left-radius: 7px; + } + + &:last-child { + border-bottom-right-radius: 7px; + } + } + } +} + +filechooser { + .dialog-action-box { + border-top: 1px solid $borders_color; + } + + #pathbarbox { border-bottom: 1px solid $bg_color; } +} + + +filechooserbutton>button>box { + border-spacing: 6px; +} +filechooserbutton:drop(active) { + box-shadow: none; + border-color: transparent; +} + + +/*********** + * Sidebar * + ***********/ +.sidebar { + background-color: mix($bg_color, $base_color, 50%); + + &:not(separator) { + @at-root %sidebar_left, + &:dir(ltr), + &.left, + &.left:dir(rtl) { + border-right: 1px solid $borders_color; + border-left-style: none; + } + + @at-root %sidebar_right, + &:dir(rtl), + &.right { + border-left: 1px solid $borders_color; + border-right-style: none; + } + } + + listview.view, + list { background-color: transparent; } + + paned & { &.left, &.right, &.left:dir(rtl), &:dir(rtl), &:dir(ltr), & { border-style: none; }} +} + +stacksidebar { + //not a regular list + list.separators:not(.horizontal) > row:not(.separator) { + border-bottom: none; + } + row { + padding: 10px 4px; + + > label { + padding-left: 6px; + padding-right: 6px; + } + + &.needs-attention > label { + @extend %needs_attention; + background-size: 6px 6px, 0 0; + } + &:selected { + background-color: $menu_selected_color; + border-radius: $menu_radius; + color: $fg_color; + } + &:selected:hover:dir(ltr), &:selected:hover:dir(rtl) { + background-color: darken($menu_selected_color,5%); + } + &:focus:focus-visible { + outline-width: 0; + background-color: $selected_bg_color; + color: $selected_fg_color; + } + &.activatable:active, &.activatable:selected:active { + box-shadow: none; // #3413 + } + } +} + +separator.sidebar { + background-color: $borders_color; +} + + +/********************** + * Navigation Sidebar * + **********************/ + +.navigation-sidebar { + padding: $menu-margin 0; //only vertical padding. horizontal row size would clip + + > separator { + margin: $menu-margin; + } + + > row { + min-height: 36px; + padding: 0 8px; + border-radius: $menu-margin; + margin: 0 $menu-margin 2px; + + &:hover, + &:focus-visible:focus-within { + background-color: darken($menu_selected_color, 5%); + } + + &:selected { + background-color: $menu_selected_color; + color: inherit; + + &:hover { + background-color: darken($menu_selected_color,5%); + } + + &:focus-visible:focus-within { + outline-width: 0; + color: $selected_fg_color; + background-color: $selected_bg_color; + &:hover { background-color: darken($selected_bg_color,10%); } + } + } + + &:disabled { color: $insensitive_fg_color; } + } +} + + +/**************** + * File chooser * + ****************/ + +$_placesidebar_icons_opacity: 0.7; + +row image.sidebar-icon { opacity: $_placesidebar_icons_opacity; } // dim the sidebar icons + // see bug #786613 for details + // on this oddity + +/* this should be more generic, only using .navigation-sidebar + https://gitlab.gnome.org/GNOME/gtk/-/issues/2929 +*/ + +placessidebar { + .navigation-sidebar > row { + // Needs overriding of the `.navigation-sidebar > row` padding + padding: 0; + + // Using margins/padding directly in the SidebarRow + // will make the animation of the new bookmark row jump + > revealer { padding: 0 14px; } + + image.sidebar-icon { + &:dir(ltr) { padding-right: 8px; } + &:dir(rtl) { padding-left: 8px; } + } + + label.sidebar-label { + &:dir(ltr) { padding-right: 2px; } + &:dir(rtl) { padding-left: 2px; } + } + + @at-root button.sidebar-button { + @extend %button_basic_flat; + + @extend %button_selected_flat; + min-height: 26px; + min-width: 26px; + margin-top: 3px; + margin-bottom: 3px; + padding: 0; + border-radius: 100%; + } + + // in the sidebar case it makes no sense to click the selected row + &:selected:active { box-shadow: none; } + + &.sidebar-placeholder-row { + padding: 0 8px; + min-height: 2px; + background-image: image($drop_target_color); + background-clip: content-box; + } + + &.sidebar-new-bookmark-row { color: $selected_bg_color; } + + &:drop(active):not(:disabled) { + color: $drop_target_color; + box-shadow: inset 0 1px $drop_target_color, + inset 0 -1px $drop_target_color; + + &:selected { + color: $selected_fg_color; + background-color: $drop_target_color; + } + } + } +} + +placesview { + .server-list-button > image { + transition: 200ms $ease-out-quad; + -gtk-icon-transform: rotate(0turn); + } + + .server-list-button:checked > image { + transition: 200ms $ease-out-quad; + -gtk-icon-transform: rotate(-0.5turn); + } + + row.activatable:hover { } + + > actionbar > revealer > box > box{ + border-spacing: 6px; + } +} + + +/********* + * Paned * + *********/ +paned { + > separator { + min-width: 1px; + min-height: 1px; + -gtk-icon-source: none; // defeats the ugly default handle decoration + border-style: none; // just to be sure + background-color: transparent; + // workaround, using background instead of a border since the border will get rendered twice (?) + background-image: image($borders_color); + background-size: 1px 1px; + + &:selected { background-image: image($selected_bg_color); } // FIXME is this needed? + + &.wide { + min-width: 5px; + min-height: 5px; + background-color: $bg_color; + background-image: image($borders_color), image($borders_color); + background-size: 1px 1px, 1px 1px; + } + } + + &.horizontal > separator { + background-repeat: repeat-y; + + &:dir(ltr) { + margin: 0 -8px 0 0; + padding: 0 8px 0 0; + background-position: left; + } + &:dir(rtl) { + margin: 0 0 0 -8px; + padding: 0 0 0 8px; + background-position: right; + } + + &.wide { + margin: 0; + padding: 0; + background-repeat: repeat-y, repeat-y; + background-position: left, right; + } + } + + &.vertical > separator { + margin: 0 0 -8px 0; + padding: 0 0 8px 0; + background-repeat: repeat-x; + background-position: top; + + &.wide { + margin: 0; + padding: 0; + background-repeat: repeat-x, repeat-x; + background-position: bottom, top; + } + } +} + + +/************** + * GtkVideo * + **************/ + +video { + & image.osd { + min-width: 64px; + min-height: 64px; + border-radius: 32px; + } + background: black; +} + +/************ + * Tooltips * + ************/ +tooltip { + &.background { + // background-color needs to be set this way otherwise it gets drawn twice + // see https://bugzilla.gnome.org/show_bug.cgi?id=736155 for details. + background-color: transparentize(black, 0.2); + background-clip: padding-box; + border: 1px solid $tooltip_borders_color; // this subtle border is meant to + // not make the tooltip melt with + // very dark backgrounds + color: white; + } + + padding: 6px 10px; + border-radius: $window_radius; + box-shadow: none; // otherwise it gets inherited by windowframe.csd + + > box { + border-spacing: 6px; + } +} + + +/***************** + * Color Chooser * + *****************/ +colorswatch { + // This widget is made of two boxes one on top of the other, the lower box is colorswatch {} the other one + // is colorswatch overlay {}, colorswatch has the programmatically set background, so most of the style is + // applied to the overlay box. + + transition: $focus_transition; + + @include focus-ring($width: 4px, $offset: -2px); + + &:drop(active), & { border-style: none; } // FIXME: implement a proper drop(active) state + + $_colorswatch_radius: 5px; + + // base color corners rounding + // to avoid the artifacts caused by rounded corner anti-aliasing the base color + // sports a bigger radius. + // nth-child is needed by the custom color strip. + + &.top { + border-top-left-radius: $_colorswatch_radius + 0.5px; + border-top-right-radius: $_colorswatch_radius + 0.5px; + + > overlay { + border-top-left-radius: $_colorswatch_radius; + border-top-right-radius: $_colorswatch_radius; + } + } + + &.bottom { + border-bottom-left-radius: $_colorswatch_radius + 0.5px; + border-bottom-right-radius: $_colorswatch_radius + 0.5px; + + > overlay { + border-bottom-left-radius: $_colorswatch_radius; + border-bottom-right-radius: $_colorswatch_radius; + } + } + + &.left, + &:first-child:not(.top) { + border-top-left-radius: $_colorswatch_radius + 0.5px; + border-bottom-left-radius: $_colorswatch_radius + 0.5px; + + > overlay { + border-top-left-radius: $_colorswatch_radius; + border-bottom-left-radius: $_colorswatch_radius; + } + } + + &.right, + &:last-child:not(.bottom) { + border-top-right-radius: $_colorswatch_radius + 0.5px; + border-bottom-right-radius: $_colorswatch_radius + 0.5px; + + > overlay { + border-top-right-radius: $_colorswatch_radius; + border-bottom-right-radius: $_colorswatch_radius; + } + } + + &.dark { + > overlay { + color: white; + } + + &.activatable:hover > overlay { + border-color: if($variant == 'light', transparentize(black, 0.2), $borders_color); + } + } + + &.light { + > overlay { + color: black; + } + + &.activatable:hover > overlay { + border-color: if($variant == 'light', transparentize(black, 0.5), $borders_color); + } + } + + &:drop(active) { + box-shadow: none; + + &.light > overlay { + border-color: $drop_target_color; + box-shadow: inset 0 0 0 2px if($variant == 'light', darken($drop_target_color, 7%), $borders_color), + inset 0 0 0 1px $drop_target_color; + } + + &.dark > overlay { + border-color: $drop_target_color; + box-shadow: inset 0 0 0 2px if($variant == 'light', transparentize(black, 0.7), $borders_color), + inset 0 0 0 1px $drop_target_color; + } + } + + > overlay { + border: 1px solid if($variant == 'light', transparentize(black, 0.7), $borders_color); + } + + &.activatable:hover > overlay { + box-shadow: inset 0 1px transparentize(white, 0.6), + inset 0 -1px transparentize(black, 0.8); + } + + &#add-color-button { + border-radius: $_colorswatch_radius 0 0 $_colorswatch_radius; + + &:only-child { border-radius: $_colorswatch_radius; } + + > overlay { + @include button(normal); + } + + &.activatable:hover > overlay { + @include button(hover); + } + } + + &:disabled { + opacity: 0.5; + + > overlay { + border-color: transparentize(black, 0.4); + box-shadow: none; + } + } + + row:selected & { box-shadow: 0 0 0 2px $selected_fg_color; } + + &#editor-color-sample { + border-radius: 4px; + + > overlay { border-radius: 4.5px; } + } +} + +plane { + transition: $focus_transition; + + @include focus-ring($offset: 2px, $outer: true); +} + +// colorscale popup +colorchooser .popover.osd { border-radius: 5px; } + +/******** + * Misc * + ********/ +.content-view { + background-color: darken($bg_color,7%); + + &:hover { -gtk-icon-filter: brightness(1.2); } + + .tile { + margin: 2px; + background-color: if($variant=='light', transparent, black); + border-radius: 0; + padding: 0; + + &:active, &:selected { background-color: if($variant=='light', transparent, $selected_bg_color); } + &:disabled { background-color: if($variant=='light', transparent, $insensitive_bg_color); } +} + + > rubberband { @extend rubberband; } + +} + +.scale-popup { + .osd & { @extend %osd; } + + .osd & button.flat { //FIXME: quick hack, redo properly + border-style: none; + border-radius: 5px; + } + + button { // +/- buttons on GtkVolumeButton popup + &:hover { + @extend %undecorated_button; + background-color: transparentize($fg_color,0.9); + border-radius: 5px; + } + } +} + + +/********************** + * Window Decorations * + *********************/ +window { + // lamefun trick to get rounded borders regardless of CSD use + border-width: 0px; + + // this needs to be transparent + // see bug #722563 + $_wm_border: if($variant=='light', transparentize(black, 0.77), transparentize($borders_color, 0.1)); + $_wm_border_backdrop: if($variant=='light', transparentize(black, 0.82), transparentize($borders_color, 0.1)); + + &.csd { + box-shadow: 1px 1px 0px $fg_color,-1px 1px 0px $fg_color, 1px -1px 0px $fg_color, -1px -1px 0px $fg_color; + //doing borders with box-shadow + margin: 0px; + border-radius: $window_radius $window_radius 0 0; + &:backdrop { + // the transparent shadow here is to enforce that the shadow extents don't + // change when we go to backdrop, to prevent jumping windows. + // The biggest shadow should be in the same order then in the active state + // or the jumping will happen during the transition. + + transition: $backdrop_transition; + } + + &.popup { + border-radius: $menu_radius; + box-shadow: 0 1px 2px transparentize(black, 0.8), + 0 0 0 1px transparentize($_wm_border, 0.1); + } + + &.dialog.message { + border-radius: $window_radius; + box-shadow: 0 1px 2px transparentize(black, 0.8), + 0 0 0 1px transparentize($_wm_border, 0.1); + } + + &.solid-csd { + margin: 0; + padding: 0; + border: solid 1px $borders_color; + border-radius: 0; + box-shadow: inset 0 0 0 3px $headerbar_bg_color, inset 0 1px $top_hilight; + + &:backdrop { box-shadow: inset 0 0 0 3px $backdrop_bg_color, inset 0 1px $top_hilight; } + } + } + + &.maximized, + &.fullscreen, + &.tiled, + &.tiled-top, + &.tiled-left, + &.tiled-right, + &.tiled-bottom { border-radius: 0; } + + &.popup { box-shadow: none; } + + // server-side decorations as used by mutter + &.ssd { box-shadow: 0 0 0 1px $_wm_border; } //just doing borders, wm draws actual shadows + +} + +tooltip.csd { + border-radius: 5px; + box-shadow: none; +} + +// catch all extend :) + +%selected_items { + background-color: $selected_bg_color; + + @at-root %nobg_selected_items, & { + color: $selected_fg_color; + + @at-root %selected_items_disabled, + &:disabled { color: mix($selected_fg_color, $selected_bg_color, 50%); } + + } +} + +.monospace { font-family: monospace; } + + +/********************** + * Touch Copy & Paste * + *********************/ +//touch selection handlebars for the Popover.osd above +cursor-handle { + background-color: transparent; + background-image: none; + box-shadow: none; + border-style: none; + min-width: 20px; + min-height: 24px; + padding-left: 20px; + padding-right: 20px; + padding-top: 24px; + padding-bottom: 24px; + + @each $s,$as in ('',''), + (':hover','-hover'), + (':active','-active') { //no need for insensitive and backdrop + &.top#{$s}:dir(ltr), &.bottom#{$s}:dir(rtl) { + $_url: 'assets/text-select-start#{$as}#{$asset_suffix}'; + -gtk-icon-source: -gtk-scaled(url('#{$_url}.png'), + url('#{$_url}@2.png')); + } + + &.bottom#{$s}:dir(ltr), &.top#{$s}:dir(rtl) { + $_url: 'assets/text-select-end#{$as}#{$asset_suffix}'; + -gtk-icon-source: -gtk-scaled(url('#{$_url}.png'), + url('#{$_url}@2.png')); + } + + &.insertion-cursor#{$s}:dir(ltr), &.insertion-cursor#{$s}:dir(rtl) { + $_url: 'assets/slider-horz-scale-has-marks-above#{$as}#{$asset_suffix}'; + -gtk-icon-source: -gtk-scaled(url('#{$_url}.png'), + url('#{$_url}@2.png')); + } + } +} + +shortcuts-section { + margin: 20px; +} + +.shortcuts-search-results { + margin: 20px; + border-spacing: 24px; +} + +// shortcut window keys +shortcut { + border-spacing: 6px; +} + +shortcut > .keycap { + min-width: 20px; + min-height: 25px; + margin-top: 2px; + padding-bottom: 3px; + padding-left: 6px; + padding-right: 6px; + + color: $fg_color; + background-color: $base_color; + border: 1px solid; + border-color: if($variant == 'light', mix($borders_color, $bg_color, 50%), $borders_color); + border-radius: 5px; + box-shadow: if($variant == 'light', inset 0 -3px mix($base_color, $bg_color, 20%), inset 0 -3px mix($borders_color, $base_color, 60%)); + font-size: smaller; + +} + +:not(decoration):not(window):drop(active):focus, +:not(decoration):not(window):drop(active) { // FIXME needs to be done widget by widget, this wildcard should really die + border-color: $drop_target_color; + box-shadow: inset 0 0 0 1px $drop_target_color; + caret-color: $drop_target_color; +} + +stackswitcher > button.text-button { min-width: 100px; } // FIXME aggregate with buttons + +stackswitcher.circular { + border-spacing: 12px; + + // FIXME aggregate with buttons + > button.circular, + > button.text-button.circular { + min-width: 32px; + min-height: 32px; + padding: 0; + } +} +/************* + * App Icons * + *************/ +/* Outline for low res icons */ +.lowres-icon { + -gtk-icon-shadow: 0 -1px rgba(0,0,0,0.05), + 1px 0 rgba(0,0,0,0.1), + 0 1px rgba(0,0,0,0.3), + -1px 0 rgba(0,0,0,0.1); +} + +/* Drapshadow for large icons */ +.icon-dropshadow { + -gtk-icon-shadow: 0 1px 12px rgba(0,0,0,0.05), + 0 -1px rgba(0,0,0,0.05), + 1px 0 rgba(0,0,0,0.1), + 0 1px rgba(0,0,0,0.3), + -1px 0 rgba(0,0,0,0.1); +} + +/********* + * Emoji * + ********/ + +popover.emoji-picker > contents { + padding: 0; +} + +.emoji-searchbar { + padding: 6px; + border-spacing: 6px; + border-bottom: 1px solid $borders_color; +} + +.emoji-toolbar { + padding: 6px; + border-spacing: 6px; + border-top: 1px solid $borders_color; +} + +button.emoji-section { + border-color: transparent; + border-width: 3px; + border-style: none none solid; + border-radius: 0; + + padding: 3px 0 0; + min-width: 32px; + min-height: 28px; + + /* reset props inherited from the button style */ + background: none; + box-shadow: none; + text-shadow: none; + + &:hover { border-color: if($variant == 'light', $borders_color, transparentize($fg_color, .9)); } + &:checked { border-color: $selected_bg_color; } +} + +popover.emoji-picker emoji { + font-size: x-large; + padding: 6px; + border-radius: 6px; + + &:focus, + &:hover { + background: $selected_bg_color; + } +} + +emoji-completion-row > box { + border-spacing: 10px; + padding: 2px 10px; +} + +emoji-completion-row:focus, +emoji-completion-row:hover { + background-color: $selected_bg_color; + color: $selected_fg_color; +} + +emoji-completion-row emoji:focus, +emoji-completion-row emoji:hover { + background-color: $menu_selected_color; +} + +popover.entry-completion > contents { + padding: 0; +} + +statusbar { + padding: 6px 10px 6px 10px; +} diff --git a/desktop-themes/YaruGreen/gtk-4.0/_drawing.scss b/desktop-themes/YaruGreen/gtk-4.0/_drawing.scss new file mode 100644 index 00000000..cf474960 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/_drawing.scss @@ -0,0 +1,520 @@ +// Drawing mixins + +// generic drawing of more complex things + +// +// Helper mixin for drawing visible focus rings +// +// If $target is specified, the focus ring is applied to the specified child element. +// If $outer is true, the focus ring extends outward. Otherwise, it extends inward. +// If $within is true, use focus-within instead of focus:focus-visible +// +@mixin focus-ring($target: null, $width: 2px, $offset: -$width, $outer: false, $focus-state: 'focus:focus-visible', $fc: $focus_border_color) { + & #{$target} { + outline: 0 solid transparent; + outline-offset: if($outer, $offset + 4px, $offset + $width + 4px); + } + + &:#{$focus-state} #{$target} { + outline-color: $fc; + outline-width: $width; + outline-offset: $offset; + } +} + +@mixin _shadows($list...) { +// +// Helper mixin to stack up to box-shadows; +// + $shadows: null; + + @each $shadow in $list { + @if $shadow!=none { $shadows: $shadows, $shadow; } + } + + box-shadow: $shadows; +} + +// entries + +@mixin entry($t, $fc:$focus_border_color) { +// +// Entries drawing function +// +// $t: entry type +// $fc: focus color +// +// possible $t values: +// normal, focus, insensitive, backdrop, backdrop-insensitive, osd, osd-focus, osd-backdrop, block_cursor; +// + + @if $t==normal { + color: $text_color; + border-color: $borders_color; + background-color: $base_color; + // for the transition to work the number of shadows in different states needs to match, hence the transparent shadow here. + } + @if $t==insensitive { + color: $insensitive_fg_color; + border-color: $borders_color; + background-color: $insensitive_bg_color; + } + @if $t==backdrop { + color: $backdrop_text_color; + border-color: $backdrop_borders_color; + background-color: $backdrop_base_color; + } + @if $t==backdrop-insensitive { + color: $backdrop_insensitive_color; + border-color: $backdrop_borders_color; + background-color: $insensitive_bg_color; + } + @if $t==osd { + color: $osd_text_color; + border-color: $osd_borders_color; + background-color: transparentize(opacify($osd_borders_color, 1), 0.5); + background-clip: padding-box; + box-shadow: none; + -gtk-icon-shadow: 0 1px black; + } + @if $t==osd-focus { + color: $osd_text_color; + border-color: $selected_bg_color; + background-color: transparentize(opacify($osd_borders_color, 1), 0.5); + background-clip: padding-box; + } + @if $t==osd-insensitive { + color: $osd_insensitive_fg_color; + border-color: $osd_borders_color; + background-color: $osd_insensitive_bg_color; + background-clip: padding-box; + } + @if $t==osd-backdrop { + color: $osd_text_color; + border-color: $osd_borders_color; + background-color: transparentize(opacify($osd_borders_color, 1), 0.5); + background-clip: padding-box; + } + @if $t==block_cursor { + color: $base_color; + background-color: $text_color; + } +} + +// buttons + +@function _border_color($c, $darker: false) { + @if $darker == true { @return darken($c, 20%); } + @else { @return darken($c, 10%); } // Yaru change: less darken 15% -> 10% +} + +$_default_button_c: lighten($bg_color,2%); +@mixin button($t, $c:$_default_button_c, $tc:$fg_color) { +// +// Button drawing function +// +// $t: button type, +// $c: base button color for colored* types +// $tc: optional text color for colored* types +// +// possible $t values: +// normal, hover, active, checked-hover, checked-active, insensitive, insensitive-active, +// backdrop, backdrop-active, backdrop-insensitive, backdrop-insensitive-active, +// osd, osd-hover, osd-active, osd-insensitive, osd-backdrop, undecorated +// + $_button_shadow: 0 1px transparentize(black, 0.95); // Yaru changes: use solid shadow + + @if $t==normal { + // + // normal button + // + color: $tc; + outline-color: if($c != $_default_button_c, $alt_focus_border_color, $focus_border_color); + border-color: if($c!=$_default_button_c, _border_color($c, false), $borders_color); //tint if not default button color - Yaru change: less darken border-color + background-image: linear-gradient(to bottom, $button_gradient_a,$button_gradient_b 50%, $button_gradient_c 50%, $button_gradient_d ); + @include _shadows($_button_shadow); + } + + @else if $t==hover { + // + // hovered button + // + color: $tc; + border-color: if($c != $_default_button_c, _border_color($c), $borders_color); + background-image: linear-gradient(to bottom, + $button_hover_gradient_a 5%, + $button_hover_gradient_b 95%, + $button_hover_gradient_c); + @include _shadows(0 1px transparentize(black, if($variant=='light', 0.85, 0.9))); + } + + @else if $t==active { + // + // pushed button + // + color: $tc; + border-color: if($c != $_default_button_c, _border_color($c), $borders_color); + background-image: linear-gradient(to bottom,$button_active_gradient_a, + $button_active_gradient_b 3px, + $button_active_gradient_c 4px, + $button_active_gradient_d 50%, + $button_active_gradient_e 50%, + $button_active_gradient_f); + box-shadow: none; + } + + @else if $t==checked-hover { + // + // pushed togglebutton hover + // + color: $tc; + border-color: if($c != $_default_button_c, _border_color($c), $borders_color); + background-image: if($variant == 'light', image(darken($c, 18%)), image(darken($c, 12%))); + box-shadow: none; + } + + @else if $t==checked-active { + // + // pushed togglebutton pushed further :) + // + color: $tc; + border-color: if($c != $_default_button_c, _border_color($c), $borders_color); + background-image: if($variant == 'light', image(darken($c, 22%)), image(darken($c, 14%))); + box-shadow: none; + } + + @else if $t==insensitive { + // + // insensitive button + // + $_bg: if($c != $_default_button_c, mix($c, $base_color, 85%), $insensitive_bg_color); + + color: if($tc != $fg_color, mix($tc, $_bg, 50%), $insensitive_fg_color); + border-color: if($c != $_default_button_c, _border_color($c), $insensitive_borders_color); + background-image: linear-gradient(to bottom, $button_insensitive_gradient_a,$button_insensitive_gradient_b 50%, $button_insensitive_gradient_c 50%, $button_insensitive_gradient_d ); + } + + @else if $t==insensitive-active { + // + // insensitive pushed button + // + $_bg: if($variant == 'light', darken(mix($c, $base_color, 85%), 8%), darken(mix($c, $base_color, 85%), 6%)); + $_bc: if($c != $_default_button_c, _border_color($c), $insensitive_borders_color); + + color: if($c != $_default_button_c, mix($tc, $_bg, 60%), $insensitive_fg_color); + border-color: $_bc; + background-image: image($_bg); + box-shadow: none; + } + + @else if $t==backdrop { + // + // backdrop button + // + $_bg: if($c != $_default_button_c, $c, $backdrop_bg_color); + $_bc: if($variant == 'light', $c, _border_color($c)); + + color: if($tc != $fg_color, mix($tc, $_bg, 80%), $backdrop_fg_color); + border-color: if($c != $_default_button_c, $_bc, $backdrop_borders_color); + background-image: image($_bg); + box-shadow: none; + } + + @else if $t==backdrop-active { + // + // backdrop pushed button + // + $_bg: if($variant == 'light', darken(mix($c, $base_color, 85%), 8%), darken(mix($c, $base_color, 85%), 4%)); + $_bc: if($variant == 'light', $_bg ,_border_color($c)); + + color: if($tc != $fg_color, mix($tc, $_bg, 80%), $backdrop_fg_color); + border-color: if($c != $_default_button_c, $_bc, $backdrop_borders_color); + background-image: image($_bg); + box-shadow: none; + } + + @else if $t==backdrop-insensitive { + // + // backdrop insensitive button + // + + $_bg: if($c != $bg_color, mix($c, $base_color, 85%), if($variant=='light', $insensitive_bg_color, lighten($insensitive_bg_color, 3%))); // Yaru change + $_bc: if($variant == 'light', $_bg,_border_color($c)); + + color: if($c != $_default_button_c, mix($tc, $_bg, 35%), $backdrop_insensitive_color); + border-color: if($c != $_default_button_c, $_bc, $backdrop_borders_color); + background-image: image($_bg); + box-shadow: none; + } + + @else if $t==backdrop-insensitive-active { + // + // backdrop insensitive pushed button + // + + $_bg: if($variant == 'light', darken(mix($c, $base_color, 85%), 8%), darken(mix($c, $base_color, 85%), 4%)); + $_bc: if($variant == 'light', $_bg, _border_color($c)); + + color: if($c != $_default_button_c, mix($tc, $_bg, 35%), $backdrop_insensitive_color); + border-color: if($c != $_default_button_c, $_bc, $backdrop_borders_color); + background-image: image($_bg); + box-shadow: none; + } + + @else if $t==osd { + // + // normal osd button + // + $_bg: if($c != $_default_button_c, transparentize($c, 0.5), $osd_bg_color); + + color: $osd_fg_color; + outline-color: if($c != $_default_button_c, $alt_focus_border_color, $focus_border_color); + border-color: $osd_borders_color; + background-color: transparent; + background-image: image($_bg); + background-clip: padding-box; + } + + @else if $t==osd-hover { + // + // active osd button + // + $_bg: if($c != $_default_button_c, transparentize($c, 0.3), darken($osd_bg_color, 10%)); + + color: white; + border-color: $osd_borders_color; + background-color: transparent; + background-image: image($_bg); + background-clip: padding-box; + } + + @else if $t==osd-active { + // + // active osd button + // + $_bg: if($c != $_default_button_c, $c, darken($osd_bg_color, 20%)); + + color: white; + border-color: $osd_borders_color; + background-color: transparent; + background-image: image($_bg); + background-clip: padding-box; + box-shadow: none; + } + + @else if $t==osd-insensitive { + // + // insensitive osd button + // + color: $osd_insensitive_fg_color; + border-color: $osd_borders_color; + background-color: transparent; + background-image: image($osd_insensitive_bg_color); + background-clip: padding-box; + } + + @else if $t==osd-backdrop { + // + // backdrop osd button + // + $_bg: if($c != $_default_button_c, transparentize($c, 0.5), $osd_bg_color); + + color: $osd_fg_color; + border-color: $osd_borders_color; + background-color: transparent; + background-image: image($_bg); + background-clip: padding-box; + } + + @else if $t==undecorated { + // + // reset + // + border-color: transparent; + background-color: transparent; + background-image: none; + box-shadow: none; + } + @else if $t==undecorated-hover { + border-color: transparent; + background-image: none; + box-shadow: none; + @if $variant == 'light' { + background-color: darken($c,14%); + } @else { + background-color: darken($c,1%); + } + } + @else if $t==undecorated-active { + border-color: transparent; + background-image: none; + box-shadow: none; + @if $variant == 'light' { + background-color: darken($c,20%); + } + @else { + background-color: darken($c,5%); + } + } +} + +@mixin headerbar_fill($c:$headerbar_bg_color, $ov: none) { +// +// headerbar fill +// +// $c: base color +// $ov: a background layer for background shorthand (hence no commas!) +// + background-image: linear-gradient(to bottom, + #99bae3, + #8cb0dc 50%, + #86abd9 50%, + #7aa1d1); + &:backdrop{ + background-image: linear-gradient(to bottom, + #eae9e8, + #e2e1e0 50%, + #dedcda 50%, + #d4d2d0); + } +} + +@mixin overshoot($p, $t:normal, $c:$fg_color) { +// +// overshoot +// +// $p: position +// $t: type +// $c: base color +// +// possible $p values: +// top, bottom, right, left +// +// possible $t values: +// normal, backdrop +// + + $_small_gradient_length: 3%; + $_big_gradient_length: 50%; + + $_small_gradient_size: 100% $_small_gradient_length; + $_big_gradient_size: 100% $_big_gradient_length; + + @if $p==right or $p==left { + $_small_gradient_size: $_small_gradient_length 100%; + $_big_gradient_size: $_big_gradient_length 100%; + } + + $_small_gradient_color: $c; + $_big_gradient_color: transparentize($c, 0.93); + + @if $c==$fg_color { + $_small_gradient_color: darken($borders_color, 10%); + $_big_gradient_color: transparentize($fg_color, 0.93); + + @if $t==backdrop { $_small_gradient_color: $backdrop_borders_color; } + } + + $_small_gradient: radial-gradient(farthest-side at $p, + $_small_gradient_color 85%, + transparentize($_small_gradient_color, 1)); + + $_big_gradient: radial-gradient(farthest-side at $p, + $_big_gradient_color, + transparentize($_big_gradient_color, 1)); + + @if $t==normal { + background-image: $_small_gradient, $_big_gradient; + background-size: $_small_gradient_size, $_big_gradient_size; + } + + @else if $t==backdrop { + background-image: $_small_gradient; + background-size: $_small_gradient_size; + } + + background-repeat: no-repeat; + background-position: $p; + + background-color: transparent; // reset some properties to be sure to not inherit them somehow + border: none; // + box-shadow: none; // +} + +/*************************** + * Check and Radio buttons * + ***************************/ + + @mixin check($t, $c:$checkradio_bg_color, $tc:$checkradio_fg_color, $checked: false) { + // Check/Radio drawing function + // + // $t: check/radio type, + // $c: base button color for colored* types + // $tc: optional text color for colored* types + // $checked: bool to chose between checked/unchecked + // + // possible $t values: + // normal, hover, active, insensitive, backdrop, backdrop-insensitive, menu + + $_border_color: if($c==$checkradio_bg_color, $c, $alt_borders_color); // Yaru change: use background color as border color + $_dim_border_color: transparentize($_border_color, if($variant == 'light', 0.3, 0.7)); + + @if $t==normal { // Yaru change: no gradients, better borders + background-clip: if($checked, border-box, padding-box); + background-image: image(white); + border-color: $_border_color; + box-shadow: 0 1px transparentize(black, 0.95); + color: $fg_color; + } + + @if $t==hover { + background-image: image($core_color_a); + border-color: darken($core_color_a , 20%); + } + + @if $t==active { + border-color: $borders_color; + background-image: image(white); + box-shadow: none; + } + + @if $t==insensitive { + box-shadow: none; + color: $insensitive_fg_color; + border-color: $insensitive_borders_color; + background-image: image($insensitive_bg_color); + } + + @if $t==backdrop { + background-image: image(white); + border-color: $_border_color; + box-shadow: 0 1px transparentize(black, 0.95); + color: $fg_color; + } + + @if $t==backdrop-insensitive { + box-shadow: none; + color: $backdrop_fg_color; + border-color: $insensitive_borders_color; + background-image: image($insensitive_bg_color); + } + + // Yaru changes: remove border and scaling into menus + @if $t==menu { + //transform: scale(0.8); + //border-width: 1.2px; + border-color: transparent; + box-shadow: none; + background-image: image(transparent); + color: $tc; + } + + @if $t==menu-active { + //transform: scale(0.8); + //border-width: 1.2px; + border-color: transparent; + color: $tc; + box-shadow: none; + background-image: image(transparent); + } +} diff --git a/desktop-themes/YaruGreen/gtk-4.0/_headerbar.scss b/desktop-themes/YaruGreen/gtk-4.0/_headerbar.scss new file mode 100644 index 00000000..dd27bc9e --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/_headerbar.scss @@ -0,0 +1,133 @@ +// Color variables dependant on $headerbar_bg_color defined in _colors.scss +$_button_bg_color: lighten($headerbar_bg_color, 7.5%); +$_button_border_color: darken($headerbar_bg_color, 9%); +// deducted from the color used in common which is $backdrop_borders_color: mix($borders_color, $bg_color, 80%); +$_backdrop_button_border_color: darken($inkstone, 9%); + +// overwriting the headerbar styling from common, for the inverted look in the ambiance theme + +%titlebar, +headerbar { + @include headerbar_fill($headerbar_bg_color); + + color: $headerbar_fg_color; + border-color: $borders_color; + + .title, + label.title { + color: $headerbar_fg_color; + &:backdrop { color: $backdrop_headerbar_fg_color; } + } + + &.backdrop { + } + + .maximized &, + .fullscreen & { + box-shadow: none; + } + + entry { + &, + &:backdrop { + border-color: darken($headerbar_bg_color, 8%); + } + + &:focus { @include entry(focus); } + } + + + + + + switch { + border-color: $_button_border_color; + color: $headerbar_fg_color; + background-color: $_button_bg_color; + + &:checked { + color: $selected_fg_color; + border-color: $_button_border_color; + background-color: $checkradio_bg_color; + } + + &:disabled { + color: $insensitive_fg_color; + background-color: $headerbar_bg_color; + border-color: $_button_border_color; + } + + &:backdrop { + color: $backdrop_fg_color; + border-color: $backdrop_borders_color; + background-color: lighten($backdrop_headerbar_bg_color, 2%); + + &:checked { + color: $selected_fg_color; + border-color: $_button_border_color; + background-color: $checkradio_bg_color; + } + + &:disabled { + color: $backdrop_insensitive_color; + background-color: $backdrop_headerbar_bg_color; + border-color: $_backdrop_button_border_color; + } + } + } + + switch, scale { + &:checked { + border-color: $checkradio_borders_color; + } + slider { + @include button(normal, $_button_bg_color); + } + + &:hover slider { + @include button(hover, $_button_bg_color); + } + + &:checked > slider { border-color: $_button_border_color; } + + &:disabled slider { @include button(insensitive, darken($headerbar_bg_color, 8%)); } + + &:backdrop { + slider { + @include button(backdrop, $_button_bg_color); + } + + &, &:checked, &:disabled, &:checked:disabled { + > slider { border-color: darken($_backdrop_button_border_color, 4%); box-shadow: none; } + } + + &:checked > slider { border-color: $_button_border_color; } + + &:disabled slider { @include button(backdrop-insensitive, $_button_bg_color); } + } + } + + // TODO: Test separator + // TODO: Test switches +} + +windowcontrols button image { + color: $headerbar_fg_color; +} + +window.devel { + headerbar.titlebar { + $c: darken($bg_color, 10%); + + $gradient: cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, + linear-gradient(to right, transparent 65%, transparentize($selected_bg_color, 0.9)), + linear-gradient(to top, lighten($c, 3%) 3px, lighten($c, 5%)); + + background: $bg_color $gradient; + + &:backdrop { + background: $bg_color cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, + image($bg_color); /* background-color would flash */ + } + } +} diff --git a/desktop-themes/YaruGreen/gtk-4.0/_palette.scss b/desktop-themes/YaruGreen/gtk-4.0/_palette.scss new file mode 100644 index 00000000..44a5d5e9 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/_palette.scss @@ -0,0 +1,56 @@ +// Blacks +$jet: #181818; +$inkstone: #3D3D3D; +$slate: #5D5D5D; +$graphite: #666666; + +// Whites +$white: #FFFFFF; +$porcelain: #F7F7F7; +$silk: #CCC; +$warm_gray: #AEA79F; +$ash: #878787; + +// Purples +$aubergine: #924D8B; +$purple: #762572; +$light_aubergine: #77216F; +$mid_aubergine: #5E2750; +$dark_aubergine: #2C001E; + +// Reds +$red: #c7162b; + +// Oranges +$orange: #E95420; + +// Yellows +$yellow: #f99b11; + +// Greens +$green: #87a556; + +// Blues +$blue: #19B6EE; +$linkblue: #007aa6; +$darkblue: #335280; + + +// Semantic colors +$primary_accent_bg_color: $green; +$primary_accent_fg_color: $white; +$secondary_accent_bg_color: $green; +$secondary_accent_fg_color: $white; +$tertiary_accent_fg_color: $blue; + + +/*************** + * core colors * + ***************/ + +/* Core colors are only used in the current file, as bases for other + color declarations. */ + +$core_color_a: #a4c2e8; /* Core color for blue widgets in TraditionalOK. */ +$core_color_b: #edeceb; /* Core color for gray widgets in TraditionalOK. */ + diff --git a/desktop-themes/YaruGreen/gtk-4.0/_tweaks.scss b/desktop-themes/YaruGreen/gtk-4.0/_tweaks.scss new file mode 100644 index 00000000..b25541f8 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/_tweaks.scss @@ -0,0 +1,387 @@ +$_base_hover_color: transparentize($fg_color, 0.85); +$_base_active_color: transparentize($fg_color, 0.75); + +@mixin undershoot($p) { + // + // undershoot + // + // $p: position + // + // possible $p values: + // top, bottom, right, left + // + + $_us_shadow_color: if($variant=='light', $silk, $jet); + $_us_shadow_alpha: 0.8; + + $_gradient_dir: left; + $_dash_bg_size: 10px 1px; + $_gradient_repeat: repeat-x; + $_bg_pos: center $p; + + background-color: transparent; // shouldn't be needed, but better to be sure; + + @if ($p == left) or ($p == right) { + $_gradient_dir: top; + $_dash_bg_size: 1px 10px; + $_gradient_repeat: repeat-y; + $_bg_pos: $p center; + } + + padding-#{$p}: 1px; + background-size: $_dash_bg_size; + background-repeat: $_gradient_repeat; + background-origin: content-box; + background-position: $_bg_pos; + border: none; + + @if ($p == left) { + box-shadow: inset 2px 0 0 transparentize($_us_shadow_color, $_us_shadow_alpha), + inset 1px 0 0 transparentize(darken($_us_shadow_color, 20%), $_us_shadow_alpha); + } + @else if ($p == right) { + box-shadow: inset -2px 0 0 transparentize($_us_shadow_color, $_us_shadow_alpha), + inset -1px 0 0 transparentize(darken($_us_shadow_color, 20%), $_us_shadow_alpha); + } + @else if ($p == top) { + box-shadow: inset 0 2px 0 0 transparentize($_us_shadow_color, $_us_shadow_alpha), + inset 0 1px 0 0 transparentize(darken($_us_shadow_color, 20%), $_us_shadow_alpha); + } + @else if ($p == bottom) { + box-shadow: inset 0 -2px 0 0 transparentize($_us_shadow_color, $_us_shadow_alpha), + inset 0 -1px 0 0 transparentize(darken($_us_shadow_color, 20%), $_us_shadow_alpha); + } +} + +// with a flatter headerbar and buttons, we dont need that heavy shadows, remove this when upstream agrees +headerbar *, button * { + text-shadow: none; + -gtk-icon-shadow: none; +} + +// blue spinner, white spinner for colored buttons +spinner { + &:not(:backdrop) { + color: $spinner_color; + } + button.suggested-action &, button.destructive-action & { + color: $selected_fg_color; + &:backdrop { color: $backdrop_selected_fg_color; } + } +} + + + + + +windowcontrols { +button { + &.maximize, &.minimize, &.close { + border-radius: 6px; + background-image: linear-gradient(to bottom, + $menubar_menuitem_hover_gradient_a, + $menubar_menuitem_hover_gradient_b 50%, + $menubar_menuitem_hover_gradient_c 50%, + $menubar_menuitem_hover_gradient_d ); + + &:backdrop { + background-image: none; + border-color: $borders_color; + } + + border-color: $menubar_menuitem_hover_border_color; + &, &:backdrop { + &:hover { + background-image: linear-gradient(to bottom, + $menubar_menuitem_hover_gradient_a, + $menubar_menuitem_hover_gradient_b) + // @include draw_circle(if($ambiance==true, lighten($inkstone, 7%), $_base_hover_color)); + } + + &:active { + background-image: linear-gradient(to bottom, + darken($core_color_a, 14%), + darken($core_color_a, 15%)) + // @include draw_circle(if($ambiance==true, lighten($inkstone, 12%), $_base_active_color)); + } + } + } +} +} + +// we prefered our gray hover for menus and popovers, orange is a very strong color +menu, +.menu, +.context-menu { + item:selected { + color: $fg_color; + background-color: $popover_hover_color; + } +} + +// We don't want menuitems to look like links, we should propose this upstream +menubar, +.menubar { + item:selected { + color: $fg_color; + background-color: $popover_hover_color; + } +} + +// We don't want the app notifications to look like OSD because they are interactive +.app-notification, +.app-notification.frame { + padding: 0px 10px; + margin: 12px; + color: $text_color; + border-radius: $menu_radius; + background: none; + background-color: $menu_color; + border: 1px solid $borders_color; + box-shadow: 0 2px 5px transparentize(black, 0.8); + text-shadow: none; + + button { + &, &:dir(ltr), &:dir(rtl) { + &.text-button, &.image-button, & { + @include button(normal); + &.flat { @include button(undecorated); } + &:hover { @include button(hover); } + &:active { @include button(active); } + &:backdrop { + @include button(backdrop); + &.flat { @include button(undecorated); } + } + &:disabled { @include button(insensitive); } + } + } + } + + &:backdrop { + background-color: $backdrop_bg_color; + color: $backdrop_text_color; + box-shadow: none; + transition: $backdrop_transition; + } + + border { border: none; } +} + +notebook > header { + &, &:backdrop { background: transparent; } + tabs { + &, &:hover, &:backdrop { + &, &.right, &.left, &.top, &.bottom { + background-color: transparent; + tab { + outline-width: 1px; + outline-offset: -2px; + &, &:dir(ltr), &:dir(rtl) { + &, &:backdrop { + &, &:checked { + &, &:hover, &:active { + background-color: transparent; + border-color: transparent; + } + } + &:hover:not(:checked):not(:backdrop) { color: $insensitive_fg_color; } + } + } + } + } + } + } +} + +// With the conservative tab styling scrolled windows need the undershoots +scrolledwindow { + undershoot { + &.top { @include undershoot(top); } + + &.bottom { @include undershoot(bottom); } + + &.left { @include undershoot(left); } + + &.right { @include undershoot(right); } + } +} + +// Check/radios in menus do not need a border +popover.menu { + check, + radio { + &, &:checked, &:indeterminate { + &, &:hover, &:disabled { + border-color: transparent; + background: transparent; + } + } + } +} + +// Fixes selected disabled check/radios leaking selected_bg_color, should move to upstream +treeview.view check, +treeview.view radio { + &:selected { + &:focus, & { + &:disabled { color: $insensitive_fg_color; } + } + } +} + +// Reducing the amount of the palette's background colors to two +.sidebar { background-color: $bg_color; } + +scale { + > trough > slider { + .osd & { + @include button(osd); + background-image: image(darken($osd_fg_color, 2%)); + + &:hover { + background-image: image(darken($osd_fg_color, 10%)); + } + + &:active { + background-image: image(darken($osd_fg_color, 25%)); + } + } + } +} + +// Rubberband selection shall match with shell's tile-preview +.rubberband, +rubberband { + background-color: transparentize($ash, 0.8); + border: 1px solid if($variant == 'light', transparentize($silk, 0.2), transparentize(darken($silk, 10%), 0.4)); +} + +// Entries drown if drawn on widgets with $base_color +// Fixing this at least for notebooks, since entries on tabs is a common pattern +@if $variant=='dark' { + notebook entry { background-color: darken($base_color, 2%); } +} + +// Make all :not:(.empty) level bars green - should be moved to upstream +levelbar > trough > block { + &.high, + &:not(.empty) { + border-color: $success_color; + background-color: $success_color; + &:backdrop { border-color: $success_color; } + } +} + +// Strengthen the menu shadows +// And lighten up the dark shell menu/popover border to increase visibility +$_dark_theme_outer_menu_border: lighten(desaturate($base_color, 100%), 14%); +decoration { + .csd.popup & { + box-shadow: 0 1px 2px 1px transparentize(black, if($variant=='light', 0.7, 0.6)), + 0 0 0 1px if($variant=='light', transparentize(black, 0.77), $_dark_theme_outer_menu_border); + } +} +@if $variant=='dark' { + menu separator { + background-color: $_dark_theme_outer_menu_border; + } +} +popover.background { + .csd &, & { + border-color: if($variant=='light', transparentize(black, 0.77), $_dark_theme_outer_menu_border); + &:backdrop { border-color: $backdrop_borders_color; } + } + @if $variant=='dark' { + separator { + background-color: $_dark_theme_outer_menu_border; + } + } +} + +// Add some transitions on checks and radios +check, +radio { + transition-property: background, border; + transition-duration: 200ms; + transition-timing-function: ease; +} + +// Due to the ubuntu orange beeing quiet bright +// we change the sidebar selection from a full orange +// row to a thin orange stripe plus a soft gray selection +$_selection_bg: if($variant=='light', darken($bg_color, 5%), lighten($base_color, 5%)); +list row, placessidebar row, sidebar row, .sidebar row { + &:selected { + &.activatable, & { + &, &:hover { + background-color: $_selection_bg; + &, button { &, & image { color: $text_color; } } + box-shadow: inset 4px 0 0 $selected_bg_color; + &:backdrop { + &, button { &, & image { color: $backdrop_fg_color; } } + background-color: if($variant=='light', $_selection_bg, lighten($_selection_bg, 2%)); + } + } + } + } +} + +// Adapt dark gtk3 scale and levelbar troughs to the shell +@if $variant=='dark' { + scale, progressbar { + > trough { + background-color: $_dark_theme_outer_menu_border; + &, &:disabled { + border-color: $_dark_theme_outer_menu_border; + } + } + &:backdrop { + > trough { + border-color: darken($_dark_theme_outer_menu_border, 5%); + background-color: darken($_dark_theme_outer_menu_border, 5%); + } + } + } + levelbar > trough > block.empty { + border-color: $_dark_theme_outer_menu_border; + background-color: $_dark_theme_outer_menu_border; + &:backdrop { + border-color: darken($_dark_theme_outer_menu_border, 5%); + background-color: darken($_dark_theme_outer_menu_border, 5%); + } + } +} + +// Adapt switch and scale slider troughs to the shell +@if $variant=='dark' { + switch, scale > trough { + &:not(:backdrop):not(:disabled){ + > slider { + background-image: image($warm_gray); + background-clip: padding-box; // fix background overflow + } + + &:hover { + > slider { + background-image: image(lighten($warm_gray, 4%)); + } + } + } + } +} + +// Reduce hyper prominent dark theme check switch border in backdrop +switch { + @if $variant=='dark' { + &:not(:checked):not(:backdrop):not(:disabled) { background-color: lighten($bg_color, 5%); } + } + &:backdrop { + &:checked:not(:disabled) { + &, slider { border-color: if($variant=='light', $checkradio_borders_color, $backdrop_borders_color); } + } + } +} + +check:checked, radio:checked {border-color:$borders_color} + +tab:hover{ color: $fg_color} diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets.svg b/desktop-themes/YaruGreen/gtk-4.0/assets.svg new file mode 100644 index 00000000..e3604c2a --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/assets.svg @@ -0,0 +1,1319 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets.txt b/desktop-themes/YaruGreen/gtk-4.0/assets.txt new file mode 100644 index 00000000..a380d1cc --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/assets.txt @@ -0,0 +1,44 @@ +text-select-end +text-select-end-hover +text-select-end-active +text-select-start +text-select-start-hover +text-select-start-active +text-select-end-dark +text-select-end-hover-dark +text-select-end-active-dark +text-select-start-dark +text-select-start-hover-dark +text-select-start-active-dark +slider-horz-scale-has-marks-below +slider-horz-scale-has-marks-below-hover +slider-horz-scale-has-marks-below-active +slider-horz-scale-has-marks-below-insensitive +slider-vert-scale-has-marks-below +slider-vert-scale-has-marks-below-hover +slider-vert-scale-has-marks-below-active +slider-vert-scale-has-marks-below-insensitive +slider-horz-scale-has-marks-above +slider-horz-scale-has-marks-above-hover +slider-horz-scale-has-marks-above-active +slider-horz-scale-has-marks-above-insensitive +slider-vert-scale-has-marks-above +slider-vert-scale-has-marks-above-hover +slider-vert-scale-has-marks-above-active +slider-vert-scale-has-marks-above-insensitive +slider-horz-scale-has-marks-below-dark +slider-horz-scale-has-marks-below-hover-dark +slider-horz-scale-has-marks-below-active-dark +slider-horz-scale-has-marks-below-insensitive-dark +slider-vert-scale-has-marks-below-dark +slider-vert-scale-has-marks-below-hover-dark +slider-vert-scale-has-marks-below-active-dark +slider-vert-scale-has-marks-below-insensitive-dark +slider-horz-scale-has-marks-above-dark +slider-horz-scale-has-marks-above-hover-dark +slider-horz-scale-has-marks-above-active-dark +slider-horz-scale-has-marks-above-insensitive-dark +slider-vert-scale-has-marks-above-dark +slider-vert-scale-has-marks-above-hover-dark +slider-vert-scale-has-marks-above-active-dark +slider-vert-scale-has-marks-above-insensitive-dark diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/bullet-symbolic.svg b/desktop-themes/YaruGreen/gtk-4.0/assets/bullet-symbolic.svg new file mode 100644 index 00000000..1ecb76a3 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/assets/bullet-symbolic.svg @@ -0,0 +1,155 @@ + + + + + + + + image/svg+xml + + Gnome Symbolic Icon Theme + + + + + + + Gnome Symbolic Icon Theme + + + + + + + + + + + + + + + + + diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/bullet-symbolic.symbolic.png b/desktop-themes/YaruGreen/gtk-4.0/assets/bullet-symbolic.symbolic.png new file mode 100644 index 00000000..17cc2748 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/bullet-symbolic.symbolic.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/bullet@2-symbolic.symbolic.png b/desktop-themes/YaruGreen/gtk-4.0/assets/bullet@2-symbolic.symbolic.png new file mode 100644 index 00000000..1c93f742 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/bullet@2-symbolic.symbolic.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/check-symbolic.svg b/desktop-themes/YaruGreen/gtk-4.0/assets/check-symbolic.svg new file mode 100644 index 00000000..dd1db899 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/assets/check-symbolic.svg @@ -0,0 +1,153 @@ + + + + + + image/svg+xml + + Gnome Symbolic Icon Theme + + + + + + + Gnome Symbolic Icon Theme + + + + + + + + + + + + + + + + + diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/check-symbolic.symbolic.png b/desktop-themes/YaruGreen/gtk-4.0/assets/check-symbolic.symbolic.png new file mode 100644 index 00000000..188f0e7c Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/check-symbolic.symbolic.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/check@2-symbolic.symbolic.png b/desktop-themes/YaruGreen/gtk-4.0/assets/check@2-symbolic.symbolic.png new file mode 100644 index 00000000..13bf8d87 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/check@2-symbolic.symbolic.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/dash-symbolic.svg b/desktop-themes/YaruGreen/gtk-4.0/assets/dash-symbolic.svg new file mode 100644 index 00000000..d721434f --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/assets/dash-symbolic.svg @@ -0,0 +1,155 @@ + + + + + + image/svg+xml + + Gnome Symbolic Icon Theme + + + + + + + Gnome Symbolic Icon Theme + + + + + + + + + + + + + + + + + diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/dash-symbolic.symbolic.png b/desktop-themes/YaruGreen/gtk-4.0/assets/dash-symbolic.symbolic.png new file mode 100644 index 00000000..27be0ebd Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/dash-symbolic.symbolic.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/dash@2-symbolic.symbolic.png b/desktop-themes/YaruGreen/gtk-4.0/assets/dash@2-symbolic.symbolic.png new file mode 100644 index 00000000..66b0b8c7 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/dash@2-symbolic.symbolic.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active-dark.png new file mode 100644 index 00000000..f0d0300d Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active-dark@2.png new file mode 100644 index 00000000..6bc3bc21 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active.png new file mode 100644 index 00000000..fb20f8b7 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active@2.png new file mode 100644 index 00000000..844bc450 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-active@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-dark.png new file mode 100644 index 00000000..45b6fd53 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-dark@2.png new file mode 100644 index 00000000..0d5171e7 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark.png new file mode 100644 index 00000000..45b6fd53 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark@2.png new file mode 100644 index 00000000..0d5171e7 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive.png new file mode 100644 index 00000000..3b8f1e64 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive@2.png new file mode 100644 index 00000000..53f66ba5 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop.png new file mode 100644 index 00000000..def988d6 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop@2.png new file mode 100644 index 00000000..31d75e1d Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-backdrop@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-dark.png new file mode 100644 index 00000000..c98dee13 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-dark@2.png new file mode 100644 index 00000000..a2a20978 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover-dark.png new file mode 100644 index 00000000..866ba7ae Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover-dark@2.png new file mode 100644 index 00000000..0a4e6422 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover.png new file mode 100644 index 00000000..65467468 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover@2.png new file mode 100644 index 00000000..4ef11532 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-hover@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive-dark.png new file mode 100644 index 00000000..fb57411a Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive-dark@2.png new file mode 100644 index 00000000..0d5171e7 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive.png new file mode 100644 index 00000000..05cd4174 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive@2.png new file mode 100644 index 00000000..c4a397f2 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above.png new file mode 100644 index 00000000..5f436d7e Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above@2.png new file mode 100644 index 00000000..e6e2e941 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-above@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active-dark.png new file mode 100644 index 00000000..ad226129 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active-dark@2.png new file mode 100644 index 00000000..610b705a Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active.png new file mode 100644 index 00000000..7521777d Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active@2.png new file mode 100644 index 00000000..3badb682 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-active@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-dark.png new file mode 100644 index 00000000..b89c97ea Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-dark@2.png new file mode 100644 index 00000000..8ba45992 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark.png new file mode 100644 index 00000000..b89c97ea Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark@2.png new file mode 100644 index 00000000..8ba45992 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive.png new file mode 100644 index 00000000..e290aafe Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive@2.png new file mode 100644 index 00000000..8e17a55d Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop.png new file mode 100644 index 00000000..e49a835e Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop@2.png new file mode 100644 index 00000000..cf5f21ec Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-backdrop@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-dark.png new file mode 100644 index 00000000..e7a14422 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-dark@2.png new file mode 100644 index 00000000..c6ba515d Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover-dark.png new file mode 100644 index 00000000..fb5cb2ed Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover-dark@2.png new file mode 100644 index 00000000..b403101b Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover.png new file mode 100644 index 00000000..63e32784 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover@2.png new file mode 100644 index 00000000..2c7b389d Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-hover@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive-dark.png new file mode 100644 index 00000000..69d8a190 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive-dark@2.png new file mode 100644 index 00000000..8ba45992 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive.png new file mode 100644 index 00000000..05109492 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive@2.png new file mode 100644 index 00000000..cf5f21ec Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below.png new file mode 100644 index 00000000..e5799529 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below@2.png new file mode 100644 index 00000000..519fac11 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-horz-scale-has-marks-below@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active-dark.png new file mode 100644 index 00000000..6e7feac4 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active-dark@2.png new file mode 100644 index 00000000..79633f39 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active.png new file mode 100644 index 00000000..74a4e10e Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active@2.png new file mode 100644 index 00000000..d230d5c3 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-active@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-dark.png new file mode 100644 index 00000000..c7f9c6aa Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-dark@2.png new file mode 100644 index 00000000..a85ec9fb Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark.png new file mode 100644 index 00000000..c7f9c6aa Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark@2.png new file mode 100644 index 00000000..a85ec9fb Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive.png new file mode 100644 index 00000000..32b43303 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive@2.png new file mode 100644 index 00000000..252d798b Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop.png new file mode 100644 index 00000000..13e1b714 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop@2.png new file mode 100644 index 00000000..88508458 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-backdrop@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-dark.png new file mode 100644 index 00000000..ef8cdd26 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-dark@2.png new file mode 100644 index 00000000..3c5c8c6a Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover-dark.png new file mode 100644 index 00000000..c056cfe5 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover-dark@2.png new file mode 100644 index 00000000..75671254 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover.png new file mode 100644 index 00000000..0c494233 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover@2.png new file mode 100644 index 00000000..93053c32 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-hover@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive-dark.png new file mode 100644 index 00000000..3485541e Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive-dark@2.png new file mode 100644 index 00000000..a85ec9fb Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive.png new file mode 100644 index 00000000..3786c106 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive@2.png new file mode 100644 index 00000000..d57d8a96 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above.png new file mode 100644 index 00000000..ac73b4b0 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above@2.png new file mode 100644 index 00000000..82d983d9 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-above@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active-dark.png new file mode 100644 index 00000000..c494ab16 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active-dark@2.png new file mode 100644 index 00000000..7f71adca Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active.png new file mode 100644 index 00000000..9c866c81 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active@2.png new file mode 100644 index 00000000..3dc76089 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-active@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-dark.png new file mode 100644 index 00000000..12728002 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-dark@2.png new file mode 100644 index 00000000..9d438798 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark.png new file mode 100644 index 00000000..12728002 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark@2.png new file mode 100644 index 00000000..9d438798 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive.png new file mode 100644 index 00000000..2d19aa70 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive@2.png new file mode 100644 index 00000000..0628fdd4 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop.png new file mode 100644 index 00000000..2d19aa70 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop@2.png new file mode 100644 index 00000000..0628fdd4 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-backdrop@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-dark.png new file mode 100644 index 00000000..5874c29c Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-dark@2.png new file mode 100644 index 00000000..05def561 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover-dark.png new file mode 100644 index 00000000..79d96ae1 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover-dark@2.png new file mode 100644 index 00000000..bb1816e5 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover.png new file mode 100644 index 00000000..e225ac10 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover@2.png new file mode 100644 index 00000000..8a02b661 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-hover@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive-dark.png new file mode 100644 index 00000000..14972bd3 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive-dark@2.png new file mode 100644 index 00000000..9d438798 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive.png new file mode 100644 index 00000000..e7b880b0 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive@2.png new file mode 100644 index 00000000..056cf5c2 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below-insensitive@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below.png new file mode 100644 index 00000000..230b1462 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below@2.png new file mode 100644 index 00000000..3ae316f5 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/slider-vert-scale-has-marks-below@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active-dark.png new file mode 100644 index 00000000..5aa1dcf2 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active-dark@2.png new file mode 100644 index 00000000..e4140edb Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active.png new file mode 100644 index 00000000..359598cd Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active@2.png new file mode 100644 index 00000000..1fc19786 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-active@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-dark.png new file mode 100644 index 00000000..52cd43a6 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-dark@2.png new file mode 100644 index 00000000..e528b3bf Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover-dark.png new file mode 100644 index 00000000..44228468 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover-dark@2.png new file mode 100644 index 00000000..e986fefc Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover.png new file mode 100644 index 00000000..409889f3 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover@2.png new file mode 100644 index 00000000..7dd54768 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end-hover@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end.png new file mode 100644 index 00000000..53fdf496 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end@2.png new file mode 100644 index 00000000..2fb30824 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-end@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active-dark.png new file mode 100644 index 00000000..6cf4fe4f Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active-dark@2.png new file mode 100644 index 00000000..ccd4f53c Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active.png new file mode 100644 index 00000000..3b0d0c56 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active@2.png new file mode 100644 index 00000000..7c4c65e1 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-active@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-dark.png new file mode 100644 index 00000000..44521375 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-dark@2.png new file mode 100644 index 00000000..9535b0bb Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover-dark.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover-dark.png new file mode 100644 index 00000000..335d375c Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover-dark.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover-dark@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover-dark@2.png new file mode 100644 index 00000000..4d3ac002 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover-dark@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover.png new file mode 100644 index 00000000..0aebd3c9 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover@2.png new file mode 100644 index 00000000..d8832354 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start-hover@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start.png new file mode 100644 index 00000000..7d92c9d4 Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start@2.png b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start@2.png new file mode 100644 index 00000000..160d576a Binary files /dev/null and b/desktop-themes/YaruGreen/gtk-4.0/assets/text-select-start@2.png differ diff --git a/desktop-themes/YaruGreen/gtk-4.0/gtk.css b/desktop-themes/YaruGreen/gtk-4.0/gtk.css new file mode 100755 index 00000000..913d3642 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/gtk.css @@ -0,0 +1,1984 @@ +/*************** core colors * */ +/* Core colors are only used in the current file, as bases for other color declarations. */ +/* Core color for blue widgets in TraditionalOK. */ +/* Core color for gray widgets in TraditionalOK. */ +/* hover */ +/* active */ +/* insensitive */ +/* active insensitive */ +/* primary toolbar focus */ +/* primary toolbar focus hover */ +/*************************** Check and Radio buttons * */ +/*************** Base States * */ +.background { color: #000000; background-color: #edeceb; } + +.background:backdrop { text-shadow: none; -gtk-icon-shadow: none; } + +dnd { color: #000000; } + +.normal-icons { -gtk-icon-size: 16px; } + +.large-icons { -gtk-icon-size: 32px; } + +/* These wildcard seems unavoidable, need to investigate. Wildcards are bad and troublesome, use them with care, or better, just don't. Every time a wildcard is used a kitten dies, painfully. */ +spinner:disabled, arrow:disabled, scrollbar:disabled, check:disabled, radio:disabled, treeview.expander:disabled { -gtk-icon-filter: opacity(0.5); } + +.view, iconview, textview > text { color: #1a1a1a; background-color: #ffffff; } + +.view:disabled, iconview:disabled, textview > text:disabled { color: #a9a5a2; background-color: #edeceb; } + +.view:selected:focus, iconview:selected:focus, .view:selected, iconview:selected, textview > text:selected:focus, textview > text:selected { border-radius: 3px; } + +textview:drop(active) { caret-color: #93af66; } + +textview > border { background-color: #f6f6f5; } + +iconview { outline: 0 solid transparent; outline-offset: 4px; } + +iconview:focus:focus-visible { outline-color: #a29e9b; outline-width: 2px; outline-offset: -2px; } + +iconview:drop(active) { box-shadow: none; } + +iconview > dndtarget:drop(active) { border-style: solid; border-width: 1px; border-color: #86abd9; } + +rubberband, .content-view > rubberband, columnview.view > rubberband, treeview.view > rubberband, gridview > rubberband, flowbox > rubberband { border: 1px solid #5f90cd; background-color: rgba(95, 144, 205, 0.2); } + +flowbox > flowboxchild { padding: 3px; transition: outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +flowbox > flowboxchild { outline: 0 solid transparent; outline-offset: 4px; } + +flowbox > flowboxchild:focus:focus-visible { outline-color: #a29e9b; outline-width: 2px; outline-offset: -2px; } + +flowbox > flowboxchild:selected { outline-color: rgba(255, 255, 255, 0.8); } + +gridview > child { padding: 3px; transition: outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +gridview > child { outline: 0 solid transparent; outline-offset: 4px; } + +gridview > child:focus:focus-visible { outline-color: #a29e9b; outline-width: 2px; outline-offset: -2px; } + +gridview > child:selected { outline-color: rgba(255, 255, 255, 0.8); } + +gridview > child box { border-spacing: 8px; margin: 12px; } + +coverflow cover { color: #1a1a1a; background-color: #ffffff; border: 1px solid black; } + +label { outline: 0 solid transparent; outline-offset: 4px; } + +label:focus:focus-visible { outline-color: #a29e9b; outline-width: 2px; outline-offset: -2px; } + +label > selection { background-color: #86abd9; color: #ffffff; } + +label:disabled { color: #a9a5a2; } + +button label:disabled { color: inherit; } + +label.error { color: #c7162b; } + +label.error:disabled { color: rgba(199, 22, 43, 0.5); } + +.dim-label, .titlebar:not(headerbar) .subtitle, headerbar .subtitle, spinbutton.vertical > text > text > placeholder, spinbutton:not(.vertical) > text > placeholder, entry > text > placeholder, label.separator { opacity: 0.55; text-shadow: none; } + +window.assistant .sidebar { padding: 3px; border-top: 1px solid #a29e9b; } + +window.assistant.csd .sidebar { border-top-style: none; } + +window.assistant .sidebar > label { padding: 6px 12px; } + +window.assistant .sidebar > label.highlight { background-color: #dfdddb; border-radius: 3px; } + +window.aboutdialog image.large-icons { -gtk-icon-size: 128px; } + +.osd .scale-popup, .app-notification, .osd popover.background > arrow, .osd popover.background > contents, popover.background.touch-selection > arrow, popover.background.touch-selection > contents, popover.background.magnifier > arrow, popover.background.magnifier > contents, .osd { color: #eeeeec; border: none; background-color: rgba(29, 29, 29, 0.975); background-clip: padding-box; -gtk-icon-shadow: 0 1px black; } + +/********************* Spinner Animation * */ +@keyframes spin { to { 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; } + +/********************** General Typography * */ +.large-title { font-weight: 300; font-size: 24pt; } + +.title-1 { font-weight: 800; font-size: 20pt; } + +.title-2 { font-weight: 800; font-size: 15pt; } + +.title-3 { font-weight: 700; font-size: 15pt; } + +.title-4 { font-weight: 700; font-size: 13pt; } + +.heading { font-weight: 700; font-size: 11pt; } + +.body { font-weight: 400; font-size: 11pt; } + +.caption-heading { font-weight: 700; font-size: 9pt; } + +.caption { font-weight: 400; font-size: 9pt; } + +/**************** Text Entries * */ +spinbutton.vertical > text, spinbutton:not(.vertical), entry { min-height: 32px; padding-left: 8px; padding-right: 8px; border: 1px solid; border-radius: 4px; border-spacing: 6px; transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); color: #1a1a1a; border-color: #a29e9b; background-color: #ffffff; } + +spinbutton.vertical > text, spinbutton:not(.vertical), entry { outline: 0 solid transparent; outline-offset: 4px; } + +spinbutton.vertical > text:focus-within, spinbutton:focus-within:not(.vertical), entry:focus-within { outline-color: #a29e9b; outline-width: 2px; outline-offset: -2px; } + +spinbutton.vertical > text > image.left, spinbutton:not(.vertical) > image.left, entry > image.left { margin-right: 6px; } + +spinbutton.vertical > text > image.right, spinbutton:not(.vertical) > image.right, entry > image.right { margin-left: 6px; } + +spinbutton.vertical > text > text > block-cursor, spinbutton:not(.vertical) > text > block-cursor, entry > text > block-cursor { color: #ffffff; background-color: #1a1a1a; } + +spinbutton.vertical > text.flat, spinbutton.flat:not(.vertical), entry.flat:focus-within, entry.flat:backdrop, entry.flat:disabled, entry.flat { min-height: 0; padding: 2px; background-color: transparent; border-color: transparent; border-radius: 0; } + +spinbutton.vertical > text:focus-within > placeholder, spinbutton:focus-within:not(.vertical) > placeholder, entry:focus-within > placeholder { opacity: 0; /* We hide placeholders on focus */ } + +spinbutton.vertical > text:disabled, spinbutton:disabled:not(.vertical), entry:disabled { color: #a9a5a2; border-color: #a29e9b; background-color: #edeceb; } + +spinbutton.vertical > text.error, spinbutton.error:not(.vertical), entry.error { color: #c7162b; } + +spinbutton.vertical > text.error, spinbutton.error:not(.vertical), entry.error { outline: 0 solid transparent; outline-offset: 4px; } + +spinbutton.vertical > text.error:focus-within, spinbutton.error:focus-within:not(.vertical), entry.error:focus-within { outline-color: rgba(199, 22, 43, 0.5); outline-width: 2px; outline-offset: -2px; } + +spinbutton.vertical > text.error > selection, spinbutton.error:not(.vertical) > selection, entry.error > selection { background-color: #c7162b; } + +spinbutton.vertical > text.warning, spinbutton.warning:not(.vertical), entry.warning { color: #f99b11; } + +spinbutton.vertical > text.warning, spinbutton.warning:not(.vertical), entry.warning { outline: 0 solid transparent; outline-offset: 4px; } + +spinbutton.vertical > text.warning:focus-within, spinbutton.warning:focus-within:not(.vertical), entry.warning:focus-within { outline-color: rgba(249, 155, 17, 0.5); outline-width: 2px; outline-offset: -2px; } + +spinbutton.vertical > text.warning > selection, spinbutton.warning:not(.vertical) > selection, entry.warning > selection { background-color: #f99b11; } + +spinbutton.vertical > text > image, spinbutton:not(.vertical) > image, entry > image { color: #333333; } + +spinbutton.vertical > text > image:hover, spinbutton:not(.vertical) > image:hover, entry > image:hover { color: #000000; } + +spinbutton.vertical > text > image:active, spinbutton:not(.vertical) > image:active, entry > image:active { color: #86abd9; } + +spinbutton.vertical > text.password image.caps-lock-indicator, spinbutton.password:not(.vertical) image.caps-lock-indicator, entry.password image.caps-lock-indicator { color: #585858; } + +spinbutton.vertical > text:drop(active), spinbutton:drop(active):not(.vertical), entry:drop(active):focus-within, entry:drop(active) { border-color: #93af66; box-shadow: inset 0 0 0 1px #93af66; } + +.osd spinbutton.vertical > text, .osd spinbutton:not(.vertical), .osd entry { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: rgba(0, 0, 0, 0.5); background-clip: padding-box; box-shadow: none; -gtk-icon-shadow: 0 1px black; } + +.osd spinbutton.vertical > text:focus-within, .osd spinbutton:focus-within:not(.vertical), .osd entry:focus-within { color: white; border-color: #86abd9; background-color: rgba(0, 0, 0, 0.5); background-clip: padding-box; } + +.osd spinbutton.vertical > text:disabled, .osd spinbutton:disabled:not(.vertical), .osd entry:disabled { color: #868685; border-color: rgba(0, 0, 0, 0.7); background-color: rgba(50, 50, 50, 0.5); background-clip: padding-box; } + +spinbutton.vertical > text > progress, spinbutton:not(.vertical) > progress, entry > progress { margin-bottom: 2px; } + +spinbutton.vertical > text progress > trough > progress, spinbutton:not(.vertical) progress > trough > progress, entry progress > trough > progress { background-color: transparent; background-image: none; border-radius: 0; border-width: 0 0 2px; border-color: #86abd9; border-style: solid; box-shadow: none; } + +spinbutton.vertical.linked:not(.vertical) > text:drop(active) + text, spinbutton.vertical.linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + text, spinbutton.vertical.linked:not(.vertical) > text:drop(active) + spinbutton:not(.vertical), .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + spinbutton:not(.vertical), spinbutton.vertical.linked:not(.vertical) > text:drop(active) + button, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + button, spinbutton.vertical.linked:not(.vertical) > text:drop(active) + menubutton > button, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + menubutton > button, spinbutton.vertical.linked:not(.vertical) > text:drop(active) + dropdown > button, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + dropdown > button, spinbutton.vertical.linked:not(.vertical) > text:drop(active) + colorbutton > button, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + colorbutton > button, spinbutton.vertical.linked:not(.vertical) > text:drop(active) + fontbutton > button, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + fontbutton > button, spinbutton.vertical.linked:not(.vertical) > text:drop(active) + filechooserbutton > button, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + filechooserbutton > button, spinbutton.vertical.linked:not(.vertical) > text:drop(active) + combobox > box > button.combo, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + combobox > box > button.combo, spinbutton.vertical.linked:not(.vertical) > text:drop(active) + entry, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + entry, .linked:not(.vertical) > entry:drop(active) + button, .linked:not(.vertical) > entry:drop(active) + menubutton > button, .linked:not(.vertical) > entry:drop(active) + dropdown > button, .linked:not(.vertical) > entry:drop(active) + colorbutton > button, .linked:not(.vertical) > entry:drop(active) + fontbutton > button, .linked:not(.vertical) > entry:drop(active) + filechooserbutton > button, .linked:not(.vertical) > entry:drop(active) + combobox > box > button.combo, spinbutton.vertical.linked:not(.vertical) > entry:drop(active) + text, .linked:not(.vertical) > entry:drop(active) + spinbutton:not(.vertical), .linked:not(.vertical) > entry:drop(active) + entry { border-left-color: #93af66; } + +spinbutton.vertical.linked > text:not(:disabled) + entry:not(:disabled), .linked.vertical > spinbutton:not(:disabled):not(.vertical) + entry:not(:disabled), spinbutton.vertical.linked > text:not(:disabled) + text:not(:disabled), spinbutton.vertical.linked > spinbutton:not(:disabled):not(.vertical) + text:not(:disabled), spinbutton.vertical.linked > text:not(:disabled) + spinbutton:not(:disabled):not(.vertical), .linked.vertical > spinbutton:not(:disabled):not(.vertical) + spinbutton:not(:disabled):not(.vertical), .linked.vertical > entry:not(:disabled) + entry:not(:disabled), spinbutton.vertical.linked > entry:not(:disabled) + text:not(:disabled), .linked.vertical > entry:not(:disabled) + spinbutton:not(:disabled):not(.vertical) { border-top-color: #e3e2e1; } + +spinbutton.vertical.linked > text:disabled + text:disabled, spinbutton.vertical.linked > spinbutton:disabled:not(.vertical) + text:disabled, spinbutton.vertical.linked > text:disabled + spinbutton:disabled:not(.vertical), .linked.vertical > spinbutton:disabled:not(.vertical) + spinbutton:disabled:not(.vertical), spinbutton.vertical.linked > text:disabled + entry:disabled, .linked.vertical > spinbutton:disabled:not(.vertical) + entry:disabled, spinbutton.vertical.linked > entry:disabled + text:disabled, .linked.vertical > entry:disabled + spinbutton:disabled:not(.vertical), .linked.vertical > entry:disabled + entry:disabled { border-top-color: #e3e2e1; } + +spinbutton.vertical.linked > text + text:drop(active):not(:only-child), spinbutton.vertical.linked > spinbutton:not(.vertical) + text:drop(active):not(:only-child), spinbutton.vertical.linked > text + spinbutton:drop(active):not(:only-child):not(.vertical), .linked.vertical > spinbutton:not(.vertical) + spinbutton:drop(active):not(:only-child):not(.vertical), spinbutton.vertical.linked > text + entry:drop(active):not(:only-child), .linked.vertical > spinbutton:not(.vertical) + entry:drop(active):not(:only-child), spinbutton.vertical.linked > entry + text:drop(active):not(:only-child), .linked.vertical > entry + spinbutton:drop(active):not(:only-child):not(.vertical), .linked.vertical > entry + entry:drop(active):not(:only-child) { border-top-color: #93af66; } + +spinbutton.vertical.linked > text:drop(active):not(:only-child) + text, spinbutton.vertical.linked > spinbutton:drop(active):not(:only-child):not(.vertical) + text, spinbutton.vertical.linked > text:drop(active):not(:only-child) + spinbutton:not(.vertical), .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + spinbutton:not(.vertical), spinbutton.vertical.linked > text:drop(active):not(:only-child) + entry, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + entry, spinbutton.vertical.linked > text:drop(active):not(:only-child) + button, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + button, spinbutton.vertical.linked > text:drop(active):not(:only-child) + menubutton > button, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + menubutton > button, spinbutton.vertical.linked > text:drop(active):not(:only-child) + dropdown > button, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + dropdown > button, spinbutton.vertical.linked > text:drop(active):not(:only-child) + colorbutton > button, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + colorbutton > button, spinbutton.vertical.linked > text:drop(active):not(:only-child) + fontbutton > button, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + fontbutton > button, spinbutton.vertical.linked > text:drop(active):not(:only-child) + filechooserbutton > button, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + filechooserbutton > button, spinbutton.vertical.linked > text:drop(active):not(:only-child) + combobox > box > button.combo, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + combobox > box > button.combo, spinbutton.vertical.linked > entry:drop(active):not(:only-child) + text, .linked.vertical > entry:drop(active):not(:only-child) + spinbutton:not(.vertical), .linked.vertical > entry:drop(active):not(:only-child) + entry, .linked.vertical > entry:drop(active):not(:only-child) + button, .linked.vertical > entry:drop(active):not(:only-child) + menubutton > button, .linked.vertical > entry:drop(active):not(:only-child) + dropdown > button, .linked.vertical > entry:drop(active):not(:only-child) + colorbutton > button, .linked.vertical > entry:drop(active):not(:only-child) + fontbutton > button, .linked.vertical > entry:drop(active):not(:only-child) + filechooserbutton > button, .linked.vertical > entry:drop(active):not(:only-child) + combobox > box > button.combo { border-top-color: #93af66; } + +spinbutton.vertical > text.error, spinbutton.error:not(.vertical), entry.error { color: #c7162b; } + +treeview entry:focus-within:dir(rtl), treeview entry:focus-within:dir(ltr) { background-color: #ffffff; transition-property: color, background; } + +treeview entry.flat, treeview entry { border-radius: 0; background-image: none; background-color: #ffffff; } + +treeview entry.flat:focus-within, treeview entry:focus-within { border-color: #86abd9; } + +/******************* Editable Labels * */ +editablelabel > stack > text { color: #1a1a1a; border-color: #a29e9b; background-color: #ffffff; } + +/*********** Buttons * */ +@keyframes needs_attention { from { background-image: radial-gradient(farthest-side, #86abd9 0%, rgba(134, 171, 217, 0) 0%); } + to { background-image: radial-gradient(farthest-side, #86abd9 95%, rgba(134, 171, 217, 0)); } } + +notebook > header > tabs > arrow, button { min-height: 24px; min-width: 16px; padding: 4px 9px; border: 1px solid; border-radius: 4px; transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); color: #000000; outline-color: #a29e9b; border-color: #a29e9b; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +notebook > header > tabs > arrow, button { outline: 0 solid transparent; outline-offset: 4px; } + +notebook > header > tabs > arrow:focus:focus-visible, button:focus:focus-visible { outline-color: #a29e9b; outline-width: 2px; outline-offset: -2px; } + +notebook > header > tabs > arrow:hover, button:hover { color: #000000; border-color: #a29e9b; background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); box-shadow: 0 1px rgba(0, 0, 0, 0.15); -gtk-icon-filter: brightness(1.2); } + +notebook > header > tabs > arrow:active, notebook > header > tabs > arrow:checked, button:active, button:checked { color: #000000; border-color: #a29e9b; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: none; transition-duration: 50ms; } + +notebook > header > tabs > arrow:checked:hover, button:checked:hover { color: #000000; border-color: #a29e9b; background-image: image(#c6c3c0); box-shadow: none; } + +notebook > header > tabs > arrow:checked:active, button:checked:active { color: #000000; border-color: #a29e9b; background-image: image(#bdb9b5); box-shadow: none; } + +notebook > header > tabs > arrow:backdrop, button.flat:backdrop, button:backdrop { color: #2f2f2f; border-color: #b1aeab; background-image: image(#edeceb); box-shadow: none; transition: 200ms ease-out; -gtk-icon-filter: none; } + +notebook > header > tabs > arrow:backdrop:active, notebook > header > tabs > arrow:backdrop:checked, button.flat:backdrop:active, button.flat:backdrop:checked, button:backdrop:active, button:backdrop:checked { color: #2f2f2f; border-color: #b1aeab; background-image: image(#e0dede); box-shadow: none; } + +notebook > header > tabs > arrow:backdrop:disabled, button.flat:backdrop:disabled, button:backdrop:disabled { color: #c9c6c3; border-color: #b1aeab; background-image: image(#f4f3f3); box-shadow: none; } + +notebook > header > tabs > arrow:backdrop:disabled:active, notebook > header > tabs > arrow:backdrop:disabled:checked, button.flat:backdrop:disabled:active, button.flat:backdrop:disabled:checked, button:backdrop:disabled:active, button:backdrop:disabled:checked { color: #c9c6c3; border-color: #b1aeab; background-image: image(#e0dede); box-shadow: none; } + +notebook > header > tabs > arrow:disabled, button:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); } + +notebook > header > tabs > arrow:disabled:active, notebook > header > tabs > arrow:disabled:checked, button:disabled:active, button:disabled:checked { color: #a9a5a2; border-color: #bdbab8; background-image: image(#e0dede); box-shadow: none; } + +button.sidebar-button, notebook > header > tabs > arrow, notebook > header > tabs > arrow.flat, button.flat { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; transition: none; } + +button.sidebar-button:hover, notebook > header > tabs > arrow:hover, button.flat:hover { border-color: transparent; background-image: none; box-shadow: none; background-color: #d0cdcb; transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition-duration: 500ms; } + +button.sidebar-button:active, notebook > header > tabs > arrow:active, button.sidebar-button:checked, notebook > header > tabs > arrow:checked, button.flat:active, button.flat:checked { border-color: transparent; background-image: none; box-shadow: none; background-color: #c2bebb; transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +button.sidebar-button:backdrop, notebook > header > tabs > arrow:backdrop, button.sidebar-button:disabled, notebook > header > tabs > arrow:disabled, button.flat:backdrop, button.flat:disabled, button.flat:backdrop:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; } + +notebook > header > tabs > arrow.image-button, button.image-button { min-width: 24px; padding-left: 5px; padding-right: 5px; } + +notebook > header > tabs > arrow.text-button, button.text-button { padding-left: 16px; padding-right: 16px; } + +notebook > header > tabs > arrow.text-button.image-button, button.text-button.image-button { padding-left: 8px; padding-right: 8px; } + +notebook > header > tabs > arrow.text-button.image-button label, button.text-button.image-button label { padding-left: 8px; padding-right: 8px; } + +dropdown:drop(active) button.combo, combobox:drop(active) button.combo, notebook > header > tabs > arrow:drop(active), button:drop(active) { color: #93af66; border-color: #93af66; box-shadow: inset 0 0 0 1px #93af66; } + +row:selected button { border-color: #86abd9; } + +row:selected button.sidebar-button:not(:active):not(:checked):not(:hover):not(disabled), row:selected button.flat:not(:active):not(:checked):not(:hover):not(disabled) { color: #ffffff; border-color: transparent; } + +row:selected button.sidebar-button:not(:active):not(:checked):not(:hover):not(disabled):backdrop, row:selected button.flat:not(:active):not(:checked):not(:hover):not(disabled):backdrop { color: #fcfcfc; } + +button.osd { min-width: 26px; min-height: 32px; color: #eeeeec; border-radius: 5px; color: #eeeeec; outline-color: #a29e9b; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(29, 29, 29, 0.975)); background-clip: padding-box; border: none; box-shadow: none; } + +button.osd.image-button { min-width: 30px; } + +button.osd.image-button:only-child { margin: 4px; border-radius: 50%; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2); } + +button.osd:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(4, 4, 4, 0.975)); background-clip: padding-box; border: none; box-shadow: none; } + +button.osd:active, button.osd:checked { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(0, 0, 0, 0.975)); background-clip: padding-box; box-shadow: none; border: none; box-shadow: none; } + +.app-notification button, popover.background.touch-selection button, popover.background.magnifier button, .osd button { color: #eeeeec; outline-color: #a29e9b; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(29, 29, 29, 0.975)); background-clip: padding-box; } + +.app-notification button:hover, popover.background.touch-selection button:hover, popover.background.magnifier button:hover, .osd button:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(4, 4, 4, 0.975)); background-clip: padding-box; } + +.app-notification button:active, popover.background.touch-selection button:active, popover.background.magnifier button:active, .app-notification button:checked, popover.background.touch-selection button:checked, popover.background.magnifier button:checked, .osd button:active:backdrop, .osd button:active, .osd button:checked:backdrop, .osd button:checked { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(0, 0, 0, 0.975)); background-clip: padding-box; box-shadow: none; } + +.app-notification button:disabled, popover.background.touch-selection button:disabled, popover.background.magnifier button:disabled, .osd button:disabled:backdrop, .osd button:disabled { color: #868685; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(50, 50, 50, 0.5)); background-clip: padding-box; } + +.app-notification button.flat, popover.background.touch-selection button.flat, popover.background.magnifier button.flat, .osd button.flat { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; box-shadow: none; -gtk-icon-shadow: 0 1px black; } + +.app-notification button.flat:hover, popover.background.touch-selection button.flat:hover, popover.background.magnifier button.flat:hover, .osd button.flat:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(4, 4, 4, 0.975)); background-clip: padding-box; } + +.app-notification button.flat:disabled, popover.background.touch-selection button.flat:disabled, popover.background.magnifier button.flat:disabled, .osd button.flat:disabled { color: #868685; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(50, 50, 50, 0.5)); background-clip: padding-box; background-image: none; border-color: transparent; box-shadow: none; } + +.app-notification button.flat:active, popover.background.touch-selection button.flat:active, popover.background.magnifier button.flat:active, .app-notification button.flat:checked, popover.background.touch-selection button.flat:checked, popover.background.magnifier button.flat:checked, .osd button.flat:active, .osd button.flat:checked { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(0, 0, 0, 0.975)); background-clip: padding-box; box-shadow: none; } + +button.suggested-action { color: white; outline-color: rgba(255, 255, 255, 0.8); border-color: #79944d; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +button.suggested-action { outline: 0 solid transparent; outline-offset: 4px; } + +button.suggested-action:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.8); outline-width: 2px; outline-offset: -2px; } + +button.suggested-action.flat { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; color: #93af66; } + +button.suggested-action:hover { color: white; border-color: #79944d; background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); box-shadow: 0 1px rgba(0, 0, 0, 0.15); } + +button.suggested-action:active, button.suggested-action:checked { color: white; border-color: #79944d; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: none; } + +button.suggested-action.flat:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; color: rgba(147, 175, 102, 0.8); } + +button.suggested-action:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); } + +button.suggested-action:disabled:active, button.suggested-action:disabled:checked { color: #d3dec0; border-color: #79944d; background-image: image(#90ad62); box-shadow: none; } + +.osd button.suggested-action { color: #eeeeec; outline-color: rgba(255, 255, 255, 0.8); border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(147, 175, 102, 0.5)); background-clip: padding-box; } + +.osd button.suggested-action:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(147, 175, 102, 0.7)); background-clip: padding-box; } + +.osd button.suggested-action:active:backdrop, .osd button.suggested-action:active, .osd button.suggested-action:checked:backdrop, .osd button.suggested-action:checked { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(#93af66); background-clip: padding-box; box-shadow: none; } + +.osd button.suggested-action:disabled:backdrop, .osd button.suggested-action:disabled { color: #868685; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(50, 50, 50, 0.5)); background-clip: padding-box; } + +button.destructive-action { color: white; outline-color: rgba(255, 255, 255, 0.8); border-color: #991121; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +button.destructive-action { outline: 0 solid transparent; outline-offset: 4px; } + +button.destructive-action:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.8); outline-width: 2px; outline-offset: -2px; } + +button.destructive-action.flat { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; color: #c7162b; } + +button.destructive-action:hover { color: white; border-color: #991121; background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); box-shadow: 0 1px rgba(0, 0, 0, 0.15); } + +button.destructive-action:active, button.destructive-action:checked { color: white; border-color: #991121; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: none; } + +button.destructive-action.flat:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; color: rgba(199, 22, 43, 0.8); } + +button.destructive-action:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); } + +button.destructive-action:disabled:active, button.destructive-action:disabled:checked { color: #e1aab1; border-color: #991121; background-image: image(#b42c3c); box-shadow: none; } + +.osd button.destructive-action { color: #eeeeec; outline-color: rgba(255, 255, 255, 0.8); border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(199, 22, 43, 0.5)); background-clip: padding-box; } + +.osd button.destructive-action:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(199, 22, 43, 0.7)); background-clip: padding-box; } + +.osd button.destructive-action:active:backdrop, .osd button.destructive-action:active, .osd button.destructive-action:checked:backdrop, .osd button.destructive-action:checked { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(#c7162b); background-clip: padding-box; box-shadow: none; } + +.osd button.destructive-action:disabled:backdrop, .osd button.destructive-action:disabled { color: #868685; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(50, 50, 50, 0.5)); background-clip: padding-box; } + +stackswitcher > button > label { padding: 0 6px; margin: 0 -6px; } + +stackswitcher > button > image { padding: 3px 6px; margin: -3px -6px; } + +button.font separator { background-color: transparent; } + +button.font > box { border-spacing: 6px; } + +button.font > box > box > label { font-weight: bold; } + +button.circular { min-width: 32px; min-height: 32px; padding: 0; border-radius: 9999px; } + +button.circular label { padding: 0; } + +stacksidebar row.needs-attention > label, stackswitcher > button.needs-attention > label, stackswitcher > button.needs-attention > image { animation: needs_attention 150ms ease-in; background-image: radial-gradient(farthest-side, #86abd9 96%, rgba(134, 171, 217, 0)); background-size: 6px 6px, 6px 6px; background-repeat: no-repeat; background-position: right 3px, right 4px; } + +stacksidebar row.needs-attention > label:backdrop, stackswitcher > button.needs-attention > label:backdrop, stackswitcher > button.needs-attention > image:backdrop { background-size: 6px 6px, 0 0; } + +stacksidebar row.needs-attention > label:dir(rtl), stackswitcher > button.needs-attention > label:dir(rtl), stackswitcher > button.needs-attention > image:dir(rtl) { background-position: left 3px, left 4px; } + +.linked:not(.vertical) > filechooserbutton > combobox:dir(rtl):not(:last-child) > box > button.combo, .linked:not(.vertical) > appchooserbutton > combobox:dir(rtl):not(:last-child) > box > button.combo, .linked:not(.vertical) > combobox:dir(rtl):not(:last-child) > box > button.combo, .linked:not(.vertical) > filechooserbutton > combobox:dir(ltr):not(:first-child) > box > button.combo, .linked:not(.vertical) > appchooserbutton > combobox:dir(ltr):not(:first-child) > box > button.combo, .linked:not(.vertical) > combobox:dir(ltr):not(:first-child) > box > button.combo, dropdown.linked button:nth-child(2):dir(ltr), combobox.linked button:nth-child(2):dir(ltr), .linked:not(.vertical) > menubutton:dir(rtl):not(:last-child) > button, .linked:not(.vertical) > dropdown:dir(rtl):not(:last-child) > button, .linked:not(.vertical) > colorbutton:dir(rtl):not(:last-child) > button, .linked:not(.vertical) > fontbutton:dir(rtl):not(:last-child) > button, .linked:not(.vertical) > filechooserbutton:dir(rtl):not(:last-child) > button, .linked:not(.vertical) > menubutton:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > dropdown:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > colorbutton:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > fontbutton:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > filechooserbutton:dir(ltr):not(:first-child) > button, spinbutton.vertical.linked:not(.vertical) > text:dir(rtl):not(:last-child), .linked:not(.vertical) > spinbutton:dir(rtl):not(:last-child):not(.vertical), .linked:not(.vertical) > entry:dir(rtl):not(:last-child), .linked:not(.vertical) > button:dir(rtl):not(:last-child), spinbutton.vertical.linked:not(.vertical) > text:dir(ltr):not(:first-child), .linked:not(.vertical) > spinbutton:dir(ltr):not(:first-child):not(.vertical), .linked:not(.vertical) > entry:dir(ltr):not(:first-child), .linked:not(.vertical) > button:dir(ltr):not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; } + +.linked:not(.vertical) > filechooserbutton > combobox:dir(rtl):not(:first-child) > box > button.combo, .linked:not(.vertical) > appchooserbutton > combobox:dir(rtl):not(:first-child) > box > button.combo, .linked:not(.vertical) > combobox:dir(rtl):not(:first-child) > box > button.combo, .linked:not(.vertical) > filechooserbutton > combobox:dir(ltr):not(:last-child) > box > button.combo, .linked:not(.vertical) > appchooserbutton > combobox:dir(ltr):not(:last-child) > box > button.combo, .linked:not(.vertical) > combobox:dir(ltr):not(:last-child) > box > button.combo, dropdown.linked button:nth-child(2):dir(rtl), combobox.linked button:nth-child(2):dir(rtl), .linked:not(.vertical) > menubutton:dir(rtl):not(:first-child) > button, .linked:not(.vertical) > dropdown:dir(rtl):not(:first-child) > button, .linked:not(.vertical) > colorbutton:dir(rtl):not(:first-child) > button, .linked:not(.vertical) > fontbutton:dir(rtl):not(:first-child) > button, .linked:not(.vertical) > filechooserbutton:dir(rtl):not(:first-child) > button, .linked:not(.vertical) > menubutton:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > dropdown:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > colorbutton:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > fontbutton:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > filechooserbutton:dir(ltr):not(:last-child) > button, spinbutton.vertical.linked:not(.vertical) > text:dir(rtl):not(:first-child), .linked:not(.vertical) > spinbutton:dir(rtl):not(:first-child):not(.vertical), .linked:not(.vertical) > entry:dir(rtl):not(:first-child), .linked:not(.vertical) > button:dir(rtl):not(:first-child), spinbutton.vertical.linked:not(.vertical) > text:dir(ltr):not(:last-child), .linked:not(.vertical) > spinbutton:dir(ltr):not(:last-child):not(.vertical), .linked:not(.vertical) > entry:dir(ltr):not(:last-child), .linked:not(.vertical) > button:dir(ltr):not(:last-child) { border-right-style: none; border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical > filechooserbutton > combobox:not(:first-child) > box > button.combo, .linked.vertical > appchooserbutton > combobox:not(:first-child) > box > button.combo, .linked.vertical > combobox:not(:first-child) > box > button.combo, .linked.vertical > menubutton:not(:first-child) > button, .linked.vertical > dropdown:not(:first-child) > button, .linked.vertical > colorbutton:not(:first-child) > button, .linked.vertical > fontbutton:not(:first-child) > button, .linked.vertical > filechooserbutton:not(:first-child) > button, spinbutton.vertical.linked > text:not(:first-child), .linked.vertical > spinbutton:not(:first-child):not(.vertical), .linked.vertical > entry:not(:first-child), .linked.vertical > button:not(:first-child) { border-top-left-radius: 0; border-top-right-radius: 0; } + +.linked.vertical > filechooserbutton > combobox:not(:last-child) > box > button.combo, .linked.vertical > appchooserbutton > combobox:not(:last-child) > box > button.combo, .linked.vertical > combobox:not(:last-child) > box > button.combo, .linked.vertical > menubutton:not(:last-child) > button, .linked.vertical > dropdown:not(:last-child) > button, .linked.vertical > colorbutton:not(:last-child) > button, .linked.vertical > fontbutton:not(:last-child) > button, .linked.vertical > filechooserbutton:not(:last-child) > button, spinbutton.vertical.linked > text:not(:last-child), .linked.vertical > spinbutton:not(:last-child):not(.vertical), .linked.vertical > entry:not(:last-child), .linked.vertical > button:not(:last-child) { border-bottom-style: none; border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.scale-popup button:hover, button.link, button.link:hover, button.link:active, button.link:checked, popover.menu box.circular-buttons button.circular.image-button.model, list > row button.image-button:not(.flat), .toolbar button, modelbutton.flat { background-color: transparent; background-image: none; border-color: transparent; box-shadow: inset 0 1px rgba(255, 255, 255, 0), 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; } + +/* menu buttons */ +modelbutton.flat { min-height: 26px; padding-left: 5px; padding-right: 5px; border-radius: 4px; } + +modelbutton.flat:hover { background-color: #dfdddb; } + +modelbutton.flat:disabled { color: #a9a5a2; } + +modelbutton.flat arrow { background: none; min-width: 16px; min-height: 16px; opacity: 0.3; } + +modelbutton.flat arrow:hover { background: none; } + +modelbutton.flat arrow.left { -gtk-icon-source: -gtk-icontheme("go-previous-symbolic"); } + +modelbutton.flat arrow.right { -gtk-icon-source: -gtk-icontheme("go-next-symbolic"); } + +/* oldstyle toolbar buttons */ +.toolbar button { margin: 1px; } + +.toolbar button:hover { color: #000000; border-color: #a29e9b; background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); box-shadow: 0 1px rgba(0, 0, 0, 0.15); } + +.toolbar button:active { color: #000000; border-color: #a29e9b; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: none; } + +.toolbar button:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); } + +.toolbar button:backdrop { color: #2f2f2f; border-color: #b1aeab; background-image: image(#edeceb); box-shadow: none; } + +.toolbar button:backdrop:disabled { color: #c9c6c3; border-color: #b1aeab; background-image: image(#f4f3f3); box-shadow: none; } + +button.color { padding: 4px; } + +button.color > colorswatch:only-child { box-shadow: 0 1px rgba(0, 0, 0, 0.1); } + +button.color > colorswatch:only-child, button.color > colorswatch:only-child > overlay { border-radius: 0; } + +.osd button.color > colorswatch:only-child { box-shadow: none; } + +.osd button.color:disabled colorswatch:only-child, .osd button.color:active colorswatch:only-child, .osd button.color:checked colorswatch:only-child, button.color:disabled colorswatch:only-child, button.color:active colorswatch:only-child, button.color:checked colorswatch:only-child { box-shadow: none; } + +/* list buttons */ +/* tone down as per new designs, see issue #1473 */ +popover.menu box.circular-buttons button.circular.image-button.model, list > row button.image-button:not(.flat) { border: 1px solid rgba(162, 158, 155, 0.5); } + +popover.menu box.circular-buttons button.circular.image-button.model:hover, list > row button.image-button:not(.flat):hover { color: #000000; border-color: #a29e9b; background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); box-shadow: 0 1px rgba(0, 0, 0, 0.15); } + +popover.menu box.circular-buttons button.circular.image-button.model:active, popover.menu box.circular-buttons button.circular.image-button.model:checked, list > row button.image-button:not(.flat):active, list > row button.image-button:not(.flat):checked { color: #000000; border-color: #a29e9b; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: none; } + +/********* Links * */ +button.link, link { color: #0000ee; text-decoration: underline; } + +button.link:visited, link:visited { color: #551a8b; } + +*:selected button.link:visited, *:selected link:visited { color: #bba3d1; } + +button.link:hover, link:hover { color: #2222ff; } + +*:selected button.link:hover, *:selected link:hover { color: #e9e9ff; } + +button.link:active, link:active { color: #0000ee; } + +*:selected button.link:active, *:selected link:active { color: #ccccfc; } + +button.link:disabled, link:disabled { color: rgba(119, 119, 119, 0.8); } + +button.link:selected, *:selected button.link, link:selected, *:selected link { color: #ccccfc; } + +link { outline: 0 solid transparent; outline-offset: 4px; } + +link:focus:focus-visible { outline-color: #a29e9b; outline-width: 2px; outline-offset: -2px; } + +button.link, button.link:hover, button.link:active, button.link:checked { text-shadow: none; } + +button.link > label { text-decoration: underline; } + +/***************** GtkSpinButton * */ +spinbutton { font-feature-settings: "tnum"; } + +spinbutton:not(.vertical) { padding: 0; border-spacing: 0; /* :not here just to bump specificity above that of the list button styling */ } + +.osd spinbutton:not(.vertical) > text, spinbutton:not(.vertical) > text { min-width: 28px; margin: 0; background: none; background-color: transparent; border: none; border-radius: 0; box-shadow: none; padding: 6px; } + +.osd spinbutton:not(.vertical) > text:backdrop:disabled, spinbutton:not(.vertical) > text:backdrop:disabled { background-color: transparent; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat), spinbutton:not(.vertical) > button.image-button.down:not(.flat) { min-height: 16px; margin: 0; padding-bottom: 0; padding-top: 0; color: #1a1a1a; background-image: none; border-style: none none none solid; border-color: rgba(162, 158, 155, 0.3); border-radius: 0; box-shadow: none; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):dir(rtl), spinbutton:not(.vertical) > button.image-button.down:not(.flat):dir(rtl) { border-style: none solid none none; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):hover, spinbutton:not(.vertical) > button.image-button.down:not(.flat):hover { color: #000000; background-color: #e1dfde; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):disabled, spinbutton:not(.vertical) > button.image-button.down:not(.flat):disabled { color: rgba(169, 165, 162, 0.3); background-color: transparent; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):active, spinbutton:not(.vertical) > button.image-button.down:not(.flat):active { background-color: rgba(0, 0, 0, 0.1); box-shadow: inset 0 2px 3px -1px rgba(0, 0, 0, 0.2); } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):dir(ltr):last-child, spinbutton:not(.vertical) > button.image-button.down:not(.flat):dir(ltr):last-child { border-radius: 0 4px 4px 0; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):dir(rtl):first-child, spinbutton:not(.vertical) > button.image-button.down:not(.flat):dir(rtl):first-child { border-radius: 4px 0 0 4px; } + +.osd spinbutton:not(.vertical) > button.image-button.up:not(.flat), .osd spinbutton:not(.vertical) > button.image-button.down:not(.flat) { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; color: #eeeeec; border-style: none none none solid; border-color: rgba(0, 0, 0, 0.4); border-radius: 0; box-shadow: none; -gtk-icon-shadow: 0 1px black; } + +.osd spinbutton:not(.vertical) > button.image-button.up:not(.flat):dir(rtl), .osd spinbutton:not(.vertical) > button.image-button.down:not(.flat):dir(rtl) { border-style: none solid none none; } + +.osd spinbutton:not(.vertical) > button.image-button.up:not(.flat):hover, .osd spinbutton:not(.vertical) > button.image-button.down:not(.flat):hover { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; color: #eeeeec; border-color: rgba(0, 0, 0, 0.5); background-color: rgba(4, 4, 4, 0.975); -gtk-icon-shadow: 0 1px black; box-shadow: none; } + +.osd spinbutton:not(.vertical) > button.image-button.up:not(.flat):disabled, .osd spinbutton:not(.vertical) > button.image-button.down:not(.flat):disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; color: #868685; border-color: rgba(0, 0, 0, 0.5); -gtk-icon-shadow: none; box-shadow: none; } + +.osd spinbutton:not(.vertical) > button.image-button.up:not(.flat):dir(ltr):last-child, .osd spinbutton:not(.vertical) > button.image-button.down:not(.flat):dir(ltr):last-child { border-radius: 0 4px 4px 0; } + +.osd spinbutton:not(.vertical) > button.image-button.up:not(.flat):dir(rtl):first-child, .osd spinbutton:not(.vertical) > button.image-button.down:not(.flat):dir(rtl):first-child { border-radius: 4px 0 0 4px; } + +spinbutton.vertical:disabled { color: #a9a5a2; } + +spinbutton.vertical:drop(active) { border-color: transparent; box-shadow: none; } + +spinbutton.vertical > text { min-height: 32px; min-width: 32px; padding: 0; border-radius: 0; } + +spinbutton.vertical > text > block-cursor { color: #ffffff; background-color: #1a1a1a; } + +spinbutton.vertical > button { min-height: 32px; min-width: 32px; padding: 0; } + +spinbutton.vertical > button.up { border-bottom-style: none; border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +spinbutton.vertical > button.down { border-top-style: none; border-top-left-radius: 0; border-top-right-radius: 0; } + +.osd spinbutton.vertical > button:first-child { color: #eeeeec; outline-color: #a29e9b; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(29, 29, 29, 0.975)); background-clip: padding-box; } + +.osd spinbutton.vertical > button:first-child:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(4, 4, 4, 0.975)); background-clip: padding-box; } + +.osd spinbutton.vertical > button:first-child:active { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(0, 0, 0, 0.975)); background-clip: padding-box; box-shadow: none; } + +.osd spinbutton.vertical > button:first-child:disabled { color: #868685; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(50, 50, 50, 0.5)); background-clip: padding-box; } + +treeview spinbutton:not(.vertical) { min-height: 0; border-style: none; border-radius: 0; } + +treeview spinbutton:not(.vertical) > text { min-height: 0; padding: 1px 2px; } + +/************** ComboBoxes * */ +dropdown > popover.menu.background > contents { padding: 0; } + +dropdown > button > box { border-spacing: 6px; } + +dropdown arrow, combobox arrow { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); min-height: 16px; min-width: 16px; } + +dropdown > popover.menu > contents modelbutton, combobox > popover.menu > contents modelbutton { padding-left: 9px; padding-right: 9px; } + +dropdown:drop(active), combobox:drop(active) { box-shadow: none; } + +dropdown popover, combobox popover { margin-top: 6px; padding: 0; } + +dropdown popover listview, combobox popover listview { margin: 8px 0; } + +dropdown popover listview > row, combobox popover listview > row { padding: 8px; } + +dropdown popover listview > row:selected, combobox popover listview > row:selected { outline-color: rgba(255, 255, 255, 0.8); color: #1a1a1a; background-color: #dfdddb; } + +dropdown popover .dropdown-searchbar, combobox popover .dropdown-searchbar { padding: 6px; border-bottom: 1px solid #a29e9b; } + +/************ Toolbars * */ +searchbar > revealer > box, .toolbar, toolbar { padding: 4px; border-spacing: 4px; background-color: #edeceb; } + +.toolbar, toolbar { background-image: linear-gradient(to bottom, #f6f5f5 2px, #efeeed 50%, #edeceb 50%, #e6e5e4); padding: 2px; border-width: 1px 0 1px 0; border-radius: 0; border-style: solid; border-top-color: #ffffff; border-bottom-color: #c4c2bf; } + +.osd .toolbar, .osd toolbar { background-color: transparent; } + +.toolbar.osd, toolbar.osd { padding: 13px; border: none; border-radius: 5px; background-color: rgba(29, 29, 29, 0.975); } + +.toolbar.osd.left, .toolbar.osd.right, .toolbar.osd.top, .toolbar.osd.bottom, toolbar.osd.left, toolbar.osd.right, toolbar.osd.top, toolbar.osd.bottom { border-radius: 0; } + +.toolbar.horizontal > separator, toolbar.horizontal > separator { margin: 4px 0; } + +.toolbar.vertical > separator, toolbar.vertical > separator { margin: 0 4px; } + +searchbar > revealer > box { padding: 6px; border-spacing: 6px; border-width: 0 0 1px; } + +searchbar > revealer > box { border-style: solid; border-color: #a29e9b; background-color: #d6d5d3; } + +searchbar > revealer > box:backdrop { border-color: #b1aeab; background-color: #d8d6d5; box-shadow: none; transition: 200ms ease-out; } + +/************** GtkInfoBar * */ +infobar > revealer > box { padding: 8px; border-spacing: 12px; } + +infobar.action:hover > revealer > box { background-color: #d4c9bb; } + +infobar.info > revealer > box, infobar.question > revealer > box, infobar.warning > revealer > box, infobar.error > revealer > box { border-bottom: 1px solid #aeaba8; background-color: #d0c4b5; } + +infobar .close, searchbar .close { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; min-width: 16px; min-height: 16px; padding: 4px; border-radius: 50%; } + +infobar .close:hover, searchbar .close:hover { color: #000000; border-color: #a29e9b; background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); box-shadow: 0 1px rgba(0, 0, 0, 0.15); } + +/***************** Title buttons * */ +windowcontrols { border-spacing: 6px; } + +windowcontrols.start:not(.empty):dir(ltr), windowcontrols.end:not(.empty):dir(rtl) { margin-right: 7px; } + +windowcontrols.start:not(.empty):dir(rtl), windowcontrols.end:not(.empty):dir(ltr) { margin-left: 7px; } + +windowcontrols button { border-radius: 9999px; padding: 6px; margin: 0 2px; min-width: 0; min-height: 0; } + +/*************** Header bars * */ +.titlebar:not(headerbar), headerbar { padding: 0 6px; min-height: 23px; border-width: 0 0 1px; border-style: solid; border-color: #b3afab; border-radius: 0; background-image: linear-gradient(to bottom, #99bae3, #8cb0dc 50%, #86abd9 50%, #7aa1d1); /* Darken switchbuttons for headerbars. issue #1588 */ } + +.titlebar:backdrop:not(headerbar), headerbar:backdrop { background-image: linear-gradient(to bottom, #eae9e8, #e2e1e0 50%, #dedcda 50%, #d4d2d0); } + +.titlebar:backdrop:not(headerbar), headerbar:backdrop { border-color: #b1aeab; background-image: linear-gradient(to bottom, #99bae3, #8cb0dc 50%, #86abd9 50%, #7aa1d1); box-shadow: inset 0 1px rgba(255, 255, 255, 0.8); transition: 200ms ease-out; } + +.titlebar:backdrop:backdrop:not(headerbar), headerbar:backdrop:backdrop { background-image: linear-gradient(to bottom, #eae9e8, #e2e1e0 50%, #dedcda 50%, #d4d2d0); } + +.titlebar:not(headerbar) .title, headerbar .title { padding-left: 12px; padding-right: 12px; font-weight: bold; } + +.titlebar:not(headerbar) .subtitle, headerbar .subtitle { font-size: smaller; padding-left: 12px; padding-right: 12px; } + +.titlebar:not(headerbar) stackswitcher > button:checked, .titlebar:not(headerbar) button.toggle:checked, headerbar stackswitcher > button:checked, headerbar button.toggle:checked { background: image(#c4c1bd); border-color: #938f8b; } + +.titlebar:not(headerbar) stackswitcher > button:checked:backdrop, .titlebar:not(headerbar) button.toggle:checked:backdrop, headerbar stackswitcher > button:checked:backdrop, headerbar button.toggle:checked:backdrop { color: #2f2f2f; border-color: #b1aeab; background-image: image(#e0dede); box-shadow: none; } + +.tiled .titlebar:not(headerbar), .tiled-top .titlebar:not(headerbar), .tiled-left .titlebar:not(headerbar), .tiled-right .titlebar:not(headerbar), .tiled-bottom .titlebar:not(headerbar), .maximized .titlebar:not(headerbar), .fullscreen .titlebar:not(headerbar), .tiled headerbar, .tiled-top headerbar, .tiled-left headerbar, .tiled-right headerbar, .tiled-bottom headerbar, .maximized headerbar, .fullscreen headerbar { border-radius: 0; } + +.default-decoration.titlebar:not(headerbar), headerbar.default-decoration { min-height: 28px; padding: 4px; } + +.default-decoration.titlebar:not(headerbar) windowcontrols button, .default-decoration.titlebar:not(headerbar) windowcontrols menubutton, headerbar.default-decoration windowcontrols button, headerbar.default-decoration windowcontrols menubutton { min-height: 26px; min-width: 26px; margin: 0; padding: 0; } + +.default-decoration.titlebar:not(headerbar) windowcontrols menubutton button, headerbar.default-decoration windowcontrols menubutton button { min-height: 20px; min-width: 20px; margin: 0; padding: 4px; } + +.solid-csd .titlebar:dir(rtl):not(headerbar), .solid-csd .titlebar:dir(ltr):not(headerbar), .solid-csd headerbar:backdrop:dir(rtl), .solid-csd headerbar:backdrop:dir(ltr), .solid-csd headerbar:dir(rtl), .solid-csd headerbar:dir(ltr) { margin-left: -1px; margin-right: -1px; margin-top: -1px; border-radius: 0; box-shadow: none; } + +headerbar > windowhandle > box, headerbar > windowhandle > box > box.start, headerbar > windowhandle > box > box.end { border-spacing: 6px; } + +headerbar entry, headerbar spinbutton, headerbar separator:not(.sidebar), headerbar button, headerbar menubutton { margin-top: 6px; margin-bottom: 6px; } + +headerbar menubutton > button { margin-top: 0px; margin-bottom: 0px; } + +headerbar switch { margin-top: 10px; margin-bottom: 10px; } + +headerbar.titlebar headerbar:not(.titlebar) { background: none; box-shadow: none; } + +window.csd > .titlebar:not(headerbar) { padding: 0; background-color: transparent; background-image: none; border-style: none; border-color: transparent; box-shadow: none; } + +.titlebar:not(headerbar) separator { background-color: #a29e9b; } + +window.devel headerbar.titlebar { background: #edeceb cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, linear-gradient(to right, transparent 65%, rgba(134, 171, 217, 0.2)), linear-gradient(to top, #cecbc8, #d5d3d0 3px, #e3e2e0); } + +window.devel headerbar.titlebar:backdrop { background: #edeceb cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, image(#edeceb); /* background-color would flash */ } + +/************ Pathbars * */ +pathbar > button.text-button, pathbar > button.image-button, pathbar > button { padding-left: 4px; padding-right: 4px; } + +pathbar > button.text-button.image-button label { padding-left: 0; padding-right: 0; } + +pathbar > button.text-button.image-button label:last-child, pathbar > button label:last-child { padding-right: 8px; } + +pathbar > button.text-button.image-button label:first-child, pathbar > button label:first-child { padding-left: 8px; } + +pathbar > button image { padding-left: 4px; padding-right: 4px; } + +pathbar > button.slider-button { padding-left: 0; padding-right: 0; } + +/************** Tree Views * */ +columnview.view, treeview.view { border-left-color: #b4b1af; border-top-color: #b4b1af; } + +columnview.view, treeview.view { outline: 0 solid transparent; outline-offset: 4px; } + +columnview.view:focus:focus-visible, treeview.view:focus:focus-visible { outline-color: #a29e9b; outline-width: 2px; outline-offset: -2px; } + +columnview.view:selected:focus, columnview.view:selected, treeview.view:selected:focus, treeview.view:selected { border-radius: 0; outline-color: rgba(255, 255, 255, 0.8); } + +columnview.view:disabled, treeview.view:disabled { color: #a9a5a2; } + +columnview.view:disabled:selected, treeview.view:disabled:selected { color: #b6cde8; } + +columnview.view:disabled:selected:backdrop, treeview.view:disabled:selected:backdrop { color: #aac3e4; } + +columnview.view.separator, treeview.view.separator { min-height: 2px; color: #b4b1af; } + +columnview.view:backdrop, treeview.view:backdrop { border-left-color: #c1bebc; border-top: #c1bebc; } + +columnview.view:drop(active), treeview.view:drop(active) { box-shadow: none; } + +columnview.view > dndtarget:drop(active), treeview.view > dndtarget:drop(active) { border-style: solid none; border-width: 1px; border-color: #86abd9; } + +columnview.view > dndtarget.after:drop(active), treeview.view > dndtarget.after:drop(active) { border-top-style: none; } + +columnview.view > dndtarget.before:drop(active), treeview.view > dndtarget.before:drop(active) { border-bottom-style: none; } + +columnview.view.expander, treeview.view.expander { min-width: 16px; min-height: 16px; -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); color: #5f5f5f; } + +columnview.view.expander:dir(rtl), treeview.view.expander:dir(rtl) { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); } + +columnview.view.expander:hover, treeview.view.expander:hover { color: #1a1a1a; } + +columnview.view.expander:selected, treeview.view.expander:selected { color: #dbe6f4; } + +columnview.view.expander:selected:hover, treeview.view.expander:selected:hover { color: #ffffff; } + +columnview.view.expander:checked, treeview.view.expander:checked { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +columnview.view.progressbar, treeview.view.progressbar { color: #ffffff; background-color: #86abd9; background-image: image(#86abd9); box-shadow: none; } + +columnview.view.progressbar:selected:focus, columnview.view.progressbar:selected, treeview.view.progressbar:selected:focus, treeview.view.progressbar:selected { color: #86abd9; background-image: image(#ffffff); } + +columnview.view.progressbar:selected:focus:backdrop, columnview.view.progressbar:selected:backdrop, treeview.view.progressbar:selected:focus:backdrop, treeview.view.progressbar:selected:backdrop { color: #86abd9; background-color: #fcfcfc; } + +columnview.view.trough, treeview.view.trough { background-color: rgba(0, 0, 0, 0.1); } + +columnview.view.trough:selected:focus, columnview.view.trough:selected, treeview.view.trough:selected:focus, treeview.view.trough:selected { background-color: rgba(255, 255, 255, 0.3); } + +columnview.view > header > button, treeview.view > header > button { color: gray; background-color: #ffffff; font-weight: bold; text-shadow: none; box-shadow: none; } + +columnview.view > header > button:hover, treeview.view > header > button:hover { color: #404040; box-shadow: none; transition: none; } + +columnview.view > header > button:active, treeview.view > header > button:active { color: #000000; transition: none; } + +columnview.view button.dnd:active, columnview.view button.dnd:selected, columnview.view button.dnd:hover, columnview.view button.dnd, columnview.view header.button.dnd:active, columnview.view header.button.dnd:selected, columnview.view header.button.dnd:hover, columnview.view header.button.dnd, treeview.view button.dnd:active, treeview.view button.dnd:selected, treeview.view button.dnd:hover, treeview.view button.dnd, treeview.view header.button.dnd:active, treeview.view header.button.dnd:selected, treeview.view header.button.dnd:hover, treeview.view header.button.dnd { padding: 0 6px; color: #ffffff; background-image: none; background-color: #86abd9; border-style: none; border-radius: 0; box-shadow: inset 0 0 0 1px #ffffff; text-shadow: none; transition: none; } + +columnview.view acceleditor > label, treeview.view acceleditor > label { background-color: #86abd9; } + +columnview.view > header > button, treeview.view > header > button, columnview.view > header > button:hover, treeview.view > header > button:hover, columnview.view > header > button:active, treeview.view > header > button:active { padding: 0 6px; background-image: none; border-style: none none solid solid; border-color: #b4b1af; border-radius: 0; text-shadow: none; } + +columnview.view > header > button:disabled, treeview.view > header > button:disabled { border-color: #edeceb; background-image: none; } + +columnview.view > header > button:last-child, treeview.view > header > button:last-child { border-right-style: none; } + +/*************** Popovers * */ +popover.background { background-color: transparent; font: initial; } + +popover.background > arrow, popover.background > contents { background-color: #ffffff; background-clip: padding-box; border: 1px solid rgba(0, 0, 0, 0.23); box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); } + +popover.background:backdrop { background-color: transparent; } + +popover.background > contents { padding: 8px; border-radius: 6px; } + +popover.background > contents > list, popover.background > contents > .view, popover.background > contents > iconview, popover.background > contents > toolbar { border-style: none; background-color: transparent; } + +popover.background > contents separator { background-color: #b8b5b3; margin: 3px; } + +popover.background > contents list separator { margin: 0; } + +.osd popover.background, popover.background.touch-selection, popover.background.magnifier { background-color: transparent; } + +.osd popover.background > arrow, .osd popover.background > contents, popover.background.touch-selection > arrow, popover.background.touch-selection > contents, popover.background.magnifier > arrow, popover.background.magnifier > contents { border: 1px solid rgba(255, 255, 255, 0.1); box-shadow: none; } + +magnifier { background-color: #ffffff; } + +/********************** Popover Base Menus * */ +popover.menu { padding: 0; } + +popover.menu box.inline-buttons { padding: 0 12px; } + +popover.menu box.inline-buttons button.image-button.model { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; min-height: 30px; min-width: 30px; padding: 0; border: none; outline: none; transition: none; } + +popover.menu box.inline-buttons button.image-button.model:selected { background-image: linear-gradient(to bottom, #a4c2e8, #96b8e2 50%, #91b4df 50%, #84a9d9); } + +popover.menu box.circular-buttons { padding: 12px 12px 6px; } + +popover.menu box.circular-buttons button.circular.image-button.model { padding: 11px; } + +popover.menu box.circular-buttons button.circular.image-button.model:focus { background-color: #dfdddb; border-color: #dfdddb; } + +popover.menu > arrow, popover.menu.background > contents { background-color: #ffffff; padding: 3px; } + +popover.menu.background separator { margin: 6px 0; } + +popover.menu accelerator { color: alpha(currentColor,0.55); } + +popover.menu accelerator:dir(ltr) { margin-left: 12px; } + +popover.menu accelerator:dir(rtl) { margin-right: 12px; } + +popover.menu check, popover.menu radio { border-color: transparent; box-shadow: none; background-image: image(transparent); color: #1a1a1a; } + +popover.menu check:hover, popover.menu radio:hover { border-color: transparent; color: #1a1a1a; box-shadow: none; background-image: image(transparent); } + +popover.menu check:active, popover.menu radio:active { border-color: transparent; color: #1a1a1a; box-shadow: none; background-image: image(transparent); } + +popover.menu radio { border-color: #a29e9b; } + +popover.menu radio:active { border-color: rgba(162, 158, 155, 0.5); } + +popover.menu arrow.left, popover.menu radio.left, popover.menu check.left { margin-left: -2px; margin-right: 6px; } + +popover.menu arrow.right, popover.menu radio.right, popover.menu check.right { margin-left: 6px; margin-right: -2px; } + +popover.menu modelbutton { min-height: 30px; min-width: 40px; padding: 0 12px; border-radius: 3px; } + +popover.menu modelbutton:selected { color: #ffffff; background-image: linear-gradient(to bottom, #a4c2e8, #96b8e2 50%, #91b4df 50%, #84a9d9); box-shadow: inset 0px 1px #4b6e9b, inset 0px -1px #4b6e9b; } + +popover.menu modelbutton:selected:active { background-color: #cbc8c5; } + +popover.menu label.title { font-weight: bold; padding: 4px 32px; } + +menubar { padding: 0px; box-shadow: inset 0 -1px rgba(0, 0, 0, 0.1); } + +menubar > item { min-height: 16px; padding: 4px 8px; } + +menubar > item:selected { background-image: linear-gradient(to bottom, #a4c2e8, #96b8e2 50%, #91b4df 50%, #84a9d9); box-shadow: inset 1px 0px #4b6e9b, inset -1px 0px #4b6e9b; } + +menubar > item:selected > label { color: white; } + +menubar > item:disabled { color: #a9a5a2; box-shadow: none; } + +menubar > item popover.menu.background > contents { padding: 3px; } + +menubar > item popover.menu popover.menu { padding: 0 0 4px 0; } + +menubar > item popover.menu.background popover.menu.background > contents { margin: 0; border-radius: 6px; } + +/************* Notebooks * */ +notebook { border-color: #b0b9c9; } + +notebook > header { padding: 1px; border-color: #a29e9b; box-shadow: 1px 1px #edeceb, 1px -1px #edeceb, -1px -1px #edeceb; border-width: 1px; background-color: transparent; } + +notebook > header > tabs { margin: -1px; } + +notebook > header.top { border-bottom-style: solid; } + +notebook > header.top > tabs { margin-bottom: -2px; margin-top: 4px; } + +notebook > header.top > tabs > tab { background-image: linear-gradient(to bottom, #f1f1f0, #c0bdba); box-shadow: 0px -1px #a29e9b, 1px 0px #a29e9b, -1px 0px #a29e9b, inset 0px -1px #a29e9b; border-top-left-radius: 3px; border-top-right-radius: 3px; } + +notebook > header.top > tabs > tab:checked { background-image: linear-gradient(to bottom, #a4c2e8 3px, #4373b0 5px, #f4f4f3 5px, #f4f4f3); box-shadow: 0px -1px #4373b0, 1px 0px #a29e9b, -1px 0px #a29e9b; } + +notebook > header.bottom { border-top-style: solid; } + +notebook > header.bottom > tabs { margin-top: -3px; } + +notebook > header.bottom > tabs > tab { background-image: linear-gradient(to top, #f1f1f0, #c0bdba); box-shadow: 0px 1px #a29e9b, 1px 0px #a29e9b, -1px 0px #a29e9b, inset 0px 1px #a29e9b; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; } + +notebook > header.bottom > tabs > tab:checked { background-image: linear-gradient(to top, #a4c2e8 3px, #4373b0 5px, #f4f4f3 5px, #f4f4f3); box-shadow: 0px 1px #4373b0, 1px 0px #a29e9b, -1px 0px #a29e9b; } + +notebook > header.left { border-right-style: solid; } + +notebook > header.left > tabs { margin-right: -3px; } + +notebook > header.left > tabs > tab { background-image: linear-gradient(to right, #f1f1f0, #c0bdba); box-shadow: 0px 1px #a29e9b, 0px -1px #a29e9b, -1px 0px #a29e9b, inset -1px 0px #a29e9b; border-top-left-radius: 3px; border-bottom-left-radius: 3px; } + +notebook > header.left > tabs > tab:checked { background-image: linear-gradient(to right, #a4c2e8 3px, #4373b0 5px, #f4f4f3 5px, #f4f4f3); box-shadow: -1px 0px #4373b0, 0px -1px #a29e9b, 0px 1px #a29e9b; } + +notebook > header.right { border-left-style: solid; } + +notebook > header.right > tabs { margin-left: -3px; } + +notebook > header.right > tabs > tab { background-image: linear-gradient(to left, #f1f1f0, #c0bdba); box-shadow: 0px 1px #a29e9b, 0px -1px #a29e9b, 1px 0px #a29e9b, inset 1px 0px #a29e9b; border-top-right-radius: 3px; border-bottom-right-radius: 3px; } + +notebook > header.right > tabs > tab:checked { background-image: linear-gradient(to left, #a4c2e8 3px, #4373b0 5px, #f4f4f3 5px, #f4f4f3); box-shadow: 1px 0px #4373b0, 0px -1px #a29e9b, 0px 1px #a29e9b; } + +notebook > header.top > tabs > arrow { border-top-style: none; } + +notebook > header.bottom > tabs > arrow { border-bottom-style: none; } + +notebook > header.top > tabs > arrow, notebook > header.bottom > tabs > arrow { margin-left: -5px; margin-right: -5px; padding-left: 4px; padding-right: 4px; } + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); } + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); } + +notebook > header.left > tabs > arrow { border-left-style: none; } + +notebook > header.right > tabs > arrow { border-right-style: none; } + +notebook > header.left > tabs > arrow, notebook > header.right > tabs > arrow { margin-top: -5px; margin-bottom: -5px; padding-top: 4px; padding-bottom: 4px; } + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); } + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +notebook > header > tabs > arrow { min-height: 16px; min-width: 16px; border-radius: 0; } + +notebook > header > tabs > arrow:hover:not(:active):not(:backdrop) { background-clip: padding-box; background-image: none; background-color: rgba(255, 255, 255, 0.3); border-color: transparent; box-shadow: none; } + +notebook > header > tabs > arrow:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; } + +notebook > header > tabs > tab { transition: outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); min-height: 30px; min-width: 30px; padding: 3px 12px; color: #000000; font-weight: normal; border-width: 1px; border-color: transparent; } + +notebook > header > tabs > tab:hover { color: #000000; background-color: #bdbbb8; } + +notebook > header > tabs > tab.reorderable-page:hover { border-color: rgba(162, 158, 155, 0.3); background-color: rgba(237, 236, 235, 0.2); } + +notebook > header > tabs > tab:not(:checked) { outline-color: transparent; } + +notebook > header > tabs > tab:checked { color: #000000; } + +notebook > header > tabs > tab.reorderable-page:checked { border-color: rgba(162, 158, 155, 0.5); background-color: rgba(237, 236, 235, 0.5); } + +notebook > header > tabs > tab.reorderable-page:checked:hover { background-color: rgba(237, 236, 235, 0.7); } + +notebook > header > tabs > tab button.flat { color: alpha(currentColor,0.3); padding: 0; margin-top: 4px; margin-bottom: 4px; min-width: 20px; min-height: 20px; } + +notebook > header > tabs > tab button.flat:hover { color: #000000; } + +notebook > header > tabs > tab button.flat:last-child { margin-left: 4px; margin-right: -4px; } + +notebook > header > tabs > tab button.flat:first-child { margin-left: -4px; margin-right: 4px; } + +notebook > header.top > tabs, notebook > header.bottom > tabs { padding-left: 0px; padding-right: 0px; } + +notebook > header.top > tabs:not(:only-child), notebook > header.bottom > tabs:not(:only-child) { margin-left: 1px; margin-right: 1px; } + +notebook > header.top > tabs:not(:only-child):first-child, notebook > header.bottom > tabs:not(:only-child):first-child { margin-left: 0px; } + +notebook > header.top > tabs:not(:only-child):last-child, notebook > header.bottom > tabs:not(:only-child):last-child { margin-right: -1px; } + +notebook > header.top > tabs > tab, notebook > header.bottom > tabs > tab { margin-left: 0px; margin-right: 0px; } + +notebook > header.top > tabs > tab.reorderable-page, notebook > header.bottom > tabs > tab.reorderable-page { border-style: none solid; } + +notebook > header.left > tabs, notebook > header.right > tabs { padding-top: 0px; padding-bottom: 0px; } + +notebook > header.left > tabs:not(:only-child), notebook > header.right > tabs:not(:only-child) { margin-top: 0px; margin-bottom: 0px; } + +notebook > header.left > tabs:not(:only-child):first-child, notebook > header.right > tabs:not(:only-child):first-child { margin-top: 0px; } + +notebook > header.left > tabs:not(:only-child):last-child, notebook > header.right > tabs:not(:only-child):last-child { margin-bottom: -1px; } + +notebook > header.left > tabs > tab, notebook > header.right > tabs > tab { margin-top: 0px; margin-bottom: 0px; } + +notebook > header.left > tabs > tab.reorderable-page, notebook > header.right > tabs > tab.reorderable-page { border-style: solid none; } + +notebook > header.top > tabs > tab { padding-bottom: 1px; } + +notebook > header.bottom > tabs > tab { padding-top: 1px; } + +notebook > stack:not(:only-child) { background-color: #f4f4f3; } + +notebook > stack:not(:only-child):backdrop { background-color: #f4f4f3; } + +/************** Scrollbars * */ +scrollbar { background-color: #bebdbc; transition: 300ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +scrollbar.top { border-bottom: 1px solid #a29e9b; } + +scrollbar.bottom { border-top: 1px solid #a29e9b; } + +scrollbar.left { border-right: 1px solid #a29e9b; } + +scrollbar.right { border-left: 1px solid #a29e9b; } + +scrollbar > range > trough > slider { min-width: 6px; min-height: 6px; margin: -1px; border: 4px solid transparent; border-radius: 8px; background-clip: padding-box; background-color: #5f5e5e; } + +scrollbar > range > trough > slider:hover { background-color: #2f2f2f; } + +scrollbar > range > trough > slider:hover:active { background-color: #5f90cd; } + +scrollbar > range > trough > slider:disabled { background-color: transparent; } + +scrollbar > range.fine-tune > trough > slider { min-width: 4px; min-height: 4px; } + +scrollbar > range.fine-tune.horizontal > trough > slider { border-width: 5px 4px; } + +scrollbar > range.fine-tune.vertical > trough > slider { border-width: 4px 5px; } + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { border-color: transparent; opacity: 0.4; background-color: transparent; } + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) > range > trough > slider { margin: 0; min-width: 3px; min-height: 3px; background-color: #000000; border: 1px solid white; } + +scrollbar.overlay-indicator.horizontal:not(.dragging):not(.hovering) > range > trough > slider { margin: 0 2px; min-width: 40px; } + +scrollbar.overlay-indicator.vertical:not(.dragging):not(.hovering) > range > trough > slider { margin: 2px 0; min-height: 40px; } + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { opacity: 0.8; } + +scrollbar.horizontal > range > trough > slider { min-width: 40px; } + +scrollbar.vertical > range > trough > slider { min-height: 40px; } + +treeview ~ scrollbar.vertical { border-top: 1px solid #a29e9b; margin-top: -1px; } + +/********** Switch * */ +switch { font-weight: bold; font-size: smaller; border: 1px solid #a29e9b; border-radius: 14px; color: #000000; background-color: #c7c5c3; transition: outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); /* only show i / o for the accessible theme */ } + +switch { outline: 0 solid transparent; outline-offset: 4px; } + +switch:focus:focus-visible { outline-color: #a29e9b; outline-width: 2px; outline-offset: 0; } + +headerbar switch { background-color: #b3b1ae; } + +switch:checked { color: #ffffff; border-color: #3171c2; background-color: #93af66; } + +switch:disabled { color: #a9a5a2; border-color: #a29e9b; background-color: #edeceb; text-shadow: none; } + +switch > slider { color: #000000; outline-color: #a29e9b; border-color: #a29e9b; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); box-shadow: 0 1px rgba(0, 0, 0, 0.05); margin: -1px; min-width: 24px; min-height: 24px; border: 1px solid; border-color: #a29e9b; border-radius: 50%; transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +switch > image { color: transparent; } + +switch:hover > slider { color: #000000; border-color: #a29e9b; background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); box-shadow: 0 1px rgba(0, 0, 0, 0.15); } + +switch:checked > slider { border: 1px solid #3171c2; } + +switch:disabled > slider { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); } + +row:selected switch { outline-color: rgba(255, 255, 255, 0.8); box-shadow: none; border-color: #3171c2; } + +row:selected switch > slider:checked, row:selected switch > slider { border-color: #3171c2; } + +/************************* Check and Radio items * */ +.view.content-view.check:not(list), iconview.content-view.check:not(list), .content-view .tile check:not(list) { margin: 4px; min-width: 32px; min-height: 32px; color: transparent; background-color: #538bd3; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: none; -gtk-icon-shadow: none; } + +.view.content-view.check:hover:not(list), iconview.content-view.check:hover:not(list), .content-view .tile check:hover:not(list) { margin: 4px; min-width: 32px; min-height: 32px; color: transparent; background-color: #538bd3; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: none; -gtk-icon-shadow: none; } + +.view.content-view.check:active:not(list), iconview.content-view.check:active:not(list), .content-view .tile check:active:not(list) { margin: 4px; min-width: 32px; min-height: 32px; color: transparent; background-color: #538bd3; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: none; -gtk-icon-shadow: none; } + +.view.content-view.check:backdrop:not(list), iconview.content-view.check:backdrop:not(list), .content-view .tile check:backdrop:not(list) { margin: 4px; min-width: 32px; min-height: 32px; color: transparent; background-color: #939393; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: none; -gtk-icon-shadow: none; } + +.view.content-view.check:checked:not(list), iconview.content-view.check:checked:not(list), .content-view .tile check:checked:not(list) { margin: 4px; min-width: 32px; min-height: 32px; color: #eeeeec; background-color: #538bd3; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: -gtk-icontheme('object-select-symbolic'); -gtk-icon-shadow: none; } + +.view.content-view.check:checked:hover:not(list), iconview.content-view.check:checked:hover:not(list), .content-view .tile check:checked:hover:not(list) { margin: 4px; min-width: 32px; min-height: 32px; color: #eeeeec; background-color: #538bd3; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: -gtk-icontheme('object-select-symbolic'); -gtk-icon-shadow: none; } + +.view.content-view.check:checked:active:not(list), iconview.content-view.check:checked:active:not(list), .content-view .tile check:checked:active:not(list) { margin: 4px; min-width: 32px; min-height: 32px; color: #eeeeec; background-color: #538bd3; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: -gtk-icontheme('object-select-symbolic'); -gtk-icon-shadow: none; } + +.view.content-view.check:backdrop:checked:not(list), iconview.content-view.check:backdrop:checked:not(list), .content-view .tile check:backdrop:checked:not(list) { margin: 4px; min-width: 32px; min-height: 32px; color: rgba(238, 238, 236, 0.8); background-color: #939393; border-radius: 5px; background-image: none; transition: 200ms; box-shadow: none; border-width: 0; -gtk-icon-source: -gtk-icontheme('object-select-symbolic'); -gtk-icon-shadow: none; } + +checkbutton { border-spacing: 4px; border-radius: 4px; transition: outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +checkbutton { outline: 0 solid transparent; outline-offset: 4px; } + +checkbutton:focus:focus-visible { outline-color: #a29e9b; outline-width: 2px; outline-offset: -2px; } + +checkbutton.text-button { padding: 4px; } + +check, radio { min-height: 14px; min-width: 14px; border: 1px solid; -gtk-icon-source: none; } + +check, radio { background-clip: padding-box; background-image: image(white); border-color: #b3afab; box-shadow: 0 1px rgba(0, 0, 0, 0.05); color: #000000; } + +check:hover, radio:hover { background-image: image(#a4c2e8); border-color: #538bd3; } + +check:active, radio:active { border-color: #a29e9b; background-image: image(white); box-shadow: none; } + +check:disabled, radio:disabled { box-shadow: none; color: #a9a5a2; border-color: #bdbab8; background-image: image(#edeceb); } + +check:checked, radio:checked { background-clip: border-box; background-image: image(white); border-color: #538bd3; box-shadow: 0 1px rgba(0, 0, 0, 0.05); color: #000000; } + +check:checked:hover, radio:checked:hover { background-image: image(#a4c2e8); border-color: #538bd3; } + +check:checked:active, radio:checked:active { border-color: #a29e9b; background-image: image(white); box-shadow: none; } + +check:checked:disabled, radio:checked:disabled { box-shadow: none; color: #a9a5a2; border-color: #bdbab8; background-image: image(#edeceb); } + +check:indeterminate, radio:indeterminate { background-clip: border-box; background-image: image(white); border-color: #538bd3; box-shadow: 0 1px rgba(0, 0, 0, 0.05); color: #000000; } + +check:indeterminate:hover, radio:indeterminate:hover { background-image: image(#a4c2e8); border-color: #538bd3; } + +check:indeterminate:active, radio:indeterminate:active { border-color: #a29e9b; background-image: image(white); box-shadow: none; } + +check:indeterminate:disabled, radio:indeterminate:disabled { box-shadow: none; color: #a9a5a2; border-color: #bdbab8; background-image: image(#edeceb); } + +row:selected check, row:selected radio { border-color: #a29e9b; } + +.osd check, .osd radio { color: #eeeeec; outline-color: #a29e9b; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(29, 29, 29, 0.975)); background-clip: padding-box; } + +.osd check:hover, .osd radio:hover { color: #eeeeec; outline-color: #a29e9b; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(29, 29, 29, 0.975)); background-clip: padding-box; } + +.osd check:active, .osd radio:active { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(0, 0, 0, 0.975)); background-clip: padding-box; box-shadow: none; } + +.osd check:disabled, .osd radio:disabled { color: #868685; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(50, 50, 50, 0.5)); background-clip: padding-box; } + +check { border-radius: 3px; -gtk-icon-size: 14px; } + +check:checked { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/check-symbolic.symbolic.png")), -gtk-recolor(url("assets/check@2-symbolic.symbolic.png"))); } + +check:indeterminate { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/dash-symbolic.symbolic.png")), -gtk-recolor(url("assets/dash@2-symbolic.symbolic.png"))); } + +treeview.view radio:selected:focus, treeview.view radio:selected, radio { border-radius: 100%; -gtk-icon-size: 14px; } + +treeview.view radio:checked:selected, radio:checked { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/bullet-symbolic.symbolic.png")), -gtk-recolor(url("assets/bullet@2-symbolic.symbolic.png"))); } + +treeview.view radio:indeterminate:selected, radio:indeterminate { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/dash-symbolic.symbolic.png")), -gtk-recolor(url("assets/dash@2-symbolic.symbolic.png"))); } + +treeview.view check:selected:focus, treeview.view check:selected, treeview.view radio:selected:focus, treeview.view radio:selected { color: #a29e9b; border-color: #86abd9; } + +/************ GtkScale * */ +progressbar > trough, scale > trough > fill, scale > trough { border: 1px solid #a29e9b; border-radius: 3px; background-color: #d6d4d2; } + +headerbar progressbar > trough, headerbar scale > trough > fill, headerbar scale > trough { background-color: #b3b1ae; } + +progressbar > trough:disabled, scale > trough > fill:disabled, scale > trough:disabled { background-color: #edeceb; border-color: #bdbab8; } + +row:selected progressbar > trough, row:selected scale > trough > fill, row:selected scale > trough { outline-color: rgba(255, 255, 255, 0.8); border-color: #86abd9; } + +.osd progressbar > trough, .osd scale > trough > fill, .osd scale > trough { border-color: rgba(0, 0, 0, 0.7); background-color: rgba(0, 0, 0, 0.5); } + +.osd progressbar > trough:disabled, .osd scale > trough > fill:disabled, .osd scale > trough:disabled { background-color: rgba(50, 50, 50, 0.5); } + +progressbar > trough > progress, scale > trough > highlight { border: 1px solid #a29e9b; border-radius: 3px; background-color: #89addb; } + +progressbar > trough > progress:disabled, scale > trough > highlight:disabled { background-color: transparent; border-color: transparent; } + +row:selected progressbar > trough > progress, row:selected scale > trough > highlight { border-color: #86abd9; } + +.osd progressbar > trough > progress, .osd scale > trough > highlight { border-color: rgba(0, 0, 0, 0.7); } + +.osd progressbar > trough > progress:disabled, .osd scale > trough > highlight:disabled { border-color: transparent; } + +scale { min-height: 5px; min-width: 5px; padding: 4px; } + +scale > trough { outline: 0 solid transparent; outline-offset: 16px; } + +scale:focus:focus-visible > trough { outline-color: #a29e9b; outline-width: 2px; outline-offset: 10px; } + +scale > trough { transition: outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +scale > trough > fill, scale > trough > highlight { margin: -1px; } + +scale > trough > slider { min-height: 12px; min-width: 12px; margin: -5px; padding: 0px; border-radius: 3px; } + +scale.horizontal > trough > slider { min-width: 25px; } + +scale.vertical > trough > slider { min-height: 25px; } + +scale.fine-tune.horizontal { padding-top: 9px; padding-bottom: 9px; min-height: 16px; } + +scale.fine-tune.vertical { padding-left: 9px; padding-right: 9px; min-width: 16px; } + +scale.fine-tune > trough > slider { margin: -6px; } + +scale.fine-tune > trough > fill, scale.fine-tune > trough > highlight, scale.fine-tune > trough { border-radius: 5px; } + +scale > trough > fill:disabled { border-color: transparent; background-color: transparent; } + +.osd scale > trough > fill { background-color: rgba(91, 91, 90, 0.775); } + +.osd scale > trough > fill:disabled { border-color: transparent; background-color: transparent; } + +scale.horizontal > slider { min-width: 25px; } + +scale.vertical > slider { min-height: 25px; } + +scale > trough > slider { color: #000000; outline-color: #a29e9b; border-color: #a29e9b; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); box-shadow: 0 1px rgba(0, 0, 0, 0.05); border-width: 1px; border-style: solid; border-radius: 3px; transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition-property: background, border, box-shadow; } + +scale > trough > slider:hover { color: #000000; border-color: #a29e9b; background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); box-shadow: 0 1px rgba(0, 0, 0, 0.15); } + +scale > trough > slider:active { border-color: #9fb876; } + +scale > trough > slider:disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); } + +row:selected scale > trough > slider:disabled, row:selected scale > trough > slider { border-color: #86abd9; } + +.osd scale > trough > slider { color: #eeeeec; outline-color: #a29e9b; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(29, 29, 29, 0.975)); background-clip: padding-box; border-color: rgba(0, 0, 0, 0.7); background-color: #1d1d1d; } + +.osd scale > trough > slider:hover { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(4, 4, 4, 0.975)); background-clip: padding-box; background-color: #1d1d1d; } + +.osd scale > trough > slider:active { color: white; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(0, 0, 0, 0.975)); background-clip: padding-box; box-shadow: none; background-color: #1d1d1d; } + +.osd scale > trough > slider:disabled { color: #868685; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(50, 50, 50, 0.5)); background-clip: padding-box; background-color: #1d1d1d; } + +scale > value { color: alpha(currentColor,0.55); font-feature-settings: "tnum"; } + +scale.horizontal > marks { color: alpha(currentColor,0.55); } + +scale.horizontal > marks.top { margin-bottom: 6px; } + +scale.horizontal > marks.bottom { margin-top: 6px; } + +scale.horizontal > marks indicator { background-color: currentColor; min-height: 6px; min-width: 1px; } + +scale.horizontal > value.left { margin-right: 9px; } + +scale.horizontal > value.right { margin-left: 9px; } + +scale.horizontal.fine-tune > marks.top { margin-top: 3px; } + +scale.horizontal.fine-tune > marks.bottom { margin-bottom: 3px; } + +scale.horizontal.fine-tune > marks indicator { min-height: 3px; } + +scale.vertical > marks { color: alpha(currentColor,0.55); } + +scale.vertical > marks.top { margin-right: 6px; } + +scale.vertical > marks.bottom { margin-left: 6px; } + +scale.vertical > marks indicator { background-color: currentColor; min-height: 1px; min-width: 6px; } + +scale.vertical > value.top { margin-bottom: 9px; } + +scale.vertical > value.bottom { margin-top: 9px; } + +scale.vertical.fine-tune > marks.top { margin-left: 3px; } + +scale.vertical.fine-tune > marks.bottom { margin-right: 3px; } + +scale.vertical.fine-tune > marks indicator { min-height: 3px; } + +scale.horizontal.marks-before:not(.marks-after) > trough > slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above.png"), url("assets/slider-horz-scale-has-marks-above@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-before.fine-tune:not(.marks-after) > trough > slider { margin: -7px -10px; margin-top: -11px; } + +scale.horizontal.marks-before:not(.marks-after) > trough > slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-hover.png"), url("assets/slider-horz-scale-has-marks-above-hover@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-before.fine-tune:not(.marks-after) > trough > slider { margin: -7px -10px; margin-top: -11px; } + +scale.horizontal.marks-before:not(.marks-after) > trough > slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-active.png"), url("assets/slider-horz-scale-has-marks-above-active@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-before.fine-tune:not(.marks-after) > trough > slider { margin: -7px -10px; margin-top: -11px; } + +scale.horizontal.marks-before:not(.marks-after) > trough > slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-insensitive.png"), url("assets/slider-horz-scale-has-marks-above-insensitive@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-before.fine-tune:not(.marks-after) > trough > slider { margin: -7px -10px; margin-top: -11px; } + +scale.horizontal.marks-after:not(.marks-before) > trough > slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below.png"), url("assets/slider-horz-scale-has-marks-below@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-after.fine-tune:not(.marks-before) > trough > slider { margin: -7px -10px; margin-bottom: -11px; } + +scale.horizontal.marks-after:not(.marks-before) > trough > slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-hover.png"), url("assets/slider-horz-scale-has-marks-below-hover@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-after.fine-tune:not(.marks-before) > trough > slider { margin: -7px -10px; margin-bottom: -11px; } + +scale.horizontal.marks-after:not(.marks-before) > trough > slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-active.png"), url("assets/slider-horz-scale-has-marks-below-active@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-after.fine-tune:not(.marks-before) > trough > slider { margin: -7px -10px; margin-bottom: -11px; } + +scale.horizontal.marks-after:not(.marks-before) > trough > slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-insensitive.png"), url("assets/slider-horz-scale-has-marks-below-insensitive@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.horizontal.marks-after.fine-tune:not(.marks-before) > trough > slider { margin: -7px -10px; margin-bottom: -11px; } + +scale.vertical.marks-before:not(.marks-after) > trough > slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above.png"), url("assets/slider-vert-scale-has-marks-above@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-before.fine-tune:not(.marks-after) > trough > slider { margin: -10px -7px; margin-left: -11px; } + +scale.vertical.marks-before:not(.marks-after) > trough > slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-hover.png"), url("assets/slider-vert-scale-has-marks-above-hover@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-before.fine-tune:not(.marks-after) > trough > slider { margin: -10px -7px; margin-left: -11px; } + +scale.vertical.marks-before:not(.marks-after) > trough > slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-active.png"), url("assets/slider-vert-scale-has-marks-above-active@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-before.fine-tune:not(.marks-after) > trough > slider { margin: -10px -7px; margin-left: -11px; } + +scale.vertical.marks-before:not(.marks-after) > trough > slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-insensitive.png"), url("assets/slider-vert-scale-has-marks-above-insensitive@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-before.fine-tune:not(.marks-after) > trough > slider { margin: -10px -7px; margin-left: -11px; } + +scale.vertical.marks-after:not(.marks-before) > trough > slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below.png"), url("assets/slider-vert-scale-has-marks-below@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-after.fine-tune:not(.marks-before) > trough > slider { margin: -10px -7px; margin-right: -11px; } + +scale.vertical.marks-after:not(.marks-before) > trough > slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-hover.png"), url("assets/slider-vert-scale-has-marks-below-hover@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-after.fine-tune:not(.marks-before) > trough > slider { margin: -10px -7px; margin-right: -11px; } + +scale.vertical.marks-after:not(.marks-before) > trough > slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-active.png"), url("assets/slider-vert-scale-has-marks-below-active@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-after.fine-tune:not(.marks-before) > trough > slider { margin: -10px -7px; margin-right: -11px; } + +scale.vertical.marks-after:not(.marks-before) > trough > slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-insensitive.png"), url("assets/slider-vert-scale-has-marks-below-insensitive@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; } + +scale.vertical.marks-after.fine-tune:not(.marks-before) > trough > slider { margin: -10px -7px; margin-right: -11px; } + +scale.color { min-height: 0; min-width: 0; } + +scale.color > trough { background-image: image(#a29e9b); background-repeat: no-repeat; } + +scale.color.horizontal { padding: 0 0 15px 0; } + +scale.color.horizontal > trough { padding-bottom: 4px; background-position: 0 -3px; border-top-left-radius: 0; border-top-right-radius: 0; } + +scale.color.horizontal > trough > slider:dir(ltr):hover, scale.color.horizontal > trough > slider:dir(ltr):backdrop, scale.color.horizontal > trough > slider:dir(ltr):disabled, scale.color.horizontal > trough > slider:dir(ltr):backdrop:disabled, scale.color.horizontal > trough > slider:dir(ltr), scale.color.horizontal > trough > slider:dir(rtl):hover, scale.color.horizontal > trough > slider:dir(rtl):backdrop, scale.color.horizontal > trough > slider:dir(rtl):disabled, scale.color.horizontal > trough > slider:dir(rtl):backdrop:disabled, scale.color.horizontal > trough > slider:dir(rtl) { margin-bottom: -15px; margin-top: 6px; } + +scale.color.vertical:dir(ltr) { padding: 0 0 0 15px; } + +scale.color.vertical:dir(ltr) > trough { padding-left: 4px; background-position: 3px 0; border-bottom-right-radius: 0; border-top-right-radius: 0; } + +scale.color.vertical:dir(ltr) > trough > slider:hover, scale.color.vertical:dir(ltr) > trough > slider:backdrop, scale.color.vertical:dir(ltr) > trough > slider:disabled, scale.color.vertical:dir(ltr) > trough > slider:backdrop:disabled, scale.color.vertical:dir(ltr) > trough > slider { margin-left: -15px; margin-right: 6px; } + +scale.color.vertical:dir(rtl) { padding: 0 15px 0 0; } + +scale.color.vertical:dir(rtl) > trough { padding-right: 4px; background-position: -3px 0; border-bottom-left-radius: 0; border-top-left-radius: 0; } + +scale.color.vertical:dir(rtl) > trough > slider:hover, scale.color.vertical:dir(rtl) > trough > slider:backdrop, scale.color.vertical:dir(rtl) > trough > slider:disabled, scale.color.vertical:dir(rtl) > trough > slider:backdrop:disabled, scale.color.vertical:dir(rtl) > trough > slider { margin-right: -15px; margin-left: 6px; } + +scale.color.fine-tune.horizontal:dir(ltr), scale.color.fine-tune.horizontal:dir(rtl) { padding: 0 0 12px 0; } + +scale.color.fine-tune.horizontal:dir(ltr) > trough, scale.color.fine-tune.horizontal:dir(rtl) > trough { padding-bottom: 7px; background-position: 0 -6px; } + +scale.color.fine-tune.horizontal:dir(ltr) > trough > slider, scale.color.fine-tune.horizontal:dir(rtl) > trough > slider { margin-bottom: -15px; margin-top: 6px; } + +scale.color.fine-tune.vertical:dir(ltr) { padding: 0 0 0 12px; } + +scale.color.fine-tune.vertical:dir(ltr) > trough { padding-left: 7px; background-position: 6px 0; } + +scale.color.fine-tune.vertical:dir(ltr) > trough > slider { margin-left: -15px; margin-right: 6px; } + +scale.color.fine-tune.vertical:dir(rtl) { padding: 0 12px 0 0; } + +scale.color.fine-tune.vertical:dir(rtl) > trough { padding-right: 7px; background-position: -6px 0; } + +scale.color.fine-tune.vertical:dir(rtl) > trough > slider { margin-right: -15px; margin-left: 6px; } + +/***************** Progress bars * */ +progressbar { font-size: smaller; color: rgba(0, 0, 0, 0.4); font-feature-settings: "tnum"; } + +progressbar.horizontal > trough { min-width: 150px; } + +progressbar.horizontal > trough, progressbar.horizontal > trough > progress { min-height: 16px; } + +progressbar.vertical > trough { min-height: 80px; } + +progressbar.vertical > trough, progressbar.vertical > trough > progress { min-width: 16px; } + +progressbar.horizontal > trough > progress { margin: 0 -1px; background-image: repeating-linear-gradient(135deg, alpha(#658fc3,0), alpha(#658fc3,0) 12px, alpha(#658fc3,0.5) 12px, alpha(#658fc3,0.5) 24px), linear-gradient(to bottom, alpha(#a4c2e8,0.7), alpha(#96b8e2,0.7) 50%, alpha(#91b4df,0.7) 50%, alpha(#84a9d9,0.7)); } + +progressbar.vertical > trough > progress { margin: -1px 0; background-image: repeating-linear-gradient(45deg, alpha(#658fc3,0), alpha(#658fc3,0) 12px, alpha(#658fc3,0.5) 12px, alpha(#658fc3,0.5) 24px), linear-gradient(to right, alpha(#a4c2e8,0.7), alpha(#96b8e2,0.7) 50%, alpha(#91b4df,0.7) 50%, alpha(#84a9d9,0.7)); } + +progressbar > trough > progress { /* share most of scales' */ /* override insensitive that is specific to progress */ border-radius: 1.5px; } + +progressbar > trough > progress:disabled { background-color: #a9a5a2; border-color: #a9a5a2; } + +progressbar > trough > progress.left { border-top-left-radius: 5px; border-bottom-left-radius: 5px; } + +progressbar > trough > progress.right { border-top-right-radius: 5px; border-bottom-right-radius: 5px; } + +progressbar > trough > progress.top { border-top-right-radius: 5px; border-top-left-radius: 5px; } + +progressbar > trough > progress.bottom { border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; } + +progressbar.osd { min-width: 3px; min-height: 3px; background-color: transparent; } + +progressbar.osd > trough { border-style: none; border-radius: 0; background-color: transparent; box-shadow: none; } + +progressbar.osd > trough > progress { border-style: none; border-radius: 0; } + +progressbar > trough.empty > progress { all: unset; } + +/************* Level Bar * */ +levelbar.horizontal trough > block { min-height: 9px; border-radius: 5px; } + +levelbar.horizontal trough > block:dir(rtl) { border-radius: 0 5px 5px 0; } + +levelbar.horizontal trough > block:dir(ltr) { border-radius: 5px 0 0 5px; } + +levelbar.horizontal trough > block.empty, levelbar.horizontal trough > block.full { border-radius: 5px; } + +levelbar.horizontal.discrete trough > block { min-height: 2px; margin: 1px; min-width: 24px; border-radius: 0; } + +levelbar.horizontal.discrete trough > block:first-child { border-radius: 2px 0 0 2px; } + +levelbar.horizontal.discrete trough > block:last-child { border-radius: 0 2px 2px 0; } + +levelbar.vertical trough > block { min-width: 9px; border-radius: 5px; } + +levelbar.vertical.discrete > trough > block { min-width: 2px; margin: 1px 0; min-height: 32px; } + +levelbar > trough { padding: 0; } + +levelbar > trough > block { border: 1px solid; } + +levelbar > trough > block.low { border-color: #f99b11; background-color: #f99b11; } + +levelbar > trough > block.high, levelbar > trough > block:not(.empty) { border-color: #9fb876; background-color: #9fb876; } + +levelbar > trough > block.full { border-color: #93af66; background-color: #93af66; } + +levelbar > trough > block.empty { background-color: #c7c5c3; border-color: #c7c5c3; } + +/**************** Print dialog * */ +window.dialog.print drawing { color: #000000; background: none; border: none; padding: 0; } + +window.dialog.print drawing paper { background: white; color: #2e3436; border: 1px solid #a29e9b; } + +window.dialog.print .dialog-action-box { margin: 12px; } + +/********** Frames * */ +frame, .frame { border: 1px solid #a29e9b; } + +frame { border-radius: 7px; } + +frame > label { margin: 4px; } + +actionbar > revealer > box { padding: 6px; border-spacing: 6px; border-top: 1px solid #a29e9b; } + +scrolledwindow > overshoot.top { background-image: radial-gradient(farthest-side at top, #898580 85%, rgba(137, 133, 128, 0)), radial-gradient(farthest-side at top, rgba(0, 0, 0, 0.07), rgba(0, 0, 0, 0)); background-size: 100% 3%, 100% 50%; background-repeat: no-repeat; background-position: top; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow > overshoot.bottom { background-image: radial-gradient(farthest-side at bottom, #898580 85%, rgba(137, 133, 128, 0)), radial-gradient(farthest-side at bottom, rgba(0, 0, 0, 0.07), rgba(0, 0, 0, 0)); background-size: 100% 3%, 100% 50%; background-repeat: no-repeat; background-position: bottom; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow > overshoot.left { background-image: radial-gradient(farthest-side at left, #898580 85%, rgba(137, 133, 128, 0)), radial-gradient(farthest-side at left, rgba(0, 0, 0, 0.07), rgba(0, 0, 0, 0)); background-size: 3% 100%, 50% 100%; background-repeat: no-repeat; background-position: left; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow > overshoot.right { background-image: radial-gradient(farthest-side at right, #898580 85%, rgba(137, 133, 128, 0)), radial-gradient(farthest-side at right, rgba(0, 0, 0, 0.07), rgba(0, 0, 0, 0)); background-size: 3% 100%, 50% 100%; background-repeat: no-repeat; background-position: right; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow > junction { background: #a29e9b, linear-gradient(to bottom, transparent 1px, #bebdbc 1px), linear-gradient(to right, transparent 1px, #bebdbc 1px); } + +scrolledwindow > junction:dir(rtl) { background: #a29e9b, linear-gradient(to bottom, transparent 1px, #bebdbc 1px), linear-gradient(to left, transparent 1px, #bebdbc 1px); } + +separator { background: #aeaba8; min-width: 1px; min-height: 1px; } + +/********* Lists * */ +listview, list { color: #1a1a1a; background-color: #ffffff; border-color: #a29e9b; } + +listview:backdrop, list:backdrop { color: rgba(26, 26, 26, 0.69); background-color: #fcfcfc; border-color: #b1aeab; } + +listview > row, list > row { padding: 2px; } + +listview > row.expander, list > row.expander { padding: 0px; } + +listview > row.expander .row-header, list > row.expander .row-header { padding: 2px; } + +listview.horizontal row.separator, listview.separators.horizontal > row:not(.separator), list.horizontal row.separator, list.separators.horizontal > row:not(.separator) { border-left: 1px solid #b4b1af; } + +listview:not(.horizontal) row.separator, listview.separators:not(.horizontal) > row:not(.separator), list:not(.horizontal) row.separator, list.separators:not(.horizontal) > row:not(.separator) { border-bottom: 1px solid #b4b1af; } + +row { outline: 0 solid transparent; outline-offset: 4px; } + +row:focus:focus-visible { outline-color: #a29e9b; outline-width: 2px; outline-offset: -2px; } + +row.activatable.has-open-popup, row.activatable:hover { background-color: rgba(0, 0, 0, 0.05); } + +row.activatable:active { box-shadow: inset 0 2px 2px -2px rgba(0, 0, 0, 0.2); } + +row.activatable:selected:active { box-shadow: inset 0 2px 3px -1px rgba(0, 0, 0, 0.5); } + +row.activatable.has-open-popup:selected, row.activatable:selected:hover { background-color: #799ac3; } + +row:selected { outline-color: rgba(255, 255, 255, 0.8); } + +columnview > listview > row { padding: 0; } + +columnview > listview > row > cell { padding: 8px 6px; } + +columnview > listview > row > cell:not(:first-child) { border-left: 1px solid transparent; } + +columnview.column-separators > listview > row > cell { border-left-color: #b4b1af; } + +columnview.data-table > listview > row > cell { padding-top: 2px; padding-bottom: 2px; } + +treeexpander { border-spacing: 4px; } + +/******************************************************** Data Tables * treeview like tables with individual focusable cells * https://gitlab.gnome.org/GNOME/gtk/-/issues/2929 * */ +columnview row:not(:selected) cell editablelabel:not(.editing):focus-within { outline: 2px solid #a29e9b; } + +columnview row:not(:selected) cell editablelabel.editing:focus-within { outline: 2px solid #86abd9; } + +columnview row:not(:selected) cell editablelabel.editing text selection { color: #ffffff; background-color: #86abd9; } + +/******************************************************* Rich Lists * Large list usually containing lots of widgets * https://gitlab.gnome.org/GNOME/gtk/-/issues/3073 * */ +.rich-list { /* rich lists usually containing other widgets than just labels/text */ } + +.rich-list > row { padding: 8px 12px; min-height: 32px; /* should be tall even when only containing a label */ } + +.rich-list > row > box { border-spacing: 12px; } + +/********************* App Notifications * */ +.app-notification { padding: 10px; border-spacing: 10px; border-radius: 0 0 5px 5px; background-color: rgba(29, 29, 29, 0.975); background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), transparent 2px); background-clip: padding-box; } + +.app-notification border { border: none; } + +/************* Expanders * */ +expander { min-width: 16px; min-height: 16px; -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); } + +expander:dir(rtl) { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); } + +expander:disabled { color: #a9a5a2; } + +expander:checked { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +expander-widget > box > title { outline: 0 solid transparent; outline-offset: 4px; } + +expander-widget:focus:focus-visible > box > title { outline-color: #a29e9b; outline-width: 2px; outline-offset: -2px; } + +expander-widget > box > title { transition: outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); border-radius: 4px; } + +expander-widget > box > title:hover > expander { color: #4d4d4d; } + +.navigation-sidebar:not(decoration):not(window):drop(active):focus, .navigation-sidebar:not(decoration):not(window):drop(active), placessidebar:not(decoration):not(window):drop(active):focus, placessidebar:not(decoration):not(window):drop(active), stackswitcher:not(decoration):not(window):drop(active):focus, stackswitcher:not(decoration):not(window):drop(active), expander-widget:not(decoration):not(window):drop(active):focus, expander-widget:not(decoration):not(window):drop(active) { box-shadow: none; } + +/************ Calendar * */ +calendar { color: #1a1a1a; border: 1px solid #a29e9b; } + +calendar > header { border-bottom: 1px solid #a29e9b; } + +calendar > header > button { border: none; box-shadow: none; background: none; border-radius: 0; } + +calendar > header > button:backdrop { background: none; } + +calendar > grid > label.today { box-shadow: inset 0px -2px #a29e9b; } + +calendar > grid > label.today:selected { box-shadow: none; } + +calendar > grid > label:focus { outline-color: #a29e9b; outline-offset: -2px; outline-width: 2px; outline-style: solid; } + +calendar > grid > label.day-number { padding: 4px; } + +calendar > grid > label.day-number:selected { border-radius: 3px; } + +calendar > grid > label.day-number.other-month { color: alpha(currentColor,0.3); } + +/*********** Dialogs * */ +window.dialog.message .titlebar { min-height: 20px; background-image: none; background-color: #edeceb; border-style: none; border-top-left-radius: 7px; border-top-right-radius: 7px; } + +window.dialog.message box.dialog-vbox.vertical { border-spacing: 10px; } + +window.dialog.message label.title { font-weight: 800; font-size: 15pt; } + +window.dialog.message.csd.background { border-bottom-left-radius: 8px; border-bottom-right-radius: 8px; } + +window.dialog.message.csd .dialog-action-area button { padding: 10px 14px; border-radius: 0; border-left-style: solid; border-right-style: none; border-bottom-style: none; } + +window.dialog.message.csd .dialog-action-area button:first-child { border-left-style: none; border-bottom-left-radius: 7px; } + +window.dialog.message.csd .dialog-action-area button:last-child { border-bottom-right-radius: 7px; } + +filechooser .dialog-action-box { border-top: 1px solid #a29e9b; } + +filechooser #pathbarbox { border-bottom: 1px solid #edeceb; } + +filechooserbutton > button > box { border-spacing: 6px; } + +filechooserbutton:drop(active) { box-shadow: none; border-color: transparent; } + +/*********** Sidebar * */ +.sidebar { background-color: #f6f6f5; } + +.sidebar:not(separator):dir(ltr), .sidebar.left:not(separator), .sidebar.left:not(separator):dir(rtl) { border-right: 1px solid #a29e9b; border-left-style: none; } + +.sidebar:not(separator):dir(rtl), .sidebar.right:not(separator) { border-left: 1px solid #a29e9b; border-right-style: none; } + +.sidebar listview.view, .sidebar list { background-color: transparent; } + +paned .sidebar.left, paned .sidebar.right, paned .sidebar.left:dir(rtl), paned .sidebar:dir(rtl), paned .sidebar:dir(ltr), paned .sidebar { border-style: none; } + +stacksidebar list.separators:not(.horizontal) > row:not(.separator) { border-bottom: none; } + +stacksidebar row { padding: 10px 4px; } + +stacksidebar row > label { padding-left: 6px; padding-right: 6px; } + +stacksidebar row.needs-attention > label { background-size: 6px 6px, 0 0; } + +stacksidebar row:selected { background-color: #dfdddb; border-radius: 3px; color: #000000; } + +stacksidebar row:selected:hover:dir(ltr), stacksidebar row:selected:hover:dir(rtl) { background-color: #d2d0cd; } + +stacksidebar row:focus:focus-visible { outline-width: 0; background-color: #86abd9; color: #ffffff; } + +stacksidebar row.activatable:active, stacksidebar row.activatable:selected:active { box-shadow: none; } + +separator.sidebar { background-color: #a29e9b; } + +/********************** Navigation Sidebar * */ +.navigation-sidebar { padding: 3px 0; } + +.navigation-sidebar > separator { margin: 3px; } + +.navigation-sidebar > row { min-height: 36px; padding: 0 8px; border-radius: 3px; margin: 0 3px 2px; } + +.navigation-sidebar > row:hover, .navigation-sidebar > row:focus-visible:focus-within { background-color: #d2d0cd; } + +.navigation-sidebar > row:selected { background-color: #dfdddb; color: inherit; } + +.navigation-sidebar > row:selected:hover { background-color: #d2d0cd; } + +.navigation-sidebar > row:selected:focus-visible:focus-within { outline-width: 0; color: #ffffff; background-color: #86abd9; } + +.navigation-sidebar > row:selected:focus-visible:focus-within:hover { background-color: #5f90cd; } + +.navigation-sidebar > row:disabled { color: #a9a5a2; } + +/**************** File chooser * */ +row image.sidebar-icon { opacity: 0.7; } + +/* this should be more generic, only using .navigation-sidebar https://gitlab.gnome.org/GNOME/gtk/-/issues/2929 */ +placessidebar .navigation-sidebar > row { padding: 0; } + +placessidebar .navigation-sidebar > row > revealer { padding: 0 14px; } + +placessidebar .navigation-sidebar > row image.sidebar-icon:dir(ltr) { padding-right: 8px; } + +placessidebar .navigation-sidebar > row image.sidebar-icon:dir(rtl) { padding-left: 8px; } + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(ltr) { padding-right: 2px; } + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(rtl) { padding-left: 2px; } + +button.sidebar-button { min-height: 26px; min-width: 26px; margin-top: 3px; margin-bottom: 3px; padding: 0; border-radius: 100%; } + +placessidebar .navigation-sidebar > row:selected:active { box-shadow: none; } + +placessidebar .navigation-sidebar > row.sidebar-placeholder-row { padding: 0 8px; min-height: 2px; background-image: image(#93af66); background-clip: content-box; } + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row { color: #86abd9; } + +placessidebar .navigation-sidebar > row:drop(active):not(:disabled) { color: #93af66; box-shadow: inset 0 1px #93af66, inset 0 -1px #93af66; } + +placessidebar .navigation-sidebar > row:drop(active):not(:disabled):selected { color: #ffffff; background-color: #93af66; } + +placesview .server-list-button > image { transition: 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); -gtk-icon-transform: rotate(0turn); } + +placesview .server-list-button:checked > image { transition: 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); -gtk-icon-transform: rotate(-0.5turn); } + +placesview > actionbar > revealer > box > box { border-spacing: 6px; } + +/********* Paned * */ +paned > separator { min-width: 1px; min-height: 1px; -gtk-icon-source: none; border-style: none; background-color: transparent; background-image: image(#a29e9b); background-size: 1px 1px; } + +paned > separator:selected { background-image: image(#86abd9); } + +paned > separator.wide { min-width: 5px; min-height: 5px; background-color: #edeceb; background-image: image(#a29e9b), image(#a29e9b); background-size: 1px 1px, 1px 1px; } + +paned.horizontal > separator { background-repeat: repeat-y; } + +paned.horizontal > separator:dir(ltr) { margin: 0 -8px 0 0; padding: 0 8px 0 0; background-position: left; } + +paned.horizontal > separator:dir(rtl) { margin: 0 0 0 -8px; padding: 0 0 0 8px; background-position: right; } + +paned.horizontal > separator.wide { margin: 0; padding: 0; background-repeat: repeat-y, repeat-y; background-position: left, right; } + +paned.vertical > separator { margin: 0 0 -8px 0; padding: 0 0 8px 0; background-repeat: repeat-x; background-position: top; } + +paned.vertical > separator.wide { margin: 0; padding: 0; background-repeat: repeat-x, repeat-x; background-position: bottom, top; } + +/************** GtkVideo * */ +video { background: black; } + +video image.osd { min-width: 64px; min-height: 64px; border-radius: 32px; } + +/************ Tooltips * */ +tooltip { padding: 6px 10px; border-radius: 7px; box-shadow: none; } + +tooltip.background { background-color: rgba(0, 0, 0, 0.8); background-clip: padding-box; border: 1px solid rgba(255, 255, 255, 0.1); color: white; } + +tooltip > box { border-spacing: 6px; } + +/***************** Color Chooser * */ +colorswatch { transition: outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +colorswatch { outline: 0 solid transparent; outline-offset: 6px; } + +colorswatch:focus:focus-visible { outline-color: #a29e9b; outline-width: 4px; outline-offset: -2px; } + +colorswatch:drop(active), colorswatch { border-style: none; } + +colorswatch.top { border-top-left-radius: 5.5px; border-top-right-radius: 5.5px; } + +colorswatch.top > overlay { border-top-left-radius: 5px; border-top-right-radius: 5px; } + +colorswatch.bottom { border-bottom-left-radius: 5.5px; border-bottom-right-radius: 5.5px; } + +colorswatch.bottom > overlay { border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; } + +colorswatch.left, colorswatch:first-child:not(.top) { border-top-left-radius: 5.5px; border-bottom-left-radius: 5.5px; } + +colorswatch.left > overlay, colorswatch:first-child:not(.top) > overlay { border-top-left-radius: 5px; border-bottom-left-radius: 5px; } + +colorswatch.right, colorswatch:last-child:not(.bottom) { border-top-right-radius: 5.5px; border-bottom-right-radius: 5.5px; } + +colorswatch.right > overlay, colorswatch:last-child:not(.bottom) > overlay { border-top-right-radius: 5px; border-bottom-right-radius: 5px; } + +colorswatch.dark > overlay { color: white; } + +colorswatch.dark.activatable:hover > overlay { border-color: rgba(0, 0, 0, 0.8); } + +colorswatch.light > overlay { color: black; } + +colorswatch.light.activatable:hover > overlay { border-color: rgba(0, 0, 0, 0.5); } + +colorswatch:drop(active) { box-shadow: none; } + +colorswatch.light:drop(active) > overlay { border-color: #93af66; box-shadow: inset 0 0 0 2px #829e53, inset 0 0 0 1px #93af66; } + +colorswatch.dark:drop(active) > overlay { border-color: #93af66; box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.3), inset 0 0 0 1px #93af66; } + +colorswatch > overlay { border: 1px solid rgba(0, 0, 0, 0.3); } + +colorswatch.activatable:hover > overlay { box-shadow: inset 0 1px rgba(255, 255, 255, 0.4), inset 0 -1px rgba(0, 0, 0, 0.2); } + +colorswatch#add-color-button { border-radius: 5px 0 0 5px; } + +colorswatch#add-color-button:only-child { border-radius: 5px; } + +colorswatch#add-color-button > overlay { color: #000000; outline-color: #a29e9b; border-color: #a29e9b; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +colorswatch#add-color-button.activatable:hover > overlay { color: #000000; border-color: #a29e9b; background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); box-shadow: 0 1px rgba(0, 0, 0, 0.15); } + +colorswatch:disabled { opacity: 0.5; } + +colorswatch:disabled > overlay { border-color: rgba(0, 0, 0, 0.6); box-shadow: none; } + +row:selected colorswatch { box-shadow: 0 0 0 2px #ffffff; } + +colorswatch#editor-color-sample { border-radius: 4px; } + +colorswatch#editor-color-sample > overlay { border-radius: 4.5px; } + +plane { transition: outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +plane { outline: 0 solid transparent; outline-offset: 6px; } + +plane:focus:focus-visible { outline-color: #a29e9b; outline-width: 2px; outline-offset: 2px; } + +colorchooser .popover.osd { border-radius: 5px; } + +/******** Misc * */ +.content-view { background-color: #dcdad8; } + +.content-view:hover { -gtk-icon-filter: brightness(1.2); } + +.content-view .tile { margin: 2px; background-color: transparent; border-radius: 0; padding: 0; } + +.content-view .tile:active, .content-view .tile:selected { background-color: transparent; } + +.content-view .tile:disabled { background-color: transparent; } + +.osd .scale-popup button.flat { border-style: none; border-radius: 5px; } + +.scale-popup button:hover { background-color: rgba(0, 0, 0, 0.1); border-radius: 5px; } + +/********************** Window Decorations * */ +window { border-width: 0px; } + +window.csd { box-shadow: 1px 1px 0px #000000, -1px 1px 0px #000000, 1px -1px 0px #000000, -1px -1px 0px #000000; margin: 0px; border-radius: 7px 7px 0 0; } + +window.csd:backdrop { transition: 200ms ease-out; } + +window.csd.popup { border-radius: 3px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.13); } + +window.csd.dialog.message { border-radius: 7px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.13); } + +window.csd.solid-csd { margin: 0; padding: 0; border: solid 1px #a29e9b; border-radius: 0; box-shadow: inset 0 0 0 3px #323030, inset 0 1px rgba(255, 255, 255, 0.8); } + +window.csd.solid-csd:backdrop { box-shadow: inset 0 0 0 3px #edeceb, inset 0 1px rgba(255, 255, 255, 0.8); } + +window.maximized, window.fullscreen, window.tiled, window.tiled-top, window.tiled-left, window.tiled-right, window.tiled-bottom { border-radius: 0; } + +window.popup { box-shadow: none; } + +window.ssd { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.23); } + +tooltip.csd { border-radius: 5px; box-shadow: none; } + +.view:selected:focus, .view:selected, textview > text:selected:focus, textview > text:selected, textview > text > selection:focus, textview > text > selection, iconview:selected:focus, iconview:selected, flowbox > flowboxchild:selected, gridview > child:selected, entry > text > selection, modelbutton.flat:selected, spinbutton:not(.vertical) > text > selection, spinbutton.vertical > text > text > selection, spinbutton.vertical > text > selection, columnview.view:selected:focus, columnview.view:selected, treeview.view:selected:focus, treeview.view:selected, row:selected, calendar > grid > label.day-number:selected { background-color: #86abd9; } + +label:selected, .view:selected:focus, .view:selected, textview > text:selected:focus, textview > text:selected, textview > text > selection:focus, textview > text > selection, iconview:selected:focus, iconview:selected, flowbox > flowboxchild:selected, gridview > child:selected, entry > text > selection, modelbutton.flat:selected, spinbutton:not(.vertical) > text > selection, spinbutton.vertical > text > text > selection, spinbutton.vertical > text > selection, columnview.view:selected:focus, columnview.view:selected, treeview.view:selected:focus, treeview.view:selected, row:selected, calendar > grid > label.day-number:selected { color: #ffffff; } + +label:disabled > selection, label:disabled:selected, .view:disabled:selected, textview > text:disabled:selected:focus, textview > text:disabled:selected, textview > text > selection:disabled, iconview:disabled:selected:focus, iconview:disabled:selected, flowbox > flowboxchild:disabled:selected, gridview > child:disabled:selected, entry > text > selection:disabled, modelbutton.flat:disabled:selected, spinbutton:not(.vertical) > text > selection:disabled, spinbutton.vertical > text > text > selection:disabled, spinbutton.vertical > text > selection:disabled, columnview.view:disabled:selected, treeview.view:disabled:selected, row:disabled:selected, calendar > grid > label.day-number:disabled:selected { color: #c3d5ec; } + +.monospace { font-family: monospace; } + +/********************** Touch Copy & Paste * */ +cursor-handle { background-color: transparent; background-image: none; box-shadow: none; border-style: none; min-width: 20px; min-height: 24px; padding-left: 20px; padding-right: 20px; padding-top: 24px; padding-bottom: 24px; } + +cursor-handle.top:dir(ltr), cursor-handle.bottom:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/text-select-start.png"), url("assets/text-select-start@2.png")); } + +cursor-handle.bottom:dir(ltr), cursor-handle.top:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/text-select-end.png"), url("assets/text-select-end@2.png")); } + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above.png"), url("assets/slider-horz-scale-has-marks-above@2.png")); } + +cursor-handle.top:hover:dir(ltr), cursor-handle.bottom:hover:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/text-select-start-hover.png"), url("assets/text-select-start-hover@2.png")); } + +cursor-handle.bottom:hover:dir(ltr), cursor-handle.top:hover:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/text-select-end-hover.png"), url("assets/text-select-end-hover@2.png")); } + +cursor-handle.insertion-cursor:hover:dir(ltr), cursor-handle.insertion-cursor:hover:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-hover.png"), url("assets/slider-horz-scale-has-marks-above-hover@2.png")); } + +cursor-handle.top:active:dir(ltr), cursor-handle.bottom:active:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/text-select-start-active.png"), url("assets/text-select-start-active@2.png")); } + +cursor-handle.bottom:active:dir(ltr), cursor-handle.top:active:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/text-select-end-active.png"), url("assets/text-select-end-active@2.png")); } + +cursor-handle.insertion-cursor:active:dir(ltr), cursor-handle.insertion-cursor:active:dir(rtl) { -gtk-icon-source: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-active.png"), url("assets/slider-horz-scale-has-marks-above-active@2.png")); } + +shortcuts-section { margin: 20px; } + +.shortcuts-search-results { margin: 20px; border-spacing: 24px; } + +shortcut { border-spacing: 6px; } + +shortcut > .keycap { min-width: 20px; min-height: 25px; margin-top: 2px; padding-bottom: 3px; padding-left: 6px; padding-right: 6px; color: #000000; background-color: #ffffff; border: 1px solid; border-color: #c7c5c3; border-radius: 5px; box-shadow: inset 0 -3px #f1f0ef; font-size: smaller; } + +:not(decoration):not(window):drop(active):focus, :not(decoration):not(window):drop(active) { border-color: #93af66; box-shadow: inset 0 0 0 1px #93af66; caret-color: #93af66; } + +stackswitcher > button.text-button { min-width: 100px; } + +stackswitcher.circular { border-spacing: 12px; } + +stackswitcher.circular > button.circular, stackswitcher.circular > button.text-button.circular { min-width: 32px; min-height: 32px; padding: 0; } + +/************* App Icons * */ +/* Outline for low res icons */ +.lowres-icon { -gtk-icon-shadow: 0 -1px rgba(0, 0, 0, 0.05), 1px 0 rgba(0, 0, 0, 0.1), 0 1px rgba(0, 0, 0, 0.3), -1px 0 rgba(0, 0, 0, 0.1); } + +/* Drapshadow for large icons */ +.icon-dropshadow { -gtk-icon-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 -1px rgba(0, 0, 0, 0.05), 1px 0 rgba(0, 0, 0, 0.1), 0 1px rgba(0, 0, 0, 0.3), -1px 0 rgba(0, 0, 0, 0.1); } + +/********* Emoji * */ +popover.emoji-picker > contents { padding: 0; } + +.emoji-searchbar { padding: 6px; border-spacing: 6px; border-bottom: 1px solid #a29e9b; } + +.emoji-toolbar { padding: 6px; border-spacing: 6px; border-top: 1px solid #a29e9b; } + +button.emoji-section { border-color: transparent; border-width: 3px; border-style: none none solid; border-radius: 0; padding: 3px 0 0; min-width: 32px; min-height: 28px; /* reset props inherited from the button style */ background: none; box-shadow: none; text-shadow: none; } + +button.emoji-section:hover { border-color: #a29e9b; } + +button.emoji-section:checked { border-color: #86abd9; } + +popover.emoji-picker emoji { font-size: x-large; padding: 6px; border-radius: 6px; } + +popover.emoji-picker emoji:focus, popover.emoji-picker emoji:hover { background: #86abd9; } + +emoji-completion-row > box { border-spacing: 10px; padding: 2px 10px; } + +emoji-completion-row:focus, emoji-completion-row:hover { background-color: #86abd9; color: #ffffff; } + +emoji-completion-row emoji:focus, emoji-completion-row emoji:hover { background-color: #dfdddb; } + +popover.entry-completion > contents { padding: 0; } + +statusbar { padding: 6px 10px 6px 10px; } + +/* GTK NAMED COLORS ---------------- use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color #000000; +/* +text color for entries, views and content in general */ +@define-color theme_text_color #1a1a1a; +/* +widget base background color */ +@define-color theme_bg_color #edeceb; +/* +text widgets and the like base background color */ +@define-color theme_base_color #ffffff; +/* +base background color of selections */ +@define-color theme_selected_bg_color #86abd9; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color #ffffff; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #edeceb; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color #a9a5a2; +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #ffffff; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color #2f2f2f; +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color #1a1a1a; +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #edeceb; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #fcfcfc; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #86abd9; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color #ffffff; +/* +insensitive color on backdrop windows*/ +@define-color unfocused_insensitive_color #c9c6c3; +/* +widgets main borders color */ +@define-color borders #a29e9b; +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders #b1aeab; +/* +these are pretty self explicative */ +@define-color warning_color #f99b11; +@define-color error_color #c7162b; +@define-color success_color #93af66; +/* +these colors are exported for the window manager and shouldn't be used in applications, +read if you used those and something break with a version upgrade you're on your own... */ +@define-color wm_title shade(#000000, 1.8); +@define-color wm_unfocused_title #2f2f2f; +@define-color wm_highlight rgba(255, 255, 255, 0.8); +@define-color wm_borders_edge rgba(255, 255, 255, 0.8); +@define-color wm_bg_a shade(#edeceb, 1.2); +@define-color wm_bg_b #edeceb; +@define-color wm_shadow alpha(black, 0.35); +@define-color wm_border alpha(black, 0.18); +@define-color wm_button_hover_color_a shade(#edeceb, 1.3); +@define-color wm_button_hover_color_b #edeceb; +@define-color wm_button_active_color_a shade(#edeceb, 0.85); +@define-color wm_button_active_color_b shade(#edeceb, 0.89); +@define-color wm_button_active_color_c shade(#edeceb, 0.9); +/* content view background such as thumbnails view in Photos or Boxes */ +@define-color content_view_bg #ffffff; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #ffffff; +headerbar *, button * { text-shadow: none; -gtk-icon-shadow: none; } + +spinner:not(:backdrop) { color: #19B6EE; } + +button.suggested-action spinner, button.destructive-action spinner { color: #ffffff; } + +button.suggested-action spinner:backdrop, button.destructive-action spinner:backdrop { color: #fcfcfc; } + +windowcontrols button.maximize, windowcontrols button.minimize, windowcontrols button.close { border-radius: 6px; background-image: linear-gradient(to bottom, #a4c2e8, #96b8e2 50%, #91b4df 50%, #84a9d9); border-color: #4b6e9b; } + +windowcontrols button.maximize:backdrop, windowcontrols button.minimize:backdrop, windowcontrols button.close:backdrop { background-image: none; border-color: #a29e9b; } + +windowcontrols button.maximize:hover, windowcontrols button.maximize:backdrop:hover, windowcontrols button.minimize:hover, windowcontrols button.minimize:backdrop:hover, windowcontrols button.close:hover, windowcontrols button.close:backdrop:hover { background-image: linear-gradient(to bottom, #a4c2e8, #96b8e2); } + +windowcontrols button.maximize:active, windowcontrols button.maximize:backdrop:active, windowcontrols button.minimize:active, windowcontrols button.minimize:backdrop:active, windowcontrols button.close:active, windowcontrols button.close:backdrop:active { background-image: linear-gradient(to bottom, #6b9cda, #6799d9); } + +menu item:selected, .menu item:selected, .context-menu item:selected { color: #000000; background-color: #000000; } + +menubar item:selected, .menubar item:selected { color: #000000; background-color: #000000; } + +.app-notification, .app-notification.frame { padding: 0px 10px; margin: 12px; color: #1a1a1a; border-radius: 3px; background: none; background-color: #ffffff; border: 1px solid #a29e9b; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); text-shadow: none; } + +.app-notification button.text-button, .app-notification button.image-button, .app-notification button, .app-notification button.text-button:dir(ltr), .app-notification button.image-button:dir(ltr), .app-notification button:dir(ltr), .app-notification button.text-button:dir(rtl), .app-notification button.image-button:dir(rtl), .app-notification button:dir(rtl), .app-notification.frame button.text-button, .app-notification.frame button.image-button, .app-notification.frame button, .app-notification.frame button.text-button:dir(ltr), .app-notification.frame button.image-button:dir(ltr), .app-notification.frame button:dir(ltr), .app-notification.frame button.text-button:dir(rtl), .app-notification.frame button.image-button:dir(rtl), .app-notification.frame button:dir(rtl) { color: #000000; outline-color: #a29e9b; border-color: #a29e9b; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +.app-notification button.text-button.flat, .app-notification button.image-button.flat, .app-notification button.flat, .app-notification button.text-button.flat:dir(ltr), .app-notification button.image-button.flat:dir(ltr), .app-notification button.flat:dir(ltr), .app-notification button.text-button.flat:dir(rtl), .app-notification button.image-button.flat:dir(rtl), .app-notification button.flat:dir(rtl), .app-notification.frame button.text-button.flat, .app-notification.frame button.image-button.flat, .app-notification.frame button.flat, .app-notification.frame button.text-button.flat:dir(ltr), .app-notification.frame button.image-button.flat:dir(ltr), .app-notification.frame button.flat:dir(ltr), .app-notification.frame button.text-button.flat:dir(rtl), .app-notification.frame button.image-button.flat:dir(rtl), .app-notification.frame button.flat:dir(rtl) { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; } + +.app-notification button.text-button:hover, .app-notification button.image-button:hover, .app-notification button:hover, .app-notification button.text-button:dir(ltr):hover, .app-notification button.image-button:dir(ltr):hover, .app-notification button:dir(ltr):hover, .app-notification button.text-button:dir(rtl):hover, .app-notification button.image-button:dir(rtl):hover, .app-notification button:dir(rtl):hover, .app-notification.frame button.text-button:hover, .app-notification.frame button.image-button:hover, .app-notification.frame button:hover, .app-notification.frame button.text-button:dir(ltr):hover, .app-notification.frame button.image-button:dir(ltr):hover, .app-notification.frame button:dir(ltr):hover, .app-notification.frame button.text-button:dir(rtl):hover, .app-notification.frame button.image-button:dir(rtl):hover, .app-notification.frame button:dir(rtl):hover { color: #000000; border-color: #a29e9b; background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); box-shadow: 0 1px rgba(0, 0, 0, 0.15); } + +.app-notification button.text-button:active, .app-notification button.image-button:active, .app-notification button:active, .app-notification button.text-button:dir(ltr):active, .app-notification button.image-button:dir(ltr):active, .app-notification button:dir(ltr):active, .app-notification button.text-button:dir(rtl):active, .app-notification button.image-button:dir(rtl):active, .app-notification button:dir(rtl):active, .app-notification.frame button.text-button:active, .app-notification.frame button.image-button:active, .app-notification.frame button:active, .app-notification.frame button.text-button:dir(ltr):active, .app-notification.frame button.image-button:dir(ltr):active, .app-notification.frame button:dir(ltr):active, .app-notification.frame button.text-button:dir(rtl):active, .app-notification.frame button.image-button:dir(rtl):active, .app-notification.frame button:dir(rtl):active { color: #000000; border-color: #a29e9b; background-image: linear-gradient(to bottom, #cbc9c6, #d6d4d2 3px, #d9d7d5 4px, #cdcbc9 50%, #c9c6c4 50%, #c0bdba); box-shadow: none; } + +.app-notification button.text-button:backdrop, .app-notification button.image-button:backdrop, .app-notification button:backdrop, .app-notification button.text-button:dir(ltr):backdrop, .app-notification button.image-button:dir(ltr):backdrop, .app-notification button:dir(ltr):backdrop, .app-notification button.text-button:dir(rtl):backdrop, .app-notification button.image-button:dir(rtl):backdrop, .app-notification button:dir(rtl):backdrop, .app-notification.frame button.text-button:backdrop, .app-notification.frame button.image-button:backdrop, .app-notification.frame button:backdrop, .app-notification.frame button.text-button:dir(ltr):backdrop, .app-notification.frame button.image-button:dir(ltr):backdrop, .app-notification.frame button:dir(ltr):backdrop, .app-notification.frame button.text-button:dir(rtl):backdrop, .app-notification.frame button.image-button:dir(rtl):backdrop, .app-notification.frame button:dir(rtl):backdrop { color: #2f2f2f; border-color: #b1aeab; background-image: image(#edeceb); box-shadow: none; } + +.app-notification button.text-button.flat:backdrop, .app-notification button.image-button.flat:backdrop, .app-notification button.flat:backdrop, .app-notification button.text-button.flat:dir(ltr):backdrop, .app-notification button.image-button.flat:dir(ltr):backdrop, .app-notification button.flat:dir(ltr):backdrop, .app-notification button.text-button.flat:dir(rtl):backdrop, .app-notification button.image-button.flat:dir(rtl):backdrop, .app-notification button.flat:dir(rtl):backdrop, .app-notification.frame button.text-button.flat:backdrop, .app-notification.frame button.image-button.flat:backdrop, .app-notification.frame button.flat:backdrop, .app-notification.frame button.text-button.flat:dir(ltr):backdrop, .app-notification.frame button.image-button.flat:dir(ltr):backdrop, .app-notification.frame button.flat:dir(ltr):backdrop, .app-notification.frame button.text-button.flat:dir(rtl):backdrop, .app-notification.frame button.image-button.flat:dir(rtl):backdrop, .app-notification.frame button.flat:dir(rtl):backdrop { border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; } + +.app-notification button.text-button:disabled, .app-notification button.image-button:disabled, .app-notification button:disabled, .app-notification button.text-button:dir(ltr):disabled, .app-notification button.image-button:dir(ltr):disabled, .app-notification button:dir(ltr):disabled, .app-notification button.text-button:dir(rtl):disabled, .app-notification button.image-button:dir(rtl):disabled, .app-notification button:dir(rtl):disabled, .app-notification.frame button.text-button:disabled, .app-notification.frame button.image-button:disabled, .app-notification.frame button:disabled, .app-notification.frame button.text-button:dir(ltr):disabled, .app-notification.frame button.image-button:dir(ltr):disabled, .app-notification.frame button:dir(ltr):disabled, .app-notification.frame button.text-button:dir(rtl):disabled, .app-notification.frame button.image-button:dir(rtl):disabled, .app-notification.frame button:dir(rtl):disabled { color: #a9a5a2; border-color: #bdbab8; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); } + +.app-notification:backdrop, .app-notification.frame:backdrop { background-color: #edeceb; color: rgba(26, 26, 26, 0.69); box-shadow: none; transition: 200ms ease-out; } + +.app-notification border, .app-notification.frame border { border: none; } + +notebook > header, notebook > header:backdrop { background: transparent; } + +notebook > header tabs, notebook > header tabs.right, notebook > header tabs.left, notebook > header tabs.top, notebook > header tabs.bottom, notebook > header tabs:hover, notebook > header tabs.right:hover, notebook > header tabs.left:hover, notebook > header tabs.top:hover, notebook > header tabs.bottom:hover, notebook > header tabs:backdrop, notebook > header tabs.right:backdrop, notebook > header tabs.left:backdrop, notebook > header tabs.top:backdrop, notebook > header tabs.bottom:backdrop { background-color: transparent; } + +notebook > header tabs tab, notebook > header tabs.right tab, notebook > header tabs.left tab, notebook > header tabs.top tab, notebook > header tabs.bottom tab, notebook > header tabs:hover tab, notebook > header tabs.right:hover tab, notebook > header tabs.left:hover tab, notebook > header tabs.top:hover tab, notebook > header tabs.bottom:hover tab, notebook > header tabs:backdrop tab, notebook > header tabs.right:backdrop tab, notebook > header tabs.left:backdrop tab, notebook > header tabs.top:backdrop tab, notebook > header tabs.bottom:backdrop tab { outline-width: 1px; outline-offset: -2px; } + +notebook > header tabs tab, notebook > header tabs tab:hover, notebook > header tabs tab:active, notebook > header tabs tab:checked, notebook > header tabs tab:checked:hover, notebook > header tabs tab:checked:active, notebook > header tabs tab:backdrop, notebook > header tabs tab:backdrop:hover, notebook > header tabs tab:backdrop:active, notebook > header tabs tab:backdrop:checked, notebook > header tabs tab:backdrop:checked:hover, notebook > header tabs tab:backdrop:checked:active, notebook > header tabs tab:dir(ltr), notebook > header tabs tab:dir(ltr):hover, notebook > header tabs tab:dir(ltr):active, notebook > header tabs tab:dir(ltr):checked, notebook > header tabs tab:dir(ltr):checked:hover, notebook > header tabs tab:dir(ltr):checked:active, notebook > header tabs tab:dir(ltr):backdrop, notebook > header tabs tab:dir(ltr):backdrop:hover, notebook > header tabs tab:dir(ltr):backdrop:active, notebook > header tabs tab:dir(ltr):backdrop:checked, notebook > header tabs tab:dir(ltr):backdrop:checked:hover, notebook > header tabs tab:dir(ltr):backdrop:checked:active, notebook > header tabs tab:dir(rtl), notebook > header tabs tab:dir(rtl):hover, notebook > header tabs tab:dir(rtl):active, notebook > header tabs tab:dir(rtl):checked, notebook > header tabs tab:dir(rtl):checked:hover, notebook > header tabs tab:dir(rtl):checked:active, notebook > header tabs tab:dir(rtl):backdrop, notebook > header tabs tab:dir(rtl):backdrop:hover, notebook > header tabs tab:dir(rtl):backdrop:active, notebook > header tabs tab:dir(rtl):backdrop:checked, notebook > header tabs tab:dir(rtl):backdrop:checked:hover, notebook > header tabs tab:dir(rtl):backdrop:checked:active, notebook > header tabs.right tab, notebook > header tabs.right tab:hover, notebook > header tabs.right tab:active, notebook > header tabs.right tab:checked, notebook > header tabs.right tab:checked:hover, notebook > header tabs.right tab:checked:active, notebook > header tabs.right tab:backdrop, notebook > header tabs.right tab:backdrop:hover, notebook > header tabs.right tab:backdrop:active, notebook > header tabs.right tab:backdrop:checked, notebook > header tabs.right tab:backdrop:checked:hover, notebook > header tabs.right tab:backdrop:checked:active, notebook > header tabs.right tab:dir(ltr), notebook > header tabs.right tab:dir(ltr):hover, notebook > header tabs.right tab:dir(ltr):active, notebook > header tabs.right tab:dir(ltr):checked, notebook > header tabs.right tab:dir(ltr):checked:hover, notebook > header tabs.right tab:dir(ltr):checked:active, notebook > header tabs.right tab:dir(ltr):backdrop, notebook > header tabs.right tab:dir(ltr):backdrop:hover, notebook > header tabs.right tab:dir(ltr):backdrop:active, notebook > header tabs.right tab:dir(ltr):backdrop:checked, notebook > header tabs.right tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.right tab:dir(ltr):backdrop:checked:active, notebook > header tabs.right tab:dir(rtl), notebook > header tabs.right tab:dir(rtl):hover, notebook > header tabs.right tab:dir(rtl):active, notebook > header tabs.right tab:dir(rtl):checked, notebook > header tabs.right tab:dir(rtl):checked:hover, notebook > header tabs.right tab:dir(rtl):checked:active, notebook > header tabs.right tab:dir(rtl):backdrop, notebook > header tabs.right tab:dir(rtl):backdrop:hover, notebook > header tabs.right tab:dir(rtl):backdrop:active, notebook > header tabs.right tab:dir(rtl):backdrop:checked, notebook > header tabs.right tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.right tab:dir(rtl):backdrop:checked:active, notebook > header tabs.left tab, notebook > header tabs.left tab:hover, notebook > header tabs.left tab:active, notebook > header tabs.left tab:checked, notebook > header tabs.left tab:checked:hover, notebook > header tabs.left tab:checked:active, notebook > header tabs.left tab:backdrop, notebook > header tabs.left tab:backdrop:hover, notebook > header tabs.left tab:backdrop:active, notebook > header tabs.left tab:backdrop:checked, notebook > header tabs.left tab:backdrop:checked:hover, notebook > header tabs.left tab:backdrop:checked:active, notebook > header tabs.left tab:dir(ltr), notebook > header tabs.left tab:dir(ltr):hover, notebook > header tabs.left tab:dir(ltr):active, notebook > header tabs.left tab:dir(ltr):checked, notebook > header tabs.left tab:dir(ltr):checked:hover, notebook > header tabs.left tab:dir(ltr):checked:active, notebook > header tabs.left tab:dir(ltr):backdrop, notebook > header tabs.left tab:dir(ltr):backdrop:hover, notebook > header tabs.left tab:dir(ltr):backdrop:active, notebook > header tabs.left tab:dir(ltr):backdrop:checked, notebook > header tabs.left tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.left tab:dir(ltr):backdrop:checked:active, notebook > header tabs.left tab:dir(rtl), notebook > header tabs.left tab:dir(rtl):hover, notebook > header tabs.left tab:dir(rtl):active, notebook > header tabs.left tab:dir(rtl):checked, notebook > header tabs.left tab:dir(rtl):checked:hover, notebook > header tabs.left tab:dir(rtl):checked:active, notebook > header tabs.left tab:dir(rtl):backdrop, notebook > header tabs.left tab:dir(rtl):backdrop:hover, notebook > header tabs.left tab:dir(rtl):backdrop:active, notebook > header tabs.left tab:dir(rtl):backdrop:checked, notebook > header tabs.left tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.left tab:dir(rtl):backdrop:checked:active, notebook > header tabs.top tab, notebook > header tabs.top tab:hover, notebook > header tabs.top tab:active, notebook > header tabs.top tab:checked, notebook > header tabs.top tab:checked:hover, notebook > header tabs.top tab:checked:active, notebook > header tabs.top tab:backdrop, notebook > header tabs.top tab:backdrop:hover, notebook > header tabs.top tab:backdrop:active, notebook > header tabs.top tab:backdrop:checked, notebook > header tabs.top tab:backdrop:checked:hover, notebook > header tabs.top tab:backdrop:checked:active, notebook > header tabs.top tab:dir(ltr), notebook > header tabs.top tab:dir(ltr):hover, notebook > header tabs.top tab:dir(ltr):active, notebook > header tabs.top tab:dir(ltr):checked, notebook > header tabs.top tab:dir(ltr):checked:hover, notebook > header tabs.top tab:dir(ltr):checked:active, notebook > header tabs.top tab:dir(ltr):backdrop, notebook > header tabs.top tab:dir(ltr):backdrop:hover, notebook > header tabs.top tab:dir(ltr):backdrop:active, notebook > header tabs.top tab:dir(ltr):backdrop:checked, notebook > header tabs.top tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.top tab:dir(ltr):backdrop:checked:active, notebook > header tabs.top tab:dir(rtl), notebook > header tabs.top tab:dir(rtl):hover, notebook > header tabs.top tab:dir(rtl):active, notebook > header tabs.top tab:dir(rtl):checked, notebook > header tabs.top tab:dir(rtl):checked:hover, notebook > header tabs.top tab:dir(rtl):checked:active, notebook > header tabs.top tab:dir(rtl):backdrop, notebook > header tabs.top tab:dir(rtl):backdrop:hover, notebook > header tabs.top tab:dir(rtl):backdrop:active, notebook > header tabs.top tab:dir(rtl):backdrop:checked, notebook > header tabs.top tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.top tab:dir(rtl):backdrop:checked:active, notebook > header tabs.bottom tab, notebook > header tabs.bottom tab:hover, notebook > header tabs.bottom tab:active, notebook > header tabs.bottom tab:checked, notebook > header tabs.bottom tab:checked:hover, notebook > header tabs.bottom tab:checked:active, notebook > header tabs.bottom tab:backdrop, notebook > header tabs.bottom tab:backdrop:hover, notebook > header tabs.bottom tab:backdrop:active, notebook > header tabs.bottom tab:backdrop:checked, notebook > header tabs.bottom tab:backdrop:checked:hover, notebook > header tabs.bottom tab:backdrop:checked:active, notebook > header tabs.bottom tab:dir(ltr), notebook > header tabs.bottom tab:dir(ltr):hover, notebook > header tabs.bottom tab:dir(ltr):active, notebook > header tabs.bottom tab:dir(ltr):checked, notebook > header tabs.bottom tab:dir(ltr):checked:hover, notebook > header tabs.bottom tab:dir(ltr):checked:active, notebook > header tabs.bottom tab:dir(ltr):backdrop, notebook > header tabs.bottom tab:dir(ltr):backdrop:hover, notebook > header tabs.bottom tab:dir(ltr):backdrop:active, notebook > header tabs.bottom tab:dir(ltr):backdrop:checked, notebook > header tabs.bottom tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.bottom tab:dir(ltr):backdrop:checked:active, notebook > header tabs.bottom tab:dir(rtl), notebook > header tabs.bottom tab:dir(rtl):hover, notebook > header tabs.bottom tab:dir(rtl):active, notebook > header tabs.bottom tab:dir(rtl):checked, notebook > header tabs.bottom tab:dir(rtl):checked:hover, notebook > header tabs.bottom tab:dir(rtl):checked:active, notebook > header tabs.bottom tab:dir(rtl):backdrop, notebook > header tabs.bottom tab:dir(rtl):backdrop:hover, notebook > header tabs.bottom tab:dir(rtl):backdrop:active, notebook > header tabs.bottom tab:dir(rtl):backdrop:checked, notebook > header tabs.bottom tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.bottom tab:dir(rtl):backdrop:checked:active, notebook > header tabs:hover tab, notebook > header tabs:hover tab:hover, notebook > header tabs:hover tab:active, notebook > header tabs:hover tab:checked, notebook > header tabs:hover tab:checked:hover, notebook > header tabs:hover tab:checked:active, notebook > header tabs:hover tab:backdrop, notebook > header tabs:hover tab:backdrop:hover, notebook > header tabs:hover tab:backdrop:active, notebook > header tabs:hover tab:backdrop:checked, notebook > header tabs:hover tab:backdrop:checked:hover, notebook > header tabs:hover tab:backdrop:checked:active, notebook > header tabs:hover tab:dir(ltr), notebook > header tabs:hover tab:dir(ltr):hover, notebook > header tabs:hover tab:dir(ltr):active, notebook > header tabs:hover tab:dir(ltr):checked, notebook > header tabs:hover tab:dir(ltr):checked:hover, notebook > header tabs:hover tab:dir(ltr):checked:active, notebook > header tabs:hover tab:dir(ltr):backdrop, notebook > header tabs:hover tab:dir(ltr):backdrop:hover, notebook > header tabs:hover tab:dir(ltr):backdrop:active, notebook > header tabs:hover tab:dir(ltr):backdrop:checked, notebook > header tabs:hover tab:dir(ltr):backdrop:checked:hover, notebook > header tabs:hover tab:dir(ltr):backdrop:checked:active, notebook > header tabs:hover tab:dir(rtl), notebook > header tabs:hover tab:dir(rtl):hover, notebook > header tabs:hover tab:dir(rtl):active, notebook > header tabs:hover tab:dir(rtl):checked, notebook > header tabs:hover tab:dir(rtl):checked:hover, notebook > header tabs:hover tab:dir(rtl):checked:active, notebook > header tabs:hover tab:dir(rtl):backdrop, notebook > header tabs:hover tab:dir(rtl):backdrop:hover, notebook > header tabs:hover tab:dir(rtl):backdrop:active, notebook > header tabs:hover tab:dir(rtl):backdrop:checked, notebook > header tabs:hover tab:dir(rtl):backdrop:checked:hover, notebook > header tabs:hover tab:dir(rtl):backdrop:checked:active, notebook > header tabs.right:hover tab, notebook > header tabs.right:hover tab:hover, notebook > header tabs.right:hover tab:active, notebook > header tabs.right:hover tab:checked, notebook > header tabs.right:hover tab:checked:hover, notebook > header tabs.right:hover tab:checked:active, notebook > header tabs.right:hover tab:backdrop, notebook > header tabs.right:hover tab:backdrop:hover, notebook > header tabs.right:hover tab:backdrop:active, notebook > header tabs.right:hover tab:backdrop:checked, notebook > header tabs.right:hover tab:backdrop:checked:hover, notebook > header tabs.right:hover tab:backdrop:checked:active, notebook > header tabs.right:hover tab:dir(ltr), notebook > header tabs.right:hover tab:dir(ltr):hover, notebook > header tabs.right:hover tab:dir(ltr):active, notebook > header tabs.right:hover tab:dir(ltr):checked, notebook > header tabs.right:hover tab:dir(ltr):checked:hover, notebook > header tabs.right:hover tab:dir(ltr):checked:active, notebook > header tabs.right:hover tab:dir(ltr):backdrop, notebook > header tabs.right:hover tab:dir(ltr):backdrop:hover, notebook > header tabs.right:hover tab:dir(ltr):backdrop:active, notebook > header tabs.right:hover tab:dir(ltr):backdrop:checked, notebook > header tabs.right:hover tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.right:hover tab:dir(ltr):backdrop:checked:active, notebook > header tabs.right:hover tab:dir(rtl), notebook > header tabs.right:hover tab:dir(rtl):hover, notebook > header tabs.right:hover tab:dir(rtl):active, notebook > header tabs.right:hover tab:dir(rtl):checked, notebook > header tabs.right:hover tab:dir(rtl):checked:hover, notebook > header tabs.right:hover tab:dir(rtl):checked:active, notebook > header tabs.right:hover tab:dir(rtl):backdrop, notebook > header tabs.right:hover tab:dir(rtl):backdrop:hover, notebook > header tabs.right:hover tab:dir(rtl):backdrop:active, notebook > header tabs.right:hover tab:dir(rtl):backdrop:checked, notebook > header tabs.right:hover tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.right:hover tab:dir(rtl):backdrop:checked:active, notebook > header tabs.left:hover tab, notebook > header tabs.left:hover tab:hover, notebook > header tabs.left:hover tab:active, notebook > header tabs.left:hover tab:checked, notebook > header tabs.left:hover tab:checked:hover, notebook > header tabs.left:hover tab:checked:active, notebook > header tabs.left:hover tab:backdrop, notebook > header tabs.left:hover tab:backdrop:hover, notebook > header tabs.left:hover tab:backdrop:active, notebook > header tabs.left:hover tab:backdrop:checked, notebook > header tabs.left:hover tab:backdrop:checked:hover, notebook > header tabs.left:hover tab:backdrop:checked:active, notebook > header tabs.left:hover tab:dir(ltr), notebook > header tabs.left:hover tab:dir(ltr):hover, notebook > header tabs.left:hover tab:dir(ltr):active, notebook > header tabs.left:hover tab:dir(ltr):checked, notebook > header tabs.left:hover tab:dir(ltr):checked:hover, notebook > header tabs.left:hover tab:dir(ltr):checked:active, notebook > header tabs.left:hover tab:dir(ltr):backdrop, notebook > header tabs.left:hover tab:dir(ltr):backdrop:hover, notebook > header tabs.left:hover tab:dir(ltr):backdrop:active, notebook > header tabs.left:hover tab:dir(ltr):backdrop:checked, notebook > header tabs.left:hover tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.left:hover tab:dir(ltr):backdrop:checked:active, notebook > header tabs.left:hover tab:dir(rtl), notebook > header tabs.left:hover tab:dir(rtl):hover, notebook > header tabs.left:hover tab:dir(rtl):active, notebook > header tabs.left:hover tab:dir(rtl):checked, notebook > header tabs.left:hover tab:dir(rtl):checked:hover, notebook > header tabs.left:hover tab:dir(rtl):checked:active, notebook > header tabs.left:hover tab:dir(rtl):backdrop, notebook > header tabs.left:hover tab:dir(rtl):backdrop:hover, notebook > header tabs.left:hover tab:dir(rtl):backdrop:active, notebook > header tabs.left:hover tab:dir(rtl):backdrop:checked, notebook > header tabs.left:hover tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.left:hover tab:dir(rtl):backdrop:checked:active, notebook > header tabs.top:hover tab, notebook > header tabs.top:hover tab:hover, notebook > header tabs.top:hover tab:active, notebook > header tabs.top:hover tab:checked, notebook > header tabs.top:hover tab:checked:hover, notebook > header tabs.top:hover tab:checked:active, notebook > header tabs.top:hover tab:backdrop, notebook > header tabs.top:hover tab:backdrop:hover, notebook > header tabs.top:hover tab:backdrop:active, notebook > header tabs.top:hover tab:backdrop:checked, notebook > header tabs.top:hover tab:backdrop:checked:hover, notebook > header tabs.top:hover tab:backdrop:checked:active, notebook > header tabs.top:hover tab:dir(ltr), notebook > header tabs.top:hover tab:dir(ltr):hover, notebook > header tabs.top:hover tab:dir(ltr):active, notebook > header tabs.top:hover tab:dir(ltr):checked, notebook > header tabs.top:hover tab:dir(ltr):checked:hover, notebook > header tabs.top:hover tab:dir(ltr):checked:active, notebook > header tabs.top:hover tab:dir(ltr):backdrop, notebook > header tabs.top:hover tab:dir(ltr):backdrop:hover, notebook > header tabs.top:hover tab:dir(ltr):backdrop:active, notebook > header tabs.top:hover tab:dir(ltr):backdrop:checked, notebook > header tabs.top:hover tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.top:hover tab:dir(ltr):backdrop:checked:active, notebook > header tabs.top:hover tab:dir(rtl), notebook > header tabs.top:hover tab:dir(rtl):hover, notebook > header tabs.top:hover tab:dir(rtl):active, notebook > header tabs.top:hover tab:dir(rtl):checked, notebook > header tabs.top:hover tab:dir(rtl):checked:hover, notebook > header tabs.top:hover tab:dir(rtl):checked:active, notebook > header tabs.top:hover tab:dir(rtl):backdrop, notebook > header tabs.top:hover tab:dir(rtl):backdrop:hover, notebook > header tabs.top:hover tab:dir(rtl):backdrop:active, notebook > header tabs.top:hover tab:dir(rtl):backdrop:checked, notebook > header tabs.top:hover tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.top:hover tab:dir(rtl):backdrop:checked:active, notebook > header tabs.bottom:hover tab, notebook > header tabs.bottom:hover tab:hover, notebook > header tabs.bottom:hover tab:active, notebook > header tabs.bottom:hover tab:checked, notebook > header tabs.bottom:hover tab:checked:hover, notebook > header tabs.bottom:hover tab:checked:active, notebook > header tabs.bottom:hover tab:backdrop, notebook > header tabs.bottom:hover tab:backdrop:hover, notebook > header tabs.bottom:hover tab:backdrop:active, notebook > header tabs.bottom:hover tab:backdrop:checked, notebook > header tabs.bottom:hover tab:backdrop:checked:hover, notebook > header tabs.bottom:hover tab:backdrop:checked:active, notebook > header tabs.bottom:hover tab:dir(ltr), notebook > header tabs.bottom:hover tab:dir(ltr):hover, notebook > header tabs.bottom:hover tab:dir(ltr):active, notebook > header tabs.bottom:hover tab:dir(ltr):checked, notebook > header tabs.bottom:hover tab:dir(ltr):checked:hover, notebook > header tabs.bottom:hover tab:dir(ltr):checked:active, notebook > header tabs.bottom:hover tab:dir(ltr):backdrop, notebook > header tabs.bottom:hover tab:dir(ltr):backdrop:hover, notebook > header tabs.bottom:hover tab:dir(ltr):backdrop:active, notebook > header tabs.bottom:hover tab:dir(ltr):backdrop:checked, notebook > header tabs.bottom:hover tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.bottom:hover tab:dir(ltr):backdrop:checked:active, notebook > header tabs.bottom:hover tab:dir(rtl), notebook > header tabs.bottom:hover tab:dir(rtl):hover, notebook > header tabs.bottom:hover tab:dir(rtl):active, notebook > header tabs.bottom:hover tab:dir(rtl):checked, notebook > header tabs.bottom:hover tab:dir(rtl):checked:hover, notebook > header tabs.bottom:hover tab:dir(rtl):checked:active, notebook > header tabs.bottom:hover tab:dir(rtl):backdrop, notebook > header tabs.bottom:hover tab:dir(rtl):backdrop:hover, notebook > header tabs.bottom:hover tab:dir(rtl):backdrop:active, notebook > header tabs.bottom:hover tab:dir(rtl):backdrop:checked, notebook > header tabs.bottom:hover tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.bottom:hover tab:dir(rtl):backdrop:checked:active, notebook > header tabs:backdrop tab, notebook > header tabs:backdrop tab:hover, notebook > header tabs:backdrop tab:active, notebook > header tabs:backdrop tab:checked, notebook > header tabs:backdrop tab:checked:hover, notebook > header tabs:backdrop tab:checked:active, notebook > header tabs:backdrop tab:backdrop, notebook > header tabs:backdrop tab:backdrop:hover, notebook > header tabs:backdrop tab:backdrop:active, notebook > header tabs:backdrop tab:backdrop:checked, notebook > header tabs:backdrop tab:backdrop:checked:hover, notebook > header tabs:backdrop tab:backdrop:checked:active, notebook > header tabs:backdrop tab:dir(ltr), notebook > header tabs:backdrop tab:dir(ltr):hover, notebook > header tabs:backdrop tab:dir(ltr):active, notebook > header tabs:backdrop tab:dir(ltr):checked, notebook > header tabs:backdrop tab:dir(ltr):checked:hover, notebook > header tabs:backdrop tab:dir(ltr):checked:active, notebook > header tabs:backdrop tab:dir(ltr):backdrop, notebook > header tabs:backdrop tab:dir(ltr):backdrop:hover, notebook > header tabs:backdrop tab:dir(ltr):backdrop:active, notebook > header tabs:backdrop tab:dir(ltr):backdrop:checked, notebook > header tabs:backdrop tab:dir(ltr):backdrop:checked:hover, notebook > header tabs:backdrop tab:dir(ltr):backdrop:checked:active, notebook > header tabs:backdrop tab:dir(rtl), notebook > header tabs:backdrop tab:dir(rtl):hover, notebook > header tabs:backdrop tab:dir(rtl):active, notebook > header tabs:backdrop tab:dir(rtl):checked, notebook > header tabs:backdrop tab:dir(rtl):checked:hover, notebook > header tabs:backdrop tab:dir(rtl):checked:active, notebook > header tabs:backdrop tab:dir(rtl):backdrop, notebook > header tabs:backdrop tab:dir(rtl):backdrop:hover, notebook > header tabs:backdrop tab:dir(rtl):backdrop:active, notebook > header tabs:backdrop tab:dir(rtl):backdrop:checked, notebook > header tabs:backdrop tab:dir(rtl):backdrop:checked:hover, notebook > header tabs:backdrop tab:dir(rtl):backdrop:checked:active, notebook > header tabs.right:backdrop tab, notebook > header tabs.right:backdrop tab:hover, notebook > header tabs.right:backdrop tab:active, notebook > header tabs.right:backdrop tab:checked, notebook > header tabs.right:backdrop tab:checked:hover, notebook > header tabs.right:backdrop tab:checked:active, notebook > header tabs.right:backdrop tab:backdrop, notebook > header tabs.right:backdrop tab:backdrop:hover, notebook > header tabs.right:backdrop tab:backdrop:active, notebook > header tabs.right:backdrop tab:backdrop:checked, notebook > header tabs.right:backdrop tab:backdrop:checked:hover, notebook > header tabs.right:backdrop tab:backdrop:checked:active, notebook > header tabs.right:backdrop tab:dir(ltr), notebook > header tabs.right:backdrop tab:dir(ltr):hover, notebook > header tabs.right:backdrop tab:dir(ltr):active, notebook > header tabs.right:backdrop tab:dir(ltr):checked, notebook > header tabs.right:backdrop tab:dir(ltr):checked:hover, notebook > header tabs.right:backdrop tab:dir(ltr):checked:active, notebook > header tabs.right:backdrop tab:dir(ltr):backdrop, notebook > header tabs.right:backdrop tab:dir(ltr):backdrop:hover, notebook > header tabs.right:backdrop tab:dir(ltr):backdrop:active, notebook > header tabs.right:backdrop tab:dir(ltr):backdrop:checked, notebook > header tabs.right:backdrop tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.right:backdrop tab:dir(ltr):backdrop:checked:active, notebook > header tabs.right:backdrop tab:dir(rtl), notebook > header tabs.right:backdrop tab:dir(rtl):hover, notebook > header tabs.right:backdrop tab:dir(rtl):active, notebook > header tabs.right:backdrop tab:dir(rtl):checked, notebook > header tabs.right:backdrop tab:dir(rtl):checked:hover, notebook > header tabs.right:backdrop tab:dir(rtl):checked:active, notebook > header tabs.right:backdrop tab:dir(rtl):backdrop, notebook > header tabs.right:backdrop tab:dir(rtl):backdrop:hover, notebook > header tabs.right:backdrop tab:dir(rtl):backdrop:active, notebook > header tabs.right:backdrop tab:dir(rtl):backdrop:checked, notebook > header tabs.right:backdrop tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.right:backdrop tab:dir(rtl):backdrop:checked:active, notebook > header tabs.left:backdrop tab, notebook > header tabs.left:backdrop tab:hover, notebook > header tabs.left:backdrop tab:active, notebook > header tabs.left:backdrop tab:checked, notebook > header tabs.left:backdrop tab:checked:hover, notebook > header tabs.left:backdrop tab:checked:active, notebook > header tabs.left:backdrop tab:backdrop, notebook > header tabs.left:backdrop tab:backdrop:hover, notebook > header tabs.left:backdrop tab:backdrop:active, notebook > header tabs.left:backdrop tab:backdrop:checked, notebook > header tabs.left:backdrop tab:backdrop:checked:hover, notebook > header tabs.left:backdrop tab:backdrop:checked:active, notebook > header tabs.left:backdrop tab:dir(ltr), notebook > header tabs.left:backdrop tab:dir(ltr):hover, notebook > header tabs.left:backdrop tab:dir(ltr):active, notebook > header tabs.left:backdrop tab:dir(ltr):checked, notebook > header tabs.left:backdrop tab:dir(ltr):checked:hover, notebook > header tabs.left:backdrop tab:dir(ltr):checked:active, notebook > header tabs.left:backdrop tab:dir(ltr):backdrop, notebook > header tabs.left:backdrop tab:dir(ltr):backdrop:hover, notebook > header tabs.left:backdrop tab:dir(ltr):backdrop:active, notebook > header tabs.left:backdrop tab:dir(ltr):backdrop:checked, notebook > header tabs.left:backdrop tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.left:backdrop tab:dir(ltr):backdrop:checked:active, notebook > header tabs.left:backdrop tab:dir(rtl), notebook > header tabs.left:backdrop tab:dir(rtl):hover, notebook > header tabs.left:backdrop tab:dir(rtl):active, notebook > header tabs.left:backdrop tab:dir(rtl):checked, notebook > header tabs.left:backdrop tab:dir(rtl):checked:hover, notebook > header tabs.left:backdrop tab:dir(rtl):checked:active, notebook > header tabs.left:backdrop tab:dir(rtl):backdrop, notebook > header tabs.left:backdrop tab:dir(rtl):backdrop:hover, notebook > header tabs.left:backdrop tab:dir(rtl):backdrop:active, notebook > header tabs.left:backdrop tab:dir(rtl):backdrop:checked, notebook > header tabs.left:backdrop tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.left:backdrop tab:dir(rtl):backdrop:checked:active, notebook > header tabs.top:backdrop tab, notebook > header tabs.top:backdrop tab:hover, notebook > header tabs.top:backdrop tab:active, notebook > header tabs.top:backdrop tab:checked, notebook > header tabs.top:backdrop tab:checked:hover, notebook > header tabs.top:backdrop tab:checked:active, notebook > header tabs.top:backdrop tab:backdrop, notebook > header tabs.top:backdrop tab:backdrop:hover, notebook > header tabs.top:backdrop tab:backdrop:active, notebook > header tabs.top:backdrop tab:backdrop:checked, notebook > header tabs.top:backdrop tab:backdrop:checked:hover, notebook > header tabs.top:backdrop tab:backdrop:checked:active, notebook > header tabs.top:backdrop tab:dir(ltr), notebook > header tabs.top:backdrop tab:dir(ltr):hover, notebook > header tabs.top:backdrop tab:dir(ltr):active, notebook > header tabs.top:backdrop tab:dir(ltr):checked, notebook > header tabs.top:backdrop tab:dir(ltr):checked:hover, notebook > header tabs.top:backdrop tab:dir(ltr):checked:active, notebook > header tabs.top:backdrop tab:dir(ltr):backdrop, notebook > header tabs.top:backdrop tab:dir(ltr):backdrop:hover, notebook > header tabs.top:backdrop tab:dir(ltr):backdrop:active, notebook > header tabs.top:backdrop tab:dir(ltr):backdrop:checked, notebook > header tabs.top:backdrop tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.top:backdrop tab:dir(ltr):backdrop:checked:active, notebook > header tabs.top:backdrop tab:dir(rtl), notebook > header tabs.top:backdrop tab:dir(rtl):hover, notebook > header tabs.top:backdrop tab:dir(rtl):active, notebook > header tabs.top:backdrop tab:dir(rtl):checked, notebook > header tabs.top:backdrop tab:dir(rtl):checked:hover, notebook > header tabs.top:backdrop tab:dir(rtl):checked:active, notebook > header tabs.top:backdrop tab:dir(rtl):backdrop, notebook > header tabs.top:backdrop tab:dir(rtl):backdrop:hover, notebook > header tabs.top:backdrop tab:dir(rtl):backdrop:active, notebook > header tabs.top:backdrop tab:dir(rtl):backdrop:checked, notebook > header tabs.top:backdrop tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.top:backdrop tab:dir(rtl):backdrop:checked:active, notebook > header tabs.bottom:backdrop tab, notebook > header tabs.bottom:backdrop tab:hover, notebook > header tabs.bottom:backdrop tab:active, notebook > header tabs.bottom:backdrop tab:checked, notebook > header tabs.bottom:backdrop tab:checked:hover, notebook > header tabs.bottom:backdrop tab:checked:active, notebook > header tabs.bottom:backdrop tab:backdrop, notebook > header tabs.bottom:backdrop tab:backdrop:hover, notebook > header tabs.bottom:backdrop tab:backdrop:active, notebook > header tabs.bottom:backdrop tab:backdrop:checked, notebook > header tabs.bottom:backdrop tab:backdrop:checked:hover, notebook > header tabs.bottom:backdrop tab:backdrop:checked:active, notebook > header tabs.bottom:backdrop tab:dir(ltr), notebook > header tabs.bottom:backdrop tab:dir(ltr):hover, notebook > header tabs.bottom:backdrop tab:dir(ltr):active, notebook > header tabs.bottom:backdrop tab:dir(ltr):checked, notebook > header tabs.bottom:backdrop tab:dir(ltr):checked:hover, notebook > header tabs.bottom:backdrop tab:dir(ltr):checked:active, notebook > header tabs.bottom:backdrop tab:dir(ltr):backdrop, notebook > header tabs.bottom:backdrop tab:dir(ltr):backdrop:hover, notebook > header tabs.bottom:backdrop tab:dir(ltr):backdrop:active, notebook > header tabs.bottom:backdrop tab:dir(ltr):backdrop:checked, notebook > header tabs.bottom:backdrop tab:dir(ltr):backdrop:checked:hover, notebook > header tabs.bottom:backdrop tab:dir(ltr):backdrop:checked:active, notebook > header tabs.bottom:backdrop tab:dir(rtl), notebook > header tabs.bottom:backdrop tab:dir(rtl):hover, notebook > header tabs.bottom:backdrop tab:dir(rtl):active, notebook > header tabs.bottom:backdrop tab:dir(rtl):checked, notebook > header tabs.bottom:backdrop tab:dir(rtl):checked:hover, notebook > header tabs.bottom:backdrop tab:dir(rtl):checked:active, notebook > header tabs.bottom:backdrop tab:dir(rtl):backdrop, notebook > header tabs.bottom:backdrop tab:dir(rtl):backdrop:hover, notebook > header tabs.bottom:backdrop tab:dir(rtl):backdrop:active, notebook > header tabs.bottom:backdrop tab:dir(rtl):backdrop:checked, notebook > header tabs.bottom:backdrop tab:dir(rtl):backdrop:checked:hover, notebook > header tabs.bottom:backdrop tab:dir(rtl):backdrop:checked:active { background-color: transparent; border-color: transparent; } + +notebook > header tabs tab:hover:not(:checked):not(:backdrop), notebook > header tabs tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.right tab:hover:not(:checked):not(:backdrop), notebook > header tabs.right tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.right tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs.right tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.right tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs.right tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.left tab:hover:not(:checked):not(:backdrop), notebook > header tabs.left tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.left tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs.left tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.left tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs.left tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.top tab:hover:not(:checked):not(:backdrop), notebook > header tabs.top tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.top tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs.top tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.top tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs.top tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.bottom tab:hover:not(:checked):not(:backdrop), notebook > header tabs.bottom tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.bottom tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs.bottom tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.bottom tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs.bottom tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs:hover tab:hover:not(:checked):not(:backdrop), notebook > header tabs:hover tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs:hover tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs:hover tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs:hover tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs:hover tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.right:hover tab:hover:not(:checked):not(:backdrop), notebook > header tabs.right:hover tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.right:hover tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs.right:hover tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.right:hover tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs.right:hover tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.left:hover tab:hover:not(:checked):not(:backdrop), notebook > header tabs.left:hover tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.left:hover tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs.left:hover tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.left:hover tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs.left:hover tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.top:hover tab:hover:not(:checked):not(:backdrop), notebook > header tabs.top:hover tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.top:hover tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs.top:hover tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.top:hover tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs.top:hover tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.bottom:hover tab:hover:not(:checked):not(:backdrop), notebook > header tabs.bottom:hover tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.bottom:hover tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs.bottom:hover tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.bottom:hover tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs.bottom:hover tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs:backdrop tab:hover:not(:checked):not(:backdrop), notebook > header tabs:backdrop tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs:backdrop tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs:backdrop tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs:backdrop tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs:backdrop tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.right:backdrop tab:hover:not(:checked):not(:backdrop), notebook > header tabs.right:backdrop tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.right:backdrop tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs.right:backdrop tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.right:backdrop tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs.right:backdrop tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.left:backdrop tab:hover:not(:checked):not(:backdrop), notebook > header tabs.left:backdrop tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.left:backdrop tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs.left:backdrop tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.left:backdrop tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs.left:backdrop tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.top:backdrop tab:hover:not(:checked):not(:backdrop), notebook > header tabs.top:backdrop tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.top:backdrop tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs.top:backdrop tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.top:backdrop tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs.top:backdrop tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.bottom:backdrop tab:hover:not(:checked):not(:backdrop), notebook > header tabs.bottom:backdrop tab:backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.bottom:backdrop tab:dir(ltr):hover:not(:checked):not(:backdrop), notebook > header tabs.bottom:backdrop tab:dir(ltr):backdrop:hover:not(:checked):not(:backdrop), notebook > header tabs.bottom:backdrop tab:dir(rtl):hover:not(:checked):not(:backdrop), notebook > header tabs.bottom:backdrop tab:dir(rtl):backdrop:hover:not(:checked):not(:backdrop) { color: #a9a5a2; } + +scrolledwindow undershoot.top { background-color: transparent; padding-top: 1px; background-size: 10px 1px; background-repeat: repeat-x; background-origin: content-box; background-position: center top; border: none; box-shadow: inset 0 2px 0 0 rgba(204, 204, 204, 0.2), inset 0 1px 0 0 rgba(153, 153, 153, 0.2); } + +scrolledwindow undershoot.bottom { background-color: transparent; padding-bottom: 1px; background-size: 10px 1px; background-repeat: repeat-x; background-origin: content-box; background-position: center bottom; border: none; box-shadow: inset 0 -2px 0 0 rgba(204, 204, 204, 0.2), inset 0 -1px 0 0 rgba(153, 153, 153, 0.2); } + +scrolledwindow undershoot.left { background-color: transparent; padding-left: 1px; background-size: 1px 10px; background-repeat: repeat-y; background-origin: content-box; background-position: left center; border: none; box-shadow: inset 2px 0 0 rgba(204, 204, 204, 0.2), inset 1px 0 0 rgba(153, 153, 153, 0.2); } + +scrolledwindow undershoot.right { background-color: transparent; padding-right: 1px; background-size: 1px 10px; background-repeat: repeat-y; background-origin: content-box; background-position: right center; border: none; box-shadow: inset -2px 0 0 rgba(204, 204, 204, 0.2), inset -1px 0 0 rgba(153, 153, 153, 0.2); } + +popover.menu check, popover.menu check:hover, popover.menu check:disabled, popover.menu check:checked, popover.menu check:checked:hover, popover.menu check:checked:disabled, popover.menu check:indeterminate, popover.menu check:indeterminate:hover, popover.menu check:indeterminate:disabled, popover.menu radio, popover.menu radio:hover, popover.menu radio:disabled, popover.menu radio:checked, popover.menu radio:checked:hover, popover.menu radio:checked:disabled, popover.menu radio:indeterminate, popover.menu radio:indeterminate:hover, popover.menu radio:indeterminate:disabled { border-color: transparent; background: transparent; } + +treeview.view check:selected:focus:disabled, treeview.view check:selected:disabled, treeview.view radio:selected:focus:disabled, treeview.view radio:selected:disabled { color: #a9a5a2; } + +.sidebar { background-color: #edeceb; } + +.osd scale > trough > slider { color: #eeeeec; outline-color: #a29e9b; border-color: rgba(0, 0, 0, 0.7); background-color: transparent; background-image: image(rgba(29, 29, 29, 0.975)); background-clip: padding-box; background-image: image(#e9e9e7); } + +.osd scale > trough > slider:hover { background-image: image(#d6d6d1); } + +.osd scale > trough > slider:active { background-image: image(#b2b2a9); } + +.rubberband, rubberband, flowbox > rubberband, gridview > rubberband, columnview.view > rubberband, treeview.view > rubberband, .content-view > rubberband { background-color: rgba(135, 135, 135, 0.2); border: 1px solid rgba(204, 204, 204, 0.8); } + +levelbar > trough > block.high, levelbar > trough > block:not(.empty) { border-color: #93af66; background-color: #93af66; } + +levelbar > trough > block.high:backdrop, levelbar > trough > block:not(.empty):backdrop { border-color: #93af66; } + +.csd.popup decoration { box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(0, 0, 0, 0.23); } + +.csd popover.background, popover.background { border-color: rgba(0, 0, 0, 0.23); } + +.csd popover.background:backdrop, popover.background:backdrop { border-color: #b1aeab; } + +check, radio { transition-property: background, border; transition-duration: 200ms; transition-timing-function: ease; } + +list row.activatable:selected, list row.activatable:selected:hover, list row:selected, list row:selected:hover, placessidebar row.activatable:selected, placessidebar row.activatable:selected:hover, placessidebar row:selected, placessidebar row:selected:hover, sidebar row.activatable:selected, sidebar row.activatable:selected:hover, sidebar row:selected, sidebar row:selected:hover, .sidebar row.activatable:selected, .sidebar row.activatable:selected:hover, .sidebar row:selected, .sidebar row:selected:hover { background-color: #e1dfde; box-shadow: inset 4px 0 0 #86abd9; } + +list row.activatable:selected, list row.activatable:selected image, list row.activatable:selected button, list row.activatable:selected button image, list row.activatable:selected:hover, list row.activatable:selected:hover image, list row.activatable:selected:hover button, list row.activatable:selected:hover button image, list row:selected, list row:selected image, list row:selected button, list row:selected button image, list row:selected:hover, list row:selected:hover image, list row:selected:hover button, list row:selected:hover button image, placessidebar row.activatable:selected, placessidebar row.activatable:selected image, placessidebar row.activatable:selected button, placessidebar row.activatable:selected button image, placessidebar row.activatable:selected:hover, placessidebar row.activatable:selected:hover image, placessidebar row.activatable:selected:hover button, placessidebar row.activatable:selected:hover button image, placessidebar row:selected, placessidebar row:selected image, placessidebar row:selected button, placessidebar row:selected button image, placessidebar row:selected:hover, placessidebar row:selected:hover image, placessidebar row:selected:hover button, placessidebar row:selected:hover button image, sidebar row.activatable:selected, sidebar row.activatable:selected image, sidebar row.activatable:selected button, sidebar row.activatable:selected button image, sidebar row.activatable:selected:hover, sidebar row.activatable:selected:hover image, sidebar row.activatable:selected:hover button, sidebar row.activatable:selected:hover button image, sidebar row:selected, sidebar row:selected image, sidebar row:selected button, sidebar row:selected button image, sidebar row:selected:hover, sidebar row:selected:hover image, sidebar row:selected:hover button, sidebar row:selected:hover button image, .sidebar row.activatable:selected, .sidebar row.activatable:selected image, .sidebar row.activatable:selected button, .sidebar row.activatable:selected button image, .sidebar row.activatable:selected:hover, .sidebar row.activatable:selected:hover image, .sidebar row.activatable:selected:hover button, .sidebar row.activatable:selected:hover button image, .sidebar row:selected, .sidebar row:selected image, .sidebar row:selected button, .sidebar row:selected button image, .sidebar row:selected:hover, .sidebar row:selected:hover image, .sidebar row:selected:hover button, .sidebar row:selected:hover button image { color: #1a1a1a; } + +list row.activatable:selected:backdrop, list row.activatable:selected:hover:backdrop, list row:selected:backdrop, list row:selected:hover:backdrop, placessidebar row.activatable:selected:backdrop, placessidebar row.activatable:selected:hover:backdrop, placessidebar row:selected:backdrop, placessidebar row:selected:hover:backdrop, sidebar row.activatable:selected:backdrop, sidebar row.activatable:selected:hover:backdrop, sidebar row:selected:backdrop, sidebar row:selected:hover:backdrop, .sidebar row.activatable:selected:backdrop, .sidebar row.activatable:selected:hover:backdrop, .sidebar row:selected:backdrop, .sidebar row:selected:hover:backdrop { background-color: #e1dfde; } + +list row.activatable:selected:backdrop, list row.activatable:selected:backdrop image, list row.activatable:selected:backdrop button, list row.activatable:selected:backdrop button image, list row.activatable:selected:hover:backdrop, list row.activatable:selected:hover:backdrop image, list row.activatable:selected:hover:backdrop button, list row.activatable:selected:hover:backdrop button image, list row:selected:backdrop, list row:selected:backdrop image, list row:selected:backdrop button, list row:selected:backdrop button image, list row:selected:hover:backdrop, list row:selected:hover:backdrop image, list row:selected:hover:backdrop button, list row:selected:hover:backdrop button image, placessidebar row.activatable:selected:backdrop, placessidebar row.activatable:selected:backdrop image, placessidebar row.activatable:selected:backdrop button, placessidebar row.activatable:selected:backdrop button image, placessidebar row.activatable:selected:hover:backdrop, placessidebar row.activatable:selected:hover:backdrop image, placessidebar row.activatable:selected:hover:backdrop button, placessidebar row.activatable:selected:hover:backdrop button image, placessidebar row:selected:backdrop, placessidebar row:selected:backdrop image, placessidebar row:selected:backdrop button, placessidebar row:selected:backdrop button image, placessidebar row:selected:hover:backdrop, placessidebar row:selected:hover:backdrop image, placessidebar row:selected:hover:backdrop button, placessidebar row:selected:hover:backdrop button image, sidebar row.activatable:selected:backdrop, sidebar row.activatable:selected:backdrop image, sidebar row.activatable:selected:backdrop button, sidebar row.activatable:selected:backdrop button image, sidebar row.activatable:selected:hover:backdrop, sidebar row.activatable:selected:hover:backdrop image, sidebar row.activatable:selected:hover:backdrop button, sidebar row.activatable:selected:hover:backdrop button image, sidebar row:selected:backdrop, sidebar row:selected:backdrop image, sidebar row:selected:backdrop button, sidebar row:selected:backdrop button image, sidebar row:selected:hover:backdrop, sidebar row:selected:hover:backdrop image, sidebar row:selected:hover:backdrop button, sidebar row:selected:hover:backdrop button image, .sidebar row.activatable:selected:backdrop, .sidebar row.activatable:selected:backdrop image, .sidebar row.activatable:selected:backdrop button, .sidebar row.activatable:selected:backdrop button image, .sidebar row.activatable:selected:hover:backdrop, .sidebar row.activatable:selected:hover:backdrop image, .sidebar row.activatable:selected:hover:backdrop button, .sidebar row.activatable:selected:hover:backdrop button image, .sidebar row:selected:backdrop, .sidebar row:selected:backdrop image, .sidebar row:selected:backdrop button, .sidebar row:selected:backdrop button image, .sidebar row:selected:hover:backdrop, .sidebar row:selected:hover:backdrop image, .sidebar row:selected:hover:backdrop button, .sidebar row:selected:hover:backdrop button image { color: #2f2f2f; } + +switch:backdrop:checked:not(:disabled), switch:backdrop:checked:not(:disabled) slider { border-color: #a29e9b; } + +check:checked, radio:checked { border-color: #a29e9b; } + +tab:hover { color: #000000; } + +.titlebar:not(headerbar), headerbar { background-image: linear-gradient(to bottom, #99bae3, #8cb0dc 50%, #86abd9 50%, #7aa1d1); color: #000000; border-color: #a29e9b; } + +.titlebar:backdrop:not(headerbar), headerbar:backdrop { background-image: linear-gradient(to bottom, #eae9e8, #e2e1e0 50%, #dedcda 50%, #d4d2d0); } + +.titlebar:not(headerbar) .title, headerbar .title { color: #000000; } + +.titlebar:not(headerbar) .title:backdrop, headerbar .title:backdrop { color: #0f0e0e; } + +.maximized .titlebar:not(headerbar), .fullscreen .titlebar:not(headerbar), .maximized headerbar, .fullscreen headerbar { box-shadow: none; } + +.titlebar:not(headerbar) entry, headerbar entry { border-color: #1d1c1c; } + +.titlebar:not(headerbar) switch, headerbar switch { border-color: #1b1a1a; color: #000000; background-color: #464343; } + +.titlebar:not(headerbar) switch:checked, headerbar switch:checked { color: #ffffff; border-color: #1b1a1a; background-color: #538bd3; } + +.titlebar:not(headerbar) switch:disabled, headerbar switch:disabled { color: #a9a5a2; background-color: #323030; border-color: #1b1a1a; } + +.titlebar:not(headerbar) switch:backdrop, headerbar switch:backdrop { color: #2f2f2f; border-color: #b1aeab; background-color: #444141; } + +.titlebar:not(headerbar) switch:backdrop:checked, headerbar switch:backdrop:checked { color: #ffffff; border-color: #1b1a1a; background-color: #538bd3; } + +.titlebar:not(headerbar) switch:backdrop:disabled, headerbar switch:backdrop:disabled { color: #c9c6c3; background-color: #3f3c3c; border-color: #262626; } + +.titlebar:not(headerbar) switch:checked, .titlebar:not(headerbar) scale:checked, headerbar switch:checked, headerbar scale:checked { border-color: #a29e9b; } + +.titlebar:not(headerbar) switch slider, .titlebar:not(headerbar) scale slider, headerbar switch slider, headerbar scale slider { color: #000000; outline-color: rgba(255, 255, 255, 0.8); border-color: #2b2a2a; background-image: linear-gradient(to bottom, #fdfdfc, #fafafa 50%, #f6f5f5 50%, #e9e7e6); box-shadow: 0 1px rgba(0, 0, 0, 0.05); } + +.titlebar:not(headerbar) switch:hover slider, .titlebar:not(headerbar) scale:hover slider, headerbar switch:hover slider, headerbar scale:hover slider { color: #000000; border-color: #2b2a2a; background-image: linear-gradient(to bottom, #ffffff 5%, #f8f8f7 95%, #edeceb); box-shadow: 0 1px rgba(0, 0, 0, 0.15); } + +.titlebar:not(headerbar) switch:checked > slider, .titlebar:not(headerbar) scale:checked > slider, headerbar switch:checked > slider, headerbar scale:checked > slider { border-color: #1b1a1a; } + +.titlebar:not(headerbar) switch:disabled slider, .titlebar:not(headerbar) scale:disabled slider, headerbar switch:disabled slider, headerbar scale:disabled slider { color: #a9a5a2; border-color: #030303; background-image: linear-gradient(to bottom, #f6f5f5, #efeeed 50%, #ebeae9 50%, #e4e3e1); } + +.titlebar:not(headerbar) switch:backdrop slider, .titlebar:not(headerbar) scale:backdrop slider, headerbar switch:backdrop slider, headerbar scale:backdrop slider { color: #2f2f2f; border-color: #464343; background-image: image(#464343); box-shadow: none; } + +.titlebar:not(headerbar) switch:backdrop > slider, .titlebar:not(headerbar) scale:backdrop > slider, headerbar switch:backdrop > slider, headerbar scale:backdrop > slider { border-color: #1c1c1c; box-shadow: none; } + +.titlebar:not(headerbar) switch:backdrop:checked > slider, .titlebar:not(headerbar) scale:backdrop:checked > slider, headerbar switch:backdrop:checked > slider, headerbar scale:backdrop:checked > slider { border-color: #1b1a1a; } + +.titlebar:not(headerbar) switch:backdrop:disabled slider, .titlebar:not(headerbar) scale:backdrop:disabled slider, headerbar switch:backdrop:disabled slider, headerbar scale:backdrop:disabled slider { color: #3f3e3e; border-color: #615f5f; background-image: image(#615f5f); box-shadow: none; } + +windowcontrols button image { color: #000000; } + +window.devel headerbar.titlebar { background: #edeceb cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, linear-gradient(to right, transparent 65%, rgba(134, 171, 217, 0.1)), linear-gradient(to top, #dcdad8 3px, #e1dfde); } + +window.devel headerbar.titlebar:backdrop { background: #edeceb cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, image(#edeceb); /* background-color would flash */ } diff --git a/desktop-themes/YaruGreen/gtk-4.0/gtk.scss b/desktop-themes/YaruGreen/gtk-4.0/gtk.scss new file mode 100644 index 00000000..8811bdce --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/gtk.scss @@ -0,0 +1,15 @@ +// General guidelines: +// - very unlikely you want to edit something else than _common.scss +// - keep the number of defined colors to a minimum, use the color blending functions if +// you need a subtle shade +// - if you need to inverse a color function use the @if directive to match for dark $variant + +$variant: 'light'; +$ambiance: true; + +@import 'colors'; +@import 'drawing'; +@import 'common'; +@import 'colors-public'; +@import 'tweaks'; +@import 'headerbar'; diff --git a/desktop-themes/YaruGreen/gtk-4.0/parse-sass.sh b/desktop-themes/YaruGreen/gtk-4.0/parse-sass.sh new file mode 100755 index 00000000..272da5d0 --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/parse-sass.sh @@ -0,0 +1,12 @@ +#! /bin/bash + +if [ ! "$(which sassc 2> /dev/null)" ]; then + echo sassc needs to be installed to generate the css. + exit 1 +fi + +SASSC_OPT="-M -t compact" + +echo Generating the css... + +sassc $SASSC_OPT gtk.scss gtk.css diff --git a/desktop-themes/YaruGreen/gtk-4.0/render-assets.sh b/desktop-themes/YaruGreen/gtk-4.0/render-assets.sh new file mode 100644 index 00000000..24d7675a --- /dev/null +++ b/desktop-themes/YaruGreen/gtk-4.0/render-assets.sh @@ -0,0 +1,34 @@ +#! /bin/bash + +INKSCAPE="/usr/bin/inkscape" +OPTIPNG="/usr/bin/optipng" + +SRC_FILE="assets.svg" +ASSETS_DIR="assets" +INDEX="assets.txt" + +for i in `cat $INDEX` +do +if [ -f $ASSETS_DIR/$i.png ]; then + echo $ASSETS_DIR/$i.png exists. +else + echo + echo Rendering $ASSETS_DIR/$i.png + $INKSCAPE --export-id=$i \ + --export-id-only \ + --export-png=$ASSETS_DIR/$i.png $SRC_FILE >/dev/null #\ + # && $OPTIPNG -o7 --quiet $ASSETS_DIR/$i.png +fi +if [ -f $ASSETS_DIR/$i@2.png ]; then + echo $ASSETS_DIR/$i@2.png exists. +else + echo + echo Rendering $ASSETS_DIR/$i@2.png + $INKSCAPE --export-id=$i \ + --export-dpi=180 \ + --export-id-only \ + --export-png=$ASSETS_DIR/$i@2.png $SRC_FILE >/dev/null #\ + # && $OPTIPNG -o7 --quiet $ASSETS_DIR/$i@2.png +fi +done +exit 0 diff --git a/desktop-themes/YaruGreen/index.theme.in b/desktop-themes/YaruGreen/index.theme.in new file mode 100644 index 00000000..299fcffd --- /dev/null +++ b/desktop-themes/YaruGreen/index.theme.in @@ -0,0 +1,13 @@ +[Desktop Entry] +Type=X-GNOME-Metatheme +Name=YaruGreen +Comment=Green port of Clearlooks-Phenix +Encoding=UTF-8 + +[X-GNOME-Metatheme] +GtkTheme=YaruGreen +MetacityTheme=YaruGreen +IconTheme=menta +CursorTheme=mate +CursorSize=24 +ButtonLayout=:minimize,maximize,close diff --git a/desktop-themes/YaruGreen/metacity-1/Makefile.am b/desktop-themes/YaruGreen/metacity-1/Makefile.am new file mode 100644 index 00000000..beb651e3 --- /dev/null +++ b/desktop-themes/YaruGreen/metacity-1/Makefile.am @@ -0,0 +1,8 @@ +THEME_NAME=YaruGreen + +themedir = $(datadir)/themes/$(THEME_NAME)/metacity-1 + +theme_DATA = \ + metacity-theme-1.xml + +EXTRA_DIST = $(theme_DATA) diff --git a/desktop-themes/YaruGreen/metacity-1/metacity-theme-1.xml b/desktop-themes/YaruGreen/metacity-1/metacity-theme-1.xml new file mode 100644 index 00000000..eb469771 --- /dev/null +++ b/desktop-themes/YaruGreen/metacity-1/metacity-theme-1.xml @@ -0,0 +1,954 @@ + + + + + TraditionalGreen + Wolfgang Ulbrich <chat-to-me@raveit.de> + Â 2013 Wolfgang Ulbrich + March, 2013 + The Traditional Green Metacity Theme + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +</draw_ops> + +<draw_ops name="title_text_unfocused"> + <!--<title color="shade/#edeceb/1.07" x="5 `max` (width-title_width)/2+1" y="1 `max` ((height-title_height)/2)+1"/>--> + <title color="blend/#000000/#1a1a1a/5.45" x="4 `max` (width-title_width)/2" y="0 `max` ((height-title_height)/2)"/> +</draw_ops> + +<draw_ops name="title"> + <include name="title_text"/> +</draw_ops> + +<draw_ops name="title_unfocused"> + <include name="title_text_unfocused"/> +</draw_ops> + +<!-- ::: BUTTONS ::: --> +<draw_ops name="button_bg"> + <!-- inset --> + <gradient type="vertical" x="0" y="3" width="width" height="height-6"> + <color value="shade/#B9C0A9/0.96"/> + <color value="shade/#B9C0A9/1.05"/> + </gradient> + + <line color="shade/#B9C0A9/1.00" x1="2" y1="0" x2="width-3" y2="0"/> + <line color="shade/#B9C0A9/0.99" x1="1" y1="1" x2="width-2" y2="1"/> + <line color="shade/#B9C0A9/0.99" x1="0" y1="2" x2="width-1" y2="2"/> + <line color="shade/#B9C0A9/0.98" x1="3" y1="0" x2="width-4" y2="0"/> + + <line color="shade/#B9C0A9/0.91" x1="2" y1="1" x2="width-3" y2="1"/> + <line color="shade/#B9C0A9/0.90" x1="1" y1="2" x2="width-2" y2="2"/> + + <line color="shade/#B9C0A9/1.03" x1="2" y1="height-1" x2="width-3" y2="height-1"/> + <line color="shade/#B9C0A9/1.00" x1="1" y1="height-2" x2="width-2" y2="height-2"/> + <line color="shade/#B9C0A9/1.01" x1="0" y1="height-3" x2="width-1" y2="height-3"/> + <line color="shade/#B9C0A9/1.06" x1="3" y1="height-1" x2="width-4" y2="height-1"/> + + <line color="shade/#B9C0A9/1.02" x1="2" y1="height-2" x2="width-3" y2="height-2"/> + <line color="shade/#B9C0A9/1.03" x1="1" y1="height-3" x2="width-2" y2="height-3"/> + + <!-- border outline --> + <line color="shade/#B9C0A9/0.6" x1="3" y1="1" x2="width-4" y2="1"/> + <line color="shade/#B9C0A9/0.6" x1="3" y1="height-2" x2="width-4" y2="height-2"/> + <line color="shade/#B9C0A9/0.6" x1="1" y1="3" x2="1" y2="height-4"/> + <line color="shade/#B9C0A9/0.6" x1="width-2" y1="3" x2="width-2" y2="height-4"/> + <line color="shade/#B9C0A9/0.6" x1="2" y1="2" x2="width-3" y2="2"/> + <line color="shade/#B9C0A9/0.6" x1="2" y1="height-3" x2="width-3" y2="height-3"/> + + <!-- border smooth effect --> + <line color="shade/#B9C0A9/1.02" x1="3" y1="2" x2="width-4" y2="2"/> + <line color="shade/#B9C0A9/1.00" x1="2" y1="3" x2="2" y2="height-4"/> + <line color="shade/#B9C0A9/0.90" x1="width-3" y1="3" x2="width-3" y2="height-4"/> + + <!-- inside highlight --> + <line color="shade/#B9C0A9/1.18" x1="4" y1="2" x2="width-5" y2="2"/> + <line color="shade/#B9C0A9/1.1" x1="2" y1="4" x2="2" y2="height-5"/> + <!-- inside shadow --> + <line color="shade/#B9C0A9/1.0" x1="width-3" y1="4" x2="width-3" y2="height-5"/> + + <!-- fill gradient --> + <gradient type="vertical" x="3" y="3" width="width-6" height="(height)/2-1"> + <color value="shade/#B9C0A9/1.1"/> + <color value="shade/#B9C0A9/1.02"/> + </gradient> + <gradient type="vertical" x="3" y="(height)/2" width="width-6" height="(height)/2-2"> + <color value="shade/#B9C0A9/1.0"/> + <color value="shade/#B9C0A9/0.92"/> + </gradient> + + <!-- bottom border smooth effect --> + <line color="shade/#B9C0A9/0.84" x1="3" y1="height-3" x2="width-4" y2="height-3"/> + <line color="shade/#B9C0A9/0.92" x1="4" y1="height-3" x2="width-5" y2="height-3"/> +</draw_ops> + +<draw_ops name="button_bg_unfocused"> + <!-- inset --> + <gradient type="vertical" x="0" y="3" width="width" height="height-6"> + <color value="shade/#edeceb/0.92"/> + <color value="shade/#edeceb/0.96"/> + </gradient> + + <line color="shade/#edeceb/0.93" x1="2" y1="0" x2="width-3" y2="0"/> + <line color="shade/#edeceb/0.92" x1="1" y1="1" x2="width-2" y2="1"/> + <line color="shade/#edeceb/0.92" x1="0" y1="2" x2="width-1" y2="2"/> + <line color="shade/#edeceb/0.91" x1="3" y1="0" x2="width-4" y2="0"/> + + <line color="shade/#edeceb/0.87" x1="2" y1="1" x2="width-3" y2="1"/> + <line color="shade/#edeceb/0.86" x1="1" y1="2" x2="width-2" y2="2"/> + + <line color="shade/#edeceb/0.945" x1="2" y1="height-1" x2="width-3" y2="height-1"/> + <line color="shade/#edeceb/0.93" x1="1" y1="height-2" x2="width-2" y2="height-2"/> + <line color="shade/#edeceb/0.935" x1="0" y1="height-3" x2="width-1" y2="height-3"/> + <line color="shade/#edeceb/0.96" x1="3" y1="height-1" x2="width-4" y2="height-1"/> + + <line color="shade/#edeceb/0.94" x1="2" y1="height-2" x2="width-3" y2="height-2"/> + <line color="shade/#edeceb/0.95" x1="1" y1="height-3" x2="width-2" y2="height-3"/> + + <!-- border outline --> + <line color="shade/#edeceb/0.6" x1="3" y1="1" x2="width-4" y2="1"/> + <line color="shade/#edeceb/0.6" x1="3" y1="height-2" x2="width-4" y2="height-2"/> + <line color="shade/#edeceb/0.6" x1="1" y1="3" x2="1" y2="height-4"/> + <line color="shade/#edeceb/0.6" x1="width-2" y1="3" x2="width-2" y2="height-4"/> + + <line color="shade/#edeceb/0.6" x1="2" y1="2" x2="width-3" y2="2"/> + <line color="shade/#edeceb/0.6" x1="2" y1="height-3" x2="width-3" y2="height-3"/> + + <!-- border smooth effect --> + <line color="shade/#edeceb/1.02" x1="3" y1="2" x2="width-4" y2="2"/> + <line color="shade/#edeceb/1.00" x1="2" y1="3" x2="2" y2="height-4"/> + <line color="shade/#edeceb/0.95" x1="width-3" y1="3" x2="width-3" y2="height-4"/> + + <!-- inside highlight --> + <line color="shade/#edeceb/1.2" x1="4" y1="2" x2="width-5" y2="2"/> + <line color="shade/#edeceb/1.1" x1="2" y1="4" x2="2" y2="height-5"/> + <!-- inside shadow --> + <line color="shade/#edeceb/1.05" x1="width-3" y1="4" x2="width-3" y2="height-5"/> + + <!-- fill gradient --> + <gradient type="vertical" x="3" y="3" width="width-6" height="(height)/2-1"> + <color value="shade/#edeceb/0.95"/> + <color value="shade/#edeceb/0.87"/> + </gradient> + <gradient type="vertical" x="3" y="(height)/2" width="width-6" height="(height)/2-2"> + <color value="shade/#edeceb/0.85"/> + <color value="shade/#edeceb/0.77"/> + </gradient> + + <!-- bottom border smooth effect --> + <line color="shade/#edeceb/0.89" x1="3" y1="height-3" x2="width-4" y2="height-3"/> + <line color="shade/#edeceb/0.97" x1="4" y1="height-3" x2="width-5" y2="height-3"/> +</draw_ops> + +<draw_ops name="button_bg_prelight"> + <include name="button_bg"/> + <tint color="shade/#B9C0A9/1.5" alpha="0.2" x="3" y="3" width="width-5" height="height-5"/> + <line color="shade/#B9C0A9/0.6" x1="width-3" y1="height-3" x2="width-3" y2="height-3"/> +</draw_ops> + +<draw_ops name="button_bg_pressed"> + <!-- outside highlight --> + <gradient type="vertical" x="width-2" y="2" width="1" height="height-4"> + <color value="shade/#B9C0A9/1.2"/> + <color value="shade/#B9C0A9/1.0"/> + </gradient> + <gradient type="vertical" x="width-1" y="3" width="1" height="height-6"> + <color value="shade/#B9C0A9/1.2"/> + <color value="shade/#B9C0A9/1.0"/> + </gradient> + <line color="shade/#B9C0A9/1.0" x1="2" y1="height-2" x2="width-3" y2="height-2"/> + <line color="shade/#B9C0A9/1.0" x1="3" y1="height-1" x2="width-4" y2="height-1"/> + + <!-- border outline --> + <line color="shade/#B9C0A9/0.55" x1="3" y1="1" x2="width-4" y2="1"/> + <line color="shade/#B9C0A9/0.55" x1="3" y1="height-2" x2="width-4" y2="height-2"/> + <line color="shade/#B9C0A9/0.55" x1="1" y1="3" x2="1" y2="height-4"/> + <line color="shade/#B9C0A9/0.55" x1="width-2" y1="3" x2="width-2" y2="height-4"/> + + <line color="shade/#B9C0A9/0.55" x1="2" y1="2" x2="width-3" y2="2"/> + <line color="shade/#B9C0A9/0.55" x1="2" y1="height-3" x2="width-3" y2="height-3"/> + + <!-- inside shadow --> + <line color="shade/#B9C0A9/0.9" x1="3" y1="2" x2="width-4" y2="2"/> + <line color="shade/#B9C0A9/0.85" x1="2" y1="3" x2="2" y2="height-4"/> + + <!-- fill gradient --> + <gradient type="vertical" x="3" y="3" width="width-5" height="height-6"> + <color value="shade/#B9C0A9/0.95"/> + <color value="shade/#B9C0A9/0.9"/> + </gradient> + + <line color="shade/#B9C0A9/0.9" x1="3" y1="height-3" x2="width-4" y2="height-3"/> +</draw_ops> + +<draw_ops name="button_bg_unfocused_prelight"> + <include name="button_bg_unfocused"/> + <tint color="shade/#edeceb/1.5" alpha="0.3" x="3" y="3" width="width-5" height="height-5"/> + <line color="shade/#edeceb/0.6" x1="width-3" y1="height-3" x2="width-3" y2="height-3"/> +</draw_ops> + +<draw_ops name="button_bg_unfocused_pressed"> + <!-- outside highlight --> + <gradient type="vertical" x="width-2" y="2" width="1" height="height-4"> + <color value="shade/#edeceb/1.25"/> + <color value="shade/#edeceb/1.05"/> + </gradient> + <gradient type="vertical" x="width-1" y="3" width="1" height="height-6"> + <color value="shade/#edeceb/1.25"/> + <color value="shade/#edeceb/1.05"/> + </gradient> + <line color="shade/#edeceb/1.05" x1="2" y1="height-2" x2="width-3" y2="height-2"/> + <line color="shade/#edeceb/1.05" x1="3" y1="height-1" x2="width-4" y2="height-1"/> + + <!-- border outline --> + <line color="shade/#edeceb/0.55" x1="3" y1="1" x2="width-4" y2="1"/> + <line color="shade/#edeceb/0.55" x1="3" y1="height-2" x2="width-4" y2="height-2"/> + <line color="shade/#edeceb/0.55" x1="1" y1="3" x2="1" y2="height-4"/> + <line color="shade/#edeceb/0.55" x1="width-2" y1="3" x2="width-2" y2="height-4"/> + <line color="shade/#edeceb/0.55" x1="2" y1="2" x2="width-3" y2="2"/> + <line color="shade/#edeceb/0.55" x1="2" y1="height-3" x2="width-3" y2="height-3"/> + + <!-- inside shadow --> + <line color="shade/#edeceb/0.8" x1="3" y1="2" x2="width-4" y2="2"/> + <line color="shade/#edeceb/0.75" x1="2" y1="3" x2="2" y2="height-4"/> + + <!-- fill gradient --> + <gradient type="vertical" x="3" y="3" width="width-5" height="height-6"> + <color value="shade/#edeceb/0.9"/> + <color value="shade/#edeceb/0.85"/> + </gradient> + + <line color="shade/#edeceb/0.85" x1="3" y1="height-3" x2="width-4" y2="height-3"/> +</draw_ops> + +<!-- ::: ICONS ::: --> +<!-- + using a minimum icon size until there is a proper way to specify relative sizes + unfortunately it's logically impossible to always center the icons on non-square + buttons (utility windows) without distortion. + + icon_size = (Bmin`max`height-Bpad*2) + hpadding = (width - icon_size) / 2 = ((width-(Bmin`max`height-Bpad*2))/2) + vpadding = (height - icon_size) / 2 = ((height-(Bmin`max`height-Bpad*2))/2) +--> + +<!-- menu icon --> +<draw_ops name="menu_button_icon"> + <!--<icon x="0" y="0" width="width" height="height"/>--> + <icon x="(width-mini_icon_width)/2" y="(height-mini_icon_height)/2" width="mini_icon_width" height="mini_icon_height"/> +</draw_ops> + +<draw_ops name="menu_button_icon_unfocused"> + <!--<icon x="0" y="0" width="width" height="height" alpha="0.5"/>--> + <icon x="(width-mini_icon_width)/2" y="(height-mini_icon_height)/2" width="mini_icon_width" height="mini_icon_height"/> +</draw_ops> + +<draw_ops name="menu_button_normal"> + <include name="menu_button_icon"/> +</draw_ops> +<draw_ops name="menu_button_pressed"> + <include name="menu_button_icon"/> +</draw_ops> +<draw_ops name="menu_button_unfocused"> + <include name="menu_button_icon_unfocused"/> +</draw_ops> + +<!-- close icon --> +<draw_ops name="close_button_icon"> + <!-- outside border --> + + <!-- main cross --> + <line color="shade/#B9C0A9/0.7" width="4" + x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="((height-(Bmin`max`height-Bpad*2))/2)" + x2="width - ((width-(Bmin`max`height-Bpad*2))/2) - 1" y2="height - ((height-(Bmin`max`height-Bpad*2))/2) - 1"/> + <line color="shade/#B9C0A9/0.7" width="4" + x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="height - ((height-(Bmin`max`height-Bpad*2))/2) - 1" + x2="width - ((width-(Bmin`max`height-Bpad*2))/2) - 1" y2="((height-(Bmin`max`height-Bpad*2))/2)"/> + <!-- top-left --> + <tint color="shade/#B9C0A9/0.7" alpha="1.0" + x="((width-(Bmin`max`height-Bpad*2))/2)" y="((height-(Bmin`max`height-Bpad*2))/2)-1" + width="2" height="1"/> + <tint color="shade/#B9C0A9/0.7" alpha="1.0" + x="((width-(Bmin`max`height-Bpad*2))/2)-1" y="((height-(Bmin`max`height-Bpad*2))/2)/1" + width="1" height="2"/> + <!-- top-right --> + <tint color="shade/#B9C0A9/0.7" alpha="1.0" + x="width - ((width-(Bmin`max`height-Bpad*2))/2) -2" y="((height-(Bmin`max`height-Bpad*2))/2)-1" + width="2" height="1"/> + <tint color="shade/#B9C0A9/0.7" alpha="1.0" + x="width - ((width-(Bmin`max`height-Bpad*2))/2)" y="((height-(Bmin`max`height-Bpad*2))/2)" + width="1" height="2"/> + <!-- bottom-left --> + <tint color="shade/#B9C0A9/0.7" alpha="1.0" + x="((width-(Bmin`max`height-Bpad*2))/2)" y="height - ((height-(Bmin`max`height-Bpad*2))/2)" + width="2" height="1"/> + <tint color="shade/#B9C0A9/0.7" alpha="1.0" + x="((width-(Bmin`max`height-Bpad*2))/2)-1" y="height - ((height-(Bmin`max`height-Bpad*2))/2)-2" + width="1" height="2"/> + <!-- bottom-right --> + <tint color="shade/#B9C0A9/0.7" alpha="1.0" + x="width - ((width-(Bmin`max`height-Bpad*2))/2) -2" y="height - ((height-(Bmin`max`height-Bpad*2))/2)" + width="2" height="1"/> + <tint color="shade/#B9C0A9/0.7" alpha="1.0" + x="width - ((width-(Bmin`max`height-Bpad*2))/2)" y="height - ((height-(Bmin`max`height-Bpad*2))/2)-2" + width="1" height="2"/> + + <!-- icon --> + <line color="blend/#B9C0A9/#FFFFFF/0.75" width="2" + x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="((height-(Bmin`max`height-Bpad*2))/2)" + x2="width - ((width-(Bmin`max`height-Bpad*2))/2) - 1" y2="height - ((height-(Bmin`max`height-Bpad*2))/2) - 1"/> + <line color="blend/#B9C0A9/#FFFFFF/0.75" width="1" + x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="((height-(Bmin`max`height-Bpad*2))/2)" + x2="width- ((width-(Bmin`max`height-Bpad*2))/2)" y2="height - ((height-(Bmin`max`height-Bpad*2))/2)"/> + <line color="blend/#B9C0A9/#FFFFFF/0.75" width="2" + x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="height - ((height-(Bmin`max`height-Bpad*2))/2) - 1" + x2="width - ((width-(Bmin`max`height-Bpad*2))/2) - 1" y2="((height-(Bmin`max`height-Bpad*2))/2)"/> + <line color="blend/#B9C0A9/#FFFFFF/0.75" width="1" + x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="height - ((height-(Bmin`max`height-Bpad*2))/2) - 1" + x2="width - ((width-(Bmin`max`height-Bpad*2))/2)" y2="((height-(Bmin`max`height-Bpad*2))/2) - 1"/> +</draw_ops> + +<draw_ops name="close_button_icon_unfocused"> + <line color="blend/#000000/#edeceb/0.45" width="2" + x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="((height-(Bmin`max`height-Bpad*2))/2)" + x2="width-((width-(Bmin`max`height-Bpad*2))/2)-1" y2="height - ((height-(Bmin`max`height-Bpad*2))/2)-1"/> + <line color="blend/#000000/#edeceb/0.45" width="1" + x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="((height-(Bmin`max`height-Bpad*2))/2)" + x2="width-((width-(Bmin`max`height-Bpad*2))/2)" y2="height - ((height-(Bmin`max`height-Bpad*2))/2)"/> + <line color="blend/#000000/#edeceb/0.45" width="2" + x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="height - ((height-(Bmin`max`height-Bpad*2))/2)-1" + x2="width-((width-(Bmin`max`height-Bpad*2))/2)-1" y2="((height-(Bmin`max`height-Bpad*2))/2)"/> + <line color="blend/#000000/#edeceb/0.45" width="1" + x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="height - ((height-(Bmin`max`height-Bpad*2))/2)-1" + x2="width-((width-(Bmin`max`height-Bpad*2))/2)" y2="((height-(Bmin`max`height-Bpad*2))/2) - 1"/> +</draw_ops> + +<draw_ops name="close_button_normal"> + <include name="button_bg"/> + <include name="close_button_icon"/> +</draw_ops> +<draw_ops name="close_button_prelight"> + <include name="button_bg_prelight"/> + <include name="close_button_icon"/> +</draw_ops> +<draw_ops name="close_button_pressed"> + <include name="button_bg_pressed"/> + <include name="close_button_icon"/> +</draw_ops> +<draw_ops name="close_button_unfocused"> + <include name="button_bg_unfocused"/> + <include name="close_button_icon_unfocused"/> +</draw_ops> +<draw_ops name="close_button_unfocused_prelight"> + <include name="button_bg_unfocused_prelight"/> + <include name="close_button_icon_unfocused"/> +</draw_ops> +<draw_ops name="close_button_unfocused_pressed"> + <include name="button_bg_unfocused_pressed"/> + <include name="close_button_icon_unfocused"/> +</draw_ops> + +<!-- maximize icon --> +<draw_ops name="maximize_button_icon"> + <!-- outside border --> + <rectangle color="shade/#B9C0A9/0.7" filled="false" + x="((width-(Bmin`max`height-Bpad*2))/2)-1" y="((height-(Bmin`max`height-Bpad*2))/2)-1" + width="width-((width-(Bmin`max`height-Bpad*2))/2)*2+1" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2+1"/> + <rectangle color="shade/#B9C0A9/0.7" filled="false" + x="((width-(Bmin`max`height-Bpad*2))/2)+1" y="((height-(Bmin`max`height-Bpad*2))/2)+2" + width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-3" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-4"/> + + <!-- icon --> + <rectangle color="blend/#B9C0A9/#FFFFFF/0.75" filled="false" + x="((width-(Bmin`max`height-Bpad*2))/2)" y="((height-(Bmin`max`height-Bpad*2))/2)" + width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-1" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-1"/> + <line color="blend/#B9C0A9/#FFFFFF/0.75" width="1" + x1="((width-(Bmin`max`height-Bpad*2))/2) + 1" y1="((height-(Bmin`max`height-Bpad*2))/2) + 1" + x2="width-((width-(Bmin`max`height-Bpad*2))/2)" y2="((height-(Bmin`max`height-Bpad*2))/2) + 1"/> +</draw_ops> + +<draw_ops name="maximize_button_icon_unfocused"> + <rectangle color="blend/#000000/#edeceb/0.45" filled="false" + x="((width-(Bmin`max`height-Bpad*2))/2)" y="((height-(Bmin`max`height-Bpad*2))/2)" + width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-1" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-1"/> + <line color="blend/#000000/#edeceb/0.45" width="1" + x1="((width-(Bmin`max`height-Bpad*2))/2) + 1" y1="((height-(Bmin`max`height-Bpad*2))/2) + 1" + x2="width-((width-(Bmin`max`height-Bpad*2))/2)" y2="((height-(Bmin`max`height-Bpad*2))/2) + 1"/> +</draw_ops> + +<draw_ops name="maximize_button_normal"> + <include name="button_bg"/> + <include name="maximize_button_icon"/> +</draw_ops> +<draw_ops name="maximize_button_prelight"> + <include name="button_bg_prelight"/> + <include name="maximize_button_icon"/> +</draw_ops> +<draw_ops name="maximize_button_pressed"> + <include name="button_bg_pressed"/> + <include name="maximize_button_icon"/> +</draw_ops> +<draw_ops name="maximize_button_unfocused"> + <include name="button_bg_unfocused"/> + <include name="maximize_button_icon_unfocused"/> +</draw_ops> +<draw_ops name="maximize_button_unfocused_prelight"> + <include name="button_bg_unfocused_prelight"/> + <include name="maximize_button_icon_unfocused"/> +</draw_ops> +<draw_ops name="maximize_button_unfocused_pressed"> + <include name="button_bg_unfocused_pressed"/> + <include name="maximize_button_icon_unfocused"/> +</draw_ops> + +<!-- restore icon --> +<draw_ops name="restore_button_icon"> + <!-- outside border --> + <rectangle color="shade/#B9C0A9/0.7" filled="false" + x="((width-(Bmin`max`height-Bpad*2))/2)" y="((height-(Bmin`max`height-Bpad*2))/2)" + width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-1" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-1"/> + <rectangle color="shade/#B9C0A9/0.7" filled="false" + x="((width-(Bmin`max`height-Bpad*2))/2)+2" y="((height-(Bmin`max`height-Bpad*2))/2)+3" + width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-5" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-6"/> + + <!-- icon --> + <rectangle color="blend/#B9C0A9/#FFFFFF/0.75" filled="false" + x="((width-(Bmin`max`height-Bpad*2))/2) + 1" y="((height-(Bmin`max`height-Bpad*2))/2) + 1" + width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-3" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-3"/> + <line color="blend/#B9C0A9/#FFFFFF/0.75" width="1" + x1="((width-(Bmin`max`height-Bpad*2))/2) + 2" y1="((height-(Bmin`max`height-Bpad*2))/2) + 2" + x2="width-((width-(Bmin`max`height-Bpad*2))/2) - 2" y2="((height-(Bmin`max`height-Bpad*2))/2) + 2"/> +</draw_ops> + +<draw_ops name="restore_button_icon_unfocused"> + <rectangle color="blend/#000000/#edeceb/0.45" filled="false" + x="((width-(Bmin`max`height-Bpad*2))/2) + 1" y="((height-(Bmin`max`height-Bpad*2))/2) + 1" + width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-3" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-3"/> + <line color="blend/#000000/#edeceb/0.45" width="1" + x1="((width-(Bmin`max`height-Bpad*2))/2) + 2" y1="((height-(Bmin`max`height-Bpad*2))/2) + 2" + x2="width-((width-(Bmin`max`height-Bpad*2))/2) - 2" y2="((height-(Bmin`max`height-Bpad*2))/2) + 2"/> +</draw_ops> + +<draw_ops name="restore_button_normal"> + <include name="button_bg"/> + <include name="restore_button_icon"/> +</draw_ops> +<draw_ops name="restore_button_prelight"> + <include name="button_bg_prelight"/> + <include name="restore_button_icon"/> +</draw_ops> +<draw_ops name="restore_button_pressed"> + <include name="button_bg_pressed"/> + <include name="restore_button_icon"/> +</draw_ops> +<draw_ops name="restore_button_unfocused"> + <include name="button_bg_unfocused"/> + <include name="restore_button_icon_unfocused"/> +</draw_ops> +<draw_ops name="restore_button_unfocused_prelight"> + <include name="button_bg_unfocused_prelight"/> + <include name="restore_button_icon_unfocused"/> +</draw_ops> +<draw_ops name="restore_button_unfocused_pressed"> + <include name="button_bg_unfocused_pressed"/> + <include name="restore_button_icon_unfocused"/> +</draw_ops> + +<!-- minimize icon --> +<draw_ops name="minimize_button_icon"> + <!-- outside border --> + <rectangle color="shade/#B9C0A9/0.7" filled="false" + x="((width-(Bmin`max`height-Bpad*2))/2)-1" y="height - ((height-(Bmin`max`height-Bpad*2))/2) - 3" + width="width-((width-(Bmin`max`height-Bpad*2))/2)*2+1" height="3"/> + <!-- icon --> + <rectangle color="blend/#B9C0A9/#FFFFFF/0.75" filled="true" + x="((width-(Bmin`max`height-Bpad*2))/2)" y="height - ((height-(Bmin`max`height-Bpad*2))/2) - 2" + width="width-((width-(Bmin`max`height-Bpad*2))/2)*2" height="2"/> +</draw_ops> + +<draw_ops name="minimize_button_icon_unfocused"> + <rectangle color="blend/#000000/#edeceb/0.45" filled="true" + x="((width-(Bmin`max`height-Bpad*2))/2)" y="height - ((height-(Bmin`max`height-Bpad*2))/2) - 2" + width="width-((width-(Bmin`max`height-Bpad*2))/2)*2" height="2"/> +</draw_ops> + +<draw_ops name="minimize_button_normal"> + <include name="button_bg"/> + <include name="minimize_button_icon"/> +</draw_ops> +<draw_ops name="minimize_button_prelight"> + <include name="button_bg_prelight"/> + <include name="minimize_button_icon"/> +</draw_ops> +<draw_ops name="minimize_button_pressed"> + <include name="button_bg_pressed"/> + <include name="minimize_button_icon"/> +</draw_ops> +<draw_ops name="minimize_button_unfocused"> + <include name="button_bg_unfocused"/> + <include name="minimize_button_icon_unfocused"/> +</draw_ops> +<draw_ops name="minimize_button_unfocused_prelight"> + <include name="button_bg_unfocused_prelight"/> + <include name="minimize_button_icon_unfocused"/> +</draw_ops> +<draw_ops name="minimize_button_unfocused_pressed"> + <include name="button_bg_unfocused_pressed"/> + <include name="minimize_button_icon_unfocused"/> +</draw_ops> + +<draw_ops name="blank"> +<!-- nothing --> +</draw_ops> + +<!-- ::: FRAME STYLES ::: --> +<frame_style name="normal" geometry="normal"> + <piece position="entire_background" draw_ops="round_bevel_unfocused"/> + <piece position="title" draw_ops="title_unfocused"/> + <button function="close" state="normal" draw_ops="close_button_unfocused"/> + <button function="close" state="pressed" draw_ops="close_button_unfocused_pressed"/> + <button function="close" state="prelight" draw_ops="close_button_unfocused_prelight"/> + <button function="maximize" state="normal" draw_ops="maximize_button_unfocused"/> + <button function="maximize" state="pressed" draw_ops="maximize_button_unfocused_pressed"/> + <button function="maximize" state="prelight" draw_ops="maximize_button_unfocused_prelight"/> + <button function="minimize" state="normal" draw_ops="minimize_button_unfocused"/> + <button function="minimize" state="pressed" draw_ops="minimize_button_unfocused_pressed"/> + <button function="minimize" state="prelight" draw_ops="minimize_button_unfocused_prelight"/> + <button function="menu" state="normal" draw_ops="menu_button_normal"/> + <button function="menu" state="pressed" draw_ops="menu_button_pressed"/> +</frame_style> + +<frame_style name="normal_shaded" geometry="shaded" parent="normal"> + <piece position="entire_background" draw_ops="round_bevel_unfocused_shaded"/> +</frame_style> + +<frame_style name="focused" geometry="normal" parent="normal"> + <piece position="entire_background" draw_ops="round_bevel"/> + <piece position="title" draw_ops="title"/> + <button function="close" state="normal" draw_ops="close_button_normal"/> + <button function="close" state="pressed" draw_ops="close_button_pressed"/> + <button function="close" state="prelight" draw_ops="close_button_prelight"/> + <button function="maximize" state="normal" draw_ops="maximize_button_normal"/> + <button function="maximize" state="pressed" draw_ops="maximize_button_pressed"/> + <button function="maximize" state="prelight" draw_ops="maximize_button_prelight"/> + <button function="minimize" state="normal" draw_ops="minimize_button_normal"/> + <button function="minimize" state="pressed" draw_ops="minimize_button_pressed"/> + <button function="minimize" state="prelight" draw_ops="minimize_button_prelight"/> +</frame_style> + +<frame_style name="focused_shaded" geometry="shaded" parent="focused"> + <piece position="entire_background" draw_ops="round_bevel_shaded"/> +</frame_style> + +<frame_style name="normal_maximized" geometry="normal_maximized" parent="normal"> + <piece position="entire_background" draw_ops="bevel_maximized_unfocused"/> + <button function="maximize" state="normal" draw_ops="restore_button_unfocused"/> + <button function="maximize" state="pressed" draw_ops="restore_button_unfocused_pressed"/> + <button function="maximize" state="prelight" draw_ops="restore_button_unfocused_prelight"/> +</frame_style> + +<frame_style name="focused_maximized" geometry="normal_maximized" parent="focused"> + <piece position="entire_background" draw_ops="bevel_maximized"/> + <button function="maximize" state="normal" draw_ops="restore_button_normal"/> + <button function="maximize" state="pressed" draw_ops="restore_button_pressed"/> + <button function="maximize" state="prelight" draw_ops="restore_button_prelight"/> +</frame_style> + +<frame_style name="border" geometry="border" parent="normal"> + <piece position="entire_background" draw_ops="border"/> + <piece position="title" draw_ops="blank"/> +</frame_style> + +<frame_style name="utility_normal" geometry="utility" parent="normal"> + <piece position="entire_background" draw_ops="bevel_unfocused"/> +</frame_style> +<frame_style name="utility_focused" geometry="utility" parent="focused"> + <piece position="entire_background" draw_ops="bevel"/> +</frame_style> +<frame_style name="utility_focused_shaded" geometry="utility" parent="focused_shaded"> + <piece position="entire_background" draw_ops="bevel_shaded"/> +</frame_style> + +<frame_style_set name="normal"> + <frame focus="yes" state="normal" resize="both" style="focused"/> + <frame focus="no" state="normal" resize="both" style="normal"/> + <frame focus="yes" state="maximized" style="focused_maximized"/> + <frame focus="no" state="maximized" style="normal_maximized"/> + <frame focus="yes" state="shaded" style="focused_shaded"/> + <frame focus="no" state="shaded" style="normal_shaded"/> + <frame focus="yes" state="maximized_and_shaded" style="focused_maximized"/> + <frame focus="no" state="maximized_and_shaded" style="normal_maximized"/> +</frame_style_set> + +<frame_style_set name="utility" parent="normal"> + <frame focus="yes" state="normal" resize="both" style="utility_focused"/> + <frame focus="no" state="normal" resize="both" style="utility_normal"/> + <!-- this is a bunch of crack since utility windows shouldn't be maximized --> + <frame focus="yes" state="maximized" style="focused"/> + <frame focus="no" state="maximized" style="normal"/> + <frame focus="yes" state="shaded" style="utility_focused_shaded"/> + <frame focus="no" state="shaded" style="utility_normal"/> + <frame focus="yes" state="maximized_and_shaded" style="focused_shaded"/> + <frame focus="no" state="maximized_and_shaded" style="normal"/> +</frame_style_set> + +<frame_style_set name="border"> + <frame focus="yes" state="normal" resize="both" style="border"/> + <frame focus="no" state="normal" resize="both" style="border"/> + <frame focus="yes" state="maximized" style="border"/> + <frame focus="no" state="maximized" style="border"/> + <frame focus="yes" state="shaded" style="border"/> + <frame focus="no" state="shaded" style="border"/> + <frame focus="yes" state="maximized_and_shaded" style="border"/> + <frame focus="no" state="maximized_and_shaded" style="border"/> +</frame_style_set> + +<window type="normal" style_set="normal"/> +<window type="dialog" style_set="normal"/> +<window type="modal_dialog" style_set="normal"/> +<window type="menu" style_set="normal"/> +<window type="utility" style_set="utility"/> +<window type="border" style_set="border"/> + +<menu_icon function="close" state="normal" draw_ops="close_button_icon_unfocused"/> +<menu_icon function="maximize" state="normal" draw_ops="maximize_button_icon_unfocused"/> +<menu_icon function="unmaximize" state="normal" draw_ops="restore_button_icon_unfocused"/> +<menu_icon function="minimize" state="normal" draw_ops="minimize_button_icon_unfocused"/> + +</metacity_theme> -- cgit v1.2.1