diff --git a/Cutefish-dark/gtk-2.0/apps.rc b/Cutefish-dark/gtk-2.0/apps.rc new file mode 100644 index 0000000..530e72f --- /dev/null +++ b/Cutefish-dark/gtk-2.0/apps.rc @@ -0,0 +1,92 @@ +# vim:set ft=gtkrc ts=2 sw=2 sts=2 ai et: +# +# This file, unlike hacks.rc, contains legitimate cases we need to handle, e.g. +# custom widgets, programs giving us a chance to alter their UI to fit more with +# the theme or stuff that is supposed to look different, like panels. + +# TODO: This could really look nicer +style "gimp_spin_scale" { + # Spin background + bg[NORMAL] = @base_color + + engine "pixmap" { + image { + function = BOX + state = NORMAL + detail = "spinbutton_up" + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_up" + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_up" + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_up" + overlay_file = "assets/pan-up-alt-disabled.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = NORMAL + detail = "spinbutton_down" + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_down" + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_down" + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_down" + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + } + } +} + +style "chrome_gtk_frame" { + ChromeGtkFrame::frame-color = @titlebar_bg_color + ChromeGtkFrame::inactive-frame-color = @titlebar_bg_color + ChromeGtkFrame::incognito-frame-color = @titlebar_bg_color + ChromeGtkFrame::incognito-inactive-frame-color = @titlebar_bg_color + + ChromeGtkFrame::frame-gradient-size = 0 +} + +# Disable spin button assets for GimpSpinScale +class "GimpSpinScale" style "gimp_spin_scale" + +# Chromium lets us define some colours and settings for better integration +class "ChromeGtkFrame" style "chrome_gtk_frame" diff --git a/Cutefish-dark/gtk-2.0/assets/border.png b/Cutefish-dark/gtk-2.0/assets/border.png new file mode 100644 index 0000000..20d503b Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/border.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/button-active.png b/Cutefish-dark/gtk-2.0/assets/button-active.png new file mode 100644 index 0000000..ca25ccc Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/button-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/button-disabled.png b/Cutefish-dark/gtk-2.0/assets/button-disabled.png new file mode 100644 index 0000000..6578ba7 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/button-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/button-hover.png b/Cutefish-dark/gtk-2.0/assets/button-hover.png new file mode 100644 index 0000000..66e1fdd Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/button-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/button.png b/Cutefish-dark/gtk-2.0/assets/button.png new file mode 100644 index 0000000..3fe12c7 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/button.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/checkbox-checked-active.png b/Cutefish-dark/gtk-2.0/assets/checkbox-checked-active.png new file mode 100644 index 0000000..373c77b Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/checkbox-checked-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/checkbox-checked-disabled.png b/Cutefish-dark/gtk-2.0/assets/checkbox-checked-disabled.png new file mode 100644 index 0000000..a29a117 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/checkbox-checked-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/checkbox-checked-hover.png b/Cutefish-dark/gtk-2.0/assets/checkbox-checked-hover.png new file mode 100644 index 0000000..e101429 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/checkbox-checked-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/checkbox-checked.png b/Cutefish-dark/gtk-2.0/assets/checkbox-checked.png new file mode 100644 index 0000000..d39d78c Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/checkbox-checked.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/checkbox-mixed-active.png b/Cutefish-dark/gtk-2.0/assets/checkbox-mixed-active.png new file mode 100644 index 0000000..3222f21 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/checkbox-mixed-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/checkbox-mixed-disabled.png b/Cutefish-dark/gtk-2.0/assets/checkbox-mixed-disabled.png new file mode 100644 index 0000000..45d5349 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/checkbox-mixed-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/checkbox-mixed-hover.png b/Cutefish-dark/gtk-2.0/assets/checkbox-mixed-hover.png new file mode 100644 index 0000000..ae1b5dc Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/checkbox-mixed-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/checkbox-mixed.png b/Cutefish-dark/gtk-2.0/assets/checkbox-mixed.png new file mode 100644 index 0000000..49889df Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/checkbox-mixed.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/checkbox-unchecked-active.png b/Cutefish-dark/gtk-2.0/assets/checkbox-unchecked-active.png new file mode 100644 index 0000000..f6948e7 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/checkbox-unchecked-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/checkbox-unchecked-disabled.png b/Cutefish-dark/gtk-2.0/assets/checkbox-unchecked-disabled.png new file mode 100644 index 0000000..73e42bd Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/checkbox-unchecked-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/checkbox-unchecked-hover.png b/Cutefish-dark/gtk-2.0/assets/checkbox-unchecked-hover.png new file mode 100644 index 0000000..191738b Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/checkbox-unchecked-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/checkbox-unchecked.png b/Cutefish-dark/gtk-2.0/assets/checkbox-unchecked.png new file mode 100644 index 0000000..e310c02 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/checkbox-unchecked.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/combo-left-entry-active.png b/Cutefish-dark/gtk-2.0/assets/combo-left-entry-active.png new file mode 100644 index 0000000..484defd Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/combo-left-entry-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/combo-left-entry-disabled.png b/Cutefish-dark/gtk-2.0/assets/combo-left-entry-disabled.png new file mode 100644 index 0000000..6a9d9dd Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/combo-left-entry-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/combo-left-entry-hover.png b/Cutefish-dark/gtk-2.0/assets/combo-left-entry-hover.png new file mode 100644 index 0000000..c65ced0 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/combo-left-entry-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/combo-left-entry.png b/Cutefish-dark/gtk-2.0/assets/combo-left-entry.png new file mode 100644 index 0000000..255e3dc Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/combo-left-entry.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/combo-right-entry-active.png b/Cutefish-dark/gtk-2.0/assets/combo-right-entry-active.png new file mode 100644 index 0000000..99fd130 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/combo-right-entry-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/combo-right-entry-disabled.png b/Cutefish-dark/gtk-2.0/assets/combo-right-entry-disabled.png new file mode 100644 index 0000000..67cfcc7 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/combo-right-entry-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/combo-right-entry-hover.png b/Cutefish-dark/gtk-2.0/assets/combo-right-entry-hover.png new file mode 100644 index 0000000..8d643bd Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/combo-right-entry-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/combo-right-entry.png b/Cutefish-dark/gtk-2.0/assets/combo-right-entry.png new file mode 100644 index 0000000..5d23233 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/combo-right-entry.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/entry-active.png b/Cutefish-dark/gtk-2.0/assets/entry-active.png new file mode 100644 index 0000000..4d261e1 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/entry-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/entry-background-disabled.png b/Cutefish-dark/gtk-2.0/assets/entry-background-disabled.png new file mode 100644 index 0000000..ce14ba8 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/entry-background-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/entry-background.png b/Cutefish-dark/gtk-2.0/assets/entry-background.png new file mode 100644 index 0000000..fdf26ab Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/entry-background.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/entry-disabled.png b/Cutefish-dark/gtk-2.0/assets/entry-disabled.png new file mode 100644 index 0000000..6578ba7 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/entry-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/entry-hover.png b/Cutefish-dark/gtk-2.0/assets/entry-hover.png new file mode 100644 index 0000000..5733239 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/entry-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/entry.png b/Cutefish-dark/gtk-2.0/assets/entry.png new file mode 100644 index 0000000..3fe12c7 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/entry.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/flat-button-active.png b/Cutefish-dark/gtk-2.0/assets/flat-button-active.png new file mode 100644 index 0000000..ca25ccc Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/flat-button-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/flat-button-disabled.png b/Cutefish-dark/gtk-2.0/assets/flat-button-disabled.png new file mode 100644 index 0000000..96f9995 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/flat-button-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/flat-button-hover.png b/Cutefish-dark/gtk-2.0/assets/flat-button-hover.png new file mode 100644 index 0000000..66e1fdd Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/flat-button-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/flat-button.png b/Cutefish-dark/gtk-2.0/assets/flat-button.png new file mode 100644 index 0000000..96f9995 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/flat-button.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/focus.png b/Cutefish-dark/gtk-2.0/assets/focus.png new file mode 100644 index 0000000..3e8d13d Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/focus.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/frame-inline.png b/Cutefish-dark/gtk-2.0/assets/frame-inline.png new file mode 100644 index 0000000..7d10ff1 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/frame-inline.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/frame-notebook.png b/Cutefish-dark/gtk-2.0/assets/frame-notebook.png new file mode 100644 index 0000000..7b5020e Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/frame-notebook.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/frame.png b/Cutefish-dark/gtk-2.0/assets/frame.png new file mode 100644 index 0000000..1562a81 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/frame.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/handle-horz-active.png b/Cutefish-dark/gtk-2.0/assets/handle-horz-active.png new file mode 100644 index 0000000..f1c519e Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/handle-horz-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/handle-horz-hover.png b/Cutefish-dark/gtk-2.0/assets/handle-horz-hover.png new file mode 100644 index 0000000..e7e40d6 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/handle-horz-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/handle-horz.png b/Cutefish-dark/gtk-2.0/assets/handle-horz.png new file mode 100644 index 0000000..ef1738d Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/handle-horz.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/handle-vert-active.png b/Cutefish-dark/gtk-2.0/assets/handle-vert-active.png new file mode 100644 index 0000000..0cec1dc Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/handle-vert-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/handle-vert-hover.png b/Cutefish-dark/gtk-2.0/assets/handle-vert-hover.png new file mode 100644 index 0000000..600fb08 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/handle-vert-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/handle-vert.png b/Cutefish-dark/gtk-2.0/assets/handle-vert.png new file mode 100644 index 0000000..377fdf0 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/handle-vert.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/menu-checkbox-checked-disabled.png b/Cutefish-dark/gtk-2.0/assets/menu-checkbox-checked-disabled.png new file mode 100644 index 0000000..db35b0d Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/menu-checkbox-checked-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/menu-checkbox-checked.png b/Cutefish-dark/gtk-2.0/assets/menu-checkbox-checked.png new file mode 100644 index 0000000..40c35dd Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/menu-checkbox-checked.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/menu-checkbox-mixed-disabled.png b/Cutefish-dark/gtk-2.0/assets/menu-checkbox-mixed-disabled.png new file mode 100644 index 0000000..3a88eca Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/menu-checkbox-mixed-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/menu-checkbox-mixed.png b/Cutefish-dark/gtk-2.0/assets/menu-checkbox-mixed.png new file mode 100644 index 0000000..8b3d44f Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/menu-checkbox-mixed.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/menu-checkbox-unchecked-disabled.png b/Cutefish-dark/gtk-2.0/assets/menu-checkbox-unchecked-disabled.png new file mode 100644 index 0000000..4b8fbb5 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/menu-checkbox-unchecked-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/menu-checkbox-unchecked.png b/Cutefish-dark/gtk-2.0/assets/menu-checkbox-unchecked.png new file mode 100644 index 0000000..5317874 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/menu-checkbox-unchecked.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/menu-radio-checked-disabled.png b/Cutefish-dark/gtk-2.0/assets/menu-radio-checked-disabled.png new file mode 100644 index 0000000..1a5bedf Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/menu-radio-checked-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/menu-radio-checked.png b/Cutefish-dark/gtk-2.0/assets/menu-radio-checked.png new file mode 100644 index 0000000..30e7dcd Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/menu-radio-checked.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/menu-radio-mixed-disabled.png b/Cutefish-dark/gtk-2.0/assets/menu-radio-mixed-disabled.png new file mode 100644 index 0000000..3a88eca Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/menu-radio-mixed-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/menu-radio-mixed.png b/Cutefish-dark/gtk-2.0/assets/menu-radio-mixed.png new file mode 100644 index 0000000..8b3d44f Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/menu-radio-mixed.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/menu-radio-unchecked-disabled.png b/Cutefish-dark/gtk-2.0/assets/menu-radio-unchecked-disabled.png new file mode 100644 index 0000000..4b8fbb5 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/menu-radio-unchecked-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/menu-radio-unchecked.png b/Cutefish-dark/gtk-2.0/assets/menu-radio-unchecked.png new file mode 100644 index 0000000..5317874 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/menu-radio-unchecked.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-down-alt-disabled.png b/Cutefish-dark/gtk-2.0/assets/pan-down-alt-disabled.png new file mode 100644 index 0000000..11a6985 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-down-alt-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-down-alt.png b/Cutefish-dark/gtk-2.0/assets/pan-down-alt.png new file mode 100644 index 0000000..974686c Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-down-alt.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-down-disabled.png b/Cutefish-dark/gtk-2.0/assets/pan-down-disabled.png new file mode 100644 index 0000000..8aa6331 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-down-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-down.png b/Cutefish-dark/gtk-2.0/assets/pan-down.png new file mode 100644 index 0000000..2f28e41 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-down.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-left-alt-disabled.png b/Cutefish-dark/gtk-2.0/assets/pan-left-alt-disabled.png new file mode 100644 index 0000000..44e26b6 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-left-alt-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-left-alt.png b/Cutefish-dark/gtk-2.0/assets/pan-left-alt.png new file mode 100644 index 0000000..529b5e4 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-left-alt.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-left-disabled.png b/Cutefish-dark/gtk-2.0/assets/pan-left-disabled.png new file mode 100644 index 0000000..ff7c852 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-left-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-left-semi.png b/Cutefish-dark/gtk-2.0/assets/pan-left-semi.png new file mode 100644 index 0000000..955e801 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-left-semi.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-left.png b/Cutefish-dark/gtk-2.0/assets/pan-left.png new file mode 100644 index 0000000..c9cb53a Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-left.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-right-alt-disabled.png b/Cutefish-dark/gtk-2.0/assets/pan-right-alt-disabled.png new file mode 100644 index 0000000..42e5877 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-right-alt-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-right-alt.png b/Cutefish-dark/gtk-2.0/assets/pan-right-alt.png new file mode 100644 index 0000000..d740506 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-right-alt.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-right-disabled.png b/Cutefish-dark/gtk-2.0/assets/pan-right-disabled.png new file mode 100644 index 0000000..e8e14e8 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-right-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-right-semi.png b/Cutefish-dark/gtk-2.0/assets/pan-right-semi.png new file mode 100644 index 0000000..d7d5af0 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-right-semi.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-right.png b/Cutefish-dark/gtk-2.0/assets/pan-right.png new file mode 100644 index 0000000..6cf201d Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-right.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-up-alt-disabled.png b/Cutefish-dark/gtk-2.0/assets/pan-up-alt-disabled.png new file mode 100644 index 0000000..56a417c Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-up-alt-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-up-alt.png b/Cutefish-dark/gtk-2.0/assets/pan-up-alt.png new file mode 100644 index 0000000..5df7be8 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-up-alt.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-up-disabled.png b/Cutefish-dark/gtk-2.0/assets/pan-up-disabled.png new file mode 100644 index 0000000..d3ae511 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-up-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/pan-up.png b/Cutefish-dark/gtk-2.0/assets/pan-up.png new file mode 100644 index 0000000..a99f7cf Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/pan-up.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/progressbar-progress.png b/Cutefish-dark/gtk-2.0/assets/progressbar-progress.png new file mode 100644 index 0000000..5eb34a6 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/progressbar-progress.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/progressbar-trough.png b/Cutefish-dark/gtk-2.0/assets/progressbar-trough.png new file mode 100644 index 0000000..aba61d5 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/progressbar-trough.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/radio-checked-active.png b/Cutefish-dark/gtk-2.0/assets/radio-checked-active.png new file mode 100644 index 0000000..1f4c0e3 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/radio-checked-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/radio-checked-disabled.png b/Cutefish-dark/gtk-2.0/assets/radio-checked-disabled.png new file mode 100644 index 0000000..8fb3b9b Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/radio-checked-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/radio-checked-hover.png b/Cutefish-dark/gtk-2.0/assets/radio-checked-hover.png new file mode 100644 index 0000000..6ed032c Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/radio-checked-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/radio-checked.png b/Cutefish-dark/gtk-2.0/assets/radio-checked.png new file mode 100644 index 0000000..5e0e0ac Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/radio-checked.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/radio-mixed-active.png b/Cutefish-dark/gtk-2.0/assets/radio-mixed-active.png new file mode 100644 index 0000000..3222f21 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/radio-mixed-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/radio-mixed-disabled.png b/Cutefish-dark/gtk-2.0/assets/radio-mixed-disabled.png new file mode 100644 index 0000000..45d5349 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/radio-mixed-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/radio-mixed-hover.png b/Cutefish-dark/gtk-2.0/assets/radio-mixed-hover.png new file mode 100644 index 0000000..ae1b5dc Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/radio-mixed-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/radio-mixed.png b/Cutefish-dark/gtk-2.0/assets/radio-mixed.png new file mode 100644 index 0000000..49889df Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/radio-mixed.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/radio-unchecked-active.png b/Cutefish-dark/gtk-2.0/assets/radio-unchecked-active.png new file mode 100644 index 0000000..f6948e7 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/radio-unchecked-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/radio-unchecked-disabled.png b/Cutefish-dark/gtk-2.0/assets/radio-unchecked-disabled.png new file mode 100644 index 0000000..73e42bd Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/radio-unchecked-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/radio-unchecked-hover.png b/Cutefish-dark/gtk-2.0/assets/radio-unchecked-hover.png new file mode 100644 index 0000000..191738b Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/radio-unchecked-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/radio-unchecked.png b/Cutefish-dark/gtk-2.0/assets/radio-unchecked.png new file mode 100644 index 0000000..e310c02 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/radio-unchecked.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scale-horz-trough-active.png b/Cutefish-dark/gtk-2.0/assets/scale-horz-trough-active.png new file mode 100644 index 0000000..0306017 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scale-horz-trough-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scale-horz-trough-disabled.png b/Cutefish-dark/gtk-2.0/assets/scale-horz-trough-disabled.png new file mode 100644 index 0000000..10cf142 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scale-horz-trough-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scale-horz-trough.png b/Cutefish-dark/gtk-2.0/assets/scale-horz-trough.png new file mode 100644 index 0000000..8a0adf1 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scale-horz-trough.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scale-slider-active.png b/Cutefish-dark/gtk-2.0/assets/scale-slider-active.png new file mode 100644 index 0000000..8d5a7fd Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scale-slider-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scale-slider-disabled.png b/Cutefish-dark/gtk-2.0/assets/scale-slider-disabled.png new file mode 100644 index 0000000..eb1a1ae Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scale-slider-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scale-slider-hover.png b/Cutefish-dark/gtk-2.0/assets/scale-slider-hover.png new file mode 100644 index 0000000..f5984dc Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scale-slider-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scale-slider.png b/Cutefish-dark/gtk-2.0/assets/scale-slider.png new file mode 100644 index 0000000..e85d1db Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scale-slider.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scale-vert-trough-active.png b/Cutefish-dark/gtk-2.0/assets/scale-vert-trough-active.png new file mode 100644 index 0000000..32015f0 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scale-vert-trough-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scale-vert-trough-disabled.png b/Cutefish-dark/gtk-2.0/assets/scale-vert-trough-disabled.png new file mode 100644 index 0000000..7e38ad6 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scale-vert-trough-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scale-vert-trough.png b/Cutefish-dark/gtk-2.0/assets/scale-vert-trough.png new file mode 100644 index 0000000..6c6d336 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scale-vert-trough.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-slider-active.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-slider-active.png new file mode 100644 index 0000000..9b3802a Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-slider-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-slider-disabled.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-slider-disabled.png new file mode 100644 index 0000000..a0e78e2 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-slider-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-slider-hover.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-slider-hover.png new file mode 100644 index 0000000..c44bf53 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-slider-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-slider.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-slider.png new file mode 100644 index 0000000..7d45347 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-slider.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-trough.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-trough.png new file mode 100644 index 0000000..e5e9d5b Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-horz-trough.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-slider-active.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-slider-active.png new file mode 100644 index 0000000..86a7e94 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-slider-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-slider-disabled.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-slider-disabled.png new file mode 100644 index 0000000..e1bd86a Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-slider-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-slider-hover.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-slider-hover.png new file mode 100644 index 0000000..0eab6ab Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-slider-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-slider.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-slider.png new file mode 100644 index 0000000..bd8227a Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-slider.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-trough.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-trough.png new file mode 100644 index 0000000..5e35639 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-ltr-trough.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-slider-active.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-slider-active.png new file mode 100644 index 0000000..f219ede Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-slider-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-slider-disabled.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-slider-disabled.png new file mode 100644 index 0000000..e8cf326 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-slider-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-slider-hover.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-slider-hover.png new file mode 100644 index 0000000..fc02be4 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-slider-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-slider.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-slider.png new file mode 100644 index 0000000..8ab9c68 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-slider.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-trough.png b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-trough.png new file mode 100644 index 0000000..056290d Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/scrollbar-vert-rtl-trough.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-ltr-down-active.png b/Cutefish-dark/gtk-2.0/assets/spin-ltr-down-active.png new file mode 100644 index 0000000..2c31ad0 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-ltr-down-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-ltr-down-disabled.png b/Cutefish-dark/gtk-2.0/assets/spin-ltr-down-disabled.png new file mode 100644 index 0000000..19139fd Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-ltr-down-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-ltr-down-hover.png b/Cutefish-dark/gtk-2.0/assets/spin-ltr-down-hover.png new file mode 100644 index 0000000..64e8a4c Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-ltr-down-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-ltr-down.png b/Cutefish-dark/gtk-2.0/assets/spin-ltr-down.png new file mode 100644 index 0000000..020deb5 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-ltr-down.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-ltr-up-active.png b/Cutefish-dark/gtk-2.0/assets/spin-ltr-up-active.png new file mode 100644 index 0000000..5816ae3 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-ltr-up-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-ltr-up-disabled.png b/Cutefish-dark/gtk-2.0/assets/spin-ltr-up-disabled.png new file mode 100644 index 0000000..dcf55af Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-ltr-up-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-ltr-up-hover.png b/Cutefish-dark/gtk-2.0/assets/spin-ltr-up-hover.png new file mode 100644 index 0000000..4631e6f Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-ltr-up-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-ltr-up.png b/Cutefish-dark/gtk-2.0/assets/spin-ltr-up.png new file mode 100644 index 0000000..f9b8eb6 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-ltr-up.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-rtl-down-active.png b/Cutefish-dark/gtk-2.0/assets/spin-rtl-down-active.png new file mode 100644 index 0000000..7568d2f Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-rtl-down-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-rtl-down-disabled.png b/Cutefish-dark/gtk-2.0/assets/spin-rtl-down-disabled.png new file mode 100644 index 0000000..4c5e3b1 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-rtl-down-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-rtl-down-hover.png b/Cutefish-dark/gtk-2.0/assets/spin-rtl-down-hover.png new file mode 100644 index 0000000..af6410e Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-rtl-down-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-rtl-down.png b/Cutefish-dark/gtk-2.0/assets/spin-rtl-down.png new file mode 100644 index 0000000..7eae428 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-rtl-down.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-rtl-up-active.png b/Cutefish-dark/gtk-2.0/assets/spin-rtl-up-active.png new file mode 100644 index 0000000..36a64a0 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-rtl-up-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-rtl-up-disabled.png b/Cutefish-dark/gtk-2.0/assets/spin-rtl-up-disabled.png new file mode 100644 index 0000000..e229de4 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-rtl-up-disabled.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-rtl-up-hover.png b/Cutefish-dark/gtk-2.0/assets/spin-rtl-up-hover.png new file mode 100644 index 0000000..ed0c0ce Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-rtl-up-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/spin-rtl-up.png b/Cutefish-dark/gtk-2.0/assets/spin-rtl-up.png new file mode 100644 index 0000000..e3a59e8 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/spin-rtl-up.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/tab.png b/Cutefish-dark/gtk-2.0/assets/tab.png new file mode 100644 index 0000000..9cb811b Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/tab.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/treeview-ltr-button-active.png b/Cutefish-dark/gtk-2.0/assets/treeview-ltr-button-active.png new file mode 100644 index 0000000..45da44f Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/treeview-ltr-button-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/treeview-ltr-button-hover.png b/Cutefish-dark/gtk-2.0/assets/treeview-ltr-button-hover.png new file mode 100644 index 0000000..a240cb6 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/treeview-ltr-button-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/treeview-ltr-button.png b/Cutefish-dark/gtk-2.0/assets/treeview-ltr-button.png new file mode 100644 index 0000000..cc77fcc Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/treeview-ltr-button.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/treeview-rtl-button-active.png b/Cutefish-dark/gtk-2.0/assets/treeview-rtl-button-active.png new file mode 100644 index 0000000..a5a46b9 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/treeview-rtl-button-active.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/treeview-rtl-button-hover.png b/Cutefish-dark/gtk-2.0/assets/treeview-rtl-button-hover.png new file mode 100644 index 0000000..810a277 Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/treeview-rtl-button-hover.png differ diff --git a/Cutefish-dark/gtk-2.0/assets/treeview-rtl-button.png b/Cutefish-dark/gtk-2.0/assets/treeview-rtl-button.png new file mode 100644 index 0000000..cc77fcc Binary files /dev/null and b/Cutefish-dark/gtk-2.0/assets/treeview-rtl-button.png differ diff --git a/Cutefish-dark/gtk-2.0/gtkrc b/Cutefish-dark/gtk-2.0/gtkrc new file mode 100644 index 0000000..3b22561 --- /dev/null +++ b/Cutefish-dark/gtk-2.0/gtkrc @@ -0,0 +1,36 @@ +# Based on Bridge by ScionicSpectre and Adwaita by GNOME +# vim:set ts=2 sw=2 sts=2 ai et: +# +# This is the GTK 2 version of Materia. It's whole purpose is to look as the +# GTK 3 version as much as possible until GTK 2 dies completely. +# +# Note: comments for explaining styles are on the bottom of each file beside the +# widget matches. + +# Declare the colours used throughout the theme. +# There shouldn't be any fiddling with them in the theme files themselves in +# order to not mess up the dark theme. + +# Text/base +gtk-color-scheme = "text_color:#FFFFFF\nbase_color:#2C2C2C" +# Foreground/background +gtk-color-scheme = "fg_color:#FFFFFF\nbg_color:#212121" +# Selected foreground/background +gtk-color-scheme = "selected_fg_color:#FFFFFF\nselected_bg_color:#5b9bf8" +# Titlebar foreground/background +gtk-color-scheme = "titlebar_fg_color:#FFFFFF\ntitlebar_bg_color:#2C2C2C" +# Menus +gtk-color-scheme = "menu_color:#3C3C3C" +# Tooltips foreground/background +gtk-color-scheme = "tooltip_fg_color:#FFFFFF\ntooltip_bg_color:#616161" +# Links +gtk-color-scheme = "link_color:#8AB4F8\nvisited_link_color:#CE93D8" + +# Set GTK settings +gtk-auto-mnemonics = 1 +gtk-primary-button-warps-slider = 1 + +# And hand over the control to the theme files +include "main.rc" +include "apps.rc" +include "hacks.rc" diff --git a/Cutefish-dark/gtk-2.0/hacks.rc b/Cutefish-dark/gtk-2.0/hacks.rc new file mode 100644 index 0000000..c288da3 --- /dev/null +++ b/Cutefish-dark/gtk-2.0/hacks.rc @@ -0,0 +1,36 @@ +# vim:set ft=gtkrc ts=2 sw=2 sts=2 ai et: +# +# This file contains horrible hacks to make this theme work with some programs +# This is mostly due to the limitations of GTK 2 but sometimes its the fault of +# the programs themselves. Not going to point fingers. +# +# Either way, it's a WONTFIX for both, hence this horrible file. + +style "toplevel_hack" { + engine "adwaita" {} +} + +style "chrome_entry" { + base[NORMAL] = @base_color + base[INSENSITIVE] = @base_color +} + +style "vim_notebook" { + bg[NORMAL] = @base_color + bg[ACTIVE] = @bg_color +} + +# Vim puts an eventbox between the tab and the label and colours it, +# we need to handle that +widget "vim-main-window*GtkNotebook.GtkEventBox" style "vim_notebook" + +# (he)xchat input box +class "SexySpellEntry" style:highest "normal_entry" + +# Chromium uses base as the fill colour of its own entries +# This would be fine but GTK uses it to fill the surrounding space, so its set to bg +# That results in Chromium using it for the fill, so we need to handle that +widget_class "*Chrom*" style "chrome_entry" + +# Hack to be able to match widgets in LibreOffice +class "GtkWindow" style "toplevel_hack" diff --git a/Cutefish-dark/gtk-2.0/main.rc b/Cutefish-dark/gtk-2.0/main.rc new file mode 100644 index 0000000..62edf4d --- /dev/null +++ b/Cutefish-dark/gtk-2.0/main.rc @@ -0,0 +1,2705 @@ +# vim:set ft=gtkrc ts=2 sw=2 sts=2 ai et: +# +# This is the main theme file, handling all the default widgets and theme +# properties. Since GTK 2 is old, we need to overcome some of its limitations, +# which is also mostly done in this file. Sadly not all of them can be overcome +# so there will always be a visible difference between the GTK 2 and 3 theme. + +style "default" { + xthickness = 1 + ythickness = 1 + + #################### + # Style Properties # + #################### + + GtkWidget::focus-padding = 0 + GtkWidget::focus-line-width = 2 + GtkWidget::focus-line-pattern = "\2\1" + + GtkToolbar::space-size = 5 # 1 + 2*2 (separator + margins) + GtkToolbar::internal-padding = 2 + GtkToolButton::icon-spacing = 4 + + GtkWidget::tooltip-radius = 4 + GtkWidget::tooltip-alpha = 230 + GtkWidget::new-tooltip-style = 1 #for compatibility + + GtkWidget::link-color = @link_color + GtkWidget::visited-link-color = @visited_link_color + GnomeHRef::link_color = @link_color + GtkHTML::link-color = @link_color + GtkHTML::vlink-color = @visited_link_color + GtkIMHtml::hyperlink-color = @link_color + GtkIMHtml::hyperlink-visited-color = @visited_link_color + + GtkSeparatorMenuItem::horizontal-padding = 0 + GtkSeparatorMenuItem::wide-separators = 1 + GtkSeparatorMenuItem::separator-height = 3 + + GtkButton::child-displacement-y = 0 + + GtkButton::default-border = {0, 0, 0, 0} + GtkButton::default-outside-border = {0, 0, 0, 0} + GtkButton::inner-border = {4, 4, 4, 4} + + GtkEntry::state-hint = 1 + GtkEntry::inner-border = {4, 4, 4, 4} + + GtkPaned::handle-size = 8 + GtkHPaned::handle-size = 8 + GtkVPaned::handle-size = 8 + + GtkScrollbar::trough-border = 0 + GtkRange::trough-border = 0 + GtkRange::slider-width = 17 + GtkRange::stepper-size = 0 + GtkRange::activate-slider = 1 + + GtkScrollbar::activate-slider = 1 + GtkScrollbar::stepper-size = 0 + GtkScrollbar::has-backward-stepper = 0 + GtkScrollbar::has-forward-stepper = 0 + GtkScrollbar::min-slider-length = 32 # 24 + 2*4 (margins) + GtkScrolledWindow::scrollbar-spacing = 0 + GtkScrolledWindow::scrollbars-within-bevel = 1 + + GtkScale::slider_length = 24 + GtkScale::slider_width = 24 + GtkScale::trough-side-details = 1 + + GtkProgressBar::min-horizontal-bar-height = 4 + GtkProgressBar::min-vertical-bar-width = 4 + GtkProgressBar::xspacing = 4 + GtkProgressBar::yspacing = 4 + + GtkStatusbar::shadow_type = GTK_SHADOW_NONE + GtkSpinButton::shadow_type = GTK_SHADOW_NONE + GtkMenuBar::shadow-type = GTK_SHADOW_NONE + GtkToolbar::shadow-type = GTK_SHADOW_NONE + # TODO: find out what this comment means: + # ( every window is misaligned for the sake of menus ): + GtkMenuBar::internal-padding = 0 + GtkMenu::horizontal-padding = 0 + GtkMenu::vertical-padding = 4 + GtkMenu::double-arrows = 0 + GtkMenuItem::arrow-scaling = 1 + GtkMenuItem::toggle-spacing = 12 + + GtkCheckButton::indicator-size = 24 + GtkCheckButton::indicator_spacing = 2 + GtkOptionMenu::indicator_spacing = {8, 8, 4, 4} + + GtkTreeView::expander-size = 16 + GtkTreeView::vertical-separator = 0 + GtkTreeView::horizontal-separator = 4 + GtkTreeView::allow-rules = 0 + # Set this because some apps read it + GtkTreeView::odd-row-color = @base_color + GtkTreeView::even-row-color = @base_color + + GtkExpander::expander-size = 16 + + GtkNotebook::tab-overlap = 0 + + ########## + # Colors # + ########## + + bg[NORMAL] = @bg_color + bg[PRELIGHT] = @bg_color + bg[SELECTED] = mix (0.24, @selected_bg_color, @bg_color) + bg[INSENSITIVE] = @bg_color + bg[ACTIVE] = @bg_color + + fg[NORMAL] = @fg_color + fg[PRELIGHT] = @fg_color + fg[SELECTED] = @fg_color + fg[INSENSITIVE] = mix (0.5, @fg_color, @bg_color) + fg[ACTIVE] = @fg_color + + text[NORMAL] = @text_color + text[PRELIGHT] = @text_color + text[SELECTED] = @text_color + text[INSENSITIVE] = mix (0.5, @text_color, @base_color) + text[ACTIVE] = @text_color + + base[NORMAL] = @base_color + base[PRELIGHT] = mix (0.08, @text_color, @base_color) + base[SELECTED] = mix (0.24, @selected_bg_color, @base_color) + base[INSENSITIVE] = mix (0.5, @base_color, @bg_color) + base[ACTIVE] = mix (0.24, @selected_bg_color, @base_color) + + # For succinctness, all reasonable pixmap options remain here + + # Draw frame around menu in a non-compositied environment + # This needs to go before pixmap because we need to override some stuff + engine "adwaita" {} + + engine "pixmap" { + + ################# + # Check Buttons # + ################# + + image { + function = CHECK + state = NORMAL + shadow = OUT + overlay_file = "assets/checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = OUT + overlay_file = "assets/checkbox-unchecked-hover.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = OUT + overlay_file = "assets/checkbox-unchecked-active.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = SELECTED + shadow = OUT + overlay_file = "assets/checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = OUT + overlay_file = "assets/checkbox-unchecked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = NORMAL + shadow = IN + overlay_file = "assets/checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = IN + overlay_file = "assets/checkbox-checked-hover.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = IN + overlay_file = "assets/checkbox-checked-active.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = SELECTED + shadow = IN + overlay_file = "assets/checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = IN + overlay_file = "assets/checkbox-checked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = NORMAL + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed-hover.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed-active.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = SELECTED + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed-disabled.png" + overlay_stretch = FALSE + } + + ################# + # Radio Buttons # + ################# + + image { + function = OPTION + state = NORMAL + shadow = OUT + overlay_file = "assets/radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = OUT + overlay_file = "assets/radio-unchecked-hover.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = OUT + overlay_file = "assets/radio-unchecked-active.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = SELECTED + shadow = OUT + overlay_file = "assets/radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = OUT + overlay_file = "assets/radio-unchecked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = NORMAL + shadow = IN + overlay_file = "assets/radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = IN + overlay_file = "assets/radio-checked-hover.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = IN + overlay_file = "assets/radio-checked-active.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = SELECTED + shadow = IN + overlay_file = "assets/radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = IN + overlay_file = "assets/radio-checked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = NORMAL + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed-hover.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed-active.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = SELECTED + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed-disabled.png" + overlay_stretch = FALSE + } + + ########## + # Arrows # + ########## + + # Overrides + + # Disable arrows in spinbuttons + image { + function = ARROW + detail = "spinbutton" + } + + # Disable arrows for qt in scrollbars + + image { + function = ARROW + detail = "vscrollbar" + } + + image { + function = ARROW + detail = "hscrollbar" + } + + # Menu arrows + + image { + function = ARROW + state = NORMAL + detail = "menuitem" + overlay_file = "assets/pan-left.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = PRELIGHT + detail = "menuitem" + overlay_file = "assets/pan-left.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = INSENSITIVE + detail = "menuitem" + overlay_file = "assets/pan-left-disabled.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = NORMAL + detail = "menuitem" + overlay_file = "assets/pan-right.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = PRELIGHT + detail = "menuitem" + overlay_file = "assets/pan-right.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = INSENSITIVE + detail = "menuitem" + overlay_file = "assets/pan-right-disabled.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = INSENSITIVE + detail = "menu_scroll_arrow_up" + overlay_file = "assets/pan-up-disabled.png" + overlay_stretch = FALSE + } + + image { + function = ARROW + detail = "menu_scroll_arrow_up" + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + } + + image { + function = ARROW + state = INSENSITIVE + detail = "menu_scroll_arrow_down" + overlay_file = "assets/pan-down-disabled.png" + overlay_stretch = FALSE + } + + image { + function = ARROW + detail = "menu_scroll_arrow_down" + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + # Regular arrows + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = INSENSITIVE + overlay_file = "assets/pan-up-alt-disabled.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = INSENSITIVE + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-left-alt.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-left.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-left.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = INSENSITIVE + overlay_file = "assets/pan-left-alt-disabled.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-right-alt.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-right.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-right.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = INSENSITIVE + overlay_file = "assets/pan-right-alt-disabled.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + ###################### + # Option Menu Arrows # + ###################### + + image { + function = TAB + state = NORMAL + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + } + + image { + function = TAB + state = PRELIGHT + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + image { + function = TAB + state = ACTIVE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + image { + function = TAB + state = INSENSITIVE + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + } + + ######### + # Lines # + ######### + + image { + function = VLINE + file = "assets/border.png" + border = {1, 0, 0, 0} + } + + image { + function = HLINE + file = "assets/border.png" + border = {0, 0, 1, 0} + } + + ######### + # Focus # + ######### + + image { + function = FOCUS + file = "assets/focus.png" + border = {5, 5, 5, 5} # Super strange, {4, 4, 4, 4} does not work properly... + stretch = TRUE + } + + ########### + # Handles # + ########### + + image { + function = HANDLE + detail = "handlebox" + overlay_file = "assets/handle-vert.png" + overlay_stretch = FALSE + } + + image { + function = HANDLE + state = NORMAL + overlay_file = "assets/handle-horz.png" + overlay_stretch = FALSE + orientation = HORIZONTAL + } + + image { + function = HANDLE + state = PRELIGHT + overlay_file = "assets/handle-horz-hover.png" + overlay_stretch = FALSE + orientation = HORIZONTAL + } + + image { + function = HANDLE + state = ACTIVE + overlay_file = "assets/handle-horz-active.png" + overlay_stretch = FALSE + orientation = HORIZONTAL + } + + image { + function = HANDLE + state = NORMAL + overlay_file = "assets/handle-vert.png" + overlay_stretch = FALSE + orientation = VERTICAL + } + + image { + function = HANDLE + state = PRELIGHT + overlay_file = "assets/handle-vert-hover.png" + overlay_stretch = FALSE + orientation = VERTICAL + } + + image { + function = HANDLE + state = ACTIVE + overlay_file = "assets/handle-vert-active.png" + overlay_stretch = FALSE + orientation = VERTICAL + } + + image { + function = RESIZE_GRIP + } + + ############# + # Expanders # + ############# + + image { + function = EXPANDER + expander_style = EXPANDED + state = NORMAL + file = "assets/pan-down-alt.png" + } + + image { + function = EXPANDER + expander_style = EXPANDED + state = PRELIGHT + file = "assets/pan-down.png" + } + + image { + function = EXPANDER + expander_style = EXPANDED + state = ACTIVE + file = "assets/pan-down.png" + } + + image { + function = EXPANDER + expander_style = EXPANDED + state = INSENSITIVE + file = "assets/pan-down-alt-disabled.png" + } + + # LTR + + image { + function = EXPANDER + expander_style = COLLAPSED + state = NORMAL + file = "assets/pan-right-alt.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = PRELIGHT + file = "assets/pan-right.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = ACTIVE + file = "assets/pan-right.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = INSENSITIVE + file = "assets/pan-right-alt-disabled.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = SEMI_COLLAPSED + file = "assets/pan-right-semi.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = SEMI_EXPANDED + file = "assets/pan-right-semi.png" + direction = LTR + } + + # RTL + + image { + function = EXPANDER + expander_style = COLLAPSED + state = NORMAL + file = "assets/pan-left-alt.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = PRELIGHT + file = "assets/pan-left.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = ACTIVE + file = "assets/pan-left.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = INSENSITIVE + file = "assets/pan-left-alt-disabled.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = SEMI_COLLAPSED + file = "assets/pan-left-semi.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = SEMI_EXPANDED + file = "assets/pan-left-semi.png" + direction = RTL + } + + ############# + # Notebooks # + ############# + + # Left + + image { + function = EXTENSION + state = NORMAL + file = "assets/tab.png" + border = {0, 1, 0, 0} + stretch = TRUE + gap_side = RIGHT + } + + image { + function = EXTENSION + gap_side = RIGHT + } + + # Right + + image { + function = EXTENSION + state = NORMAL + file = "assets/tab.png" + border = {1, 0, 0, 0} + stretch = TRUE + gap_side = LEFT + } + + image { + function = EXTENSION + gap_side = LEFT + } + + # Up + + image { + function = EXTENSION + state = NORMAL + file = "assets/tab.png" + border = {0, 0, 0, 1} + stretch = TRUE + gap_side = BOTTOM + } + + image { + function = EXTENSION + gap_side = BOTTOM + } + + # Down + + image { + function = EXTENSION + state = NORMAL + file = "assets/tab.png" + border = {0, 0, 1, 0} + stretch = TRUE + gap_side = TOP + } + + image { + function = EXTENSION + gap_side = TOP + } + + # Inner frame + + image { + function = BOX_GAP + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_file = "assets/tab.png" + gap_border = {1, 0, 0, 0} + gap_side = LEFT + } + + image { + function = BOX_GAP + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_file = "assets/tab.png" + gap_border = {0, 1, 0, 0} + gap_side = RIGHT + } + + image { + function = BOX_GAP + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_file = "assets/tab.png" + gap_border = {0, 0, 1, 0} + gap_side = TOP + } + + image { + function = BOX_GAP + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_file = "assets/tab.png" + gap_border = {0, 0, 0, 1} + gap_side = BOTTOM + } + + # Standalone frame + image { + function = BOX + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + } + + ############## + # Scrollbars # + ############## + + image { + function = BOX + detail = "trough" + file = "assets/scrollbar-horz-trough.png" + border = {0, 0, 1, 0} + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "trough" + file = "assets/scrollbar-vert-ltr-trough.png" + border = {1, 0, 0, 0} + orientation = VERTICAL + direction = LTR + } + + image { + function = BOX + detail = "trough" + file = "assets/scrollbar-vert-rtl-trough.png" + border = {0, 1, 0, 0} + orientation = VERTICAL + direction = RTL + } + + # Horizontal sliders + + image { + function = SLIDER + state = NORMAL + detail = "slider" + file = "assets/scrollbar-horz-slider.png" + border = {8, 8, 9, 8 } + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = SLIDER + state = PRELIGHT + detail = "slider" + file = "assets/scrollbar-horz-slider-hover.png" + border = {8, 8, 9, 8 } + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = SLIDER + state = ACTIVE + detail = "slider" + file = "assets/scrollbar-horz-slider-active.png" + border = {8, 8, 9, 8 } + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "slider" + file = "assets/scrollbar-horz-slider-disabled.png" + border = {8, 8, 9, 8 } + stretch = TRUE + orientation = HORIZONTAL + } + + # Vertical sliders + + image { + function = SLIDER + state = NORMAL + detail = "slider" + file = "assets/scrollbar-vert-ltr-slider.png" + border = {9, 8, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = LTR + } + + image { + function = SLIDER + state = PRELIGHT + detail = "slider" + file = "assets/scrollbar-vert-ltr-slider-hover.png" + border = {9, 8, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = LTR + } + + image { + function = SLIDER + state = ACTIVE + detail = "slider" + file = "assets/scrollbar-vert-ltr-slider-active.png" + border = {9, 8, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = LTR + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "slider" + file = "assets/scrollbar-vert-ltr-slider-disabled.png" + border = {9, 8, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = LTR + } + + # RTL + + image { + function = SLIDER + state = NORMAL + detail = "slider" + file = "assets/scrollbar-vert-rtl-slider.png" + border = {8, 9, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = RTL + } + + image { + function = SLIDER + state = PRELIGHT + detail = "slider" + file = "assets/scrollbar-vert-rtl-slider-hover.png" + border = {8, 9, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = RTL + } + + image { + function = SLIDER + state = ACTIVE + detail = "slider" + file = "assets/scrollbar-vert-rtl-slider-active.png" + border = {8, 9, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = RTL + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "slider" + file = "assets/scrollbar-vert-rtl-slider-disabled.png" + border = {8, 9, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = RTL + } + + ########## + # Scales # + ########## + + # Troughs, overrided later on. We set them here too because some widgets + # don't specify their orientation. + + image { + function = BOX + detail = "trough-upper" + file = "assets/scale-horz-trough.png" + border = {6, 6, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + state = INSENSITIVE + detail = "trough-upper" + file = "assets/scale-horz-trough-disabled.png" + border = {6, 6, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "trough-lower" + file = "assets/scale-horz-trough-active.png" + border = {6, 6, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + state = INSENSITIVE + detail = "trough-lower" + file = "assets/scale-horz-trough-disabled.png" + border = {6, 6, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "trough-upper" + file = "assets/scale-vert-trough.png" + border = {0, 0, 6, 6} + stretch = TRUE + orientation = VERTICAL + } + + image { + function = BOX + state = INSENSITIVE + detail = "trough-upper" + file = "assets/scale-vert-trough-disabled.png" + border = {0, 0, 6, 6} + stretch = TRUE + orientation = VERTICAL + } + + image { + function = BOX + detail = "trough-lower" + file = "assets/scale-vert-trough-active.png" + border = {0, 0, 6, 6} + stretch = TRUE + orientation = VERTICAL + } + + image { + function = BOX + state = INSENSITIVE + detail = "trough-lower" + file = "assets/scale-vert-trough-disabled.png" + border = {0, 0, 6, 6} + stretch = TRUE + orientation = VERTICAL + } + + # Sliders + + image { + function = SLIDER + state = NORMAL + detail = "hscale" + file = "assets/scale-slider.png" + } + + image { + function = SLIDER + state = PRELIGHT + detail = "hscale" + file = "assets/scale-slider-hover.png" + } + + image { + function = SLIDER + state = ACTIVE + detail = "hscale" + file = "assets/scale-slider-active.png" + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "hscale" + file = "assets/scale-slider-disabled.png" + } + + image { + function = SLIDER + state = NORMAL + detail = "vscale" + file = "assets/scale-slider.png" + } + + image { + function = SLIDER + state = PRELIGHT + detail = "vscale" + file = "assets/scale-slider-hover.png" + } + + image { + function = SLIDER + state = ACTIVE + detail = "vscale" + file = "assets/scale-slider-active.png" + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "vscale" + file = "assets/scale-slider-disabled.png" + } + + ########### + # Menubar # + ########### + + # image { + # function = BOX + # detail = "menubar" + # file = "assets/border.png" + # border = {0, 0, 0, 1} + # } + + ######### + # Menus # + ######### + + image { + function = BOX + state = PRELIGHT + detail = "menu_scroll_arrow_up" + file = "assets/border.png" + } + + image { + function = BOX + detail = "menu_scroll_arrow_up" + file = "assets/border.png" + border = {0, 0, 0, 1} + } + + image { + function = BOX + state = PRELIGHT + detail = "menu_scroll_arrow_down" + file = "assets/border.png" + } + + image { + function = BOX + detail = "menu_scroll_arrow_down" + file = "assets/border.png" + border = {0, 0, 1, 0} + } + + ########### + # Entries # + ########### + + image { + function = SHADOW + state = ACTIVE + detail = "entry" + file = "assets/entry-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = SHADOW + state = INSENSITIVE + detail = "entry" + file = "assets/entry-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = SHADOW + detail = "entry" + file = "assets/entry.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = FLAT_BOX + state = ACTIVE + detail = "entry_bg" + file = "assets/entry-background.png" + } + + image { + function = FLAT_BOX + state = INSENSITIVE + detail = "entry_bg" + file = "assets/entry-background-disabled.png" + } + + image { + function = FLAT_BOX + detail = "entry_bg" + file = "assets/entry-background.png" + } + + ######### + # Spins # + ######### + + # Spin-Up LTR + + image { + function = BOX + state = NORMAL + detail = "spinbutton_up" + file = "assets/spin-ltr-up.png" + border = {0, 8, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_up" + file = "assets/spin-ltr-up-hover.png" + border = {0, 8, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_up" + file = "assets/spin-ltr-up-active.png" + border = {0, 8, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_up" + file = "assets/spin-ltr-up-disabled.png" + border = {0, 8, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up-alt-disabled.png" + overlay_stretch = FALSE + direction = LTR + } + + # Spin-Up RTL + + image { + function = BOX + state = NORMAL + detail = "spinbutton_up" + file = "assets/spin-rtl-up.png" + border = {8, 0, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_up" + file = "assets/spin-rtl-up-hover.png" + border = {8, 0, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_up" + file = "assets/spin-rtl-up-hover.png" + border = {8, 0, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_up" + file = "assets/spin-rtl-up-disabled.png" + border = {8, 0, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up-alt-disabled.png" + overlay_stretch = FALSE + direction = RTL + } + + # Spin-Down LTR + + image { + function = BOX + state = NORMAL + detail = "spinbutton_down" + file = "assets/spin-ltr-down.png" + border = {0, 8, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_down" + file = "assets/spin-ltr-down-hover.png" + border = {0, 8, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_down" + file = "assets/spin-ltr-down-active.png" + border = {0, 8, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_down" + file = "assets/spin-ltr-down-disabled.png" + border = {0, 8, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + direction = LTR + } + + # Spin-Down RTL + + image { + function = BOX + state = NORMAL + detail = "spinbutton_down" + file = "assets/spin-rtl-down.png" + border = {8, 0, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_down" + file = "assets/spin-rtl-down-hover.png" + border = {8, 0, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_down" + file = "assets/spin-rtl-down-active.png" + border = {8, 0, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_down" + file = "assets/spin-rtl-down-disabled.png" + border = {8, 0, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + direction = RTL + } + + ############## + # Scrollbars # + ############## + + image { + function = BOX + detail = "bar" + file = "assets/progressbar-progress.png" + stretch = TRUE + border = {0, 0, 0, 0} + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "bar" + file = "assets/progressbar-progress.png" + stretch = TRUE + border = {0, 0, 0, 0} + orientation = VERTICAL + } + + ############# + # Treeviews # + ############# + + # Disable active the column highlight + # We need to match specific cells or we break stuff + # Looking at you deadbeef + + image { + function = FLAT_BOX + detail = "cell_even_sorted" + state = NORMAL + } + + image { + function = FLAT_BOX + detail = "cell_odd_sorted" + state = NORMAL + } + + # Disable all the other shadows + # This prevents the Raleigh effect + image { + function = SHADOW + } + } +} + +style "menubar" { + bg[NORMAL] = @titlebar_bg_color + fg[NORMAL] = mix(0.7, @titlebar_fg_color, @titlebar_bg_color) + fg[PRELIGHT] = @titlebar_fg_color + fg[INSENSITIVE] = mix(0.3, @titlebar_fg_color, @titlebar_bg_color) + # Needed to fix Firefox's menubar text + bg[SELECTED] = mix(0.12, @titlebar_fg_color, @titlebar_bg_color) + fg[SELECTED] = @titlebar_fg_color +} + +style "menubar_item" { + xthickness = 3 + ythickness = 4 + + fg[NORMAL] = mix(0.7, @titlebar_fg_color, @titlebar_bg_color) + bg[PRELIGHT] = mix(0.12, @titlebar_fg_color, @titlebar_bg_color) + fg[PRELIGHT] = @titlebar_fg_color + fg[INSENSITIVE] = mix(0.3, @titlebar_fg_color, @titlebar_bg_color) +} + +style "menu" { + xthickness = 0 + ythickness = 0 + + bg[NORMAL] = @menu_color + bg[INSENSITIVE] = @menu_color + bg[PRELIGHT] = @menu_color + bg[SELECTED] = mix(0.08, @fg_color, @menu_color) +} + +style "menu_item" { + xthickness = 4 + ythickness = 4 + + bg[PRELIGHT] = mix(0.08, @fg_color, @menu_color) + fg[PRELIGHT] = @fg_color + # Chromium uses this setting + bg[SELECTED] = mix(0.08, @fg_color, @menu_color) + text[SELECTED] = @fg_color + # Some widgets use text, we need to handle that + text[NORMAL] = @fg_color + text[PRELIGHT] = @fg_color + + # Unfortunately we can't tell regular and menu checks/radios apart + # Without the heirarchy + engine "pixmap" { + + ################# + # Check Buttons # + ################# + + image { + function = CHECK + state = NORMAL + shadow = OUT + overlay_file = "assets/menu-checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = OUT + overlay_file = "assets/menu-checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = OUT + overlay_file = "assets/menu-checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = OUT + overlay_file = "assets/menu-checkbox-unchecked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = NORMAL + shadow = IN + overlay_file = "assets/menu-checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = IN + overlay_file = "assets/menu-checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = IN + overlay_file = "assets/menu-checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = IN + overlay_file = "assets/menu-checkbox-checked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = NORMAL + shadow = ETCHED_IN + overlay_file = "assets/menu-checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = ETCHED_IN + overlay_file = "assets/menu-checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = ETCHED_IN + overlay_file = "assets/menu-checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = ETCHED_IN + overlay_file = "assets/menu-checkbox-mixed-disabled.png" + overlay_stretch = FALSE + } + + ################# + # Radio Buttons # + ################# + + image { + function = OPTION + state = NORMAL + shadow = OUT + overlay_file = "assets/menu-radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = OUT + overlay_file = "assets/menu-radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = OUT + overlay_file = "assets/menu-radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = OUT + overlay_file = "assets/menu-radio-unchecked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = NORMAL + shadow = IN + overlay_file = "assets/menu-radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = IN + overlay_file = "assets/menu-radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = IN + overlay_file = "assets/menu-radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = IN + overlay_file = "assets/menu-radio-checked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = NORMAL + shadow = ETCHED_IN + overlay_file = "assets/menu-radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = ETCHED_IN + overlay_file = "assets/menu-radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = ETCHED_IN + overlay_file = "assets/menu-radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = ETCHED_IN + overlay_file = "assets/menu-radio-mixed-disabled.png" + overlay_stretch = FALSE + } + } +} + +style "separator_menu_item" { + xthickness = 0 + ythickness = 2 + + engine "pixmap" { + image { + function = BOX + file = "assets/border.png" + border = {0, 0, 0, 1} + } + } +} + +style "button_label" { + # fg[NORMAL] = mix(0.7, @fg_color, @bg_color) + # fg[INSENSITIVE] = mix(0.3, @fg_color, @bg_color) + + font_name = "Medium" +} + +style "normal_button_label" { + # fg[NORMAL] = @fg_color + # fg[INSENSITIVE] = mix(0.5, @fg_color, @bg_color) + + font_name = "Regular" +} + +style "button" { + xthickness = 6 + ythickness = 6 + + # For the sake of sanity style buttons this way + engine "pixmap" { + + ########### + # Buttons # + ########### + + image { + function = BOX + state = NORMAL + file = "assets/button.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = PRELIGHT + shadow = OUT + file = "assets/button-hover.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + # Don't add hover effect on pressed buttons + image { + function = BOX + state = PRELIGHT + shadow = IN + file = "assets/button-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = ACTIVE + file = "assets/button-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = INSENSITIVE + file = "assets/button-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + } +} + +style "link_button" { + # Disable the button effect, leave just the link + engine "pixmap" { + image { + function = BOX + } + } +} + +style "entry" { + base[NORMAL] = @bg_color + base[SELECTED] = mix (0.24, @selected_bg_color, @bg_color) + base[INSENSITIVE] = @bg_color + base[ACTIVE] = mix (0.24, @selected_bg_color, @bg_color) + + # We set this same as the border of the border of the entry + # This way there's no overlap + xthickness = 6 + ythickness = 6 +} + +style "combobox" { + xthickness = 6 + ythickness = 6 + + # This affects only the button beside an entry + GtkButton::inner-border = {0, 0, 0, 0} + + # For the sake of sanity style buttons this way + engine "pixmap" { + + ########### + # Buttons # + ########### + + image { + function = BOX + state = NORMAL + file = "assets/entry.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = PRELIGHT + file = "assets/entry-hover.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = ACTIVE + file = "assets/entry-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = INSENSITIVE + file = "assets/entry-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + } +} + +style "combobox_cellview" { + # text[NORMAL] = mix(0.7, @fg_color, @bg_color) + # text[INSENSITIVE] = mix(0.3, @fg_color, @bg_color) +} + +style "combobox_entry" { + # Since one side of the button is missing, we need to shift the arrow a little to the right + GtkButton::inner-border = {0, 2, 0, 0} + + base[NORMAL] = @base_color + base[ACTIVE] = @base_color + + engine "pixmap" { + + ############# + # LTR entry # + ############# + + image { + function = SHADOW + state = NORMAL + detail = "entry" + file = "assets/combo-left-entry.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = SHADOW + state = ACTIVE + detail = "entry" + file = "assets/combo-left-entry-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = SHADOW + state = INSENSITIVE + detail = "entry" + file = "assets/combo-left-entry-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + ############# + # RTL entry # + ############# + + image { + function = SHADOW + state = NORMAL + detail = "entry" + file = "assets/combo-right-entry.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = SHADOW + state = ACTIVE + detail = "entry" + file = "assets/combo-right-entry-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = SHADOW + state = INSENSITIVE + detail = "entry" + file = "assets/combo-right-entry-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = RTL + } + + ############## + # LTR button # + ############## + + image { + function = BOX + state = NORMAL + detail = "button" + file = "assets/combo-right-entry.png" + border = {0, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = PRELIGHT + detail = "button" + file = "assets/combo-right-entry-hover.png" + border = {0, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = ACTIVE + detail = "button" + file = "assets/combo-right-entry-active.png" + border = {0, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = INSENSITIVE + detail = "button" + file = "assets/combo-right-entry-disabled.png" + border = {0, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + ############## + # RTL button # + ############## + + image { + function = BOX + state = NORMAL + detail = "button" + file = "assets/combo-left-entry.png" + border = {6, 0, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = PRELIGHT + detail = "button" + file = "assets/combo-left-entry-hover.png" + border = {6, 0, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = ACTIVE + detail = "button" + file = "assets/combo-left-entry-active.png" + border = {6, 0, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = INSENSITIVE + detail = "button" + file = "assets/combo-left-entry-disabled.png" + border = {6, 0, 6, 6} + stretch = TRUE + direction = RTL + } + } +} + +style "combo_button_padding" { + # Since one side of the button is missing, we need to shift the arrow a + # little to the right. + # This is the same thing we've done above but the combo, unlike the combobox, + # uses padding the same way as a button. + GtkButton::inner-border = {3, 6, 3, 3} +} + +style "notebook" { + xthickness = 3 + ythickness = 3 +} + +style "notebook_tab_label" { + fg[ACTIVE] = mix(0.7, @fg_color, @bg_color) + + font_name = "Medium" +} + +style "notebook_viewport" { + bg[NORMAL] = @base_color +} + +style "notebook_bg" { + bg[NORMAL] = @base_color + bg[PRELIGHT] = @base_color + bg[INSENSITIVE] = @base_color +} + +style "notebook_entry" { + base[NORMAL] = @base_color + base[SELECTED] = mix (0.24, @selected_bg_color, @base_color) + base[INSENSITIVE] = @base_color + base[ACTIVE] = mix (0.24, @selected_bg_color, @base_color) +} + +style "normal_bg" { + bg[NORMAL] = @bg_color + bg[PRELIGHT] = @bg_color + bg[INSENSITIVE] = @bg_color +} + +style "normal_entry" { + base[NORMAL] = @bg_color + base[SELECTED] = mix (0.24, @selected_bg_color, @bg_color) + base[INSENSITIVE] = @bg_color + base[ACTIVE] = mix (0.24, @selected_bg_color, @bg_color) +} + +style "textview" { + bg[NORMAL] = @base_color +} + +style "scale_horz" { + engine "pixmap" { + image { + function = BOX + detail = "trough-upper" + file = "assets/scale-horz-trough.png" + border = {6, 6, 0, 0} + stretch = TRUE + } + + image { + function = BOX + detail = "trough-lower" + file = "assets/scale-horz-trough-active.png" + border = {6, 6, 0, 0} + stretch = TRUE + } + } +} + +style "scale_vert" { + engine "pixmap" { + image { + function = BOX + detail = "trough-upper" + file = "assets/scale-vert-trough.png" + border = {0, 0, 6, 6} + stretch = TRUE + } + + image { + function = BOX + detail = "trough-lower" + file = "assets/scale-vert-trough-active.png" + border = {0, 0, 6, 6} + stretch = TRUE + } + } +} + +style "progressbar" { + xthickness = 0 + ythickness = 0 + + fg[PRELIGHT] = @selected_fg_color + + engine "pixmap" { + image { + function = BOX + detail = "trough" + file = "assets/progressbar-trough.png" + border = {0, 0, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "trough" + file = "assets/progressbar-trough.png" + border = {0, 0, 0, 0} + stretch = TRUE + orientation = VERTICAL + } + } +} + +style "treeview_header" { + xthickness = 2 + ythickness = 2 + + fg[NORMAL] = mix(0.7, @fg_color, @base_color) + fg[PRELIGHT] = @fg_color + + font_name = "Medium" + + GtkButton::inner-border = {4, 4, 0, 2} + + engine "pixmap" { + image { + function = BOX + state = NORMAL + file = "assets/treeview-ltr-button.png" + border = {0, 1, 0, 1} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = PRELIGHT + file = "assets/treeview-ltr-button-hover.png" + border = {0, 1, 0, 1} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = ACTIVE + file = "assets/treeview-ltr-button-active.png" + border = {0, 1, 0, 1} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = NORMAL + file = "assets/treeview-rtl-button.png" + border = {1, 0, 0, 1} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = PRELIGHT + file = "assets/treeview-rtl-button-hover.png" + border = {1, 0, 0, 1} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = ACTIVE + file = "assets/treeview-rtl-button-active.png" + border = {1, 0, 0, 1} + stretch = TRUE + direction = RTL + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + } +} + +style "scrolled_window" { + engine "pixmap" { + image { + function = SHADOW + file = "assets/frame.png" + border = {1, 1, 1, 1} + stretch = TRUE + } + } +} + +style "frame" { + engine "pixmap" { + image { + function = SHADOW + shadow = NONE + } + + image { + function = SHADOW + file = "assets/frame.png" + border = {1, 1, 1, 1} + stretch = TRUE + } + + image { + function = SHADOW_GAP + file = "assets/frame.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_start_file = "assets/border.png" + gap_end_file = "assets/border.png" + } + } +} + +style "tool_button" { + GtkButton::inner-border = {2, 2, 2, 2} + + # For the sake of sanity style buttons this way + engine "pixmap" { + image { + function = BOX + state = NORMAL + file = "assets/flat-button.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = PRELIGHT + shadow = OUT + file = "assets/flat-button-hover.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + # Don't add hover effect on pressed buttons + image { + function = BOX + state = PRELIGHT + shadow = IN + file = "assets/flat-button-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = ACTIVE + file = "assets/flat-button-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = INSENSITIVE + shadow = OUT + file = "assets/flat-button-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = INSENSITIVE + shadow = IN + file = "assets/button-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + } +} + +style "toolbar_separator" { + GtkWidget::wide-separators = 1 + GtkWidget::separator-width = 1 + GtkWidget::separator-height = 1 + + engine "pixmap" { + image { + function = BOX + file = "assets/border.png" + } + } +} + +style "inline_toolbar" { + # GtkToolbar::button-relief = GTK_RELIEF_NORMAL + + engine "pixmap" { + image { + function = BOX + file = "assets/frame-inline.png" + border = {1, 1, 0, 1} + stretch = TRUE + } + } +} + +style "tooltip" { + xthickness = 8 + ythickness = 8 + + bg[NORMAL] = @tooltip_bg_color + fg[NORMAL] = @tooltip_fg_color + bg[SELECTED] = @tooltip_bg_color +} + +style "disable_text_shadow" { + engine "murrine" { + textstyle = 0 + } +} + +style "disable_separator" { + xthickness = 0 + ythickness = 0 + + GtkWidget::wide-separators = 1 +} + +# Default style, containing theme properties and trying to match every widget as +# much as possible, which is not only faster than trying to match every widget +# by its own but also less bug-prune and more consistent. However there is some +# widget specific stuff that needs to be taken care of, which is the point of +# every other style below. +class "GtkWidget" style "default" + +###################################### +# Override padding, style and colour # +###################################### + +class "GtkButton" style "button" +class "GtkLinkButton" style "link_button" +class "GtkEntry" style "entry" +class "GtkOldEditable" style "entry" +class "GtkNotebook" style "notebook" +class "GtkHScale" style "scale_horz" +class "GtkVScale" style "scale_vert" +class "GtkProgressBar" style "progressbar" +class "GtkScrolledWindow" style "scrolled_window" +class "GtkFrame" style "frame" +class "GtkSeparatorToolItem" style "toolbar_separator" +class "GtkMenuBar" style "menubar" +class "GtkMenu" style "menu" +class "GtkTextView" style "textview" + +# Menu and menubar items +widget_class "**" style "menu_item" +widget_class "*.*" style "menubar_item" +widget_class "**" style "separator_menu_item" + +# Treeview buttons +widget_class "***" style "treeview_header" + +# Give the file chooser toolbar a border +widget_class "**" style "inline_toolbar" + +# Fix padding on regular comboboxes +widget_class "*." style "combobox" +widget_class "*" style "combobox" + +# And disable separators on them +widget_class "*.*" style "disable_separator" +widget_class "**" style "disable_separator" +widget_class "**" style "disable_separator" + +# Join together the ComboBoxEntry entry and button +widget_class "**" style "combobox_entry" + +# Join the Combo entry and button +widget_class "**" style "combobox_entry" + +# Tweak the padding on the button a little bit because it +# uses it a bit differently +widget_class "*." style "combo_button_padding" + +# Alas we cannot do the same for ComboBoxText because there +# isn't a way to apply the style to only the comboboxes that +# have an entry inside + +# Tool buttons have different styles +widget_class "**" style "tool_button" +widget_class "**.*" style "tool_button" + +# Notebooks +widget_class "*." style "notebook_tab_label" +widget_class "*.." style "notebook_tab_label" + +# Notebooks are white, act accordingly +widget_class "**" style "notebook_entry" +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" + +# However, stuff inside eventboxes inside notebooks is grey +# again, react +widget_class "***" style "normal_entry" +widget_class "***" style "normal_bg" +widget_class "***" style "normal_bg" + +# Button labels +widget_class "*." style "button_label" + +# Normalize button labels +widget_class "*." style "normal_button_label" +widget_class "*." style "normal_button_label" + +# ComboBoxes tend to draw the button label with text[] +# instead of fg[], we need to fix that +widget_class "**" style "combobox_cellview" + +# Disable white text shadows +widget_class "*" style "disable_text_shadow" +widget_class "*" style "disable_text_shadow" + +# GTK tooltips +widget "gtk-tooltip*" style "tooltip" diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/checkbox-checked-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/checkbox-checked-symbolic.svg new file mode 100644 index 0000000..7b89e88 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/checkbox-checked-symbolic@2.svg b/Cutefish-dark/gtk-3.0/assets/scalable/checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..17e3c4a --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/checkbox-mixed-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..b4808a6 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/checkbox-mixed-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/checkbox-mixed-symbolic@2.svg b/Cutefish-dark/gtk-3.0/assets/scalable/checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..3ea0541 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/checkbox-mixed-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/cursor-handle-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/cursor-handle-symbolic.svg new file mode 100644 index 0000000..e2a252b --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/cursor-handle-symbolic.svg @@ -0,0 +1,3 @@ + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/radio-checked-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/radio-checked-symbolic.svg new file mode 100644 index 0000000..67beb46 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/radio-checked-symbolic.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/radio-checked-symbolic@2.svg b/Cutefish-dark/gtk-3.0/assets/scalable/radio-checked-symbolic@2.svg new file mode 100644 index 0000000..bf51d9e --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/radio-checked-symbolic@2.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/radio-mixed-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/radio-mixed-symbolic.svg new file mode 120000 index 0000000..79b7355 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/radio-mixed-symbolic.svg @@ -0,0 +1 @@ +checkbox-mixed-symbolic.svg \ No newline at end of file diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/radio-mixed-symbolic@2.svg b/Cutefish-dark/gtk-3.0/assets/scalable/radio-mixed-symbolic@2.svg new file mode 120000 index 0000000..b68859d --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/radio-mixed-symbolic@2.svg @@ -0,0 +1 @@ +checkbox-mixed-symbolic@2.svg \ No newline at end of file diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..de0d789 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..7f0235f --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg @@ -0,0 +1,47 @@ + + + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/scale-slider-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/scale-slider-symbolic.svg new file mode 100644 index 0000000..4b00bc1 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/scale-slider-symbolic.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..37d9c04 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..1bc5cb6 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic.svg new file mode 100644 index 0000000..4759e32 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic@2.svg b/Cutefish-dark/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..a44f5c9 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..d621934 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg b/Cutefish-dark/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..91c7006 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/small-radio-checked-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/small-radio-checked-symbolic.svg new file mode 100644 index 0000000..f2c9cf9 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/small-radio-checked-symbolic.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/small-radio-checked-symbolic@2.svg b/Cutefish-dark/gtk-3.0/assets/scalable/small-radio-checked-symbolic@2.svg new file mode 100644 index 0000000..a06db4c --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/small-radio-checked-symbolic@2.svg @@ -0,0 +1,39 @@ + + + + + + diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/small-radio-mixed-symbolic.svg b/Cutefish-dark/gtk-3.0/assets/scalable/small-radio-mixed-symbolic.svg new file mode 120000 index 0000000..86dfcec --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/small-radio-mixed-symbolic.svg @@ -0,0 +1 @@ +small-checkbox-mixed-symbolic.svg \ No newline at end of file diff --git a/Cutefish-dark/gtk-3.0/assets/scalable/small-radio-mixed-symbolic@2.svg b/Cutefish-dark/gtk-3.0/assets/scalable/small-radio-mixed-symbolic@2.svg new file mode 120000 index 0000000..bafb558 --- /dev/null +++ b/Cutefish-dark/gtk-3.0/assets/scalable/small-radio-mixed-symbolic@2.svg @@ -0,0 +1 @@ +small-checkbox-mixed-symbolic@2.svg \ No newline at end of file diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-dark.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-dark.png new file mode 100644 index 0000000..00d08bd Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-dark.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-dark@2.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-dark@2.png new file mode 100644 index 0000000..25abeb6 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-dark@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark.png new file mode 100644 index 0000000..bb5607f Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png new file mode 100644 index 0000000..d6065db Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-disabled.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-disabled.png new file mode 100644 index 0000000..5861d66 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-disabled.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-disabled@2.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-disabled@2.png new file mode 100644 index 0000000..52907bf Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider-disabled@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider.png new file mode 100644 index 0000000..29f1fca Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider@2.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider@2.png new file mode 100644 index 0000000..47b16ec Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-after-slider@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-dark.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-dark.png new file mode 100644 index 0000000..22b3bc9 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-dark.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-dark@2.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-dark@2.png new file mode 100644 index 0000000..818c7ed Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-dark@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark.png new file mode 100644 index 0000000..e5f083e Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png new file mode 100644 index 0000000..2e8b6c7 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-disabled.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-disabled.png new file mode 100644 index 0000000..239ca9a Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-disabled.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-disabled@2.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-disabled@2.png new file mode 100644 index 0000000..adc1af7 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider-disabled@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider.png new file mode 100644 index 0000000..3a4aa7f Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider@2.png b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider@2.png new file mode 100644 index 0000000..9dd390f Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-horz-marks-before-slider@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-dark.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-dark.png new file mode 100644 index 0000000..3231d1b Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-dark.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-dark@2.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-dark@2.png new file mode 100644 index 0000000..78cff7e Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-dark@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark.png new file mode 100644 index 0000000..1bd736e Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png new file mode 100644 index 0000000..25f37ab Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-disabled.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-disabled.png new file mode 100644 index 0000000..8e9a3e2 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-disabled.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-disabled@2.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-disabled@2.png new file mode 100644 index 0000000..47f06af Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider-disabled@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider.png new file mode 100644 index 0000000..fedff3d Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider@2.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider@2.png new file mode 100644 index 0000000..6215f7c Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-after-slider@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-dark.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-dark.png new file mode 100644 index 0000000..5679039 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-dark.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-dark@2.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-dark@2.png new file mode 100644 index 0000000..03926a9 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-dark@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark.png new file mode 100644 index 0000000..61283d7 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png new file mode 100644 index 0000000..690689c Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-disabled.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-disabled.png new file mode 100644 index 0000000..040f9f6 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-disabled.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-disabled@2.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-disabled@2.png new file mode 100644 index 0000000..593ef55 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider-disabled@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider.png new file mode 100644 index 0000000..57825fd Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider@2.png b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider@2.png new file mode 100644 index 0000000..b828dae Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/scale-vert-marks-before-slider@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-checked-dark.png b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-checked-dark.png new file mode 100644 index 0000000..8dbedf6 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-checked-dark.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-checked-dark@2.png b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-checked-dark@2.png new file mode 100644 index 0000000..d4b23d5 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-checked-dark@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-checked.png b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-checked.png new file mode 100644 index 0000000..a223d1f Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-checked.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-checked@2.png b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-checked@2.png new file mode 100644 index 0000000..a7723f1 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-checked@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark.png b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark.png new file mode 100644 index 0000000..f6b914e Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark@2.png b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark@2.png new file mode 100644 index 0000000..29ecf2b Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark@2.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-unchecked.png b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-unchecked.png new file mode 100644 index 0000000..40ff92e Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-unchecked.png differ diff --git a/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-unchecked@2.png b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-unchecked@2.png new file mode 100644 index 0000000..8e87ea7 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/assets/selectionmode-checkbox-unchecked@2.png differ diff --git a/Cutefish-dark/gtk-3.0/gtk-dark.css b/Cutefish-dark/gtk-3.0/gtk-dark.css new file mode 100644 index 0000000..506b1fe --- /dev/null +++ b/Cutefish-dark/gtk-3.0/gtk-dark.css @@ -0,0 +1,4180 @@ +@keyframes ripple { + to { + background-size: 1000% 1000%; + } +} + +@keyframes ripple-on-slider { + to { + background-size: auto, 1000% 1000%; + } +} + +@keyframes ripple-on-headerbar { + from { + background-image: radial-gradient(circle, #5b9bf8 0%, transparent 0%); + } + to { + background-image: radial-gradient(circle, #5b9bf8 100%, transparent 0%); + } +} + +* { + background-clip: padding-box; + -GtkToolButton-icon-spacing: 0; + -GtkTextView-error-underline-color: #F28B82; + -GtkScrolledWindow-scrollbar-spacing: 0; + -GtkToolItemGroup-expander-size: 11; + -GtkWidget-text-handle-width: 24; + -GtkWidget-text-handle-height: 24; + -GtkDialog-button-spacing: 6; + -GtkDialog-action-area-border: 6; + outline-style: solid; + outline-width: 2px; + outline-color: transparent; + outline-offset: -4px; + -gtk-outline-radius: 6px; + -gtk-secondary-caret-color: #5b9bf8; +} + +*:focus { + outline-color: alpha(currentColor, 0.1); +} + +calendar:selected, treeview.view:selected, modelbutton.flat:selected, +.menuitem.button.flat:selected, .background.csd .view:selected { + color: white; + background-color: alpha(currentColor, 0.1); +} + +flowbox flowboxchild:selected { + color: #5b9bf8; + background-color: rgba(91, 155, 248, 0.2); +} + +spinbutton.vertical selection, spinbutton:not(.vertical) selection, +entry selection, label selection, textview text selection:focus, textview text selection, widget.view:selected, .view:selected { + color: white; + background-color: #5b9bf8; +} + +.linked:not(.vertical) > button, .linked:not(.vertical) > spinbutton.vertical, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry { + border-radius: 0; +} + +.linked:not(.vertical) > button:first-child, .linked:not(.vertical) > spinbutton.vertical:first-child, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.linked:not(.vertical) > button:last-child, .linked:not(.vertical) > spinbutton.vertical:last-child, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > button:only-child, .linked:not(.vertical) > spinbutton.vertical:only-child, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child { + border-radius: 6px; +} + +.linked.vertical > button, .linked.vertical > spinbutton.vertical, .linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry { + border-radius: 0; +} + +.linked.vertical > button:first-child, .linked.vertical > spinbutton.vertical:first-child, .linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > button:last-child, .linked.vertical > spinbutton.vertical:last-child, .linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > button:only-child, .linked.vertical > spinbutton.vertical:only-child, .linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child { + border-radius: 6px; +} + +/*************** + * Base States * + ***************/ +.background { + background-color: #2C2C2C; + color: white; +} + +.background.csd { + border-radius: 0 0 14px 14px; +} + +.background.maximized, .background.solid-csd { + border-radius: 0; +} + +*:disabled { + -gtk-icon-effect: dim; +} + +.gtkstyle-fallback { + background-color: #2C2C2C; + color: white; +} + +.gtkstyle-fallback:hover { + background-color: #1f1f1f; + color: white; +} + +.gtkstyle-fallback:active { + background-color: #131313; + color: white; +} + +.gtkstyle-fallback:disabled { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.5); +} + +.gtkstyle-fallback:selected { + background-color: #5b9bf8; + color: white; +} + +.view { + background-color: #2C2C2C; + color: white; +} + +.view:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +.view:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.view:selected:hover { + box-shadow: none; +} + +window.background.csd > stack.view { + border-radius: 0 0 14px 14px; +} + +textview text { + background-color: #2C2C2C; +} + +textview border { + background-color: #242424; + color: rgba(255, 255, 255, 0.7); +} + +iconview:hover, iconview:selected { + border-radius: 6px; +} + +.rubberband, +rubberband, +.content-view rubberband, +.content-view treeview.view rubberband, +treeview.view .content-view rubberband, +.content-view .rubberband, +treeview.view rubberband, +treeview.view .content-view .rubberband, +.content-view treeview.view .rubberband, +treeview.view flowbox rubberband, +flowbox treeview.view rubberband, +flowbox rubberband, +flowbox treeview.view rubberband, +treeview.view flowbox rubberband, +treeview.view flowbox rubberband, +flowbox treeview.view rubberband { + border: 1px solid #5b9bf8; + background-color: rgba(91, 155, 248, 0.3); +} + +flowbox flowboxchild { + padding: 4px; + border-radius: 6px; +} + +.content-view .tile:selected { + background-color: transparent; +} + +label { + caret-color: currentColor; +} + +label.separator { + color: rgba(255, 255, 255, 0.7); +} + +label:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; +} + +label.osd { + border-radius: 6px; + background-color: rgba(25, 25, 25, 0.9); + color: white; +} + +.dim-label { + color: rgba(255, 255, 255, 0.7); +} + +assistant .sidebar { + padding: 4px 0; +} + +assistant .sidebar label { + min-height: 36px; + padding: 0 12px; + color: rgba(255, 255, 255, 0.5); + font-weight: 500; +} + +assistant .sidebar label.highlight { + color: white; +} + +/********************* + * Spinner Animation * + *********************/ +@keyframes spin { + to { + -gtk-icon-transform: rotate(1turn); + } +} + +spinner { + background: none; + opacity: 0; + -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); +} + +spinner:checked { + opacity: 1; + animation: spin 1s linear infinite; +} + +spinner:checked:disabled { + opacity: 0.5; +} + +/**************** + * Text Entries * + ****************/ +spinbutton.vertical, spinbutton:not(.vertical), +entry { + min-height: 36px; + padding: 0 8px; + border-radius: 6px; + caret-color: currentColor; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.vertical:focus, spinbutton:focus:not(.vertical), +entry:focus { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +spinbutton.vertical:drop(active), spinbutton:drop(active):not(.vertical), +entry:drop(active) { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +spinbutton.vertical:disabled, spinbutton:disabled:not(.vertical), +entry:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.flat.vertical, spinbutton.flat:not(.vertical), +entry.flat { + min-height: 0; + padding: 2px; + border-radius: 0; + background-color: transparent; +} + +spinbutton.vertical image, spinbutton:not(.vertical) image, +entry image { + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical image:hover, spinbutton:not(.vertical) image:hover, spinbutton.vertical image:active, spinbutton:not(.vertical) image:active, +entry image:hover, +entry image:active { + color: white; +} + +spinbutton.vertical image:disabled, spinbutton:not(.vertical) image:disabled, +entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical image.left, spinbutton:not(.vertical) image.left, +entry image.left { + margin-left: 2px; + margin-right: 6px; +} + +spinbutton.vertical image.right, spinbutton:not(.vertical) image.right, +entry image.right { + margin-left: 6px; + margin-right: 2px; +} + +spinbutton.vertical undershoot.left, spinbutton:not(.vertical) undershoot.left, +entry undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.vertical undershoot.right, spinbutton:not(.vertical) undershoot.right, +entry undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.error.vertical, spinbutton.error:not(.vertical), +entry.error { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.error.vertical:focus, spinbutton.error:focus:not(.vertical), +entry.error:focus { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #F28B82; +} + +spinbutton.error.vertical:disabled, spinbutton.error:disabled:not(.vertical), +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.warning.vertical, spinbutton.warning:not(.vertical), +entry.warning { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.warning.vertical:focus, spinbutton.warning:focus:not(.vertical), +entry.warning:focus { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #FDD633; +} + +spinbutton.warning.vertical:disabled, spinbutton.warning:disabled:not(.vertical), +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical progress, spinbutton:not(.vertical) progress, +entry progress { + margin: 2px -8px; + border-bottom: 2px solid #5b9bf8; + background-color: transparent; +} + +treeview entry.flat, treeview entry { + background-color: #2C2C2C; +} + +treeview entry.flat, treeview entry.flat:focus, treeview entry, treeview entry:focus { + border-image: none; + box-shadow: none; +} + +.entry-tag { + margin: 2px; + border-radius: 9999px; + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +.entry-tag:hover { + background-image: image(alpha(currentColor, 0.08)); +} + +:dir(ltr) .entry-tag { + margin-left: 4px; + margin-right: 0; + padding-left: 12px; + padding-right: 8px; +} + +:dir(rtl) .entry-tag { + margin-left: 0; + margin-right: 4px; + padding-left: 8px; + padding-right: 12px; +} + +.entry-tag.button { + box-shadow: none; + background-color: transparent; +} + +.entry-tag.button:not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: -gtk-gradient(radial, center center, 0, center center, 0.001, to(#5b9bf8), to(transparent)); + } + to { + background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(#5b9bf8), to(transparent)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button { + color: rgba(255, 255, 255, 0.7); +} + +infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked { + color: white; +} + +infobar.warning > revealer > box button:disabled { + color: rgba(255, 255, 255, 0.3); +} + +infobar.warning > revealer > box button:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:not(.suggested-action):not(.destructive-action), button { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: rgba(255, 255, 255, 0.08); + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + color: white; +} + +actionbar > revealer > box .linked > button:focus:not(.suggested-action):not(.destructive-action), button:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +actionbar > revealer > box .linked > button:hover:not(.suggested-action):not(.destructive-action), button:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +actionbar > revealer > box .linked > button:active:not(.suggested-action):not(.destructive-action), button:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; +} + +actionbar > revealer > box .linked > button:disabled:not(.suggested-action):not(.destructive-action), button:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:checked:not(.suggested-action):not(.destructive-action), button:checked { + background-color: #5b9bf8; + color: white; +} + +actionbar > revealer > box .linked > button:checked:hover:not(.suggested-action):not(.destructive-action), button:checked:hover { + box-shadow: inset 0 0 0 9999px transparent; +} + +actionbar > revealer > box .linked > button:checked:disabled:not(.suggested-action):not(.destructive-action), button:checked:disabled { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.1); + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.titlebutton:not(.suggested-action):not(.destructive-action), filechooser #pathbarbox > stack > box > button, button.close, button.circular, .inline-toolbar button:not(.text-button) { + border-radius: 9999px; +} + +button.titlebutton:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, button.close label, button.circular label, .inline-toolbar button:not(.text-button) label { + padding: 0; +} + +placessidebar.sidebar row button.sidebar-button, notebook > header tab button.flat, spinbutton.vertical button, spinbutton:not(.vertical) button { + min-height: 24px; + min-width: 24px; + padding: 0; + border-radius: 9999px; +} + +button { + min-height: 24px; + min-width: 16px; + padding: 6px 10px; + border-radius: 6px; + font-weight: 500; +} + +button:drop(active) { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placessidebar.sidebar row button.sidebar-button, calendar.button, treeview.view header button button.circular, row.activatable button.circular, scrollbar button, notebook > header > tabs > arrow, spinbutton.vertical button, spinbutton:not(.vertical) button, modelbutton.flat, +.menuitem.button.flat, filechooser #pathbarbox > stack > box > button, messagedialog .dialog-action-box button, messagedialog .dialog-action-box .linked:not(.vertical) > button, .app-notification button, actionbar > revealer > box button:not(.suggested-action):not(.destructive-action), popover.background.menu button, +popover.background button.model, headerbar button:not(.suggested-action):not(.destructive-action), toolbar button, combobox > .linked:not(.vertical) > button:not(:only-child), button.flat { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), border-image 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + color: rgba(255, 255, 255, 0.7); +} + +placessidebar.sidebar row button.sidebar-button:focus, calendar.button:focus, treeview.view header button button.circular:focus, row.activatable button.circular:focus, scrollbar button:focus, notebook > header > tabs > arrow:focus, spinbutton.vertical button:focus, spinbutton:not(.vertical) button:focus, modelbutton.flat:focus, +.menuitem.button.flat:focus, filechooser #pathbarbox > stack > box > button:focus, messagedialog .dialog-action-box button:focus, messagedialog .dialog-action-box .linked:not(.vertical) > button:focus, .app-notification button:focus, actionbar > revealer > box button:focus:not(.suggested-action):not(.destructive-action), popover.background.menu button:focus, +popover.background button.model:focus, headerbar button:focus:not(.suggested-action):not(.destructive-action), toolbar button:focus, combobox > .linked:not(.vertical) > button:focus:not(:only-child), button.flat:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: white; +} + +placessidebar.sidebar row button.sidebar-button:hover, calendar.button:hover, treeview.view header button button.circular:hover, row.activatable button.circular:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, spinbutton.vertical button:hover, spinbutton:not(.vertical) button:hover, modelbutton.flat:hover, +.menuitem.button.flat:hover, filechooser #pathbarbox > stack > box > button:hover, messagedialog .dialog-action-box button:hover, messagedialog .dialog-action-box .linked:not(.vertical) > button:hover, .app-notification button:hover, actionbar > revealer > box button:hover:not(.suggested-action):not(.destructive-action), popover.background.menu button:hover, +popover.background button.model:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), toolbar button:hover, combobox > .linked:not(.vertical) > button:hover:not(:only-child), button.flat:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: white; +} + +placessidebar.sidebar row button.sidebar-button:active, calendar.button:active, treeview.view header button button.circular:active, row.activatable button.circular:active, scrollbar button:active, notebook > header > tabs > arrow:active, spinbutton.vertical button:active, spinbutton:not(.vertical) button:active, modelbutton.flat:active, +.menuitem.button.flat:active, filechooser #pathbarbox > stack > box > button:active, messagedialog .dialog-action-box button:active, messagedialog .dialog-action-box .linked:not(.vertical) > button:active, .app-notification button:active, actionbar > revealer > box button:active:not(.suggested-action):not(.destructive-action), popover.background.menu button:active, +popover.background button.model:active, headerbar button:active:not(.suggested-action):not(.destructive-action), toolbar button:active, combobox > .linked:not(.vertical) > button:active:not(:only-child), button.flat:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), border-image 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; + color: white; +} + +placessidebar.sidebar row button.sidebar-button:disabled, calendar.button:disabled, treeview.view header button button.circular:disabled, row.activatable button.circular:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, spinbutton.vertical button:disabled, spinbutton:not(.vertical) button:disabled, modelbutton.flat:disabled, +.menuitem.button.flat:disabled, filechooser #pathbarbox > stack > box > button:disabled, messagedialog .dialog-action-box button:disabled, messagedialog .dialog-action-box .linked:not(.vertical) > button:disabled, .app-notification button:disabled, actionbar > revealer > box button:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:disabled, +popover.background button.model:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), toolbar button:disabled, combobox > .linked:not(.vertical) > button:disabled:not(:only-child), button.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +filechooser #pathbarbox > stack > box > button:checked, messagedialog .dialog-action-box button:checked, messagedialog .dialog-action-box .linked:not(.vertical) > button:checked, .app-notification button:checked, actionbar > revealer > box button:checked:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked, +popover.background button.model:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), toolbar button:checked, combobox > .linked:not(.vertical) > button:checked:not(:only-child), button.flat:checked, button.flat:checked:hover { + background-color: alpha(currentColor, 0.1); + color: white; +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, messagedialog .dialog-action-box button:checked:disabled, .app-notification button:checked:disabled, actionbar > revealer > box button:checked:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked:disabled, +popover.background button.model:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), toolbar button:checked:disabled, combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(255, 255, 255, 0.5); +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.text-button.flat { + min-width: 48px; + padding-left: 8px; + padding-right: 8px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child) { + margin: 0 4px; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + border-radius: 6px; +} + +.linked:not(.vertical) > button.flat:not(:only-child).image-button:not(.text-button), .linked.vertical > button.flat:not(:only-child).image-button:not(.text-button) { + border-radius: 9999px; +} + +button.osd { + min-width: 24px; + min-width: 24px; + padding: 12px 16px; + background-color: #5b9bf8; + color: white; +} + +button.osd:hover { + background-color: #6fa7f9; + color: white; +} + +button.osd:active { + background-color: #86b5fa; + color: white; +} + +button.osd.image-button, button.osd.circular { + padding: 12px; +} + +button.osd.image-button > image, button.osd.circular > image { + padding: 0; +} + +button.osd:disabled { + opacity: 0; +} + +button.suggested-action { + background-color: #5b9bf8; + color: white; + box-shadow: none; +} + +button.suggested-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(91, 155, 248, 0.2), 0 4px 3px 0 rgba(91, 155, 248, 0.14), 0 1px 6px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:checked { + background-color: #8cb9fa; +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(91, 155, 248, 0.3), 0 2px 3px -1px rgba(91, 155, 248, 0.24), 0 2px 5px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #5b9bf8; +} + +button.suggested-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.suggested-action.flat:checked { + background-color: rgba(91, 155, 248, 0.3); +} + +button.destructive-action { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); + box-shadow: none; +} + +button.destructive-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(242, 139, 130, 0.2), 0 4px 3px 0 rgba(242, 139, 130, 0.14), 0 1px 6px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:checked { + background-color: rgba(182, 105, 98, 0.961); +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(242, 139, 130, 0.3), 0 2px 3px -1px rgba(242, 139, 130, 0.24), 0 2px 5px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(242, 139, 130, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #F28B82; +} + +button.destructive-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.destructive-action.flat:checked { + background-color: rgba(242, 139, 130, 0.3); +} + +.stack-switcher > button > label { + margin: 0 -6px; + padding: 0 6px; +} + +.stack-switcher > button > image { + margin: -3px -6px; + padding: 3px 6px; +} + +.stack-switcher > button.needs-attention:checked > label, +.stack-switcher > button.needs-attention:checked > image { + animation: none; + background-image: none; +} + +.primary-toolbar button { + -gtk-icon-shadow: none; +} + +button.close, button.circular { + min-width: 24px; + padding: 6px; +} + +stacksidebar.sidebar row.needs-attention > label, .stack-switcher > button.needs-attention > label, +.stack-switcher > button.needs-attention > image { + animation: needs-attention 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-repeat: no-repeat; + background-position: right 3px; + background-size: 6px 6px; +} + +stacksidebar.sidebar row.needs-attention > label:dir(rtl), .stack-switcher > button.needs-attention > label:dir(rtl), +.stack-switcher > button.needs-attention > image:dir(rtl) { + background-position: left 3px; +} + +modelbutton.flat, +.menuitem.button.flat { + min-height: 28px; + padding: 0 8px; + border-radius: 6px; + color: white; +} + +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 { + min-height: 24px; + min-width: 24px; + padding: 6px; +} + +/********* + * Links * + *********/ +*:link { + color: #2196F3; +} + +*:visited { + color: #CE93D8; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #2196F3; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #CE93D8; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton:not(.vertical) { + padding: 0; +} + +spinbutton:not(.vertical) entry { + min-width: 32px; + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +spinbutton:not(.vertical) button { + border: solid 6px transparent; +} + +spinbutton:not(.vertical) button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton:not(.vertical) button.up:dir(ltr), spinbutton:not(.vertical) button.down:dir(rtl) { + margin-left: -3px; +} + +spinbutton:not(.vertical) button.up:dir(rtl), spinbutton:not(.vertical) button.down:dir(ltr) { + margin-right: -3px; +} + +spinbutton.vertical { + padding: 0; +} + +spinbutton.vertical:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical entry { + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical button { + padding: 0; + border: solid 6px transparent; +} + +spinbutton.vertical button:focus:not(:hover):not(:active) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical button.up { + margin: 0 3px; +} + +spinbutton.vertical button.down { + margin: 0 3px; +} + +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: 24px; + min-width: 24px; +} + +combobox decoration { + transition: none; +} + +combobox button.combo cellview:dir(ltr) { + margin-left: -2px; +} + +combobox button.combo cellview:dir(rtl) { + margin-right: -2px; +} + +combobox.linked button:nth-child(2):dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +combobox.linked button:nth-child(2):dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child):first-child { + margin-right: -36px; + padding-right: 36px; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child):last-child { + margin-left: -36px; + padding-left: 36px; +} + +combobox > .linked:not(.vertical) > button:not(:only-child) { + min-height: 16px; + min-width: 16px; + margin: 6px; + padding: 4px; + border-radius: 6px; +} + +.linked:not(.vertical) > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.linked:not(.vertical) > combobox:not(:last-child) > box > button.combo { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.linked.vertical > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.linked.vertical > combobox:not(:last-child) > box > button.combo { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +button.combo:only-child { + border-radius: 6px; + font-weight: normal; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +button.combo:only-child:focus { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3); +} + +button.combo:only-child:hover { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +button.combo:only-child:checked { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +button.combo:only-child:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +/************ + * Toolbars * + ************/ +toolbar { + -GtkWidget-window-dragging: true; + padding: 2px; + background-color: #2C2C2C; +} + +.osd toolbar { + background-color: transparent; +} + +.app-notification, toolbar.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +.app-notification:backdrop, toolbar.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +.left.app-notification, .right.app-notification, .top.app-notification, .bottom.app-notification, toolbar.osd.left, toolbar.osd.right, toolbar.osd.top, toolbar.osd.bottom { + border-radius: 0; +} + +.bottom.app-notification, toolbar.osd.bottom { + box-shadow: none; + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.4)); +} + +toolbar.horizontal > separator { + margin: 2px; +} + +toolbar.vertical > separator { + margin: 2px; +} + +toolbar:not(.inline-toolbar):not(.osd) scale, +toolbar:not(.inline-toolbar):not(.osd) entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton, +toolbar:not(.inline-toolbar):not(.osd) button { + margin: 2px; +} + +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child) { + margin-left: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child) { + margin-right: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton button { + margin: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) switch { + margin: 8px 2px; +} + +.inline-toolbar { + padding: 6px; + border-style: solid; + border-width: 0 1px 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #242424; +} + +searchbar > revealer > box, +.location-bar { + padding: 6px; + border-style: solid; + border-width: 0 0 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; +} + +searchbar > revealer > box { + margin: -6px; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar .linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + border-radius: 6px; +} + +headerbar button:focus:not(.suggested-action):not(.destructive-action), headerbar button:hover:not(.suggested-action):not(.destructive-action), headerbar button:active:not(.suggested-action):not(.destructive-action), headerbar button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action) { + background-color: transparent; + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:focus:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:hover:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:backdrop:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar entry { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +.titlebar entry:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +.titlebar entry image { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar entry image:hover, .titlebar entry image:active { + color: white; +} + +.titlebar entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #242424; + color: white; + border-radius: 14px 14px 0 0; + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.titlebar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.titlebar:backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar .title { + padding: 0 12px; + font-weight: bold; +} + +.titlebar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +.titlebar .subtitle, +.titlebar .dim-label { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +.titlebar .subtitle:backdrop, +.titlebar .dim-label:backdrop { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar .titlebar { + background-color: transparent; + box-shadow: none; +} + +.titlebar + separator, .titlebar + separator.sidebar { + background-color: #242424; + background-image: none; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.titlebar + separator:backdrop, .titlebar + separator.sidebar:backdrop { + background-color: #2C2C2C; +} + +.titlebar.selection-mode + separator, .titlebar.selection-mode + separator.sidebar, .selection-mode .titlebar + separator, .selection-mode .titlebar + separator.sidebar { + background-color: #5b9bf8; +} + +.titlebar.selection-mode + separator:backdrop, .titlebar.selection-mode + separator.sidebar:backdrop, .selection-mode .titlebar + separator:backdrop, .selection-mode .titlebar + separator.sidebar:backdrop { + background-color: #5b9bf8; +} + +.background.csd.unified .titlebar + separator, .background.csd.unified .titlebar + separator.sidebar { + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.titlebar .linked:not(.vertical) > entry { + border-radius: 6px; + margin-left: 3px; + margin-right: 3px; +} + +.titlebar button.suggested-action:disabled, .titlebar button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +.titlebar .path-bar button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 0; + padding-left: 6px; + padding-right: 6px; +} + +.titlebar.selection-mode { + transition: background-color 0.1ms 0ms, color 0ms cubic-bezier(0, 0, 0.2, 1); + animation: ripple-on-headerbar 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2), inset 0 -1px rgba(255, 255, 255, 0.12); + background-color: #5b9bf8; + color: white; +} + +.titlebar.selection-mode:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode .subtitle:link { + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action) { + border-image: radial-gradient(circle closest-corner at center calc(100% - 1px), currentColor 0%, transparent 0%) 0 0 0/0 0 0px; + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):checked { + border-image: radial-gradient(circle closest-corner at center calc(100% - 1px), currentColor 100%, transparent 0%) 0 0 2/0 0 2px; + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:not(.titlebutton) { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:checked { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:checked:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar.selection-mode .selection-menu { + padding-left: 16px; + padding-right: 16px; +} + +.titlebar.selection-mode .selection-menu arrow { + -GtkArrow-arrow-scaling: 1; +} + +.titlebar.selection-mode .selection-menu .arrow { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +.titlebar .selection-mode { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #5b9bf8; +} + +.tiled .titlebar, .tiled-top .titlebar, .tiled-right .titlebar, .tiled-bottom .titlebar, .tiled-left .titlebar, .maximized .titlebar, .fullscreen .titlebar { + border-radius: 0; +} + +.titlebar.default-decoration { + min-height: 24px; + padding: 6px 12px; + border-radius: 14px 14px 0 0; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); +} + +.tiled .titlebar.default-decoration, .maximized .titlebar.default-decoration, .fullscreen .titlebar.default-decoration { + box-shadow: none; + border-radius: 0; +} + +.titlebar.default-decoration button.titlebutton { + min-height: 24px; + min-width: 24px; + margin: 0; + padding: 0; +} + +.background.csd .titlebar.default-decoration { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1), inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.background:not(.csd) .titlebar.default-decoration button.titlebutton:active { + background-size: 1000% 1000%; +} + +.solid-csd .titlebar:dir(rtl), .solid-csd .titlebar:dir(ltr) { + border-radius: 0; + box-shadow: none; +} + +headerbar { + min-height: 48px; + padding: 0 6px; +} + +box.vertical headerbar { + background-color: #242424; +} + +headerbar entry, +headerbar spinbutton, +headerbar button { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar button, headerbar button.image-button { + border-radius: 6px; +} + +headerbar > box.left, +headerbar > box.right { + padding: 0 4px; +} + +headerbar separator.titlebutton, headerbar separator.sidebar { + margin-top: 12px; + margin-bottom: 12px; + background-color: transparent; +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar spinbutton button { + margin-top: 0; + margin-bottom: 0; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action) { + border-radius: 0; + margin: 0; + min-width: 120px; + padding: 0; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action) > stack > box { + padding: 0 12px; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action):focus { + box-shadow: none; +} + +headerbar.windowhandle > button.popup label, headerbar.windowhandle > button.popup image { + min-height: 0; +} + +headerbar.windowhandle viewswitchertitle > squeezer { + margin-top: 0; + margin-bottom: 0; + background: none; +} + +headerbar.windowhandle viewswitchertitle > squeezer > viewswitcher { + margin: 0 0; + background: none; +} + +headerbar.windowhandle viewswitchertitle > squeezer > viewswitcher > box.horizontal > button.radio { + margin: 0; + padding: 0; + border-radius: 0; +} + +/************ + * Pathbars * + ************/ + +.path-bar.linked:not(.vertical) > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 3px; + margin-left: 1px; + margin-right: 1px; + background-color: alpha(currentColor, 0.08); +} + + +.path-bar.linked:not(.vertical) > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +.path-bar.linked:not(.vertical) > button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + + +.path-bar.linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + + +.path-bar.linked:not(.vertical) > button:checked { + background-color: alpha(currentColor, 0.16); + color: white; +} + + +.path-bar.linked:not(.vertical) > button label:not(:only-child):first-child { + margin-left: 0; +} + + +.path-bar.linked:not(.vertical) > button label:not(:only-child):last-child { + margin-right: 0; +} + + +.path-bar.linked:not(.vertical) > button.text-button { + min-width: 0; +} + + +.path-bar.linked:not(.vertical) > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +/************** + * Tree Views * + **************/ +treeview.view { + border-left-color: rgba(255, 255, 255, 0.3); + border-top-color: rgba(255, 255, 255, 0.12); + padding: 3px; +} + +* { + -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; +} + +.csd treeview.view:not(:selected):not(:hover):not(.progressbar):not(.expander):not(.trough):not(.separator) { + background-color: transparent; +} + +treeview.view:hover, treeview.view:selected { + border-radius: 0; +} + +treeview.view.separator { + min-height: 6px; + color: rgba(255, 255, 255, 0.12); +} + +treeview.view:drop(active) { + border-style: solid none; + border-width: 9999px; + border-color: alpha(currentColor, 0.08); +} + +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-down-symbolic"); + -gtk-icon-transform: rotate(-90deg); + color: rgba(255, 255, 255, 0.7); +} + +treeview.view.expander:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +treeview.view.expander:checked { + -gtk-icon-transform: unset; +} + +treeview.view.expander:hover, treeview.view.expander:active { + color: white; +} + +treeview.view.expander:disabled { + color: rgba(255, 255, 255, 0.3); +} + +treeview.view.progressbar { + border: none; + box-shadow: none; + background-color: #5b9bf8; + background-image: none; + border-radius: 9999px; + color: white; +} + +treeview.view.progressbar:selected, treeview.view.progressbar:selected:hover, treeview.view.progressbar:selected:focus { + box-shadow: none; + background-color: #74aaf9; + color: white; +} + +treeview.view.progressbar:selected:backdrop, treeview.view.progressbar:selected:hover:backdrop, treeview.view.progressbar:selected:focus:backdrop { + color: white; +} + +treeview.view.progressbar:backdrop, treeview.view.progressbar:selected:backdrop { + background-color: rgba(255, 255, 255, 0.3); +} + +treeview.view.trough { + border: none; + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); + background-image: none; + border-radius: 9999px; + padding: 0; + margin: 0; +} + +treeview.view.trough:selected, treeview.view.trough:selected:hover, treeview.view.trough:selected:focus { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view.trough:backdrop, treeview.view.trough:selected:backdrop { + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view header button { + padding: 2px 6px; + border-style: none solid solid none; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + background-clip: border-box; +} + +treeview.view header button:not(:focus):not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +treeview.view header button, treeview.view header button:disabled { + background-color: #2C2C2C; +} + +treeview.view header button:last-child { + border-right-style: none; +} + +treeview.view button.dnd, +treeview.view header.button.dnd { + padding: 2px 6px; + border-style: none solid solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + box-shadow: none; + background-color: #2C2C2C; + background-clip: border-box; + color: #5b9bf8; +} + +treeview.view acceleditor > label { + background-color: #5b9bf8; +} + +/********* + * Menus * + *********/ +menubar, +.menubar { + -GtkWidget-window-dragging: true; + padding: 0; + background-color: #242424; + color: white; + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +menubar:backdrop, +.menubar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.csd menubar, .csd .menubar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > menuitem, +.menubar > menuitem { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + padding: 4px 8px; + color: rgba(255, 255, 255, 0.7); + border-radius: 6px; +} + +menubar > menuitem:hover, +.menubar > menuitem:hover { + transition: none; + background-color: alpha(currentColor, 0.1); + color: white; +} + +menubar > menuitem:disabled, +.menubar > menuitem:disabled { + color: rgba(255, 255, 255, 0.3); +} + +menubar > menuitem label:disabled, +.menubar > menuitem label:disabled { + color: inherit; +} + +.background.popup { + background-color: transparent; +} + +menu, +.menu, +.context-menu { + margin: 6px; + padding: 6px; + background-color: #3C3C3C; + background-clip: border-box; + border-radius: 12px; + border: 1px solid #4b4b4b; +} + +.csd menu, .csd .menu, .csd .context-menu { + border: none; + box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1); +} + +menu menuitem, +.menu menuitem, +.context-menu menuitem { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + min-width: 40px; + padding: 4px 8px; + color: white; + font: initial; + text-shadow: none; + border-radius: 6px; +} + +menu menuitem:hover, +.menu menuitem:hover, +.context-menu menuitem:hover { + background-color: alpha(currentColor, 0.08); +} + +menu menuitem:active, +.menu menuitem:active, +.context-menu menuitem:active { + background-color: alpha(currentColor, 0.12); +} + +menu menuitem:disabled, +.menu menuitem:disabled, +.context-menu menuitem:disabled { + color: rgba(255, 255, 255, 0.5); +} + +menu menuitem accelerator, +.menu menuitem accelerator, +.context-menu menuitem accelerator { + color: rgba(255, 255, 255, 0.7); +} + +menu menuitem:disabled accelerator, +.menu menuitem:disabled accelerator, +.context-menu menuitem:disabled accelerator { + color: rgba(255, 255, 255, 0.3); +} + +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: 8px; +} + +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: 8px; +} + +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 .view:selected, +.menu .view:selected, +.context-menu .view:selected { + background-color: #505050; +} + +menu > arrow, +.menu > arrow, +.context-menu > arrow { + min-height: 16px; + min-width: 16px; + padding: 4px; + background-color: #3C3C3C; + color: rgba(255, 255, 255, 0.7); +} + +menu > arrow.top, +.menu > arrow.top, +.context-menu > arrow.top { + margin-top: 0; + border-radius: 6px; + -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-radius: 6px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +menu > arrow:hover, +.menu > arrow:hover, +.context-menu > arrow:hover { + background-image: image(alpha(currentColor, 0.08)); + color: white; +} + +menu > arrow:disabled, +.menu > arrow:disabled, +.context-menu > arrow:disabled { + border-color: transparent; + background-color: transparent; + color: transparent; +} + +menu separator, +.menu separator, +.context-menu separator { + margin: 4px 0; +} + +/************ + * Popovers * + ************/ +popover.background { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 0; + background-color: #3C3C3C; + border-radius: 12px; +} + +popover.background, .csd popover.background { + border: 1px solid rgba(255, 255, 255, 0.1); + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); + background-clip: border-box; +} + +popover.background:backdrop, .csd popover.background:backdrop { + box-shadow: 0 3px 2px -2px rgba(0, 0, 0, 0.05), 0 2px 3px -1px rgba(0, 0, 0, 0.06), 0 1px 4px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +popover.background > stack { + margin: 0; +} + +popover.background > toolbar { + margin: 0; +} + +popover.background > list, +popover.background > .view, +popover.background > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover.background > scrolledwindow > viewport.frame > list { + background-color: transparent; + padding: 6px; +} + +popover.background > scrolledwindow > viewport.frame > list > row { + border-radius: 6px; + padding: 6px; +} + +popover.background .view:not(:selected), +popover.background toolbar { + background-color: #3C3C3C; +} + +popover.background .linked > button:not(.radio) { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):first-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):last-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):only-child { + border-radius: 6px; +} + +popover.background.menu button, +popover.background button.model { + min-height: 32px; + padding: 0 8px; + border-radius: 6px; +} + +popover.background separator { + margin: 4px 0; +} + +popover.background list separator { + margin: 0; +} + +/************* + * Notebooks * + *************/ +notebook > header tab { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + min-height: 24px; + min-width: 24px; + padding: 3px 12px; + border: none; + outline: none; + background-clip: padding-box; + color: rgba(255, 255, 255, 0.7); + font-weight: 500; + border-radius: 6px; +} + +notebook > header tab:hover { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +notebook > header tab:disabled { + color: rgba(255, 255, 255, 0.3); +} + +notebook > header tab:checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +notebook > header tab:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +frame > paned > notebook > header, notebook.frame > header { + background-color: rgba(255, 255, 255, 0.04); +} + +notebook, notebook.frame { + background-color: #2C2C2C; + border-radius: 12px; +} + +notebook.frame frame > border { + border: none; + border-radius: 6px; +} + +notebook.frame frame > list row.activatable { + border-radius: 6px; +} + +notebook > header { + border: none; + background-color: rgba(255, 255, 255, 0.04); + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +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 { + padding-left: 4px; + padding-right: 4px; +} + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { + margin-left: 0; + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { + margin-right: 0; + -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 { + padding-top: 4px; + padding-bottom: 4px; +} + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { + margin-top: 0; + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { + margin-bottom: 0; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +notebook > header > tabs > arrow { + min-height: 16px; + min-width: 16px; + border-radius: 6px; +} + +notebook > header tab > box { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header tab > box:drop(active) { + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +notebook > header tab button.flat:last-child { + margin-left: 6px; + margin-right: -6px; +} + +notebook > header tab button.flat:first-child { + margin-left: -6px; + margin-right: 6px; +} + +notebook > header tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child { + margin-left: 0; +} + +notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child { + margin-right: 0; +} + +notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child { + margin-top: 0; +} + +notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child { + margin-bottom: 0; +} + +notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page { + border-style: solid; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #2C2C2C; +} + +* { + -GtkScrollbar-has-backward-stepper: false; + -GtkScrollbar-has-forward-stepper: false; +} + +scrollbar.top { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.bottom { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.left { + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.right { + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 8px; + min-height: 8px; + border: 4px solid transparent; + border-radius: 9999px; + background-clip: padding-box; + background-color: rgba(255, 255, 255, 0.5); +} + +scrollbar slider:hover { + background-color: rgba(255, 255, 255, 0.7); +} + +scrollbar slider:active { + background-color: white; +} + +scrollbar slider:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar.fine-tune slider { + min-width: 4px; + min-height: 4px; +} + +scrollbar.fine-tune.horizontal slider { + margin: 2px 0; +} + +scrollbar.fine-tune.vertical slider { + margin: 0 2px; +} + +scrollbar.overlay-indicator:not(.fine-tune) slider { + transition-property: background-color, min-height, min-width; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { + border-color: transparent; + background-color: transparent; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) slider { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: padding-box; + -gtk-icon-source: none; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal slider { + min-width: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { + min-width: 8px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical slider { + min-height: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { + min-height: 8px; +} + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { + background-color: rgba(60, 60, 60, 0.9); +} + +scrollbar.horizontal slider { + min-width: 24px; +} + +scrollbar.vertical slider { + min-height: 24px; +} + +scrollbar button { + min-width: 16px; + min-height: 16px; + padding: 0; + border-radius: 0; +} + +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"); +} + +/********** + * Switch * + **********/ +switch { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + margin: 6px 0; + border: none; + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: padding-box; + font-size: 0; + color: transparent; +} + +switch:checked { + background-color: #5b9bf8; +} + +switch:disabled { + opacity: 0.5; +} + +switch slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 20px; + min-height: 20px; + margin: 0; + border-radius: 9999px; + outline: none; + box-shadow: none; + background-color: white; + border: none; + color: transparent; +} + +switch:focus slider, switch:hover slider, switch:focus:hover slider { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); +} + +/************************* + * Check and Radio items * + *************************/ +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + min-height: 40px; + min-width: 40px; + margin: 0; + padding: 0; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-unchecked-dark.png"), url("assets/selectionmode-checkbox-unchecked-dark@2.png")); +} + +.view.content-view.check:not(list):checked, +.content-view .tile check:not(list):checked { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-checked-dark.png"), url("assets/selectionmode-checkbox-checked-dark@2.png")); +} + +checkbutton, +radiobutton { + outline: none; +} + +checkbutton.text-button, +radiobutton.text-button { + padding: 2px; +} + +checkbutton.text-button label:not(:only-child), +radiobutton.text-button label:not(:only-child) { + margin: 0 4px; +} + +check, +radio { + min-height: 20px; + min-width: 20px; + margin: 3px; + padding: 0; + border-radius: 9999px; + color: transparent; + background-color: rgba(255, 255, 255, 0.12); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +check:hover, +radio:hover { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.04); + background-color: rgba(255, 255, 255, 0.15); +} + +check:active, +radio:active { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); + background-color: rgba(255, 255, 255, 0.2); +} + +check:disabled, +radio:disabled { + background-color: rgba(255, 255, 255, 0.04); +} + +check:checked, check:indeterminate, +radio:checked, +radio:indeterminate { + color: white; + background-color: #5b9bf8; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.15); + background-color: #8cb9fa; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.2); + background-color: #5b9bf8; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(255, 255, 255, 0.5); + background-color: rgba(91, 155, 248, 0.35); +} + +popover modelbutton.flat check, popover modelbutton.flat check:focus, popover modelbutton.flat check:hover, popover modelbutton.flat check:focus:hover, popover modelbutton.flat check:active, popover modelbutton.flat check:disabled, popover modelbutton.flat radio, popover modelbutton.flat radio:focus, popover modelbutton.flat radio:hover, popover modelbutton.flat radio:focus:hover, popover modelbutton.flat radio:active, popover modelbutton.flat radio:disabled { + transition: none; + box-shadow: none; + background-image: none; +} + +popover modelbutton.flat check.left:dir(rtl), popover modelbutton.flat radio.left:dir(rtl) { + margin-left: -3px; + margin-right: 6px; +} + +popover modelbutton.flat check.right:dir(ltr), popover modelbutton.flat radio.right:dir(ltr) { + margin-left: 6px; + margin-right: -3px; +} + +menu menuitem check, menu menuitem radio { + transition: none; + margin: 0; + padding: 0; +} + +menu menuitem check:dir(ltr), menu menuitem radio:dir(ltr) { + margin-right: 6px; + margin-left: -3px; +} + +menu menuitem check:dir(rtl), menu menuitem radio:dir(rtl) { + margin-left: 6px; + margin-right: -3px; +} + +menu menuitem check, menu menuitem check:hover, menu menuitem check:disabled, menu menuitem check:checked:hover, menu menuitem check:indeterminate:hover, menu menuitem radio, menu menuitem radio:hover, menu menuitem radio:disabled, menu menuitem radio:checked:hover, menu menuitem radio:indeterminate:hover { + box-shadow: none; +} + + +check:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/checkbox-checked-symbolic.svg")); +} + + +check:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic.svg")); +} + + +radio:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/radio-checked-symbolic.svg")); +} + + +radio:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/radio-mixed-symbolic.svg")); +} + + +menu menuitem check { + min-height: 16px; + min-width: 16px; +} + + +menu menuitem check:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic.svg")); +} + + +menu menuitem check:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic.svg")); +} + + +menu menuitem radio { + min-height: 16px; + min-width: 16px; +} + + +menu menuitem radio:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-radio-checked-symbolic.svg")); +} + + +menu menuitem radio:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic.svg")); +} + +check:not(:checked):active { + -gtk-icon-transform: rotate(90deg); +} + +check:not(:checked):indeterminate:active, +radio:not(:checked):indeterminate:active { + -gtk-icon-transform: scaleX(-1); +} + +treeview.view radio, treeview.view check { + padding: 0; + margin: 0; +} + +treeview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), treeview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate) { + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view radio, treeview.view radio:hover, treeview.view radio:disabled, treeview.view radio:checked:hover, treeview.view radio:indeterminate:hover, treeview.view check, treeview.view check:hover, treeview.view check:disabled, treeview.view check:checked:hover, treeview.view check:indeterminate:hover { + box-shadow: none; +} + +treeview.view:selected radio:checked, treeview.view:selected radio:indeterminate, treeview.view:selected check:checked, treeview.view:selected check:indeterminate, treeview.view:selected:focus radio:checked, treeview.view:selected:focus radio:indeterminate, treeview.view:selected:focus check:checked, treeview.view:selected:focus check:indeterminate { + background-color: #5b9bf8; + color: white; + background-image: none; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale slider { + min-height: 18px; + min-width: 18px; + margin: -8px; +} + +scale.fine-tune.horizontal { + min-height: 4px; + padding-top: 16px; + padding-bottom: 16px; +} + +scale.fine-tune.vertical { + min-width: 4px; + padding-left: 16px; + padding-right: 16px; +} + +scale.fine-tune slider { + margin: -7px; +} + +scale trough { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + background-color: rgba(255, 255, 255, 0.3); +} + +scale trough:disabled { + background-color: rgba(255, 255, 255, 0.12); +} + +scale highlight { + transition: background-image 0ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#5b9bf8); +} + +scale highlight:disabled { + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.3)); +} + +scale fill { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.3); +} + +scale fill:disabled { + background-color: transparent; +} + +scale slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #5b9bf8; + background-color: #2C2C2C; + box-shadow: 0 0 5px #ccc; +} + +scale slider:active { + box-shadow: 0 0 5px #B3B3B3; +} + +scale slider:disabled { + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3); +} + +scale marks, +scale value { + color: rgba(255, 255, 255, 0.7); +} + +scale indicator { + background-color: rgba(255, 255, 255, 0.3); + color: transparent; +} + +scale.horizontal marks.top { + margin-bottom: 7px; + margin-top: -15px; +} + +scale.horizontal.fine-tune marks.top { + margin-bottom: 6px; + margin-top: -14px; +} + +scale.horizontal marks.bottom { + margin-top: 7px; + margin-bottom: -15px; +} + +scale.horizontal.fine-tune marks.bottom { + margin-top: 6px; + margin-bottom: -14px; +} + +scale.vertical marks.top { + margin-right: 7px; + margin-left: -15px; +} + +scale.vertical.fine-tune marks.top { + margin-right: 6px; + margin-left: -14px; +} + +scale.vertical marks.bottom { + margin-left: 7px; + margin-right: -15px; +} + +scale.vertical.fine-tune marks.bottom { + margin-left: 6px; + margin-right: -14px; +} + +scale.horizontal indicator { + min-height: 8px; + min-width: 1px; +} + +scale.vertical indicator { + min-height: 1px; + min-width: 8px; +} + +scale.horizontal.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-before:not(.marks-after) slider, scale.horizontal.marks-before:not(.marks-after) slider:hover, scale.horizontal.marks-before:not(.marks-after) slider:active, scale.horizontal.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-disabled-dark.png"), url("assets/scale-horz-marks-before-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-after:not(.marks-before) slider, scale.horizontal.marks-after:not(.marks-before) slider:hover, scale.horizontal.marks-after:not(.marks-before) slider:active, scale.horizontal.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-disabled-dark.png"), url("assets/scale-horz-marks-after-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-before:not(.marks-after) slider, scale.vertical.marks-before:not(.marks-after) slider:hover, scale.vertical.marks-before:not(.marks-after) slider:active, scale.vertical.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-disabled-dark.png"), url("assets/scale-vert-marks-before-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-after:not(.marks-before) slider, scale.vertical.marks-after:not(.marks-before) slider:hover, scale.vertical.marks-after:not(.marks-before) slider:active, scale.vertical.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-disabled-dark.png"), url("assets/scale-vert-marks-after-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.color { + min-height: 0; + min-width: 0; +} + +scale.color.horizontal { + padding: 0 0 12px 0; +} + +scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl) { + margin-bottom: -13.5px; + margin-top: 11.5px; +} + +scale.color.vertical:dir(ltr) { + padding: 0 0 0 12px; +} + +scale.color.vertical:dir(ltr) slider { + margin-left: -13.5px; + margin-right: 11.5px; +} + +scale.color.vertical:dir(rtl) { + padding: 0 12px 0 0; +} + +scale.color.vertical:dir(rtl) slider { + margin-right: -13.5px; + margin-left: 11.5px; +} + +/***************** + * Progress bars * + *****************/ +progressbar { + color: rgba(255, 255, 255, 0.7); + font-size: smaller; +} + +progressbar.horizontal trough, +progressbar.horizontal progress { + min-height: 6px; +} + +progressbar.vertical trough, +progressbar.vertical progress { + min-width: 6px; +} + +progressbar trough { + border-radius: 6px; + background-color: rgba(255, 255, 255, 0.12); +} + +progressbar progress { + border-radius: 6px; + background-color: #5b9bf8; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #5b9bf8; +} + +progressbar trough.empty progress { + all: unset; +} + +/************* + * Level Bar * + *************/ +levelbar.horizontal block { + min-height: 6px; +} + +levelbar.horizontal.discrete block { + min-width: 36px; +} + +levelbar.horizontal.discrete block:not(:last-child) { + margin-right: 2px; +} + +levelbar.vertical block { + min-width: 6px; +} + +levelbar.vertical.discrete block { + min-height: 36px; +} + +levelbar.vertical.discrete block:not(:last-child) { + margin-bottom: 2px; +} + +levelbar trough { + border-radius: 6px; +} + +levelbar block.low { + background-color: #FDD633; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #5b9bf8; +} + +levelbar block.full { + background-color: #81C995; +} + +levelbar block.empty { + background-color: rgba(255, 255, 255, 0.12); +} + +/**************** + * Print dialog * +*****************/ +printdialog paper { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + color: white; +} + +printdialog .dialog-action-box { + margin: 12px; +} + +/********** + * Frames * + **********/ +frame > border, +.frame { + margin: 0; + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + border-radius: 0; + box-shadow: none; +} + +frame > border.view, +.frame.view { + border-radius: 6px; +} + +frame > border.flat, +.frame.flat { + border-style: none; +} + +frame.flat > border, statusbar frame > border { + border: none; +} + +actionbar > revealer > box { + padding: 6px; + border-top: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; +} + +.background.csd box.vertical > actionbar > revealer > box { + border-radius: 0 0 14px 14px; +} + +scrolledwindow viewport.frame { + border: none; +} + +stack scrolledwindow.frame viewport.frame list { + border: none; +} + +overshoot.top { + background-image: -gtk-gradient(radial, center top, 0, center top, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, center top, 0, center top, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 100% 5%, 100% 100%; + background-repeat: no-repeat; + background-position: center top; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.bottom { + background-image: -gtk-gradient(radial, center bottom, 0, center bottom, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, center bottom, 0, center bottom, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 100% 5%, 100% 100%; + background-repeat: no-repeat; + background-position: center bottom; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.left { + background-image: -gtk-gradient(radial, left center, 0, left center, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, left center, 0, left center, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 5% 100%, 100% 100%; + background-repeat: no-repeat; + background-position: left center; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.right { + background-image: -gtk-gradient(radial, right center, 0, right center, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, right center, 0, right center, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 5% 100%, 100% 100%; + background-repeat: no-repeat; + background-position: right center; + background-color: transparent; + border: none; + box-shadow: none; +} + +junction { + border-style: solid none none solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +junction:dir(rtl) { + border-style: solid solid none none; +} + +separator { + min-width: 1px; + min-height: 1px; + background-color: rgba(255, 255, 255, 0.12); +} + +placessidebar.sidebar list > separator, stacksidebar.sidebar + separator.vertical, +stacksidebar.sidebar separator.horizontal, button.font separator, button.file separator { + min-width: 0; + min-height: 0; + background-color: transparent; +} + +/********* + * Lists * + *********/ +list.content:not(.conversation-listbox) { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(255, 255, 255, 0.12); +} + +list.content:not(.conversation-listbox) > row { + border-radius: 0; +} + +list.content:not(.conversation-listbox) > row:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:only-child { + border-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:focus { + box-shadow: inset 0 0 0 1000px alpha(currentColor, 0.08); +} + +list { + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +list row { + padding: 3px; +} + +list.navigation-sidebar { + padding: 3px; +} + +list.navigation-sidebar > row { + border-radius: 6px; +} + +treeview.view header button, row.activatable { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; +} + +treeview.view header button:focus, row.activatable:focus { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +treeview.view header button:hover, row.activatable:hover { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms, background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +treeview.view header button.has-open-popup, treeview.view header button:active, row.activatable.has-open-popup, row.activatable:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; +} + +row:selected { + color: inherit; + background-color: rgba(255, 255, 255, 0.12); +} + +row:selected image, +row:selected label { + color: white; +} + +row:selected button image, +row:selected button label { + color: inherit; +} + +row:selected:disabled image, +row:selected:disabled label { + color: rgba(255, 255, 255, 0.5); +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 8px; +} + +.app-notification button.text-button:not(:disabled) { + color: #5b9bf8; +} + +.app-notification.frame, +.app-notification border { + border-style: none; +} + +/************* + * Expanders * + *************/ +expander title > arrow { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); + -gtk-icon-transform: rotate(-90deg); + color: rgba(255, 255, 255, 0.7); +} + +expander title > arrow:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +expander title > arrow:checked { + -gtk-icon-transform: unset; +} + +expander title > arrow:hover, expander title > arrow:active { + color: white; +} + +expander title > arrow:disabled { + color: rgba(255, 255, 255, 0.3); +} + +/************ + * Calendar * + ************/ +calendar { + padding: 1px; + border: 1px solid rgba(255, 255, 255, 0.12); + color: white; +} + +calendar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +calendar:selected { + border-radius: 7px; +} + +calendar.header { + border-style: none none solid; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; +} + +calendar.highlight { + color: rgba(255, 255, 255, 0.7); + font-weight: 500; +} + +calendar:indeterminate { + color: rgba(255, 255, 255, 0.3); +} + +/*********** + * Dialogs * + ***********/ +messagedialog.background { + background-color: #3C3C3C; +} + +messagedialog.background.csd { + border-bottom-left-radius: 14px; + border-bottom-right-radius: 14px; +} + +messagedialog .titlebar { + min-height: 24px; + border-style: none; + box-shadow: none; + background-color: #3C3C3C; + color: white; +} + +messagedialog .titlebar:backdrop { + background-color: #3C3C3C; + color: rgba(255, 255, 255, 0.7); +} + +messagedialog .dialog-action-box { + margin-top: -6px; +} + +messagedialog .dialog-action-box button, messagedialog .dialog-action-box button:first-child, messagedialog .dialog-action-box button:last-child, messagedialog .dialog-action-box .linked:not(.vertical) > button, messagedialog .dialog-action-box .linked:not(.vertical) > button:first-child, messagedialog .dialog-action-box .linked:not(.vertical) > button:last-child { + border-radius: 6px; +} + +messagedialog .dialog-action-box button:not(:last-child), messagedialog .dialog-action-box .linked:not(.vertical) > button:not(:last-child) { + margin-right: 6px; +} + +messagedialog .dialog-action-box button.suggested-action:not(:disabled), messagedialog .dialog-action-box .linked:not(.vertical) > button.suggested-action:not(:disabled) { + color: #5b9bf8; +} + +messagedialog .dialog-action-box button.destructive-action:not(:disabled), messagedialog .dialog-action-box .linked:not(.vertical) > button.destructive-action:not(:disabled) { + color: #F28B82; +} + +.csd filechooser { + background-color: #2C2C2C; + border-radius: 0 0 14px 14px; +} + +filechooser .dialog-action-box { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +filechooser #pathbarbox { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +filechooser stack.view { + background-color: transparent; + padding: 0; +} + +filechooser stack.view scrolledwindow { + background-color: transparent; + border-radius: 0 0 14px 0; +} + +filechooser stack.view scrolledwindow list { + background-color: transparent; +} + +filechooser stack.view > placesview { + background-color: transparent; +} + +filechooser stack.view > placesview > actionbar, filechooser stack.view > placesview > actionbar > revealer > box { + background-color: transparent; +} + +filechooser stack.view frame > border { + border: none; +} + +.csd filechooser placessidebar { + background: none; + border-bottom-left-radius: 14px; +} + +filechooser actionbar, filechooser actionbar > revealer > box { + background-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; +} + +stacksidebar.sidebar:dir(ltr) list, stacksidebar.sidebar.left list, stacksidebar.sidebar.left:dir(rtl) list, .sidebar:not(separator):dir(ltr), .sidebar:not(separator).left { + border-right: 1px solid rgba(255, 255, 255, 0.12); + 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 rgba(255, 255, 255, 0.12); + border-right-style: none; +} + +.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.sidebar list { + padding: 3px; + background-color: #2C2C2C; +} + +stacksidebar.sidebar row { + min-height: 32px; + padding: 0 3px; + border-radius: 6px; +} + +stacksidebar.sidebar row:selected { + background-color: #5b9bf8; + color: white; + font-weight: 500; +} + +stacksidebar.sidebar row:selected label, stacksidebar.sidebar row:selected image { + color: white; +} + +stacksidebar.sidebar row + row { + margin-top: 3px; +} + +stacksidebar.sidebar row > label { + padding-left: 6px; + padding-right: 6px; + color: inherit; +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +row image.sidebar-icon:disabled { + color: rgba(255, 255, 255, 0.3); +} + +placessidebar.sidebar > viewport.frame { + border-style: none; +} + +placessidebar.sidebar list { + padding: 6px; +} + +placessidebar.sidebar row { + min-height: 32px; + margin: 0; + padding: 0; + border-radius: 6px; +} + +placessidebar.sidebar row > revealer { + padding: 0 8px 0 16px; +} + +placessidebar.sidebar row:selected { + background-color: rgba(255, 255, 255, 0.12); + font-weight: 500; +} + +placessidebar.sidebar row:disabled { + color: rgba(255, 255, 255, 0.5); +} + +placessidebar.sidebar row image.sidebar-icon:dir(ltr) { + padding-right: 8px; +} + +placessidebar.sidebar row image.sidebar-icon:dir(rtl) { + padding-left: 8px; +} + +placessidebar.sidebar row label.sidebar-label { + color: inherit; +} + +placessidebar.sidebar row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar.sidebar row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar.sidebar row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar.sidebar row.sidebar-new-bookmark-row { + color: #5b9bf8; +} + +placessidebar.sidebar row.sidebar-new-bookmark-row image.sidebar-icon { + color: #5b9bf8; +} + +placessidebar.sidebar row:drop(active) { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms, background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placesview .server-list-button > image { + -gtk-icon-transform: rotate(0turn); +} + +placesview .server-list-button:checked > image { + -gtk-icon-transform: rotate(-0.5turn); +} + +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(rgba(255, 255, 255, 0.12)); + background-size: 1px 1px; + background-clip: content-box; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.12)), image(rgba(255, 255, 255, 0.12)); + 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; +} + +/************** + * GtkInfoBar * + **************/ +infobar { + border: none; + margin-bottom: 0; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #2C2C2C; +} + +infobar.info > revealer > box button, infobar.info > revealer > box button.text-button:not(:disabled), infobar.info:hover > revealer > box button, infobar.info:hover > revealer > box button.text-button:not(:disabled), infobar.info:backdrop > revealer > box button, infobar.info:backdrop > revealer > box button.text-button:not(:disabled) { + color: #5b9bf8; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #5b9bf8; + color: white; +} + +infobar.action > revealer > box button, infobar.action > revealer > box button:hover, infobar.action > revealer > box button:focus, infobar.action > revealer > box button:active, infobar.action > revealer > box button:checked, infobar.action > revealer > box button.text-button:not(:disabled), infobar.action:backdrop > revealer > box button, infobar.action:backdrop > revealer > box button:hover, infobar.action:backdrop > revealer > box button:focus, infobar.action:backdrop > revealer > box button:active, infobar.action:backdrop > revealer > box button:checked, infobar.action:backdrop > revealer > box button.text-button:not(:disabled), infobar.question > revealer > box button, infobar.question > revealer > box button:hover, infobar.question > revealer > box button:focus, infobar.question > revealer > box button:active, infobar.question > revealer > box button:checked, infobar.question > revealer > box button.text-button:not(:disabled), infobar.question:backdrop > revealer > box button, infobar.question:backdrop > revealer > box button:hover, infobar.question:backdrop > revealer > box button:focus, infobar.question:backdrop > revealer > box button:active, infobar.question:backdrop > revealer > box button:checked, infobar.question:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: white; +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #438cf7; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #FDD633; + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box button, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked, infobar.warning > revealer > box button.text-button:not(:disabled), infobar.warning:backdrop > revealer > box button, infobar.warning:backdrop > revealer > box button:hover, infobar.warning:backdrop > revealer > box button:focus, infobar.warning:backdrop > revealer > box button:active, infobar.warning:backdrop > revealer > box button:checked, infobar.warning:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box *:link, infobar.warning:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning:hover > revealer > box { + background-color: #fdd11a; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box button, infobar.error > revealer > box button:hover, infobar.error > revealer > box button:focus, infobar.error > revealer > box button:active, infobar.error > revealer > box button:checked, infobar.error > revealer > box button.text-button:not(:disabled), infobar.error:backdrop > revealer > box button, infobar.error:backdrop > revealer > box button:hover, infobar.error:backdrop > revealer > box button:focus, infobar.error:backdrop > revealer > box button:active, infobar.error:backdrop > revealer > box button:checked, infobar.error:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error:hover > revealer > box { + background-color: #f0766b; +} + +/************ + * Tooltips * + ************/ +tooltip { + border-radius: 3px; + box-shadow: none; +} + +tooltip.background { + background-color: rgba(25, 25, 25, 0.9); + color: white; +} + +tooltip.background.csd { + border-radius: 6px; +} + +tooltip decoration { + background-color: transparent; +} + +tooltip > box { + margin: -6px; + min-height: 24px; + padding: 4px 8px; +} + +/***************** + * Color Chooser * + *****************/ +colorswatch.top { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.top overlay { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.bottom { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.bottom overlay { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.left, colorswatch:first-child:not(.top) { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.left overlay, colorswatch:first-child:not(.top) overlay { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.right, colorswatch:last-child:not(.bottom) { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.dark { + color: white; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorswatch overlay { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +colorswatch overlay:hover { + box-shadow: 0 0 0 2px #5b9bf8; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; +} + +colorswatch#add-color-button:only-child { + border-radius: 6px; +} + +colorswatch#add-color-button overlay { + background-color: rgba(255, 255, 255, 0.04); +} + +colorswatch#add-color-button overlay:hover { + background-color: rgba(255, 255, 255, 0.12); + box-shadow: none; +} + +colorswatch#add-color-button overlay:active { + background-color: rgba(255, 255, 255, 0.3); +} + +colorswatch:disabled { + opacity: 0.5; +} + +colorswatch:disabled overlay { + box-shadow: none; +} + +colorswatch#editor-color-sample { + border-radius: 12px; +} + +colorswatch#editor-color-sample overlay { + border-radius: 12px; +} + +colorswatch#editor-color-sample overlay:hover { + box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -0.6px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +/******** + * Misc * + ********/ +.content-view { + background-color: #2C2C2C; +} + +/********************** + * Window Decorations * + **********************/ +decoration { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 14px; + box-shadow: 0 8px 6px -5px rgba(0, 0, 0, 0.2), 0 16px 15px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; + margin: 8px; +} + +.csd decoration { + border: 1px solid rgba(255, 255, 255, 0.1); + background-color: #2C2C2C; + background-clip: border-box; +} + +decoration:backdrop { + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; +} + +.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; + border: none; +} + +.ssd decoration { + border: none; + border-radius: 14px 14px 0 0; + box-shadow: 0 3px 3px rgba(0, 0, 0, 0.16), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +.metacity decoration { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + border: none; +} + +.csd.popup decoration { + border-radius: 12px; + border: none; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +tooltip.csd decoration { + border-radius: 12px; + box-shadow: none; + border: none; +} + +messagedialog.csd decoration { + border-radius: 14px; + border: 1px solid rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; + background-clip: border-box; +} + +.solid-csd decoration { + margin: 0; + padding: 2px; + border-radius: 0; + box-shadow: none; + background-color: #242424; + border: 1px solid #4b4b4b; +} + +.solid-csd decoration:backdrop { + background-color: #2C2C2C; +} + +button.titlebutton:not(.suggested-action):not(.destructive-action) { + min-height: 36px; + min-width: 36px; + padding: 0; + margin: 0 4px; +} + +button.minimize.titlebutton:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:not(.suggested-action):not(.destructive-action), button.close.titlebutton:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + background-color: "transparent"; +} + +button.minimize.titlebutton:hover:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:hover:not(.suggested-action):not(.destructive-action), button.close.titlebutton:hover:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.15); +} + +button.minimize.titlebutton:active:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:active:not(.suggested-action):not(.destructive-action), button.close.titlebutton:active:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.2); +} + +button.minimize.titlebutton:backdrop:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:backdrop:not(.suggested-action):not(.destructive-action), button.close.titlebutton:backdrop:not(.suggested-action):not(.destructive-action) { + opacity: 0.65; +} + +.monospace { + font-family: monospace; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #5b9bf8; + -gtk-icon-source: -gtk-recolor(url("assets/scalable/cursor-handle-symbolic.svg")); +} + +cursor-handle.top:dir(ltr), cursor-handle.bottom:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +cursor-handle.bottom:dir(ltr), cursor-handle.top:dir(rtl) { + -gtk-icon-transform: unset; +} + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { + padding-top: 6px; + -gtk-icon-transform: rotate(45deg); +} + +.context-menu { + font: initial; +} + +.keycap { + min-width: 12px; + min-height: 26px; + margin-top: 2px; + padding-bottom: 2px; + padding-left: 8px; + padding-right: 8px; + border: solid 1px rgba(255, 255, 255, 0.12); + border-radius: 7px; + box-shadow: inset 0 -2px rgba(255, 255, 255, 0.12); + background-color: #3C3C3C; + color: white; + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #5b9bf8; +} + +stackswitcher { + min-height: 0; + padding: 3px; + margin: 6px 0; + border-radius: 9px; + background-color: rgba(255, 255, 255, 0.04); + border: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + margin: 0 0; + background-color: transparent; + border-radius: 6px; + padding: 3px 10px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 100px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):focus:not(:hover):not(:checked) { + box-shadow: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +stackswitcher button.text-button { + min-width: 100px; +} + +stackswitcher button.circular, +stackswitcher button.text-button.circular { + min-width: 36px; + min-height: 36px; + padding: 0; +} + +/************* + * App Icons * + *************/ +/********* + * Emoji * + *********/ +popover.emoji-picker { + padding: 0; +} + +popover.emoji-picker entry { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +popover.emoji-picker scrolledwindow { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +button.emoji-section { + margin: 4px; +} + +button.emoji-section:checked { + color: #5b9bf8; +} + +button.emoji-section:not(:last-child) { + margin-right: 0; +} + +popover.emoji-picker .emoji { + min-width: 3em; + min-height: 3em; + padding: 0 8px; +} + +popover.emoji-picker .emoji widget { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; +} + +popover.emoji-picker .emoji widget:hover { + background-color: alpha(currentColor, 0.08); +} + +popover.emoji-completion { + padding: 8px 0; +} + +popover.emoji-completion arrow { + border: none; + background: none; +} + +popover.emoji-completion .emoji-completion-row { + min-height: 28px; + padding: 0 12px; +} + +popover.emoji-completion .emoji:hover { + background-color: alpha(currentColor, 0.08); +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color white; +/* +text color for entries, views and content in general */ +@define-color theme_text_color white; +/* +widget base background color */ +@define-color theme_bg_color #2C2C2C; +/* +text widgets and the like base background color */ +@define-color theme_base_color #2C2C2C; +/* +base background color of selections */ +@define-color theme_selected_bg_color #5b9bf8; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color white; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #2C2C2C; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color rgba(255, 255, 255, 0.5); +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #242424; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color white; +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color white; +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #2C2C2C; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #2C2C2C; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #5b9bf8; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color white; +/* +insensitive color on backdrop windows */ +@define-color unfocused_insensitive_color rgba(255, 255, 255, 0.5); +/* +widgets main borders color */ +@define-color borders rgba(255, 255, 255, 0.12); +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders rgba(255, 255, 255, 0.12); +/* +these are pretty self explicative */ +@define-color warning_color #FDD633; +@define-color error_color #F28B82; +@define-color success_color #81C995; +/* +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 white; +@define-color wm_unfocused_title rgba(255, 255, 255, 0.7); +@define-color wm_highlight rgba(255, 255, 255, 0.1); +@define-color wm_bg #242424; +@define-color wm_unfocused_bg #2C2C2C; +/* +FIXME this is really an API */ +@define-color content_view_bg #2C2C2C; +@define-color placeholder_text_color silver; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #2C2C2C; +@define-color budgie_tasklist_indicator_color white; +@define-color budgie_tasklist_indicator_color_active white; +@define-color budgie_tasklist_indicator_color_active_window #999999; +@define-color budgie_tasklist_indicator_color_attention #FDD633; +@define-color STRAWBERRY_100 #FF9262; +@define-color STRAWBERRY_300 #FF793E; +@define-color STRAWBERRY_500 #F15D22; +@define-color STRAWBERRY_700 #CF3B00; +@define-color STRAWBERRY_900 #AC1800; +@define-color ORANGE_100 #FFDB91; +@define-color ORANGE_300 #FFCA40; +@define-color ORANGE_500 #FAA41A; +@define-color ORANGE_700 #DE8800; +@define-color ORANGE_900 #C26C00; +@define-color BANANA_100 #FFFFA8; +@define-color BANANA_300 #FFFA7D; +@define-color BANANA_500 #FFCE51; +@define-color BANANA_700 #D1A023; +@define-color BANANA_900 #A27100; +@define-color LIME_100 #A2F3BE; +@define-color LIME_300 #8ADBA6; +@define-color LIME_500 #73C48F; +@define-color LIME_700 #479863; +@define-color LIME_900 #1C6D38; +@define-color BLUEBERRY_100 #94A6FF; +@define-color BLUEBERRY_300 #6A7CE0; +@define-color BLUEBERRY_500 #3F51B5; +@define-color BLUEBERRY_700 #213397; +@define-color BLUEBERRY_900 #031579; +@define-color GRAPE_100 #D25DE6; +@define-color GRAPE_300 #B84ACB; +@define-color GRAPE_500 #9C27B0; +@define-color GRAPE_700 #830E97; +@define-color GRAPE_900 #6A007E; +@define-color COCOA_100 #9F9792; +@define-color COCOA_300 #7B736E; +@define-color COCOA_500 #574F4A; +@define-color COCOA_700 #463E39; +@define-color COCOA_900 #342C27; +@define-color SILVER_100 #EEE; +@define-color SILVER_300 #CCC; +@define-color SILVER_500 #AAA; +@define-color SILVER_700 #888; +@define-color SILVER_900 #666; +@define-color SLATE_100 #888; +@define-color SLATE_300 #666; +@define-color SLATE_500 #444; +@define-color SLATE_700 #222; +@define-color SLATE_900 #111; +@define-color BLACK_100 #474341; +@define-color BLACK_300 #403C3A; +@define-color BLACK_500 #393634; +@define-color BLACK_700 #33302F; +@define-color BLACK_900 #2B2928; diff --git a/Cutefish-dark/gtk-3.0/gtk.css b/Cutefish-dark/gtk-3.0/gtk.css new file mode 100644 index 0000000..506b1fe --- /dev/null +++ b/Cutefish-dark/gtk-3.0/gtk.css @@ -0,0 +1,4180 @@ +@keyframes ripple { + to { + background-size: 1000% 1000%; + } +} + +@keyframes ripple-on-slider { + to { + background-size: auto, 1000% 1000%; + } +} + +@keyframes ripple-on-headerbar { + from { + background-image: radial-gradient(circle, #5b9bf8 0%, transparent 0%); + } + to { + background-image: radial-gradient(circle, #5b9bf8 100%, transparent 0%); + } +} + +* { + background-clip: padding-box; + -GtkToolButton-icon-spacing: 0; + -GtkTextView-error-underline-color: #F28B82; + -GtkScrolledWindow-scrollbar-spacing: 0; + -GtkToolItemGroup-expander-size: 11; + -GtkWidget-text-handle-width: 24; + -GtkWidget-text-handle-height: 24; + -GtkDialog-button-spacing: 6; + -GtkDialog-action-area-border: 6; + outline-style: solid; + outline-width: 2px; + outline-color: transparent; + outline-offset: -4px; + -gtk-outline-radius: 6px; + -gtk-secondary-caret-color: #5b9bf8; +} + +*:focus { + outline-color: alpha(currentColor, 0.1); +} + +calendar:selected, treeview.view:selected, modelbutton.flat:selected, +.menuitem.button.flat:selected, .background.csd .view:selected { + color: white; + background-color: alpha(currentColor, 0.1); +} + +flowbox flowboxchild:selected { + color: #5b9bf8; + background-color: rgba(91, 155, 248, 0.2); +} + +spinbutton.vertical selection, spinbutton:not(.vertical) selection, +entry selection, label selection, textview text selection:focus, textview text selection, widget.view:selected, .view:selected { + color: white; + background-color: #5b9bf8; +} + +.linked:not(.vertical) > button, .linked:not(.vertical) > spinbutton.vertical, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry { + border-radius: 0; +} + +.linked:not(.vertical) > button:first-child, .linked:not(.vertical) > spinbutton.vertical:first-child, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.linked:not(.vertical) > button:last-child, .linked:not(.vertical) > spinbutton.vertical:last-child, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > button:only-child, .linked:not(.vertical) > spinbutton.vertical:only-child, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child { + border-radius: 6px; +} + +.linked.vertical > button, .linked.vertical > spinbutton.vertical, .linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry { + border-radius: 0; +} + +.linked.vertical > button:first-child, .linked.vertical > spinbutton.vertical:first-child, .linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > button:last-child, .linked.vertical > spinbutton.vertical:last-child, .linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > button:only-child, .linked.vertical > spinbutton.vertical:only-child, .linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child { + border-radius: 6px; +} + +/*************** + * Base States * + ***************/ +.background { + background-color: #2C2C2C; + color: white; +} + +.background.csd { + border-radius: 0 0 14px 14px; +} + +.background.maximized, .background.solid-csd { + border-radius: 0; +} + +*:disabled { + -gtk-icon-effect: dim; +} + +.gtkstyle-fallback { + background-color: #2C2C2C; + color: white; +} + +.gtkstyle-fallback:hover { + background-color: #1f1f1f; + color: white; +} + +.gtkstyle-fallback:active { + background-color: #131313; + color: white; +} + +.gtkstyle-fallback:disabled { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.5); +} + +.gtkstyle-fallback:selected { + background-color: #5b9bf8; + color: white; +} + +.view { + background-color: #2C2C2C; + color: white; +} + +.view:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +.view:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.view:selected:hover { + box-shadow: none; +} + +window.background.csd > stack.view { + border-radius: 0 0 14px 14px; +} + +textview text { + background-color: #2C2C2C; +} + +textview border { + background-color: #242424; + color: rgba(255, 255, 255, 0.7); +} + +iconview:hover, iconview:selected { + border-radius: 6px; +} + +.rubberband, +rubberband, +.content-view rubberband, +.content-view treeview.view rubberband, +treeview.view .content-view rubberband, +.content-view .rubberband, +treeview.view rubberband, +treeview.view .content-view .rubberband, +.content-view treeview.view .rubberband, +treeview.view flowbox rubberband, +flowbox treeview.view rubberband, +flowbox rubberband, +flowbox treeview.view rubberband, +treeview.view flowbox rubberband, +treeview.view flowbox rubberband, +flowbox treeview.view rubberband { + border: 1px solid #5b9bf8; + background-color: rgba(91, 155, 248, 0.3); +} + +flowbox flowboxchild { + padding: 4px; + border-radius: 6px; +} + +.content-view .tile:selected { + background-color: transparent; +} + +label { + caret-color: currentColor; +} + +label.separator { + color: rgba(255, 255, 255, 0.7); +} + +label:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; +} + +label.osd { + border-radius: 6px; + background-color: rgba(25, 25, 25, 0.9); + color: white; +} + +.dim-label { + color: rgba(255, 255, 255, 0.7); +} + +assistant .sidebar { + padding: 4px 0; +} + +assistant .sidebar label { + min-height: 36px; + padding: 0 12px; + color: rgba(255, 255, 255, 0.5); + font-weight: 500; +} + +assistant .sidebar label.highlight { + color: white; +} + +/********************* + * Spinner Animation * + *********************/ +@keyframes spin { + to { + -gtk-icon-transform: rotate(1turn); + } +} + +spinner { + background: none; + opacity: 0; + -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); +} + +spinner:checked { + opacity: 1; + animation: spin 1s linear infinite; +} + +spinner:checked:disabled { + opacity: 0.5; +} + +/**************** + * Text Entries * + ****************/ +spinbutton.vertical, spinbutton:not(.vertical), +entry { + min-height: 36px; + padding: 0 8px; + border-radius: 6px; + caret-color: currentColor; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.vertical:focus, spinbutton:focus:not(.vertical), +entry:focus { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +spinbutton.vertical:drop(active), spinbutton:drop(active):not(.vertical), +entry:drop(active) { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +spinbutton.vertical:disabled, spinbutton:disabled:not(.vertical), +entry:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.flat.vertical, spinbutton.flat:not(.vertical), +entry.flat { + min-height: 0; + padding: 2px; + border-radius: 0; + background-color: transparent; +} + +spinbutton.vertical image, spinbutton:not(.vertical) image, +entry image { + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical image:hover, spinbutton:not(.vertical) image:hover, spinbutton.vertical image:active, spinbutton:not(.vertical) image:active, +entry image:hover, +entry image:active { + color: white; +} + +spinbutton.vertical image:disabled, spinbutton:not(.vertical) image:disabled, +entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical image.left, spinbutton:not(.vertical) image.left, +entry image.left { + margin-left: 2px; + margin-right: 6px; +} + +spinbutton.vertical image.right, spinbutton:not(.vertical) image.right, +entry image.right { + margin-left: 6px; + margin-right: 2px; +} + +spinbutton.vertical undershoot.left, spinbutton:not(.vertical) undershoot.left, +entry undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.vertical undershoot.right, spinbutton:not(.vertical) undershoot.right, +entry undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.error.vertical, spinbutton.error:not(.vertical), +entry.error { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.error.vertical:focus, spinbutton.error:focus:not(.vertical), +entry.error:focus { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #F28B82; +} + +spinbutton.error.vertical:disabled, spinbutton.error:disabled:not(.vertical), +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.warning.vertical, spinbutton.warning:not(.vertical), +entry.warning { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.warning.vertical:focus, spinbutton.warning:focus:not(.vertical), +entry.warning:focus { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #FDD633; +} + +spinbutton.warning.vertical:disabled, spinbutton.warning:disabled:not(.vertical), +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical progress, spinbutton:not(.vertical) progress, +entry progress { + margin: 2px -8px; + border-bottom: 2px solid #5b9bf8; + background-color: transparent; +} + +treeview entry.flat, treeview entry { + background-color: #2C2C2C; +} + +treeview entry.flat, treeview entry.flat:focus, treeview entry, treeview entry:focus { + border-image: none; + box-shadow: none; +} + +.entry-tag { + margin: 2px; + border-radius: 9999px; + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +.entry-tag:hover { + background-image: image(alpha(currentColor, 0.08)); +} + +:dir(ltr) .entry-tag { + margin-left: 4px; + margin-right: 0; + padding-left: 12px; + padding-right: 8px; +} + +:dir(rtl) .entry-tag { + margin-left: 0; + margin-right: 4px; + padding-left: 8px; + padding-right: 12px; +} + +.entry-tag.button { + box-shadow: none; + background-color: transparent; +} + +.entry-tag.button:not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: -gtk-gradient(radial, center center, 0, center center, 0.001, to(#5b9bf8), to(transparent)); + } + to { + background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(#5b9bf8), to(transparent)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button { + color: rgba(255, 255, 255, 0.7); +} + +infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked { + color: white; +} + +infobar.warning > revealer > box button:disabled { + color: rgba(255, 255, 255, 0.3); +} + +infobar.warning > revealer > box button:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:not(.suggested-action):not(.destructive-action), button { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: rgba(255, 255, 255, 0.08); + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + color: white; +} + +actionbar > revealer > box .linked > button:focus:not(.suggested-action):not(.destructive-action), button:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +actionbar > revealer > box .linked > button:hover:not(.suggested-action):not(.destructive-action), button:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +actionbar > revealer > box .linked > button:active:not(.suggested-action):not(.destructive-action), button:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; +} + +actionbar > revealer > box .linked > button:disabled:not(.suggested-action):not(.destructive-action), button:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:checked:not(.suggested-action):not(.destructive-action), button:checked { + background-color: #5b9bf8; + color: white; +} + +actionbar > revealer > box .linked > button:checked:hover:not(.suggested-action):not(.destructive-action), button:checked:hover { + box-shadow: inset 0 0 0 9999px transparent; +} + +actionbar > revealer > box .linked > button:checked:disabled:not(.suggested-action):not(.destructive-action), button:checked:disabled { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.1); + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.titlebutton:not(.suggested-action):not(.destructive-action), filechooser #pathbarbox > stack > box > button, button.close, button.circular, .inline-toolbar button:not(.text-button) { + border-radius: 9999px; +} + +button.titlebutton:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, button.close label, button.circular label, .inline-toolbar button:not(.text-button) label { + padding: 0; +} + +placessidebar.sidebar row button.sidebar-button, notebook > header tab button.flat, spinbutton.vertical button, spinbutton:not(.vertical) button { + min-height: 24px; + min-width: 24px; + padding: 0; + border-radius: 9999px; +} + +button { + min-height: 24px; + min-width: 16px; + padding: 6px 10px; + border-radius: 6px; + font-weight: 500; +} + +button:drop(active) { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placessidebar.sidebar row button.sidebar-button, calendar.button, treeview.view header button button.circular, row.activatable button.circular, scrollbar button, notebook > header > tabs > arrow, spinbutton.vertical button, spinbutton:not(.vertical) button, modelbutton.flat, +.menuitem.button.flat, filechooser #pathbarbox > stack > box > button, messagedialog .dialog-action-box button, messagedialog .dialog-action-box .linked:not(.vertical) > button, .app-notification button, actionbar > revealer > box button:not(.suggested-action):not(.destructive-action), popover.background.menu button, +popover.background button.model, headerbar button:not(.suggested-action):not(.destructive-action), toolbar button, combobox > .linked:not(.vertical) > button:not(:only-child), button.flat { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), border-image 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + color: rgba(255, 255, 255, 0.7); +} + +placessidebar.sidebar row button.sidebar-button:focus, calendar.button:focus, treeview.view header button button.circular:focus, row.activatable button.circular:focus, scrollbar button:focus, notebook > header > tabs > arrow:focus, spinbutton.vertical button:focus, spinbutton:not(.vertical) button:focus, modelbutton.flat:focus, +.menuitem.button.flat:focus, filechooser #pathbarbox > stack > box > button:focus, messagedialog .dialog-action-box button:focus, messagedialog .dialog-action-box .linked:not(.vertical) > button:focus, .app-notification button:focus, actionbar > revealer > box button:focus:not(.suggested-action):not(.destructive-action), popover.background.menu button:focus, +popover.background button.model:focus, headerbar button:focus:not(.suggested-action):not(.destructive-action), toolbar button:focus, combobox > .linked:not(.vertical) > button:focus:not(:only-child), button.flat:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: white; +} + +placessidebar.sidebar row button.sidebar-button:hover, calendar.button:hover, treeview.view header button button.circular:hover, row.activatable button.circular:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, spinbutton.vertical button:hover, spinbutton:not(.vertical) button:hover, modelbutton.flat:hover, +.menuitem.button.flat:hover, filechooser #pathbarbox > stack > box > button:hover, messagedialog .dialog-action-box button:hover, messagedialog .dialog-action-box .linked:not(.vertical) > button:hover, .app-notification button:hover, actionbar > revealer > box button:hover:not(.suggested-action):not(.destructive-action), popover.background.menu button:hover, +popover.background button.model:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), toolbar button:hover, combobox > .linked:not(.vertical) > button:hover:not(:only-child), button.flat:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: white; +} + +placessidebar.sidebar row button.sidebar-button:active, calendar.button:active, treeview.view header button button.circular:active, row.activatable button.circular:active, scrollbar button:active, notebook > header > tabs > arrow:active, spinbutton.vertical button:active, spinbutton:not(.vertical) button:active, modelbutton.flat:active, +.menuitem.button.flat:active, filechooser #pathbarbox > stack > box > button:active, messagedialog .dialog-action-box button:active, messagedialog .dialog-action-box .linked:not(.vertical) > button:active, .app-notification button:active, actionbar > revealer > box button:active:not(.suggested-action):not(.destructive-action), popover.background.menu button:active, +popover.background button.model:active, headerbar button:active:not(.suggested-action):not(.destructive-action), toolbar button:active, combobox > .linked:not(.vertical) > button:active:not(:only-child), button.flat:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), border-image 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; + color: white; +} + +placessidebar.sidebar row button.sidebar-button:disabled, calendar.button:disabled, treeview.view header button button.circular:disabled, row.activatable button.circular:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, spinbutton.vertical button:disabled, spinbutton:not(.vertical) button:disabled, modelbutton.flat:disabled, +.menuitem.button.flat:disabled, filechooser #pathbarbox > stack > box > button:disabled, messagedialog .dialog-action-box button:disabled, messagedialog .dialog-action-box .linked:not(.vertical) > button:disabled, .app-notification button:disabled, actionbar > revealer > box button:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:disabled, +popover.background button.model:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), toolbar button:disabled, combobox > .linked:not(.vertical) > button:disabled:not(:only-child), button.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +filechooser #pathbarbox > stack > box > button:checked, messagedialog .dialog-action-box button:checked, messagedialog .dialog-action-box .linked:not(.vertical) > button:checked, .app-notification button:checked, actionbar > revealer > box button:checked:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked, +popover.background button.model:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), toolbar button:checked, combobox > .linked:not(.vertical) > button:checked:not(:only-child), button.flat:checked, button.flat:checked:hover { + background-color: alpha(currentColor, 0.1); + color: white; +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, messagedialog .dialog-action-box button:checked:disabled, .app-notification button:checked:disabled, actionbar > revealer > box button:checked:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked:disabled, +popover.background button.model:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), toolbar button:checked:disabled, combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(255, 255, 255, 0.5); +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.text-button.flat { + min-width: 48px; + padding-left: 8px; + padding-right: 8px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child) { + margin: 0 4px; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + border-radius: 6px; +} + +.linked:not(.vertical) > button.flat:not(:only-child).image-button:not(.text-button), .linked.vertical > button.flat:not(:only-child).image-button:not(.text-button) { + border-radius: 9999px; +} + +button.osd { + min-width: 24px; + min-width: 24px; + padding: 12px 16px; + background-color: #5b9bf8; + color: white; +} + +button.osd:hover { + background-color: #6fa7f9; + color: white; +} + +button.osd:active { + background-color: #86b5fa; + color: white; +} + +button.osd.image-button, button.osd.circular { + padding: 12px; +} + +button.osd.image-button > image, button.osd.circular > image { + padding: 0; +} + +button.osd:disabled { + opacity: 0; +} + +button.suggested-action { + background-color: #5b9bf8; + color: white; + box-shadow: none; +} + +button.suggested-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(91, 155, 248, 0.2), 0 4px 3px 0 rgba(91, 155, 248, 0.14), 0 1px 6px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:checked { + background-color: #8cb9fa; +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(91, 155, 248, 0.3), 0 2px 3px -1px rgba(91, 155, 248, 0.24), 0 2px 5px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #5b9bf8; +} + +button.suggested-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.suggested-action.flat:checked { + background-color: rgba(91, 155, 248, 0.3); +} + +button.destructive-action { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); + box-shadow: none; +} + +button.destructive-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(242, 139, 130, 0.2), 0 4px 3px 0 rgba(242, 139, 130, 0.14), 0 1px 6px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:checked { + background-color: rgba(182, 105, 98, 0.961); +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(242, 139, 130, 0.3), 0 2px 3px -1px rgba(242, 139, 130, 0.24), 0 2px 5px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(242, 139, 130, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #F28B82; +} + +button.destructive-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.destructive-action.flat:checked { + background-color: rgba(242, 139, 130, 0.3); +} + +.stack-switcher > button > label { + margin: 0 -6px; + padding: 0 6px; +} + +.stack-switcher > button > image { + margin: -3px -6px; + padding: 3px 6px; +} + +.stack-switcher > button.needs-attention:checked > label, +.stack-switcher > button.needs-attention:checked > image { + animation: none; + background-image: none; +} + +.primary-toolbar button { + -gtk-icon-shadow: none; +} + +button.close, button.circular { + min-width: 24px; + padding: 6px; +} + +stacksidebar.sidebar row.needs-attention > label, .stack-switcher > button.needs-attention > label, +.stack-switcher > button.needs-attention > image { + animation: needs-attention 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-repeat: no-repeat; + background-position: right 3px; + background-size: 6px 6px; +} + +stacksidebar.sidebar row.needs-attention > label:dir(rtl), .stack-switcher > button.needs-attention > label:dir(rtl), +.stack-switcher > button.needs-attention > image:dir(rtl) { + background-position: left 3px; +} + +modelbutton.flat, +.menuitem.button.flat { + min-height: 28px; + padding: 0 8px; + border-radius: 6px; + color: white; +} + +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 { + min-height: 24px; + min-width: 24px; + padding: 6px; +} + +/********* + * Links * + *********/ +*:link { + color: #2196F3; +} + +*:visited { + color: #CE93D8; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #2196F3; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #CE93D8; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton:not(.vertical) { + padding: 0; +} + +spinbutton:not(.vertical) entry { + min-width: 32px; + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +spinbutton:not(.vertical) button { + border: solid 6px transparent; +} + +spinbutton:not(.vertical) button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton:not(.vertical) button.up:dir(ltr), spinbutton:not(.vertical) button.down:dir(rtl) { + margin-left: -3px; +} + +spinbutton:not(.vertical) button.up:dir(rtl), spinbutton:not(.vertical) button.down:dir(ltr) { + margin-right: -3px; +} + +spinbutton.vertical { + padding: 0; +} + +spinbutton.vertical:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical entry { + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical button { + padding: 0; + border: solid 6px transparent; +} + +spinbutton.vertical button:focus:not(:hover):not(:active) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical button.up { + margin: 0 3px; +} + +spinbutton.vertical button.down { + margin: 0 3px; +} + +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: 24px; + min-width: 24px; +} + +combobox decoration { + transition: none; +} + +combobox button.combo cellview:dir(ltr) { + margin-left: -2px; +} + +combobox button.combo cellview:dir(rtl) { + margin-right: -2px; +} + +combobox.linked button:nth-child(2):dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +combobox.linked button:nth-child(2):dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child):first-child { + margin-right: -36px; + padding-right: 36px; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child):last-child { + margin-left: -36px; + padding-left: 36px; +} + +combobox > .linked:not(.vertical) > button:not(:only-child) { + min-height: 16px; + min-width: 16px; + margin: 6px; + padding: 4px; + border-radius: 6px; +} + +.linked:not(.vertical) > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.linked:not(.vertical) > combobox:not(:last-child) > box > button.combo { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.linked.vertical > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.linked.vertical > combobox:not(:last-child) > box > button.combo { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +button.combo:only-child { + border-radius: 6px; + font-weight: normal; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +button.combo:only-child:focus { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3); +} + +button.combo:only-child:hover { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +button.combo:only-child:checked { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +button.combo:only-child:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +/************ + * Toolbars * + ************/ +toolbar { + -GtkWidget-window-dragging: true; + padding: 2px; + background-color: #2C2C2C; +} + +.osd toolbar { + background-color: transparent; +} + +.app-notification, toolbar.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +.app-notification:backdrop, toolbar.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +.left.app-notification, .right.app-notification, .top.app-notification, .bottom.app-notification, toolbar.osd.left, toolbar.osd.right, toolbar.osd.top, toolbar.osd.bottom { + border-radius: 0; +} + +.bottom.app-notification, toolbar.osd.bottom { + box-shadow: none; + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.4)); +} + +toolbar.horizontal > separator { + margin: 2px; +} + +toolbar.vertical > separator { + margin: 2px; +} + +toolbar:not(.inline-toolbar):not(.osd) scale, +toolbar:not(.inline-toolbar):not(.osd) entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton, +toolbar:not(.inline-toolbar):not(.osd) button { + margin: 2px; +} + +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child) { + margin-left: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child) { + margin-right: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton button { + margin: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) switch { + margin: 8px 2px; +} + +.inline-toolbar { + padding: 6px; + border-style: solid; + border-width: 0 1px 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #242424; +} + +searchbar > revealer > box, +.location-bar { + padding: 6px; + border-style: solid; + border-width: 0 0 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; +} + +searchbar > revealer > box { + margin: -6px; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar .linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + border-radius: 6px; +} + +headerbar button:focus:not(.suggested-action):not(.destructive-action), headerbar button:hover:not(.suggested-action):not(.destructive-action), headerbar button:active:not(.suggested-action):not(.destructive-action), headerbar button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action) { + background-color: transparent; + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:focus:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:hover:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:backdrop:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar entry { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +.titlebar entry:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +.titlebar entry image { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar entry image:hover, .titlebar entry image:active { + color: white; +} + +.titlebar entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #242424; + color: white; + border-radius: 14px 14px 0 0; + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.titlebar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.titlebar:backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar .title { + padding: 0 12px; + font-weight: bold; +} + +.titlebar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +.titlebar .subtitle, +.titlebar .dim-label { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +.titlebar .subtitle:backdrop, +.titlebar .dim-label:backdrop { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar .titlebar { + background-color: transparent; + box-shadow: none; +} + +.titlebar + separator, .titlebar + separator.sidebar { + background-color: #242424; + background-image: none; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.titlebar + separator:backdrop, .titlebar + separator.sidebar:backdrop { + background-color: #2C2C2C; +} + +.titlebar.selection-mode + separator, .titlebar.selection-mode + separator.sidebar, .selection-mode .titlebar + separator, .selection-mode .titlebar + separator.sidebar { + background-color: #5b9bf8; +} + +.titlebar.selection-mode + separator:backdrop, .titlebar.selection-mode + separator.sidebar:backdrop, .selection-mode .titlebar + separator:backdrop, .selection-mode .titlebar + separator.sidebar:backdrop { + background-color: #5b9bf8; +} + +.background.csd.unified .titlebar + separator, .background.csd.unified .titlebar + separator.sidebar { + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.titlebar .linked:not(.vertical) > entry { + border-radius: 6px; + margin-left: 3px; + margin-right: 3px; +} + +.titlebar button.suggested-action:disabled, .titlebar button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +.titlebar .path-bar button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 0; + padding-left: 6px; + padding-right: 6px; +} + +.titlebar.selection-mode { + transition: background-color 0.1ms 0ms, color 0ms cubic-bezier(0, 0, 0.2, 1); + animation: ripple-on-headerbar 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2), inset 0 -1px rgba(255, 255, 255, 0.12); + background-color: #5b9bf8; + color: white; +} + +.titlebar.selection-mode:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode .subtitle:link { + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action) { + border-image: radial-gradient(circle closest-corner at center calc(100% - 1px), currentColor 0%, transparent 0%) 0 0 0/0 0 0px; + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):checked { + border-image: radial-gradient(circle closest-corner at center calc(100% - 1px), currentColor 100%, transparent 0%) 0 0 2/0 0 2px; + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:not(.titlebutton) { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:checked { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:checked:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar.selection-mode .selection-menu { + padding-left: 16px; + padding-right: 16px; +} + +.titlebar.selection-mode .selection-menu arrow { + -GtkArrow-arrow-scaling: 1; +} + +.titlebar.selection-mode .selection-menu .arrow { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +.titlebar .selection-mode { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #5b9bf8; +} + +.tiled .titlebar, .tiled-top .titlebar, .tiled-right .titlebar, .tiled-bottom .titlebar, .tiled-left .titlebar, .maximized .titlebar, .fullscreen .titlebar { + border-radius: 0; +} + +.titlebar.default-decoration { + min-height: 24px; + padding: 6px 12px; + border-radius: 14px 14px 0 0; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); +} + +.tiled .titlebar.default-decoration, .maximized .titlebar.default-decoration, .fullscreen .titlebar.default-decoration { + box-shadow: none; + border-radius: 0; +} + +.titlebar.default-decoration button.titlebutton { + min-height: 24px; + min-width: 24px; + margin: 0; + padding: 0; +} + +.background.csd .titlebar.default-decoration { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1), inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.background:not(.csd) .titlebar.default-decoration button.titlebutton:active { + background-size: 1000% 1000%; +} + +.solid-csd .titlebar:dir(rtl), .solid-csd .titlebar:dir(ltr) { + border-radius: 0; + box-shadow: none; +} + +headerbar { + min-height: 48px; + padding: 0 6px; +} + +box.vertical headerbar { + background-color: #242424; +} + +headerbar entry, +headerbar spinbutton, +headerbar button { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar button, headerbar button.image-button { + border-radius: 6px; +} + +headerbar > box.left, +headerbar > box.right { + padding: 0 4px; +} + +headerbar separator.titlebutton, headerbar separator.sidebar { + margin-top: 12px; + margin-bottom: 12px; + background-color: transparent; +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar spinbutton button { + margin-top: 0; + margin-bottom: 0; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action) { + border-radius: 0; + margin: 0; + min-width: 120px; + padding: 0; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action) > stack > box { + padding: 0 12px; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action):focus { + box-shadow: none; +} + +headerbar.windowhandle > button.popup label, headerbar.windowhandle > button.popup image { + min-height: 0; +} + +headerbar.windowhandle viewswitchertitle > squeezer { + margin-top: 0; + margin-bottom: 0; + background: none; +} + +headerbar.windowhandle viewswitchertitle > squeezer > viewswitcher { + margin: 0 0; + background: none; +} + +headerbar.windowhandle viewswitchertitle > squeezer > viewswitcher > box.horizontal > button.radio { + margin: 0; + padding: 0; + border-radius: 0; +} + +/************ + * Pathbars * + ************/ + +.path-bar.linked:not(.vertical) > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 3px; + margin-left: 1px; + margin-right: 1px; + background-color: alpha(currentColor, 0.08); +} + + +.path-bar.linked:not(.vertical) > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +.path-bar.linked:not(.vertical) > button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + + +.path-bar.linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + + +.path-bar.linked:not(.vertical) > button:checked { + background-color: alpha(currentColor, 0.16); + color: white; +} + + +.path-bar.linked:not(.vertical) > button label:not(:only-child):first-child { + margin-left: 0; +} + + +.path-bar.linked:not(.vertical) > button label:not(:only-child):last-child { + margin-right: 0; +} + + +.path-bar.linked:not(.vertical) > button.text-button { + min-width: 0; +} + + +.path-bar.linked:not(.vertical) > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +/************** + * Tree Views * + **************/ +treeview.view { + border-left-color: rgba(255, 255, 255, 0.3); + border-top-color: rgba(255, 255, 255, 0.12); + padding: 3px; +} + +* { + -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; +} + +.csd treeview.view:not(:selected):not(:hover):not(.progressbar):not(.expander):not(.trough):not(.separator) { + background-color: transparent; +} + +treeview.view:hover, treeview.view:selected { + border-radius: 0; +} + +treeview.view.separator { + min-height: 6px; + color: rgba(255, 255, 255, 0.12); +} + +treeview.view:drop(active) { + border-style: solid none; + border-width: 9999px; + border-color: alpha(currentColor, 0.08); +} + +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-down-symbolic"); + -gtk-icon-transform: rotate(-90deg); + color: rgba(255, 255, 255, 0.7); +} + +treeview.view.expander:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +treeview.view.expander:checked { + -gtk-icon-transform: unset; +} + +treeview.view.expander:hover, treeview.view.expander:active { + color: white; +} + +treeview.view.expander:disabled { + color: rgba(255, 255, 255, 0.3); +} + +treeview.view.progressbar { + border: none; + box-shadow: none; + background-color: #5b9bf8; + background-image: none; + border-radius: 9999px; + color: white; +} + +treeview.view.progressbar:selected, treeview.view.progressbar:selected:hover, treeview.view.progressbar:selected:focus { + box-shadow: none; + background-color: #74aaf9; + color: white; +} + +treeview.view.progressbar:selected:backdrop, treeview.view.progressbar:selected:hover:backdrop, treeview.view.progressbar:selected:focus:backdrop { + color: white; +} + +treeview.view.progressbar:backdrop, treeview.view.progressbar:selected:backdrop { + background-color: rgba(255, 255, 255, 0.3); +} + +treeview.view.trough { + border: none; + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); + background-image: none; + border-radius: 9999px; + padding: 0; + margin: 0; +} + +treeview.view.trough:selected, treeview.view.trough:selected:hover, treeview.view.trough:selected:focus { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view.trough:backdrop, treeview.view.trough:selected:backdrop { + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view header button { + padding: 2px 6px; + border-style: none solid solid none; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + background-clip: border-box; +} + +treeview.view header button:not(:focus):not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +treeview.view header button, treeview.view header button:disabled { + background-color: #2C2C2C; +} + +treeview.view header button:last-child { + border-right-style: none; +} + +treeview.view button.dnd, +treeview.view header.button.dnd { + padding: 2px 6px; + border-style: none solid solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + box-shadow: none; + background-color: #2C2C2C; + background-clip: border-box; + color: #5b9bf8; +} + +treeview.view acceleditor > label { + background-color: #5b9bf8; +} + +/********* + * Menus * + *********/ +menubar, +.menubar { + -GtkWidget-window-dragging: true; + padding: 0; + background-color: #242424; + color: white; + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +menubar:backdrop, +.menubar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.csd menubar, .csd .menubar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > menuitem, +.menubar > menuitem { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + padding: 4px 8px; + color: rgba(255, 255, 255, 0.7); + border-radius: 6px; +} + +menubar > menuitem:hover, +.menubar > menuitem:hover { + transition: none; + background-color: alpha(currentColor, 0.1); + color: white; +} + +menubar > menuitem:disabled, +.menubar > menuitem:disabled { + color: rgba(255, 255, 255, 0.3); +} + +menubar > menuitem label:disabled, +.menubar > menuitem label:disabled { + color: inherit; +} + +.background.popup { + background-color: transparent; +} + +menu, +.menu, +.context-menu { + margin: 6px; + padding: 6px; + background-color: #3C3C3C; + background-clip: border-box; + border-radius: 12px; + border: 1px solid #4b4b4b; +} + +.csd menu, .csd .menu, .csd .context-menu { + border: none; + box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1); +} + +menu menuitem, +.menu menuitem, +.context-menu menuitem { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + min-width: 40px; + padding: 4px 8px; + color: white; + font: initial; + text-shadow: none; + border-radius: 6px; +} + +menu menuitem:hover, +.menu menuitem:hover, +.context-menu menuitem:hover { + background-color: alpha(currentColor, 0.08); +} + +menu menuitem:active, +.menu menuitem:active, +.context-menu menuitem:active { + background-color: alpha(currentColor, 0.12); +} + +menu menuitem:disabled, +.menu menuitem:disabled, +.context-menu menuitem:disabled { + color: rgba(255, 255, 255, 0.5); +} + +menu menuitem accelerator, +.menu menuitem accelerator, +.context-menu menuitem accelerator { + color: rgba(255, 255, 255, 0.7); +} + +menu menuitem:disabled accelerator, +.menu menuitem:disabled accelerator, +.context-menu menuitem:disabled accelerator { + color: rgba(255, 255, 255, 0.3); +} + +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: 8px; +} + +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: 8px; +} + +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 .view:selected, +.menu .view:selected, +.context-menu .view:selected { + background-color: #505050; +} + +menu > arrow, +.menu > arrow, +.context-menu > arrow { + min-height: 16px; + min-width: 16px; + padding: 4px; + background-color: #3C3C3C; + color: rgba(255, 255, 255, 0.7); +} + +menu > arrow.top, +.menu > arrow.top, +.context-menu > arrow.top { + margin-top: 0; + border-radius: 6px; + -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-radius: 6px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +menu > arrow:hover, +.menu > arrow:hover, +.context-menu > arrow:hover { + background-image: image(alpha(currentColor, 0.08)); + color: white; +} + +menu > arrow:disabled, +.menu > arrow:disabled, +.context-menu > arrow:disabled { + border-color: transparent; + background-color: transparent; + color: transparent; +} + +menu separator, +.menu separator, +.context-menu separator { + margin: 4px 0; +} + +/************ + * Popovers * + ************/ +popover.background { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 0; + background-color: #3C3C3C; + border-radius: 12px; +} + +popover.background, .csd popover.background { + border: 1px solid rgba(255, 255, 255, 0.1); + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); + background-clip: border-box; +} + +popover.background:backdrop, .csd popover.background:backdrop { + box-shadow: 0 3px 2px -2px rgba(0, 0, 0, 0.05), 0 2px 3px -1px rgba(0, 0, 0, 0.06), 0 1px 4px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +popover.background > stack { + margin: 0; +} + +popover.background > toolbar { + margin: 0; +} + +popover.background > list, +popover.background > .view, +popover.background > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover.background > scrolledwindow > viewport.frame > list { + background-color: transparent; + padding: 6px; +} + +popover.background > scrolledwindow > viewport.frame > list > row { + border-radius: 6px; + padding: 6px; +} + +popover.background .view:not(:selected), +popover.background toolbar { + background-color: #3C3C3C; +} + +popover.background .linked > button:not(.radio) { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):first-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):last-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):only-child { + border-radius: 6px; +} + +popover.background.menu button, +popover.background button.model { + min-height: 32px; + padding: 0 8px; + border-radius: 6px; +} + +popover.background separator { + margin: 4px 0; +} + +popover.background list separator { + margin: 0; +} + +/************* + * Notebooks * + *************/ +notebook > header tab { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + min-height: 24px; + min-width: 24px; + padding: 3px 12px; + border: none; + outline: none; + background-clip: padding-box; + color: rgba(255, 255, 255, 0.7); + font-weight: 500; + border-radius: 6px; +} + +notebook > header tab:hover { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +notebook > header tab:disabled { + color: rgba(255, 255, 255, 0.3); +} + +notebook > header tab:checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +notebook > header tab:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +frame > paned > notebook > header, notebook.frame > header { + background-color: rgba(255, 255, 255, 0.04); +} + +notebook, notebook.frame { + background-color: #2C2C2C; + border-radius: 12px; +} + +notebook.frame frame > border { + border: none; + border-radius: 6px; +} + +notebook.frame frame > list row.activatable { + border-radius: 6px; +} + +notebook > header { + border: none; + background-color: rgba(255, 255, 255, 0.04); + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +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 { + padding-left: 4px; + padding-right: 4px; +} + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { + margin-left: 0; + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { + margin-right: 0; + -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 { + padding-top: 4px; + padding-bottom: 4px; +} + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { + margin-top: 0; + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { + margin-bottom: 0; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +notebook > header > tabs > arrow { + min-height: 16px; + min-width: 16px; + border-radius: 6px; +} + +notebook > header tab > box { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header tab > box:drop(active) { + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +notebook > header tab button.flat:last-child { + margin-left: 6px; + margin-right: -6px; +} + +notebook > header tab button.flat:first-child { + margin-left: -6px; + margin-right: 6px; +} + +notebook > header tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child { + margin-left: 0; +} + +notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child { + margin-right: 0; +} + +notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child { + margin-top: 0; +} + +notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child { + margin-bottom: 0; +} + +notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page { + border-style: solid; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #2C2C2C; +} + +* { + -GtkScrollbar-has-backward-stepper: false; + -GtkScrollbar-has-forward-stepper: false; +} + +scrollbar.top { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.bottom { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.left { + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.right { + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 8px; + min-height: 8px; + border: 4px solid transparent; + border-radius: 9999px; + background-clip: padding-box; + background-color: rgba(255, 255, 255, 0.5); +} + +scrollbar slider:hover { + background-color: rgba(255, 255, 255, 0.7); +} + +scrollbar slider:active { + background-color: white; +} + +scrollbar slider:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar.fine-tune slider { + min-width: 4px; + min-height: 4px; +} + +scrollbar.fine-tune.horizontal slider { + margin: 2px 0; +} + +scrollbar.fine-tune.vertical slider { + margin: 0 2px; +} + +scrollbar.overlay-indicator:not(.fine-tune) slider { + transition-property: background-color, min-height, min-width; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { + border-color: transparent; + background-color: transparent; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) slider { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: padding-box; + -gtk-icon-source: none; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal slider { + min-width: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { + min-width: 8px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical slider { + min-height: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { + min-height: 8px; +} + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { + background-color: rgba(60, 60, 60, 0.9); +} + +scrollbar.horizontal slider { + min-width: 24px; +} + +scrollbar.vertical slider { + min-height: 24px; +} + +scrollbar button { + min-width: 16px; + min-height: 16px; + padding: 0; + border-radius: 0; +} + +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"); +} + +/********** + * Switch * + **********/ +switch { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + margin: 6px 0; + border: none; + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: padding-box; + font-size: 0; + color: transparent; +} + +switch:checked { + background-color: #5b9bf8; +} + +switch:disabled { + opacity: 0.5; +} + +switch slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 20px; + min-height: 20px; + margin: 0; + border-radius: 9999px; + outline: none; + box-shadow: none; + background-color: white; + border: none; + color: transparent; +} + +switch:focus slider, switch:hover slider, switch:focus:hover slider { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); +} + +/************************* + * Check and Radio items * + *************************/ +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + min-height: 40px; + min-width: 40px; + margin: 0; + padding: 0; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-unchecked-dark.png"), url("assets/selectionmode-checkbox-unchecked-dark@2.png")); +} + +.view.content-view.check:not(list):checked, +.content-view .tile check:not(list):checked { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-checked-dark.png"), url("assets/selectionmode-checkbox-checked-dark@2.png")); +} + +checkbutton, +radiobutton { + outline: none; +} + +checkbutton.text-button, +radiobutton.text-button { + padding: 2px; +} + +checkbutton.text-button label:not(:only-child), +radiobutton.text-button label:not(:only-child) { + margin: 0 4px; +} + +check, +radio { + min-height: 20px; + min-width: 20px; + margin: 3px; + padding: 0; + border-radius: 9999px; + color: transparent; + background-color: rgba(255, 255, 255, 0.12); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +check:hover, +radio:hover { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.04); + background-color: rgba(255, 255, 255, 0.15); +} + +check:active, +radio:active { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); + background-color: rgba(255, 255, 255, 0.2); +} + +check:disabled, +radio:disabled { + background-color: rgba(255, 255, 255, 0.04); +} + +check:checked, check:indeterminate, +radio:checked, +radio:indeterminate { + color: white; + background-color: #5b9bf8; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.15); + background-color: #8cb9fa; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.2); + background-color: #5b9bf8; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(255, 255, 255, 0.5); + background-color: rgba(91, 155, 248, 0.35); +} + +popover modelbutton.flat check, popover modelbutton.flat check:focus, popover modelbutton.flat check:hover, popover modelbutton.flat check:focus:hover, popover modelbutton.flat check:active, popover modelbutton.flat check:disabled, popover modelbutton.flat radio, popover modelbutton.flat radio:focus, popover modelbutton.flat radio:hover, popover modelbutton.flat radio:focus:hover, popover modelbutton.flat radio:active, popover modelbutton.flat radio:disabled { + transition: none; + box-shadow: none; + background-image: none; +} + +popover modelbutton.flat check.left:dir(rtl), popover modelbutton.flat radio.left:dir(rtl) { + margin-left: -3px; + margin-right: 6px; +} + +popover modelbutton.flat check.right:dir(ltr), popover modelbutton.flat radio.right:dir(ltr) { + margin-left: 6px; + margin-right: -3px; +} + +menu menuitem check, menu menuitem radio { + transition: none; + margin: 0; + padding: 0; +} + +menu menuitem check:dir(ltr), menu menuitem radio:dir(ltr) { + margin-right: 6px; + margin-left: -3px; +} + +menu menuitem check:dir(rtl), menu menuitem radio:dir(rtl) { + margin-left: 6px; + margin-right: -3px; +} + +menu menuitem check, menu menuitem check:hover, menu menuitem check:disabled, menu menuitem check:checked:hover, menu menuitem check:indeterminate:hover, menu menuitem radio, menu menuitem radio:hover, menu menuitem radio:disabled, menu menuitem radio:checked:hover, menu menuitem radio:indeterminate:hover { + box-shadow: none; +} + + +check:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/checkbox-checked-symbolic.svg")); +} + + +check:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic.svg")); +} + + +radio:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/radio-checked-symbolic.svg")); +} + + +radio:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/radio-mixed-symbolic.svg")); +} + + +menu menuitem check { + min-height: 16px; + min-width: 16px; +} + + +menu menuitem check:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic.svg")); +} + + +menu menuitem check:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic.svg")); +} + + +menu menuitem radio { + min-height: 16px; + min-width: 16px; +} + + +menu menuitem radio:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-radio-checked-symbolic.svg")); +} + + +menu menuitem radio:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic.svg")); +} + +check:not(:checked):active { + -gtk-icon-transform: rotate(90deg); +} + +check:not(:checked):indeterminate:active, +radio:not(:checked):indeterminate:active { + -gtk-icon-transform: scaleX(-1); +} + +treeview.view radio, treeview.view check { + padding: 0; + margin: 0; +} + +treeview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), treeview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate) { + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view radio, treeview.view radio:hover, treeview.view radio:disabled, treeview.view radio:checked:hover, treeview.view radio:indeterminate:hover, treeview.view check, treeview.view check:hover, treeview.view check:disabled, treeview.view check:checked:hover, treeview.view check:indeterminate:hover { + box-shadow: none; +} + +treeview.view:selected radio:checked, treeview.view:selected radio:indeterminate, treeview.view:selected check:checked, treeview.view:selected check:indeterminate, treeview.view:selected:focus radio:checked, treeview.view:selected:focus radio:indeterminate, treeview.view:selected:focus check:checked, treeview.view:selected:focus check:indeterminate { + background-color: #5b9bf8; + color: white; + background-image: none; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale slider { + min-height: 18px; + min-width: 18px; + margin: -8px; +} + +scale.fine-tune.horizontal { + min-height: 4px; + padding-top: 16px; + padding-bottom: 16px; +} + +scale.fine-tune.vertical { + min-width: 4px; + padding-left: 16px; + padding-right: 16px; +} + +scale.fine-tune slider { + margin: -7px; +} + +scale trough { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + background-color: rgba(255, 255, 255, 0.3); +} + +scale trough:disabled { + background-color: rgba(255, 255, 255, 0.12); +} + +scale highlight { + transition: background-image 0ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#5b9bf8); +} + +scale highlight:disabled { + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.3)); +} + +scale fill { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.3); +} + +scale fill:disabled { + background-color: transparent; +} + +scale slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #5b9bf8; + background-color: #2C2C2C; + box-shadow: 0 0 5px #ccc; +} + +scale slider:active { + box-shadow: 0 0 5px #B3B3B3; +} + +scale slider:disabled { + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3); +} + +scale marks, +scale value { + color: rgba(255, 255, 255, 0.7); +} + +scale indicator { + background-color: rgba(255, 255, 255, 0.3); + color: transparent; +} + +scale.horizontal marks.top { + margin-bottom: 7px; + margin-top: -15px; +} + +scale.horizontal.fine-tune marks.top { + margin-bottom: 6px; + margin-top: -14px; +} + +scale.horizontal marks.bottom { + margin-top: 7px; + margin-bottom: -15px; +} + +scale.horizontal.fine-tune marks.bottom { + margin-top: 6px; + margin-bottom: -14px; +} + +scale.vertical marks.top { + margin-right: 7px; + margin-left: -15px; +} + +scale.vertical.fine-tune marks.top { + margin-right: 6px; + margin-left: -14px; +} + +scale.vertical marks.bottom { + margin-left: 7px; + margin-right: -15px; +} + +scale.vertical.fine-tune marks.bottom { + margin-left: 6px; + margin-right: -14px; +} + +scale.horizontal indicator { + min-height: 8px; + min-width: 1px; +} + +scale.vertical indicator { + min-height: 1px; + min-width: 8px; +} + +scale.horizontal.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-before:not(.marks-after) slider, scale.horizontal.marks-before:not(.marks-after) slider:hover, scale.horizontal.marks-before:not(.marks-after) slider:active, scale.horizontal.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-disabled-dark.png"), url("assets/scale-horz-marks-before-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-after:not(.marks-before) slider, scale.horizontal.marks-after:not(.marks-before) slider:hover, scale.horizontal.marks-after:not(.marks-before) slider:active, scale.horizontal.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-disabled-dark.png"), url("assets/scale-horz-marks-after-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-before:not(.marks-after) slider, scale.vertical.marks-before:not(.marks-after) slider:hover, scale.vertical.marks-before:not(.marks-after) slider:active, scale.vertical.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-disabled-dark.png"), url("assets/scale-vert-marks-before-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-after:not(.marks-before) slider, scale.vertical.marks-after:not(.marks-before) slider:hover, scale.vertical.marks-after:not(.marks-before) slider:active, scale.vertical.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-disabled-dark.png"), url("assets/scale-vert-marks-after-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.color { + min-height: 0; + min-width: 0; +} + +scale.color.horizontal { + padding: 0 0 12px 0; +} + +scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl) { + margin-bottom: -13.5px; + margin-top: 11.5px; +} + +scale.color.vertical:dir(ltr) { + padding: 0 0 0 12px; +} + +scale.color.vertical:dir(ltr) slider { + margin-left: -13.5px; + margin-right: 11.5px; +} + +scale.color.vertical:dir(rtl) { + padding: 0 12px 0 0; +} + +scale.color.vertical:dir(rtl) slider { + margin-right: -13.5px; + margin-left: 11.5px; +} + +/***************** + * Progress bars * + *****************/ +progressbar { + color: rgba(255, 255, 255, 0.7); + font-size: smaller; +} + +progressbar.horizontal trough, +progressbar.horizontal progress { + min-height: 6px; +} + +progressbar.vertical trough, +progressbar.vertical progress { + min-width: 6px; +} + +progressbar trough { + border-radius: 6px; + background-color: rgba(255, 255, 255, 0.12); +} + +progressbar progress { + border-radius: 6px; + background-color: #5b9bf8; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #5b9bf8; +} + +progressbar trough.empty progress { + all: unset; +} + +/************* + * Level Bar * + *************/ +levelbar.horizontal block { + min-height: 6px; +} + +levelbar.horizontal.discrete block { + min-width: 36px; +} + +levelbar.horizontal.discrete block:not(:last-child) { + margin-right: 2px; +} + +levelbar.vertical block { + min-width: 6px; +} + +levelbar.vertical.discrete block { + min-height: 36px; +} + +levelbar.vertical.discrete block:not(:last-child) { + margin-bottom: 2px; +} + +levelbar trough { + border-radius: 6px; +} + +levelbar block.low { + background-color: #FDD633; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #5b9bf8; +} + +levelbar block.full { + background-color: #81C995; +} + +levelbar block.empty { + background-color: rgba(255, 255, 255, 0.12); +} + +/**************** + * Print dialog * +*****************/ +printdialog paper { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + color: white; +} + +printdialog .dialog-action-box { + margin: 12px; +} + +/********** + * Frames * + **********/ +frame > border, +.frame { + margin: 0; + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + border-radius: 0; + box-shadow: none; +} + +frame > border.view, +.frame.view { + border-radius: 6px; +} + +frame > border.flat, +.frame.flat { + border-style: none; +} + +frame.flat > border, statusbar frame > border { + border: none; +} + +actionbar > revealer > box { + padding: 6px; + border-top: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; +} + +.background.csd box.vertical > actionbar > revealer > box { + border-radius: 0 0 14px 14px; +} + +scrolledwindow viewport.frame { + border: none; +} + +stack scrolledwindow.frame viewport.frame list { + border: none; +} + +overshoot.top { + background-image: -gtk-gradient(radial, center top, 0, center top, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, center top, 0, center top, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 100% 5%, 100% 100%; + background-repeat: no-repeat; + background-position: center top; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.bottom { + background-image: -gtk-gradient(radial, center bottom, 0, center bottom, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, center bottom, 0, center bottom, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 100% 5%, 100% 100%; + background-repeat: no-repeat; + background-position: center bottom; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.left { + background-image: -gtk-gradient(radial, left center, 0, left center, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, left center, 0, left center, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 5% 100%, 100% 100%; + background-repeat: no-repeat; + background-position: left center; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.right { + background-image: -gtk-gradient(radial, right center, 0, right center, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, right center, 0, right center, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 5% 100%, 100% 100%; + background-repeat: no-repeat; + background-position: right center; + background-color: transparent; + border: none; + box-shadow: none; +} + +junction { + border-style: solid none none solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +junction:dir(rtl) { + border-style: solid solid none none; +} + +separator { + min-width: 1px; + min-height: 1px; + background-color: rgba(255, 255, 255, 0.12); +} + +placessidebar.sidebar list > separator, stacksidebar.sidebar + separator.vertical, +stacksidebar.sidebar separator.horizontal, button.font separator, button.file separator { + min-width: 0; + min-height: 0; + background-color: transparent; +} + +/********* + * Lists * + *********/ +list.content:not(.conversation-listbox) { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(255, 255, 255, 0.12); +} + +list.content:not(.conversation-listbox) > row { + border-radius: 0; +} + +list.content:not(.conversation-listbox) > row:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:only-child { + border-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:focus { + box-shadow: inset 0 0 0 1000px alpha(currentColor, 0.08); +} + +list { + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +list row { + padding: 3px; +} + +list.navigation-sidebar { + padding: 3px; +} + +list.navigation-sidebar > row { + border-radius: 6px; +} + +treeview.view header button, row.activatable { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; +} + +treeview.view header button:focus, row.activatable:focus { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +treeview.view header button:hover, row.activatable:hover { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms, background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +treeview.view header button.has-open-popup, treeview.view header button:active, row.activatable.has-open-popup, row.activatable:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; +} + +row:selected { + color: inherit; + background-color: rgba(255, 255, 255, 0.12); +} + +row:selected image, +row:selected label { + color: white; +} + +row:selected button image, +row:selected button label { + color: inherit; +} + +row:selected:disabled image, +row:selected:disabled label { + color: rgba(255, 255, 255, 0.5); +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 8px; +} + +.app-notification button.text-button:not(:disabled) { + color: #5b9bf8; +} + +.app-notification.frame, +.app-notification border { + border-style: none; +} + +/************* + * Expanders * + *************/ +expander title > arrow { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); + -gtk-icon-transform: rotate(-90deg); + color: rgba(255, 255, 255, 0.7); +} + +expander title > arrow:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +expander title > arrow:checked { + -gtk-icon-transform: unset; +} + +expander title > arrow:hover, expander title > arrow:active { + color: white; +} + +expander title > arrow:disabled { + color: rgba(255, 255, 255, 0.3); +} + +/************ + * Calendar * + ************/ +calendar { + padding: 1px; + border: 1px solid rgba(255, 255, 255, 0.12); + color: white; +} + +calendar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +calendar:selected { + border-radius: 7px; +} + +calendar.header { + border-style: none none solid; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; +} + +calendar.highlight { + color: rgba(255, 255, 255, 0.7); + font-weight: 500; +} + +calendar:indeterminate { + color: rgba(255, 255, 255, 0.3); +} + +/*********** + * Dialogs * + ***********/ +messagedialog.background { + background-color: #3C3C3C; +} + +messagedialog.background.csd { + border-bottom-left-radius: 14px; + border-bottom-right-radius: 14px; +} + +messagedialog .titlebar { + min-height: 24px; + border-style: none; + box-shadow: none; + background-color: #3C3C3C; + color: white; +} + +messagedialog .titlebar:backdrop { + background-color: #3C3C3C; + color: rgba(255, 255, 255, 0.7); +} + +messagedialog .dialog-action-box { + margin-top: -6px; +} + +messagedialog .dialog-action-box button, messagedialog .dialog-action-box button:first-child, messagedialog .dialog-action-box button:last-child, messagedialog .dialog-action-box .linked:not(.vertical) > button, messagedialog .dialog-action-box .linked:not(.vertical) > button:first-child, messagedialog .dialog-action-box .linked:not(.vertical) > button:last-child { + border-radius: 6px; +} + +messagedialog .dialog-action-box button:not(:last-child), messagedialog .dialog-action-box .linked:not(.vertical) > button:not(:last-child) { + margin-right: 6px; +} + +messagedialog .dialog-action-box button.suggested-action:not(:disabled), messagedialog .dialog-action-box .linked:not(.vertical) > button.suggested-action:not(:disabled) { + color: #5b9bf8; +} + +messagedialog .dialog-action-box button.destructive-action:not(:disabled), messagedialog .dialog-action-box .linked:not(.vertical) > button.destructive-action:not(:disabled) { + color: #F28B82; +} + +.csd filechooser { + background-color: #2C2C2C; + border-radius: 0 0 14px 14px; +} + +filechooser .dialog-action-box { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +filechooser #pathbarbox { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +filechooser stack.view { + background-color: transparent; + padding: 0; +} + +filechooser stack.view scrolledwindow { + background-color: transparent; + border-radius: 0 0 14px 0; +} + +filechooser stack.view scrolledwindow list { + background-color: transparent; +} + +filechooser stack.view > placesview { + background-color: transparent; +} + +filechooser stack.view > placesview > actionbar, filechooser stack.view > placesview > actionbar > revealer > box { + background-color: transparent; +} + +filechooser stack.view frame > border { + border: none; +} + +.csd filechooser placessidebar { + background: none; + border-bottom-left-radius: 14px; +} + +filechooser actionbar, filechooser actionbar > revealer > box { + background-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; +} + +stacksidebar.sidebar:dir(ltr) list, stacksidebar.sidebar.left list, stacksidebar.sidebar.left:dir(rtl) list, .sidebar:not(separator):dir(ltr), .sidebar:not(separator).left { + border-right: 1px solid rgba(255, 255, 255, 0.12); + 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 rgba(255, 255, 255, 0.12); + border-right-style: none; +} + +.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.sidebar list { + padding: 3px; + background-color: #2C2C2C; +} + +stacksidebar.sidebar row { + min-height: 32px; + padding: 0 3px; + border-radius: 6px; +} + +stacksidebar.sidebar row:selected { + background-color: #5b9bf8; + color: white; + font-weight: 500; +} + +stacksidebar.sidebar row:selected label, stacksidebar.sidebar row:selected image { + color: white; +} + +stacksidebar.sidebar row + row { + margin-top: 3px; +} + +stacksidebar.sidebar row > label { + padding-left: 6px; + padding-right: 6px; + color: inherit; +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +row image.sidebar-icon:disabled { + color: rgba(255, 255, 255, 0.3); +} + +placessidebar.sidebar > viewport.frame { + border-style: none; +} + +placessidebar.sidebar list { + padding: 6px; +} + +placessidebar.sidebar row { + min-height: 32px; + margin: 0; + padding: 0; + border-radius: 6px; +} + +placessidebar.sidebar row > revealer { + padding: 0 8px 0 16px; +} + +placessidebar.sidebar row:selected { + background-color: rgba(255, 255, 255, 0.12); + font-weight: 500; +} + +placessidebar.sidebar row:disabled { + color: rgba(255, 255, 255, 0.5); +} + +placessidebar.sidebar row image.sidebar-icon:dir(ltr) { + padding-right: 8px; +} + +placessidebar.sidebar row image.sidebar-icon:dir(rtl) { + padding-left: 8px; +} + +placessidebar.sidebar row label.sidebar-label { + color: inherit; +} + +placessidebar.sidebar row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar.sidebar row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar.sidebar row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar.sidebar row.sidebar-new-bookmark-row { + color: #5b9bf8; +} + +placessidebar.sidebar row.sidebar-new-bookmark-row image.sidebar-icon { + color: #5b9bf8; +} + +placessidebar.sidebar row:drop(active) { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms, background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placesview .server-list-button > image { + -gtk-icon-transform: rotate(0turn); +} + +placesview .server-list-button:checked > image { + -gtk-icon-transform: rotate(-0.5turn); +} + +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(rgba(255, 255, 255, 0.12)); + background-size: 1px 1px; + background-clip: content-box; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.12)), image(rgba(255, 255, 255, 0.12)); + 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; +} + +/************** + * GtkInfoBar * + **************/ +infobar { + border: none; + margin-bottom: 0; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #2C2C2C; +} + +infobar.info > revealer > box button, infobar.info > revealer > box button.text-button:not(:disabled), infobar.info:hover > revealer > box button, infobar.info:hover > revealer > box button.text-button:not(:disabled), infobar.info:backdrop > revealer > box button, infobar.info:backdrop > revealer > box button.text-button:not(:disabled) { + color: #5b9bf8; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #5b9bf8; + color: white; +} + +infobar.action > revealer > box button, infobar.action > revealer > box button:hover, infobar.action > revealer > box button:focus, infobar.action > revealer > box button:active, infobar.action > revealer > box button:checked, infobar.action > revealer > box button.text-button:not(:disabled), infobar.action:backdrop > revealer > box button, infobar.action:backdrop > revealer > box button:hover, infobar.action:backdrop > revealer > box button:focus, infobar.action:backdrop > revealer > box button:active, infobar.action:backdrop > revealer > box button:checked, infobar.action:backdrop > revealer > box button.text-button:not(:disabled), infobar.question > revealer > box button, infobar.question > revealer > box button:hover, infobar.question > revealer > box button:focus, infobar.question > revealer > box button:active, infobar.question > revealer > box button:checked, infobar.question > revealer > box button.text-button:not(:disabled), infobar.question:backdrop > revealer > box button, infobar.question:backdrop > revealer > box button:hover, infobar.question:backdrop > revealer > box button:focus, infobar.question:backdrop > revealer > box button:active, infobar.question:backdrop > revealer > box button:checked, infobar.question:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: white; +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #438cf7; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #FDD633; + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box button, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked, infobar.warning > revealer > box button.text-button:not(:disabled), infobar.warning:backdrop > revealer > box button, infobar.warning:backdrop > revealer > box button:hover, infobar.warning:backdrop > revealer > box button:focus, infobar.warning:backdrop > revealer > box button:active, infobar.warning:backdrop > revealer > box button:checked, infobar.warning:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box *:link, infobar.warning:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning:hover > revealer > box { + background-color: #fdd11a; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box button, infobar.error > revealer > box button:hover, infobar.error > revealer > box button:focus, infobar.error > revealer > box button:active, infobar.error > revealer > box button:checked, infobar.error > revealer > box button.text-button:not(:disabled), infobar.error:backdrop > revealer > box button, infobar.error:backdrop > revealer > box button:hover, infobar.error:backdrop > revealer > box button:focus, infobar.error:backdrop > revealer > box button:active, infobar.error:backdrop > revealer > box button:checked, infobar.error:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error:hover > revealer > box { + background-color: #f0766b; +} + +/************ + * Tooltips * + ************/ +tooltip { + border-radius: 3px; + box-shadow: none; +} + +tooltip.background { + background-color: rgba(25, 25, 25, 0.9); + color: white; +} + +tooltip.background.csd { + border-radius: 6px; +} + +tooltip decoration { + background-color: transparent; +} + +tooltip > box { + margin: -6px; + min-height: 24px; + padding: 4px 8px; +} + +/***************** + * Color Chooser * + *****************/ +colorswatch.top { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.top overlay { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.bottom { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.bottom overlay { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.left, colorswatch:first-child:not(.top) { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.left overlay, colorswatch:first-child:not(.top) overlay { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.right, colorswatch:last-child:not(.bottom) { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.dark { + color: white; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorswatch overlay { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +colorswatch overlay:hover { + box-shadow: 0 0 0 2px #5b9bf8; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; +} + +colorswatch#add-color-button:only-child { + border-radius: 6px; +} + +colorswatch#add-color-button overlay { + background-color: rgba(255, 255, 255, 0.04); +} + +colorswatch#add-color-button overlay:hover { + background-color: rgba(255, 255, 255, 0.12); + box-shadow: none; +} + +colorswatch#add-color-button overlay:active { + background-color: rgba(255, 255, 255, 0.3); +} + +colorswatch:disabled { + opacity: 0.5; +} + +colorswatch:disabled overlay { + box-shadow: none; +} + +colorswatch#editor-color-sample { + border-radius: 12px; +} + +colorswatch#editor-color-sample overlay { + border-radius: 12px; +} + +colorswatch#editor-color-sample overlay:hover { + box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -0.6px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +/******** + * Misc * + ********/ +.content-view { + background-color: #2C2C2C; +} + +/********************** + * Window Decorations * + **********************/ +decoration { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 14px; + box-shadow: 0 8px 6px -5px rgba(0, 0, 0, 0.2), 0 16px 15px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; + margin: 8px; +} + +.csd decoration { + border: 1px solid rgba(255, 255, 255, 0.1); + background-color: #2C2C2C; + background-clip: border-box; +} + +decoration:backdrop { + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; +} + +.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; + border: none; +} + +.ssd decoration { + border: none; + border-radius: 14px 14px 0 0; + box-shadow: 0 3px 3px rgba(0, 0, 0, 0.16), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +.metacity decoration { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + border: none; +} + +.csd.popup decoration { + border-radius: 12px; + border: none; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +tooltip.csd decoration { + border-radius: 12px; + box-shadow: none; + border: none; +} + +messagedialog.csd decoration { + border-radius: 14px; + border: 1px solid rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; + background-clip: border-box; +} + +.solid-csd decoration { + margin: 0; + padding: 2px; + border-radius: 0; + box-shadow: none; + background-color: #242424; + border: 1px solid #4b4b4b; +} + +.solid-csd decoration:backdrop { + background-color: #2C2C2C; +} + +button.titlebutton:not(.suggested-action):not(.destructive-action) { + min-height: 36px; + min-width: 36px; + padding: 0; + margin: 0 4px; +} + +button.minimize.titlebutton:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:not(.suggested-action):not(.destructive-action), button.close.titlebutton:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + background-color: "transparent"; +} + +button.minimize.titlebutton:hover:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:hover:not(.suggested-action):not(.destructive-action), button.close.titlebutton:hover:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.15); +} + +button.minimize.titlebutton:active:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:active:not(.suggested-action):not(.destructive-action), button.close.titlebutton:active:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.2); +} + +button.minimize.titlebutton:backdrop:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:backdrop:not(.suggested-action):not(.destructive-action), button.close.titlebutton:backdrop:not(.suggested-action):not(.destructive-action) { + opacity: 0.65; +} + +.monospace { + font-family: monospace; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #5b9bf8; + -gtk-icon-source: -gtk-recolor(url("assets/scalable/cursor-handle-symbolic.svg")); +} + +cursor-handle.top:dir(ltr), cursor-handle.bottom:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +cursor-handle.bottom:dir(ltr), cursor-handle.top:dir(rtl) { + -gtk-icon-transform: unset; +} + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { + padding-top: 6px; + -gtk-icon-transform: rotate(45deg); +} + +.context-menu { + font: initial; +} + +.keycap { + min-width: 12px; + min-height: 26px; + margin-top: 2px; + padding-bottom: 2px; + padding-left: 8px; + padding-right: 8px; + border: solid 1px rgba(255, 255, 255, 0.12); + border-radius: 7px; + box-shadow: inset 0 -2px rgba(255, 255, 255, 0.12); + background-color: #3C3C3C; + color: white; + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #5b9bf8; +} + +stackswitcher { + min-height: 0; + padding: 3px; + margin: 6px 0; + border-radius: 9px; + background-color: rgba(255, 255, 255, 0.04); + border: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + margin: 0 0; + background-color: transparent; + border-radius: 6px; + padding: 3px 10px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 100px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):focus:not(:hover):not(:checked) { + box-shadow: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +stackswitcher button.text-button { + min-width: 100px; +} + +stackswitcher button.circular, +stackswitcher button.text-button.circular { + min-width: 36px; + min-height: 36px; + padding: 0; +} + +/************* + * App Icons * + *************/ +/********* + * Emoji * + *********/ +popover.emoji-picker { + padding: 0; +} + +popover.emoji-picker entry { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +popover.emoji-picker scrolledwindow { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +button.emoji-section { + margin: 4px; +} + +button.emoji-section:checked { + color: #5b9bf8; +} + +button.emoji-section:not(:last-child) { + margin-right: 0; +} + +popover.emoji-picker .emoji { + min-width: 3em; + min-height: 3em; + padding: 0 8px; +} + +popover.emoji-picker .emoji widget { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; +} + +popover.emoji-picker .emoji widget:hover { + background-color: alpha(currentColor, 0.08); +} + +popover.emoji-completion { + padding: 8px 0; +} + +popover.emoji-completion arrow { + border: none; + background: none; +} + +popover.emoji-completion .emoji-completion-row { + min-height: 28px; + padding: 0 12px; +} + +popover.emoji-completion .emoji:hover { + background-color: alpha(currentColor, 0.08); +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color white; +/* +text color for entries, views and content in general */ +@define-color theme_text_color white; +/* +widget base background color */ +@define-color theme_bg_color #2C2C2C; +/* +text widgets and the like base background color */ +@define-color theme_base_color #2C2C2C; +/* +base background color of selections */ +@define-color theme_selected_bg_color #5b9bf8; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color white; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #2C2C2C; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color rgba(255, 255, 255, 0.5); +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #242424; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color white; +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color white; +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #2C2C2C; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #2C2C2C; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #5b9bf8; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color white; +/* +insensitive color on backdrop windows */ +@define-color unfocused_insensitive_color rgba(255, 255, 255, 0.5); +/* +widgets main borders color */ +@define-color borders rgba(255, 255, 255, 0.12); +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders rgba(255, 255, 255, 0.12); +/* +these are pretty self explicative */ +@define-color warning_color #FDD633; +@define-color error_color #F28B82; +@define-color success_color #81C995; +/* +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 white; +@define-color wm_unfocused_title rgba(255, 255, 255, 0.7); +@define-color wm_highlight rgba(255, 255, 255, 0.1); +@define-color wm_bg #242424; +@define-color wm_unfocused_bg #2C2C2C; +/* +FIXME this is really an API */ +@define-color content_view_bg #2C2C2C; +@define-color placeholder_text_color silver; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #2C2C2C; +@define-color budgie_tasklist_indicator_color white; +@define-color budgie_tasklist_indicator_color_active white; +@define-color budgie_tasklist_indicator_color_active_window #999999; +@define-color budgie_tasklist_indicator_color_attention #FDD633; +@define-color STRAWBERRY_100 #FF9262; +@define-color STRAWBERRY_300 #FF793E; +@define-color STRAWBERRY_500 #F15D22; +@define-color STRAWBERRY_700 #CF3B00; +@define-color STRAWBERRY_900 #AC1800; +@define-color ORANGE_100 #FFDB91; +@define-color ORANGE_300 #FFCA40; +@define-color ORANGE_500 #FAA41A; +@define-color ORANGE_700 #DE8800; +@define-color ORANGE_900 #C26C00; +@define-color BANANA_100 #FFFFA8; +@define-color BANANA_300 #FFFA7D; +@define-color BANANA_500 #FFCE51; +@define-color BANANA_700 #D1A023; +@define-color BANANA_900 #A27100; +@define-color LIME_100 #A2F3BE; +@define-color LIME_300 #8ADBA6; +@define-color LIME_500 #73C48F; +@define-color LIME_700 #479863; +@define-color LIME_900 #1C6D38; +@define-color BLUEBERRY_100 #94A6FF; +@define-color BLUEBERRY_300 #6A7CE0; +@define-color BLUEBERRY_500 #3F51B5; +@define-color BLUEBERRY_700 #213397; +@define-color BLUEBERRY_900 #031579; +@define-color GRAPE_100 #D25DE6; +@define-color GRAPE_300 #B84ACB; +@define-color GRAPE_500 #9C27B0; +@define-color GRAPE_700 #830E97; +@define-color GRAPE_900 #6A007E; +@define-color COCOA_100 #9F9792; +@define-color COCOA_300 #7B736E; +@define-color COCOA_500 #574F4A; +@define-color COCOA_700 #463E39; +@define-color COCOA_900 #342C27; +@define-color SILVER_100 #EEE; +@define-color SILVER_300 #CCC; +@define-color SILVER_500 #AAA; +@define-color SILVER_700 #888; +@define-color SILVER_900 #666; +@define-color SLATE_100 #888; +@define-color SLATE_300 #666; +@define-color SLATE_500 #444; +@define-color SLATE_700 #222; +@define-color SLATE_900 #111; +@define-color BLACK_100 #474341; +@define-color BLACK_300 #403C3A; +@define-color BLACK_500 #393634; +@define-color BLACK_700 #33302F; +@define-color BLACK_900 #2B2928; diff --git a/Cutefish-dark/gtk-3.0/thumbnail.png b/Cutefish-dark/gtk-3.0/thumbnail.png new file mode 100644 index 0000000..09ba4d8 Binary files /dev/null and b/Cutefish-dark/gtk-3.0/thumbnail.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/checkbox-checked-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/checkbox-checked-symbolic.svg new file mode 100644 index 0000000..7b89e88 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/checkbox-checked-symbolic@2.svg b/Cutefish-dark/gtk-4.0/assets/scalable/checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..17e3c4a --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/checkbox-mixed-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..b4808a6 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/checkbox-mixed-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/checkbox-mixed-symbolic@2.svg b/Cutefish-dark/gtk-4.0/assets/scalable/checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..3ea0541 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/checkbox-mixed-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/cursor-handle-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/cursor-handle-symbolic.svg new file mode 100644 index 0000000..e2a252b --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/cursor-handle-symbolic.svg @@ -0,0 +1,3 @@ + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/radio-checked-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/radio-checked-symbolic.svg new file mode 100644 index 0000000..67beb46 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/radio-checked-symbolic.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/radio-checked-symbolic@2.svg b/Cutefish-dark/gtk-4.0/assets/scalable/radio-checked-symbolic@2.svg new file mode 100644 index 0000000..bf51d9e --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/radio-checked-symbolic@2.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/radio-mixed-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/radio-mixed-symbolic.svg new file mode 120000 index 0000000..79b7355 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/radio-mixed-symbolic.svg @@ -0,0 +1 @@ +checkbox-mixed-symbolic.svg \ No newline at end of file diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/radio-mixed-symbolic@2.svg b/Cutefish-dark/gtk-4.0/assets/scalable/radio-mixed-symbolic@2.svg new file mode 120000 index 0000000..b68859d --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/radio-mixed-symbolic@2.svg @@ -0,0 +1 @@ +checkbox-mixed-symbolic@2.svg \ No newline at end of file diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..de0d789 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..7f0235f --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg @@ -0,0 +1,47 @@ + + + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/scale-slider-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/scale-slider-symbolic.svg new file mode 100644 index 0000000..4b00bc1 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/scale-slider-symbolic.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..37d9c04 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..1bc5cb6 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic.svg new file mode 100644 index 0000000..4759e32 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic@2.svg b/Cutefish-dark/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..a44f5c9 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..d621934 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg b/Cutefish-dark/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..91c7006 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/small-radio-checked-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/small-radio-checked-symbolic.svg new file mode 100644 index 0000000..f2c9cf9 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/small-radio-checked-symbolic.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/small-radio-checked-symbolic@2.svg b/Cutefish-dark/gtk-4.0/assets/scalable/small-radio-checked-symbolic@2.svg new file mode 100644 index 0000000..a06db4c --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/small-radio-checked-symbolic@2.svg @@ -0,0 +1,39 @@ + + + + + + diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/small-radio-mixed-symbolic.svg b/Cutefish-dark/gtk-4.0/assets/scalable/small-radio-mixed-symbolic.svg new file mode 120000 index 0000000..86dfcec --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/small-radio-mixed-symbolic.svg @@ -0,0 +1 @@ +small-checkbox-mixed-symbolic.svg \ No newline at end of file diff --git a/Cutefish-dark/gtk-4.0/assets/scalable/small-radio-mixed-symbolic@2.svg b/Cutefish-dark/gtk-4.0/assets/scalable/small-radio-mixed-symbolic@2.svg new file mode 120000 index 0000000..bafb558 --- /dev/null +++ b/Cutefish-dark/gtk-4.0/assets/scalable/small-radio-mixed-symbolic@2.svg @@ -0,0 +1 @@ +small-checkbox-mixed-symbolic@2.svg \ No newline at end of file diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-dark.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-dark.png new file mode 100644 index 0000000..00d08bd Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-dark.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-dark@2.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-dark@2.png new file mode 100644 index 0000000..25abeb6 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-dark@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark.png new file mode 100644 index 0000000..bb5607f Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png new file mode 100644 index 0000000..d6065db Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-disabled.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-disabled.png new file mode 100644 index 0000000..5861d66 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-disabled.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-disabled@2.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-disabled@2.png new file mode 100644 index 0000000..52907bf Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider-disabled@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider.png new file mode 100644 index 0000000..29f1fca Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider@2.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider@2.png new file mode 100644 index 0000000..47b16ec Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-after-slider@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-dark.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-dark.png new file mode 100644 index 0000000..22b3bc9 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-dark.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-dark@2.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-dark@2.png new file mode 100644 index 0000000..818c7ed Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-dark@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark.png new file mode 100644 index 0000000..e5f083e Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png new file mode 100644 index 0000000..2e8b6c7 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-disabled.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-disabled.png new file mode 100644 index 0000000..239ca9a Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-disabled.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-disabled@2.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-disabled@2.png new file mode 100644 index 0000000..adc1af7 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider-disabled@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider.png new file mode 100644 index 0000000..3a4aa7f Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider@2.png b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider@2.png new file mode 100644 index 0000000..9dd390f Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-horz-marks-before-slider@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-dark.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-dark.png new file mode 100644 index 0000000..3231d1b Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-dark.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-dark@2.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-dark@2.png new file mode 100644 index 0000000..78cff7e Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-dark@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark.png new file mode 100644 index 0000000..1bd736e Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png new file mode 100644 index 0000000..25f37ab Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-disabled.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-disabled.png new file mode 100644 index 0000000..8e9a3e2 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-disabled.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-disabled@2.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-disabled@2.png new file mode 100644 index 0000000..47f06af Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider-disabled@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider.png new file mode 100644 index 0000000..fedff3d Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider@2.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider@2.png new file mode 100644 index 0000000..6215f7c Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-after-slider@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-dark.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-dark.png new file mode 100644 index 0000000..5679039 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-dark.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-dark@2.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-dark@2.png new file mode 100644 index 0000000..03926a9 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-dark@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark.png new file mode 100644 index 0000000..61283d7 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png new file mode 100644 index 0000000..690689c Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-disabled.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-disabled.png new file mode 100644 index 0000000..040f9f6 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-disabled.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-disabled@2.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-disabled@2.png new file mode 100644 index 0000000..593ef55 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider-disabled@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider.png new file mode 100644 index 0000000..57825fd Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider@2.png b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider@2.png new file mode 100644 index 0000000..b828dae Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/scale-vert-marks-before-slider@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-checked-dark.png b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-checked-dark.png new file mode 100644 index 0000000..8dbedf6 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-checked-dark.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-checked-dark@2.png b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-checked-dark@2.png new file mode 100644 index 0000000..d4b23d5 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-checked-dark@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-checked.png b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-checked.png new file mode 100644 index 0000000..a223d1f Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-checked.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-checked@2.png b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-checked@2.png new file mode 100644 index 0000000..a7723f1 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-checked@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark.png b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark.png new file mode 100644 index 0000000..f6b914e Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark@2.png b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark@2.png new file mode 100644 index 0000000..29ecf2b Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark@2.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-unchecked.png b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-unchecked.png new file mode 100644 index 0000000..40ff92e Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-unchecked.png differ diff --git a/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-unchecked@2.png b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-unchecked@2.png new file mode 100644 index 0000000..8e87ea7 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/assets/selectionmode-checkbox-unchecked@2.png differ diff --git a/Cutefish-dark/gtk-4.0/gtk-dark.css b/Cutefish-dark/gtk-4.0/gtk-dark.css new file mode 100644 index 0000000..89cfeca --- /dev/null +++ b/Cutefish-dark/gtk-4.0/gtk-dark.css @@ -0,0 +1,4645 @@ +/*************** + * Base States * + ***************/ +.background { + background-color: #2C2C2C; + color: white; +} + +dnd { + color: white; +} + +.normal-icons { + -gtk-icon-size: 16px; +} + +.large-icons { + -gtk-icon-size: 32px; +} + +spinner:disabled, +arrow:disabled, +scrollbar:disabled, +check:disabled, +radio:disabled, +treeview.expander:disabled { + -gtk-icon-filter: opacity(0.5); +} + +iconview, .view { + color: white; +} + +iconview:disabled, .view:disabled { + color: rgba(255, 255, 255, 0.5); +} + +iconview:selected, .view:selected { + color: white; +} + +textview text { + background-color: #2C2C2C; +} + +textview border { + background-color: #242424; + color: rgba(255, 255, 255, 0.7); +} + +iconview:hover, iconview:selected { + border-radius: 3px; +} + +rubberband, .content-view rubberband, .content-view columnview.view > rubberband, +.content-view treeview.view > rubberband, .content-view .rubberband, columnview.view > rubberband, .content-view columnview.view > .rubberband, +treeview.view > rubberband, +.content-view treeview.view > .rubberband, gridview > rubberband, flowbox > rubberband { + border: 1px solid #5b9bf8; + background-color: rgba(91, 155, 248, 0.3); +} + +flowbox > flowboxchild { + padding: 4px; + border-radius: 6px; +} + +.content-view .tile:selected { + background-color: transparent; +} + +gridview > child { + padding: 3px; +} + +gridview > child:selected { + outline-color: alpha(currentColor, 0.06); +} + +gridview > child box { + border-spacing: 8px; + margin: 12px; +} + +coverflow cover { + color: white; + background-color: #2C2C2C; + border: 1px solid black; +} + +label.separator { + color: rgba(255, 255, 255, 0.7); +} + +label:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; +} + +label.osd { + border-radius: 6px; + background-color: rgba(25, 25, 25, 0.9); + color: white; +} + +.dim-label { + color: rgba(255, 255, 255, 0.7); +} + +window.assistant .sidebar { + padding: 4px 0; +} + +window.assistant .sidebar label { + min-height: 36px; + padding: 0 12px; + color: rgba(255, 255, 255, 0.5); + font-weight: 500; +} + +window.assistant .sidebar label.highlight { + color: white; +} + +.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: white; + background-color: #2C2C2C; + background-clip: padding-box; + border-radius: 6px; + border: none; +} + +.osd { + padding: 6px; + margin: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12); +} + +.osd.circular { + border-radius: 9999px; +} + +/********************* + * 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; +} + +.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 { + font-weight: 400; + font-size: 9pt; +} + +.caption-heading { + font-weight: 700; + font-size: 9pt; +} + +/**************** + * Text Entries * + ****************/ +spinbutton.vertical, spinbutton:not(.vertical), +entry { + min-height: 36px; + padding: 0 8px; + border-spacing: 6px; + border-radius: 6px; + caret-color: currentColor; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.vertical:focus-within, spinbutton:focus-within:not(.vertical), +entry:focus-within { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +spinbutton.vertical:drop(active), spinbutton:drop(active):not(.vertical), +entry:drop(active) { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +spinbutton.vertical:disabled, spinbutton:disabled:not(.vertical), +entry:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.flat.vertical, spinbutton.flat:not(.vertical), +entry.flat { + min-height: 0; + padding: 2px; + border-radius: 0; + background-color: transparent; +} + +spinbutton.vertical image, spinbutton:not(.vertical) image, +entry image { + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical image:hover, spinbutton:not(.vertical) image:hover, spinbutton.vertical image:active, spinbutton:not(.vertical) image:active, +entry image:hover, +entry image:active { + color: white; +} + +spinbutton.vertical image:disabled, spinbutton:not(.vertical) image:disabled, +entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical image.left, spinbutton:not(.vertical) image.left, +entry image.left { + margin-left: 2px; + margin-right: 6px; +} + +spinbutton.vertical image.right, spinbutton:not(.vertical) image.right, +entry image.right { + margin-left: 6px; + margin-right: 2px; +} + +spinbutton.vertical undershoot.left, spinbutton:not(.vertical) undershoot.left, +entry undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.vertical undershoot.right, spinbutton:not(.vertical) undershoot.right, +entry undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.error.vertical, spinbutton.error:not(.vertical), +entry.error { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.error.vertical:focus-within, spinbutton.error:focus-within:not(.vertical), +entry.error:focus-within { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #F28B82; +} + +spinbutton.error.vertical:disabled, spinbutton.error:disabled:not(.vertical), +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.warning.vertical, spinbutton.warning:not(.vertical), +entry.warning { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.warning.vertical:focus-within, spinbutton.warning:focus-within:not(.vertical), +entry.warning:focus-within { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #FDD633; +} + +spinbutton.warning.vertical:disabled, spinbutton.warning:disabled:not(.vertical), +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical > progress, spinbutton:not(.vertical) > progress, +spinbutton.vertical progress > trough > progress, +spinbutton:not(.vertical) progress > trough > progress, +entry > progress, +entry progress > trough > progress { + margin: 2px -8px; + border-bottom: 2px solid #5b9bf8; + background-color: transparent; +} + +treeview entry.flat, treeview entry { + background-color: #2C2C2C; +} + +treeview entry.flat, treeview entry.flat:focus-within, treeview entry, treeview entry:focus-within { + border-image: none; + box-shadow: none; +} + +.entry-tag { + margin: 2px; + border-radius: 9999px; + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +.entry-tag:hover { + background-image: image(alpha(currentColor, 0.08)); +} + +:dir(ltr) .entry-tag { + margin-left: 4px; + margin-right: 0; + padding-left: 12px; + padding-right: 8px; +} + +:dir(rtl) .entry-tag { + margin-left: 0; + margin-right: 4px; + padding-left: 8px; + padding-right: 12px; +} + +.entry-tag.button { + box-shadow: none; + background-color: transparent; +} + +.entry-tag.button:not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +editablelabel > stack > text { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: radial-gradient(farthest-side, #5b9bf8 0%, rgba(91, 155, 248, 0) 0%); + } + to { + background-image: radial-gradient(farthest-side, #5b9bf8 95%, rgba(91, 155, 248, 0)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button, popover.background.touch-selection button, popover.background.magnifier button, headerbar.selection-mode button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +infobar.warning > revealer > box button:focus, popover.background.touch-selection button:focus, popover.background.magnifier button:focus, headerbar.selection-mode button:focus:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:hover, popover.background.touch-selection button:hover, popover.background.magnifier button:hover, headerbar.selection-mode button:hover:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:active, popover.background.touch-selection button:active, popover.background.magnifier button:active, headerbar.selection-mode button:active:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:checked, popover.background.touch-selection button:checked, popover.background.magnifier button:checked, headerbar.selection-mode button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +infobar.warning > revealer > box button:disabled, popover.background.touch-selection button:disabled, popover.background.magnifier button:disabled, headerbar.selection-mode button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +infobar.warning > revealer > box button:checked:disabled, popover.background.touch-selection button:checked:disabled, popover.background.magnifier button:checked:disabled, headerbar.selection-mode button:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:not(.suggested-action):not(.destructive-action), button { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +actionbar > revealer > box .linked > button:focus:not(.suggested-action):not(.destructive-action), button:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +actionbar > revealer > box .linked > button:hover:not(.suggested-action):not(.destructive-action), button:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +actionbar > revealer > box .linked > button:active:not(.suggested-action):not(.destructive-action), button:active { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + +actionbar > revealer > box .linked > button:disabled:not(.suggested-action):not(.destructive-action), button:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:checked:not(.suggested-action):not(.destructive-action), button:checked { + background-color: #5b9bf8; + color: white; +} + +actionbar > revealer > box .linked > button:checked:hover:not(.suggested-action):not(.destructive-action), button:checked:hover { + box-shadow: inset 0 0 0 9999px transparent; +} + +actionbar > revealer > box .linked > button:checked:disabled:not(.suggested-action):not(.destructive-action), button:checked:disabled { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.1); + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button { + min-height: 24px; + min-width: 16px; + padding: 6px 10px; + border-radius: 6px; + font-weight: 500; +} + +button:drop(active) { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placessidebar .navigation-sidebar > row button.sidebar-button, calendar > header > button, columnview.view > header > button button.circular, +treeview.view > header > button button.circular, row.activatable button.circular, scrollbar button, notebook > header > tabs > arrow, spinbutton.vertical > button, spinbutton:not(.vertical) > button, modelbutton.flat, filechooser #pathbarbox > stack > box > button, window.dialog.message .dialog-action-area > button, .app-notification button, actionbar > revealer > box button:not(.suggested-action):not(.destructive-action), popover.background.menu button, +popover.background button.model, headerbar button:not(.suggested-action):not(.destructive-action), .toolbar button, +toolbar button, dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child), button.flat { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: transparent; + color: rgba(255, 255, 255, 0.7); +} + +placessidebar .navigation-sidebar > row button.sidebar-button:focus, calendar > header > button:focus, columnview.view > header > button button.circular:focus, +treeview.view > header > button button.circular:focus, row.activatable button.circular:focus, scrollbar button:focus, notebook > header > tabs > arrow:focus, spinbutton.vertical > button:focus, spinbutton:not(.vertical) > button:focus, modelbutton.flat:focus, filechooser #pathbarbox > stack > box > button:focus, window.dialog.message .dialog-action-area > button:focus, .app-notification button:focus, actionbar > revealer > box button:focus:not(.suggested-action):not(.destructive-action), popover.background.menu button:focus, +popover.background button.model:focus, headerbar button:focus:not(.suggested-action):not(.destructive-action), .toolbar button:focus, +toolbar button:focus, dropdown > .linked:not(.vertical) > button:focus:not(:only-child), +combobox > .linked:not(.vertical) > button:focus:not(:only-child), button.flat:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: white; +} + +placessidebar .navigation-sidebar > row button.sidebar-button:hover, calendar > header > button:hover, columnview.view > header > button button.circular:hover, +treeview.view > header > button button.circular:hover, row.activatable button.circular:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, spinbutton.vertical > button:hover, spinbutton:not(.vertical) > button:hover, modelbutton.flat:hover, filechooser #pathbarbox > stack > box > button:hover, window.dialog.message .dialog-action-area > button:hover, .app-notification button:hover, actionbar > revealer > box button:hover:not(.suggested-action):not(.destructive-action), popover.background.menu button:hover, +popover.background button.model:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), .toolbar button:hover, +toolbar button:hover, dropdown > .linked:not(.vertical) > button:hover:not(:only-child), +combobox > .linked:not(.vertical) > button:hover:not(:only-child), button.flat:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: white; +} + +placessidebar .navigation-sidebar > row button.sidebar-button:active, calendar > header > button:active, columnview.view > header > button button.circular:active, +treeview.view > header > button button.circular:active, row.activatable button.circular:active, scrollbar button:active, notebook > header > tabs > arrow:active, spinbutton.vertical > button:active, spinbutton:not(.vertical) > button:active, modelbutton.flat:active, filechooser #pathbarbox > stack > box > button:active, window.dialog.message .dialog-action-area > button:active, .app-notification button:active, actionbar > revealer > box button:active:not(.suggested-action):not(.destructive-action), popover.background.menu button:active, +popover.background button.model:active, headerbar button:active:not(.suggested-action):not(.destructive-action), .toolbar button:active, +toolbar button:active, dropdown > .linked:not(.vertical) > button:active:not(:only-child), +combobox > .linked:not(.vertical) > button:active:not(:only-child), button.flat:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); + color: white; +} + +placessidebar .navigation-sidebar > row button.sidebar-button:disabled, calendar > header > button:disabled, columnview.view > header > button button.circular:disabled, +treeview.view > header > button button.circular:disabled, row.activatable button.circular:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, spinbutton.vertical > button:disabled, spinbutton:not(.vertical) > button:disabled, modelbutton.flat:disabled, filechooser #pathbarbox > stack > box > button:disabled, window.dialog.message .dialog-action-area > button:disabled, .app-notification button:disabled, actionbar > revealer > box button:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:disabled, +popover.background button.model:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:disabled, +toolbar button:disabled, dropdown > .linked:not(.vertical) > button:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:disabled:not(:only-child), button.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +filechooser #pathbarbox > stack > box > button:checked, window.dialog.message .dialog-action-area > button:checked, .app-notification button:checked, actionbar > revealer > box button:checked:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked, +popover.background button.model:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), .toolbar button:checked, +toolbar button:checked, dropdown > .linked:not(.vertical) > button:checked:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:not(:only-child), button.flat:checked, button.flat:checked:hover { + background-color: alpha(currentColor, 0.1); + color: white; +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, window.dialog.message .dialog-action-area > button:checked:disabled, .app-notification button:checked:disabled, actionbar > revealer > box button:checked:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked:disabled, +popover.background button.model:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:checked:disabled, +toolbar button:checked:disabled, dropdown > .linked:not(.vertical) > button:checked:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(255, 255, 255, 0.5); +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.text-button.flat { + min-width: 48px; + padding-left: 8px; + padding-right: 8px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child) { + margin: 0 4px; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + border-radius: 6px; +} + +.linked:not(.vertical) > button.flat:focus, .linked.vertical > button.flat:focus { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +button.osd { + padding: 12px 16px; +} + +button.osd.image-button { + padding: 12px; +} + +button.osd:disabled { + opacity: 0; +} + +button.suggested-action { + background-color: #5b9bf8; + color: white; + box-shadow: none; +} + +button.suggested-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(91, 155, 248, 0.2), 0 4px 3px 0 rgba(91, 155, 248, 0.14), 0 1px 6px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:checked { + background-color: #8cb9fa; +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(91, 155, 248, 0.3), 0 2px 3px -1px rgba(91, 155, 248, 0.24), 0 2px 5px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #5b9bf8; +} + +button.suggested-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.suggested-action.flat:checked { + background-color: rgba(91, 155, 248, 0.3); +} + +button.destructive-action { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); + box-shadow: none; +} + +button.destructive-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(242, 139, 130, 0.2), 0 4px 3px 0 rgba(242, 139, 130, 0.14), 0 1px 6px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:checked { + background-color: rgba(182, 105, 98, 0.961); +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(242, 139, 130, 0.3), 0 2px 3px -1px rgba(242, 139, 130, 0.24), 0 2px 5px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(242, 139, 130, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #F28B82; +} + +button.destructive-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.destructive-action.flat:checked { + background-color: rgba(242, 139, 130, 0.3); +} + +stackswitcher > button > label { + margin: 0 -6px; + padding: 0 6px; +} + +stackswitcher > button > image { + margin: -3px -6px; + padding: 3px 6px; +} + +stackswitcher > button.needs-attention:checked > label, +stackswitcher > button.needs-attention:checked > image { + animation: none; + background-image: none; +} + +button.font > box, button.file > box { + border-spacing: 6px; +} + +button.font > box > box > label, button.file > box > box > label { + font-weight: bold; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action), filechooser #pathbarbox > stack > box > button, button.close, button.circular { + border-radius: 9999px; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, button.close label, button.circular label { + padding: 0; +} + +placessidebar .navigation-sidebar > row button.sidebar-button, notebook > header tab button.flat, popover.menu box.circular-buttons button.circular.image-button.model, spinbutton.vertical > button, spinbutton:not(.vertical) > button { + min-height: 24px; + min-width: 24px; + padding: 0; + border-radius: 9999px; +} + +stacksidebar row.needs-attention > label, stackswitcher > button.needs-attention > label, +stackswitcher > button.needs-attention > image { + animation: needs-attention 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-repeat: no-repeat; + background-position: right 3px; + background-size: 6px 6px; +} + +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; +} + +.linked:not(.vertical) > spinbutton.vertical, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry, .linked:not(.vertical) > button, .linked:not(.vertical) > button.image-button { + border-radius: 0; +} + +.linked:not(.vertical) > spinbutton.vertical:first-child, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child, .linked:not(.vertical) > button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.linked:not(.vertical) > spinbutton.vertical:last-child, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child, .linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > spinbutton.vertical:only-child, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child, .linked:not(.vertical) > button:only-child { + border-radius: 6px; +} + +.linked.vertical > spinbutton.vertical, .linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry, .linked.vertical > button, .linked.vertical > button.image-button { + border-radius: 0; +} + +.linked.vertical > spinbutton.vertical:first-child, .linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child, .linked.vertical > button:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > spinbutton.vertical:last-child, .linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child, .linked.vertical > button:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > spinbutton.vertical:only-child, .linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child, .linked.vertical > button:only-child { + border-radius: 6px; +} + +/* menu buttons */ +modelbutton.flat { + min-height: 28px; + padding: 0 9px; + border-radius: 6px; + color: white; +} + +modelbutton.flat arrow.left { + -gtk-icon-source: -gtk-icontheme("go-previous-symbolic"); +} + +modelbutton.flat arrow.right { + -gtk-icon-source: -gtk-icontheme("go-next-symbolic"); +} + +button.color { + min-height: 24px; + min-width: 24px; + padding: 6px; +} + + +list > row button.image-button:not(.flat) { + background-color: transparent; + box-shadow: none; + border: none; +} + + +list > row button.image-button:not(.flat):hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + + +list > row button.image-button:not(.flat):active, +list > row button.image-button:not(.flat):checked { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + + +list > row button.image-button:not(.flat).suggested-action { + background-color: #5b9bf8; + color: white; +} + + +list > row button.image-button:not(.flat).destructive-action { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); +} + +/********* + * Links * + *********/ +link { + color: #2196F3; +} + +link:visited { + color: #CE93D8; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #2196F3; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #CE93D8; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton:not(.vertical) { + padding: 0; + border-spacing: 0; +} + +spinbutton:not(.vertical) > text { + min-width: 32px; + margin: 0; + padding-left: 12px; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +spinbutton:not(.vertical) > button { + border: solid 6px transparent; +} + +spinbutton:not(.vertical) > button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton:not(.vertical) > button.up:dir(ltr), spinbutton:not(.vertical) > button.down:dir(rtl) { + margin-left: -3px; +} + +spinbutton:not(.vertical) > button.up:dir(rtl), spinbutton:not(.vertical) > button.down:dir(ltr) { + margin-right: -3px; +} + +spinbutton.vertical { + padding: 0; +} + +spinbutton.vertical:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical > text { + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical > button { + padding: 0; + border: solid 6px transparent; +} + +spinbutton.vertical > button:focus:not(:hover):not(:active) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical > button.up { + margin: 0 3px; +} + +spinbutton.vertical > button.down { + margin: 0 3px; +} + +treeview spinbutton:not(.vertical), row spinbutton:not(.vertical) { + min-height: 0; + border-style: none; + border-radius: 0; +} + +treeview spinbutton:not(.vertical) > text, row 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 button.combo cellview:dir(ltr), +combobox button.combo cellview:dir(ltr) { + margin-left: -2px; +} + +dropdown button.combo cellview:dir(rtl), +combobox button.combo cellview:dir(rtl) { + margin-right: -2px; +} + +dropdown popover, +combobox popover { + margin-top: 4px; + padding: 0; +} + +dropdown popover listview, +combobox popover listview { + margin: 6px 0; +} + +dropdown popover listview > row, +combobox popover listview > row { + padding: 6px; +} + +dropdown popover listview > row:selected, +combobox popover listview > row:selected { + color: white; + background-color: alpha(currentColor, 0.06); +} + +dropdown popover .dropdown-searchbar, +combobox popover .dropdown-searchbar { + padding: 6px; +} + +dropdown.linked button:nth-child(2):dir(ltr), +combobox.linked button:nth-child(2):dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +dropdown.linked button:nth-child(2):dir(rtl), +combobox.linked button:nth-child(2):dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child), +combobox > .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child):first-child, +combobox > .linked:not(.vertical) > entry:not(:only-child):first-child { + margin-right: -36px; + padding-right: 36px; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child):last-child, +combobox > .linked:not(.vertical) > entry:not(:only-child):last-child { + margin-left: -36px; + padding-left: 36px; +} + +dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child) { + min-height: 16px; + min-width: 16px; + margin: 6px; + padding: 4px; + border-radius: 6px; +} + +.linked:not(.vertical) > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.linked:not(.vertical) > combobox:not(:last-child) > box > button.combo { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.linked.vertical > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.linked.vertical > combobox:not(:last-child) > box > button.combo { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +button.combo:only-child { + border-radius: 6px; + font-weight: normal; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +button.combo:only-child:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: white; +} + +button.combo:only-child:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: white; +} + +button.combo:only-child:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); + color: white; +} + +button.combo:only-child:checked { + background-color: alpha(currentColor, 0.1); + color: white; +} + +button.combo:only-child:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +/************ + * Toolbars * + ************/ +.toolbar, +toolbar { + padding: 3px 6px; + background-color: #2C2C2C; + border-spacing: 6px; +} + +.osd .toolbar, .osd toolbar { + background-color: transparent; +} + +.app-notification, .toolbar.osd, +toolbar.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +.app-notification:backdrop, .toolbar.osd:backdrop, +toolbar.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +.left.app-notification, .right.app-notification, .top.app-notification, .bottom.app-notification, .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; +} + +.bottom.app-notification, .toolbar.osd.bottom, +toolbar.osd.bottom { + box-shadow: none; + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.4)); +} + +.toolbar.horizontal > separator, +toolbar.horizontal > separator { + margin: 2px; +} + +.toolbar.vertical > separator, +toolbar.vertical > separator { + margin: 2px; +} + +.toolbar:not(.inline-toolbar):not(.osd) scale, +.toolbar:not(.inline-toolbar):not(.osd) entry, +.toolbar:not(.inline-toolbar):not(.osd) spinbutton, +.toolbar:not(.inline-toolbar):not(.osd) button, +toolbar:not(.inline-toolbar):not(.osd) scale, +toolbar:not(.inline-toolbar):not(.osd) entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton, +toolbar:not(.inline-toolbar):not(.osd) button { + margin: 2px; +} + +.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child) { + margin-left: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child) { + margin-right: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +.toolbar:not(.inline-toolbar):not(.osd) spinbutton button, +toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton button { + margin: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) switch, +toolbar:not(.inline-toolbar):not(.osd) switch { + margin: 8px 2px; +} + +.toolbar button { + margin: 1px; + border-radius: 3px; +} + +searchbar > revealer > box { + padding: 6px; + border-spacing: 6px; + border-style: solid; + border-width: 0 0 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + border: none; +} + +headerbar .linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + border-radius: 6px; +} + +headerbar button:focus:not(.suggested-action):not(.destructive-action), headerbar button:hover:not(.suggested-action):not(.destructive-action), headerbar button:active:not(.suggested-action):not(.destructive-action), headerbar button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action) { + background-color: transparent; + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:focus:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:hover:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:backdrop:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar entry { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +headerbar entry:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +headerbar entry image { + color: rgba(255, 255, 255, 0.7); +} + +headerbar entry image:hover, headerbar entry image:active { + color: white; +} + +headerbar entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); + background-color: #242424; + color: white; + min-height: 48px; + padding: 0 6px; +} + +headerbar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +headerbar:backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +headerbar .title { + padding: 0 12px; + font-weight: bold; +} + +headerbar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +headerbar .subtitle, +headerbar .dim-label { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +headerbar .subtitle:backdrop, +headerbar .dim-label:backdrop { + color: rgba(255, 255, 255, 0.5); +} + +headerbar .titlebar { + background-color: transparent; + box-shadow: none; +} + +headerbar headerbar + separator { + background-color: rgba(255, 255, 255, 0.12); +} + +box.vertical headerbar { + background-color: #242424; +} + +headerbar > windowhandle > box { + padding: 0 3px; +} + +headerbar > windowhandle > box, +headerbar > windowhandle > box > box.start, +headerbar > windowhandle > box > box.end { + border-spacing: 6px; +} + +headerbar entry, +headerbar spinbutton, +headerbar button, +headerbar stackswitcher { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar menubutton.popup { + margin-top: 0; + margin-bottom: 0; +} + +headerbar separator:not(.sidebar) { + margin-top: 12px; + margin-bottom: 12px; + background-color: rgba(255, 255, 255, 0.12); +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar spinbutton button { + margin-top: 0; + margin-bottom: 0; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +headerbar button.suggested-action:disabled, headerbar button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +headerbar.selection-mode { + transition: background-color 0.1ms 0ms, color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #5b9bf8; + color: white; +} + +headerbar.selection-mode:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +headerbar.selection-mode .subtitle:link { + color: white; +} + +headerbar.selection-mode .selection-menu { + padding-left: 16px; + padding-right: 16px; +} + +headerbar.selection-mode .selection-menu .arrow { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +headerbar .selection-mode { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #5b9bf8; +} + +headerbar.default-decoration { + min-height: 24px; + padding: 6px; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); +} + +headerbar.default-decoration windowcontrols button, +headerbar.default-decoration windowcontrols menubutton { + min-width: 16px; + min-height: 16px; + margin: 0; + padding: 0; +} + +headerbar.default-decoration windowcontrols menubutton button { + min-height: 20px; + min-width: 20px; + margin: 0; + padding: 4px; +} + +.solid-csd headerbar:dir(rtl), .solid-csd headerbar:dir(ltr) { + border-radius: 0; + box-shadow: none; +} + +window.devel headerbar.titlebar { + background: #242424 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, linear-gradient(to right, transparent 65%, rgba(91, 155, 248, 0.1)), linear-gradient(to top, #2c2c2c 3px, #313131); +} + +window.devel headerbar.titlebar:backdrop { + background: #242424 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, image(#242424); + /* background-color would flash */ +} + +viewswitcher { + margin: 0; +} + +viewswitcher.wide { + border-spacing: 3px; +} + +viewswitcher.narrow button.toggle { + border-radius: 0; + margin: 0; +} + +viewswitcher.narrow button.toggle:focus-within, viewswitcher.narrow button.toggle:focus { + box-shadow: none; +} + +viewswitcher button.toggle { + font-weight: bold; + padding: 0; +} + +viewswitcher button.toggle > stack > box.narrow { + font-size: 0.75rem; + padding-top: 6px; + padding-bottom: 4px; + border-spacing: 4px; +} + +viewswitcher button.toggle > stack > box.narrow > stack > label { + padding-left: 6px; + padding-right: 6px; +} + +viewswitcher button.toggle > stack > box.wide { + padding: 2px 12px; + border-spacing: 6px; +} + +viewswitcherbar actionbar > revealer > box { + padding: 0; +} + +viewswitchertitle viewswitcher { + margin-left: 12px; + margin-right: 12px; +} + +indicatorbin > indicator, indicatorbin > mask { + min-width: 6px; + min-height: 6px; + border-radius: 9999px; +} + +indicatorbin > indicator { + margin: 1px; + background-color: alpha(currentColor, 0.4); +} + +indicatorbin > indicator > label { + font-size: 0.6rem; + font-weight: bold; + padding: 1px 4px; + color: white; +} + +indicatorbin > mask { + padding: 1px; + background: black; +} + +indicatorbin.needs-attention > indicator { + background-color: #5b9bf8; +} + +indicatorbin.needs-attention > indicator > label { + color: white; +} + +/************ + * Pathbars * + ************/ + +pathbar > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 6px; + background-color: alpha(currentColor, 0.08); +} + + +pathbar > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +pathbar > button:checked { + background-color: alpha(currentColor, 0.16); + color: white; +} + + +pathbar > button label:not(:only-child):first-child { + margin-left: 0; +} + + +pathbar > button label:not(:only-child):last-child { + margin-right: 0; +} + + +pathbar > button.text-button { + min-width: 0; +} + + +pathbar > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +/************** + * Tree Views * + **************/ +columnview.view, +treeview.view { + border-left-color: #4b4b4b; + border-top-color: #4b4b4b; +} + +columnview.view:hover, columnview.view:selected, +treeview.view:hover, +treeview.view:selected { + border-radius: 0; + box-shadow: none; +} + +columnview.view.separator, +treeview.view.separator { + min-height: 5px; + color: rgba(255, 255, 255, 0.12); +} + +columnview.view:drop(active), +treeview.view:drop(active) { + box-shadow: none; +} + +columnview.view:drop(active).after, +treeview.view:drop(active).after { + border-top-style: none; +} + +columnview.view:drop(active).before, +treeview.view:drop(active).before { + border-bottom-style: none; +} + +columnview.view > dndtarget:drop(active), +treeview.view > dndtarget:drop(active) { + border-style: solid none; + border-width: 1px; + border-color: alpha(currentColor, 0.06); +} + +columnview.view > dndtarget:drop(active).after, +treeview.view > dndtarget:drop(active).after { + border-top-style: none; +} + +columnview.view > dndtarget:drop(active).before, +treeview.view > dndtarget:drop(active).before { + border-bottom-style: none; +} + +columnview.view.expander, +treeview.view.expander { + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); + color: rgba(255, 255, 255, 0.7); +} + +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: white; +} + +columnview.view.expander:selected, +treeview.view.expander:selected { + color: white; +} + +columnview.view.expander:selected:hover, +treeview.view.expander:selected:hover { + color: white; +} + +columnview.view.expander:checked, +treeview.view.expander:checked { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +columnview.view.expander:disabled, +treeview.view.expander:disabled { + color: rgba(255, 255, 255, 0.3); +} + +columnview.view.progressbar, +treeview.view.progressbar { + border-bottom: 6px solid #5b9bf8; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +columnview.view.progressbar:selected:hover, +treeview.view.progressbar:selected:hover { + box-shadow: none; +} + +columnview.view.trough, +treeview.view.trough { + border-bottom: 6px solid rgba(255, 255, 255, 0.12); + box-shadow: none; + background-color: transparent; + background-image: none; +} + +columnview.view.trough:selected:hover, +treeview.view.trough:selected:hover { + box-shadow: none; +} + +columnview.view > header > button, +treeview.view > header > button { + padding: 2px 6px; + border-style: none solid solid none; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + background-clip: border-box; +} + +columnview.view > header > button:not(:focus):not(:hover):not(:active), +treeview.view > header > button:not(:focus):not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +columnview.view > header > button, columnview.view > header > button:disabled, +treeview.view > header > button, +treeview.view > header > button:disabled { + background-color: #2C2C2C; +} + +columnview.view > header > button:last-child, +treeview.view > header > button:last-child { + border-right-style: none; +} + +columnview.view button.dnd, +columnview.view header.button.dnd, +treeview.view button.dnd, +treeview.view header.button.dnd { + padding: 2px 6px; + border-style: none solid solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + box-shadow: none; + background-color: #2C2C2C; + background-clip: border-box; + color: #5b9bf8; +} + +columnview.view acceleditor > label, +treeview.view acceleditor > label { + background-color: #5b9bf8; +} + +/********* + * Menus * + *********/ +menubar { + padding: 0; + background-color: #242424; + color: white; +} + +menubar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.csd menubar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > item { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + padding: 4px 8px; + color: rgba(255, 255, 255, 0.7); +} + +menubar > item:selected { + transition: none; + background-color: alpha(currentColor, 0.1); + color: white; +} + +menubar > item:disabled { + color: rgba(255, 255, 255, 0.3); +} + +menubar > item label:disabled { + color: inherit; +} + +menubar > item popover.menu popover.menu { + margin-left: 9px; +} + +menubar > item popover.menu.background popover.menu.background > contents { + margin: 0; + border-radius: 12px; +} + +/********************** + * Popover Base Menus * + **********************/ +popover.menu box.inline-buttons { + padding: 0 6px; +} + +popover.menu box.inline-buttons button.image-button.model { + min-height: 28px; + min-width: 28px; + padding: 0; + border: none; + outline: none; + transition: none; +} + +popover.menu box.inline-buttons button.image-button.model:selected { + background: image(alpha(currentColor, 0.06)); +} + +popover.menu box.circular-buttons { + padding: 6px; +} + +popover.menu box.circular-buttons button.circular.image-button.model { + padding: 6px; +} + +popover.menu box.circular-buttons button.circular.image-button.model:focus { + background-color: alpha(currentColor, 0.06); +} + +popover.menu.background separator { + margin: 6px 0; +} + +popover.menu arrow.left, +popover.menu radio.left, +popover.menu check.left { + margin-left: 0; + margin-right: 0; +} + +popover.menu arrow.right, +popover.menu radio.right, +popover.menu check.right { + margin-left: 0; + margin-right: 0; +} + +popover.menu modelbutton { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 22px; + min-width: 56px; + padding: 3px 9px; + color: white; + font: initial; + text-shadow: none; + box-shadow: none; + background: none; +} + +popover.menu modelbutton:hover { + transition: none; + background-color: alpha(currentColor, 0.08); +} + +popover.menu modelbutton:disabled { + color: rgba(255, 255, 255, 0.5); +} + +popover.menu label.title { + font-weight: bold; + padding: 4px 26px; +} + +/************ + * Popovers * + ************/ +popover.background { + font: initial; +} + +popover.background, popover.background:backdrop { + background-color: transparent; +} + +popover.background > arrow, +popover.background > contents { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + background-color: #3C3C3C; + border-radius: 12px; + border: 1px solid rgba(255, 255, 255, 0.1); + background-clip: border-box; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.75), 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05); +} + +popover.background > arrow:backdrop, +popover.background > contents:backdrop { + box-shadow: 0 3px 2px -2px rgba(0, 0, 0, 0.05), 0 2px 3px -1px rgba(0, 0, 0, 0.06), 0 1px 4px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +popover.background > contents > list, +popover.background > contents > .view, +popover.background > contents > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover.background > contents separator { + background-color: rgba(255, 255, 255, 0.12); + margin: 3px 0; +} + +popover.background > contents list separator { + margin: 0; +} + +popover.background .view:not(:selected), +popover.background toolbar { + background-color: #3C3C3C; +} + +popover.background .linked > button:not(.radio) { + background-color: transparent; + box-shadow: none; + border-radius: 6px; +} + +s +popover.background .linked > button:not(.radio):first-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):last-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):only-child { + border-radius: 6px; +} + +popover.background.menu button, +popover.background button.model { + min-height: 32px; + padding: 0 8px; + border-radius: 6px; +} + +.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: none; + box-shadow: none; +} + +magnifier { + background-color: #2C2C2C; +} + +/************* + * Notebooks * + *************/ +tabbar tab, notebook > header tab { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + min-height: 24px; + min-width: 24px; + padding: 3px 12px; + border: none; + outline: none; + background-clip: padding-box; + color: rgba(255, 255, 255, 0.7); + font-weight: 500; + border-radius: 6px; + background-image: none; + background-color: transparent; +} + +tabbar tab:hover, notebook > header tab:hover { + background-color: rgba(255, 255, 255, 0.04); + background-image: none; + color: white; +} + +tabbar tab:disabled, notebook > header tab:disabled { + color: rgba(255, 255, 255, 0.3); +} + +tabbar tab:checked, notebook > header tab:checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); + background-image: none; +} + +tabbar tab:checked:disabled, notebook > header tab:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +frame > paned > notebook > header, notebook.frame > header { + background-color: rgba(255, 255, 255, 0.04); +} + +notebook, notebook.frame { + background-color: #2C2C2C; + border-radius: 12px; +} + +notebook.frame frame > border { + border: none; + border-radius: 6px; +} + +notebook.frame frame > list row.activatable { + border-radius: 6px; +} + +notebook > header { + border: none; + background-color: rgba(255, 255, 255, 0.04); + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +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 { + padding-left: 4px; + padding-right: 4px; +} + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { + margin-left: 0; + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { + margin-right: 0; + -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 { + padding-top: 4px; + padding-bottom: 4px; +} + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { + margin-top: 0; + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { + margin-bottom: 0; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +notebook > header > tabs > arrow { + min-height: 16px; + min-width: 16px; + border-radius: 6px; +} + +notebook > header tab > box { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header tab > box:drop(active) { + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +notebook > header tab button.flat:last-child { + margin-left: 6px; + margin-right: -6px; +} + +notebook > header tab button.flat:first-child { + margin-left: -6px; + margin-right: 6px; +} + +notebook > header tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child { + margin-left: 0; +} + +notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child { + margin-right: 0; +} + +notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child { + margin-top: 0; +} + +notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child { + margin-bottom: 0; +} + +notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header > menubutton > button.image-button { + padding: 3px; + min-width: 24px; + min-height: 24px; + margin-left: 3px; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +tabbar .box { + min-height: 36px; + border-bottom: none; + background: none; +} + +tabbar scrolledwindow.pinned undershoot { + border: 0 solid rgba(255, 255, 255, 0.12); +} + +tabbar scrolledwindow.pinned:dir(rtl) undershoot.left { + border-left-width: 1px; +} + +tabbar scrolledwindow.pinned:dir(ltr) undershoot.right { + border-right-width: 1px; +} + +tabbar scrolledwindow.pinned tabbox > background:dir(ltr) { + box-shadow: inset -1px 0 rgba(255, 255, 255, 0.12); +} + +tabbar scrolledwindow.pinned tabbox > background:dir(rtl) { + box-shadow: inset 1px 0 rgba(255, 255, 255, 0.12); +} + +tabbar undershoot { + transition: background 150ms ease-in-out; +} + +tabbar undershoot.left { + background: linear-gradient(to right, #2C2C2C, rgba(0, 0, 0, 0) 20px); +} + +tabbar undershoot.right { + background: linear-gradient(to left, #2C2C2C, rgba(0, 0, 0, 0) 20px); +} + +tabbar .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar tabbox { + background-color: rgba(255, 255, 255, 0.04); + background-image: none; + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +tabbar tabbox > background { + background: none; +} + +tabbar tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#5b9bf8, 0.4) 10%, alpha(#5b9bf8, 0) 30%); +} + +tabbar tab.needs-attention:hover { + background-image: image(alpha(currentColor, 0.03)), radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#5b9bf8, 0.4) 10%, alpha(#5b9bf8, 0) 30%); +} + +tabbar .start-action, +tabbar .end-action { + background-color: rgba(255, 255, 255, 0.04); + background-clip: padding-box; + border-color: rgba(255, 255, 255, 0.12); + border-style: solid; + transition: background 150ms ease-in-out; +} + +tabbar .start-action button, +tabbar .end-action button { + border: none; + border-radius: 0; +} + +tabbar .start-action:dir(ltr), +tabbar .end-action:dir(rtl) { + border-right-width: 1px; +} + +tabbar .start-action:dir(rtl), +tabbar .end-action:dir(ltr) { + border-left-width: 1px; +} + +tabbar:not(.inline) scrolledwindow.pinned undershoot { + border-color: rgba(255, 255, 255, 0.12); +} + +tabbar:not(.inline) undershoot.left { + background: linear-gradient(to right, #242424, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) undershoot.right { + background: linear-gradient(to left, #242424, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar:not(.inline) tabbox > background { + background-color: #242424; +} + +tabbar:not(.inline) .start-action, +tabbar:not(.inline) .end-action { + background-color: alpha(#242424, 0.6); + border-color: rgba(255, 255, 255, 0.12); +} + +tabbar:not(.inline):backdrop .box { + background-color: #2C2C2C; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +dnd tab { + min-height: 24px; + background-color: #242424; + color: white; + box-shadow: 0 1px 5px 1px rgba(0, 0, 0, 0.09), 0 2px 14px 3px rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.05); + outline: 1px solid rgba(0, 0, 0, 0.75); + outline-offset: -1px; + margin: 24px; +} + +dnd tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#5b9bf8, 0.4) 10%, alpha(#5b9bf8, 0) 30%); +} + +tabbar tab, +dnd tab { + padding: 6px; +} + +tabbar tab button.image-button, +dnd tab button.image-button { + padding: 0; + margin: 0; + min-width: 24px; + min-height: 24px; + border-radius: 9999px; +} + +tabview:drop(active), +tabbox:drop(active) { + box-shadow: none; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #2C2C2C; + box-shadow: none; + outline: none; +} + +scrollbar.top { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.bottom { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.left { + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.right { + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar > range > trough > slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 8px; + min-height: 8px; + border: 4px solid transparent; + border-radius: 9999px; + background-clip: padding-box; + background-color: rgba(255, 255, 255, 0.5); + box-shadow: none; + outline: none; +} + +scrollbar > range > trough > slider:hover { + background-color: rgba(255, 255, 255, 0.7); +} + +scrollbar > range > trough > slider:active { + background-color: white; +} + +scrollbar > range > trough > slider:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar > range.fine-tune > trough > slider { + min-width: 4px; + min-height: 4px; +} + +scrollbar > range.fine-tune.horizontal > trough > slider { + margin: 2px 0; +} + +scrollbar > range.fine-tune.vertical > trough > slider { + margin: 0 2px; +} + +scrollbar.overlay-indicator:not(.fine-tune) > range > trough > slider { + transition-property: background-color, min-height, min-width; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { + border-color: transparent; + background-color: transparent; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) > range > trough > slider { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: padding-box; + -gtk-icon-source: none; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal > range > trough > slider { + min-width: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { + min-width: 8px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical > range > trough > slider { + min-height: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { + min-height: 8px; +} + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { + background-color: rgba(60, 60, 60, 0.9); +} + +scrollbar.horizontal > range > trough > slider { + min-width: 24px; +} + +scrollbar.vertical > range > trough > slider { + min-height: 24px; +} + +scrollbar button { + min-width: 16px; + min-height: 16px; + padding: 0; + border-radius: 0; +} + +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"); +} + +/********** + * Switch * + **********/ +switch { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + margin: 6px 0; + padding: 0; + border: none; + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: border-box; + font-size: 0; + color: transparent; +} + +switch:checked { + background-color: #5b9bf8; +} + +switch:disabled { + opacity: 0.5; +} + +switch image { + margin: -8px; +} + +switch > slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 20px; + min-height: 20px; + margin: 1px; + border-radius: 9999px; + outline: none; + box-shadow: none; + background-color: white; + border: none; +} + +switch:focus slider, switch:hover slider, switch:focus:hover slider { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); +} + +/************************* + * Check and Radio items * + *************************/ +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + min-height: 40px; + min-width: 40px; + margin: 0; + padding: 0; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +.view.content-view.check:not(list):hover, .view.content-view.check:not(list):active, +.content-view .tile check:not(list):hover, +.content-view .tile check:not(list):active { + box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.12); +} + +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-unchecked-dark.png"), url("assets/selectionmode-checkbox-unchecked-dark@2.png")); +} + +.view.content-view.check:not(list):checked, +.content-view .tile check:not(list):checked { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-checked-dark.png"), url("assets/selectionmode-checkbox-checked-dark@2.png")); +} + +checkbutton, +radiobutton { + outline: none; + border-spacing: 3px; +} + +check, +radio { + min-height: 20px; + min-width: 20px; + margin: 3px; + padding: 0; + border-radius: 9999px; + color: transparent; + background-color: rgba(255, 255, 255, 0.12); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +check:hover, +radio:hover { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.04); + background-color: rgba(255, 255, 255, 0.15); +} + +check:active, +radio:active { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); + background-color: rgba(255, 255, 255, 0.2); +} + +check:disabled, +radio:disabled { + background-color: rgba(255, 255, 255, 0.04); +} + +check:checked, check:indeterminate, +radio:checked, +radio:indeterminate { + color: white; + background-color: #5b9bf8; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.15); + background-color: #8cb9fa; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.2); + background-color: #5b9bf8; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(255, 255, 255, 0.7); + background-color: rgba(91, 155, 248, 0.35); +} + +popover modelbutton.flat check, popover modelbutton.flat check:focus, popover modelbutton.flat check:hover, popover modelbutton.flat check:focus:hover, popover modelbutton.flat check:active, popover modelbutton.flat check:disabled, popover modelbutton.flat radio, popover modelbutton.flat radio:focus, popover modelbutton.flat radio:hover, popover modelbutton.flat radio:focus:hover, popover modelbutton.flat radio:active, popover modelbutton.flat radio:disabled { + transition: none; + box-shadow: none; + background-image: none; +} + +popover modelbutton.flat check.left:dir(rtl), popover modelbutton.flat radio.left:dir(rtl) { + margin-left: -3px; + margin-right: 6px; +} + +popover modelbutton.flat check.right:dir(ltr), popover modelbutton.flat radio.right:dir(ltr) { + margin-left: 6px; + margin-right: -3px; +} + +popover.menu check, popover.menu radio { + transition: none; + margin: 0; + padding: 0; +} + +popover.menu check:dir(ltr), popover.menu radio:dir(ltr) { + margin-right: 6px; + margin-left: -3px; +} + +popover.menu check:dir(rtl), popover.menu radio:dir(rtl) { + margin-left: 6px; + margin-right: -3px; +} + +popover.menu check, popover.menu check:hover, popover.menu check:disabled, popover.menu check:checked:hover, popover.menu check:indeterminate:hover, popover.menu radio, popover.menu radio:hover, popover.menu radio:disabled, popover.menu radio:checked:hover, popover.menu radio:indeterminate:hover { + box-shadow: none; +} + + +check { + -gtk-icon-size: 20px; +} + + +check:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-checked-symbolic@2.svg"))); +} + + +check:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic@2.svg"))); +} + + +radio { + -gtk-icon-size: 20px; +} + + +radio:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-checked-symbolic@2.svg"))); +} + + +radio:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-mixed-symbolic@2.svg"))); +} + + +popover.menu check { + min-height: 16px; + min-width: 16px; + -gtk-icon-size: 16px; +} + + +popover.menu check:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic@2.svg"))); +} + + +popover.menu check:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic@2.svg"))); +} + + +popover.menu radio { + min-height: 16px; + min-width: 16px; + -gtk-icon-size: 16px; +} + + +popover.menu radio:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-checked-symbolic@2.svg"))); +} + + +popover.menu radio:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic@2.svg"))); +} + +check:not(:checked):active { + -gtk-icon-transform: rotate(90deg); +} + +treeview.view radio, treeview.view check, +columnview.view radio, +columnview.view check { + padding: 0; + margin: 0; + transition: none; +} + +treeview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), treeview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate), +columnview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), +columnview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate) { + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view radio, treeview.view radio:hover, treeview.view radio:disabled, treeview.view radio:checked:hover, treeview.view radio:indeterminate:hover, treeview.view check, treeview.view check:hover, treeview.view check:disabled, treeview.view check:checked:hover, treeview.view check:indeterminate:hover, +columnview.view radio, +columnview.view radio:hover, +columnview.view radio:disabled, +columnview.view radio:checked:hover, +columnview.view radio:indeterminate:hover, +columnview.view check, +columnview.view check:hover, +columnview.view check:disabled, +columnview.view check:checked:hover, +columnview.view check:indeterminate:hover { + box-shadow: none; +} + +treeview.view:hover check, treeview.view:hover radio, treeview.view:selected check, treeview.view:selected radio, treeview.view:focus check, treeview.view:focus radio, treeview.view:focus-within check, treeview.view:focus-within radio, +columnview.view:hover check, +columnview.view:hover radio, +columnview.view:selected check, +columnview.view:selected radio, +columnview.view:focus check, +columnview.view:focus radio, +columnview.view:focus-within check, +columnview.view:focus-within radio { + box-shadow: none; + background-color: transparent; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale slider { + min-height: 18px; + min-width: 18px; + margin: -8px; +} + +scale.fine-tune.horizontal { + min-height: 4px; + padding-top: 16px; + padding-bottom: 16px; +} + +scale.fine-tune.vertical { + min-width: 4px; + padding-left: 16px; + padding-right: 16px; +} + +scale.fine-tune slider { + margin: -7px; +} + +scale trough { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + background-color: rgba(255, 255, 255, 0.3); +} + +scale trough:disabled { + background-color: rgba(255, 255, 255, 0.12); +} + +scale highlight { + transition: background-image 0ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#5b9bf8); +} + +scale highlight:disabled { + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.3)); +} + +scale fill { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.3); +} + +scale fill:disabled { + background-color: transparent; +} + +scale slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #5b9bf8; + background-color: #2C2C2C; + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +scale slider:hover { + box-shadow: inset 0 0 0 2px #5b9bf8, 0 0 0 8px rgba(255, 255, 255, 0.12); +} + +scale slider:active { + box-shadow: inset 0 0 0 4px #5b9bf8, 0 0 0 8px rgba(255, 255, 255, 0.12); +} + +scale slider:disabled { + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3); +} + +scale marks, +scale value { + color: rgba(255, 255, 255, 0.7); +} + +scale indicator { + background-color: rgba(255, 255, 255, 0.3); + color: transparent; +} + +scale.horizontal > marks.top { + margin-bottom: 7px; + margin-top: -15px; +} + +scale.horizontal.fine-tune > marks.top { + margin-bottom: 6px; + margin-top: -14px; +} + +scale.horizontal > marks.bottom { + margin-top: 7px; + margin-bottom: -15px; +} + +scale.horizontal.fine-tune > marks.bottom { + margin-top: 6px; + margin-bottom: -14px; +} + +scale.vertical > marks.top { + margin-right: 7px; + margin-left: -15px; +} + +scale.vertical.fine-tune > marks.top { + margin-right: 6px; + margin-left: -14px; +} + +scale.vertical > marks.bottom { + margin-left: 7px; + margin-right: -15px; +} + +scale.vertical.fine-tune > marks.bottom { + margin-left: 6px; + margin-right: -14px; +} + +scale.horizontal indicator { + min-height: 8px; + min-width: 1px; +} + +scale.vertical indicator { + min-height: 1px; + min-width: 8px; +} + +scale.horizontal.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-before:not(.marks-after) slider, scale.horizontal.marks-before:not(.marks-after) slider:hover, scale.horizontal.marks-before:not(.marks-after) slider:active, scale.horizontal.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")); +} + +scale.horizontal.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-disabled-dark.png"), url("assets/scale-horz-marks-before-slider-disabled-dark@2.png")); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-after:not(.marks-before) slider, scale.horizontal.marks-after:not(.marks-before) slider:hover, scale.horizontal.marks-after:not(.marks-before) slider:active, scale.horizontal.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-disabled-dark.png"), url("assets/scale-horz-marks-after-slider-disabled-dark@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-before:not(.marks-after) slider, scale.vertical.marks-before:not(.marks-after) slider:hover, scale.vertical.marks-before:not(.marks-after) slider:active, scale.vertical.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-disabled-dark.png"), url("assets/scale-vert-marks-before-slider-disabled-dark@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-after:not(.marks-before) slider, scale.vertical.marks-after:not(.marks-before) slider:hover, scale.vertical.marks-after:not(.marks-before) slider:active, scale.vertical.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-disabled-dark.png"), url("assets/scale-vert-marks-after-slider-disabled-dark@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")); +} + +scale.color { + min-height: 0; + min-width: 0; +} + +scale.color.horizontal { + padding: 0 0 12px 0; +} + +scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl) { + margin-bottom: -13.5px; + margin-top: 11.5px; +} + +scale.color.vertical:dir(ltr) { + padding: 0 0 0 12px; +} + +scale.color.vertical:dir(ltr) slider { + margin-left: -13.5px; + margin-right: 11.5px; +} + +scale.color.vertical:dir(rtl) { + padding: 0 12px 0 0; +} + +scale.color.vertical:dir(rtl) slider { + margin-right: -13.5px; + margin-left: 11.5px; +} + +/***************** + * Progress bars * + *****************/ +progressbar { + color: rgba(255, 255, 255, 0.7); + font-size: smaller; +} + +progressbar.horizontal trough, +progressbar.horizontal progress { + min-height: 6px; +} + +progressbar.vertical trough, +progressbar.vertical progress { + min-width: 6px; +} + +progressbar trough { + border-radius: 6px; + background-color: rgba(255, 255, 255, 0.12); +} + +progressbar progress { + border-radius: 6px; + background-color: #5b9bf8; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #5b9bf8; +} + +progressbar trough.empty progress { + all: unset; +} + +/************* + * Level Bar * + *************/ +levelbar.horizontal block { + min-height: 6px; +} + +levelbar.horizontal.discrete block { + min-width: 36px; +} + +levelbar.horizontal.discrete block:not(:last-child) { + margin-right: 2px; +} + +levelbar.vertical block { + min-width: 6px; +} + +levelbar.vertical.discrete block { + min-height: 36px; +} + +levelbar.vertical.discrete block:not(:last-child) { + margin-bottom: 2px; +} + +levelbar trough { + border-radius: 6px; +} + +levelbar block.low { + background-color: #FDD633; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #5b9bf8; +} + +levelbar block.full { + background-color: #81C995; +} + +levelbar block.empty { + background-color: rgba(255, 255, 255, 0.12); +} + +/**************** + * Print dialog * +*****************/ +window.dialog.print drawing { + color: white; + background: none; + border: none; + padding: 0; +} + +window.dialog.print drawing paper { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + color: white; +} + +window.dialog.print .dialog-action-box { + margin: 12px; +} + +/********** + * Frames * + **********/ +frame, +.frame { + border: 1px solid rgba(255, 255, 255, 0.12); +} + +frame > list, +.frame > list { + border: none; +} + +frame.view, +.frame.view { + border-radius: 6px; +} + +frame.flat, +.frame.flat { + border-style: none; +} + +frame { + border-radius: 6px; +} + +frame > label { + margin: 4px; +} + +frame.flat > border, statusbar frame > border { + border: none; +} + +actionbar > revealer > box { + padding: 6px; + border-spacing: 6px; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; + border: none; +} + +.background.csd box.vertical > actionbar > revealer > box { + border-radius: 0 0 14px 14px; +} + +statusbar { + padding: 6px 18px; +} + +scrolledwindow viewport.frame { + border: none; +} + +stack scrolledwindow.frame viewport.frame list { + border: none; +} + +overshoot.top { + background-image: radial-gradient(farthest-side at top, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at top, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 100% 3%, 100% 50%; + background-repeat: no-repeat; + background-position: top; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.bottom { + background-image: radial-gradient(farthest-side at bottom, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at bottom, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 100% 3%, 100% 50%; + background-repeat: no-repeat; + background-position: bottom; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.left { + background-image: radial-gradient(farthest-side at left, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at left, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 3% 100%, 50% 100%; + background-repeat: no-repeat; + background-position: left; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.right { + background-image: radial-gradient(farthest-side at right, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at right, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 3% 100%, 50% 100%; + background-repeat: no-repeat; + background-position: right; + background-color: transparent; + border: none; + box-shadow: none; +} + +undershoot.top { + background-color: transparent; + background-image: linear-gradient(to left, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-top: 1px; + background-size: 12px 1px; + background-repeat: repeat-x; + background-origin: content-box; + background-position: left top; + margin: 0 4px; +} + +undershoot.bottom { + background-color: transparent; + background-image: linear-gradient(to left, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-bottom: 1px; + background-size: 12px 1px; + background-repeat: repeat-x; + background-origin: content-box; + background-position: left bottom; + margin: 0 4px; +} + +undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +junction { + border-style: solid none none solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +junction:dir(rtl) { + border-style: solid solid none none; +} + +separator { + min-width: 1px; + min-height: 1px; + background-color: rgba(255, 255, 255, 0.12); +} + +stacksidebar + separator.vertical, +stacksidebar separator.horizontal, button.font separator, button.file separator { + min-width: 0; + min-height: 0; + background-color: transparent; +} + +/********* + * Lists * + *********/ +listview.boxed-list, +list.boxed-list, listview.content:not(.conversation-listbox), +list.content:not(.conversation-listbox) { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(255, 255, 255, 0.12); +} + +listview.boxed-list > row.expander list > row, +list.boxed-list > row.expander list > row, listview.boxed-list > row, +list.boxed-list > row, listview.content:not(.conversation-listbox) > row, +list.content:not(.conversation-listbox) > row { + border-radius: 0; +} + +listview.boxed-list > row.expander list > row:first-child, +list.boxed-list > row.expander list > row:first-child, listview.boxed-list > row:first-child, +list.boxed-list > row:first-child, listview.content:not(.conversation-listbox) > row:first-child, +list.content:not(.conversation-listbox) > row:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +listview.boxed-list > row.expander list > row:last-child, +list.boxed-list > row.expander list > row:last-child, listview.boxed-list > row:last-child, +list.boxed-list > row:last-child, listview.content:not(.conversation-listbox) > row:last-child, +list.content:not(.conversation-listbox) > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +listview.boxed-list > row.expander list > row:only-child, +list.boxed-list > row.expander list > row:only-child, listview.boxed-list > row:only-child, +list.boxed-list > row:only-child, listview.content:not(.conversation-listbox) > row:only-child, +list.content:not(.conversation-listbox) > row:only-child { + border-radius: 6px; +} + +listview.boxed-list > row.expander list > row:focus, +list.boxed-list > row.expander list > row:focus, listview.boxed-list > row:focus, +list.boxed-list > row:focus, listview.content:not(.conversation-listbox) > row:focus, +list.content:not(.conversation-listbox) > row:focus { + box-shadow: inset 0 0 0 1000px alpha(currentColor, 0.08); +} + +listview, +list { + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +listview row, +list row { + padding: 6px; +} + +listview > row.expander, +list > row.expander { + padding: 0px; +} + +listview > row.expander .row-header, +list > row.expander .row-header { + padding: 2px; +} + +listview.boxed-list > row.expander list, +list.boxed-list > row.expander list { + background-color: transparent; + box-shadow: none; + border: none; +} + +list.frame { + border-radius: 6px; +} + +listview.view { + color: white; + background-color: transparent; +} + +popover.menu listview.view { + padding: 0; +} + +popover.menu listview.view > row { + margin-left: 0; + margin-right: 0; +} + +row { + color: rgba(255, 255, 255, 0.7); +} + +columnview.view > header > button, +treeview.view > header > button, row.activatable { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; +} + +columnview.view > header > button:focus, +treeview.view > header > button:focus, row.activatable:focus { + color: white; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +columnview.view > header > button:hover, +treeview.view > header > button:hover, row.activatable:hover { + color: white; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +columnview.view > header > button.has-open-popup, +treeview.view > header > button.has-open-popup, columnview.view > header > button:active, +treeview.view > header > button:active, row.activatable.has-open-popup, row.activatable:active { + color: white; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + +row:selected { + color: inherit; +} + +row:selected image, +row:selected label { + color: white; +} + +row:selected button image, +row:selected button label { + color: inherit; +} + +row:selected:disabled image, +row:selected:disabled label { + color: rgba(255, 255, 255, 0.5); +} + +treeexpander { + border-spacing: 6px; +} + +columnview row:not(:selected) cell editablelabel:not(.editing):focus-within { + outline: 2px solid alpha(currentColor, 0.06); +} + +columnview row:not(:selected) cell editablelabel.editing:focus-within { + outline: 2px solid #5b9bf8; +} + +columnview row:not(:selected) cell editablelabel.editing text selection { + color: white; + background-color: #5b9bf8; +} + +.rich-list { + /* rich lists usually containing other widgets than just labels/text */ +} + +.rich-list > row { + padding: 9px 12px; + min-height: 32px; + /* should be tall even when only containing a label */ +} + +.rich-list > row > box { + border-spacing: 12px; +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 8px; + border-spacing: 9px; + padding: 9px; + border: none; +} + +.app-notification button.text-button:not(:disabled) { + color: #5b9bf8; +} + +.app-notification.frame, +.app-notification border { + border-style: none; +} + +/************* + * Expanders * + *************/ +expander { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 16px; + min-height: 16px; + color: rgba(255, 255, 255, 0.7); + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); +} + +expander:dir(rtl) { + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); +} + +expander:hover, expander:active { + color: white; +} + +expander:disabled { + color: rgba(255, 255, 255, 0.3); +} + +expander-widget > box > title { + border-radius: 6px; +} + +expander-widget > box > title:hover > expander { + color: rgba(255, 255, 255, 0.7); +} + +.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 { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + border-radius: 6px; + color: white; +} + +calendar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +calendar:selected { + border-radius: 6px; +} + +calendar > header { + padding: 3px; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +calendar > header > button { + min-height: 24px; +} + +calendar > grid { + margin: 3px; +} + +calendar > grid > label { + border-radius: 9999px; + margin: 0; +} + +calendar > grid > label.today:selected { + box-shadow: none; +} + +calendar > grid > label:focus { + outline-style: none; +} + +calendar > grid > label.day-number { + padding: 9px; +} + +calendar > grid > label.day-number.other-month { + color: alpha(currentColor, 0.3); +} + +/*********** + * Dialogs * + ***********/ +window.dialog.message.background { + background-color: #3C3C3C; +} + +window.dialog.message box.dialog-vbox.vertical { + border-spacing: 10px; +} + +window.dialog.message .titlebar { + min-height: 24px; + border-style: none; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; + color: white; +} + +window.dialog.message .titlebar:backdrop { + background-color: #3C3C3C; + color: rgba(255, 255, 255, 0.7); +} + +window.dialog.message .dialog-action-area { + margin-top: -6px; +} + +window.dialog.message .dialog-action-area > button, window.dialog.message .dialog-action-area > button:first-child, window.dialog.message .dialog-action-area > button:last-child { + border-radius: 9999px; +} + +window.dialog.message .dialog-action-area > button:not(:last-child) { + margin-right: 6px; +} + +window.dialog.message .dialog-action-area > button:not(:disabled) { + color: #5b9bf8; +} + +window.dialog.message .dialog-action-area > button.destructive-action:not(:disabled) { + color: #F28B82; +} + +.csd filechooser { + background-color: #2C2C2C; + border-radius: 0 0 14px 14px; +} + +filechooser .dialog-action-box { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +filechooser #pathbarbox { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +filechooser stack.view { + background-color: transparent; +} + +filechooser stack.view scrolledwindow { + background-color: transparent; + border-radius: 0 0 14px 0; +} + +filechooser stack.view scrolledwindow list { + background-color: transparent; +} + +filechooser stack.view > placesview { + background-color: transparent; +} + +filechooser stack.view > placesview > actionbar, filechooser stack.view > placesview > actionbar > revealer > box { + background-color: transparent; +} + +filechooser stack.view frame > border { + border: none; +} + +.csd filechooser placessidebar { + background: none; + border-bottom-left-radius: 14px; +} + +filechooser actionbar, filechooser actionbar > revealer > box { + background-color: transparent; +} + +filechooserbutton > button > box { + border-spacing: 6px; +} + +filechooserbutton:drop(active) { + box-shadow: none; + border-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; + background-color: #242424; +} + +.sidebar:not(separator):dir(ltr), .sidebar:not(separator).left, .sidebar:not(separator).left:dir(rtl) { + border-right: 1px solid rgba(255, 255, 255, 0.12); + border-left-style: none; +} + +.sidebar:not(separator):dir(rtl), .sidebar:not(separator).right { + border-left: 1px solid rgba(255, 255, 255, 0.12); + 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 { + padding: 6px; + background-color: #242424; +} + +stacksidebar row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +stacksidebar row:selected { + background-color: alpha(currentColor, 0.06); + color: white; + font-weight: 500; +} + +stacksidebar row + row { + margin-top: 4px; +} + +stacksidebar row > label { + padding-left: 6px; + padding-right: 6px; + color: inherit; +} + +separator.sidebar { + background-color: rgba(255, 255, 255, 0.12); + border-right: none; +} + +separator.sidebar.selection-mode, .selection-mode separator.sidebar { + background-color: rgba(255, 255, 255, 0.15); +} + +/********************** + * Navigation Sidebar * + **********************/ +.navigation-sidebar { + padding: 6px; + border-right: none; +} + +.navigation-sidebar > row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +.navigation-sidebar > row:hover, .navigation-sidebar > row:focus-visible:focus-within { + background-color: alpha(currentColor, 0.08); +} + +.navigation-sidebar > row:selected { + background-color: alpha(currentColor, 0.06); + color: white; +} + +.navigation-sidebar > row:selected:hover { + background-color: alpha(currentColor, 0.16); +} + +.navigation-sidebar > row:selected:focus-visible:focus-within { + outline: none; + background-color: alpha(currentColor, 0.08); +} + +.navigation-sidebar > row:selected:focus-visible:focus-within:hover { + background-color: alpha(currentColor, 0.16); +} + +.navigation-sidebar > row:disabled { + color: rgba(255, 255, 255, 0.5); +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +row image.sidebar-icon:disabled { + color: rgba(255, 255, 255, 0.3); +} + +placessidebar > viewport.frame { + border-style: none; +} + +placessidebar list { + padding: 1px 0 4px; +} + +placessidebar .navigation-sidebar > row { + min-height: 32px; + margin: -1px 4px -1px 0; + padding: 0; + border-radius: 0 9999px 9999px 0; +} + +placessidebar .navigation-sidebar > row > revealer { + padding: 0 8px 0 16px; +} + +placessidebar .navigation-sidebar > row:selected { + background-color: alpha(currentColor, 0.06); + color: white; + font-weight: 500; +} + +placessidebar .navigation-sidebar > row:disabled { + color: rgba(255, 255, 255, 0.5); +} + +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 { + color: inherit; +} + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar .navigation-sidebar > row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row { + color: #5b9bf8; +} + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row image.sidebar-icon { + color: #5b9bf8; +} + +placessidebar .navigation-sidebar > row:drop(active) { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placesview .server-list-button > image { + transition: 200ms cubic-bezier(0, 0, 0.2, 1); + -gtk-icon-transform: rotate(0turn); +} + +placesview .server-list-button:checked > image { + transition: 200ms cubic-bezier(0, 0, 0.2, 1); + -gtk-icon-transform: rotate(-0.5turn); +} + +placesview > actionbar > revealer > box > label { + 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(rgba(255, 255, 255, 0.12)); + background-size: 1px 1px; + background-clip: content-box; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.12)), image(rgba(255, 255, 255, 0.12)); + 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; + border-radius: 6px; +} + +video image.osd { + min-width: 64px; + min-height: 64px; + border-radius: 9999px; + border: none; +} + +/************** + * GtkInfoBar * + **************/ +infobar { + border: none; + margin-bottom: 0; +} + +infobar > revealer > box { + padding: 6px; + border-spacing: 12px; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #2C2C2C; +} + +infobar.info > revealer > box button, infobar.info > revealer > box button.text-button:not(:disabled), infobar.info:hover > revealer > box button, infobar.info:hover > revealer > box button.text-button:not(:disabled), infobar.info:backdrop > revealer > box button, infobar.info:backdrop > revealer > box button.text-button:not(:disabled) { + color: #5b9bf8; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #5b9bf8; + color: white; +} + +infobar.action > revealer > box button, infobar.action > revealer > box button:hover, infobar.action > revealer > box button:focus, infobar.action > revealer > box button:active, infobar.action > revealer > box button:checked, infobar.action > revealer > box button.text-button:not(:disabled), infobar.action:backdrop > revealer > box button, infobar.action:backdrop > revealer > box button:hover, infobar.action:backdrop > revealer > box button:focus, infobar.action:backdrop > revealer > box button:active, infobar.action:backdrop > revealer > box button:checked, infobar.action:backdrop > revealer > box button.text-button:not(:disabled), infobar.question > revealer > box button, infobar.question > revealer > box button:hover, infobar.question > revealer > box button:focus, infobar.question > revealer > box button:active, infobar.question > revealer > box button:checked, infobar.question > revealer > box button.text-button:not(:disabled), infobar.question:backdrop > revealer > box button, infobar.question:backdrop > revealer > box button:hover, infobar.question:backdrop > revealer > box button:focus, infobar.question:backdrop > revealer > box button:active, infobar.question:backdrop > revealer > box button:checked, infobar.question:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: white; +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #438cf7; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #FDD633; + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box button, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked, infobar.warning > revealer > box button.text-button:not(:disabled), infobar.warning:backdrop > revealer > box button, infobar.warning:backdrop > revealer > box button:hover, infobar.warning:backdrop > revealer > box button:focus, infobar.warning:backdrop > revealer > box button:active, infobar.warning:backdrop > revealer > box button:checked, infobar.warning:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box *:link, infobar.warning:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning:hover > revealer > box { + background-color: #fdd11a; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box button, infobar.error > revealer > box button:hover, infobar.error > revealer > box button:focus, infobar.error > revealer > box button:active, infobar.error > revealer > box button:checked, infobar.error > revealer > box button.text-button:not(:disabled), infobar.error:backdrop > revealer > box button, infobar.error:backdrop > revealer > box button:hover, infobar.error:backdrop > revealer > box button:focus, infobar.error:backdrop > revealer > box button:active, infobar.error:backdrop > revealer > box button:checked, infobar.error:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error:hover > revealer > box { + background-color: #f0766b; +} + +/************ + * Tooltips * + ************/ +tooltip { + padding: 6px 12px; + box-shadow: none; + border: none; +} + +tooltip.background { + background-color: rgba(25, 25, 25, 0.9); + color: white; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12); + border-radius: 3px; + margin: 2px 6px 8px 6px; + border: none; +} + +tooltip > box { + border-spacing: 6px; +} + +/***************** + * Color Chooser * + *****************/ +colorswatch.top { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.top overlay { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.bottom { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.bottom overlay { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.left, colorswatch:first-child:not(.top) { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.left overlay, colorswatch:first-child:not(.top) overlay { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.right, colorswatch:last-child:not(.bottom) { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.dark { + color: white; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorchooser colorswatch:hover { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: 0 0 0 2px #5b9bf8; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; + color: white; +} + +colorswatch#add-color-button:only-child { + border-radius: 6px; +} + +colorswatch#add-color-button overlay { + background-color: rgba(255, 255, 255, 0.04); +} + +colorswatch#add-color-button overlay:hover { + background-color: rgba(255, 255, 255, 0.12); + box-shadow: none; +} + +colorswatch#add-color-button overlay:active { + background-color: rgba(255, 255, 255, 0.3); +} + +colorswatch:disabled { + opacity: 0.5; +} + +colorswatch:disabled overlay { + box-shadow: none; +} + +colorswatch#editor-color-sample { + border-radius: 6px; +} + +colorswatch#editor-color-sample overlay { + border-radius: 6px; +} + +colorswatch#editor-color-sample overlay:hover { + box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -0.6px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +/******** + * Misc * + ********/ +.content-view { + background-color: #2C2C2C; +} + +/********************** + * Window Decorations * + **********************/ +window.csd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 14px; + outline-color: rgba(255, 255, 255, 0.1); + outline-offset: -1px; + outline-style: solid; + outline-width: 1px; + box-shadow: 0 8px 6px -5px rgba(0, 0, 0, 0.2), 0 16px 15px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; +} + +window.csd:backdrop { + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; +} + +window.csd.popup { + border-radius: 12px; +} + +window.csd.dialog.message { + border-radius: 14px; +} + +.solid-csd window.csd { + margin: 0; + padding: 2px; + border-radius: 0; + background-color: #242424; + border: 1px solid #4b4b4b; +} + +.solid-csd window.csd:backdrop { + background-color: #2C2C2C; +} + +window.csd.maximized, window.csd.fullscreen, window.csd.tiled, window.csd.tiled-top, window.csd.tiled-right, window.csd.tiled-bottom, window.csd.tiled-left { + border-radius: 0; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action) { + min-height: 36px; + min-width: 36px; + padding: 0; + margin: 0 4px; +} + +windowcontrols button.minimize:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:not(.suggested-action):not(.destructive-action), windowcontrols button.close:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + background-color: "transparent"; +} + +windowcontrols button.minimize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.maximize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.close:not(.suggested-action):not(.destructive-action) image { + padding: 0; +} + +windowcontrols button.minimize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.close:hover:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.15); +} + +windowcontrols button.minimize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.close:active:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.2); +} + +windowcontrols button.minimize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.close:backdrop:not(.suggested-action):not(.destructive-action) { + opacity: 0.65; +} + +windowcontrols { + border-spacing: 6px; +} + +windowcontrols:not(.empty).start:dir(ltr), windowcontrols:not(.empty).end:dir(rtl) { + margin-right: 4px; + margin-left: 4px; +} + +windowcontrols:not(.empty).start:dir(rtl), windowcontrols:not(.empty).end:dir(ltr) { + margin-left: 4px; + margin-right: 4px; +} + +.view:selected, iconview:selected, gridview > child:selected, modelbutton.flat:selected, columnview.view:selected, +treeview.view:selected, row:selected, calendar:selected, calendar > grid > label.day-number:selected { + background-color: alpha(currentColor, 0.06); +} + +flowbox > flowboxchild:selected, calendar > grid > label.today { + color: #5b9bf8; + background-color: rgba(91, 155, 248, 0.2); +} + +textview text selection:focus, textview text selection, label > selection, +entry > text > selection, spinbutton:not(.vertical) > text > selection, spinbutton.vertical > text > selection, calendar > grid > label.today:selected { + color: white; + background-color: #5b9bf8; +} + +.monospace { + font-family: monospace; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #5b9bf8; + -gtk-icon-source: -gtk-recolor(url("assets/scalable/cursor-handle-symbolic.svg")); +} + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { + padding-top: 6px; +} + +shortcuts-section { + margin: 20px; +} + +.shortcuts-search-results { + margin: 20px; + border-spacing: 24px; +} + +shortcut { + border-spacing: 6px; +} + +shortcut > .keycap { + min-width: 12px; + min-height: 26px; + margin-top: 2px; + padding-bottom: 2px; + padding-left: 8px; + padding-right: 8px; + border: solid 1px rgba(255, 255, 255, 0.12); + border-radius: 7px; + box-shadow: inset 0 -2px rgba(255, 255, 255, 0.12); + background-color: #3C3C3C; + color: white; + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #5b9bf8; +} + +stackswitcher { + min-height: 0; + padding: 3px; + margin: 6px 0; + border-radius: 9px; + background-color: rgba(255, 255, 255, 0.04); + border: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + margin: 0 0; + background-color: transparent; + border-radius: 6px; + padding: 3px 10px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 100px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):focus:not(:hover):not(:checked) { + box-shadow: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +stackswitcher button.text-button { + min-width: 100px; +} + +stackswitcher button.circular, +stackswitcher button.text-button.circular { + min-width: 36px; + min-height: 36px; + padding: 0; +} + +/************* + * App Icons * + *************/ +.lowres-icon { + -gtk-icon-shadow: none; +} + +.icon-dropshadow { + -gtk-icon-shadow: none; +} + +/********* + * Emoji * + *********/ +popover.emoji-picker { + padding: 0; +} + +popover.emoji-picker > contents { + padding: 0; +} + +.emoji-searchbar { + padding: 6px; + border-spacing: 6px; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + background: none; +} + +.emoji-searchbar entry text { + background: none; + box-shadow: none; +} + +.emoji-toolbar { + padding: 0; + border-spacing: 3px; + border-top: 1px solid rgba(255, 255, 255, 0.12); + background: none; +} + +button.emoji-section { + margin: 0; + padding: 6px; + border-radius: 6px; +} + +button.emoji-section:checked { + color: #5b9bf8; +} + +popover.emoji-picker emoji { + font-size: x-large; + padding: 6px; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; +} + +popover.emoji-picker emoji:focus, popover.emoji-picker emoji:hover { + background: alpha(currentColor, 0.08); +} + +emoji-completion-row { + min-height: 28px; + padding: 0 12px; +} + +emoji-completion-row > box { + border-spacing: 6px; + padding: 2px 6px; +} + +emoji-completion-row:focus, emoji-completion-row:hover, +emoji-completion-row emoji:hover, emoji-completion-row emoji:focus { + background-color: alpha(currentColor, 0.08); + color: white; +} + +popover.entry-completion > contents { + padding: 0; +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color white; +/* +text color for entries, views and content in general */ +@define-color theme_text_color white; +/* +widget base background color */ +@define-color theme_bg_color #2C2C2C; +/* +text widgets and the like base background color */ +@define-color theme_base_color #2C2C2C; +/* +base background color of selections */ +@define-color theme_selected_bg_color #5b9bf8; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color white; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #2C2C2C; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color rgba(255, 255, 255, 0.5); +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #242424; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color white; +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color white; +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #2C2C2C; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #2C2C2C; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #5b9bf8; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color white; +/* +insensitive color on backdrop windows */ +@define-color unfocused_insensitive_color rgba(255, 255, 255, 0.5); +/* +widgets main borders color */ +@define-color borders rgba(255, 255, 255, 0.12); +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders rgba(255, 255, 255, 0.12); +/* +these are pretty self explicative */ +@define-color warning_color #FDD633; +@define-color error_color #F28B82; +@define-color success_color #81C995; +/* +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 white; +@define-color wm_unfocused_title rgba(255, 255, 255, 0.7); +@define-color wm_highlight rgba(255, 255, 255, 0.1); +@define-color wm_bg #242424; +@define-color wm_unfocused_bg #2C2C2C; +/* +FIXME this is really an API */ +@define-color content_view_bg #2C2C2C; +@define-color placeholder_text_color silver; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #2C2C2C; +@define-color budgie_tasklist_indicator_color white; +@define-color budgie_tasklist_indicator_color_active white; +@define-color budgie_tasklist_indicator_color_active_window #999999; +@define-color budgie_tasklist_indicator_color_attention #FDD633; +@define-color STRAWBERRY_100 #FF9262; +@define-color STRAWBERRY_300 #FF793E; +@define-color STRAWBERRY_500 #F15D22; +@define-color STRAWBERRY_700 #CF3B00; +@define-color STRAWBERRY_900 #AC1800; +@define-color ORANGE_100 #FFDB91; +@define-color ORANGE_300 #FFCA40; +@define-color ORANGE_500 #FAA41A; +@define-color ORANGE_700 #DE8800; +@define-color ORANGE_900 #C26C00; +@define-color BANANA_100 #FFFFA8; +@define-color BANANA_300 #FFFA7D; +@define-color BANANA_500 #FFCE51; +@define-color BANANA_700 #D1A023; +@define-color BANANA_900 #A27100; +@define-color LIME_100 #A2F3BE; +@define-color LIME_300 #8ADBA6; +@define-color LIME_500 #73C48F; +@define-color LIME_700 #479863; +@define-color LIME_900 #1C6D38; +@define-color BLUEBERRY_100 #94A6FF; +@define-color BLUEBERRY_300 #6A7CE0; +@define-color BLUEBERRY_500 #3F51B5; +@define-color BLUEBERRY_700 #213397; +@define-color BLUEBERRY_900 #031579; +@define-color GRAPE_100 #D25DE6; +@define-color GRAPE_300 #B84ACB; +@define-color GRAPE_500 #9C27B0; +@define-color GRAPE_700 #830E97; +@define-color GRAPE_900 #6A007E; +@define-color COCOA_100 #9F9792; +@define-color COCOA_300 #7B736E; +@define-color COCOA_500 #574F4A; +@define-color COCOA_700 #463E39; +@define-color COCOA_900 #342C27; +@define-color SILVER_100 #EEE; +@define-color SILVER_300 #CCC; +@define-color SILVER_500 #AAA; +@define-color SILVER_700 #888; +@define-color SILVER_900 #666; +@define-color SLATE_100 #888; +@define-color SLATE_300 #666; +@define-color SLATE_500 #444; +@define-color SLATE_700 #222; +@define-color SLATE_900 #111; +@define-color BLACK_100 #474341; +@define-color BLACK_300 #403C3A; +@define-color BLACK_500 #393634; +@define-color BLACK_700 #33302F; +@define-color BLACK_900 #2B2928; diff --git a/Cutefish-dark/gtk-4.0/gtk.css b/Cutefish-dark/gtk-4.0/gtk.css new file mode 100644 index 0000000..89cfeca --- /dev/null +++ b/Cutefish-dark/gtk-4.0/gtk.css @@ -0,0 +1,4645 @@ +/*************** + * Base States * + ***************/ +.background { + background-color: #2C2C2C; + color: white; +} + +dnd { + color: white; +} + +.normal-icons { + -gtk-icon-size: 16px; +} + +.large-icons { + -gtk-icon-size: 32px; +} + +spinner:disabled, +arrow:disabled, +scrollbar:disabled, +check:disabled, +radio:disabled, +treeview.expander:disabled { + -gtk-icon-filter: opacity(0.5); +} + +iconview, .view { + color: white; +} + +iconview:disabled, .view:disabled { + color: rgba(255, 255, 255, 0.5); +} + +iconview:selected, .view:selected { + color: white; +} + +textview text { + background-color: #2C2C2C; +} + +textview border { + background-color: #242424; + color: rgba(255, 255, 255, 0.7); +} + +iconview:hover, iconview:selected { + border-radius: 3px; +} + +rubberband, .content-view rubberband, .content-view columnview.view > rubberband, +.content-view treeview.view > rubberband, .content-view .rubberband, columnview.view > rubberband, .content-view columnview.view > .rubberband, +treeview.view > rubberband, +.content-view treeview.view > .rubberband, gridview > rubberband, flowbox > rubberband { + border: 1px solid #5b9bf8; + background-color: rgba(91, 155, 248, 0.3); +} + +flowbox > flowboxchild { + padding: 4px; + border-radius: 6px; +} + +.content-view .tile:selected { + background-color: transparent; +} + +gridview > child { + padding: 3px; +} + +gridview > child:selected { + outline-color: alpha(currentColor, 0.06); +} + +gridview > child box { + border-spacing: 8px; + margin: 12px; +} + +coverflow cover { + color: white; + background-color: #2C2C2C; + border: 1px solid black; +} + +label.separator { + color: rgba(255, 255, 255, 0.7); +} + +label:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; +} + +label.osd { + border-radius: 6px; + background-color: rgba(25, 25, 25, 0.9); + color: white; +} + +.dim-label { + color: rgba(255, 255, 255, 0.7); +} + +window.assistant .sidebar { + padding: 4px 0; +} + +window.assistant .sidebar label { + min-height: 36px; + padding: 0 12px; + color: rgba(255, 255, 255, 0.5); + font-weight: 500; +} + +window.assistant .sidebar label.highlight { + color: white; +} + +.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: white; + background-color: #2C2C2C; + background-clip: padding-box; + border-radius: 6px; + border: none; +} + +.osd { + padding: 6px; + margin: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12); +} + +.osd.circular { + border-radius: 9999px; +} + +/********************* + * 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; +} + +.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 { + font-weight: 400; + font-size: 9pt; +} + +.caption-heading { + font-weight: 700; + font-size: 9pt; +} + +/**************** + * Text Entries * + ****************/ +spinbutton.vertical, spinbutton:not(.vertical), +entry { + min-height: 36px; + padding: 0 8px; + border-spacing: 6px; + border-radius: 6px; + caret-color: currentColor; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.vertical:focus-within, spinbutton:focus-within:not(.vertical), +entry:focus-within { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +spinbutton.vertical:drop(active), spinbutton:drop(active):not(.vertical), +entry:drop(active) { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +spinbutton.vertical:disabled, spinbutton:disabled:not(.vertical), +entry:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.flat.vertical, spinbutton.flat:not(.vertical), +entry.flat { + min-height: 0; + padding: 2px; + border-radius: 0; + background-color: transparent; +} + +spinbutton.vertical image, spinbutton:not(.vertical) image, +entry image { + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical image:hover, spinbutton:not(.vertical) image:hover, spinbutton.vertical image:active, spinbutton:not(.vertical) image:active, +entry image:hover, +entry image:active { + color: white; +} + +spinbutton.vertical image:disabled, spinbutton:not(.vertical) image:disabled, +entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical image.left, spinbutton:not(.vertical) image.left, +entry image.left { + margin-left: 2px; + margin-right: 6px; +} + +spinbutton.vertical image.right, spinbutton:not(.vertical) image.right, +entry image.right { + margin-left: 6px; + margin-right: 2px; +} + +spinbutton.vertical undershoot.left, spinbutton:not(.vertical) undershoot.left, +entry undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.vertical undershoot.right, spinbutton:not(.vertical) undershoot.right, +entry undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.error.vertical, spinbutton.error:not(.vertical), +entry.error { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.error.vertical:focus-within, spinbutton.error:focus-within:not(.vertical), +entry.error:focus-within { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #F28B82; +} + +spinbutton.error.vertical:disabled, spinbutton.error:disabled:not(.vertical), +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.warning.vertical, spinbutton.warning:not(.vertical), +entry.warning { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.warning.vertical:focus-within, spinbutton.warning:focus-within:not(.vertical), +entry.warning:focus-within { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #FDD633; +} + +spinbutton.warning.vertical:disabled, spinbutton.warning:disabled:not(.vertical), +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical > progress, spinbutton:not(.vertical) > progress, +spinbutton.vertical progress > trough > progress, +spinbutton:not(.vertical) progress > trough > progress, +entry > progress, +entry progress > trough > progress { + margin: 2px -8px; + border-bottom: 2px solid #5b9bf8; + background-color: transparent; +} + +treeview entry.flat, treeview entry { + background-color: #2C2C2C; +} + +treeview entry.flat, treeview entry.flat:focus-within, treeview entry, treeview entry:focus-within { + border-image: none; + box-shadow: none; +} + +.entry-tag { + margin: 2px; + border-radius: 9999px; + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +.entry-tag:hover { + background-image: image(alpha(currentColor, 0.08)); +} + +:dir(ltr) .entry-tag { + margin-left: 4px; + margin-right: 0; + padding-left: 12px; + padding-right: 8px; +} + +:dir(rtl) .entry-tag { + margin-left: 0; + margin-right: 4px; + padding-left: 8px; + padding-right: 12px; +} + +.entry-tag.button { + box-shadow: none; + background-color: transparent; +} + +.entry-tag.button:not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +editablelabel > stack > text { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: radial-gradient(farthest-side, #5b9bf8 0%, rgba(91, 155, 248, 0) 0%); + } + to { + background-image: radial-gradient(farthest-side, #5b9bf8 95%, rgba(91, 155, 248, 0)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button, popover.background.touch-selection button, popover.background.magnifier button, headerbar.selection-mode button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +infobar.warning > revealer > box button:focus, popover.background.touch-selection button:focus, popover.background.magnifier button:focus, headerbar.selection-mode button:focus:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:hover, popover.background.touch-selection button:hover, popover.background.magnifier button:hover, headerbar.selection-mode button:hover:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:active, popover.background.touch-selection button:active, popover.background.magnifier button:active, headerbar.selection-mode button:active:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:checked, popover.background.touch-selection button:checked, popover.background.magnifier button:checked, headerbar.selection-mode button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +infobar.warning > revealer > box button:disabled, popover.background.touch-selection button:disabled, popover.background.magnifier button:disabled, headerbar.selection-mode button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +infobar.warning > revealer > box button:checked:disabled, popover.background.touch-selection button:checked:disabled, popover.background.magnifier button:checked:disabled, headerbar.selection-mode button:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:not(.suggested-action):not(.destructive-action), button { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +actionbar > revealer > box .linked > button:focus:not(.suggested-action):not(.destructive-action), button:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +actionbar > revealer > box .linked > button:hover:not(.suggested-action):not(.destructive-action), button:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +actionbar > revealer > box .linked > button:active:not(.suggested-action):not(.destructive-action), button:active { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + +actionbar > revealer > box .linked > button:disabled:not(.suggested-action):not(.destructive-action), button:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:checked:not(.suggested-action):not(.destructive-action), button:checked { + background-color: #5b9bf8; + color: white; +} + +actionbar > revealer > box .linked > button:checked:hover:not(.suggested-action):not(.destructive-action), button:checked:hover { + box-shadow: inset 0 0 0 9999px transparent; +} + +actionbar > revealer > box .linked > button:checked:disabled:not(.suggested-action):not(.destructive-action), button:checked:disabled { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.1); + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button { + min-height: 24px; + min-width: 16px; + padding: 6px 10px; + border-radius: 6px; + font-weight: 500; +} + +button:drop(active) { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placessidebar .navigation-sidebar > row button.sidebar-button, calendar > header > button, columnview.view > header > button button.circular, +treeview.view > header > button button.circular, row.activatable button.circular, scrollbar button, notebook > header > tabs > arrow, spinbutton.vertical > button, spinbutton:not(.vertical) > button, modelbutton.flat, filechooser #pathbarbox > stack > box > button, window.dialog.message .dialog-action-area > button, .app-notification button, actionbar > revealer > box button:not(.suggested-action):not(.destructive-action), popover.background.menu button, +popover.background button.model, headerbar button:not(.suggested-action):not(.destructive-action), .toolbar button, +toolbar button, dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child), button.flat { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: transparent; + color: rgba(255, 255, 255, 0.7); +} + +placessidebar .navigation-sidebar > row button.sidebar-button:focus, calendar > header > button:focus, columnview.view > header > button button.circular:focus, +treeview.view > header > button button.circular:focus, row.activatable button.circular:focus, scrollbar button:focus, notebook > header > tabs > arrow:focus, spinbutton.vertical > button:focus, spinbutton:not(.vertical) > button:focus, modelbutton.flat:focus, filechooser #pathbarbox > stack > box > button:focus, window.dialog.message .dialog-action-area > button:focus, .app-notification button:focus, actionbar > revealer > box button:focus:not(.suggested-action):not(.destructive-action), popover.background.menu button:focus, +popover.background button.model:focus, headerbar button:focus:not(.suggested-action):not(.destructive-action), .toolbar button:focus, +toolbar button:focus, dropdown > .linked:not(.vertical) > button:focus:not(:only-child), +combobox > .linked:not(.vertical) > button:focus:not(:only-child), button.flat:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: white; +} + +placessidebar .navigation-sidebar > row button.sidebar-button:hover, calendar > header > button:hover, columnview.view > header > button button.circular:hover, +treeview.view > header > button button.circular:hover, row.activatable button.circular:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, spinbutton.vertical > button:hover, spinbutton:not(.vertical) > button:hover, modelbutton.flat:hover, filechooser #pathbarbox > stack > box > button:hover, window.dialog.message .dialog-action-area > button:hover, .app-notification button:hover, actionbar > revealer > box button:hover:not(.suggested-action):not(.destructive-action), popover.background.menu button:hover, +popover.background button.model:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), .toolbar button:hover, +toolbar button:hover, dropdown > .linked:not(.vertical) > button:hover:not(:only-child), +combobox > .linked:not(.vertical) > button:hover:not(:only-child), button.flat:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: white; +} + +placessidebar .navigation-sidebar > row button.sidebar-button:active, calendar > header > button:active, columnview.view > header > button button.circular:active, +treeview.view > header > button button.circular:active, row.activatable button.circular:active, scrollbar button:active, notebook > header > tabs > arrow:active, spinbutton.vertical > button:active, spinbutton:not(.vertical) > button:active, modelbutton.flat:active, filechooser #pathbarbox > stack > box > button:active, window.dialog.message .dialog-action-area > button:active, .app-notification button:active, actionbar > revealer > box button:active:not(.suggested-action):not(.destructive-action), popover.background.menu button:active, +popover.background button.model:active, headerbar button:active:not(.suggested-action):not(.destructive-action), .toolbar button:active, +toolbar button:active, dropdown > .linked:not(.vertical) > button:active:not(:only-child), +combobox > .linked:not(.vertical) > button:active:not(:only-child), button.flat:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); + color: white; +} + +placessidebar .navigation-sidebar > row button.sidebar-button:disabled, calendar > header > button:disabled, columnview.view > header > button button.circular:disabled, +treeview.view > header > button button.circular:disabled, row.activatable button.circular:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, spinbutton.vertical > button:disabled, spinbutton:not(.vertical) > button:disabled, modelbutton.flat:disabled, filechooser #pathbarbox > stack > box > button:disabled, window.dialog.message .dialog-action-area > button:disabled, .app-notification button:disabled, actionbar > revealer > box button:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:disabled, +popover.background button.model:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:disabled, +toolbar button:disabled, dropdown > .linked:not(.vertical) > button:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:disabled:not(:only-child), button.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +filechooser #pathbarbox > stack > box > button:checked, window.dialog.message .dialog-action-area > button:checked, .app-notification button:checked, actionbar > revealer > box button:checked:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked, +popover.background button.model:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), .toolbar button:checked, +toolbar button:checked, dropdown > .linked:not(.vertical) > button:checked:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:not(:only-child), button.flat:checked, button.flat:checked:hover { + background-color: alpha(currentColor, 0.1); + color: white; +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, window.dialog.message .dialog-action-area > button:checked:disabled, .app-notification button:checked:disabled, actionbar > revealer > box button:checked:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked:disabled, +popover.background button.model:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:checked:disabled, +toolbar button:checked:disabled, dropdown > .linked:not(.vertical) > button:checked:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(255, 255, 255, 0.5); +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.text-button.flat { + min-width: 48px; + padding-left: 8px; + padding-right: 8px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child) { + margin: 0 4px; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + border-radius: 6px; +} + +.linked:not(.vertical) > button.flat:focus, .linked.vertical > button.flat:focus { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +button.osd { + padding: 12px 16px; +} + +button.osd.image-button { + padding: 12px; +} + +button.osd:disabled { + opacity: 0; +} + +button.suggested-action { + background-color: #5b9bf8; + color: white; + box-shadow: none; +} + +button.suggested-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(91, 155, 248, 0.2), 0 4px 3px 0 rgba(91, 155, 248, 0.14), 0 1px 6px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:checked { + background-color: #8cb9fa; +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(91, 155, 248, 0.3), 0 2px 3px -1px rgba(91, 155, 248, 0.24), 0 2px 5px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #5b9bf8; +} + +button.suggested-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.suggested-action.flat:checked { + background-color: rgba(91, 155, 248, 0.3); +} + +button.destructive-action { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); + box-shadow: none; +} + +button.destructive-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(242, 139, 130, 0.2), 0 4px 3px 0 rgba(242, 139, 130, 0.14), 0 1px 6px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:checked { + background-color: rgba(182, 105, 98, 0.961); +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(242, 139, 130, 0.3), 0 2px 3px -1px rgba(242, 139, 130, 0.24), 0 2px 5px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(242, 139, 130, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #F28B82; +} + +button.destructive-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.destructive-action.flat:checked { + background-color: rgba(242, 139, 130, 0.3); +} + +stackswitcher > button > label { + margin: 0 -6px; + padding: 0 6px; +} + +stackswitcher > button > image { + margin: -3px -6px; + padding: 3px 6px; +} + +stackswitcher > button.needs-attention:checked > label, +stackswitcher > button.needs-attention:checked > image { + animation: none; + background-image: none; +} + +button.font > box, button.file > box { + border-spacing: 6px; +} + +button.font > box > box > label, button.file > box > box > label { + font-weight: bold; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action), filechooser #pathbarbox > stack > box > button, button.close, button.circular { + border-radius: 9999px; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, button.close label, button.circular label { + padding: 0; +} + +placessidebar .navigation-sidebar > row button.sidebar-button, notebook > header tab button.flat, popover.menu box.circular-buttons button.circular.image-button.model, spinbutton.vertical > button, spinbutton:not(.vertical) > button { + min-height: 24px; + min-width: 24px; + padding: 0; + border-radius: 9999px; +} + +stacksidebar row.needs-attention > label, stackswitcher > button.needs-attention > label, +stackswitcher > button.needs-attention > image { + animation: needs-attention 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-repeat: no-repeat; + background-position: right 3px; + background-size: 6px 6px; +} + +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; +} + +.linked:not(.vertical) > spinbutton.vertical, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry, .linked:not(.vertical) > button, .linked:not(.vertical) > button.image-button { + border-radius: 0; +} + +.linked:not(.vertical) > spinbutton.vertical:first-child, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child, .linked:not(.vertical) > button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.linked:not(.vertical) > spinbutton.vertical:last-child, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child, .linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > spinbutton.vertical:only-child, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child, .linked:not(.vertical) > button:only-child { + border-radius: 6px; +} + +.linked.vertical > spinbutton.vertical, .linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry, .linked.vertical > button, .linked.vertical > button.image-button { + border-radius: 0; +} + +.linked.vertical > spinbutton.vertical:first-child, .linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child, .linked.vertical > button:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > spinbutton.vertical:last-child, .linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child, .linked.vertical > button:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > spinbutton.vertical:only-child, .linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child, .linked.vertical > button:only-child { + border-radius: 6px; +} + +/* menu buttons */ +modelbutton.flat { + min-height: 28px; + padding: 0 9px; + border-radius: 6px; + color: white; +} + +modelbutton.flat arrow.left { + -gtk-icon-source: -gtk-icontheme("go-previous-symbolic"); +} + +modelbutton.flat arrow.right { + -gtk-icon-source: -gtk-icontheme("go-next-symbolic"); +} + +button.color { + min-height: 24px; + min-width: 24px; + padding: 6px; +} + + +list > row button.image-button:not(.flat) { + background-color: transparent; + box-shadow: none; + border: none; +} + + +list > row button.image-button:not(.flat):hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + + +list > row button.image-button:not(.flat):active, +list > row button.image-button:not(.flat):checked { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + + +list > row button.image-button:not(.flat).suggested-action { + background-color: #5b9bf8; + color: white; +} + + +list > row button.image-button:not(.flat).destructive-action { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); +} + +/********* + * Links * + *********/ +link { + color: #2196F3; +} + +link:visited { + color: #CE93D8; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #2196F3; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #CE93D8; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton:not(.vertical) { + padding: 0; + border-spacing: 0; +} + +spinbutton:not(.vertical) > text { + min-width: 32px; + margin: 0; + padding-left: 12px; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +spinbutton:not(.vertical) > button { + border: solid 6px transparent; +} + +spinbutton:not(.vertical) > button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton:not(.vertical) > button.up:dir(ltr), spinbutton:not(.vertical) > button.down:dir(rtl) { + margin-left: -3px; +} + +spinbutton:not(.vertical) > button.up:dir(rtl), spinbutton:not(.vertical) > button.down:dir(ltr) { + margin-right: -3px; +} + +spinbutton.vertical { + padding: 0; +} + +spinbutton.vertical:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical > text { + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical > button { + padding: 0; + border: solid 6px transparent; +} + +spinbutton.vertical > button:focus:not(:hover):not(:active) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical > button.up { + margin: 0 3px; +} + +spinbutton.vertical > button.down { + margin: 0 3px; +} + +treeview spinbutton:not(.vertical), row spinbutton:not(.vertical) { + min-height: 0; + border-style: none; + border-radius: 0; +} + +treeview spinbutton:not(.vertical) > text, row 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 button.combo cellview:dir(ltr), +combobox button.combo cellview:dir(ltr) { + margin-left: -2px; +} + +dropdown button.combo cellview:dir(rtl), +combobox button.combo cellview:dir(rtl) { + margin-right: -2px; +} + +dropdown popover, +combobox popover { + margin-top: 4px; + padding: 0; +} + +dropdown popover listview, +combobox popover listview { + margin: 6px 0; +} + +dropdown popover listview > row, +combobox popover listview > row { + padding: 6px; +} + +dropdown popover listview > row:selected, +combobox popover listview > row:selected { + color: white; + background-color: alpha(currentColor, 0.06); +} + +dropdown popover .dropdown-searchbar, +combobox popover .dropdown-searchbar { + padding: 6px; +} + +dropdown.linked button:nth-child(2):dir(ltr), +combobox.linked button:nth-child(2):dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +dropdown.linked button:nth-child(2):dir(rtl), +combobox.linked button:nth-child(2):dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child), +combobox > .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child):first-child, +combobox > .linked:not(.vertical) > entry:not(:only-child):first-child { + margin-right: -36px; + padding-right: 36px; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child):last-child, +combobox > .linked:not(.vertical) > entry:not(:only-child):last-child { + margin-left: -36px; + padding-left: 36px; +} + +dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child) { + min-height: 16px; + min-width: 16px; + margin: 6px; + padding: 4px; + border-radius: 6px; +} + +.linked:not(.vertical) > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.linked:not(.vertical) > combobox:not(:last-child) > box > button.combo { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.linked.vertical > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.linked.vertical > combobox:not(:last-child) > box > button.combo { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +button.combo:only-child { + border-radius: 6px; + font-weight: normal; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +button.combo:only-child:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: white; +} + +button.combo:only-child:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: white; +} + +button.combo:only-child:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); + color: white; +} + +button.combo:only-child:checked { + background-color: alpha(currentColor, 0.1); + color: white; +} + +button.combo:only-child:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +/************ + * Toolbars * + ************/ +.toolbar, +toolbar { + padding: 3px 6px; + background-color: #2C2C2C; + border-spacing: 6px; +} + +.osd .toolbar, .osd toolbar { + background-color: transparent; +} + +.app-notification, .toolbar.osd, +toolbar.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +.app-notification:backdrop, .toolbar.osd:backdrop, +toolbar.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +.left.app-notification, .right.app-notification, .top.app-notification, .bottom.app-notification, .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; +} + +.bottom.app-notification, .toolbar.osd.bottom, +toolbar.osd.bottom { + box-shadow: none; + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.4)); +} + +.toolbar.horizontal > separator, +toolbar.horizontal > separator { + margin: 2px; +} + +.toolbar.vertical > separator, +toolbar.vertical > separator { + margin: 2px; +} + +.toolbar:not(.inline-toolbar):not(.osd) scale, +.toolbar:not(.inline-toolbar):not(.osd) entry, +.toolbar:not(.inline-toolbar):not(.osd) spinbutton, +.toolbar:not(.inline-toolbar):not(.osd) button, +toolbar:not(.inline-toolbar):not(.osd) scale, +toolbar:not(.inline-toolbar):not(.osd) entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton, +toolbar:not(.inline-toolbar):not(.osd) button { + margin: 2px; +} + +.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child) { + margin-left: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child) { + margin-right: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +.toolbar:not(.inline-toolbar):not(.osd) spinbutton button, +toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton button { + margin: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) switch, +toolbar:not(.inline-toolbar):not(.osd) switch { + margin: 8px 2px; +} + +.toolbar button { + margin: 1px; + border-radius: 3px; +} + +searchbar > revealer > box { + padding: 6px; + border-spacing: 6px; + border-style: solid; + border-width: 0 0 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + border: none; +} + +headerbar .linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + border-radius: 6px; +} + +headerbar button:focus:not(.suggested-action):not(.destructive-action), headerbar button:hover:not(.suggested-action):not(.destructive-action), headerbar button:active:not(.suggested-action):not(.destructive-action), headerbar button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action) { + background-color: transparent; + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:focus:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:hover:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:backdrop:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar entry { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +headerbar entry:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +headerbar entry image { + color: rgba(255, 255, 255, 0.7); +} + +headerbar entry image:hover, headerbar entry image:active { + color: white; +} + +headerbar entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); + background-color: #242424; + color: white; + min-height: 48px; + padding: 0 6px; +} + +headerbar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +headerbar:backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +headerbar .title { + padding: 0 12px; + font-weight: bold; +} + +headerbar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +headerbar .subtitle, +headerbar .dim-label { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +headerbar .subtitle:backdrop, +headerbar .dim-label:backdrop { + color: rgba(255, 255, 255, 0.5); +} + +headerbar .titlebar { + background-color: transparent; + box-shadow: none; +} + +headerbar headerbar + separator { + background-color: rgba(255, 255, 255, 0.12); +} + +box.vertical headerbar { + background-color: #242424; +} + +headerbar > windowhandle > box { + padding: 0 3px; +} + +headerbar > windowhandle > box, +headerbar > windowhandle > box > box.start, +headerbar > windowhandle > box > box.end { + border-spacing: 6px; +} + +headerbar entry, +headerbar spinbutton, +headerbar button, +headerbar stackswitcher { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar menubutton.popup { + margin-top: 0; + margin-bottom: 0; +} + +headerbar separator:not(.sidebar) { + margin-top: 12px; + margin-bottom: 12px; + background-color: rgba(255, 255, 255, 0.12); +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar spinbutton button { + margin-top: 0; + margin-bottom: 0; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +headerbar button.suggested-action:disabled, headerbar button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +headerbar.selection-mode { + transition: background-color 0.1ms 0ms, color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #5b9bf8; + color: white; +} + +headerbar.selection-mode:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +headerbar.selection-mode .subtitle:link { + color: white; +} + +headerbar.selection-mode .selection-menu { + padding-left: 16px; + padding-right: 16px; +} + +headerbar.selection-mode .selection-menu .arrow { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +headerbar .selection-mode { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #5b9bf8; +} + +headerbar.default-decoration { + min-height: 24px; + padding: 6px; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); +} + +headerbar.default-decoration windowcontrols button, +headerbar.default-decoration windowcontrols menubutton { + min-width: 16px; + min-height: 16px; + margin: 0; + padding: 0; +} + +headerbar.default-decoration windowcontrols menubutton button { + min-height: 20px; + min-width: 20px; + margin: 0; + padding: 4px; +} + +.solid-csd headerbar:dir(rtl), .solid-csd headerbar:dir(ltr) { + border-radius: 0; + box-shadow: none; +} + +window.devel headerbar.titlebar { + background: #242424 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, linear-gradient(to right, transparent 65%, rgba(91, 155, 248, 0.1)), linear-gradient(to top, #2c2c2c 3px, #313131); +} + +window.devel headerbar.titlebar:backdrop { + background: #242424 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, image(#242424); + /* background-color would flash */ +} + +viewswitcher { + margin: 0; +} + +viewswitcher.wide { + border-spacing: 3px; +} + +viewswitcher.narrow button.toggle { + border-radius: 0; + margin: 0; +} + +viewswitcher.narrow button.toggle:focus-within, viewswitcher.narrow button.toggle:focus { + box-shadow: none; +} + +viewswitcher button.toggle { + font-weight: bold; + padding: 0; +} + +viewswitcher button.toggle > stack > box.narrow { + font-size: 0.75rem; + padding-top: 6px; + padding-bottom: 4px; + border-spacing: 4px; +} + +viewswitcher button.toggle > stack > box.narrow > stack > label { + padding-left: 6px; + padding-right: 6px; +} + +viewswitcher button.toggle > stack > box.wide { + padding: 2px 12px; + border-spacing: 6px; +} + +viewswitcherbar actionbar > revealer > box { + padding: 0; +} + +viewswitchertitle viewswitcher { + margin-left: 12px; + margin-right: 12px; +} + +indicatorbin > indicator, indicatorbin > mask { + min-width: 6px; + min-height: 6px; + border-radius: 9999px; +} + +indicatorbin > indicator { + margin: 1px; + background-color: alpha(currentColor, 0.4); +} + +indicatorbin > indicator > label { + font-size: 0.6rem; + font-weight: bold; + padding: 1px 4px; + color: white; +} + +indicatorbin > mask { + padding: 1px; + background: black; +} + +indicatorbin.needs-attention > indicator { + background-color: #5b9bf8; +} + +indicatorbin.needs-attention > indicator > label { + color: white; +} + +/************ + * Pathbars * + ************/ + +pathbar > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 6px; + background-color: alpha(currentColor, 0.08); +} + + +pathbar > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +pathbar > button:checked { + background-color: alpha(currentColor, 0.16); + color: white; +} + + +pathbar > button label:not(:only-child):first-child { + margin-left: 0; +} + + +pathbar > button label:not(:only-child):last-child { + margin-right: 0; +} + + +pathbar > button.text-button { + min-width: 0; +} + + +pathbar > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +/************** + * Tree Views * + **************/ +columnview.view, +treeview.view { + border-left-color: #4b4b4b; + border-top-color: #4b4b4b; +} + +columnview.view:hover, columnview.view:selected, +treeview.view:hover, +treeview.view:selected { + border-radius: 0; + box-shadow: none; +} + +columnview.view.separator, +treeview.view.separator { + min-height: 5px; + color: rgba(255, 255, 255, 0.12); +} + +columnview.view:drop(active), +treeview.view:drop(active) { + box-shadow: none; +} + +columnview.view:drop(active).after, +treeview.view:drop(active).after { + border-top-style: none; +} + +columnview.view:drop(active).before, +treeview.view:drop(active).before { + border-bottom-style: none; +} + +columnview.view > dndtarget:drop(active), +treeview.view > dndtarget:drop(active) { + border-style: solid none; + border-width: 1px; + border-color: alpha(currentColor, 0.06); +} + +columnview.view > dndtarget:drop(active).after, +treeview.view > dndtarget:drop(active).after { + border-top-style: none; +} + +columnview.view > dndtarget:drop(active).before, +treeview.view > dndtarget:drop(active).before { + border-bottom-style: none; +} + +columnview.view.expander, +treeview.view.expander { + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); + color: rgba(255, 255, 255, 0.7); +} + +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: white; +} + +columnview.view.expander:selected, +treeview.view.expander:selected { + color: white; +} + +columnview.view.expander:selected:hover, +treeview.view.expander:selected:hover { + color: white; +} + +columnview.view.expander:checked, +treeview.view.expander:checked { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +columnview.view.expander:disabled, +treeview.view.expander:disabled { + color: rgba(255, 255, 255, 0.3); +} + +columnview.view.progressbar, +treeview.view.progressbar { + border-bottom: 6px solid #5b9bf8; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +columnview.view.progressbar:selected:hover, +treeview.view.progressbar:selected:hover { + box-shadow: none; +} + +columnview.view.trough, +treeview.view.trough { + border-bottom: 6px solid rgba(255, 255, 255, 0.12); + box-shadow: none; + background-color: transparent; + background-image: none; +} + +columnview.view.trough:selected:hover, +treeview.view.trough:selected:hover { + box-shadow: none; +} + +columnview.view > header > button, +treeview.view > header > button { + padding: 2px 6px; + border-style: none solid solid none; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + background-clip: border-box; +} + +columnview.view > header > button:not(:focus):not(:hover):not(:active), +treeview.view > header > button:not(:focus):not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +columnview.view > header > button, columnview.view > header > button:disabled, +treeview.view > header > button, +treeview.view > header > button:disabled { + background-color: #2C2C2C; +} + +columnview.view > header > button:last-child, +treeview.view > header > button:last-child { + border-right-style: none; +} + +columnview.view button.dnd, +columnview.view header.button.dnd, +treeview.view button.dnd, +treeview.view header.button.dnd { + padding: 2px 6px; + border-style: none solid solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + box-shadow: none; + background-color: #2C2C2C; + background-clip: border-box; + color: #5b9bf8; +} + +columnview.view acceleditor > label, +treeview.view acceleditor > label { + background-color: #5b9bf8; +} + +/********* + * Menus * + *********/ +menubar { + padding: 0; + background-color: #242424; + color: white; +} + +menubar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.csd menubar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > item { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + padding: 4px 8px; + color: rgba(255, 255, 255, 0.7); +} + +menubar > item:selected { + transition: none; + background-color: alpha(currentColor, 0.1); + color: white; +} + +menubar > item:disabled { + color: rgba(255, 255, 255, 0.3); +} + +menubar > item label:disabled { + color: inherit; +} + +menubar > item popover.menu popover.menu { + margin-left: 9px; +} + +menubar > item popover.menu.background popover.menu.background > contents { + margin: 0; + border-radius: 12px; +} + +/********************** + * Popover Base Menus * + **********************/ +popover.menu box.inline-buttons { + padding: 0 6px; +} + +popover.menu box.inline-buttons button.image-button.model { + min-height: 28px; + min-width: 28px; + padding: 0; + border: none; + outline: none; + transition: none; +} + +popover.menu box.inline-buttons button.image-button.model:selected { + background: image(alpha(currentColor, 0.06)); +} + +popover.menu box.circular-buttons { + padding: 6px; +} + +popover.menu box.circular-buttons button.circular.image-button.model { + padding: 6px; +} + +popover.menu box.circular-buttons button.circular.image-button.model:focus { + background-color: alpha(currentColor, 0.06); +} + +popover.menu.background separator { + margin: 6px 0; +} + +popover.menu arrow.left, +popover.menu radio.left, +popover.menu check.left { + margin-left: 0; + margin-right: 0; +} + +popover.menu arrow.right, +popover.menu radio.right, +popover.menu check.right { + margin-left: 0; + margin-right: 0; +} + +popover.menu modelbutton { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 22px; + min-width: 56px; + padding: 3px 9px; + color: white; + font: initial; + text-shadow: none; + box-shadow: none; + background: none; +} + +popover.menu modelbutton:hover { + transition: none; + background-color: alpha(currentColor, 0.08); +} + +popover.menu modelbutton:disabled { + color: rgba(255, 255, 255, 0.5); +} + +popover.menu label.title { + font-weight: bold; + padding: 4px 26px; +} + +/************ + * Popovers * + ************/ +popover.background { + font: initial; +} + +popover.background, popover.background:backdrop { + background-color: transparent; +} + +popover.background > arrow, +popover.background > contents { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + background-color: #3C3C3C; + border-radius: 12px; + border: 1px solid rgba(255, 255, 255, 0.1); + background-clip: border-box; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.75), 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05); +} + +popover.background > arrow:backdrop, +popover.background > contents:backdrop { + box-shadow: 0 3px 2px -2px rgba(0, 0, 0, 0.05), 0 2px 3px -1px rgba(0, 0, 0, 0.06), 0 1px 4px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +popover.background > contents > list, +popover.background > contents > .view, +popover.background > contents > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover.background > contents separator { + background-color: rgba(255, 255, 255, 0.12); + margin: 3px 0; +} + +popover.background > contents list separator { + margin: 0; +} + +popover.background .view:not(:selected), +popover.background toolbar { + background-color: #3C3C3C; +} + +popover.background .linked > button:not(.radio) { + background-color: transparent; + box-shadow: none; + border-radius: 6px; +} + +s +popover.background .linked > button:not(.radio):first-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):last-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):only-child { + border-radius: 6px; +} + +popover.background.menu button, +popover.background button.model { + min-height: 32px; + padding: 0 8px; + border-radius: 6px; +} + +.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: none; + box-shadow: none; +} + +magnifier { + background-color: #2C2C2C; +} + +/************* + * Notebooks * + *************/ +tabbar tab, notebook > header tab { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + min-height: 24px; + min-width: 24px; + padding: 3px 12px; + border: none; + outline: none; + background-clip: padding-box; + color: rgba(255, 255, 255, 0.7); + font-weight: 500; + border-radius: 6px; + background-image: none; + background-color: transparent; +} + +tabbar tab:hover, notebook > header tab:hover { + background-color: rgba(255, 255, 255, 0.04); + background-image: none; + color: white; +} + +tabbar tab:disabled, notebook > header tab:disabled { + color: rgba(255, 255, 255, 0.3); +} + +tabbar tab:checked, notebook > header tab:checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); + background-image: none; +} + +tabbar tab:checked:disabled, notebook > header tab:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +frame > paned > notebook > header, notebook.frame > header { + background-color: rgba(255, 255, 255, 0.04); +} + +notebook, notebook.frame { + background-color: #2C2C2C; + border-radius: 12px; +} + +notebook.frame frame > border { + border: none; + border-radius: 6px; +} + +notebook.frame frame > list row.activatable { + border-radius: 6px; +} + +notebook > header { + border: none; + background-color: rgba(255, 255, 255, 0.04); + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +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 { + padding-left: 4px; + padding-right: 4px; +} + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { + margin-left: 0; + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { + margin-right: 0; + -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 { + padding-top: 4px; + padding-bottom: 4px; +} + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { + margin-top: 0; + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { + margin-bottom: 0; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +notebook > header > tabs > arrow { + min-height: 16px; + min-width: 16px; + border-radius: 6px; +} + +notebook > header tab > box { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header tab > box:drop(active) { + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +notebook > header tab button.flat:last-child { + margin-left: 6px; + margin-right: -6px; +} + +notebook > header tab button.flat:first-child { + margin-left: -6px; + margin-right: 6px; +} + +notebook > header tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child { + margin-left: 0; +} + +notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child { + margin-right: 0; +} + +notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child { + margin-top: 0; +} + +notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child { + margin-bottom: 0; +} + +notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header > menubutton > button.image-button { + padding: 3px; + min-width: 24px; + min-height: 24px; + margin-left: 3px; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +tabbar .box { + min-height: 36px; + border-bottom: none; + background: none; +} + +tabbar scrolledwindow.pinned undershoot { + border: 0 solid rgba(255, 255, 255, 0.12); +} + +tabbar scrolledwindow.pinned:dir(rtl) undershoot.left { + border-left-width: 1px; +} + +tabbar scrolledwindow.pinned:dir(ltr) undershoot.right { + border-right-width: 1px; +} + +tabbar scrolledwindow.pinned tabbox > background:dir(ltr) { + box-shadow: inset -1px 0 rgba(255, 255, 255, 0.12); +} + +tabbar scrolledwindow.pinned tabbox > background:dir(rtl) { + box-shadow: inset 1px 0 rgba(255, 255, 255, 0.12); +} + +tabbar undershoot { + transition: background 150ms ease-in-out; +} + +tabbar undershoot.left { + background: linear-gradient(to right, #2C2C2C, rgba(0, 0, 0, 0) 20px); +} + +tabbar undershoot.right { + background: linear-gradient(to left, #2C2C2C, rgba(0, 0, 0, 0) 20px); +} + +tabbar .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar tabbox { + background-color: rgba(255, 255, 255, 0.04); + background-image: none; + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +tabbar tabbox > background { + background: none; +} + +tabbar tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#5b9bf8, 0.4) 10%, alpha(#5b9bf8, 0) 30%); +} + +tabbar tab.needs-attention:hover { + background-image: image(alpha(currentColor, 0.03)), radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#5b9bf8, 0.4) 10%, alpha(#5b9bf8, 0) 30%); +} + +tabbar .start-action, +tabbar .end-action { + background-color: rgba(255, 255, 255, 0.04); + background-clip: padding-box; + border-color: rgba(255, 255, 255, 0.12); + border-style: solid; + transition: background 150ms ease-in-out; +} + +tabbar .start-action button, +tabbar .end-action button { + border: none; + border-radius: 0; +} + +tabbar .start-action:dir(ltr), +tabbar .end-action:dir(rtl) { + border-right-width: 1px; +} + +tabbar .start-action:dir(rtl), +tabbar .end-action:dir(ltr) { + border-left-width: 1px; +} + +tabbar:not(.inline) scrolledwindow.pinned undershoot { + border-color: rgba(255, 255, 255, 0.12); +} + +tabbar:not(.inline) undershoot.left { + background: linear-gradient(to right, #242424, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) undershoot.right { + background: linear-gradient(to left, #242424, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar:not(.inline) tabbox > background { + background-color: #242424; +} + +tabbar:not(.inline) .start-action, +tabbar:not(.inline) .end-action { + background-color: alpha(#242424, 0.6); + border-color: rgba(255, 255, 255, 0.12); +} + +tabbar:not(.inline):backdrop .box { + background-color: #2C2C2C; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +dnd tab { + min-height: 24px; + background-color: #242424; + color: white; + box-shadow: 0 1px 5px 1px rgba(0, 0, 0, 0.09), 0 2px 14px 3px rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.05); + outline: 1px solid rgba(0, 0, 0, 0.75); + outline-offset: -1px; + margin: 24px; +} + +dnd tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#5b9bf8, 0.4) 10%, alpha(#5b9bf8, 0) 30%); +} + +tabbar tab, +dnd tab { + padding: 6px; +} + +tabbar tab button.image-button, +dnd tab button.image-button { + padding: 0; + margin: 0; + min-width: 24px; + min-height: 24px; + border-radius: 9999px; +} + +tabview:drop(active), +tabbox:drop(active) { + box-shadow: none; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #2C2C2C; + box-shadow: none; + outline: none; +} + +scrollbar.top { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.bottom { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.left { + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.right { + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar > range > trough > slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 8px; + min-height: 8px; + border: 4px solid transparent; + border-radius: 9999px; + background-clip: padding-box; + background-color: rgba(255, 255, 255, 0.5); + box-shadow: none; + outline: none; +} + +scrollbar > range > trough > slider:hover { + background-color: rgba(255, 255, 255, 0.7); +} + +scrollbar > range > trough > slider:active { + background-color: white; +} + +scrollbar > range > trough > slider:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar > range.fine-tune > trough > slider { + min-width: 4px; + min-height: 4px; +} + +scrollbar > range.fine-tune.horizontal > trough > slider { + margin: 2px 0; +} + +scrollbar > range.fine-tune.vertical > trough > slider { + margin: 0 2px; +} + +scrollbar.overlay-indicator:not(.fine-tune) > range > trough > slider { + transition-property: background-color, min-height, min-width; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { + border-color: transparent; + background-color: transparent; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) > range > trough > slider { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: padding-box; + -gtk-icon-source: none; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal > range > trough > slider { + min-width: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { + min-width: 8px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical > range > trough > slider { + min-height: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { + min-height: 8px; +} + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { + background-color: rgba(60, 60, 60, 0.9); +} + +scrollbar.horizontal > range > trough > slider { + min-width: 24px; +} + +scrollbar.vertical > range > trough > slider { + min-height: 24px; +} + +scrollbar button { + min-width: 16px; + min-height: 16px; + padding: 0; + border-radius: 0; +} + +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"); +} + +/********** + * Switch * + **********/ +switch { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + margin: 6px 0; + padding: 0; + border: none; + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: border-box; + font-size: 0; + color: transparent; +} + +switch:checked { + background-color: #5b9bf8; +} + +switch:disabled { + opacity: 0.5; +} + +switch image { + margin: -8px; +} + +switch > slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 20px; + min-height: 20px; + margin: 1px; + border-radius: 9999px; + outline: none; + box-shadow: none; + background-color: white; + border: none; +} + +switch:focus slider, switch:hover slider, switch:focus:hover slider { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); +} + +/************************* + * Check and Radio items * + *************************/ +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + min-height: 40px; + min-width: 40px; + margin: 0; + padding: 0; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +.view.content-view.check:not(list):hover, .view.content-view.check:not(list):active, +.content-view .tile check:not(list):hover, +.content-view .tile check:not(list):active { + box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.12); +} + +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-unchecked-dark.png"), url("assets/selectionmode-checkbox-unchecked-dark@2.png")); +} + +.view.content-view.check:not(list):checked, +.content-view .tile check:not(list):checked { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-checked-dark.png"), url("assets/selectionmode-checkbox-checked-dark@2.png")); +} + +checkbutton, +radiobutton { + outline: none; + border-spacing: 3px; +} + +check, +radio { + min-height: 20px; + min-width: 20px; + margin: 3px; + padding: 0; + border-radius: 9999px; + color: transparent; + background-color: rgba(255, 255, 255, 0.12); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +check:hover, +radio:hover { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.04); + background-color: rgba(255, 255, 255, 0.15); +} + +check:active, +radio:active { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); + background-color: rgba(255, 255, 255, 0.2); +} + +check:disabled, +radio:disabled { + background-color: rgba(255, 255, 255, 0.04); +} + +check:checked, check:indeterminate, +radio:checked, +radio:indeterminate { + color: white; + background-color: #5b9bf8; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.15); + background-color: #8cb9fa; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.2); + background-color: #5b9bf8; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(255, 255, 255, 0.7); + background-color: rgba(91, 155, 248, 0.35); +} + +popover modelbutton.flat check, popover modelbutton.flat check:focus, popover modelbutton.flat check:hover, popover modelbutton.flat check:focus:hover, popover modelbutton.flat check:active, popover modelbutton.flat check:disabled, popover modelbutton.flat radio, popover modelbutton.flat radio:focus, popover modelbutton.flat radio:hover, popover modelbutton.flat radio:focus:hover, popover modelbutton.flat radio:active, popover modelbutton.flat radio:disabled { + transition: none; + box-shadow: none; + background-image: none; +} + +popover modelbutton.flat check.left:dir(rtl), popover modelbutton.flat radio.left:dir(rtl) { + margin-left: -3px; + margin-right: 6px; +} + +popover modelbutton.flat check.right:dir(ltr), popover modelbutton.flat radio.right:dir(ltr) { + margin-left: 6px; + margin-right: -3px; +} + +popover.menu check, popover.menu radio { + transition: none; + margin: 0; + padding: 0; +} + +popover.menu check:dir(ltr), popover.menu radio:dir(ltr) { + margin-right: 6px; + margin-left: -3px; +} + +popover.menu check:dir(rtl), popover.menu radio:dir(rtl) { + margin-left: 6px; + margin-right: -3px; +} + +popover.menu check, popover.menu check:hover, popover.menu check:disabled, popover.menu check:checked:hover, popover.menu check:indeterminate:hover, popover.menu radio, popover.menu radio:hover, popover.menu radio:disabled, popover.menu radio:checked:hover, popover.menu radio:indeterminate:hover { + box-shadow: none; +} + + +check { + -gtk-icon-size: 20px; +} + + +check:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-checked-symbolic@2.svg"))); +} + + +check:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic@2.svg"))); +} + + +radio { + -gtk-icon-size: 20px; +} + + +radio:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-checked-symbolic@2.svg"))); +} + + +radio:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-mixed-symbolic@2.svg"))); +} + + +popover.menu check { + min-height: 16px; + min-width: 16px; + -gtk-icon-size: 16px; +} + + +popover.menu check:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic@2.svg"))); +} + + +popover.menu check:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic@2.svg"))); +} + + +popover.menu radio { + min-height: 16px; + min-width: 16px; + -gtk-icon-size: 16px; +} + + +popover.menu radio:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-checked-symbolic@2.svg"))); +} + + +popover.menu radio:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic@2.svg"))); +} + +check:not(:checked):active { + -gtk-icon-transform: rotate(90deg); +} + +treeview.view radio, treeview.view check, +columnview.view radio, +columnview.view check { + padding: 0; + margin: 0; + transition: none; +} + +treeview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), treeview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate), +columnview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), +columnview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate) { + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view radio, treeview.view radio:hover, treeview.view radio:disabled, treeview.view radio:checked:hover, treeview.view radio:indeterminate:hover, treeview.view check, treeview.view check:hover, treeview.view check:disabled, treeview.view check:checked:hover, treeview.view check:indeterminate:hover, +columnview.view radio, +columnview.view radio:hover, +columnview.view radio:disabled, +columnview.view radio:checked:hover, +columnview.view radio:indeterminate:hover, +columnview.view check, +columnview.view check:hover, +columnview.view check:disabled, +columnview.view check:checked:hover, +columnview.view check:indeterminate:hover { + box-shadow: none; +} + +treeview.view:hover check, treeview.view:hover radio, treeview.view:selected check, treeview.view:selected radio, treeview.view:focus check, treeview.view:focus radio, treeview.view:focus-within check, treeview.view:focus-within radio, +columnview.view:hover check, +columnview.view:hover radio, +columnview.view:selected check, +columnview.view:selected radio, +columnview.view:focus check, +columnview.view:focus radio, +columnview.view:focus-within check, +columnview.view:focus-within radio { + box-shadow: none; + background-color: transparent; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale slider { + min-height: 18px; + min-width: 18px; + margin: -8px; +} + +scale.fine-tune.horizontal { + min-height: 4px; + padding-top: 16px; + padding-bottom: 16px; +} + +scale.fine-tune.vertical { + min-width: 4px; + padding-left: 16px; + padding-right: 16px; +} + +scale.fine-tune slider { + margin: -7px; +} + +scale trough { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + background-color: rgba(255, 255, 255, 0.3); +} + +scale trough:disabled { + background-color: rgba(255, 255, 255, 0.12); +} + +scale highlight { + transition: background-image 0ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#5b9bf8); +} + +scale highlight:disabled { + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.3)); +} + +scale fill { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.3); +} + +scale fill:disabled { + background-color: transparent; +} + +scale slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #5b9bf8; + background-color: #2C2C2C; + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +scale slider:hover { + box-shadow: inset 0 0 0 2px #5b9bf8, 0 0 0 8px rgba(255, 255, 255, 0.12); +} + +scale slider:active { + box-shadow: inset 0 0 0 4px #5b9bf8, 0 0 0 8px rgba(255, 255, 255, 0.12); +} + +scale slider:disabled { + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3); +} + +scale marks, +scale value { + color: rgba(255, 255, 255, 0.7); +} + +scale indicator { + background-color: rgba(255, 255, 255, 0.3); + color: transparent; +} + +scale.horizontal > marks.top { + margin-bottom: 7px; + margin-top: -15px; +} + +scale.horizontal.fine-tune > marks.top { + margin-bottom: 6px; + margin-top: -14px; +} + +scale.horizontal > marks.bottom { + margin-top: 7px; + margin-bottom: -15px; +} + +scale.horizontal.fine-tune > marks.bottom { + margin-top: 6px; + margin-bottom: -14px; +} + +scale.vertical > marks.top { + margin-right: 7px; + margin-left: -15px; +} + +scale.vertical.fine-tune > marks.top { + margin-right: 6px; + margin-left: -14px; +} + +scale.vertical > marks.bottom { + margin-left: 7px; + margin-right: -15px; +} + +scale.vertical.fine-tune > marks.bottom { + margin-left: 6px; + margin-right: -14px; +} + +scale.horizontal indicator { + min-height: 8px; + min-width: 1px; +} + +scale.vertical indicator { + min-height: 1px; + min-width: 8px; +} + +scale.horizontal.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-before:not(.marks-after) slider, scale.horizontal.marks-before:not(.marks-after) slider:hover, scale.horizontal.marks-before:not(.marks-after) slider:active, scale.horizontal.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")); +} + +scale.horizontal.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-disabled-dark.png"), url("assets/scale-horz-marks-before-slider-disabled-dark@2.png")); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-after:not(.marks-before) slider, scale.horizontal.marks-after:not(.marks-before) slider:hover, scale.horizontal.marks-after:not(.marks-before) slider:active, scale.horizontal.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-disabled-dark.png"), url("assets/scale-horz-marks-after-slider-disabled-dark@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-before:not(.marks-after) slider, scale.vertical.marks-before:not(.marks-after) slider:hover, scale.vertical.marks-before:not(.marks-after) slider:active, scale.vertical.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-disabled-dark.png"), url("assets/scale-vert-marks-before-slider-disabled-dark@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-after:not(.marks-before) slider, scale.vertical.marks-after:not(.marks-before) slider:hover, scale.vertical.marks-after:not(.marks-before) slider:active, scale.vertical.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-disabled-dark.png"), url("assets/scale-vert-marks-after-slider-disabled-dark@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")); +} + +scale.color { + min-height: 0; + min-width: 0; +} + +scale.color.horizontal { + padding: 0 0 12px 0; +} + +scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl) { + margin-bottom: -13.5px; + margin-top: 11.5px; +} + +scale.color.vertical:dir(ltr) { + padding: 0 0 0 12px; +} + +scale.color.vertical:dir(ltr) slider { + margin-left: -13.5px; + margin-right: 11.5px; +} + +scale.color.vertical:dir(rtl) { + padding: 0 12px 0 0; +} + +scale.color.vertical:dir(rtl) slider { + margin-right: -13.5px; + margin-left: 11.5px; +} + +/***************** + * Progress bars * + *****************/ +progressbar { + color: rgba(255, 255, 255, 0.7); + font-size: smaller; +} + +progressbar.horizontal trough, +progressbar.horizontal progress { + min-height: 6px; +} + +progressbar.vertical trough, +progressbar.vertical progress { + min-width: 6px; +} + +progressbar trough { + border-radius: 6px; + background-color: rgba(255, 255, 255, 0.12); +} + +progressbar progress { + border-radius: 6px; + background-color: #5b9bf8; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #5b9bf8; +} + +progressbar trough.empty progress { + all: unset; +} + +/************* + * Level Bar * + *************/ +levelbar.horizontal block { + min-height: 6px; +} + +levelbar.horizontal.discrete block { + min-width: 36px; +} + +levelbar.horizontal.discrete block:not(:last-child) { + margin-right: 2px; +} + +levelbar.vertical block { + min-width: 6px; +} + +levelbar.vertical.discrete block { + min-height: 36px; +} + +levelbar.vertical.discrete block:not(:last-child) { + margin-bottom: 2px; +} + +levelbar trough { + border-radius: 6px; +} + +levelbar block.low { + background-color: #FDD633; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #5b9bf8; +} + +levelbar block.full { + background-color: #81C995; +} + +levelbar block.empty { + background-color: rgba(255, 255, 255, 0.12); +} + +/**************** + * Print dialog * +*****************/ +window.dialog.print drawing { + color: white; + background: none; + border: none; + padding: 0; +} + +window.dialog.print drawing paper { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + color: white; +} + +window.dialog.print .dialog-action-box { + margin: 12px; +} + +/********** + * Frames * + **********/ +frame, +.frame { + border: 1px solid rgba(255, 255, 255, 0.12); +} + +frame > list, +.frame > list { + border: none; +} + +frame.view, +.frame.view { + border-radius: 6px; +} + +frame.flat, +.frame.flat { + border-style: none; +} + +frame { + border-radius: 6px; +} + +frame > label { + margin: 4px; +} + +frame.flat > border, statusbar frame > border { + border: none; +} + +actionbar > revealer > box { + padding: 6px; + border-spacing: 6px; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; + border: none; +} + +.background.csd box.vertical > actionbar > revealer > box { + border-radius: 0 0 14px 14px; +} + +statusbar { + padding: 6px 18px; +} + +scrolledwindow viewport.frame { + border: none; +} + +stack scrolledwindow.frame viewport.frame list { + border: none; +} + +overshoot.top { + background-image: radial-gradient(farthest-side at top, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at top, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 100% 3%, 100% 50%; + background-repeat: no-repeat; + background-position: top; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.bottom { + background-image: radial-gradient(farthest-side at bottom, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at bottom, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 100% 3%, 100% 50%; + background-repeat: no-repeat; + background-position: bottom; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.left { + background-image: radial-gradient(farthest-side at left, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at left, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 3% 100%, 50% 100%; + background-repeat: no-repeat; + background-position: left; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.right { + background-image: radial-gradient(farthest-side at right, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at right, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 3% 100%, 50% 100%; + background-repeat: no-repeat; + background-position: right; + background-color: transparent; + border: none; + box-shadow: none; +} + +undershoot.top { + background-color: transparent; + background-image: linear-gradient(to left, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-top: 1px; + background-size: 12px 1px; + background-repeat: repeat-x; + background-origin: content-box; + background-position: left top; + margin: 0 4px; +} + +undershoot.bottom { + background-color: transparent; + background-image: linear-gradient(to left, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-bottom: 1px; + background-size: 12px 1px; + background-repeat: repeat-x; + background-origin: content-box; + background-position: left bottom; + margin: 0 4px; +} + +undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +junction { + border-style: solid none none solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +junction:dir(rtl) { + border-style: solid solid none none; +} + +separator { + min-width: 1px; + min-height: 1px; + background-color: rgba(255, 255, 255, 0.12); +} + +stacksidebar + separator.vertical, +stacksidebar separator.horizontal, button.font separator, button.file separator { + min-width: 0; + min-height: 0; + background-color: transparent; +} + +/********* + * Lists * + *********/ +listview.boxed-list, +list.boxed-list, listview.content:not(.conversation-listbox), +list.content:not(.conversation-listbox) { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(255, 255, 255, 0.12); +} + +listview.boxed-list > row.expander list > row, +list.boxed-list > row.expander list > row, listview.boxed-list > row, +list.boxed-list > row, listview.content:not(.conversation-listbox) > row, +list.content:not(.conversation-listbox) > row { + border-radius: 0; +} + +listview.boxed-list > row.expander list > row:first-child, +list.boxed-list > row.expander list > row:first-child, listview.boxed-list > row:first-child, +list.boxed-list > row:first-child, listview.content:not(.conversation-listbox) > row:first-child, +list.content:not(.conversation-listbox) > row:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +listview.boxed-list > row.expander list > row:last-child, +list.boxed-list > row.expander list > row:last-child, listview.boxed-list > row:last-child, +list.boxed-list > row:last-child, listview.content:not(.conversation-listbox) > row:last-child, +list.content:not(.conversation-listbox) > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +listview.boxed-list > row.expander list > row:only-child, +list.boxed-list > row.expander list > row:only-child, listview.boxed-list > row:only-child, +list.boxed-list > row:only-child, listview.content:not(.conversation-listbox) > row:only-child, +list.content:not(.conversation-listbox) > row:only-child { + border-radius: 6px; +} + +listview.boxed-list > row.expander list > row:focus, +list.boxed-list > row.expander list > row:focus, listview.boxed-list > row:focus, +list.boxed-list > row:focus, listview.content:not(.conversation-listbox) > row:focus, +list.content:not(.conversation-listbox) > row:focus { + box-shadow: inset 0 0 0 1000px alpha(currentColor, 0.08); +} + +listview, +list { + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +listview row, +list row { + padding: 6px; +} + +listview > row.expander, +list > row.expander { + padding: 0px; +} + +listview > row.expander .row-header, +list > row.expander .row-header { + padding: 2px; +} + +listview.boxed-list > row.expander list, +list.boxed-list > row.expander list { + background-color: transparent; + box-shadow: none; + border: none; +} + +list.frame { + border-radius: 6px; +} + +listview.view { + color: white; + background-color: transparent; +} + +popover.menu listview.view { + padding: 0; +} + +popover.menu listview.view > row { + margin-left: 0; + margin-right: 0; +} + +row { + color: rgba(255, 255, 255, 0.7); +} + +columnview.view > header > button, +treeview.view > header > button, row.activatable { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; +} + +columnview.view > header > button:focus, +treeview.view > header > button:focus, row.activatable:focus { + color: white; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +columnview.view > header > button:hover, +treeview.view > header > button:hover, row.activatable:hover { + color: white; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +columnview.view > header > button.has-open-popup, +treeview.view > header > button.has-open-popup, columnview.view > header > button:active, +treeview.view > header > button:active, row.activatable.has-open-popup, row.activatable:active { + color: white; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + +row:selected { + color: inherit; +} + +row:selected image, +row:selected label { + color: white; +} + +row:selected button image, +row:selected button label { + color: inherit; +} + +row:selected:disabled image, +row:selected:disabled label { + color: rgba(255, 255, 255, 0.5); +} + +treeexpander { + border-spacing: 6px; +} + +columnview row:not(:selected) cell editablelabel:not(.editing):focus-within { + outline: 2px solid alpha(currentColor, 0.06); +} + +columnview row:not(:selected) cell editablelabel.editing:focus-within { + outline: 2px solid #5b9bf8; +} + +columnview row:not(:selected) cell editablelabel.editing text selection { + color: white; + background-color: #5b9bf8; +} + +.rich-list { + /* rich lists usually containing other widgets than just labels/text */ +} + +.rich-list > row { + padding: 9px 12px; + min-height: 32px; + /* should be tall even when only containing a label */ +} + +.rich-list > row > box { + border-spacing: 12px; +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 8px; + border-spacing: 9px; + padding: 9px; + border: none; +} + +.app-notification button.text-button:not(:disabled) { + color: #5b9bf8; +} + +.app-notification.frame, +.app-notification border { + border-style: none; +} + +/************* + * Expanders * + *************/ +expander { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 16px; + min-height: 16px; + color: rgba(255, 255, 255, 0.7); + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); +} + +expander:dir(rtl) { + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); +} + +expander:hover, expander:active { + color: white; +} + +expander:disabled { + color: rgba(255, 255, 255, 0.3); +} + +expander-widget > box > title { + border-radius: 6px; +} + +expander-widget > box > title:hover > expander { + color: rgba(255, 255, 255, 0.7); +} + +.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 { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + border-radius: 6px; + color: white; +} + +calendar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +calendar:selected { + border-radius: 6px; +} + +calendar > header { + padding: 3px; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +calendar > header > button { + min-height: 24px; +} + +calendar > grid { + margin: 3px; +} + +calendar > grid > label { + border-radius: 9999px; + margin: 0; +} + +calendar > grid > label.today:selected { + box-shadow: none; +} + +calendar > grid > label:focus { + outline-style: none; +} + +calendar > grid > label.day-number { + padding: 9px; +} + +calendar > grid > label.day-number.other-month { + color: alpha(currentColor, 0.3); +} + +/*********** + * Dialogs * + ***********/ +window.dialog.message.background { + background-color: #3C3C3C; +} + +window.dialog.message box.dialog-vbox.vertical { + border-spacing: 10px; +} + +window.dialog.message .titlebar { + min-height: 24px; + border-style: none; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; + color: white; +} + +window.dialog.message .titlebar:backdrop { + background-color: #3C3C3C; + color: rgba(255, 255, 255, 0.7); +} + +window.dialog.message .dialog-action-area { + margin-top: -6px; +} + +window.dialog.message .dialog-action-area > button, window.dialog.message .dialog-action-area > button:first-child, window.dialog.message .dialog-action-area > button:last-child { + border-radius: 9999px; +} + +window.dialog.message .dialog-action-area > button:not(:last-child) { + margin-right: 6px; +} + +window.dialog.message .dialog-action-area > button:not(:disabled) { + color: #5b9bf8; +} + +window.dialog.message .dialog-action-area > button.destructive-action:not(:disabled) { + color: #F28B82; +} + +.csd filechooser { + background-color: #2C2C2C; + border-radius: 0 0 14px 14px; +} + +filechooser .dialog-action-box { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +filechooser #pathbarbox { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +filechooser stack.view { + background-color: transparent; +} + +filechooser stack.view scrolledwindow { + background-color: transparent; + border-radius: 0 0 14px 0; +} + +filechooser stack.view scrolledwindow list { + background-color: transparent; +} + +filechooser stack.view > placesview { + background-color: transparent; +} + +filechooser stack.view > placesview > actionbar, filechooser stack.view > placesview > actionbar > revealer > box { + background-color: transparent; +} + +filechooser stack.view frame > border { + border: none; +} + +.csd filechooser placessidebar { + background: none; + border-bottom-left-radius: 14px; +} + +filechooser actionbar, filechooser actionbar > revealer > box { + background-color: transparent; +} + +filechooserbutton > button > box { + border-spacing: 6px; +} + +filechooserbutton:drop(active) { + box-shadow: none; + border-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; + background-color: #242424; +} + +.sidebar:not(separator):dir(ltr), .sidebar:not(separator).left, .sidebar:not(separator).left:dir(rtl) { + border-right: 1px solid rgba(255, 255, 255, 0.12); + border-left-style: none; +} + +.sidebar:not(separator):dir(rtl), .sidebar:not(separator).right { + border-left: 1px solid rgba(255, 255, 255, 0.12); + 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 { + padding: 6px; + background-color: #242424; +} + +stacksidebar row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +stacksidebar row:selected { + background-color: alpha(currentColor, 0.06); + color: white; + font-weight: 500; +} + +stacksidebar row + row { + margin-top: 4px; +} + +stacksidebar row > label { + padding-left: 6px; + padding-right: 6px; + color: inherit; +} + +separator.sidebar { + background-color: rgba(255, 255, 255, 0.12); + border-right: none; +} + +separator.sidebar.selection-mode, .selection-mode separator.sidebar { + background-color: rgba(255, 255, 255, 0.15); +} + +/********************** + * Navigation Sidebar * + **********************/ +.navigation-sidebar { + padding: 6px; + border-right: none; +} + +.navigation-sidebar > row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +.navigation-sidebar > row:hover, .navigation-sidebar > row:focus-visible:focus-within { + background-color: alpha(currentColor, 0.08); +} + +.navigation-sidebar > row:selected { + background-color: alpha(currentColor, 0.06); + color: white; +} + +.navigation-sidebar > row:selected:hover { + background-color: alpha(currentColor, 0.16); +} + +.navigation-sidebar > row:selected:focus-visible:focus-within { + outline: none; + background-color: alpha(currentColor, 0.08); +} + +.navigation-sidebar > row:selected:focus-visible:focus-within:hover { + background-color: alpha(currentColor, 0.16); +} + +.navigation-sidebar > row:disabled { + color: rgba(255, 255, 255, 0.5); +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +row image.sidebar-icon:disabled { + color: rgba(255, 255, 255, 0.3); +} + +placessidebar > viewport.frame { + border-style: none; +} + +placessidebar list { + padding: 1px 0 4px; +} + +placessidebar .navigation-sidebar > row { + min-height: 32px; + margin: -1px 4px -1px 0; + padding: 0; + border-radius: 0 9999px 9999px 0; +} + +placessidebar .navigation-sidebar > row > revealer { + padding: 0 8px 0 16px; +} + +placessidebar .navigation-sidebar > row:selected { + background-color: alpha(currentColor, 0.06); + color: white; + font-weight: 500; +} + +placessidebar .navigation-sidebar > row:disabled { + color: rgba(255, 255, 255, 0.5); +} + +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 { + color: inherit; +} + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar .navigation-sidebar > row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row { + color: #5b9bf8; +} + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row image.sidebar-icon { + color: #5b9bf8; +} + +placessidebar .navigation-sidebar > row:drop(active) { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placesview .server-list-button > image { + transition: 200ms cubic-bezier(0, 0, 0.2, 1); + -gtk-icon-transform: rotate(0turn); +} + +placesview .server-list-button:checked > image { + transition: 200ms cubic-bezier(0, 0, 0.2, 1); + -gtk-icon-transform: rotate(-0.5turn); +} + +placesview > actionbar > revealer > box > label { + 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(rgba(255, 255, 255, 0.12)); + background-size: 1px 1px; + background-clip: content-box; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.12)), image(rgba(255, 255, 255, 0.12)); + 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; + border-radius: 6px; +} + +video image.osd { + min-width: 64px; + min-height: 64px; + border-radius: 9999px; + border: none; +} + +/************** + * GtkInfoBar * + **************/ +infobar { + border: none; + margin-bottom: 0; +} + +infobar > revealer > box { + padding: 6px; + border-spacing: 12px; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #2C2C2C; +} + +infobar.info > revealer > box button, infobar.info > revealer > box button.text-button:not(:disabled), infobar.info:hover > revealer > box button, infobar.info:hover > revealer > box button.text-button:not(:disabled), infobar.info:backdrop > revealer > box button, infobar.info:backdrop > revealer > box button.text-button:not(:disabled) { + color: #5b9bf8; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #5b9bf8; + color: white; +} + +infobar.action > revealer > box button, infobar.action > revealer > box button:hover, infobar.action > revealer > box button:focus, infobar.action > revealer > box button:active, infobar.action > revealer > box button:checked, infobar.action > revealer > box button.text-button:not(:disabled), infobar.action:backdrop > revealer > box button, infobar.action:backdrop > revealer > box button:hover, infobar.action:backdrop > revealer > box button:focus, infobar.action:backdrop > revealer > box button:active, infobar.action:backdrop > revealer > box button:checked, infobar.action:backdrop > revealer > box button.text-button:not(:disabled), infobar.question > revealer > box button, infobar.question > revealer > box button:hover, infobar.question > revealer > box button:focus, infobar.question > revealer > box button:active, infobar.question > revealer > box button:checked, infobar.question > revealer > box button.text-button:not(:disabled), infobar.question:backdrop > revealer > box button, infobar.question:backdrop > revealer > box button:hover, infobar.question:backdrop > revealer > box button:focus, infobar.question:backdrop > revealer > box button:active, infobar.question:backdrop > revealer > box button:checked, infobar.question:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: white; +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #438cf7; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #FDD633; + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box button, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked, infobar.warning > revealer > box button.text-button:not(:disabled), infobar.warning:backdrop > revealer > box button, infobar.warning:backdrop > revealer > box button:hover, infobar.warning:backdrop > revealer > box button:focus, infobar.warning:backdrop > revealer > box button:active, infobar.warning:backdrop > revealer > box button:checked, infobar.warning:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box *:link, infobar.warning:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning:hover > revealer > box { + background-color: #fdd11a; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box button, infobar.error > revealer > box button:hover, infobar.error > revealer > box button:focus, infobar.error > revealer > box button:active, infobar.error > revealer > box button:checked, infobar.error > revealer > box button.text-button:not(:disabled), infobar.error:backdrop > revealer > box button, infobar.error:backdrop > revealer > box button:hover, infobar.error:backdrop > revealer > box button:focus, infobar.error:backdrop > revealer > box button:active, infobar.error:backdrop > revealer > box button:checked, infobar.error:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error:hover > revealer > box { + background-color: #f0766b; +} + +/************ + * Tooltips * + ************/ +tooltip { + padding: 6px 12px; + box-shadow: none; + border: none; +} + +tooltip.background { + background-color: rgba(25, 25, 25, 0.9); + color: white; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12); + border-radius: 3px; + margin: 2px 6px 8px 6px; + border: none; +} + +tooltip > box { + border-spacing: 6px; +} + +/***************** + * Color Chooser * + *****************/ +colorswatch.top { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.top overlay { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.bottom { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.bottom overlay { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.left, colorswatch:first-child:not(.top) { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.left overlay, colorswatch:first-child:not(.top) overlay { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.right, colorswatch:last-child:not(.bottom) { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.dark { + color: white; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorchooser colorswatch:hover { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: 0 0 0 2px #5b9bf8; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; + color: white; +} + +colorswatch#add-color-button:only-child { + border-radius: 6px; +} + +colorswatch#add-color-button overlay { + background-color: rgba(255, 255, 255, 0.04); +} + +colorswatch#add-color-button overlay:hover { + background-color: rgba(255, 255, 255, 0.12); + box-shadow: none; +} + +colorswatch#add-color-button overlay:active { + background-color: rgba(255, 255, 255, 0.3); +} + +colorswatch:disabled { + opacity: 0.5; +} + +colorswatch:disabled overlay { + box-shadow: none; +} + +colorswatch#editor-color-sample { + border-radius: 6px; +} + +colorswatch#editor-color-sample overlay { + border-radius: 6px; +} + +colorswatch#editor-color-sample overlay:hover { + box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -0.6px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +/******** + * Misc * + ********/ +.content-view { + background-color: #2C2C2C; +} + +/********************** + * Window Decorations * + **********************/ +window.csd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 14px; + outline-color: rgba(255, 255, 255, 0.1); + outline-offset: -1px; + outline-style: solid; + outline-width: 1px; + box-shadow: 0 8px 6px -5px rgba(0, 0, 0, 0.2), 0 16px 15px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; +} + +window.csd:backdrop { + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; +} + +window.csd.popup { + border-radius: 12px; +} + +window.csd.dialog.message { + border-radius: 14px; +} + +.solid-csd window.csd { + margin: 0; + padding: 2px; + border-radius: 0; + background-color: #242424; + border: 1px solid #4b4b4b; +} + +.solid-csd window.csd:backdrop { + background-color: #2C2C2C; +} + +window.csd.maximized, window.csd.fullscreen, window.csd.tiled, window.csd.tiled-top, window.csd.tiled-right, window.csd.tiled-bottom, window.csd.tiled-left { + border-radius: 0; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action) { + min-height: 36px; + min-width: 36px; + padding: 0; + margin: 0 4px; +} + +windowcontrols button.minimize:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:not(.suggested-action):not(.destructive-action), windowcontrols button.close:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + background-color: "transparent"; +} + +windowcontrols button.minimize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.maximize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.close:not(.suggested-action):not(.destructive-action) image { + padding: 0; +} + +windowcontrols button.minimize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.close:hover:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.15); +} + +windowcontrols button.minimize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.close:active:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.2); +} + +windowcontrols button.minimize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.close:backdrop:not(.suggested-action):not(.destructive-action) { + opacity: 0.65; +} + +windowcontrols { + border-spacing: 6px; +} + +windowcontrols:not(.empty).start:dir(ltr), windowcontrols:not(.empty).end:dir(rtl) { + margin-right: 4px; + margin-left: 4px; +} + +windowcontrols:not(.empty).start:dir(rtl), windowcontrols:not(.empty).end:dir(ltr) { + margin-left: 4px; + margin-right: 4px; +} + +.view:selected, iconview:selected, gridview > child:selected, modelbutton.flat:selected, columnview.view:selected, +treeview.view:selected, row:selected, calendar:selected, calendar > grid > label.day-number:selected { + background-color: alpha(currentColor, 0.06); +} + +flowbox > flowboxchild:selected, calendar > grid > label.today { + color: #5b9bf8; + background-color: rgba(91, 155, 248, 0.2); +} + +textview text selection:focus, textview text selection, label > selection, +entry > text > selection, spinbutton:not(.vertical) > text > selection, spinbutton.vertical > text > selection, calendar > grid > label.today:selected { + color: white; + background-color: #5b9bf8; +} + +.monospace { + font-family: monospace; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #5b9bf8; + -gtk-icon-source: -gtk-recolor(url("assets/scalable/cursor-handle-symbolic.svg")); +} + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { + padding-top: 6px; +} + +shortcuts-section { + margin: 20px; +} + +.shortcuts-search-results { + margin: 20px; + border-spacing: 24px; +} + +shortcut { + border-spacing: 6px; +} + +shortcut > .keycap { + min-width: 12px; + min-height: 26px; + margin-top: 2px; + padding-bottom: 2px; + padding-left: 8px; + padding-right: 8px; + border: solid 1px rgba(255, 255, 255, 0.12); + border-radius: 7px; + box-shadow: inset 0 -2px rgba(255, 255, 255, 0.12); + background-color: #3C3C3C; + color: white; + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #5b9bf8; +} + +stackswitcher { + min-height: 0; + padding: 3px; + margin: 6px 0; + border-radius: 9px; + background-color: rgba(255, 255, 255, 0.04); + border: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + margin: 0 0; + background-color: transparent; + border-radius: 6px; + padding: 3px 10px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 100px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):focus:not(:hover):not(:checked) { + box-shadow: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +stackswitcher button.text-button { + min-width: 100px; +} + +stackswitcher button.circular, +stackswitcher button.text-button.circular { + min-width: 36px; + min-height: 36px; + padding: 0; +} + +/************* + * App Icons * + *************/ +.lowres-icon { + -gtk-icon-shadow: none; +} + +.icon-dropshadow { + -gtk-icon-shadow: none; +} + +/********* + * Emoji * + *********/ +popover.emoji-picker { + padding: 0; +} + +popover.emoji-picker > contents { + padding: 0; +} + +.emoji-searchbar { + padding: 6px; + border-spacing: 6px; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + background: none; +} + +.emoji-searchbar entry text { + background: none; + box-shadow: none; +} + +.emoji-toolbar { + padding: 0; + border-spacing: 3px; + border-top: 1px solid rgba(255, 255, 255, 0.12); + background: none; +} + +button.emoji-section { + margin: 0; + padding: 6px; + border-radius: 6px; +} + +button.emoji-section:checked { + color: #5b9bf8; +} + +popover.emoji-picker emoji { + font-size: x-large; + padding: 6px; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; +} + +popover.emoji-picker emoji:focus, popover.emoji-picker emoji:hover { + background: alpha(currentColor, 0.08); +} + +emoji-completion-row { + min-height: 28px; + padding: 0 12px; +} + +emoji-completion-row > box { + border-spacing: 6px; + padding: 2px 6px; +} + +emoji-completion-row:focus, emoji-completion-row:hover, +emoji-completion-row emoji:hover, emoji-completion-row emoji:focus { + background-color: alpha(currentColor, 0.08); + color: white; +} + +popover.entry-completion > contents { + padding: 0; +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color white; +/* +text color for entries, views and content in general */ +@define-color theme_text_color white; +/* +widget base background color */ +@define-color theme_bg_color #2C2C2C; +/* +text widgets and the like base background color */ +@define-color theme_base_color #2C2C2C; +/* +base background color of selections */ +@define-color theme_selected_bg_color #5b9bf8; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color white; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #2C2C2C; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color rgba(255, 255, 255, 0.5); +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #242424; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color white; +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color white; +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #2C2C2C; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #2C2C2C; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #5b9bf8; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color white; +/* +insensitive color on backdrop windows */ +@define-color unfocused_insensitive_color rgba(255, 255, 255, 0.5); +/* +widgets main borders color */ +@define-color borders rgba(255, 255, 255, 0.12); +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders rgba(255, 255, 255, 0.12); +/* +these are pretty self explicative */ +@define-color warning_color #FDD633; +@define-color error_color #F28B82; +@define-color success_color #81C995; +/* +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 white; +@define-color wm_unfocused_title rgba(255, 255, 255, 0.7); +@define-color wm_highlight rgba(255, 255, 255, 0.1); +@define-color wm_bg #242424; +@define-color wm_unfocused_bg #2C2C2C; +/* +FIXME this is really an API */ +@define-color content_view_bg #2C2C2C; +@define-color placeholder_text_color silver; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #2C2C2C; +@define-color budgie_tasklist_indicator_color white; +@define-color budgie_tasklist_indicator_color_active white; +@define-color budgie_tasklist_indicator_color_active_window #999999; +@define-color budgie_tasklist_indicator_color_attention #FDD633; +@define-color STRAWBERRY_100 #FF9262; +@define-color STRAWBERRY_300 #FF793E; +@define-color STRAWBERRY_500 #F15D22; +@define-color STRAWBERRY_700 #CF3B00; +@define-color STRAWBERRY_900 #AC1800; +@define-color ORANGE_100 #FFDB91; +@define-color ORANGE_300 #FFCA40; +@define-color ORANGE_500 #FAA41A; +@define-color ORANGE_700 #DE8800; +@define-color ORANGE_900 #C26C00; +@define-color BANANA_100 #FFFFA8; +@define-color BANANA_300 #FFFA7D; +@define-color BANANA_500 #FFCE51; +@define-color BANANA_700 #D1A023; +@define-color BANANA_900 #A27100; +@define-color LIME_100 #A2F3BE; +@define-color LIME_300 #8ADBA6; +@define-color LIME_500 #73C48F; +@define-color LIME_700 #479863; +@define-color LIME_900 #1C6D38; +@define-color BLUEBERRY_100 #94A6FF; +@define-color BLUEBERRY_300 #6A7CE0; +@define-color BLUEBERRY_500 #3F51B5; +@define-color BLUEBERRY_700 #213397; +@define-color BLUEBERRY_900 #031579; +@define-color GRAPE_100 #D25DE6; +@define-color GRAPE_300 #B84ACB; +@define-color GRAPE_500 #9C27B0; +@define-color GRAPE_700 #830E97; +@define-color GRAPE_900 #6A007E; +@define-color COCOA_100 #9F9792; +@define-color COCOA_300 #7B736E; +@define-color COCOA_500 #574F4A; +@define-color COCOA_700 #463E39; +@define-color COCOA_900 #342C27; +@define-color SILVER_100 #EEE; +@define-color SILVER_300 #CCC; +@define-color SILVER_500 #AAA; +@define-color SILVER_700 #888; +@define-color SILVER_900 #666; +@define-color SLATE_100 #888; +@define-color SLATE_300 #666; +@define-color SLATE_500 #444; +@define-color SLATE_700 #222; +@define-color SLATE_900 #111; +@define-color BLACK_100 #474341; +@define-color BLACK_300 #403C3A; +@define-color BLACK_500 #393634; +@define-color BLACK_700 #33302F; +@define-color BLACK_900 #2B2928; diff --git a/Cutefish-dark/gtk-4.0/thumbnail.png b/Cutefish-dark/gtk-4.0/thumbnail.png new file mode 100644 index 0000000..09ba4d8 Binary files /dev/null and b/Cutefish-dark/gtk-4.0/thumbnail.png differ diff --git a/Cutefish-dark/index.theme b/Cutefish-dark/index.theme new file mode 100644 index 0000000..61446dc --- /dev/null +++ b/Cutefish-dark/index.theme @@ -0,0 +1,5 @@ +[Desktop Entry] +Type=X-GNOME-Metatheme +Name=Cutefish-dark +Comment=CutefishOS Gtk Theme +Encoding=UTF-8 diff --git a/Cutefish-light/gtk-2.0/apps.rc b/Cutefish-light/gtk-2.0/apps.rc new file mode 100644 index 0000000..530e72f --- /dev/null +++ b/Cutefish-light/gtk-2.0/apps.rc @@ -0,0 +1,92 @@ +# vim:set ft=gtkrc ts=2 sw=2 sts=2 ai et: +# +# This file, unlike hacks.rc, contains legitimate cases we need to handle, e.g. +# custom widgets, programs giving us a chance to alter their UI to fit more with +# the theme or stuff that is supposed to look different, like panels. + +# TODO: This could really look nicer +style "gimp_spin_scale" { + # Spin background + bg[NORMAL] = @base_color + + engine "pixmap" { + image { + function = BOX + state = NORMAL + detail = "spinbutton_up" + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_up" + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_up" + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_up" + overlay_file = "assets/pan-up-alt-disabled.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = NORMAL + detail = "spinbutton_down" + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_down" + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_down" + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_down" + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + } + } +} + +style "chrome_gtk_frame" { + ChromeGtkFrame::frame-color = @titlebar_bg_color + ChromeGtkFrame::inactive-frame-color = @titlebar_bg_color + ChromeGtkFrame::incognito-frame-color = @titlebar_bg_color + ChromeGtkFrame::incognito-inactive-frame-color = @titlebar_bg_color + + ChromeGtkFrame::frame-gradient-size = 0 +} + +# Disable spin button assets for GimpSpinScale +class "GimpSpinScale" style "gimp_spin_scale" + +# Chromium lets us define some colours and settings for better integration +class "ChromeGtkFrame" style "chrome_gtk_frame" diff --git a/Cutefish-light/gtk-2.0/assets/border.png b/Cutefish-light/gtk-2.0/assets/border.png new file mode 100644 index 0000000..b755468 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/border.png differ diff --git a/Cutefish-light/gtk-2.0/assets/button-active.png b/Cutefish-light/gtk-2.0/assets/button-active.png new file mode 100644 index 0000000..6a3942c Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/button-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/button-disabled.png b/Cutefish-light/gtk-2.0/assets/button-disabled.png new file mode 100644 index 0000000..0be273b Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/button-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/button-hover.png b/Cutefish-light/gtk-2.0/assets/button-hover.png new file mode 100644 index 0000000..de5b618 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/button-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/button.png b/Cutefish-light/gtk-2.0/assets/button.png new file mode 100644 index 0000000..daeaec7 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/button.png differ diff --git a/Cutefish-light/gtk-2.0/assets/checkbox-checked-active.png b/Cutefish-light/gtk-2.0/assets/checkbox-checked-active.png new file mode 100644 index 0000000..f2684b7 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/checkbox-checked-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/checkbox-checked-disabled.png b/Cutefish-light/gtk-2.0/assets/checkbox-checked-disabled.png new file mode 100644 index 0000000..3ba34ed Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/checkbox-checked-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/checkbox-checked-hover.png b/Cutefish-light/gtk-2.0/assets/checkbox-checked-hover.png new file mode 100644 index 0000000..d576c01 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/checkbox-checked-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/checkbox-checked.png b/Cutefish-light/gtk-2.0/assets/checkbox-checked.png new file mode 100644 index 0000000..74291ff Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/checkbox-checked.png differ diff --git a/Cutefish-light/gtk-2.0/assets/checkbox-mixed-active.png b/Cutefish-light/gtk-2.0/assets/checkbox-mixed-active.png new file mode 100644 index 0000000..c32b114 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/checkbox-mixed-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/checkbox-mixed-disabled.png b/Cutefish-light/gtk-2.0/assets/checkbox-mixed-disabled.png new file mode 100644 index 0000000..f4cd89b Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/checkbox-mixed-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/checkbox-mixed-hover.png b/Cutefish-light/gtk-2.0/assets/checkbox-mixed-hover.png new file mode 100644 index 0000000..4635e4f Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/checkbox-mixed-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/checkbox-mixed.png b/Cutefish-light/gtk-2.0/assets/checkbox-mixed.png new file mode 100644 index 0000000..0a7e5a3 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/checkbox-mixed.png differ diff --git a/Cutefish-light/gtk-2.0/assets/checkbox-unchecked-active.png b/Cutefish-light/gtk-2.0/assets/checkbox-unchecked-active.png new file mode 100644 index 0000000..b2112ca Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/checkbox-unchecked-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/checkbox-unchecked-disabled.png b/Cutefish-light/gtk-2.0/assets/checkbox-unchecked-disabled.png new file mode 100644 index 0000000..ca92669 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/checkbox-unchecked-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/checkbox-unchecked-hover.png b/Cutefish-light/gtk-2.0/assets/checkbox-unchecked-hover.png new file mode 100644 index 0000000..95cb359 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/checkbox-unchecked-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/checkbox-unchecked.png b/Cutefish-light/gtk-2.0/assets/checkbox-unchecked.png new file mode 100644 index 0000000..6496e92 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/checkbox-unchecked.png differ diff --git a/Cutefish-light/gtk-2.0/assets/combo-left-entry-active.png b/Cutefish-light/gtk-2.0/assets/combo-left-entry-active.png new file mode 100644 index 0000000..a70672d Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/combo-left-entry-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/combo-left-entry-disabled.png b/Cutefish-light/gtk-2.0/assets/combo-left-entry-disabled.png new file mode 100644 index 0000000..bec439a Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/combo-left-entry-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/combo-left-entry-hover.png b/Cutefish-light/gtk-2.0/assets/combo-left-entry-hover.png new file mode 100644 index 0000000..d896386 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/combo-left-entry-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/combo-left-entry.png b/Cutefish-light/gtk-2.0/assets/combo-left-entry.png new file mode 100644 index 0000000..943fac5 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/combo-left-entry.png differ diff --git a/Cutefish-light/gtk-2.0/assets/combo-right-entry-active.png b/Cutefish-light/gtk-2.0/assets/combo-right-entry-active.png new file mode 100644 index 0000000..54bafd1 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/combo-right-entry-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/combo-right-entry-disabled.png b/Cutefish-light/gtk-2.0/assets/combo-right-entry-disabled.png new file mode 100644 index 0000000..5293406 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/combo-right-entry-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/combo-right-entry-hover.png b/Cutefish-light/gtk-2.0/assets/combo-right-entry-hover.png new file mode 100644 index 0000000..05548f3 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/combo-right-entry-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/combo-right-entry.png b/Cutefish-light/gtk-2.0/assets/combo-right-entry.png new file mode 100644 index 0000000..dd2118a Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/combo-right-entry.png differ diff --git a/Cutefish-light/gtk-2.0/assets/entry-active.png b/Cutefish-light/gtk-2.0/assets/entry-active.png new file mode 100644 index 0000000..aa7706b Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/entry-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/entry-background-disabled.png b/Cutefish-light/gtk-2.0/assets/entry-background-disabled.png new file mode 100644 index 0000000..7f3aa5e Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/entry-background-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/entry-background.png b/Cutefish-light/gtk-2.0/assets/entry-background.png new file mode 100644 index 0000000..72facdb Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/entry-background.png differ diff --git a/Cutefish-light/gtk-2.0/assets/entry-disabled.png b/Cutefish-light/gtk-2.0/assets/entry-disabled.png new file mode 100644 index 0000000..0be273b Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/entry-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/entry-hover.png b/Cutefish-light/gtk-2.0/assets/entry-hover.png new file mode 100644 index 0000000..1e7804c Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/entry-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/entry.png b/Cutefish-light/gtk-2.0/assets/entry.png new file mode 100644 index 0000000..daeaec7 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/entry.png differ diff --git a/Cutefish-light/gtk-2.0/assets/flat-button-active.png b/Cutefish-light/gtk-2.0/assets/flat-button-active.png new file mode 100644 index 0000000..6a3942c Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/flat-button-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/flat-button-disabled.png b/Cutefish-light/gtk-2.0/assets/flat-button-disabled.png new file mode 100644 index 0000000..34d490f Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/flat-button-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/flat-button-hover.png b/Cutefish-light/gtk-2.0/assets/flat-button-hover.png new file mode 100644 index 0000000..de5b618 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/flat-button-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/flat-button.png b/Cutefish-light/gtk-2.0/assets/flat-button.png new file mode 100644 index 0000000..34d490f Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/flat-button.png differ diff --git a/Cutefish-light/gtk-2.0/assets/focus.png b/Cutefish-light/gtk-2.0/assets/focus.png new file mode 100644 index 0000000..cf26e66 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/focus.png differ diff --git a/Cutefish-light/gtk-2.0/assets/frame-inline.png b/Cutefish-light/gtk-2.0/assets/frame-inline.png new file mode 100644 index 0000000..34703f8 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/frame-inline.png differ diff --git a/Cutefish-light/gtk-2.0/assets/frame-notebook.png b/Cutefish-light/gtk-2.0/assets/frame-notebook.png new file mode 100644 index 0000000..ddb5196 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/frame-notebook.png differ diff --git a/Cutefish-light/gtk-2.0/assets/frame.png b/Cutefish-light/gtk-2.0/assets/frame.png new file mode 100644 index 0000000..bd3e851 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/frame.png differ diff --git a/Cutefish-light/gtk-2.0/assets/handle-horz-active.png b/Cutefish-light/gtk-2.0/assets/handle-horz-active.png new file mode 100644 index 0000000..982db3d Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/handle-horz-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/handle-horz-hover.png b/Cutefish-light/gtk-2.0/assets/handle-horz-hover.png new file mode 100644 index 0000000..af9f1f4 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/handle-horz-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/handle-horz.png b/Cutefish-light/gtk-2.0/assets/handle-horz.png new file mode 100644 index 0000000..a726388 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/handle-horz.png differ diff --git a/Cutefish-light/gtk-2.0/assets/handle-vert-active.png b/Cutefish-light/gtk-2.0/assets/handle-vert-active.png new file mode 100644 index 0000000..e44fc64 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/handle-vert-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/handle-vert-hover.png b/Cutefish-light/gtk-2.0/assets/handle-vert-hover.png new file mode 100644 index 0000000..d14f004 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/handle-vert-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/handle-vert.png b/Cutefish-light/gtk-2.0/assets/handle-vert.png new file mode 100644 index 0000000..567a281 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/handle-vert.png differ diff --git a/Cutefish-light/gtk-2.0/assets/menu-checkbox-checked-disabled.png b/Cutefish-light/gtk-2.0/assets/menu-checkbox-checked-disabled.png new file mode 100644 index 0000000..514a48a Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/menu-checkbox-checked-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/menu-checkbox-checked.png b/Cutefish-light/gtk-2.0/assets/menu-checkbox-checked.png new file mode 100644 index 0000000..b73067f Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/menu-checkbox-checked.png differ diff --git a/Cutefish-light/gtk-2.0/assets/menu-checkbox-mixed-disabled.png b/Cutefish-light/gtk-2.0/assets/menu-checkbox-mixed-disabled.png new file mode 100644 index 0000000..db5fe5f Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/menu-checkbox-mixed-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/menu-checkbox-mixed.png b/Cutefish-light/gtk-2.0/assets/menu-checkbox-mixed.png new file mode 100644 index 0000000..b89d331 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/menu-checkbox-mixed.png differ diff --git a/Cutefish-light/gtk-2.0/assets/menu-checkbox-unchecked-disabled.png b/Cutefish-light/gtk-2.0/assets/menu-checkbox-unchecked-disabled.png new file mode 100644 index 0000000..e8de055 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/menu-checkbox-unchecked-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/menu-checkbox-unchecked.png b/Cutefish-light/gtk-2.0/assets/menu-checkbox-unchecked.png new file mode 100644 index 0000000..5846b31 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/menu-checkbox-unchecked.png differ diff --git a/Cutefish-light/gtk-2.0/assets/menu-radio-checked-disabled.png b/Cutefish-light/gtk-2.0/assets/menu-radio-checked-disabled.png new file mode 100644 index 0000000..2c2d532 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/menu-radio-checked-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/menu-radio-checked.png b/Cutefish-light/gtk-2.0/assets/menu-radio-checked.png new file mode 100644 index 0000000..52f82f2 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/menu-radio-checked.png differ diff --git a/Cutefish-light/gtk-2.0/assets/menu-radio-mixed-disabled.png b/Cutefish-light/gtk-2.0/assets/menu-radio-mixed-disabled.png new file mode 100644 index 0000000..db5fe5f Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/menu-radio-mixed-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/menu-radio-mixed.png b/Cutefish-light/gtk-2.0/assets/menu-radio-mixed.png new file mode 100644 index 0000000..b89d331 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/menu-radio-mixed.png differ diff --git a/Cutefish-light/gtk-2.0/assets/menu-radio-unchecked-disabled.png b/Cutefish-light/gtk-2.0/assets/menu-radio-unchecked-disabled.png new file mode 100644 index 0000000..e8de055 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/menu-radio-unchecked-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/menu-radio-unchecked.png b/Cutefish-light/gtk-2.0/assets/menu-radio-unchecked.png new file mode 100644 index 0000000..5846b31 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/menu-radio-unchecked.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-down-alt-disabled.png b/Cutefish-light/gtk-2.0/assets/pan-down-alt-disabled.png new file mode 100644 index 0000000..db1d361 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-down-alt-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-down-alt.png b/Cutefish-light/gtk-2.0/assets/pan-down-alt.png new file mode 100644 index 0000000..820e026 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-down-alt.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-down-disabled.png b/Cutefish-light/gtk-2.0/assets/pan-down-disabled.png new file mode 100644 index 0000000..567f441 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-down-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-down.png b/Cutefish-light/gtk-2.0/assets/pan-down.png new file mode 100644 index 0000000..f664be1 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-down.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-left-alt-disabled.png b/Cutefish-light/gtk-2.0/assets/pan-left-alt-disabled.png new file mode 100644 index 0000000..d25e4b6 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-left-alt-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-left-alt.png b/Cutefish-light/gtk-2.0/assets/pan-left-alt.png new file mode 100644 index 0000000..6309016 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-left-alt.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-left-disabled.png b/Cutefish-light/gtk-2.0/assets/pan-left-disabled.png new file mode 100644 index 0000000..f0f94da Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-left-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-left-semi.png b/Cutefish-light/gtk-2.0/assets/pan-left-semi.png new file mode 100644 index 0000000..efe1807 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-left-semi.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-left.png b/Cutefish-light/gtk-2.0/assets/pan-left.png new file mode 100644 index 0000000..ae7f93d Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-left.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-right-alt-disabled.png b/Cutefish-light/gtk-2.0/assets/pan-right-alt-disabled.png new file mode 100644 index 0000000..d11562a Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-right-alt-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-right-alt.png b/Cutefish-light/gtk-2.0/assets/pan-right-alt.png new file mode 100644 index 0000000..3acb33b Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-right-alt.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-right-disabled.png b/Cutefish-light/gtk-2.0/assets/pan-right-disabled.png new file mode 100644 index 0000000..f49afae Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-right-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-right-semi.png b/Cutefish-light/gtk-2.0/assets/pan-right-semi.png new file mode 100644 index 0000000..331a306 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-right-semi.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-right.png b/Cutefish-light/gtk-2.0/assets/pan-right.png new file mode 100644 index 0000000..5975475 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-right.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-up-alt-disabled.png b/Cutefish-light/gtk-2.0/assets/pan-up-alt-disabled.png new file mode 100644 index 0000000..361acb3 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-up-alt-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-up-alt.png b/Cutefish-light/gtk-2.0/assets/pan-up-alt.png new file mode 100644 index 0000000..dcdf2ec Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-up-alt.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-up-disabled.png b/Cutefish-light/gtk-2.0/assets/pan-up-disabled.png new file mode 100644 index 0000000..8a52366 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-up-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/pan-up.png b/Cutefish-light/gtk-2.0/assets/pan-up.png new file mode 100644 index 0000000..031ac46 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/pan-up.png differ diff --git a/Cutefish-light/gtk-2.0/assets/progressbar-progress.png b/Cutefish-light/gtk-2.0/assets/progressbar-progress.png new file mode 100644 index 0000000..2378968 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/progressbar-progress.png differ diff --git a/Cutefish-light/gtk-2.0/assets/progressbar-trough.png b/Cutefish-light/gtk-2.0/assets/progressbar-trough.png new file mode 100644 index 0000000..9c4c595 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/progressbar-trough.png differ diff --git a/Cutefish-light/gtk-2.0/assets/radio-checked-active.png b/Cutefish-light/gtk-2.0/assets/radio-checked-active.png new file mode 100644 index 0000000..eab511e Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/radio-checked-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/radio-checked-disabled.png b/Cutefish-light/gtk-2.0/assets/radio-checked-disabled.png new file mode 100644 index 0000000..7b14a92 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/radio-checked-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/radio-checked-hover.png b/Cutefish-light/gtk-2.0/assets/radio-checked-hover.png new file mode 100644 index 0000000..4211ab0 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/radio-checked-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/radio-checked.png b/Cutefish-light/gtk-2.0/assets/radio-checked.png new file mode 100644 index 0000000..f886a45 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/radio-checked.png differ diff --git a/Cutefish-light/gtk-2.0/assets/radio-mixed-active.png b/Cutefish-light/gtk-2.0/assets/radio-mixed-active.png new file mode 100644 index 0000000..c32b114 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/radio-mixed-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/radio-mixed-disabled.png b/Cutefish-light/gtk-2.0/assets/radio-mixed-disabled.png new file mode 100644 index 0000000..f4cd89b Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/radio-mixed-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/radio-mixed-hover.png b/Cutefish-light/gtk-2.0/assets/radio-mixed-hover.png new file mode 100644 index 0000000..4635e4f Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/radio-mixed-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/radio-mixed.png b/Cutefish-light/gtk-2.0/assets/radio-mixed.png new file mode 100644 index 0000000..0a7e5a3 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/radio-mixed.png differ diff --git a/Cutefish-light/gtk-2.0/assets/radio-unchecked-active.png b/Cutefish-light/gtk-2.0/assets/radio-unchecked-active.png new file mode 100644 index 0000000..b2112ca Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/radio-unchecked-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/radio-unchecked-disabled.png b/Cutefish-light/gtk-2.0/assets/radio-unchecked-disabled.png new file mode 100644 index 0000000..ca92669 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/radio-unchecked-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/radio-unchecked-hover.png b/Cutefish-light/gtk-2.0/assets/radio-unchecked-hover.png new file mode 100644 index 0000000..95cb359 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/radio-unchecked-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/radio-unchecked.png b/Cutefish-light/gtk-2.0/assets/radio-unchecked.png new file mode 100644 index 0000000..6496e92 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/radio-unchecked.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scale-horz-trough-active.png b/Cutefish-light/gtk-2.0/assets/scale-horz-trough-active.png new file mode 100644 index 0000000..4d1ed0c Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scale-horz-trough-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scale-horz-trough-disabled.png b/Cutefish-light/gtk-2.0/assets/scale-horz-trough-disabled.png new file mode 100644 index 0000000..e38cec0 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scale-horz-trough-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scale-horz-trough.png b/Cutefish-light/gtk-2.0/assets/scale-horz-trough.png new file mode 100644 index 0000000..85e9486 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scale-horz-trough.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scale-slider-active.png b/Cutefish-light/gtk-2.0/assets/scale-slider-active.png new file mode 100644 index 0000000..b9a8a00 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scale-slider-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scale-slider-disabled.png b/Cutefish-light/gtk-2.0/assets/scale-slider-disabled.png new file mode 100644 index 0000000..9e2860d Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scale-slider-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scale-slider-hover.png b/Cutefish-light/gtk-2.0/assets/scale-slider-hover.png new file mode 100644 index 0000000..406a6ca Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scale-slider-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scale-slider.png b/Cutefish-light/gtk-2.0/assets/scale-slider.png new file mode 100644 index 0000000..f988443 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scale-slider.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scale-vert-trough-active.png b/Cutefish-light/gtk-2.0/assets/scale-vert-trough-active.png new file mode 100644 index 0000000..a19e102 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scale-vert-trough-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scale-vert-trough-disabled.png b/Cutefish-light/gtk-2.0/assets/scale-vert-trough-disabled.png new file mode 100644 index 0000000..f976e3a Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scale-vert-trough-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scale-vert-trough.png b/Cutefish-light/gtk-2.0/assets/scale-vert-trough.png new file mode 100644 index 0000000..ef79e78 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scale-vert-trough.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-horz-slider-active.png b/Cutefish-light/gtk-2.0/assets/scrollbar-horz-slider-active.png new file mode 100644 index 0000000..060da6d Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-horz-slider-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-horz-slider-disabled.png b/Cutefish-light/gtk-2.0/assets/scrollbar-horz-slider-disabled.png new file mode 100644 index 0000000..9617e3f Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-horz-slider-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-horz-slider-hover.png b/Cutefish-light/gtk-2.0/assets/scrollbar-horz-slider-hover.png new file mode 100644 index 0000000..bb6d9b0 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-horz-slider-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-horz-slider.png b/Cutefish-light/gtk-2.0/assets/scrollbar-horz-slider.png new file mode 100644 index 0000000..45e4bd9 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-horz-slider.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-horz-trough.png b/Cutefish-light/gtk-2.0/assets/scrollbar-horz-trough.png new file mode 100644 index 0000000..0394def Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-horz-trough.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-slider-active.png b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-slider-active.png new file mode 100644 index 0000000..475b1af Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-slider-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-slider-disabled.png b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-slider-disabled.png new file mode 100644 index 0000000..d27871e Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-slider-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-slider-hover.png b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-slider-hover.png new file mode 100644 index 0000000..4739b68 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-slider-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-slider.png b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-slider.png new file mode 100644 index 0000000..dcab805 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-slider.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-trough.png b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-trough.png new file mode 100644 index 0000000..06b93b5 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-ltr-trough.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-slider-active.png b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-slider-active.png new file mode 100644 index 0000000..dcc9e9f Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-slider-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-slider-disabled.png b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-slider-disabled.png new file mode 100644 index 0000000..96562d1 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-slider-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-slider-hover.png b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-slider-hover.png new file mode 100644 index 0000000..378bfa0 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-slider-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-slider.png b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-slider.png new file mode 100644 index 0000000..5f5dd82 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-slider.png differ diff --git a/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-trough.png b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-trough.png new file mode 100644 index 0000000..4d6a6aa Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/scrollbar-vert-rtl-trough.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-ltr-down-active.png b/Cutefish-light/gtk-2.0/assets/spin-ltr-down-active.png new file mode 100644 index 0000000..c3939d0 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-ltr-down-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-ltr-down-disabled.png b/Cutefish-light/gtk-2.0/assets/spin-ltr-down-disabled.png new file mode 100644 index 0000000..d771501 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-ltr-down-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-ltr-down-hover.png b/Cutefish-light/gtk-2.0/assets/spin-ltr-down-hover.png new file mode 100644 index 0000000..d8f4c37 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-ltr-down-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-ltr-down.png b/Cutefish-light/gtk-2.0/assets/spin-ltr-down.png new file mode 100644 index 0000000..d44a3dd Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-ltr-down.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-ltr-up-active.png b/Cutefish-light/gtk-2.0/assets/spin-ltr-up-active.png new file mode 100644 index 0000000..51ee414 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-ltr-up-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-ltr-up-disabled.png b/Cutefish-light/gtk-2.0/assets/spin-ltr-up-disabled.png new file mode 100644 index 0000000..108a107 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-ltr-up-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-ltr-up-hover.png b/Cutefish-light/gtk-2.0/assets/spin-ltr-up-hover.png new file mode 100644 index 0000000..6a4d2cd Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-ltr-up-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-ltr-up.png b/Cutefish-light/gtk-2.0/assets/spin-ltr-up.png new file mode 100644 index 0000000..b735ea2 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-ltr-up.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-rtl-down-active.png b/Cutefish-light/gtk-2.0/assets/spin-rtl-down-active.png new file mode 100644 index 0000000..eeed15c Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-rtl-down-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-rtl-down-disabled.png b/Cutefish-light/gtk-2.0/assets/spin-rtl-down-disabled.png new file mode 100644 index 0000000..a705208 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-rtl-down-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-rtl-down-hover.png b/Cutefish-light/gtk-2.0/assets/spin-rtl-down-hover.png new file mode 100644 index 0000000..35364e5 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-rtl-down-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-rtl-down.png b/Cutefish-light/gtk-2.0/assets/spin-rtl-down.png new file mode 100644 index 0000000..74ba4d6 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-rtl-down.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-rtl-up-active.png b/Cutefish-light/gtk-2.0/assets/spin-rtl-up-active.png new file mode 100644 index 0000000..0b43378 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-rtl-up-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-rtl-up-disabled.png b/Cutefish-light/gtk-2.0/assets/spin-rtl-up-disabled.png new file mode 100644 index 0000000..95f42b7 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-rtl-up-disabled.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-rtl-up-hover.png b/Cutefish-light/gtk-2.0/assets/spin-rtl-up-hover.png new file mode 100644 index 0000000..5d83996 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-rtl-up-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/spin-rtl-up.png b/Cutefish-light/gtk-2.0/assets/spin-rtl-up.png new file mode 100644 index 0000000..08c266a Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/spin-rtl-up.png differ diff --git a/Cutefish-light/gtk-2.0/assets/tab.png b/Cutefish-light/gtk-2.0/assets/tab.png new file mode 100644 index 0000000..52c5850 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/tab.png differ diff --git a/Cutefish-light/gtk-2.0/assets/treeview-ltr-button-active.png b/Cutefish-light/gtk-2.0/assets/treeview-ltr-button-active.png new file mode 100644 index 0000000..365523e Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/treeview-ltr-button-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/treeview-ltr-button-hover.png b/Cutefish-light/gtk-2.0/assets/treeview-ltr-button-hover.png new file mode 100644 index 0000000..e43317c Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/treeview-ltr-button-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/treeview-ltr-button.png b/Cutefish-light/gtk-2.0/assets/treeview-ltr-button.png new file mode 100644 index 0000000..862ac32 Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/treeview-ltr-button.png differ diff --git a/Cutefish-light/gtk-2.0/assets/treeview-rtl-button-active.png b/Cutefish-light/gtk-2.0/assets/treeview-rtl-button-active.png new file mode 100644 index 0000000..3dc0f5a Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/treeview-rtl-button-active.png differ diff --git a/Cutefish-light/gtk-2.0/assets/treeview-rtl-button-hover.png b/Cutefish-light/gtk-2.0/assets/treeview-rtl-button-hover.png new file mode 100644 index 0000000..f6dce3b Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/treeview-rtl-button-hover.png differ diff --git a/Cutefish-light/gtk-2.0/assets/treeview-rtl-button.png b/Cutefish-light/gtk-2.0/assets/treeview-rtl-button.png new file mode 100644 index 0000000..04b779b Binary files /dev/null and b/Cutefish-light/gtk-2.0/assets/treeview-rtl-button.png differ diff --git a/Cutefish-light/gtk-2.0/gtkrc b/Cutefish-light/gtk-2.0/gtkrc new file mode 100644 index 0000000..4093a5a --- /dev/null +++ b/Cutefish-light/gtk-2.0/gtkrc @@ -0,0 +1,36 @@ +# Based on Bridge by ScionicSpectre and Adwaita by GNOME +# vim:set ts=2 sw=2 sts=2 ai et: +# +# This is the GTK 2 version of Materia. It's whole purpose is to look as the +# GTK 3 version as much as possible until GTK 2 dies completely. +# +# Note: comments for explaining styles are on the bottom of each file beside the +# widget matches. + +# Declare the colours used throughout the theme. +# There shouldn't be any fiddling with them in the theme files themselves in +# order to not mess up the dark theme. + +# Text/base +gtk-color-scheme = "text_color:#212121\nbase_color:#FFFFFF" +# Foreground/background +gtk-color-scheme = "fg_color:#212121\nbg_color:#F2F2F2" +# Selected foreground/background +gtk-color-scheme = "selected_fg_color:#FFFFFF\nselected_bg_color:#3c84f7" +# Titlebar foreground/background +gtk-color-scheme = "titlebar_fg_color:#212121\ntitlebar_bg_color:#FFFFFF" +# Menus +gtk-color-scheme = "menu_color:#FFFFFF" +# Tooltips foreground/background +gtk-color-scheme = "tooltip_fg_color:#FFFFFF\ntooltip_bg_color:#616161" +# Links +gtk-color-scheme = "link_color:#1A73E8\nvisited_link_color:#9C27B0" + +# Set GTK settings +gtk-auto-mnemonics = 1 +gtk-primary-button-warps-slider = 1 + +# And hand over the control to the theme files +include "main.rc" +include "apps.rc" +include "hacks.rc" diff --git a/Cutefish-light/gtk-2.0/hacks.rc b/Cutefish-light/gtk-2.0/hacks.rc new file mode 100644 index 0000000..c288da3 --- /dev/null +++ b/Cutefish-light/gtk-2.0/hacks.rc @@ -0,0 +1,36 @@ +# vim:set ft=gtkrc ts=2 sw=2 sts=2 ai et: +# +# This file contains horrible hacks to make this theme work with some programs +# This is mostly due to the limitations of GTK 2 but sometimes its the fault of +# the programs themselves. Not going to point fingers. +# +# Either way, it's a WONTFIX for both, hence this horrible file. + +style "toplevel_hack" { + engine "adwaita" {} +} + +style "chrome_entry" { + base[NORMAL] = @base_color + base[INSENSITIVE] = @base_color +} + +style "vim_notebook" { + bg[NORMAL] = @base_color + bg[ACTIVE] = @bg_color +} + +# Vim puts an eventbox between the tab and the label and colours it, +# we need to handle that +widget "vim-main-window*GtkNotebook.GtkEventBox" style "vim_notebook" + +# (he)xchat input box +class "SexySpellEntry" style:highest "normal_entry" + +# Chromium uses base as the fill colour of its own entries +# This would be fine but GTK uses it to fill the surrounding space, so its set to bg +# That results in Chromium using it for the fill, so we need to handle that +widget_class "*Chrom*" style "chrome_entry" + +# Hack to be able to match widgets in LibreOffice +class "GtkWindow" style "toplevel_hack" diff --git a/Cutefish-light/gtk-2.0/main.rc b/Cutefish-light/gtk-2.0/main.rc new file mode 100644 index 0000000..62edf4d --- /dev/null +++ b/Cutefish-light/gtk-2.0/main.rc @@ -0,0 +1,2705 @@ +# vim:set ft=gtkrc ts=2 sw=2 sts=2 ai et: +# +# This is the main theme file, handling all the default widgets and theme +# properties. Since GTK 2 is old, we need to overcome some of its limitations, +# which is also mostly done in this file. Sadly not all of them can be overcome +# so there will always be a visible difference between the GTK 2 and 3 theme. + +style "default" { + xthickness = 1 + ythickness = 1 + + #################### + # Style Properties # + #################### + + GtkWidget::focus-padding = 0 + GtkWidget::focus-line-width = 2 + GtkWidget::focus-line-pattern = "\2\1" + + GtkToolbar::space-size = 5 # 1 + 2*2 (separator + margins) + GtkToolbar::internal-padding = 2 + GtkToolButton::icon-spacing = 4 + + GtkWidget::tooltip-radius = 4 + GtkWidget::tooltip-alpha = 230 + GtkWidget::new-tooltip-style = 1 #for compatibility + + GtkWidget::link-color = @link_color + GtkWidget::visited-link-color = @visited_link_color + GnomeHRef::link_color = @link_color + GtkHTML::link-color = @link_color + GtkHTML::vlink-color = @visited_link_color + GtkIMHtml::hyperlink-color = @link_color + GtkIMHtml::hyperlink-visited-color = @visited_link_color + + GtkSeparatorMenuItem::horizontal-padding = 0 + GtkSeparatorMenuItem::wide-separators = 1 + GtkSeparatorMenuItem::separator-height = 3 + + GtkButton::child-displacement-y = 0 + + GtkButton::default-border = {0, 0, 0, 0} + GtkButton::default-outside-border = {0, 0, 0, 0} + GtkButton::inner-border = {4, 4, 4, 4} + + GtkEntry::state-hint = 1 + GtkEntry::inner-border = {4, 4, 4, 4} + + GtkPaned::handle-size = 8 + GtkHPaned::handle-size = 8 + GtkVPaned::handle-size = 8 + + GtkScrollbar::trough-border = 0 + GtkRange::trough-border = 0 + GtkRange::slider-width = 17 + GtkRange::stepper-size = 0 + GtkRange::activate-slider = 1 + + GtkScrollbar::activate-slider = 1 + GtkScrollbar::stepper-size = 0 + GtkScrollbar::has-backward-stepper = 0 + GtkScrollbar::has-forward-stepper = 0 + GtkScrollbar::min-slider-length = 32 # 24 + 2*4 (margins) + GtkScrolledWindow::scrollbar-spacing = 0 + GtkScrolledWindow::scrollbars-within-bevel = 1 + + GtkScale::slider_length = 24 + GtkScale::slider_width = 24 + GtkScale::trough-side-details = 1 + + GtkProgressBar::min-horizontal-bar-height = 4 + GtkProgressBar::min-vertical-bar-width = 4 + GtkProgressBar::xspacing = 4 + GtkProgressBar::yspacing = 4 + + GtkStatusbar::shadow_type = GTK_SHADOW_NONE + GtkSpinButton::shadow_type = GTK_SHADOW_NONE + GtkMenuBar::shadow-type = GTK_SHADOW_NONE + GtkToolbar::shadow-type = GTK_SHADOW_NONE + # TODO: find out what this comment means: + # ( every window is misaligned for the sake of menus ): + GtkMenuBar::internal-padding = 0 + GtkMenu::horizontal-padding = 0 + GtkMenu::vertical-padding = 4 + GtkMenu::double-arrows = 0 + GtkMenuItem::arrow-scaling = 1 + GtkMenuItem::toggle-spacing = 12 + + GtkCheckButton::indicator-size = 24 + GtkCheckButton::indicator_spacing = 2 + GtkOptionMenu::indicator_spacing = {8, 8, 4, 4} + + GtkTreeView::expander-size = 16 + GtkTreeView::vertical-separator = 0 + GtkTreeView::horizontal-separator = 4 + GtkTreeView::allow-rules = 0 + # Set this because some apps read it + GtkTreeView::odd-row-color = @base_color + GtkTreeView::even-row-color = @base_color + + GtkExpander::expander-size = 16 + + GtkNotebook::tab-overlap = 0 + + ########## + # Colors # + ########## + + bg[NORMAL] = @bg_color + bg[PRELIGHT] = @bg_color + bg[SELECTED] = mix (0.24, @selected_bg_color, @bg_color) + bg[INSENSITIVE] = @bg_color + bg[ACTIVE] = @bg_color + + fg[NORMAL] = @fg_color + fg[PRELIGHT] = @fg_color + fg[SELECTED] = @fg_color + fg[INSENSITIVE] = mix (0.5, @fg_color, @bg_color) + fg[ACTIVE] = @fg_color + + text[NORMAL] = @text_color + text[PRELIGHT] = @text_color + text[SELECTED] = @text_color + text[INSENSITIVE] = mix (0.5, @text_color, @base_color) + text[ACTIVE] = @text_color + + base[NORMAL] = @base_color + base[PRELIGHT] = mix (0.08, @text_color, @base_color) + base[SELECTED] = mix (0.24, @selected_bg_color, @base_color) + base[INSENSITIVE] = mix (0.5, @base_color, @bg_color) + base[ACTIVE] = mix (0.24, @selected_bg_color, @base_color) + + # For succinctness, all reasonable pixmap options remain here + + # Draw frame around menu in a non-compositied environment + # This needs to go before pixmap because we need to override some stuff + engine "adwaita" {} + + engine "pixmap" { + + ################# + # Check Buttons # + ################# + + image { + function = CHECK + state = NORMAL + shadow = OUT + overlay_file = "assets/checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = OUT + overlay_file = "assets/checkbox-unchecked-hover.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = OUT + overlay_file = "assets/checkbox-unchecked-active.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = SELECTED + shadow = OUT + overlay_file = "assets/checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = OUT + overlay_file = "assets/checkbox-unchecked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = NORMAL + shadow = IN + overlay_file = "assets/checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = IN + overlay_file = "assets/checkbox-checked-hover.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = IN + overlay_file = "assets/checkbox-checked-active.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = SELECTED + shadow = IN + overlay_file = "assets/checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = IN + overlay_file = "assets/checkbox-checked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = NORMAL + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed-hover.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed-active.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = SELECTED + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed-disabled.png" + overlay_stretch = FALSE + } + + ################# + # Radio Buttons # + ################# + + image { + function = OPTION + state = NORMAL + shadow = OUT + overlay_file = "assets/radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = OUT + overlay_file = "assets/radio-unchecked-hover.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = OUT + overlay_file = "assets/radio-unchecked-active.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = SELECTED + shadow = OUT + overlay_file = "assets/radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = OUT + overlay_file = "assets/radio-unchecked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = NORMAL + shadow = IN + overlay_file = "assets/radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = IN + overlay_file = "assets/radio-checked-hover.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = IN + overlay_file = "assets/radio-checked-active.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = SELECTED + shadow = IN + overlay_file = "assets/radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = IN + overlay_file = "assets/radio-checked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = NORMAL + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed-hover.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed-active.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = SELECTED + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed-disabled.png" + overlay_stretch = FALSE + } + + ########## + # Arrows # + ########## + + # Overrides + + # Disable arrows in spinbuttons + image { + function = ARROW + detail = "spinbutton" + } + + # Disable arrows for qt in scrollbars + + image { + function = ARROW + detail = "vscrollbar" + } + + image { + function = ARROW + detail = "hscrollbar" + } + + # Menu arrows + + image { + function = ARROW + state = NORMAL + detail = "menuitem" + overlay_file = "assets/pan-left.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = PRELIGHT + detail = "menuitem" + overlay_file = "assets/pan-left.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = INSENSITIVE + detail = "menuitem" + overlay_file = "assets/pan-left-disabled.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = NORMAL + detail = "menuitem" + overlay_file = "assets/pan-right.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = PRELIGHT + detail = "menuitem" + overlay_file = "assets/pan-right.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = INSENSITIVE + detail = "menuitem" + overlay_file = "assets/pan-right-disabled.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = INSENSITIVE + detail = "menu_scroll_arrow_up" + overlay_file = "assets/pan-up-disabled.png" + overlay_stretch = FALSE + } + + image { + function = ARROW + detail = "menu_scroll_arrow_up" + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + } + + image { + function = ARROW + state = INSENSITIVE + detail = "menu_scroll_arrow_down" + overlay_file = "assets/pan-down-disabled.png" + overlay_stretch = FALSE + } + + image { + function = ARROW + detail = "menu_scroll_arrow_down" + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + # Regular arrows + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = INSENSITIVE + overlay_file = "assets/pan-up-alt-disabled.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = INSENSITIVE + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-left-alt.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-left.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-left.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = INSENSITIVE + overlay_file = "assets/pan-left-alt-disabled.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-right-alt.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-right.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-right.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = INSENSITIVE + overlay_file = "assets/pan-right-alt-disabled.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + ###################### + # Option Menu Arrows # + ###################### + + image { + function = TAB + state = NORMAL + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + } + + image { + function = TAB + state = PRELIGHT + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + image { + function = TAB + state = ACTIVE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + image { + function = TAB + state = INSENSITIVE + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + } + + ######### + # Lines # + ######### + + image { + function = VLINE + file = "assets/border.png" + border = {1, 0, 0, 0} + } + + image { + function = HLINE + file = "assets/border.png" + border = {0, 0, 1, 0} + } + + ######### + # Focus # + ######### + + image { + function = FOCUS + file = "assets/focus.png" + border = {5, 5, 5, 5} # Super strange, {4, 4, 4, 4} does not work properly... + stretch = TRUE + } + + ########### + # Handles # + ########### + + image { + function = HANDLE + detail = "handlebox" + overlay_file = "assets/handle-vert.png" + overlay_stretch = FALSE + } + + image { + function = HANDLE + state = NORMAL + overlay_file = "assets/handle-horz.png" + overlay_stretch = FALSE + orientation = HORIZONTAL + } + + image { + function = HANDLE + state = PRELIGHT + overlay_file = "assets/handle-horz-hover.png" + overlay_stretch = FALSE + orientation = HORIZONTAL + } + + image { + function = HANDLE + state = ACTIVE + overlay_file = "assets/handle-horz-active.png" + overlay_stretch = FALSE + orientation = HORIZONTAL + } + + image { + function = HANDLE + state = NORMAL + overlay_file = "assets/handle-vert.png" + overlay_stretch = FALSE + orientation = VERTICAL + } + + image { + function = HANDLE + state = PRELIGHT + overlay_file = "assets/handle-vert-hover.png" + overlay_stretch = FALSE + orientation = VERTICAL + } + + image { + function = HANDLE + state = ACTIVE + overlay_file = "assets/handle-vert-active.png" + overlay_stretch = FALSE + orientation = VERTICAL + } + + image { + function = RESIZE_GRIP + } + + ############# + # Expanders # + ############# + + image { + function = EXPANDER + expander_style = EXPANDED + state = NORMAL + file = "assets/pan-down-alt.png" + } + + image { + function = EXPANDER + expander_style = EXPANDED + state = PRELIGHT + file = "assets/pan-down.png" + } + + image { + function = EXPANDER + expander_style = EXPANDED + state = ACTIVE + file = "assets/pan-down.png" + } + + image { + function = EXPANDER + expander_style = EXPANDED + state = INSENSITIVE + file = "assets/pan-down-alt-disabled.png" + } + + # LTR + + image { + function = EXPANDER + expander_style = COLLAPSED + state = NORMAL + file = "assets/pan-right-alt.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = PRELIGHT + file = "assets/pan-right.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = ACTIVE + file = "assets/pan-right.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = INSENSITIVE + file = "assets/pan-right-alt-disabled.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = SEMI_COLLAPSED + file = "assets/pan-right-semi.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = SEMI_EXPANDED + file = "assets/pan-right-semi.png" + direction = LTR + } + + # RTL + + image { + function = EXPANDER + expander_style = COLLAPSED + state = NORMAL + file = "assets/pan-left-alt.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = PRELIGHT + file = "assets/pan-left.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = ACTIVE + file = "assets/pan-left.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = INSENSITIVE + file = "assets/pan-left-alt-disabled.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = SEMI_COLLAPSED + file = "assets/pan-left-semi.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = SEMI_EXPANDED + file = "assets/pan-left-semi.png" + direction = RTL + } + + ############# + # Notebooks # + ############# + + # Left + + image { + function = EXTENSION + state = NORMAL + file = "assets/tab.png" + border = {0, 1, 0, 0} + stretch = TRUE + gap_side = RIGHT + } + + image { + function = EXTENSION + gap_side = RIGHT + } + + # Right + + image { + function = EXTENSION + state = NORMAL + file = "assets/tab.png" + border = {1, 0, 0, 0} + stretch = TRUE + gap_side = LEFT + } + + image { + function = EXTENSION + gap_side = LEFT + } + + # Up + + image { + function = EXTENSION + state = NORMAL + file = "assets/tab.png" + border = {0, 0, 0, 1} + stretch = TRUE + gap_side = BOTTOM + } + + image { + function = EXTENSION + gap_side = BOTTOM + } + + # Down + + image { + function = EXTENSION + state = NORMAL + file = "assets/tab.png" + border = {0, 0, 1, 0} + stretch = TRUE + gap_side = TOP + } + + image { + function = EXTENSION + gap_side = TOP + } + + # Inner frame + + image { + function = BOX_GAP + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_file = "assets/tab.png" + gap_border = {1, 0, 0, 0} + gap_side = LEFT + } + + image { + function = BOX_GAP + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_file = "assets/tab.png" + gap_border = {0, 1, 0, 0} + gap_side = RIGHT + } + + image { + function = BOX_GAP + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_file = "assets/tab.png" + gap_border = {0, 0, 1, 0} + gap_side = TOP + } + + image { + function = BOX_GAP + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_file = "assets/tab.png" + gap_border = {0, 0, 0, 1} + gap_side = BOTTOM + } + + # Standalone frame + image { + function = BOX + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + } + + ############## + # Scrollbars # + ############## + + image { + function = BOX + detail = "trough" + file = "assets/scrollbar-horz-trough.png" + border = {0, 0, 1, 0} + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "trough" + file = "assets/scrollbar-vert-ltr-trough.png" + border = {1, 0, 0, 0} + orientation = VERTICAL + direction = LTR + } + + image { + function = BOX + detail = "trough" + file = "assets/scrollbar-vert-rtl-trough.png" + border = {0, 1, 0, 0} + orientation = VERTICAL + direction = RTL + } + + # Horizontal sliders + + image { + function = SLIDER + state = NORMAL + detail = "slider" + file = "assets/scrollbar-horz-slider.png" + border = {8, 8, 9, 8 } + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = SLIDER + state = PRELIGHT + detail = "slider" + file = "assets/scrollbar-horz-slider-hover.png" + border = {8, 8, 9, 8 } + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = SLIDER + state = ACTIVE + detail = "slider" + file = "assets/scrollbar-horz-slider-active.png" + border = {8, 8, 9, 8 } + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "slider" + file = "assets/scrollbar-horz-slider-disabled.png" + border = {8, 8, 9, 8 } + stretch = TRUE + orientation = HORIZONTAL + } + + # Vertical sliders + + image { + function = SLIDER + state = NORMAL + detail = "slider" + file = "assets/scrollbar-vert-ltr-slider.png" + border = {9, 8, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = LTR + } + + image { + function = SLIDER + state = PRELIGHT + detail = "slider" + file = "assets/scrollbar-vert-ltr-slider-hover.png" + border = {9, 8, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = LTR + } + + image { + function = SLIDER + state = ACTIVE + detail = "slider" + file = "assets/scrollbar-vert-ltr-slider-active.png" + border = {9, 8, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = LTR + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "slider" + file = "assets/scrollbar-vert-ltr-slider-disabled.png" + border = {9, 8, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = LTR + } + + # RTL + + image { + function = SLIDER + state = NORMAL + detail = "slider" + file = "assets/scrollbar-vert-rtl-slider.png" + border = {8, 9, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = RTL + } + + image { + function = SLIDER + state = PRELIGHT + detail = "slider" + file = "assets/scrollbar-vert-rtl-slider-hover.png" + border = {8, 9, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = RTL + } + + image { + function = SLIDER + state = ACTIVE + detail = "slider" + file = "assets/scrollbar-vert-rtl-slider-active.png" + border = {8, 9, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = RTL + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "slider" + file = "assets/scrollbar-vert-rtl-slider-disabled.png" + border = {8, 9, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = RTL + } + + ########## + # Scales # + ########## + + # Troughs, overrided later on. We set them here too because some widgets + # don't specify their orientation. + + image { + function = BOX + detail = "trough-upper" + file = "assets/scale-horz-trough.png" + border = {6, 6, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + state = INSENSITIVE + detail = "trough-upper" + file = "assets/scale-horz-trough-disabled.png" + border = {6, 6, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "trough-lower" + file = "assets/scale-horz-trough-active.png" + border = {6, 6, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + state = INSENSITIVE + detail = "trough-lower" + file = "assets/scale-horz-trough-disabled.png" + border = {6, 6, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "trough-upper" + file = "assets/scale-vert-trough.png" + border = {0, 0, 6, 6} + stretch = TRUE + orientation = VERTICAL + } + + image { + function = BOX + state = INSENSITIVE + detail = "trough-upper" + file = "assets/scale-vert-trough-disabled.png" + border = {0, 0, 6, 6} + stretch = TRUE + orientation = VERTICAL + } + + image { + function = BOX + detail = "trough-lower" + file = "assets/scale-vert-trough-active.png" + border = {0, 0, 6, 6} + stretch = TRUE + orientation = VERTICAL + } + + image { + function = BOX + state = INSENSITIVE + detail = "trough-lower" + file = "assets/scale-vert-trough-disabled.png" + border = {0, 0, 6, 6} + stretch = TRUE + orientation = VERTICAL + } + + # Sliders + + image { + function = SLIDER + state = NORMAL + detail = "hscale" + file = "assets/scale-slider.png" + } + + image { + function = SLIDER + state = PRELIGHT + detail = "hscale" + file = "assets/scale-slider-hover.png" + } + + image { + function = SLIDER + state = ACTIVE + detail = "hscale" + file = "assets/scale-slider-active.png" + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "hscale" + file = "assets/scale-slider-disabled.png" + } + + image { + function = SLIDER + state = NORMAL + detail = "vscale" + file = "assets/scale-slider.png" + } + + image { + function = SLIDER + state = PRELIGHT + detail = "vscale" + file = "assets/scale-slider-hover.png" + } + + image { + function = SLIDER + state = ACTIVE + detail = "vscale" + file = "assets/scale-slider-active.png" + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "vscale" + file = "assets/scale-slider-disabled.png" + } + + ########### + # Menubar # + ########### + + # image { + # function = BOX + # detail = "menubar" + # file = "assets/border.png" + # border = {0, 0, 0, 1} + # } + + ######### + # Menus # + ######### + + image { + function = BOX + state = PRELIGHT + detail = "menu_scroll_arrow_up" + file = "assets/border.png" + } + + image { + function = BOX + detail = "menu_scroll_arrow_up" + file = "assets/border.png" + border = {0, 0, 0, 1} + } + + image { + function = BOX + state = PRELIGHT + detail = "menu_scroll_arrow_down" + file = "assets/border.png" + } + + image { + function = BOX + detail = "menu_scroll_arrow_down" + file = "assets/border.png" + border = {0, 0, 1, 0} + } + + ########### + # Entries # + ########### + + image { + function = SHADOW + state = ACTIVE + detail = "entry" + file = "assets/entry-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = SHADOW + state = INSENSITIVE + detail = "entry" + file = "assets/entry-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = SHADOW + detail = "entry" + file = "assets/entry.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = FLAT_BOX + state = ACTIVE + detail = "entry_bg" + file = "assets/entry-background.png" + } + + image { + function = FLAT_BOX + state = INSENSITIVE + detail = "entry_bg" + file = "assets/entry-background-disabled.png" + } + + image { + function = FLAT_BOX + detail = "entry_bg" + file = "assets/entry-background.png" + } + + ######### + # Spins # + ######### + + # Spin-Up LTR + + image { + function = BOX + state = NORMAL + detail = "spinbutton_up" + file = "assets/spin-ltr-up.png" + border = {0, 8, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_up" + file = "assets/spin-ltr-up-hover.png" + border = {0, 8, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_up" + file = "assets/spin-ltr-up-active.png" + border = {0, 8, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_up" + file = "assets/spin-ltr-up-disabled.png" + border = {0, 8, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up-alt-disabled.png" + overlay_stretch = FALSE + direction = LTR + } + + # Spin-Up RTL + + image { + function = BOX + state = NORMAL + detail = "spinbutton_up" + file = "assets/spin-rtl-up.png" + border = {8, 0, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_up" + file = "assets/spin-rtl-up-hover.png" + border = {8, 0, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_up" + file = "assets/spin-rtl-up-hover.png" + border = {8, 0, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_up" + file = "assets/spin-rtl-up-disabled.png" + border = {8, 0, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up-alt-disabled.png" + overlay_stretch = FALSE + direction = RTL + } + + # Spin-Down LTR + + image { + function = BOX + state = NORMAL + detail = "spinbutton_down" + file = "assets/spin-ltr-down.png" + border = {0, 8, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_down" + file = "assets/spin-ltr-down-hover.png" + border = {0, 8, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_down" + file = "assets/spin-ltr-down-active.png" + border = {0, 8, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_down" + file = "assets/spin-ltr-down-disabled.png" + border = {0, 8, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + direction = LTR + } + + # Spin-Down RTL + + image { + function = BOX + state = NORMAL + detail = "spinbutton_down" + file = "assets/spin-rtl-down.png" + border = {8, 0, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_down" + file = "assets/spin-rtl-down-hover.png" + border = {8, 0, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_down" + file = "assets/spin-rtl-down-active.png" + border = {8, 0, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_down" + file = "assets/spin-rtl-down-disabled.png" + border = {8, 0, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + direction = RTL + } + + ############## + # Scrollbars # + ############## + + image { + function = BOX + detail = "bar" + file = "assets/progressbar-progress.png" + stretch = TRUE + border = {0, 0, 0, 0} + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "bar" + file = "assets/progressbar-progress.png" + stretch = TRUE + border = {0, 0, 0, 0} + orientation = VERTICAL + } + + ############# + # Treeviews # + ############# + + # Disable active the column highlight + # We need to match specific cells or we break stuff + # Looking at you deadbeef + + image { + function = FLAT_BOX + detail = "cell_even_sorted" + state = NORMAL + } + + image { + function = FLAT_BOX + detail = "cell_odd_sorted" + state = NORMAL + } + + # Disable all the other shadows + # This prevents the Raleigh effect + image { + function = SHADOW + } + } +} + +style "menubar" { + bg[NORMAL] = @titlebar_bg_color + fg[NORMAL] = mix(0.7, @titlebar_fg_color, @titlebar_bg_color) + fg[PRELIGHT] = @titlebar_fg_color + fg[INSENSITIVE] = mix(0.3, @titlebar_fg_color, @titlebar_bg_color) + # Needed to fix Firefox's menubar text + bg[SELECTED] = mix(0.12, @titlebar_fg_color, @titlebar_bg_color) + fg[SELECTED] = @titlebar_fg_color +} + +style "menubar_item" { + xthickness = 3 + ythickness = 4 + + fg[NORMAL] = mix(0.7, @titlebar_fg_color, @titlebar_bg_color) + bg[PRELIGHT] = mix(0.12, @titlebar_fg_color, @titlebar_bg_color) + fg[PRELIGHT] = @titlebar_fg_color + fg[INSENSITIVE] = mix(0.3, @titlebar_fg_color, @titlebar_bg_color) +} + +style "menu" { + xthickness = 0 + ythickness = 0 + + bg[NORMAL] = @menu_color + bg[INSENSITIVE] = @menu_color + bg[PRELIGHT] = @menu_color + bg[SELECTED] = mix(0.08, @fg_color, @menu_color) +} + +style "menu_item" { + xthickness = 4 + ythickness = 4 + + bg[PRELIGHT] = mix(0.08, @fg_color, @menu_color) + fg[PRELIGHT] = @fg_color + # Chromium uses this setting + bg[SELECTED] = mix(0.08, @fg_color, @menu_color) + text[SELECTED] = @fg_color + # Some widgets use text, we need to handle that + text[NORMAL] = @fg_color + text[PRELIGHT] = @fg_color + + # Unfortunately we can't tell regular and menu checks/radios apart + # Without the heirarchy + engine "pixmap" { + + ################# + # Check Buttons # + ################# + + image { + function = CHECK + state = NORMAL + shadow = OUT + overlay_file = "assets/menu-checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = OUT + overlay_file = "assets/menu-checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = OUT + overlay_file = "assets/menu-checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = OUT + overlay_file = "assets/menu-checkbox-unchecked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = NORMAL + shadow = IN + overlay_file = "assets/menu-checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = IN + overlay_file = "assets/menu-checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = IN + overlay_file = "assets/menu-checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = IN + overlay_file = "assets/menu-checkbox-checked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = NORMAL + shadow = ETCHED_IN + overlay_file = "assets/menu-checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = ETCHED_IN + overlay_file = "assets/menu-checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = ETCHED_IN + overlay_file = "assets/menu-checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = ETCHED_IN + overlay_file = "assets/menu-checkbox-mixed-disabled.png" + overlay_stretch = FALSE + } + + ################# + # Radio Buttons # + ################# + + image { + function = OPTION + state = NORMAL + shadow = OUT + overlay_file = "assets/menu-radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = OUT + overlay_file = "assets/menu-radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = OUT + overlay_file = "assets/menu-radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = OUT + overlay_file = "assets/menu-radio-unchecked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = NORMAL + shadow = IN + overlay_file = "assets/menu-radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = IN + overlay_file = "assets/menu-radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = IN + overlay_file = "assets/menu-radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = IN + overlay_file = "assets/menu-radio-checked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = NORMAL + shadow = ETCHED_IN + overlay_file = "assets/menu-radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = ETCHED_IN + overlay_file = "assets/menu-radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = ETCHED_IN + overlay_file = "assets/menu-radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = ETCHED_IN + overlay_file = "assets/menu-radio-mixed-disabled.png" + overlay_stretch = FALSE + } + } +} + +style "separator_menu_item" { + xthickness = 0 + ythickness = 2 + + engine "pixmap" { + image { + function = BOX + file = "assets/border.png" + border = {0, 0, 0, 1} + } + } +} + +style "button_label" { + # fg[NORMAL] = mix(0.7, @fg_color, @bg_color) + # fg[INSENSITIVE] = mix(0.3, @fg_color, @bg_color) + + font_name = "Medium" +} + +style "normal_button_label" { + # fg[NORMAL] = @fg_color + # fg[INSENSITIVE] = mix(0.5, @fg_color, @bg_color) + + font_name = "Regular" +} + +style "button" { + xthickness = 6 + ythickness = 6 + + # For the sake of sanity style buttons this way + engine "pixmap" { + + ########### + # Buttons # + ########### + + image { + function = BOX + state = NORMAL + file = "assets/button.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = PRELIGHT + shadow = OUT + file = "assets/button-hover.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + # Don't add hover effect on pressed buttons + image { + function = BOX + state = PRELIGHT + shadow = IN + file = "assets/button-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = ACTIVE + file = "assets/button-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = INSENSITIVE + file = "assets/button-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + } +} + +style "link_button" { + # Disable the button effect, leave just the link + engine "pixmap" { + image { + function = BOX + } + } +} + +style "entry" { + base[NORMAL] = @bg_color + base[SELECTED] = mix (0.24, @selected_bg_color, @bg_color) + base[INSENSITIVE] = @bg_color + base[ACTIVE] = mix (0.24, @selected_bg_color, @bg_color) + + # We set this same as the border of the border of the entry + # This way there's no overlap + xthickness = 6 + ythickness = 6 +} + +style "combobox" { + xthickness = 6 + ythickness = 6 + + # This affects only the button beside an entry + GtkButton::inner-border = {0, 0, 0, 0} + + # For the sake of sanity style buttons this way + engine "pixmap" { + + ########### + # Buttons # + ########### + + image { + function = BOX + state = NORMAL + file = "assets/entry.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = PRELIGHT + file = "assets/entry-hover.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = ACTIVE + file = "assets/entry-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = INSENSITIVE + file = "assets/entry-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + } +} + +style "combobox_cellview" { + # text[NORMAL] = mix(0.7, @fg_color, @bg_color) + # text[INSENSITIVE] = mix(0.3, @fg_color, @bg_color) +} + +style "combobox_entry" { + # Since one side of the button is missing, we need to shift the arrow a little to the right + GtkButton::inner-border = {0, 2, 0, 0} + + base[NORMAL] = @base_color + base[ACTIVE] = @base_color + + engine "pixmap" { + + ############# + # LTR entry # + ############# + + image { + function = SHADOW + state = NORMAL + detail = "entry" + file = "assets/combo-left-entry.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = SHADOW + state = ACTIVE + detail = "entry" + file = "assets/combo-left-entry-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = SHADOW + state = INSENSITIVE + detail = "entry" + file = "assets/combo-left-entry-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + ############# + # RTL entry # + ############# + + image { + function = SHADOW + state = NORMAL + detail = "entry" + file = "assets/combo-right-entry.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = SHADOW + state = ACTIVE + detail = "entry" + file = "assets/combo-right-entry-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = SHADOW + state = INSENSITIVE + detail = "entry" + file = "assets/combo-right-entry-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = RTL + } + + ############## + # LTR button # + ############## + + image { + function = BOX + state = NORMAL + detail = "button" + file = "assets/combo-right-entry.png" + border = {0, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = PRELIGHT + detail = "button" + file = "assets/combo-right-entry-hover.png" + border = {0, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = ACTIVE + detail = "button" + file = "assets/combo-right-entry-active.png" + border = {0, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = INSENSITIVE + detail = "button" + file = "assets/combo-right-entry-disabled.png" + border = {0, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + ############## + # RTL button # + ############## + + image { + function = BOX + state = NORMAL + detail = "button" + file = "assets/combo-left-entry.png" + border = {6, 0, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = PRELIGHT + detail = "button" + file = "assets/combo-left-entry-hover.png" + border = {6, 0, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = ACTIVE + detail = "button" + file = "assets/combo-left-entry-active.png" + border = {6, 0, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = INSENSITIVE + detail = "button" + file = "assets/combo-left-entry-disabled.png" + border = {6, 0, 6, 6} + stretch = TRUE + direction = RTL + } + } +} + +style "combo_button_padding" { + # Since one side of the button is missing, we need to shift the arrow a + # little to the right. + # This is the same thing we've done above but the combo, unlike the combobox, + # uses padding the same way as a button. + GtkButton::inner-border = {3, 6, 3, 3} +} + +style "notebook" { + xthickness = 3 + ythickness = 3 +} + +style "notebook_tab_label" { + fg[ACTIVE] = mix(0.7, @fg_color, @bg_color) + + font_name = "Medium" +} + +style "notebook_viewport" { + bg[NORMAL] = @base_color +} + +style "notebook_bg" { + bg[NORMAL] = @base_color + bg[PRELIGHT] = @base_color + bg[INSENSITIVE] = @base_color +} + +style "notebook_entry" { + base[NORMAL] = @base_color + base[SELECTED] = mix (0.24, @selected_bg_color, @base_color) + base[INSENSITIVE] = @base_color + base[ACTIVE] = mix (0.24, @selected_bg_color, @base_color) +} + +style "normal_bg" { + bg[NORMAL] = @bg_color + bg[PRELIGHT] = @bg_color + bg[INSENSITIVE] = @bg_color +} + +style "normal_entry" { + base[NORMAL] = @bg_color + base[SELECTED] = mix (0.24, @selected_bg_color, @bg_color) + base[INSENSITIVE] = @bg_color + base[ACTIVE] = mix (0.24, @selected_bg_color, @bg_color) +} + +style "textview" { + bg[NORMAL] = @base_color +} + +style "scale_horz" { + engine "pixmap" { + image { + function = BOX + detail = "trough-upper" + file = "assets/scale-horz-trough.png" + border = {6, 6, 0, 0} + stretch = TRUE + } + + image { + function = BOX + detail = "trough-lower" + file = "assets/scale-horz-trough-active.png" + border = {6, 6, 0, 0} + stretch = TRUE + } + } +} + +style "scale_vert" { + engine "pixmap" { + image { + function = BOX + detail = "trough-upper" + file = "assets/scale-vert-trough.png" + border = {0, 0, 6, 6} + stretch = TRUE + } + + image { + function = BOX + detail = "trough-lower" + file = "assets/scale-vert-trough-active.png" + border = {0, 0, 6, 6} + stretch = TRUE + } + } +} + +style "progressbar" { + xthickness = 0 + ythickness = 0 + + fg[PRELIGHT] = @selected_fg_color + + engine "pixmap" { + image { + function = BOX + detail = "trough" + file = "assets/progressbar-trough.png" + border = {0, 0, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "trough" + file = "assets/progressbar-trough.png" + border = {0, 0, 0, 0} + stretch = TRUE + orientation = VERTICAL + } + } +} + +style "treeview_header" { + xthickness = 2 + ythickness = 2 + + fg[NORMAL] = mix(0.7, @fg_color, @base_color) + fg[PRELIGHT] = @fg_color + + font_name = "Medium" + + GtkButton::inner-border = {4, 4, 0, 2} + + engine "pixmap" { + image { + function = BOX + state = NORMAL + file = "assets/treeview-ltr-button.png" + border = {0, 1, 0, 1} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = PRELIGHT + file = "assets/treeview-ltr-button-hover.png" + border = {0, 1, 0, 1} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = ACTIVE + file = "assets/treeview-ltr-button-active.png" + border = {0, 1, 0, 1} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = NORMAL + file = "assets/treeview-rtl-button.png" + border = {1, 0, 0, 1} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = PRELIGHT + file = "assets/treeview-rtl-button-hover.png" + border = {1, 0, 0, 1} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = ACTIVE + file = "assets/treeview-rtl-button-active.png" + border = {1, 0, 0, 1} + stretch = TRUE + direction = RTL + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + } +} + +style "scrolled_window" { + engine "pixmap" { + image { + function = SHADOW + file = "assets/frame.png" + border = {1, 1, 1, 1} + stretch = TRUE + } + } +} + +style "frame" { + engine "pixmap" { + image { + function = SHADOW + shadow = NONE + } + + image { + function = SHADOW + file = "assets/frame.png" + border = {1, 1, 1, 1} + stretch = TRUE + } + + image { + function = SHADOW_GAP + file = "assets/frame.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_start_file = "assets/border.png" + gap_end_file = "assets/border.png" + } + } +} + +style "tool_button" { + GtkButton::inner-border = {2, 2, 2, 2} + + # For the sake of sanity style buttons this way + engine "pixmap" { + image { + function = BOX + state = NORMAL + file = "assets/flat-button.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = PRELIGHT + shadow = OUT + file = "assets/flat-button-hover.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + # Don't add hover effect on pressed buttons + image { + function = BOX + state = PRELIGHT + shadow = IN + file = "assets/flat-button-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = ACTIVE + file = "assets/flat-button-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = INSENSITIVE + shadow = OUT + file = "assets/flat-button-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = INSENSITIVE + shadow = IN + file = "assets/button-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + } +} + +style "toolbar_separator" { + GtkWidget::wide-separators = 1 + GtkWidget::separator-width = 1 + GtkWidget::separator-height = 1 + + engine "pixmap" { + image { + function = BOX + file = "assets/border.png" + } + } +} + +style "inline_toolbar" { + # GtkToolbar::button-relief = GTK_RELIEF_NORMAL + + engine "pixmap" { + image { + function = BOX + file = "assets/frame-inline.png" + border = {1, 1, 0, 1} + stretch = TRUE + } + } +} + +style "tooltip" { + xthickness = 8 + ythickness = 8 + + bg[NORMAL] = @tooltip_bg_color + fg[NORMAL] = @tooltip_fg_color + bg[SELECTED] = @tooltip_bg_color +} + +style "disable_text_shadow" { + engine "murrine" { + textstyle = 0 + } +} + +style "disable_separator" { + xthickness = 0 + ythickness = 0 + + GtkWidget::wide-separators = 1 +} + +# Default style, containing theme properties and trying to match every widget as +# much as possible, which is not only faster than trying to match every widget +# by its own but also less bug-prune and more consistent. However there is some +# widget specific stuff that needs to be taken care of, which is the point of +# every other style below. +class "GtkWidget" style "default" + +###################################### +# Override padding, style and colour # +###################################### + +class "GtkButton" style "button" +class "GtkLinkButton" style "link_button" +class "GtkEntry" style "entry" +class "GtkOldEditable" style "entry" +class "GtkNotebook" style "notebook" +class "GtkHScale" style "scale_horz" +class "GtkVScale" style "scale_vert" +class "GtkProgressBar" style "progressbar" +class "GtkScrolledWindow" style "scrolled_window" +class "GtkFrame" style "frame" +class "GtkSeparatorToolItem" style "toolbar_separator" +class "GtkMenuBar" style "menubar" +class "GtkMenu" style "menu" +class "GtkTextView" style "textview" + +# Menu and menubar items +widget_class "**" style "menu_item" +widget_class "*.*" style "menubar_item" +widget_class "**" style "separator_menu_item" + +# Treeview buttons +widget_class "***" style "treeview_header" + +# Give the file chooser toolbar a border +widget_class "**" style "inline_toolbar" + +# Fix padding on regular comboboxes +widget_class "*." style "combobox" +widget_class "*" style "combobox" + +# And disable separators on them +widget_class "*.*" style "disable_separator" +widget_class "**" style "disable_separator" +widget_class "**" style "disable_separator" + +# Join together the ComboBoxEntry entry and button +widget_class "**" style "combobox_entry" + +# Join the Combo entry and button +widget_class "**" style "combobox_entry" + +# Tweak the padding on the button a little bit because it +# uses it a bit differently +widget_class "*." style "combo_button_padding" + +# Alas we cannot do the same for ComboBoxText because there +# isn't a way to apply the style to only the comboboxes that +# have an entry inside + +# Tool buttons have different styles +widget_class "**" style "tool_button" +widget_class "**.*" style "tool_button" + +# Notebooks +widget_class "*." style "notebook_tab_label" +widget_class "*.." style "notebook_tab_label" + +# Notebooks are white, act accordingly +widget_class "**" style "notebook_entry" +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" + +# However, stuff inside eventboxes inside notebooks is grey +# again, react +widget_class "***" style "normal_entry" +widget_class "***" style "normal_bg" +widget_class "***" style "normal_bg" + +# Button labels +widget_class "*." style "button_label" + +# Normalize button labels +widget_class "*." style "normal_button_label" +widget_class "*." style "normal_button_label" + +# ComboBoxes tend to draw the button label with text[] +# instead of fg[], we need to fix that +widget_class "**" style "combobox_cellview" + +# Disable white text shadows +widget_class "*" style "disable_text_shadow" +widget_class "*" style "disable_text_shadow" + +# GTK tooltips +widget "gtk-tooltip*" style "tooltip" diff --git a/Cutefish-light/gtk-3.0/assets/scalable/checkbox-checked-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/checkbox-checked-symbolic.svg new file mode 100644 index 0000000..7b89e88 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/checkbox-checked-symbolic@2.svg b/Cutefish-light/gtk-3.0/assets/scalable/checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..17e3c4a --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/checkbox-mixed-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..b4808a6 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/checkbox-mixed-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/checkbox-mixed-symbolic@2.svg b/Cutefish-light/gtk-3.0/assets/scalable/checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..3ea0541 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/checkbox-mixed-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/cursor-handle-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/cursor-handle-symbolic.svg new file mode 100644 index 0000000..e2a252b --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/cursor-handle-symbolic.svg @@ -0,0 +1,3 @@ + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/radio-checked-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/radio-checked-symbolic.svg new file mode 100644 index 0000000..67beb46 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/radio-checked-symbolic.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/radio-checked-symbolic@2.svg b/Cutefish-light/gtk-3.0/assets/scalable/radio-checked-symbolic@2.svg new file mode 100644 index 0000000..bf51d9e --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/radio-checked-symbolic@2.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/radio-mixed-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/radio-mixed-symbolic.svg new file mode 120000 index 0000000..79b7355 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/radio-mixed-symbolic.svg @@ -0,0 +1 @@ +checkbox-mixed-symbolic.svg \ No newline at end of file diff --git a/Cutefish-light/gtk-3.0/assets/scalable/radio-mixed-symbolic@2.svg b/Cutefish-light/gtk-3.0/assets/scalable/radio-mixed-symbolic@2.svg new file mode 120000 index 0000000..b68859d --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/radio-mixed-symbolic@2.svg @@ -0,0 +1 @@ +checkbox-mixed-symbolic@2.svg \ No newline at end of file diff --git a/Cutefish-light/gtk-3.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..de0d789 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..7f0235f --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg @@ -0,0 +1,47 @@ + + + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/scale-slider-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/scale-slider-symbolic.svg new file mode 100644 index 0000000..4b00bc1 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/scale-slider-symbolic.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..37d9c04 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..1bc5cb6 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic.svg new file mode 100644 index 0000000..4759e32 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic@2.svg b/Cutefish-light/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..a44f5c9 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..d621934 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg b/Cutefish-light/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..91c7006 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/small-radio-checked-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/small-radio-checked-symbolic.svg new file mode 100644 index 0000000..f2c9cf9 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/small-radio-checked-symbolic.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/small-radio-checked-symbolic@2.svg b/Cutefish-light/gtk-3.0/assets/scalable/small-radio-checked-symbolic@2.svg new file mode 100644 index 0000000..a06db4c --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/small-radio-checked-symbolic@2.svg @@ -0,0 +1,39 @@ + + + + + + diff --git a/Cutefish-light/gtk-3.0/assets/scalable/small-radio-mixed-symbolic.svg b/Cutefish-light/gtk-3.0/assets/scalable/small-radio-mixed-symbolic.svg new file mode 120000 index 0000000..86dfcec --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/small-radio-mixed-symbolic.svg @@ -0,0 +1 @@ +small-checkbox-mixed-symbolic.svg \ No newline at end of file diff --git a/Cutefish-light/gtk-3.0/assets/scalable/small-radio-mixed-symbolic@2.svg b/Cutefish-light/gtk-3.0/assets/scalable/small-radio-mixed-symbolic@2.svg new file mode 120000 index 0000000..bafb558 --- /dev/null +++ b/Cutefish-light/gtk-3.0/assets/scalable/small-radio-mixed-symbolic@2.svg @@ -0,0 +1 @@ +small-checkbox-mixed-symbolic@2.svg \ No newline at end of file diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-dark.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-dark.png new file mode 100644 index 0000000..00d08bd Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-dark.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-dark@2.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-dark@2.png new file mode 100644 index 0000000..25abeb6 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-dark@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark.png new file mode 100644 index 0000000..bb5607f Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png new file mode 100644 index 0000000..d6065db Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-disabled.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-disabled.png new file mode 100644 index 0000000..5861d66 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-disabled.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-disabled@2.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-disabled@2.png new file mode 100644 index 0000000..52907bf Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider-disabled@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider.png new file mode 100644 index 0000000..29f1fca Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider@2.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider@2.png new file mode 100644 index 0000000..47b16ec Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-after-slider@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-dark.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-dark.png new file mode 100644 index 0000000..22b3bc9 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-dark.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-dark@2.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-dark@2.png new file mode 100644 index 0000000..818c7ed Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-dark@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark.png new file mode 100644 index 0000000..e5f083e Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png new file mode 100644 index 0000000..2e8b6c7 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-disabled.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-disabled.png new file mode 100644 index 0000000..239ca9a Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-disabled.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-disabled@2.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-disabled@2.png new file mode 100644 index 0000000..adc1af7 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider-disabled@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider.png new file mode 100644 index 0000000..3a4aa7f Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider@2.png b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider@2.png new file mode 100644 index 0000000..9dd390f Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-horz-marks-before-slider@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-dark.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-dark.png new file mode 100644 index 0000000..3231d1b Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-dark.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-dark@2.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-dark@2.png new file mode 100644 index 0000000..78cff7e Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-dark@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark.png new file mode 100644 index 0000000..1bd736e Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png new file mode 100644 index 0000000..25f37ab Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-disabled.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-disabled.png new file mode 100644 index 0000000..8e9a3e2 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-disabled.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-disabled@2.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-disabled@2.png new file mode 100644 index 0000000..47f06af Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider-disabled@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider.png new file mode 100644 index 0000000..fedff3d Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider@2.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider@2.png new file mode 100644 index 0000000..6215f7c Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-after-slider@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-dark.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-dark.png new file mode 100644 index 0000000..5679039 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-dark.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-dark@2.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-dark@2.png new file mode 100644 index 0000000..03926a9 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-dark@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark.png new file mode 100644 index 0000000..61283d7 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png new file mode 100644 index 0000000..690689c Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-disabled.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-disabled.png new file mode 100644 index 0000000..040f9f6 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-disabled.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-disabled@2.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-disabled@2.png new file mode 100644 index 0000000..593ef55 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider-disabled@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider.png new file mode 100644 index 0000000..57825fd Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider.png differ diff --git a/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider@2.png b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider@2.png new file mode 100644 index 0000000..b828dae Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/scale-vert-marks-before-slider@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-checked-dark.png b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-checked-dark.png new file mode 100644 index 0000000..8dbedf6 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-checked-dark.png differ diff --git a/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-checked-dark@2.png b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-checked-dark@2.png new file mode 100644 index 0000000..d4b23d5 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-checked-dark@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-checked.png b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-checked.png new file mode 100644 index 0000000..a223d1f Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-checked.png differ diff --git a/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-checked@2.png b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-checked@2.png new file mode 100644 index 0000000..a7723f1 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-checked@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark.png b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark.png new file mode 100644 index 0000000..f6b914e Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark.png differ diff --git a/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark@2.png b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark@2.png new file mode 100644 index 0000000..29ecf2b Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark@2.png differ diff --git a/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-unchecked.png b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-unchecked.png new file mode 100644 index 0000000..40ff92e Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-unchecked.png differ diff --git a/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-unchecked@2.png b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-unchecked@2.png new file mode 100644 index 0000000..8e87ea7 Binary files /dev/null and b/Cutefish-light/gtk-3.0/assets/selectionmode-checkbox-unchecked@2.png differ diff --git a/Cutefish-light/gtk-3.0/gtk-dark.css b/Cutefish-light/gtk-3.0/gtk-dark.css new file mode 100644 index 0000000..506b1fe --- /dev/null +++ b/Cutefish-light/gtk-3.0/gtk-dark.css @@ -0,0 +1,4180 @@ +@keyframes ripple { + to { + background-size: 1000% 1000%; + } +} + +@keyframes ripple-on-slider { + to { + background-size: auto, 1000% 1000%; + } +} + +@keyframes ripple-on-headerbar { + from { + background-image: radial-gradient(circle, #5b9bf8 0%, transparent 0%); + } + to { + background-image: radial-gradient(circle, #5b9bf8 100%, transparent 0%); + } +} + +* { + background-clip: padding-box; + -GtkToolButton-icon-spacing: 0; + -GtkTextView-error-underline-color: #F28B82; + -GtkScrolledWindow-scrollbar-spacing: 0; + -GtkToolItemGroup-expander-size: 11; + -GtkWidget-text-handle-width: 24; + -GtkWidget-text-handle-height: 24; + -GtkDialog-button-spacing: 6; + -GtkDialog-action-area-border: 6; + outline-style: solid; + outline-width: 2px; + outline-color: transparent; + outline-offset: -4px; + -gtk-outline-radius: 6px; + -gtk-secondary-caret-color: #5b9bf8; +} + +*:focus { + outline-color: alpha(currentColor, 0.1); +} + +calendar:selected, treeview.view:selected, modelbutton.flat:selected, +.menuitem.button.flat:selected, .background.csd .view:selected { + color: white; + background-color: alpha(currentColor, 0.1); +} + +flowbox flowboxchild:selected { + color: #5b9bf8; + background-color: rgba(91, 155, 248, 0.2); +} + +spinbutton.vertical selection, spinbutton:not(.vertical) selection, +entry selection, label selection, textview text selection:focus, textview text selection, widget.view:selected, .view:selected { + color: white; + background-color: #5b9bf8; +} + +.linked:not(.vertical) > button, .linked:not(.vertical) > spinbutton.vertical, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry { + border-radius: 0; +} + +.linked:not(.vertical) > button:first-child, .linked:not(.vertical) > spinbutton.vertical:first-child, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.linked:not(.vertical) > button:last-child, .linked:not(.vertical) > spinbutton.vertical:last-child, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > button:only-child, .linked:not(.vertical) > spinbutton.vertical:only-child, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child { + border-radius: 6px; +} + +.linked.vertical > button, .linked.vertical > spinbutton.vertical, .linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry { + border-radius: 0; +} + +.linked.vertical > button:first-child, .linked.vertical > spinbutton.vertical:first-child, .linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > button:last-child, .linked.vertical > spinbutton.vertical:last-child, .linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > button:only-child, .linked.vertical > spinbutton.vertical:only-child, .linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child { + border-radius: 6px; +} + +/*************** + * Base States * + ***************/ +.background { + background-color: #2C2C2C; + color: white; +} + +.background.csd { + border-radius: 0 0 14px 14px; +} + +.background.maximized, .background.solid-csd { + border-radius: 0; +} + +*:disabled { + -gtk-icon-effect: dim; +} + +.gtkstyle-fallback { + background-color: #2C2C2C; + color: white; +} + +.gtkstyle-fallback:hover { + background-color: #1f1f1f; + color: white; +} + +.gtkstyle-fallback:active { + background-color: #131313; + color: white; +} + +.gtkstyle-fallback:disabled { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.5); +} + +.gtkstyle-fallback:selected { + background-color: #5b9bf8; + color: white; +} + +.view { + background-color: #2C2C2C; + color: white; +} + +.view:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +.view:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.view:selected:hover { + box-shadow: none; +} + +window.background.csd > stack.view { + border-radius: 0 0 14px 14px; +} + +textview text { + background-color: #2C2C2C; +} + +textview border { + background-color: #242424; + color: rgba(255, 255, 255, 0.7); +} + +iconview:hover, iconview:selected { + border-radius: 6px; +} + +.rubberband, +rubberband, +.content-view rubberband, +.content-view treeview.view rubberband, +treeview.view .content-view rubberband, +.content-view .rubberband, +treeview.view rubberband, +treeview.view .content-view .rubberband, +.content-view treeview.view .rubberband, +treeview.view flowbox rubberband, +flowbox treeview.view rubberband, +flowbox rubberband, +flowbox treeview.view rubberband, +treeview.view flowbox rubberband, +treeview.view flowbox rubberband, +flowbox treeview.view rubberband { + border: 1px solid #5b9bf8; + background-color: rgba(91, 155, 248, 0.3); +} + +flowbox flowboxchild { + padding: 4px; + border-radius: 6px; +} + +.content-view .tile:selected { + background-color: transparent; +} + +label { + caret-color: currentColor; +} + +label.separator { + color: rgba(255, 255, 255, 0.7); +} + +label:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; +} + +label.osd { + border-radius: 6px; + background-color: rgba(25, 25, 25, 0.9); + color: white; +} + +.dim-label { + color: rgba(255, 255, 255, 0.7); +} + +assistant .sidebar { + padding: 4px 0; +} + +assistant .sidebar label { + min-height: 36px; + padding: 0 12px; + color: rgba(255, 255, 255, 0.5); + font-weight: 500; +} + +assistant .sidebar label.highlight { + color: white; +} + +/********************* + * Spinner Animation * + *********************/ +@keyframes spin { + to { + -gtk-icon-transform: rotate(1turn); + } +} + +spinner { + background: none; + opacity: 0; + -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); +} + +spinner:checked { + opacity: 1; + animation: spin 1s linear infinite; +} + +spinner:checked:disabled { + opacity: 0.5; +} + +/**************** + * Text Entries * + ****************/ +spinbutton.vertical, spinbutton:not(.vertical), +entry { + min-height: 36px; + padding: 0 8px; + border-radius: 6px; + caret-color: currentColor; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.vertical:focus, spinbutton:focus:not(.vertical), +entry:focus { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +spinbutton.vertical:drop(active), spinbutton:drop(active):not(.vertical), +entry:drop(active) { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +spinbutton.vertical:disabled, spinbutton:disabled:not(.vertical), +entry:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.flat.vertical, spinbutton.flat:not(.vertical), +entry.flat { + min-height: 0; + padding: 2px; + border-radius: 0; + background-color: transparent; +} + +spinbutton.vertical image, spinbutton:not(.vertical) image, +entry image { + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical image:hover, spinbutton:not(.vertical) image:hover, spinbutton.vertical image:active, spinbutton:not(.vertical) image:active, +entry image:hover, +entry image:active { + color: white; +} + +spinbutton.vertical image:disabled, spinbutton:not(.vertical) image:disabled, +entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical image.left, spinbutton:not(.vertical) image.left, +entry image.left { + margin-left: 2px; + margin-right: 6px; +} + +spinbutton.vertical image.right, spinbutton:not(.vertical) image.right, +entry image.right { + margin-left: 6px; + margin-right: 2px; +} + +spinbutton.vertical undershoot.left, spinbutton:not(.vertical) undershoot.left, +entry undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.vertical undershoot.right, spinbutton:not(.vertical) undershoot.right, +entry undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.error.vertical, spinbutton.error:not(.vertical), +entry.error { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.error.vertical:focus, spinbutton.error:focus:not(.vertical), +entry.error:focus { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #F28B82; +} + +spinbutton.error.vertical:disabled, spinbutton.error:disabled:not(.vertical), +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.warning.vertical, spinbutton.warning:not(.vertical), +entry.warning { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.warning.vertical:focus, spinbutton.warning:focus:not(.vertical), +entry.warning:focus { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #FDD633; +} + +spinbutton.warning.vertical:disabled, spinbutton.warning:disabled:not(.vertical), +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical progress, spinbutton:not(.vertical) progress, +entry progress { + margin: 2px -8px; + border-bottom: 2px solid #5b9bf8; + background-color: transparent; +} + +treeview entry.flat, treeview entry { + background-color: #2C2C2C; +} + +treeview entry.flat, treeview entry.flat:focus, treeview entry, treeview entry:focus { + border-image: none; + box-shadow: none; +} + +.entry-tag { + margin: 2px; + border-radius: 9999px; + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +.entry-tag:hover { + background-image: image(alpha(currentColor, 0.08)); +} + +:dir(ltr) .entry-tag { + margin-left: 4px; + margin-right: 0; + padding-left: 12px; + padding-right: 8px; +} + +:dir(rtl) .entry-tag { + margin-left: 0; + margin-right: 4px; + padding-left: 8px; + padding-right: 12px; +} + +.entry-tag.button { + box-shadow: none; + background-color: transparent; +} + +.entry-tag.button:not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: -gtk-gradient(radial, center center, 0, center center, 0.001, to(#5b9bf8), to(transparent)); + } + to { + background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(#5b9bf8), to(transparent)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button { + color: rgba(255, 255, 255, 0.7); +} + +infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked { + color: white; +} + +infobar.warning > revealer > box button:disabled { + color: rgba(255, 255, 255, 0.3); +} + +infobar.warning > revealer > box button:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:not(.suggested-action):not(.destructive-action), button { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: rgba(255, 255, 255, 0.08); + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + color: white; +} + +actionbar > revealer > box .linked > button:focus:not(.suggested-action):not(.destructive-action), button:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +actionbar > revealer > box .linked > button:hover:not(.suggested-action):not(.destructive-action), button:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +actionbar > revealer > box .linked > button:active:not(.suggested-action):not(.destructive-action), button:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; +} + +actionbar > revealer > box .linked > button:disabled:not(.suggested-action):not(.destructive-action), button:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:checked:not(.suggested-action):not(.destructive-action), button:checked { + background-color: #5b9bf8; + color: white; +} + +actionbar > revealer > box .linked > button:checked:hover:not(.suggested-action):not(.destructive-action), button:checked:hover { + box-shadow: inset 0 0 0 9999px transparent; +} + +actionbar > revealer > box .linked > button:checked:disabled:not(.suggested-action):not(.destructive-action), button:checked:disabled { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.1); + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.titlebutton:not(.suggested-action):not(.destructive-action), filechooser #pathbarbox > stack > box > button, button.close, button.circular, .inline-toolbar button:not(.text-button) { + border-radius: 9999px; +} + +button.titlebutton:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, button.close label, button.circular label, .inline-toolbar button:not(.text-button) label { + padding: 0; +} + +placessidebar.sidebar row button.sidebar-button, notebook > header tab button.flat, spinbutton.vertical button, spinbutton:not(.vertical) button { + min-height: 24px; + min-width: 24px; + padding: 0; + border-radius: 9999px; +} + +button { + min-height: 24px; + min-width: 16px; + padding: 6px 10px; + border-radius: 6px; + font-weight: 500; +} + +button:drop(active) { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placessidebar.sidebar row button.sidebar-button, calendar.button, treeview.view header button button.circular, row.activatable button.circular, scrollbar button, notebook > header > tabs > arrow, spinbutton.vertical button, spinbutton:not(.vertical) button, modelbutton.flat, +.menuitem.button.flat, filechooser #pathbarbox > stack > box > button, messagedialog .dialog-action-box button, messagedialog .dialog-action-box .linked:not(.vertical) > button, .app-notification button, actionbar > revealer > box button:not(.suggested-action):not(.destructive-action), popover.background.menu button, +popover.background button.model, headerbar button:not(.suggested-action):not(.destructive-action), toolbar button, combobox > .linked:not(.vertical) > button:not(:only-child), button.flat { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), border-image 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + color: rgba(255, 255, 255, 0.7); +} + +placessidebar.sidebar row button.sidebar-button:focus, calendar.button:focus, treeview.view header button button.circular:focus, row.activatable button.circular:focus, scrollbar button:focus, notebook > header > tabs > arrow:focus, spinbutton.vertical button:focus, spinbutton:not(.vertical) button:focus, modelbutton.flat:focus, +.menuitem.button.flat:focus, filechooser #pathbarbox > stack > box > button:focus, messagedialog .dialog-action-box button:focus, messagedialog .dialog-action-box .linked:not(.vertical) > button:focus, .app-notification button:focus, actionbar > revealer > box button:focus:not(.suggested-action):not(.destructive-action), popover.background.menu button:focus, +popover.background button.model:focus, headerbar button:focus:not(.suggested-action):not(.destructive-action), toolbar button:focus, combobox > .linked:not(.vertical) > button:focus:not(:only-child), button.flat:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: white; +} + +placessidebar.sidebar row button.sidebar-button:hover, calendar.button:hover, treeview.view header button button.circular:hover, row.activatable button.circular:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, spinbutton.vertical button:hover, spinbutton:not(.vertical) button:hover, modelbutton.flat:hover, +.menuitem.button.flat:hover, filechooser #pathbarbox > stack > box > button:hover, messagedialog .dialog-action-box button:hover, messagedialog .dialog-action-box .linked:not(.vertical) > button:hover, .app-notification button:hover, actionbar > revealer > box button:hover:not(.suggested-action):not(.destructive-action), popover.background.menu button:hover, +popover.background button.model:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), toolbar button:hover, combobox > .linked:not(.vertical) > button:hover:not(:only-child), button.flat:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: white; +} + +placessidebar.sidebar row button.sidebar-button:active, calendar.button:active, treeview.view header button button.circular:active, row.activatable button.circular:active, scrollbar button:active, notebook > header > tabs > arrow:active, spinbutton.vertical button:active, spinbutton:not(.vertical) button:active, modelbutton.flat:active, +.menuitem.button.flat:active, filechooser #pathbarbox > stack > box > button:active, messagedialog .dialog-action-box button:active, messagedialog .dialog-action-box .linked:not(.vertical) > button:active, .app-notification button:active, actionbar > revealer > box button:active:not(.suggested-action):not(.destructive-action), popover.background.menu button:active, +popover.background button.model:active, headerbar button:active:not(.suggested-action):not(.destructive-action), toolbar button:active, combobox > .linked:not(.vertical) > button:active:not(:only-child), button.flat:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), border-image 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; + color: white; +} + +placessidebar.sidebar row button.sidebar-button:disabled, calendar.button:disabled, treeview.view header button button.circular:disabled, row.activatable button.circular:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, spinbutton.vertical button:disabled, spinbutton:not(.vertical) button:disabled, modelbutton.flat:disabled, +.menuitem.button.flat:disabled, filechooser #pathbarbox > stack > box > button:disabled, messagedialog .dialog-action-box button:disabled, messagedialog .dialog-action-box .linked:not(.vertical) > button:disabled, .app-notification button:disabled, actionbar > revealer > box button:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:disabled, +popover.background button.model:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), toolbar button:disabled, combobox > .linked:not(.vertical) > button:disabled:not(:only-child), button.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +filechooser #pathbarbox > stack > box > button:checked, messagedialog .dialog-action-box button:checked, messagedialog .dialog-action-box .linked:not(.vertical) > button:checked, .app-notification button:checked, actionbar > revealer > box button:checked:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked, +popover.background button.model:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), toolbar button:checked, combobox > .linked:not(.vertical) > button:checked:not(:only-child), button.flat:checked, button.flat:checked:hover { + background-color: alpha(currentColor, 0.1); + color: white; +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, messagedialog .dialog-action-box button:checked:disabled, .app-notification button:checked:disabled, actionbar > revealer > box button:checked:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked:disabled, +popover.background button.model:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), toolbar button:checked:disabled, combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(255, 255, 255, 0.5); +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.text-button.flat { + min-width: 48px; + padding-left: 8px; + padding-right: 8px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child) { + margin: 0 4px; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + border-radius: 6px; +} + +.linked:not(.vertical) > button.flat:not(:only-child).image-button:not(.text-button), .linked.vertical > button.flat:not(:only-child).image-button:not(.text-button) { + border-radius: 9999px; +} + +button.osd { + min-width: 24px; + min-width: 24px; + padding: 12px 16px; + background-color: #5b9bf8; + color: white; +} + +button.osd:hover { + background-color: #6fa7f9; + color: white; +} + +button.osd:active { + background-color: #86b5fa; + color: white; +} + +button.osd.image-button, button.osd.circular { + padding: 12px; +} + +button.osd.image-button > image, button.osd.circular > image { + padding: 0; +} + +button.osd:disabled { + opacity: 0; +} + +button.suggested-action { + background-color: #5b9bf8; + color: white; + box-shadow: none; +} + +button.suggested-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(91, 155, 248, 0.2), 0 4px 3px 0 rgba(91, 155, 248, 0.14), 0 1px 6px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:checked { + background-color: #8cb9fa; +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(91, 155, 248, 0.3), 0 2px 3px -1px rgba(91, 155, 248, 0.24), 0 2px 5px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #5b9bf8; +} + +button.suggested-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.suggested-action.flat:checked { + background-color: rgba(91, 155, 248, 0.3); +} + +button.destructive-action { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); + box-shadow: none; +} + +button.destructive-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(242, 139, 130, 0.2), 0 4px 3px 0 rgba(242, 139, 130, 0.14), 0 1px 6px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:checked { + background-color: rgba(182, 105, 98, 0.961); +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(242, 139, 130, 0.3), 0 2px 3px -1px rgba(242, 139, 130, 0.24), 0 2px 5px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(242, 139, 130, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #F28B82; +} + +button.destructive-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.destructive-action.flat:checked { + background-color: rgba(242, 139, 130, 0.3); +} + +.stack-switcher > button > label { + margin: 0 -6px; + padding: 0 6px; +} + +.stack-switcher > button > image { + margin: -3px -6px; + padding: 3px 6px; +} + +.stack-switcher > button.needs-attention:checked > label, +.stack-switcher > button.needs-attention:checked > image { + animation: none; + background-image: none; +} + +.primary-toolbar button { + -gtk-icon-shadow: none; +} + +button.close, button.circular { + min-width: 24px; + padding: 6px; +} + +stacksidebar.sidebar row.needs-attention > label, .stack-switcher > button.needs-attention > label, +.stack-switcher > button.needs-attention > image { + animation: needs-attention 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-repeat: no-repeat; + background-position: right 3px; + background-size: 6px 6px; +} + +stacksidebar.sidebar row.needs-attention > label:dir(rtl), .stack-switcher > button.needs-attention > label:dir(rtl), +.stack-switcher > button.needs-attention > image:dir(rtl) { + background-position: left 3px; +} + +modelbutton.flat, +.menuitem.button.flat { + min-height: 28px; + padding: 0 8px; + border-radius: 6px; + color: white; +} + +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 { + min-height: 24px; + min-width: 24px; + padding: 6px; +} + +/********* + * Links * + *********/ +*:link { + color: #2196F3; +} + +*:visited { + color: #CE93D8; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #2196F3; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #CE93D8; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton:not(.vertical) { + padding: 0; +} + +spinbutton:not(.vertical) entry { + min-width: 32px; + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +spinbutton:not(.vertical) button { + border: solid 6px transparent; +} + +spinbutton:not(.vertical) button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton:not(.vertical) button.up:dir(ltr), spinbutton:not(.vertical) button.down:dir(rtl) { + margin-left: -3px; +} + +spinbutton:not(.vertical) button.up:dir(rtl), spinbutton:not(.vertical) button.down:dir(ltr) { + margin-right: -3px; +} + +spinbutton.vertical { + padding: 0; +} + +spinbutton.vertical:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical entry { + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical button { + padding: 0; + border: solid 6px transparent; +} + +spinbutton.vertical button:focus:not(:hover):not(:active) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical button.up { + margin: 0 3px; +} + +spinbutton.vertical button.down { + margin: 0 3px; +} + +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: 24px; + min-width: 24px; +} + +combobox decoration { + transition: none; +} + +combobox button.combo cellview:dir(ltr) { + margin-left: -2px; +} + +combobox button.combo cellview:dir(rtl) { + margin-right: -2px; +} + +combobox.linked button:nth-child(2):dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +combobox.linked button:nth-child(2):dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child):first-child { + margin-right: -36px; + padding-right: 36px; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child):last-child { + margin-left: -36px; + padding-left: 36px; +} + +combobox > .linked:not(.vertical) > button:not(:only-child) { + min-height: 16px; + min-width: 16px; + margin: 6px; + padding: 4px; + border-radius: 6px; +} + +.linked:not(.vertical) > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.linked:not(.vertical) > combobox:not(:last-child) > box > button.combo { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.linked.vertical > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.linked.vertical > combobox:not(:last-child) > box > button.combo { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +button.combo:only-child { + border-radius: 6px; + font-weight: normal; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +button.combo:only-child:focus { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3); +} + +button.combo:only-child:hover { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +button.combo:only-child:checked { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +button.combo:only-child:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +/************ + * Toolbars * + ************/ +toolbar { + -GtkWidget-window-dragging: true; + padding: 2px; + background-color: #2C2C2C; +} + +.osd toolbar { + background-color: transparent; +} + +.app-notification, toolbar.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +.app-notification:backdrop, toolbar.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +.left.app-notification, .right.app-notification, .top.app-notification, .bottom.app-notification, toolbar.osd.left, toolbar.osd.right, toolbar.osd.top, toolbar.osd.bottom { + border-radius: 0; +} + +.bottom.app-notification, toolbar.osd.bottom { + box-shadow: none; + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.4)); +} + +toolbar.horizontal > separator { + margin: 2px; +} + +toolbar.vertical > separator { + margin: 2px; +} + +toolbar:not(.inline-toolbar):not(.osd) scale, +toolbar:not(.inline-toolbar):not(.osd) entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton, +toolbar:not(.inline-toolbar):not(.osd) button { + margin: 2px; +} + +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child) { + margin-left: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child) { + margin-right: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton button { + margin: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) switch { + margin: 8px 2px; +} + +.inline-toolbar { + padding: 6px; + border-style: solid; + border-width: 0 1px 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #242424; +} + +searchbar > revealer > box, +.location-bar { + padding: 6px; + border-style: solid; + border-width: 0 0 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; +} + +searchbar > revealer > box { + margin: -6px; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar .linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + border-radius: 6px; +} + +headerbar button:focus:not(.suggested-action):not(.destructive-action), headerbar button:hover:not(.suggested-action):not(.destructive-action), headerbar button:active:not(.suggested-action):not(.destructive-action), headerbar button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action) { + background-color: transparent; + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:focus:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:hover:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:backdrop:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar entry { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +.titlebar entry:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +.titlebar entry image { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar entry image:hover, .titlebar entry image:active { + color: white; +} + +.titlebar entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #242424; + color: white; + border-radius: 14px 14px 0 0; + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.titlebar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.titlebar:backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar .title { + padding: 0 12px; + font-weight: bold; +} + +.titlebar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +.titlebar .subtitle, +.titlebar .dim-label { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +.titlebar .subtitle:backdrop, +.titlebar .dim-label:backdrop { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar .titlebar { + background-color: transparent; + box-shadow: none; +} + +.titlebar + separator, .titlebar + separator.sidebar { + background-color: #242424; + background-image: none; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.titlebar + separator:backdrop, .titlebar + separator.sidebar:backdrop { + background-color: #2C2C2C; +} + +.titlebar.selection-mode + separator, .titlebar.selection-mode + separator.sidebar, .selection-mode .titlebar + separator, .selection-mode .titlebar + separator.sidebar { + background-color: #5b9bf8; +} + +.titlebar.selection-mode + separator:backdrop, .titlebar.selection-mode + separator.sidebar:backdrop, .selection-mode .titlebar + separator:backdrop, .selection-mode .titlebar + separator.sidebar:backdrop { + background-color: #5b9bf8; +} + +.background.csd.unified .titlebar + separator, .background.csd.unified .titlebar + separator.sidebar { + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.titlebar .linked:not(.vertical) > entry { + border-radius: 6px; + margin-left: 3px; + margin-right: 3px; +} + +.titlebar button.suggested-action:disabled, .titlebar button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +.titlebar .path-bar button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 0; + padding-left: 6px; + padding-right: 6px; +} + +.titlebar.selection-mode { + transition: background-color 0.1ms 0ms, color 0ms cubic-bezier(0, 0, 0.2, 1); + animation: ripple-on-headerbar 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2), inset 0 -1px rgba(255, 255, 255, 0.12); + background-color: #5b9bf8; + color: white; +} + +.titlebar.selection-mode:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode .subtitle:link { + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action) { + border-image: radial-gradient(circle closest-corner at center calc(100% - 1px), currentColor 0%, transparent 0%) 0 0 0/0 0 0px; + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):checked { + border-image: radial-gradient(circle closest-corner at center calc(100% - 1px), currentColor 100%, transparent 0%) 0 0 2/0 0 2px; + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:not(.titlebutton) { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:checked { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:checked:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar.selection-mode .selection-menu { + padding-left: 16px; + padding-right: 16px; +} + +.titlebar.selection-mode .selection-menu arrow { + -GtkArrow-arrow-scaling: 1; +} + +.titlebar.selection-mode .selection-menu .arrow { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +.titlebar .selection-mode { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #5b9bf8; +} + +.tiled .titlebar, .tiled-top .titlebar, .tiled-right .titlebar, .tiled-bottom .titlebar, .tiled-left .titlebar, .maximized .titlebar, .fullscreen .titlebar { + border-radius: 0; +} + +.titlebar.default-decoration { + min-height: 24px; + padding: 6px 12px; + border-radius: 14px 14px 0 0; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); +} + +.tiled .titlebar.default-decoration, .maximized .titlebar.default-decoration, .fullscreen .titlebar.default-decoration { + box-shadow: none; + border-radius: 0; +} + +.titlebar.default-decoration button.titlebutton { + min-height: 24px; + min-width: 24px; + margin: 0; + padding: 0; +} + +.background.csd .titlebar.default-decoration { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1), inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.background:not(.csd) .titlebar.default-decoration button.titlebutton:active { + background-size: 1000% 1000%; +} + +.solid-csd .titlebar:dir(rtl), .solid-csd .titlebar:dir(ltr) { + border-radius: 0; + box-shadow: none; +} + +headerbar { + min-height: 48px; + padding: 0 6px; +} + +box.vertical headerbar { + background-color: #242424; +} + +headerbar entry, +headerbar spinbutton, +headerbar button { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar button, headerbar button.image-button { + border-radius: 6px; +} + +headerbar > box.left, +headerbar > box.right { + padding: 0 4px; +} + +headerbar separator.titlebutton, headerbar separator.sidebar { + margin-top: 12px; + margin-bottom: 12px; + background-color: transparent; +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar spinbutton button { + margin-top: 0; + margin-bottom: 0; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action) { + border-radius: 0; + margin: 0; + min-width: 120px; + padding: 0; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action) > stack > box { + padding: 0 12px; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action):focus { + box-shadow: none; +} + +headerbar.windowhandle > button.popup label, headerbar.windowhandle > button.popup image { + min-height: 0; +} + +headerbar.windowhandle viewswitchertitle > squeezer { + margin-top: 0; + margin-bottom: 0; + background: none; +} + +headerbar.windowhandle viewswitchertitle > squeezer > viewswitcher { + margin: 0 0; + background: none; +} + +headerbar.windowhandle viewswitchertitle > squeezer > viewswitcher > box.horizontal > button.radio { + margin: 0; + padding: 0; + border-radius: 0; +} + +/************ + * Pathbars * + ************/ + +.path-bar.linked:not(.vertical) > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 3px; + margin-left: 1px; + margin-right: 1px; + background-color: alpha(currentColor, 0.08); +} + + +.path-bar.linked:not(.vertical) > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +.path-bar.linked:not(.vertical) > button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + + +.path-bar.linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + + +.path-bar.linked:not(.vertical) > button:checked { + background-color: alpha(currentColor, 0.16); + color: white; +} + + +.path-bar.linked:not(.vertical) > button label:not(:only-child):first-child { + margin-left: 0; +} + + +.path-bar.linked:not(.vertical) > button label:not(:only-child):last-child { + margin-right: 0; +} + + +.path-bar.linked:not(.vertical) > button.text-button { + min-width: 0; +} + + +.path-bar.linked:not(.vertical) > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +/************** + * Tree Views * + **************/ +treeview.view { + border-left-color: rgba(255, 255, 255, 0.3); + border-top-color: rgba(255, 255, 255, 0.12); + padding: 3px; +} + +* { + -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; +} + +.csd treeview.view:not(:selected):not(:hover):not(.progressbar):not(.expander):not(.trough):not(.separator) { + background-color: transparent; +} + +treeview.view:hover, treeview.view:selected { + border-radius: 0; +} + +treeview.view.separator { + min-height: 6px; + color: rgba(255, 255, 255, 0.12); +} + +treeview.view:drop(active) { + border-style: solid none; + border-width: 9999px; + border-color: alpha(currentColor, 0.08); +} + +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-down-symbolic"); + -gtk-icon-transform: rotate(-90deg); + color: rgba(255, 255, 255, 0.7); +} + +treeview.view.expander:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +treeview.view.expander:checked { + -gtk-icon-transform: unset; +} + +treeview.view.expander:hover, treeview.view.expander:active { + color: white; +} + +treeview.view.expander:disabled { + color: rgba(255, 255, 255, 0.3); +} + +treeview.view.progressbar { + border: none; + box-shadow: none; + background-color: #5b9bf8; + background-image: none; + border-radius: 9999px; + color: white; +} + +treeview.view.progressbar:selected, treeview.view.progressbar:selected:hover, treeview.view.progressbar:selected:focus { + box-shadow: none; + background-color: #74aaf9; + color: white; +} + +treeview.view.progressbar:selected:backdrop, treeview.view.progressbar:selected:hover:backdrop, treeview.view.progressbar:selected:focus:backdrop { + color: white; +} + +treeview.view.progressbar:backdrop, treeview.view.progressbar:selected:backdrop { + background-color: rgba(255, 255, 255, 0.3); +} + +treeview.view.trough { + border: none; + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); + background-image: none; + border-radius: 9999px; + padding: 0; + margin: 0; +} + +treeview.view.trough:selected, treeview.view.trough:selected:hover, treeview.view.trough:selected:focus { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view.trough:backdrop, treeview.view.trough:selected:backdrop { + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view header button { + padding: 2px 6px; + border-style: none solid solid none; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + background-clip: border-box; +} + +treeview.view header button:not(:focus):not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +treeview.view header button, treeview.view header button:disabled { + background-color: #2C2C2C; +} + +treeview.view header button:last-child { + border-right-style: none; +} + +treeview.view button.dnd, +treeview.view header.button.dnd { + padding: 2px 6px; + border-style: none solid solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + box-shadow: none; + background-color: #2C2C2C; + background-clip: border-box; + color: #5b9bf8; +} + +treeview.view acceleditor > label { + background-color: #5b9bf8; +} + +/********* + * Menus * + *********/ +menubar, +.menubar { + -GtkWidget-window-dragging: true; + padding: 0; + background-color: #242424; + color: white; + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +menubar:backdrop, +.menubar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.csd menubar, .csd .menubar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > menuitem, +.menubar > menuitem { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + padding: 4px 8px; + color: rgba(255, 255, 255, 0.7); + border-radius: 6px; +} + +menubar > menuitem:hover, +.menubar > menuitem:hover { + transition: none; + background-color: alpha(currentColor, 0.1); + color: white; +} + +menubar > menuitem:disabled, +.menubar > menuitem:disabled { + color: rgba(255, 255, 255, 0.3); +} + +menubar > menuitem label:disabled, +.menubar > menuitem label:disabled { + color: inherit; +} + +.background.popup { + background-color: transparent; +} + +menu, +.menu, +.context-menu { + margin: 6px; + padding: 6px; + background-color: #3C3C3C; + background-clip: border-box; + border-radius: 12px; + border: 1px solid #4b4b4b; +} + +.csd menu, .csd .menu, .csd .context-menu { + border: none; + box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1); +} + +menu menuitem, +.menu menuitem, +.context-menu menuitem { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + min-width: 40px; + padding: 4px 8px; + color: white; + font: initial; + text-shadow: none; + border-radius: 6px; +} + +menu menuitem:hover, +.menu menuitem:hover, +.context-menu menuitem:hover { + background-color: alpha(currentColor, 0.08); +} + +menu menuitem:active, +.menu menuitem:active, +.context-menu menuitem:active { + background-color: alpha(currentColor, 0.12); +} + +menu menuitem:disabled, +.menu menuitem:disabled, +.context-menu menuitem:disabled { + color: rgba(255, 255, 255, 0.5); +} + +menu menuitem accelerator, +.menu menuitem accelerator, +.context-menu menuitem accelerator { + color: rgba(255, 255, 255, 0.7); +} + +menu menuitem:disabled accelerator, +.menu menuitem:disabled accelerator, +.context-menu menuitem:disabled accelerator { + color: rgba(255, 255, 255, 0.3); +} + +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: 8px; +} + +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: 8px; +} + +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 .view:selected, +.menu .view:selected, +.context-menu .view:selected { + background-color: #505050; +} + +menu > arrow, +.menu > arrow, +.context-menu > arrow { + min-height: 16px; + min-width: 16px; + padding: 4px; + background-color: #3C3C3C; + color: rgba(255, 255, 255, 0.7); +} + +menu > arrow.top, +.menu > arrow.top, +.context-menu > arrow.top { + margin-top: 0; + border-radius: 6px; + -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-radius: 6px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +menu > arrow:hover, +.menu > arrow:hover, +.context-menu > arrow:hover { + background-image: image(alpha(currentColor, 0.08)); + color: white; +} + +menu > arrow:disabled, +.menu > arrow:disabled, +.context-menu > arrow:disabled { + border-color: transparent; + background-color: transparent; + color: transparent; +} + +menu separator, +.menu separator, +.context-menu separator { + margin: 4px 0; +} + +/************ + * Popovers * + ************/ +popover.background { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 0; + background-color: #3C3C3C; + border-radius: 12px; +} + +popover.background, .csd popover.background { + border: 1px solid rgba(255, 255, 255, 0.1); + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); + background-clip: border-box; +} + +popover.background:backdrop, .csd popover.background:backdrop { + box-shadow: 0 3px 2px -2px rgba(0, 0, 0, 0.05), 0 2px 3px -1px rgba(0, 0, 0, 0.06), 0 1px 4px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +popover.background > stack { + margin: 0; +} + +popover.background > toolbar { + margin: 0; +} + +popover.background > list, +popover.background > .view, +popover.background > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover.background > scrolledwindow > viewport.frame > list { + background-color: transparent; + padding: 6px; +} + +popover.background > scrolledwindow > viewport.frame > list > row { + border-radius: 6px; + padding: 6px; +} + +popover.background .view:not(:selected), +popover.background toolbar { + background-color: #3C3C3C; +} + +popover.background .linked > button:not(.radio) { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):first-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):last-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):only-child { + border-radius: 6px; +} + +popover.background.menu button, +popover.background button.model { + min-height: 32px; + padding: 0 8px; + border-radius: 6px; +} + +popover.background separator { + margin: 4px 0; +} + +popover.background list separator { + margin: 0; +} + +/************* + * Notebooks * + *************/ +notebook > header tab { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + min-height: 24px; + min-width: 24px; + padding: 3px 12px; + border: none; + outline: none; + background-clip: padding-box; + color: rgba(255, 255, 255, 0.7); + font-weight: 500; + border-radius: 6px; +} + +notebook > header tab:hover { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +notebook > header tab:disabled { + color: rgba(255, 255, 255, 0.3); +} + +notebook > header tab:checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +notebook > header tab:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +frame > paned > notebook > header, notebook.frame > header { + background-color: rgba(255, 255, 255, 0.04); +} + +notebook, notebook.frame { + background-color: #2C2C2C; + border-radius: 12px; +} + +notebook.frame frame > border { + border: none; + border-radius: 6px; +} + +notebook.frame frame > list row.activatable { + border-radius: 6px; +} + +notebook > header { + border: none; + background-color: rgba(255, 255, 255, 0.04); + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +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 { + padding-left: 4px; + padding-right: 4px; +} + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { + margin-left: 0; + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { + margin-right: 0; + -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 { + padding-top: 4px; + padding-bottom: 4px; +} + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { + margin-top: 0; + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { + margin-bottom: 0; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +notebook > header > tabs > arrow { + min-height: 16px; + min-width: 16px; + border-radius: 6px; +} + +notebook > header tab > box { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header tab > box:drop(active) { + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +notebook > header tab button.flat:last-child { + margin-left: 6px; + margin-right: -6px; +} + +notebook > header tab button.flat:first-child { + margin-left: -6px; + margin-right: 6px; +} + +notebook > header tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child { + margin-left: 0; +} + +notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child { + margin-right: 0; +} + +notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child { + margin-top: 0; +} + +notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child { + margin-bottom: 0; +} + +notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page { + border-style: solid; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #2C2C2C; +} + +* { + -GtkScrollbar-has-backward-stepper: false; + -GtkScrollbar-has-forward-stepper: false; +} + +scrollbar.top { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.bottom { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.left { + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.right { + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 8px; + min-height: 8px; + border: 4px solid transparent; + border-radius: 9999px; + background-clip: padding-box; + background-color: rgba(255, 255, 255, 0.5); +} + +scrollbar slider:hover { + background-color: rgba(255, 255, 255, 0.7); +} + +scrollbar slider:active { + background-color: white; +} + +scrollbar slider:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar.fine-tune slider { + min-width: 4px; + min-height: 4px; +} + +scrollbar.fine-tune.horizontal slider { + margin: 2px 0; +} + +scrollbar.fine-tune.vertical slider { + margin: 0 2px; +} + +scrollbar.overlay-indicator:not(.fine-tune) slider { + transition-property: background-color, min-height, min-width; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { + border-color: transparent; + background-color: transparent; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) slider { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: padding-box; + -gtk-icon-source: none; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal slider { + min-width: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { + min-width: 8px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical slider { + min-height: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { + min-height: 8px; +} + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { + background-color: rgba(60, 60, 60, 0.9); +} + +scrollbar.horizontal slider { + min-width: 24px; +} + +scrollbar.vertical slider { + min-height: 24px; +} + +scrollbar button { + min-width: 16px; + min-height: 16px; + padding: 0; + border-radius: 0; +} + +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"); +} + +/********** + * Switch * + **********/ +switch { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + margin: 6px 0; + border: none; + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: padding-box; + font-size: 0; + color: transparent; +} + +switch:checked { + background-color: #5b9bf8; +} + +switch:disabled { + opacity: 0.5; +} + +switch slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 20px; + min-height: 20px; + margin: 0; + border-radius: 9999px; + outline: none; + box-shadow: none; + background-color: white; + border: none; + color: transparent; +} + +switch:focus slider, switch:hover slider, switch:focus:hover slider { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); +} + +/************************* + * Check and Radio items * + *************************/ +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + min-height: 40px; + min-width: 40px; + margin: 0; + padding: 0; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-unchecked-dark.png"), url("assets/selectionmode-checkbox-unchecked-dark@2.png")); +} + +.view.content-view.check:not(list):checked, +.content-view .tile check:not(list):checked { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-checked-dark.png"), url("assets/selectionmode-checkbox-checked-dark@2.png")); +} + +checkbutton, +radiobutton { + outline: none; +} + +checkbutton.text-button, +radiobutton.text-button { + padding: 2px; +} + +checkbutton.text-button label:not(:only-child), +radiobutton.text-button label:not(:only-child) { + margin: 0 4px; +} + +check, +radio { + min-height: 20px; + min-width: 20px; + margin: 3px; + padding: 0; + border-radius: 9999px; + color: transparent; + background-color: rgba(255, 255, 255, 0.12); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +check:hover, +radio:hover { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.04); + background-color: rgba(255, 255, 255, 0.15); +} + +check:active, +radio:active { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); + background-color: rgba(255, 255, 255, 0.2); +} + +check:disabled, +radio:disabled { + background-color: rgba(255, 255, 255, 0.04); +} + +check:checked, check:indeterminate, +radio:checked, +radio:indeterminate { + color: white; + background-color: #5b9bf8; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.15); + background-color: #8cb9fa; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.2); + background-color: #5b9bf8; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(255, 255, 255, 0.5); + background-color: rgba(91, 155, 248, 0.35); +} + +popover modelbutton.flat check, popover modelbutton.flat check:focus, popover modelbutton.flat check:hover, popover modelbutton.flat check:focus:hover, popover modelbutton.flat check:active, popover modelbutton.flat check:disabled, popover modelbutton.flat radio, popover modelbutton.flat radio:focus, popover modelbutton.flat radio:hover, popover modelbutton.flat radio:focus:hover, popover modelbutton.flat radio:active, popover modelbutton.flat radio:disabled { + transition: none; + box-shadow: none; + background-image: none; +} + +popover modelbutton.flat check.left:dir(rtl), popover modelbutton.flat radio.left:dir(rtl) { + margin-left: -3px; + margin-right: 6px; +} + +popover modelbutton.flat check.right:dir(ltr), popover modelbutton.flat radio.right:dir(ltr) { + margin-left: 6px; + margin-right: -3px; +} + +menu menuitem check, menu menuitem radio { + transition: none; + margin: 0; + padding: 0; +} + +menu menuitem check:dir(ltr), menu menuitem radio:dir(ltr) { + margin-right: 6px; + margin-left: -3px; +} + +menu menuitem check:dir(rtl), menu menuitem radio:dir(rtl) { + margin-left: 6px; + margin-right: -3px; +} + +menu menuitem check, menu menuitem check:hover, menu menuitem check:disabled, menu menuitem check:checked:hover, menu menuitem check:indeterminate:hover, menu menuitem radio, menu menuitem radio:hover, menu menuitem radio:disabled, menu menuitem radio:checked:hover, menu menuitem radio:indeterminate:hover { + box-shadow: none; +} + + +check:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/checkbox-checked-symbolic.svg")); +} + + +check:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic.svg")); +} + + +radio:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/radio-checked-symbolic.svg")); +} + + +radio:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/radio-mixed-symbolic.svg")); +} + + +menu menuitem check { + min-height: 16px; + min-width: 16px; +} + + +menu menuitem check:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic.svg")); +} + + +menu menuitem check:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic.svg")); +} + + +menu menuitem radio { + min-height: 16px; + min-width: 16px; +} + + +menu menuitem radio:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-radio-checked-symbolic.svg")); +} + + +menu menuitem radio:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic.svg")); +} + +check:not(:checked):active { + -gtk-icon-transform: rotate(90deg); +} + +check:not(:checked):indeterminate:active, +radio:not(:checked):indeterminate:active { + -gtk-icon-transform: scaleX(-1); +} + +treeview.view radio, treeview.view check { + padding: 0; + margin: 0; +} + +treeview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), treeview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate) { + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view radio, treeview.view radio:hover, treeview.view radio:disabled, treeview.view radio:checked:hover, treeview.view radio:indeterminate:hover, treeview.view check, treeview.view check:hover, treeview.view check:disabled, treeview.view check:checked:hover, treeview.view check:indeterminate:hover { + box-shadow: none; +} + +treeview.view:selected radio:checked, treeview.view:selected radio:indeterminate, treeview.view:selected check:checked, treeview.view:selected check:indeterminate, treeview.view:selected:focus radio:checked, treeview.view:selected:focus radio:indeterminate, treeview.view:selected:focus check:checked, treeview.view:selected:focus check:indeterminate { + background-color: #5b9bf8; + color: white; + background-image: none; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale slider { + min-height: 18px; + min-width: 18px; + margin: -8px; +} + +scale.fine-tune.horizontal { + min-height: 4px; + padding-top: 16px; + padding-bottom: 16px; +} + +scale.fine-tune.vertical { + min-width: 4px; + padding-left: 16px; + padding-right: 16px; +} + +scale.fine-tune slider { + margin: -7px; +} + +scale trough { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + background-color: rgba(255, 255, 255, 0.3); +} + +scale trough:disabled { + background-color: rgba(255, 255, 255, 0.12); +} + +scale highlight { + transition: background-image 0ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#5b9bf8); +} + +scale highlight:disabled { + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.3)); +} + +scale fill { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.3); +} + +scale fill:disabled { + background-color: transparent; +} + +scale slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #5b9bf8; + background-color: #2C2C2C; + box-shadow: 0 0 5px #ccc; +} + +scale slider:active { + box-shadow: 0 0 5px #B3B3B3; +} + +scale slider:disabled { + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3); +} + +scale marks, +scale value { + color: rgba(255, 255, 255, 0.7); +} + +scale indicator { + background-color: rgba(255, 255, 255, 0.3); + color: transparent; +} + +scale.horizontal marks.top { + margin-bottom: 7px; + margin-top: -15px; +} + +scale.horizontal.fine-tune marks.top { + margin-bottom: 6px; + margin-top: -14px; +} + +scale.horizontal marks.bottom { + margin-top: 7px; + margin-bottom: -15px; +} + +scale.horizontal.fine-tune marks.bottom { + margin-top: 6px; + margin-bottom: -14px; +} + +scale.vertical marks.top { + margin-right: 7px; + margin-left: -15px; +} + +scale.vertical.fine-tune marks.top { + margin-right: 6px; + margin-left: -14px; +} + +scale.vertical marks.bottom { + margin-left: 7px; + margin-right: -15px; +} + +scale.vertical.fine-tune marks.bottom { + margin-left: 6px; + margin-right: -14px; +} + +scale.horizontal indicator { + min-height: 8px; + min-width: 1px; +} + +scale.vertical indicator { + min-height: 1px; + min-width: 8px; +} + +scale.horizontal.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-before:not(.marks-after) slider, scale.horizontal.marks-before:not(.marks-after) slider:hover, scale.horizontal.marks-before:not(.marks-after) slider:active, scale.horizontal.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-disabled-dark.png"), url("assets/scale-horz-marks-before-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-after:not(.marks-before) slider, scale.horizontal.marks-after:not(.marks-before) slider:hover, scale.horizontal.marks-after:not(.marks-before) slider:active, scale.horizontal.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-disabled-dark.png"), url("assets/scale-horz-marks-after-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-before:not(.marks-after) slider, scale.vertical.marks-before:not(.marks-after) slider:hover, scale.vertical.marks-before:not(.marks-after) slider:active, scale.vertical.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-disabled-dark.png"), url("assets/scale-vert-marks-before-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-after:not(.marks-before) slider, scale.vertical.marks-after:not(.marks-before) slider:hover, scale.vertical.marks-after:not(.marks-before) slider:active, scale.vertical.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-disabled-dark.png"), url("assets/scale-vert-marks-after-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.color { + min-height: 0; + min-width: 0; +} + +scale.color.horizontal { + padding: 0 0 12px 0; +} + +scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl) { + margin-bottom: -13.5px; + margin-top: 11.5px; +} + +scale.color.vertical:dir(ltr) { + padding: 0 0 0 12px; +} + +scale.color.vertical:dir(ltr) slider { + margin-left: -13.5px; + margin-right: 11.5px; +} + +scale.color.vertical:dir(rtl) { + padding: 0 12px 0 0; +} + +scale.color.vertical:dir(rtl) slider { + margin-right: -13.5px; + margin-left: 11.5px; +} + +/***************** + * Progress bars * + *****************/ +progressbar { + color: rgba(255, 255, 255, 0.7); + font-size: smaller; +} + +progressbar.horizontal trough, +progressbar.horizontal progress { + min-height: 6px; +} + +progressbar.vertical trough, +progressbar.vertical progress { + min-width: 6px; +} + +progressbar trough { + border-radius: 6px; + background-color: rgba(255, 255, 255, 0.12); +} + +progressbar progress { + border-radius: 6px; + background-color: #5b9bf8; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #5b9bf8; +} + +progressbar trough.empty progress { + all: unset; +} + +/************* + * Level Bar * + *************/ +levelbar.horizontal block { + min-height: 6px; +} + +levelbar.horizontal.discrete block { + min-width: 36px; +} + +levelbar.horizontal.discrete block:not(:last-child) { + margin-right: 2px; +} + +levelbar.vertical block { + min-width: 6px; +} + +levelbar.vertical.discrete block { + min-height: 36px; +} + +levelbar.vertical.discrete block:not(:last-child) { + margin-bottom: 2px; +} + +levelbar trough { + border-radius: 6px; +} + +levelbar block.low { + background-color: #FDD633; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #5b9bf8; +} + +levelbar block.full { + background-color: #81C995; +} + +levelbar block.empty { + background-color: rgba(255, 255, 255, 0.12); +} + +/**************** + * Print dialog * +*****************/ +printdialog paper { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + color: white; +} + +printdialog .dialog-action-box { + margin: 12px; +} + +/********** + * Frames * + **********/ +frame > border, +.frame { + margin: 0; + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + border-radius: 0; + box-shadow: none; +} + +frame > border.view, +.frame.view { + border-radius: 6px; +} + +frame > border.flat, +.frame.flat { + border-style: none; +} + +frame.flat > border, statusbar frame > border { + border: none; +} + +actionbar > revealer > box { + padding: 6px; + border-top: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; +} + +.background.csd box.vertical > actionbar > revealer > box { + border-radius: 0 0 14px 14px; +} + +scrolledwindow viewport.frame { + border: none; +} + +stack scrolledwindow.frame viewport.frame list { + border: none; +} + +overshoot.top { + background-image: -gtk-gradient(radial, center top, 0, center top, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, center top, 0, center top, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 100% 5%, 100% 100%; + background-repeat: no-repeat; + background-position: center top; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.bottom { + background-image: -gtk-gradient(radial, center bottom, 0, center bottom, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, center bottom, 0, center bottom, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 100% 5%, 100% 100%; + background-repeat: no-repeat; + background-position: center bottom; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.left { + background-image: -gtk-gradient(radial, left center, 0, left center, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, left center, 0, left center, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 5% 100%, 100% 100%; + background-repeat: no-repeat; + background-position: left center; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.right { + background-image: -gtk-gradient(radial, right center, 0, right center, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, right center, 0, right center, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 5% 100%, 100% 100%; + background-repeat: no-repeat; + background-position: right center; + background-color: transparent; + border: none; + box-shadow: none; +} + +junction { + border-style: solid none none solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +junction:dir(rtl) { + border-style: solid solid none none; +} + +separator { + min-width: 1px; + min-height: 1px; + background-color: rgba(255, 255, 255, 0.12); +} + +placessidebar.sidebar list > separator, stacksidebar.sidebar + separator.vertical, +stacksidebar.sidebar separator.horizontal, button.font separator, button.file separator { + min-width: 0; + min-height: 0; + background-color: transparent; +} + +/********* + * Lists * + *********/ +list.content:not(.conversation-listbox) { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(255, 255, 255, 0.12); +} + +list.content:not(.conversation-listbox) > row { + border-radius: 0; +} + +list.content:not(.conversation-listbox) > row:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:only-child { + border-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:focus { + box-shadow: inset 0 0 0 1000px alpha(currentColor, 0.08); +} + +list { + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +list row { + padding: 3px; +} + +list.navigation-sidebar { + padding: 3px; +} + +list.navigation-sidebar > row { + border-radius: 6px; +} + +treeview.view header button, row.activatable { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; +} + +treeview.view header button:focus, row.activatable:focus { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +treeview.view header button:hover, row.activatable:hover { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms, background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +treeview.view header button.has-open-popup, treeview.view header button:active, row.activatable.has-open-popup, row.activatable:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; +} + +row:selected { + color: inherit; + background-color: rgba(255, 255, 255, 0.12); +} + +row:selected image, +row:selected label { + color: white; +} + +row:selected button image, +row:selected button label { + color: inherit; +} + +row:selected:disabled image, +row:selected:disabled label { + color: rgba(255, 255, 255, 0.5); +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 8px; +} + +.app-notification button.text-button:not(:disabled) { + color: #5b9bf8; +} + +.app-notification.frame, +.app-notification border { + border-style: none; +} + +/************* + * Expanders * + *************/ +expander title > arrow { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); + -gtk-icon-transform: rotate(-90deg); + color: rgba(255, 255, 255, 0.7); +} + +expander title > arrow:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +expander title > arrow:checked { + -gtk-icon-transform: unset; +} + +expander title > arrow:hover, expander title > arrow:active { + color: white; +} + +expander title > arrow:disabled { + color: rgba(255, 255, 255, 0.3); +} + +/************ + * Calendar * + ************/ +calendar { + padding: 1px; + border: 1px solid rgba(255, 255, 255, 0.12); + color: white; +} + +calendar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +calendar:selected { + border-radius: 7px; +} + +calendar.header { + border-style: none none solid; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; +} + +calendar.highlight { + color: rgba(255, 255, 255, 0.7); + font-weight: 500; +} + +calendar:indeterminate { + color: rgba(255, 255, 255, 0.3); +} + +/*********** + * Dialogs * + ***********/ +messagedialog.background { + background-color: #3C3C3C; +} + +messagedialog.background.csd { + border-bottom-left-radius: 14px; + border-bottom-right-radius: 14px; +} + +messagedialog .titlebar { + min-height: 24px; + border-style: none; + box-shadow: none; + background-color: #3C3C3C; + color: white; +} + +messagedialog .titlebar:backdrop { + background-color: #3C3C3C; + color: rgba(255, 255, 255, 0.7); +} + +messagedialog .dialog-action-box { + margin-top: -6px; +} + +messagedialog .dialog-action-box button, messagedialog .dialog-action-box button:first-child, messagedialog .dialog-action-box button:last-child, messagedialog .dialog-action-box .linked:not(.vertical) > button, messagedialog .dialog-action-box .linked:not(.vertical) > button:first-child, messagedialog .dialog-action-box .linked:not(.vertical) > button:last-child { + border-radius: 6px; +} + +messagedialog .dialog-action-box button:not(:last-child), messagedialog .dialog-action-box .linked:not(.vertical) > button:not(:last-child) { + margin-right: 6px; +} + +messagedialog .dialog-action-box button.suggested-action:not(:disabled), messagedialog .dialog-action-box .linked:not(.vertical) > button.suggested-action:not(:disabled) { + color: #5b9bf8; +} + +messagedialog .dialog-action-box button.destructive-action:not(:disabled), messagedialog .dialog-action-box .linked:not(.vertical) > button.destructive-action:not(:disabled) { + color: #F28B82; +} + +.csd filechooser { + background-color: #2C2C2C; + border-radius: 0 0 14px 14px; +} + +filechooser .dialog-action-box { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +filechooser #pathbarbox { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +filechooser stack.view { + background-color: transparent; + padding: 0; +} + +filechooser stack.view scrolledwindow { + background-color: transparent; + border-radius: 0 0 14px 0; +} + +filechooser stack.view scrolledwindow list { + background-color: transparent; +} + +filechooser stack.view > placesview { + background-color: transparent; +} + +filechooser stack.view > placesview > actionbar, filechooser stack.view > placesview > actionbar > revealer > box { + background-color: transparent; +} + +filechooser stack.view frame > border { + border: none; +} + +.csd filechooser placessidebar { + background: none; + border-bottom-left-radius: 14px; +} + +filechooser actionbar, filechooser actionbar > revealer > box { + background-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; +} + +stacksidebar.sidebar:dir(ltr) list, stacksidebar.sidebar.left list, stacksidebar.sidebar.left:dir(rtl) list, .sidebar:not(separator):dir(ltr), .sidebar:not(separator).left { + border-right: 1px solid rgba(255, 255, 255, 0.12); + 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 rgba(255, 255, 255, 0.12); + border-right-style: none; +} + +.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.sidebar list { + padding: 3px; + background-color: #2C2C2C; +} + +stacksidebar.sidebar row { + min-height: 32px; + padding: 0 3px; + border-radius: 6px; +} + +stacksidebar.sidebar row:selected { + background-color: #5b9bf8; + color: white; + font-weight: 500; +} + +stacksidebar.sidebar row:selected label, stacksidebar.sidebar row:selected image { + color: white; +} + +stacksidebar.sidebar row + row { + margin-top: 3px; +} + +stacksidebar.sidebar row > label { + padding-left: 6px; + padding-right: 6px; + color: inherit; +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +row image.sidebar-icon:disabled { + color: rgba(255, 255, 255, 0.3); +} + +placessidebar.sidebar > viewport.frame { + border-style: none; +} + +placessidebar.sidebar list { + padding: 6px; +} + +placessidebar.sidebar row { + min-height: 32px; + margin: 0; + padding: 0; + border-radius: 6px; +} + +placessidebar.sidebar row > revealer { + padding: 0 8px 0 16px; +} + +placessidebar.sidebar row:selected { + background-color: rgba(255, 255, 255, 0.12); + font-weight: 500; +} + +placessidebar.sidebar row:disabled { + color: rgba(255, 255, 255, 0.5); +} + +placessidebar.sidebar row image.sidebar-icon:dir(ltr) { + padding-right: 8px; +} + +placessidebar.sidebar row image.sidebar-icon:dir(rtl) { + padding-left: 8px; +} + +placessidebar.sidebar row label.sidebar-label { + color: inherit; +} + +placessidebar.sidebar row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar.sidebar row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar.sidebar row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar.sidebar row.sidebar-new-bookmark-row { + color: #5b9bf8; +} + +placessidebar.sidebar row.sidebar-new-bookmark-row image.sidebar-icon { + color: #5b9bf8; +} + +placessidebar.sidebar row:drop(active) { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms, background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placesview .server-list-button > image { + -gtk-icon-transform: rotate(0turn); +} + +placesview .server-list-button:checked > image { + -gtk-icon-transform: rotate(-0.5turn); +} + +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(rgba(255, 255, 255, 0.12)); + background-size: 1px 1px; + background-clip: content-box; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.12)), image(rgba(255, 255, 255, 0.12)); + 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; +} + +/************** + * GtkInfoBar * + **************/ +infobar { + border: none; + margin-bottom: 0; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #2C2C2C; +} + +infobar.info > revealer > box button, infobar.info > revealer > box button.text-button:not(:disabled), infobar.info:hover > revealer > box button, infobar.info:hover > revealer > box button.text-button:not(:disabled), infobar.info:backdrop > revealer > box button, infobar.info:backdrop > revealer > box button.text-button:not(:disabled) { + color: #5b9bf8; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #5b9bf8; + color: white; +} + +infobar.action > revealer > box button, infobar.action > revealer > box button:hover, infobar.action > revealer > box button:focus, infobar.action > revealer > box button:active, infobar.action > revealer > box button:checked, infobar.action > revealer > box button.text-button:not(:disabled), infobar.action:backdrop > revealer > box button, infobar.action:backdrop > revealer > box button:hover, infobar.action:backdrop > revealer > box button:focus, infobar.action:backdrop > revealer > box button:active, infobar.action:backdrop > revealer > box button:checked, infobar.action:backdrop > revealer > box button.text-button:not(:disabled), infobar.question > revealer > box button, infobar.question > revealer > box button:hover, infobar.question > revealer > box button:focus, infobar.question > revealer > box button:active, infobar.question > revealer > box button:checked, infobar.question > revealer > box button.text-button:not(:disabled), infobar.question:backdrop > revealer > box button, infobar.question:backdrop > revealer > box button:hover, infobar.question:backdrop > revealer > box button:focus, infobar.question:backdrop > revealer > box button:active, infobar.question:backdrop > revealer > box button:checked, infobar.question:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: white; +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #438cf7; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #FDD633; + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box button, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked, infobar.warning > revealer > box button.text-button:not(:disabled), infobar.warning:backdrop > revealer > box button, infobar.warning:backdrop > revealer > box button:hover, infobar.warning:backdrop > revealer > box button:focus, infobar.warning:backdrop > revealer > box button:active, infobar.warning:backdrop > revealer > box button:checked, infobar.warning:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box *:link, infobar.warning:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning:hover > revealer > box { + background-color: #fdd11a; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box button, infobar.error > revealer > box button:hover, infobar.error > revealer > box button:focus, infobar.error > revealer > box button:active, infobar.error > revealer > box button:checked, infobar.error > revealer > box button.text-button:not(:disabled), infobar.error:backdrop > revealer > box button, infobar.error:backdrop > revealer > box button:hover, infobar.error:backdrop > revealer > box button:focus, infobar.error:backdrop > revealer > box button:active, infobar.error:backdrop > revealer > box button:checked, infobar.error:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error:hover > revealer > box { + background-color: #f0766b; +} + +/************ + * Tooltips * + ************/ +tooltip { + border-radius: 3px; + box-shadow: none; +} + +tooltip.background { + background-color: rgba(25, 25, 25, 0.9); + color: white; +} + +tooltip.background.csd { + border-radius: 6px; +} + +tooltip decoration { + background-color: transparent; +} + +tooltip > box { + margin: -6px; + min-height: 24px; + padding: 4px 8px; +} + +/***************** + * Color Chooser * + *****************/ +colorswatch.top { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.top overlay { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.bottom { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.bottom overlay { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.left, colorswatch:first-child:not(.top) { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.left overlay, colorswatch:first-child:not(.top) overlay { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.right, colorswatch:last-child:not(.bottom) { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.dark { + color: white; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorswatch overlay { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +colorswatch overlay:hover { + box-shadow: 0 0 0 2px #5b9bf8; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; +} + +colorswatch#add-color-button:only-child { + border-radius: 6px; +} + +colorswatch#add-color-button overlay { + background-color: rgba(255, 255, 255, 0.04); +} + +colorswatch#add-color-button overlay:hover { + background-color: rgba(255, 255, 255, 0.12); + box-shadow: none; +} + +colorswatch#add-color-button overlay:active { + background-color: rgba(255, 255, 255, 0.3); +} + +colorswatch:disabled { + opacity: 0.5; +} + +colorswatch:disabled overlay { + box-shadow: none; +} + +colorswatch#editor-color-sample { + border-radius: 12px; +} + +colorswatch#editor-color-sample overlay { + border-radius: 12px; +} + +colorswatch#editor-color-sample overlay:hover { + box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -0.6px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +/******** + * Misc * + ********/ +.content-view { + background-color: #2C2C2C; +} + +/********************** + * Window Decorations * + **********************/ +decoration { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 14px; + box-shadow: 0 8px 6px -5px rgba(0, 0, 0, 0.2), 0 16px 15px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; + margin: 8px; +} + +.csd decoration { + border: 1px solid rgba(255, 255, 255, 0.1); + background-color: #2C2C2C; + background-clip: border-box; +} + +decoration:backdrop { + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; +} + +.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; + border: none; +} + +.ssd decoration { + border: none; + border-radius: 14px 14px 0 0; + box-shadow: 0 3px 3px rgba(0, 0, 0, 0.16), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +.metacity decoration { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + border: none; +} + +.csd.popup decoration { + border-radius: 12px; + border: none; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +tooltip.csd decoration { + border-radius: 12px; + box-shadow: none; + border: none; +} + +messagedialog.csd decoration { + border-radius: 14px; + border: 1px solid rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; + background-clip: border-box; +} + +.solid-csd decoration { + margin: 0; + padding: 2px; + border-radius: 0; + box-shadow: none; + background-color: #242424; + border: 1px solid #4b4b4b; +} + +.solid-csd decoration:backdrop { + background-color: #2C2C2C; +} + +button.titlebutton:not(.suggested-action):not(.destructive-action) { + min-height: 36px; + min-width: 36px; + padding: 0; + margin: 0 4px; +} + +button.minimize.titlebutton:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:not(.suggested-action):not(.destructive-action), button.close.titlebutton:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + background-color: "transparent"; +} + +button.minimize.titlebutton:hover:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:hover:not(.suggested-action):not(.destructive-action), button.close.titlebutton:hover:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.15); +} + +button.minimize.titlebutton:active:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:active:not(.suggested-action):not(.destructive-action), button.close.titlebutton:active:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.2); +} + +button.minimize.titlebutton:backdrop:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:backdrop:not(.suggested-action):not(.destructive-action), button.close.titlebutton:backdrop:not(.suggested-action):not(.destructive-action) { + opacity: 0.65; +} + +.monospace { + font-family: monospace; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #5b9bf8; + -gtk-icon-source: -gtk-recolor(url("assets/scalable/cursor-handle-symbolic.svg")); +} + +cursor-handle.top:dir(ltr), cursor-handle.bottom:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +cursor-handle.bottom:dir(ltr), cursor-handle.top:dir(rtl) { + -gtk-icon-transform: unset; +} + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { + padding-top: 6px; + -gtk-icon-transform: rotate(45deg); +} + +.context-menu { + font: initial; +} + +.keycap { + min-width: 12px; + min-height: 26px; + margin-top: 2px; + padding-bottom: 2px; + padding-left: 8px; + padding-right: 8px; + border: solid 1px rgba(255, 255, 255, 0.12); + border-radius: 7px; + box-shadow: inset 0 -2px rgba(255, 255, 255, 0.12); + background-color: #3C3C3C; + color: white; + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #5b9bf8; +} + +stackswitcher { + min-height: 0; + padding: 3px; + margin: 6px 0; + border-radius: 9px; + background-color: rgba(255, 255, 255, 0.04); + border: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + margin: 0 0; + background-color: transparent; + border-radius: 6px; + padding: 3px 10px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 100px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):focus:not(:hover):not(:checked) { + box-shadow: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +stackswitcher button.text-button { + min-width: 100px; +} + +stackswitcher button.circular, +stackswitcher button.text-button.circular { + min-width: 36px; + min-height: 36px; + padding: 0; +} + +/************* + * App Icons * + *************/ +/********* + * Emoji * + *********/ +popover.emoji-picker { + padding: 0; +} + +popover.emoji-picker entry { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +popover.emoji-picker scrolledwindow { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +button.emoji-section { + margin: 4px; +} + +button.emoji-section:checked { + color: #5b9bf8; +} + +button.emoji-section:not(:last-child) { + margin-right: 0; +} + +popover.emoji-picker .emoji { + min-width: 3em; + min-height: 3em; + padding: 0 8px; +} + +popover.emoji-picker .emoji widget { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; +} + +popover.emoji-picker .emoji widget:hover { + background-color: alpha(currentColor, 0.08); +} + +popover.emoji-completion { + padding: 8px 0; +} + +popover.emoji-completion arrow { + border: none; + background: none; +} + +popover.emoji-completion .emoji-completion-row { + min-height: 28px; + padding: 0 12px; +} + +popover.emoji-completion .emoji:hover { + background-color: alpha(currentColor, 0.08); +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color white; +/* +text color for entries, views and content in general */ +@define-color theme_text_color white; +/* +widget base background color */ +@define-color theme_bg_color #2C2C2C; +/* +text widgets and the like base background color */ +@define-color theme_base_color #2C2C2C; +/* +base background color of selections */ +@define-color theme_selected_bg_color #5b9bf8; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color white; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #2C2C2C; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color rgba(255, 255, 255, 0.5); +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #242424; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color white; +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color white; +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #2C2C2C; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #2C2C2C; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #5b9bf8; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color white; +/* +insensitive color on backdrop windows */ +@define-color unfocused_insensitive_color rgba(255, 255, 255, 0.5); +/* +widgets main borders color */ +@define-color borders rgba(255, 255, 255, 0.12); +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders rgba(255, 255, 255, 0.12); +/* +these are pretty self explicative */ +@define-color warning_color #FDD633; +@define-color error_color #F28B82; +@define-color success_color #81C995; +/* +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 white; +@define-color wm_unfocused_title rgba(255, 255, 255, 0.7); +@define-color wm_highlight rgba(255, 255, 255, 0.1); +@define-color wm_bg #242424; +@define-color wm_unfocused_bg #2C2C2C; +/* +FIXME this is really an API */ +@define-color content_view_bg #2C2C2C; +@define-color placeholder_text_color silver; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #2C2C2C; +@define-color budgie_tasklist_indicator_color white; +@define-color budgie_tasklist_indicator_color_active white; +@define-color budgie_tasklist_indicator_color_active_window #999999; +@define-color budgie_tasklist_indicator_color_attention #FDD633; +@define-color STRAWBERRY_100 #FF9262; +@define-color STRAWBERRY_300 #FF793E; +@define-color STRAWBERRY_500 #F15D22; +@define-color STRAWBERRY_700 #CF3B00; +@define-color STRAWBERRY_900 #AC1800; +@define-color ORANGE_100 #FFDB91; +@define-color ORANGE_300 #FFCA40; +@define-color ORANGE_500 #FAA41A; +@define-color ORANGE_700 #DE8800; +@define-color ORANGE_900 #C26C00; +@define-color BANANA_100 #FFFFA8; +@define-color BANANA_300 #FFFA7D; +@define-color BANANA_500 #FFCE51; +@define-color BANANA_700 #D1A023; +@define-color BANANA_900 #A27100; +@define-color LIME_100 #A2F3BE; +@define-color LIME_300 #8ADBA6; +@define-color LIME_500 #73C48F; +@define-color LIME_700 #479863; +@define-color LIME_900 #1C6D38; +@define-color BLUEBERRY_100 #94A6FF; +@define-color BLUEBERRY_300 #6A7CE0; +@define-color BLUEBERRY_500 #3F51B5; +@define-color BLUEBERRY_700 #213397; +@define-color BLUEBERRY_900 #031579; +@define-color GRAPE_100 #D25DE6; +@define-color GRAPE_300 #B84ACB; +@define-color GRAPE_500 #9C27B0; +@define-color GRAPE_700 #830E97; +@define-color GRAPE_900 #6A007E; +@define-color COCOA_100 #9F9792; +@define-color COCOA_300 #7B736E; +@define-color COCOA_500 #574F4A; +@define-color COCOA_700 #463E39; +@define-color COCOA_900 #342C27; +@define-color SILVER_100 #EEE; +@define-color SILVER_300 #CCC; +@define-color SILVER_500 #AAA; +@define-color SILVER_700 #888; +@define-color SILVER_900 #666; +@define-color SLATE_100 #888; +@define-color SLATE_300 #666; +@define-color SLATE_500 #444; +@define-color SLATE_700 #222; +@define-color SLATE_900 #111; +@define-color BLACK_100 #474341; +@define-color BLACK_300 #403C3A; +@define-color BLACK_500 #393634; +@define-color BLACK_700 #33302F; +@define-color BLACK_900 #2B2928; diff --git a/Cutefish-light/gtk-3.0/gtk.css b/Cutefish-light/gtk-3.0/gtk.css new file mode 100644 index 0000000..d1511e4 --- /dev/null +++ b/Cutefish-light/gtk-3.0/gtk.css @@ -0,0 +1,4171 @@ +@keyframes ripple { + to { + background-size: 1000% 1000%; + } +} + +@keyframes ripple-on-slider { + to { + background-size: auto, 1000% 1000%; + } +} + +@keyframes ripple-on-headerbar { + from { + background-image: radial-gradient(circle, #3c84f7 0%, transparent 0%); + } + to { + background-image: radial-gradient(circle, #3c84f7 100%, transparent 0%); + } +} + +* { + background-clip: padding-box; + -GtkToolButton-icon-spacing: 0; + -GtkTextView-error-underline-color: #D93025; + -GtkScrolledWindow-scrollbar-spacing: 0; + -GtkToolItemGroup-expander-size: 11; + -GtkWidget-text-handle-width: 24; + -GtkWidget-text-handle-height: 24; + -GtkDialog-button-spacing: 6; + -GtkDialog-action-area-border: 6; + outline-style: solid; + outline-width: 2px; + outline-color: transparent; + outline-offset: -4px; + -gtk-outline-radius: 6px; + -gtk-secondary-caret-color: #3c84f7; +} + +*:focus { + outline-color: alpha(currentColor, 0.1); +} + +calendar:selected, treeview.view:selected, modelbutton.flat:selected, +.menuitem.button.flat:selected, .background.csd .view:selected { + color: rgba(0, 0, 0, 0.87); + background-color: alpha(currentColor, 0.1); +} + +flowbox flowboxchild:selected { + color: #3c84f7; + background-color: rgba(60, 132, 247, 0.2); +} + +spinbutton.vertical selection, spinbutton:not(.vertical) selection, +entry selection, label selection, textview text selection:focus, textview text selection, widget.view:selected, .view:selected { + color: white; + background-color: #3c84f7; +} + +.linked:not(.vertical) > button, .linked:not(.vertical) > spinbutton.vertical, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry { + border-radius: 0; +} + +.linked:not(.vertical) > button:first-child, .linked:not(.vertical) > spinbutton.vertical:first-child, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.linked:not(.vertical) > button:last-child, .linked:not(.vertical) > spinbutton.vertical:last-child, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > button:only-child, .linked:not(.vertical) > spinbutton.vertical:only-child, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child { + border-radius: 6px; +} + +.linked.vertical > button, .linked.vertical > spinbutton.vertical, .linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry { + border-radius: 0; +} + +.linked.vertical > button:first-child, .linked.vertical > spinbutton.vertical:first-child, .linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > button:last-child, .linked.vertical > spinbutton.vertical:last-child, .linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > button:only-child, .linked.vertical > spinbutton.vertical:only-child, .linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child { + border-radius: 6px; +} + +/*************** + * Base States * + ***************/ +.background { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +.background.csd { + border-radius: 0 0 14px 14px; +} + +.background.maximized, .background.solid-csd { + border-radius: 0; +} + +*:disabled { + -gtk-icon-effect: dim; +} + +.gtkstyle-fallback { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +.gtkstyle-fallback:hover { + background-color: #f2f2f2; + color: rgba(0, 0, 0, 0.87); +} + +.gtkstyle-fallback:active { + background-color: #e6e6e6; + color: rgba(0, 0, 0, 0.87); +} + +.gtkstyle-fallback:disabled { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.38); +} + +.gtkstyle-fallback:selected { + background-color: #3c84f7; + color: white; +} + +.view { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +.view:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +.view:disabled { + color: rgba(0, 0, 0, 0.38); +} + +.view:selected:hover { + box-shadow: none; +} + +window.background.csd > stack.view { + border-radius: 0 0 14px 14px; +} + +textview text { + background-color: #FFFFFF; +} + +textview border { + background-color: #FAFAFA; + color: rgba(0, 0, 0, 0.6); +} + +iconview:hover, iconview:selected { + border-radius: 6px; +} + +.rubberband, +rubberband, +.content-view rubberband, +.content-view treeview.view rubberband, +treeview.view .content-view rubberband, +.content-view .rubberband, +treeview.view rubberband, +treeview.view .content-view .rubberband, +.content-view treeview.view .rubberband, +treeview.view flowbox rubberband, +flowbox treeview.view rubberband, +flowbox rubberband, +flowbox treeview.view rubberband, +treeview.view flowbox rubberband, +treeview.view flowbox rubberband, +flowbox treeview.view rubberband { + border: 1px solid #3c84f7; + background-color: rgba(60, 132, 247, 0.3); +} + +flowbox flowboxchild { + padding: 4px; + border-radius: 6px; +} + +.content-view .tile:selected { + background-color: transparent; +} + +label { + caret-color: currentColor; +} + +label.separator { + color: rgba(0, 0, 0, 0.6); +} + +label:disabled { + color: rgba(0, 0, 0, 0.38); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; +} + +label.osd { + border-radius: 6px; + background-color: rgba(52, 52, 52, 0.9); + color: white; +} + +.dim-label { + color: rgba(0, 0, 0, 0.6); +} + +assistant .sidebar { + padding: 4px 0; +} + +assistant .sidebar label { + min-height: 36px; + padding: 0 12px; + color: rgba(0, 0, 0, 0.38); + font-weight: 500; +} + +assistant .sidebar label.highlight { + color: rgba(0, 0, 0, 0.87); +} + +/********************* + * Spinner Animation * + *********************/ +@keyframes spin { + to { + -gtk-icon-transform: rotate(1turn); + } +} + +spinner { + background: none; + opacity: 0; + -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); +} + +spinner:checked { + opacity: 1; + animation: spin 1s linear infinite; +} + +spinner:checked:disabled { + opacity: 0.5; +} + +/**************** + * Text Entries * + ****************/ +spinbutton.vertical, spinbutton:not(.vertical), +entry { + min-height: 36px; + padding: 0 8px; + border-radius: 6px; + caret-color: currentColor; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.vertical:focus, spinbutton:focus:not(.vertical), +entry:focus { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #3c84f7; +} + +spinbutton.vertical:drop(active), spinbutton:drop(active):not(.vertical), +entry:drop(active) { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +spinbutton.vertical:disabled, spinbutton:disabled:not(.vertical), +entry:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.flat.vertical, spinbutton.flat:not(.vertical), +entry.flat { + min-height: 0; + padding: 2px; + border-radius: 0; + background-color: transparent; +} + +spinbutton.vertical image, spinbutton:not(.vertical) image, +entry image { + color: rgba(0, 0, 0, 0.6); +} + +spinbutton.vertical image:hover, spinbutton:not(.vertical) image:hover, spinbutton.vertical image:active, spinbutton:not(.vertical) image:active, +entry image:hover, +entry image:active { + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.vertical image:disabled, spinbutton:not(.vertical) image:disabled, +entry image:disabled { + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.vertical image.left, spinbutton:not(.vertical) image.left, +entry image.left { + margin-left: 2px; + margin-right: 6px; +} + +spinbutton.vertical image.right, spinbutton:not(.vertical) image.right, +entry image.right { + margin-left: 6px; + margin-right: 2px; +} + +spinbutton.vertical undershoot.left, spinbutton:not(.vertical) undershoot.left, +entry undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.vertical undershoot.right, spinbutton:not(.vertical) undershoot.right, +entry undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.error.vertical, spinbutton.error:not(.vertical), +entry.error { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.error.vertical:focus, spinbutton.error:focus:not(.vertical), +entry.error:focus { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #D93025; +} + +spinbutton.error.vertical:disabled, spinbutton.error:disabled:not(.vertical), +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.warning.vertical, spinbutton.warning:not(.vertical), +entry.warning { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.warning.vertical:focus, spinbutton.warning:focus:not(.vertical), +entry.warning:focus { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #F4B400; +} + +spinbutton.warning.vertical:disabled, spinbutton.warning:disabled:not(.vertical), +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.vertical progress, spinbutton:not(.vertical) progress, +entry progress { + margin: 2px -8px; + border-bottom: 2px solid #3c84f7; + background-color: transparent; +} + +treeview entry.flat, treeview entry { + background-color: #FFFFFF; +} + +treeview entry.flat, treeview entry.flat:focus, treeview entry, treeview entry:focus { + border-image: none; + box-shadow: none; +} + +.entry-tag { + margin: 2px; + border-radius: 9999px; + box-shadow: none; + background-color: rgba(0, 0, 0, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +.entry-tag:hover { + background-image: image(alpha(currentColor, 0.08)); +} + +:dir(ltr) .entry-tag { + margin-left: 4px; + margin-right: 0; + padding-left: 12px; + padding-right: 8px; +} + +:dir(rtl) .entry-tag { + margin-left: 0; + margin-right: 4px; + padding-left: 8px; + padding-right: 12px; +} + +.entry-tag.button { + box-shadow: none; + background-color: transparent; +} + +.entry-tag.button:not(:hover):not(:active) { + color: rgba(0, 0, 0, 0.6); +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: -gtk-gradient(radial, center center, 0, center center, 0.001, to(#3c84f7), to(transparent)); + } + to { + background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(#3c84f7), to(transparent)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button { + color: rgba(255, 255, 255, 0.7); +} + +infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked { + color: white; +} + +infobar.warning > revealer > box button:disabled { + color: rgba(255, 255, 255, 0.3); +} + +infobar.warning > revealer > box button:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:not(.suggested-action):not(.destructive-action), button { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: rgba(0, 0, 0, 0.04); + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + color: rgba(0, 0, 0, 0.87); +} + +actionbar > revealer > box .linked > button:focus:not(.suggested-action):not(.destructive-action), button:focus { + box-shadow: 0 0 0 2px rgba(60, 132, 247, 0.35); +} + +actionbar > revealer > box .linked > button:hover:not(.suggested-action):not(.destructive-action), button:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +actionbar > revealer > box .linked > button:active:not(.suggested-action):not(.destructive-action), button:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; +} + +actionbar > revealer > box .linked > button:disabled:not(.suggested-action):not(.destructive-action), button:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +actionbar > revealer > box .linked > button:checked:not(.suggested-action):not(.destructive-action), button:checked { + background-color: #3c84f7; + color: white; +} + +actionbar > revealer > box .linked > button:checked:hover:not(.suggested-action):not(.destructive-action), button:checked:hover { + box-shadow: inset 0 0 0 9999px transparent; +} + +actionbar > revealer > box .linked > button:checked:disabled:not(.suggested-action):not(.destructive-action), button:checked:disabled { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.1); + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +button.titlebutton:not(.suggested-action):not(.destructive-action), filechooser #pathbarbox > stack > box > button, button.close, button.circular, .inline-toolbar button:not(.text-button) { + border-radius: 9999px; +} + +button.titlebutton:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, button.close label, button.circular label, .inline-toolbar button:not(.text-button) label { + padding: 0; +} + +placessidebar.sidebar row button.sidebar-button, notebook > header tab button.flat, spinbutton.vertical button, spinbutton:not(.vertical) button { + min-height: 24px; + min-width: 24px; + padding: 0; + border-radius: 9999px; +} + +button { + min-height: 24px; + min-width: 16px; + padding: 6px 10px; + border-radius: 6px; + font-weight: 500; +} + +button:drop(active) { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placessidebar.sidebar row button.sidebar-button, calendar.button, treeview.view header button button.circular, row.activatable button.circular, scrollbar button, notebook > header > tabs > arrow, spinbutton.vertical button, spinbutton:not(.vertical) button, modelbutton.flat, +.menuitem.button.flat, filechooser #pathbarbox > stack > box > button, messagedialog .dialog-action-box button, messagedialog .dialog-action-box .linked:not(.vertical) > button, .app-notification button, actionbar > revealer > box button:not(.suggested-action):not(.destructive-action), popover.background.menu button, +popover.background button.model, headerbar button:not(.suggested-action):not(.destructive-action), toolbar button, combobox > .linked:not(.vertical) > button:not(:only-child), button.flat { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), border-image 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + color: rgba(0, 0, 0, 0.6); +} + +placessidebar.sidebar row button.sidebar-button:focus, calendar.button:focus, treeview.view header button button.circular:focus, row.activatable button.circular:focus, scrollbar button:focus, notebook > header > tabs > arrow:focus, spinbutton.vertical button:focus, spinbutton:not(.vertical) button:focus, modelbutton.flat:focus, +.menuitem.button.flat:focus, filechooser #pathbarbox > stack > box > button:focus, messagedialog .dialog-action-box button:focus, messagedialog .dialog-action-box .linked:not(.vertical) > button:focus, .app-notification button:focus, actionbar > revealer > box button:focus:not(.suggested-action):not(.destructive-action), popover.background.menu button:focus, +popover.background button.model:focus, headerbar button:focus:not(.suggested-action):not(.destructive-action), toolbar button:focus, combobox > .linked:not(.vertical) > button:focus:not(:only-child), button.flat:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +placessidebar.sidebar row button.sidebar-button:hover, calendar.button:hover, treeview.view header button button.circular:hover, row.activatable button.circular:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, spinbutton.vertical button:hover, spinbutton:not(.vertical) button:hover, modelbutton.flat:hover, +.menuitem.button.flat:hover, filechooser #pathbarbox > stack > box > button:hover, messagedialog .dialog-action-box button:hover, messagedialog .dialog-action-box .linked:not(.vertical) > button:hover, .app-notification button:hover, actionbar > revealer > box button:hover:not(.suggested-action):not(.destructive-action), popover.background.menu button:hover, +popover.background button.model:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), toolbar button:hover, combobox > .linked:not(.vertical) > button:hover:not(:only-child), button.flat:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +placessidebar.sidebar row button.sidebar-button:active, calendar.button:active, treeview.view header button button.circular:active, row.activatable button.circular:active, scrollbar button:active, notebook > header > tabs > arrow:active, spinbutton.vertical button:active, spinbutton:not(.vertical) button:active, modelbutton.flat:active, +.menuitem.button.flat:active, filechooser #pathbarbox > stack > box > button:active, messagedialog .dialog-action-box button:active, messagedialog .dialog-action-box .linked:not(.vertical) > button:active, .app-notification button:active, actionbar > revealer > box button:active:not(.suggested-action):not(.destructive-action), popover.background.menu button:active, +popover.background button.model:active, headerbar button:active:not(.suggested-action):not(.destructive-action), toolbar button:active, combobox > .linked:not(.vertical) > button:active:not(:only-child), button.flat:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), border-image 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; + color: rgba(0, 0, 0, 0.87); +} + +placessidebar.sidebar row button.sidebar-button:disabled, calendar.button:disabled, treeview.view header button button.circular:disabled, row.activatable button.circular:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, spinbutton.vertical button:disabled, spinbutton:not(.vertical) button:disabled, modelbutton.flat:disabled, +.menuitem.button.flat:disabled, filechooser #pathbarbox > stack > box > button:disabled, messagedialog .dialog-action-box button:disabled, messagedialog .dialog-action-box .linked:not(.vertical) > button:disabled, .app-notification button:disabled, actionbar > revealer > box button:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:disabled, +popover.background button.model:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), toolbar button:disabled, combobox > .linked:not(.vertical) > button:disabled:not(:only-child), button.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(0, 0, 0, 0.26); +} + +filechooser #pathbarbox > stack > box > button:checked, messagedialog .dialog-action-box button:checked, messagedialog .dialog-action-box .linked:not(.vertical) > button:checked, .app-notification button:checked, actionbar > revealer > box button:checked:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked, +popover.background button.model:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), toolbar button:checked, combobox > .linked:not(.vertical) > button:checked:not(:only-child), button.flat:checked, button.flat:checked:hover { + background-color: alpha(currentColor, 0.1); + color: rgba(0, 0, 0, 0.87); +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, messagedialog .dialog-action-box button:checked:disabled, .app-notification button:checked:disabled, actionbar > revealer > box button:checked:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked:disabled, +popover.background button.model:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), toolbar button:checked:disabled, combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(0, 0, 0, 0.38); +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.text-button.flat { + min-width: 48px; + padding-left: 8px; + padding-right: 8px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child) { + margin: 0 4px; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + border-radius: 6px; +} + +.linked:not(.vertical) > button.flat:not(:only-child).image-button:not(.text-button), .linked.vertical > button.flat:not(:only-child).image-button:not(.text-button) { + border-radius: 9999px; +} + +button.osd { + min-width: 24px; + min-width: 24px; + padding: 12px 16px; + background-color: #3c84f7; + color: white; +} + +button.osd:hover { + background-color: #5393f8; + color: white; +} + +button.osd:active { + background-color: #6fa4f9; + color: white; +} + +button.osd.image-button, button.osd.circular { + padding: 12px; +} + +button.osd.image-button > image, button.osd.circular > image { + padding: 0; +} + +button.osd:disabled { + opacity: 0; +} + +button.suggested-action { + background-color: #3c84f7; + color: white; + box-shadow: none; +} + +button.suggested-action:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(60, 132, 247, 0.2), 0 4px 3px 0 rgba(60, 132, 247, 0.14), 0 1px 6px 0 rgba(60, 132, 247, 0.12); +} + +button.suggested-action:checked { + background-color: #77a9f9; +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(60, 132, 247, 0.3), 0 2px 3px -1px rgba(60, 132, 247, 0.24), 0 2px 5px 0 rgba(60, 132, 247, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(60, 132, 247, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #3c84f7; +} + +button.suggested-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(0, 0, 0, 0.26); +} + +button.suggested-action.flat:checked { + background-color: rgba(60, 132, 247, 0.3); +} + +button.destructive-action { + background-color: #D93025; + color: white; + box-shadow: none; +} + +button.destructive-action:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(217, 48, 37, 0.2), 0 4px 3px 0 rgba(217, 48, 37, 0.14), 0 1px 6px 0 rgba(217, 48, 37, 0.12); +} + +button.destructive-action:checked { + background-color: #e46e66; +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(217, 48, 37, 0.3), 0 2px 3px -1px rgba(217, 48, 37, 0.24), 0 2px 5px 0 rgba(217, 48, 37, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(217, 48, 37, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #D93025; +} + +button.destructive-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(0, 0, 0, 0.26); +} + +button.destructive-action.flat:checked { + background-color: rgba(217, 48, 37, 0.3); +} + +.stack-switcher > button > label { + margin: 0 -6px; + padding: 0 6px; +} + +.stack-switcher > button > image { + margin: -3px -6px; + padding: 3px 6px; +} + +.stack-switcher > button.needs-attention:checked > label, +.stack-switcher > button.needs-attention:checked > image { + animation: none; + background-image: none; +} + +.primary-toolbar button { + -gtk-icon-shadow: none; +} + +button.close, button.circular { + min-width: 24px; + padding: 6px; +} + +stacksidebar.sidebar row.needs-attention > label, .stack-switcher > button.needs-attention > label, +.stack-switcher > button.needs-attention > image { + animation: needs-attention 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-repeat: no-repeat; + background-position: right 3px; + background-size: 6px 6px; +} + +stacksidebar.sidebar row.needs-attention > label:dir(rtl), .stack-switcher > button.needs-attention > label:dir(rtl), +.stack-switcher > button.needs-attention > image:dir(rtl) { + background-position: left 3px; +} + +modelbutton.flat, +.menuitem.button.flat { + min-height: 28px; + padding: 0 8px; + border-radius: 6px; + color: rgba(0, 0, 0, 0.87); +} + +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 { + min-height: 24px; + min-width: 24px; + padding: 6px; +} + +/********* + * Links * + *********/ +*:link { + color: #2196F3; +} + +*:visited { + color: #9C27B0; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #2196F3; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #9C27B0; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton:not(.vertical) { + padding: 0; +} + +spinbutton:not(.vertical) entry { + min-width: 32px; + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +spinbutton:not(.vertical) button { + border: solid 6px transparent; +} + +spinbutton:not(.vertical) button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(0, 0, 0, 0.6); +} + +spinbutton:not(.vertical) button.up:dir(ltr), spinbutton:not(.vertical) button.down:dir(rtl) { + margin-left: -3px; +} + +spinbutton:not(.vertical) button.up:dir(rtl), spinbutton:not(.vertical) button.down:dir(ltr) { + margin-right: -3px; +} + +spinbutton.vertical { + padding: 0; +} + +spinbutton.vertical:disabled { + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.vertical entry { + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical button { + padding: 0; + border: solid 6px transparent; +} + +spinbutton.vertical button:focus:not(:hover):not(:active) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(0, 0, 0, 0.6); +} + +spinbutton.vertical button.up { + margin: 0 3px; +} + +spinbutton.vertical button.down { + margin: 0 3px; +} + +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: 24px; + min-width: 24px; +} + +combobox decoration { + transition: none; +} + +combobox button.combo cellview:dir(ltr) { + margin-left: -2px; +} + +combobox button.combo cellview:dir(rtl) { + margin-right: -2px; +} + +combobox.linked button:nth-child(2):dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +combobox.linked button:nth-child(2):dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child):first-child { + margin-right: -36px; + padding-right: 36px; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child):last-child { + margin-left: -36px; + padding-left: 36px; +} + +combobox > .linked:not(.vertical) > button:not(:only-child) { + min-height: 16px; + min-width: 16px; + margin: 6px; + padding: 4px; + border-radius: 6px; +} + +.linked:not(.vertical) > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.linked:not(.vertical) > combobox:not(:last-child) > box > button.combo { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.linked.vertical > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.linked.vertical > combobox:not(:last-child) > box > button.combo { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +button.combo:only-child { + border-radius: 6px; + font-weight: normal; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +button.combo:only-child:focus { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.26); +} + +button.combo:only-child:hover { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +button.combo:only-child:checked { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #3c84f7; +} + +button.combo:only-child:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +/************ + * Toolbars * + ************/ +toolbar { + -GtkWidget-window-dragging: true; + padding: 2px; + background-color: #FFFFFF; +} + +.osd toolbar { + background-color: transparent; +} + +.app-notification, toolbar.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); + background-color: #FFFFFF; +} + +.app-notification:backdrop, toolbar.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); +} + +.left.app-notification, .right.app-notification, .top.app-notification, .bottom.app-notification, toolbar.osd.left, toolbar.osd.right, toolbar.osd.top, toolbar.osd.bottom { + border-radius: 0; +} + +.bottom.app-notification, toolbar.osd.bottom { + box-shadow: none; + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.4)); +} + +toolbar.horizontal > separator { + margin: 2px; +} + +toolbar.vertical > separator { + margin: 2px; +} + +toolbar:not(.inline-toolbar):not(.osd) scale, +toolbar:not(.inline-toolbar):not(.osd) entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton, +toolbar:not(.inline-toolbar):not(.osd) button { + margin: 2px; +} + +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child) { + margin-left: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child) { + margin-right: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton button { + margin: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) switch { + margin: 8px 2px; +} + +.inline-toolbar { + padding: 6px; + border-style: solid; + border-width: 0 1px 1px; + border-color: rgba(0, 0, 0, 0.12); + background-color: #FAFAFA; +} + +searchbar > revealer > box, +.location-bar { + padding: 6px; + border-style: solid; + border-width: 0 0 1px; + border-color: rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + background-clip: border-box; +} + +searchbar > revealer > box { + margin: -6px; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.6); +} + +headerbar .linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + border-radius: 6px; +} + +headerbar button:focus:not(.suggested-action):not(.destructive-action), headerbar button:hover:not(.suggested-action):not(.destructive-action), headerbar button:active:not(.suggested-action):not(.destructive-action), headerbar button:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.87); +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.26); +} + +headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action) { + background-color: transparent; + color: rgba(0, 0, 0, 0.38); +} + +headerbar button:backdrop:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.38); +} + +headerbar button:backdrop:focus:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:hover:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.6); +} + +headerbar button:backdrop:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.26); +} + +headerbar button:backdrop:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.6); +} + +headerbar button:backdrop:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.26); +} + +.titlebar entry { + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +.titlebar entry:disabled { + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +.titlebar entry image { + color: rgba(0, 0, 0, 0.6); +} + +.titlebar entry image:hover, .titlebar entry image:active { + color: rgba(0, 0, 0, 0.87); +} + +.titlebar entry image:disabled { + color: rgba(0, 0, 0, 0.38); +} + +.titlebar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #FAFAFA; + color: rgba(0, 0, 0, 0.87); + border-radius: 14px 14px 0 0; + box-shadow: inset 0 -1px rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); +} + +.titlebar:disabled { + color: rgba(0, 0, 0, 0.38); +} + +.titlebar:backdrop { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.6); +} + +.titlebar:backdrop:disabled { + color: rgba(0, 0, 0, 0.26); +} + +.titlebar .title { + padding: 0 12px; + font-weight: bold; +} + +.titlebar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +.titlebar .subtitle, +.titlebar .dim-label { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(0, 0, 0, 0.6); +} + +.titlebar .subtitle:backdrop, +.titlebar .dim-label:backdrop { + color: rgba(0, 0, 0, 0.38); +} + +.titlebar .titlebar { + background-color: transparent; + box-shadow: none; +} + +.titlebar + separator, .titlebar + separator.sidebar { + background-color: #FAFAFA; + background-image: none; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); +} + +.titlebar + separator:backdrop, .titlebar + separator.sidebar:backdrop { + background-color: #FFFFFF; +} + +.titlebar.selection-mode + separator, .titlebar.selection-mode + separator.sidebar, .selection-mode .titlebar + separator, .selection-mode .titlebar + separator.sidebar { + background-color: #3c84f7; +} + +.titlebar.selection-mode + separator:backdrop, .titlebar.selection-mode + separator.sidebar:backdrop, .selection-mode .titlebar + separator:backdrop, .selection-mode .titlebar + separator.sidebar:backdrop { + background-color: #3c84f7; +} + +.background.csd.unified .titlebar + separator, .background.csd.unified .titlebar + separator.sidebar { + box-shadow: inset 0 -1px rgba(0, 0, 0, 0.12); +} + +.titlebar .linked:not(.vertical) > entry { + border-radius: 6px; + margin-left: 3px; + margin-right: 3px; +} + +.titlebar button.suggested-action:disabled, .titlebar button.destructive-action:disabled { + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +.titlebar .path-bar button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 0; + padding-left: 6px; + padding-right: 6px; +} + +.titlebar.selection-mode { + transition: background-color 0.1ms 0ms, color 0ms cubic-bezier(0, 0, 0.2, 1); + animation: ripple-on-headerbar 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2), inset 0 -1px rgba(0, 0, 0, 0.12); + background-color: #3c84f7; + color: white; +} + +.titlebar.selection-mode:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode .subtitle:link { + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action) { + border-image: radial-gradient(circle closest-corner at center calc(100% - 1px), currentColor 0%, transparent 0%) 0 0 0/0 0 0px; + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):checked { + border-image: radial-gradient(circle closest-corner at center calc(100% - 1px), currentColor 100%, transparent 0%) 0 0 2/0 0 2px; + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:not(.titlebutton) { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:checked { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:checked:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar.selection-mode .selection-menu { + padding-left: 16px; + padding-right: 16px; +} + +.titlebar.selection-mode .selection-menu arrow { + -GtkArrow-arrow-scaling: 1; +} + +.titlebar.selection-mode .selection-menu .arrow { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +.titlebar .selection-mode { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #3c84f7; +} + +.tiled .titlebar, .tiled-top .titlebar, .tiled-right .titlebar, .tiled-bottom .titlebar, .tiled-left .titlebar, .maximized .titlebar, .fullscreen .titlebar { + border-radius: 0; +} + +.titlebar.default-decoration { + min-height: 24px; + padding: 6px 12px; + border-radius: 14px 14px 0 0; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.15); +} + +.tiled .titlebar.default-decoration, .maximized .titlebar.default-decoration, .fullscreen .titlebar.default-decoration { + box-shadow: none; + border-radius: 0; +} + +.titlebar.default-decoration button.titlebutton { + min-height: 24px; + min-width: 24px; + margin: 0; + padding: 0; +} + +.background.csd .titlebar.default-decoration { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.15), inset 0 -1px rgba(0, 0, 0, 0.12); +} + +.background:not(.csd) .titlebar.default-decoration button.titlebutton:active { + background-size: 1000% 1000%; +} + +.solid-csd .titlebar:dir(rtl), .solid-csd .titlebar:dir(ltr) { + border-radius: 0; + box-shadow: none; +} + +headerbar { + min-height: 48px; + padding: 0 6px; +} + +box.vertical headerbar { + background-color: #FAFAFA; +} + +headerbar entry, +headerbar spinbutton, +headerbar button { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar button, headerbar button.image-button { + border-radius: 6px; +} + +headerbar > box.left, +headerbar > box.right { + padding: 0 4px; +} + +headerbar separator.titlebutton, headerbar separator.sidebar { + margin-top: 12px; + margin-bottom: 12px; + background-color: transparent; +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar spinbutton button { + margin-top: 0; + margin-bottom: 0; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action) { + border-radius: 0; + margin: 0; + min-width: 120px; + padding: 0; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action) > stack > box { + padding: 0 12px; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action):focus { + box-shadow: none; +} + +headerbar.windowhandle > button.popup label, headerbar.windowhandle > button.popup image { + min-height: 0; +} + +headerbar.windowhandle viewswitchertitle > squeezer { + margin-top: 0; + margin-bottom: 0; + background: none; +} + +headerbar.windowhandle viewswitchertitle > squeezer > viewswitcher { + margin: 0 0; + background: none; +} + +headerbar.windowhandle viewswitchertitle > squeezer > viewswitcher > box.horizontal > button.radio { + margin: 0; + padding: 0; + border-radius: 0; +} + +/************ + * Pathbars * + ************/ + +.path-bar.linked:not(.vertical) > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 3px; + margin-left: 1px; + margin-right: 1px; + background-color: alpha(currentColor, 0.08); +} + + +.path-bar.linked:not(.vertical) > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +.path-bar.linked:not(.vertical) > button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + + +.path-bar.linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + + +.path-bar.linked:not(.vertical) > button:checked { + background-color: alpha(currentColor, 0.16); + color: rgba(0, 0, 0, 0.87); +} + + +.path-bar.linked:not(.vertical) > button label:not(:only-child):first-child { + margin-left: 0; +} + + +.path-bar.linked:not(.vertical) > button label:not(:only-child):last-child { + margin-right: 0; +} + + +.path-bar.linked:not(.vertical) > button.text-button { + min-width: 0; +} + + +.path-bar.linked:not(.vertical) > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +/************** + * Tree Views * + **************/ +treeview.view { + border-left-color: rgba(0, 0, 0, 0.26); + border-top-color: rgba(0, 0, 0, 0.12); + padding: 3px; +} + +* { + -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; +} + +.csd treeview.view:not(:selected):not(:hover):not(.progressbar):not(.expander):not(.trough):not(.separator) { + background-color: transparent; +} + +treeview.view:hover, treeview.view:selected { + border-radius: 0; +} + +treeview.view.separator { + min-height: 6px; + color: rgba(0, 0, 0, 0.12); +} + +treeview.view:drop(active) { + border-style: solid none; + border-width: 9999px; + border-color: alpha(currentColor, 0.08); +} + +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-down-symbolic"); + -gtk-icon-transform: rotate(-90deg); + color: rgba(0, 0, 0, 0.6); +} + +treeview.view.expander:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +treeview.view.expander:checked { + -gtk-icon-transform: unset; +} + +treeview.view.expander:hover, treeview.view.expander:active { + color: rgba(0, 0, 0, 0.87); +} + +treeview.view.expander:disabled { + color: rgba(0, 0, 0, 0.26); +} + +treeview.view.progressbar { + border: none; + box-shadow: none; + background-color: #3c84f7; + background-image: none; + border-radius: 9999px; + color: white; +} + +treeview.view.progressbar:selected, treeview.view.progressbar:selected:hover, treeview.view.progressbar:selected:focus { + box-shadow: none; + background-color: rgba(53, 116, 217, 0.9805); + color: white; +} + +treeview.view.progressbar:selected:backdrop, treeview.view.progressbar:selected:hover:backdrop, treeview.view.progressbar:selected:focus:backdrop { + color: white; +} + +treeview.view.progressbar:backdrop, treeview.view.progressbar:selected:backdrop { + background-color: rgba(0, 0, 0, 0.26); +} + +treeview.view.trough { + border: none; + box-shadow: none; + background-color: rgba(0, 0, 0, 0.12); + background-image: none; + border-radius: 9999px; + padding: 0; + margin: 0; +} + +treeview.view.trough:selected, treeview.view.trough:selected:hover, treeview.view.trough:selected:focus { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.12); +} + +treeview.view.trough:backdrop, treeview.view.trough:selected:backdrop { + background-color: rgba(0, 0, 0, 0.12); +} + +treeview.view header button { + padding: 2px 6px; + border-style: none solid solid none; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.12); + border-radius: 0; + background-clip: border-box; +} + +treeview.view header button:not(:focus):not(:hover):not(:active) { + color: rgba(0, 0, 0, 0.6); +} + +treeview.view header button, treeview.view header button:disabled { + background-color: #FFFFFF; +} + +treeview.view header button:last-child { + border-right-style: none; +} + +treeview.view button.dnd, +treeview.view header.button.dnd { + padding: 2px 6px; + border-style: none solid solid; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.12); + border-radius: 0; + box-shadow: none; + background-color: #FFFFFF; + background-clip: border-box; + color: #3c84f7; +} + +treeview.view acceleditor > label { + background-color: #3c84f7; +} + +/********* + * Menus * + *********/ +menubar, +.menubar { + -GtkWidget-window-dragging: true; + padding: 0; + background-color: #FAFAFA; + color: rgba(0, 0, 0, 0.87); + box-shadow: inset 0 -1px rgba(0, 0, 0, 0.12); +} + +menubar:backdrop, +.menubar:backdrop { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.6); +} + +.csd menubar, .csd .menubar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > menuitem, +.menubar > menuitem { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + padding: 4px 8px; + color: rgba(0, 0, 0, 0.6); + border-radius: 6px; +} + +menubar > menuitem:hover, +.menubar > menuitem:hover { + transition: none; + background-color: alpha(currentColor, 0.1); + color: rgba(0, 0, 0, 0.87); +} + +menubar > menuitem:disabled, +.menubar > menuitem:disabled { + color: rgba(0, 0, 0, 0.26); +} + +menubar > menuitem label:disabled, +.menubar > menuitem label:disabled { + color: inherit; +} + +.background.popup { + background-color: transparent; +} + +menu, +.menu, +.context-menu { + margin: 6px; + padding: 6px; + background-color: #FFFFFF; + background-clip: border-box; + border-radius: 12px; + border: 1px solid #e0e0e0; +} + +.csd menu, .csd .menu, .csd .context-menu { + border: none; + box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.15); +} + +menu menuitem, +.menu menuitem, +.context-menu menuitem { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + min-width: 40px; + padding: 4px 8px; + color: rgba(0, 0, 0, 0.87); + font: initial; + text-shadow: none; + border-radius: 6px; +} + +menu menuitem:hover, +.menu menuitem:hover, +.context-menu menuitem:hover { + background-color: alpha(currentColor, 0.08); +} + +menu menuitem:active, +.menu menuitem:active, +.context-menu menuitem:active { + background-color: alpha(currentColor, 0.12); +} + +menu menuitem:disabled, +.menu menuitem:disabled, +.context-menu menuitem:disabled { + color: rgba(0, 0, 0, 0.38); +} + +menu menuitem accelerator, +.menu menuitem accelerator, +.context-menu menuitem accelerator { + color: rgba(0, 0, 0, 0.6); +} + +menu menuitem:disabled accelerator, +.menu menuitem:disabled accelerator, +.context-menu menuitem:disabled accelerator { + color: rgba(0, 0, 0, 0.26); +} + +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: 8px; +} + +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: 8px; +} + +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 .view:selected, +.menu .view:selected, +.context-menu .view:selected { + background-color: rgba(235, 235, 235, 0.987); +} + +menu > arrow, +.menu > arrow, +.context-menu > arrow { + min-height: 16px; + min-width: 16px; + padding: 4px; + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.6); +} + +menu > arrow.top, +.menu > arrow.top, +.context-menu > arrow.top { + margin-top: 0; + border-radius: 6px; + -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-radius: 6px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +menu > arrow:hover, +.menu > arrow:hover, +.context-menu > arrow:hover { + background-image: image(alpha(currentColor, 0.08)); + color: rgba(0, 0, 0, 0.87); +} + +menu > arrow:disabled, +.menu > arrow:disabled, +.context-menu > arrow:disabled { + border-color: transparent; + background-color: transparent; + color: transparent; +} + +menu separator, +.menu separator, +.context-menu separator { + margin: 4px 0; +} + +/************ + * Popovers * + ************/ +popover.background { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 0; + background-color: #FFFFFF; + border-radius: 12px; +} + +popover.background, .csd popover.background { + border: 1px solid rgba(0, 0, 0, 0.15); + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05); + background-clip: padding-box; +} + +popover.background:backdrop, .csd popover.background:backdrop { + box-shadow: 0 3px 2px -2px rgba(0, 0, 0, 0.05), 0 2px 3px -1px rgba(0, 0, 0, 0.06), 0 1px 4px 0 rgba(0, 0, 0, 0.05); +} + +popover.background > stack { + margin: 0; +} + +popover.background > toolbar { + margin: 0; +} + +popover.background > list, +popover.background > .view, +popover.background > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover.background > scrolledwindow > viewport.frame > list { + background-color: transparent; + padding: 6px; +} + +popover.background > scrolledwindow > viewport.frame > list > row { + border-radius: 6px; + padding: 6px; +} + +popover.background .view:not(:selected), +popover.background toolbar { + background-color: #FFFFFF; +} + +popover.background .linked > button:not(.radio) { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):first-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):last-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):only-child { + border-radius: 6px; +} + +popover.background.menu button, +popover.background button.model { + min-height: 32px; + padding: 0 8px; + border-radius: 6px; +} + +popover.background separator { + margin: 4px 0; +} + +popover.background list separator { + margin: 0; +} + +/************* + * Notebooks * + *************/ +notebook > header tab { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + min-height: 24px; + min-width: 24px; + padding: 3px 12px; + border: none; + outline: none; + background-clip: padding-box; + color: rgba(0, 0, 0, 0.6); + font-weight: 500; + border-radius: 6px; +} + +notebook > header tab:hover { + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +notebook > header tab:disabled { + color: rgba(0, 0, 0, 0.26); +} + +notebook > header tab:checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: white; + color: rgba(0, 0, 0, 0.87); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +notebook > header tab:checked:disabled { + color: rgba(0, 0, 0, 0.38); +} + +frame > paned > notebook > header, notebook.frame > header { + background-color: rgba(0, 0, 0, 0.04); +} + +notebook, notebook.frame { + background-color: #FFFFFF; + border-radius: 12px; +} + +notebook.frame frame > border { + border: none; + border-radius: 6px; +} + +notebook.frame frame > list row.activatable { + border-radius: 6px; +} + +notebook > header { + border: none; + background-color: rgba(0, 0, 0, 0.04); + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +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 { + padding-left: 4px; + padding-right: 4px; +} + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { + margin-left: 0; + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { + margin-right: 0; + -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 { + padding-top: 4px; + padding-bottom: 4px; +} + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { + margin-top: 0; + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { + margin-bottom: 0; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +notebook > header > tabs > arrow { + min-height: 16px; + min-width: 16px; + border-radius: 6px; +} + +notebook > header tab > box { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header tab > box:drop(active) { + background-color: rgba(0, 0, 0, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +notebook > header tab button.flat:last-child { + margin-left: 6px; + margin-right: -6px; +} + +notebook > header tab button.flat:first-child { + margin-left: -6px; + margin-right: 6px; +} + +notebook > header tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child { + margin-left: 0; +} + +notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child { + margin-right: 0; +} + +notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child { + margin-top: 0; +} + +notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child { + margin-bottom: 0; +} + +notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page { + border-style: solid; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #FFFFFF; +} + +* { + -GtkScrollbar-has-backward-stepper: false; + -GtkScrollbar-has-forward-stepper: false; +} + +scrollbar.top { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar.bottom { + border-top: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar.left { + border-right: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar.right { + border-left: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 8px; + min-height: 8px; + border: 4px solid transparent; + border-radius: 9999px; + background-clip: padding-box; + background-color: rgba(0, 0, 0, 0.38); +} + +scrollbar slider:hover { + background-color: rgba(0, 0, 0, 0.6); +} + +scrollbar slider:active { + background-color: rgba(0, 0, 0, 0.87); +} + +scrollbar slider:disabled { + background-color: rgba(0, 0, 0, 0.26); +} + +scrollbar.fine-tune slider { + min-width: 4px; + min-height: 4px; +} + +scrollbar.fine-tune.horizontal slider { + margin: 2px 0; +} + +scrollbar.fine-tune.vertical slider { + margin: 0 2px; +} + +scrollbar.overlay-indicator:not(.fine-tune) slider { + transition-property: background-color, min-height, min-width; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { + border-color: transparent; + background-color: transparent; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) slider { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(255, 255, 255, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(255, 255, 255, 0.3); + border-radius: 9999px; + background-color: rgba(0, 0, 0, 0.38); + background-clip: padding-box; + -gtk-icon-source: none; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button:disabled { + background-color: rgba(0, 0, 0, 0.26); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal slider { + min-width: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { + min-width: 8px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical slider { + min-height: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { + min-height: 8px; +} + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { + background-color: rgba(255, 255, 255, 0.9); +} + +scrollbar.horizontal slider { + min-width: 24px; +} + +scrollbar.vertical slider { + min-height: 24px; +} + +scrollbar button { + min-width: 16px; + min-height: 16px; + padding: 0; + border-radius: 0; +} + +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"); +} + +/********** + * Switch * + **********/ +switch { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + margin: 6px 0; + border: none; + border-radius: 9999px; + background-color: rgba(0, 0, 0, 0.38); + background-clip: padding-box; + font-size: 0; + color: transparent; +} + +switch:checked { + background-color: #3c84f7; +} + +switch:disabled { + opacity: 0.5; +} + +switch slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 20px; + min-height: 20px; + margin: 1px; + border-radius: 9999px; + outline: none; + box-shadow: none; + background-color: white; + border: none; + color: transparent; +} + +switch:focus slider, switch:hover slider, switch:focus:hover slider { + box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.12); +} + +/************************* + * Check and Radio items * + *************************/ +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + min-height: 40px; + min-width: 40px; + margin: 0; + padding: 0; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-unchecked.png"), url("assets/selectionmode-checkbox-unchecked@2.png")); +} + +.view.content-view.check:not(list):checked, +.content-view .tile check:not(list):checked { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-checked.png"), url("assets/selectionmode-checkbox-checked@2.png")); +} + +checkbutton, +radiobutton { + outline: none; +} + +checkbutton.text-button, +radiobutton.text-button { + padding: 2px; +} + +checkbutton.text-button label:not(:only-child), +radiobutton.text-button label:not(:only-child) { + margin: 0 4px; +} + +check, +radio { + min-height: 20px; + min-width: 20px; + margin: 3px; + padding: 0; + border-radius: 9999px; + color: transparent; + background-color: rgba(0, 0, 0, 0.12); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +check:hover, +radio:hover { + box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.04); + background-color: rgba(0, 0, 0, 0.15); +} + +check:active, +radio:active { + box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.12); + background-color: rgba(0, 0, 0, 0.2); +} + +check:disabled, +radio:disabled { + background-color: rgba(0, 0, 0, 0.04); +} + +check:checked, check:indeterminate, +radio:checked, +radio:indeterminate { + color: white; + background-color: #3c84f7; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(60, 132, 247, 0.15); + background-color: #6da3f9; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(60, 132, 247, 0.2); + background-color: #3c84f7; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(255, 255, 255, 0.5); + background-color: rgba(60, 132, 247, 0.35); +} + +popover modelbutton.flat check, popover modelbutton.flat check:focus, popover modelbutton.flat check:hover, popover modelbutton.flat check:focus:hover, popover modelbutton.flat check:active, popover modelbutton.flat check:disabled, popover modelbutton.flat radio, popover modelbutton.flat radio:focus, popover modelbutton.flat radio:hover, popover modelbutton.flat radio:focus:hover, popover modelbutton.flat radio:active, popover modelbutton.flat radio:disabled { + transition: none; + box-shadow: none; + background-image: none; +} + +popover modelbutton.flat check.left:dir(rtl), popover modelbutton.flat radio.left:dir(rtl) { + margin-left: -3px; + margin-right: 6px; +} + +popover modelbutton.flat check.right:dir(ltr), popover modelbutton.flat radio.right:dir(ltr) { + margin-left: 6px; + margin-right: -3px; +} + +menu menuitem check, menu menuitem radio { + transition: none; + margin: 0; + padding: 0; +} + +menu menuitem check:dir(ltr), menu menuitem radio:dir(ltr) { + margin-right: 6px; + margin-left: -3px; +} + +menu menuitem check:dir(rtl), menu menuitem radio:dir(rtl) { + margin-left: 6px; + margin-right: -3px; +} + +menu menuitem check, menu menuitem check:hover, menu menuitem check:disabled, menu menuitem check:checked:hover, menu menuitem check:indeterminate:hover, menu menuitem radio, menu menuitem radio:hover, menu menuitem radio:disabled, menu menuitem radio:checked:hover, menu menuitem radio:indeterminate:hover { + box-shadow: none; +} + + +check:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/checkbox-checked-symbolic.svg")); +} + + +check:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic.svg")); +} + + +radio:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/radio-checked-symbolic.svg")); +} + + +radio:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/radio-mixed-symbolic.svg")); +} + + +menu menuitem check { + min-height: 16px; + min-width: 16px; +} + + +menu menuitem check:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic.svg")); +} + + +menu menuitem check:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic.svg")); +} + + +menu menuitem radio { + min-height: 16px; + min-width: 16px; +} + + +menu menuitem radio:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-radio-checked-symbolic.svg")); +} + + +menu menuitem radio:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic.svg")); +} + +check:not(:checked):active { + -gtk-icon-transform: rotate(90deg); +} + +check:not(:checked):indeterminate:active, +radio:not(:checked):indeterminate:active { + -gtk-icon-transform: scaleX(-1); +} + +treeview.view radio, treeview.view check { + padding: 0; + margin: 0; +} + +treeview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), treeview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate) { + background-color: rgba(0, 0, 0, 0.12); +} + +treeview.view radio, treeview.view radio:hover, treeview.view radio:disabled, treeview.view radio:checked:hover, treeview.view radio:indeterminate:hover, treeview.view check, treeview.view check:hover, treeview.view check:disabled, treeview.view check:checked:hover, treeview.view check:indeterminate:hover { + box-shadow: none; +} + +treeview.view:selected radio:checked, treeview.view:selected radio:indeterminate, treeview.view:selected check:checked, treeview.view:selected check:indeterminate, treeview.view:selected:focus radio:checked, treeview.view:selected:focus radio:indeterminate, treeview.view:selected:focus check:checked, treeview.view:selected:focus check:indeterminate { + background-color: #3c84f7; + color: white; + background-image: none; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale slider { + min-height: 18px; + min-width: 18px; + margin: -8px; +} + +scale.fine-tune.horizontal { + min-height: 4px; + padding-top: 16px; + padding-bottom: 16px; +} + +scale.fine-tune.vertical { + min-width: 4px; + padding-left: 16px; + padding-right: 16px; +} + +scale.fine-tune slider { + margin: -7px; +} + +scale trough { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + background-color: rgba(0, 0, 0, 0.26); +} + +scale trough:disabled { + background-color: rgba(0, 0, 0, 0.12); +} + +scale highlight { + transition: background-image 0ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#3c84f7); +} + +scale highlight:disabled { + background-color: #FFFFFF; + background-image: image(rgba(0, 0, 0, 0.26)); +} + +scale fill { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(0, 0, 0, 0.26); +} + +scale fill:disabled { + background-color: transparent; +} + +scale slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #3c84f7; + background-color: #FFFFFF; + box-shadow: 0 0 5px #ccc; +} + +scale slider:active { + box-shadow: 0 0 5px #B3B3B3; +} + +scale slider:disabled { + box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.26); +} + +scale marks, +scale value { + color: rgba(0, 0, 0, 0.6); +} + +scale indicator { + background-color: rgba(0, 0, 0, 0.26); + color: transparent; +} + +scale.horizontal marks.top { + margin-bottom: 7px; + margin-top: -15px; +} + +scale.horizontal.fine-tune marks.top { + margin-bottom: 6px; + margin-top: -14px; +} + +scale.horizontal marks.bottom { + margin-top: 7px; + margin-bottom: -15px; +} + +scale.horizontal.fine-tune marks.bottom { + margin-top: 6px; + margin-bottom: -14px; +} + +scale.vertical marks.top { + margin-right: 7px; + margin-left: -15px; +} + +scale.vertical.fine-tune marks.top { + margin-right: 6px; + margin-left: -14px; +} + +scale.vertical marks.bottom { + margin-left: 7px; + margin-right: -15px; +} + +scale.vertical.fine-tune marks.bottom { + margin-left: 6px; + margin-right: -14px; +} + +scale.horizontal indicator { + min-height: 8px; + min-width: 1px; +} + +scale.vertical indicator { + min-height: 1px; + min-width: 8px; +} + +scale.horizontal.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-before:not(.marks-after) slider, scale.horizontal.marks-before:not(.marks-after) slider:hover, scale.horizontal.marks-before:not(.marks-after) slider:active, scale.horizontal.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider.png"), url("assets/scale-horz-marks-before-slider@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-disabled.png"), url("assets/scale-horz-marks-before-slider-disabled@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider.png"), url("assets/scale-horz-marks-before-slider@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-after:not(.marks-before) slider, scale.horizontal.marks-after:not(.marks-before) slider:hover, scale.horizontal.marks-after:not(.marks-before) slider:active, scale.horizontal.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider.png"), url("assets/scale-horz-marks-after-slider@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-disabled.png"), url("assets/scale-horz-marks-after-slider-disabled@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider.png"), url("assets/scale-horz-marks-after-slider@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-before:not(.marks-after) slider, scale.vertical.marks-before:not(.marks-after) slider:hover, scale.vertical.marks-before:not(.marks-after) slider:active, scale.vertical.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider.png"), url("assets/scale-vert-marks-before-slider@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-disabled.png"), url("assets/scale-vert-marks-before-slider-disabled@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider.png"), url("assets/scale-vert-marks-before-slider@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-after:not(.marks-before) slider, scale.vertical.marks-after:not(.marks-before) slider:hover, scale.vertical.marks-after:not(.marks-before) slider:active, scale.vertical.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider.png"), url("assets/scale-vert-marks-after-slider@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-disabled.png"), url("assets/scale-vert-marks-after-slider-disabled@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider.png"), url("assets/scale-vert-marks-after-slider@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.color { + min-height: 0; + min-width: 0; +} + +scale.color.horizontal { + padding: 0 0 12px 0; +} + +scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl) { + margin-bottom: -13.5px; + margin-top: 11.5px; +} + +scale.color.vertical:dir(ltr) { + padding: 0 0 0 12px; +} + +scale.color.vertical:dir(ltr) slider { + margin-left: -13.5px; + margin-right: 11.5px; +} + +scale.color.vertical:dir(rtl) { + padding: 0 12px 0 0; +} + +scale.color.vertical:dir(rtl) slider { + margin-right: -13.5px; + margin-left: 11.5px; +} + +/***************** + * Progress bars * + *****************/ +progressbar { + color: rgba(0, 0, 0, 0.6); + font-size: smaller; +} + +progressbar.horizontal trough, +progressbar.horizontal progress { + min-height: 6px; +} + +progressbar.vertical trough, +progressbar.vertical progress { + min-width: 6px; +} + +progressbar trough { + border-radius: 6px; + background-color: rgba(0, 0, 0, 0.12); +} + +progressbar progress { + border-radius: 6px; + background-color: #3c84f7; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #3c84f7; +} + +progressbar trough.empty progress { + all: unset; +} + +/************* + * Level Bar * + *************/ +levelbar.horizontal block { + min-height: 6px; +} + +levelbar.horizontal.discrete block { + min-width: 36px; +} + +levelbar.horizontal.discrete block:not(:last-child) { + margin-right: 2px; +} + +levelbar.vertical block { + min-width: 6px; +} + +levelbar.vertical.discrete block { + min-height: 36px; +} + +levelbar.vertical.discrete block:not(:last-child) { + margin-bottom: 2px; +} + +levelbar trough { + border-radius: 6px; +} + +levelbar block.low { + background-color: #F4B400; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #3c84f7; +} + +levelbar block.full { + background-color: #0F9D58; +} + +levelbar block.empty { + background-color: rgba(0, 0, 0, 0.12); +} + +/**************** + * Print dialog * +*****************/ +printdialog paper { + padding: 0; + border: 1px solid rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +printdialog .dialog-action-box { + margin: 12px; +} + +/********** + * Frames * + **********/ +frame > border, +.frame { + margin: 0; + padding: 0; + border: 1px solid rgba(0, 0, 0, 0.12); + border-radius: 0; + box-shadow: none; +} + +frame > border.view, +.frame.view { + border-radius: 6px; +} + +frame > border.flat, +.frame.flat { + border-style: none; +} + +frame.flat > border, statusbar frame > border { + border: none; +} + +actionbar > revealer > box { + padding: 6px; + border-top: 1px solid rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + background-clip: border-box; +} + +.background.csd box.vertical > actionbar > revealer > box { + border-radius: 0 0 14px 14px; +} + +scrolledwindow viewport.frame { + border: none; +} + +stack scrolledwindow.frame viewport.frame list { + border: none; +} + +overshoot.top { + background-image: -gtk-gradient(radial, center top, 0, center top, 0.5, to(rgba(0, 0, 0, 0.12)), to(rgba(0, 0, 0, 0))), -gtk-gradient(radial, center top, 0, center top, 0.6, from(rgba(0, 0, 0, 0.07)), to(rgba(0, 0, 0, 0))); + background-size: 100% 5%, 100% 100%; + background-repeat: no-repeat; + background-position: center top; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.bottom { + background-image: -gtk-gradient(radial, center bottom, 0, center bottom, 0.5, to(rgba(0, 0, 0, 0.12)), to(rgba(0, 0, 0, 0))), -gtk-gradient(radial, center bottom, 0, center bottom, 0.6, from(rgba(0, 0, 0, 0.07)), to(rgba(0, 0, 0, 0))); + background-size: 100% 5%, 100% 100%; + background-repeat: no-repeat; + background-position: center bottom; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.left { + background-image: -gtk-gradient(radial, left center, 0, left center, 0.5, to(rgba(0, 0, 0, 0.12)), to(rgba(0, 0, 0, 0))), -gtk-gradient(radial, left center, 0, left center, 0.6, from(rgba(0, 0, 0, 0.07)), to(rgba(0, 0, 0, 0))); + background-size: 5% 100%, 100% 100%; + background-repeat: no-repeat; + background-position: left center; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.right { + background-image: -gtk-gradient(radial, right center, 0, right center, 0.5, to(rgba(0, 0, 0, 0.12)), to(rgba(0, 0, 0, 0))), -gtk-gradient(radial, right center, 0, right center, 0.6, from(rgba(0, 0, 0, 0.07)), to(rgba(0, 0, 0, 0))); + background-size: 5% 100%, 100% 100%; + background-repeat: no-repeat; + background-position: right center; + background-color: transparent; + border: none; + box-shadow: none; +} + +junction { + border-style: solid none none solid; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; +} + +junction:dir(rtl) { + border-style: solid solid none none; +} + +separator { + min-width: 1px; + min-height: 1px; + background-color: rgba(0, 0, 0, 0.12); +} + +placessidebar.sidebar list > separator, stacksidebar.sidebar + separator.vertical, +stacksidebar.sidebar separator.horizontal, button.font separator, button.file separator { + min-width: 0; + min-height: 0; + background-color: transparent; +} + +/********* + * Lists * + *********/ +list.content:not(.conversation-listbox) { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(0, 0, 0, 0.12); +} + +list.content:not(.conversation-listbox) > row { + border-radius: 0; +} + +list.content:not(.conversation-listbox) > row:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:only-child { + border-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:focus { + box-shadow: inset 0 0 0 1000px alpha(currentColor, 0.08); +} + +list { + border-color: rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; +} + +list row { + padding: 3px; +} + +list.navigation-sidebar { + padding: 3px; +} + +list.navigation-sidebar > row { + border-radius: 6px; +} + +treeview.view header button, row.activatable { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; +} + +treeview.view header button:focus, row.activatable:focus { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +treeview.view header button:hover, row.activatable:hover { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms, background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +treeview.view header button.has-open-popup, treeview.view header button:active, row.activatable.has-open-popup, row.activatable:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; +} + +row:selected { + color: inherit; + background-color: rgba(0, 0, 0, 0.12); +} + +row:selected image, +row:selected label { + color: rgba(0, 0, 0, 0.87); +} + +row:selected button image, +row:selected button label { + color: inherit; +} + +row:selected:disabled image, +row:selected:disabled label { + color: rgba(0, 0, 0, 0.38); +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 8px; +} + +.app-notification button.text-button:not(:disabled) { + color: #3c84f7; +} + +.app-notification.frame, +.app-notification border { + border-style: none; +} + +/************* + * Expanders * + *************/ +expander title > arrow { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); + -gtk-icon-transform: rotate(-90deg); + color: rgba(0, 0, 0, 0.6); +} + +expander title > arrow:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +expander title > arrow:checked { + -gtk-icon-transform: unset; +} + +expander title > arrow:hover, expander title > arrow:active { + color: rgba(0, 0, 0, 0.87); +} + +expander title > arrow:disabled { + color: rgba(0, 0, 0, 0.26); +} + +/************ + * Calendar * + ************/ +calendar { + padding: 1px; + border: 1px solid rgba(0, 0, 0, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +calendar:disabled { + color: rgba(0, 0, 0, 0.38); +} + +calendar:selected { + border-radius: 7px; +} + +calendar.header { + border-style: none none solid; + border-color: rgba(0, 0, 0, 0.12); + border-radius: 0; +} + +calendar.highlight { + color: rgba(0, 0, 0, 0.6); + font-weight: 500; +} + +calendar:indeterminate { + color: rgba(0, 0, 0, 0.26); +} + +/*********** + * Dialogs * + ***********/ +messagedialog.background { + background-color: #FFFFFF; +} + +messagedialog.background.csd { + border-bottom-left-radius: 14px; + border-bottom-right-radius: 14px; +} + +messagedialog .titlebar { + min-height: 24px; + border-style: none; + box-shadow: none; + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +messagedialog .titlebar:backdrop { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.6); +} + +messagedialog .dialog-action-box { + margin-top: -6px; +} + +messagedialog .dialog-action-box button, messagedialog .dialog-action-box button:first-child, messagedialog .dialog-action-box button:last-child, messagedialog .dialog-action-box .linked:not(.vertical) > button, messagedialog .dialog-action-box .linked:not(.vertical) > button:first-child, messagedialog .dialog-action-box .linked:not(.vertical) > button:last-child { + border-radius: 6px; +} + +messagedialog .dialog-action-box button:not(:last-child), messagedialog .dialog-action-box .linked:not(.vertical) > button:not(:last-child) { + margin-right: 6px; +} + +messagedialog .dialog-action-box button.suggested-action:not(:disabled), messagedialog .dialog-action-box .linked:not(.vertical) > button.suggested-action:not(:disabled) { + color: #3c84f7; +} + +messagedialog .dialog-action-box button.destructive-action:not(:disabled), messagedialog .dialog-action-box .linked:not(.vertical) > button.destructive-action:not(:disabled) { + color: #D93025; +} + +.csd filechooser { + background-color: #FFFFFF; + border-radius: 0 0 14px 14px; +} + +filechooser .dialog-action-box { + border-top: 1px solid rgba(0, 0, 0, 0.12); +} + +filechooser #pathbarbox { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; +} + +filechooser stack.view { + background-color: transparent; + padding: 0; +} + +filechooser stack.view scrolledwindow { + background-color: transparent; + border-radius: 0 0 14px 0; +} + +filechooser stack.view scrolledwindow list { + background-color: transparent; +} + +filechooser stack.view > placesview { + background-color: transparent; +} + +filechooser stack.view > placesview > actionbar, filechooser stack.view > placesview > actionbar > revealer > box { + background-color: transparent; +} + +filechooser stack.view frame > border { + border: none; +} + +.csd filechooser placessidebar { + background: none; + border-bottom-left-radius: 14px; +} + +filechooser actionbar, filechooser actionbar > revealer > box { + background-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; +} + +stacksidebar.sidebar:dir(ltr) list, stacksidebar.sidebar.left list, stacksidebar.sidebar.left:dir(rtl) list, .sidebar:not(separator):dir(ltr), .sidebar:not(separator).left { + border-right: 1px solid rgba(0, 0, 0, 0.12); + 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 rgba(0, 0, 0, 0.12); + border-right-style: none; +} + +.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.sidebar list { + padding: 3px; + background-color: #FFFFFF; +} + +stacksidebar.sidebar row { + min-height: 32px; + padding: 0 3px; + border-radius: 6px; +} + +stacksidebar.sidebar row:selected { + background-color: #3c84f7; + color: white; + font-weight: 500; +} + +stacksidebar.sidebar row:selected label, stacksidebar.sidebar row:selected image { + color: white; +} + +stacksidebar.sidebar row + row { + margin-top: 3px; +} + +stacksidebar.sidebar row > label { + padding-left: 6px; + padding-right: 6px; + color: inherit; +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(0, 0, 0, 0.6); +} + +row image.sidebar-icon:disabled { + color: rgba(0, 0, 0, 0.26); +} + +placessidebar.sidebar > viewport.frame { + border-style: none; +} + +placessidebar.sidebar list { + padding: 6px; +} + +placessidebar.sidebar row { + min-height: 32px; + margin: 0; + padding: 0; + border-radius: 6px; +} + +placessidebar.sidebar row > revealer { + padding: 0 8px 0 16px; +} + +placessidebar.sidebar row:selected { + background-color: rgba(0, 0, 0, 0.12); + font-weight: 500; +} + +placessidebar.sidebar row:disabled { + color: rgba(0, 0, 0, 0.38); +} + +placessidebar.sidebar row image.sidebar-icon:dir(ltr) { + padding-right: 8px; +} + +placessidebar.sidebar row image.sidebar-icon:dir(rtl) { + padding-left: 8px; +} + +placessidebar.sidebar row label.sidebar-label { + color: inherit; +} + +placessidebar.sidebar row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar.sidebar row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar.sidebar row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar.sidebar row.sidebar-new-bookmark-row { + color: #3c84f7; +} + +placessidebar.sidebar row.sidebar-new-bookmark-row image.sidebar-icon { + color: #3c84f7; +} + +placessidebar.sidebar row:drop(active) { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms, background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placesview .server-list-button > image { + -gtk-icon-transform: rotate(0turn); +} + +placesview .server-list-button:checked > image { + -gtk-icon-transform: rotate(-0.5turn); +} + +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(rgba(0, 0, 0, 0.12)); + background-size: 1px 1px; + background-clip: content-box; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #FFFFFF; + background-image: image(rgba(0, 0, 0, 0.12)), image(rgba(0, 0, 0, 0.12)); + 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; +} + +/************** + * GtkInfoBar * + **************/ +infobar { + border: none; + margin-bottom: 0; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #FFFFFF; +} + +infobar.info > revealer > box button, infobar.info > revealer > box button.text-button:not(:disabled), infobar.info:hover > revealer > box button, infobar.info:hover > revealer > box button.text-button:not(:disabled), infobar.info:backdrop > revealer > box button, infobar.info:backdrop > revealer > box button.text-button:not(:disabled) { + color: #3c84f7; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #3c84f7; + color: white; +} + +infobar.action > revealer > box button, infobar.action > revealer > box button:hover, infobar.action > revealer > box button:focus, infobar.action > revealer > box button:active, infobar.action > revealer > box button:checked, infobar.action > revealer > box button.text-button:not(:disabled), infobar.action:backdrop > revealer > box button, infobar.action:backdrop > revealer > box button:hover, infobar.action:backdrop > revealer > box button:focus, infobar.action:backdrop > revealer > box button:active, infobar.action:backdrop > revealer > box button:checked, infobar.action:backdrop > revealer > box button.text-button:not(:disabled), infobar.question > revealer > box button, infobar.question > revealer > box button:hover, infobar.question > revealer > box button:focus, infobar.question > revealer > box button:active, infobar.question > revealer > box button:checked, infobar.question > revealer > box button.text-button:not(:disabled), infobar.question:backdrop > revealer > box button, infobar.question:backdrop > revealer > box button:hover, infobar.question:backdrop > revealer > box button:focus, infobar.question:backdrop > revealer > box button:active, infobar.question:backdrop > revealer > box button:checked, infobar.question:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: white; +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #5493f8; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #F4B400; + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box button, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked, infobar.warning > revealer > box button.text-button:not(:disabled), infobar.warning:backdrop > revealer > box button, infobar.warning:backdrop > revealer > box button:hover, infobar.warning:backdrop > revealer > box button:focus, infobar.warning:backdrop > revealer > box button:active, infobar.warning:backdrop > revealer > box button:checked, infobar.warning:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box *:link, infobar.warning:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning:hover > revealer > box { + background-color: #ffc00f; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #D93025; + color: white; +} + +infobar.error > revealer > box button, infobar.error > revealer > box button:hover, infobar.error > revealer > box button:focus, infobar.error > revealer > box button:active, infobar.error > revealer > box button:checked, infobar.error > revealer > box button.text-button:not(:disabled), infobar.error:backdrop > revealer > box button, infobar.error:backdrop > revealer > box button:hover, infobar.error:backdrop > revealer > box button:focus, infobar.error:backdrop > revealer > box button:active, infobar.error:backdrop > revealer > box button:checked, infobar.error:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: white; +} + +infobar.error:hover > revealer > box { + background-color: #dd443a; +} + +/************ + * Tooltips * + ************/ +tooltip { + border-radius: 3px; + box-shadow: none; +} + +tooltip.background { + background-color: rgba(52, 52, 52, 0.9); + color: white; +} + +tooltip.background.csd { + border-radius: 6px; +} + +tooltip decoration { + background-color: transparent; +} + +tooltip > box { + margin: -6px; + min-height: 24px; + padding: 4px 8px; +} + +/***************** + * Color Chooser * + *****************/ +colorswatch.top { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.top overlay { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.bottom { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.bottom overlay { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.left, colorswatch:first-child:not(.top) { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.left overlay, colorswatch:first-child:not(.top) overlay { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.right, colorswatch:last-child:not(.bottom) { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.dark { + color: white; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorswatch overlay { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +colorswatch overlay:hover { + box-shadow: 0 0 0 2px #3c84f7; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; +} + +colorswatch#add-color-button:only-child { + border-radius: 6px; +} + +colorswatch#add-color-button overlay { + background-color: rgba(0, 0, 0, 0.04); +} + +colorswatch#add-color-button overlay:hover { + background-color: rgba(0, 0, 0, 0.12); + box-shadow: none; +} + +colorswatch#add-color-button overlay:active { + background-color: rgba(0, 0, 0, 0.26); +} + +colorswatch:disabled { + opacity: 0.5; +} + +colorswatch:disabled overlay { + box-shadow: none; +} + +colorswatch#editor-color-sample { + border-radius: 12px; +} + +colorswatch#editor-color-sample overlay { + border-radius: 12px; +} + +colorswatch#editor-color-sample overlay:hover { + box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -0.6px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); + background-color: #FFFFFF; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); +} + +/******** + * Misc * + ********/ +.content-view { + background-color: #FFFFFF; +} + +/********************** + * Window Decorations * + **********************/ +decoration { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 14px; + box-shadow: 0 8px 6px -5px rgba(0, 0, 0, 0.2), 0 16px 15px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.12), 0 0 36px transparent; + margin: 8px; +} + +decoration:backdrop { + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.12), 0 0 36px transparent; +} + +.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; + border: none; +} + +.ssd decoration { + border: none; + border-radius: 14px 14px 0 0; + box-shadow: 0 3px 3px rgba(0, 0, 0, 0.16), 0 0 0 1px rgba(0, 0, 0, 0.12); +} + +.metacity decoration { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + border: none; +} + +.csd.popup decoration { + border-radius: 12px; + border: none; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.12); +} + +tooltip.csd decoration { + border-radius: 12px; + box-shadow: none; + border: none; +} + +messagedialog.csd decoration { + border-radius: 14px; +} + +.solid-csd decoration { + margin: 0; + padding: 2px; + border-radius: 0; + box-shadow: none; + background-color: #FAFAFA; + border: 1px solid #e0e0e0; +} + +.solid-csd decoration:backdrop { + background-color: #FFFFFF; +} + +button.titlebutton:not(.suggested-action):not(.destructive-action) { + min-height: 36px; + min-width: 36px; + padding: 0; + margin: 0 4px; +} + +button.minimize.titlebutton:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:not(.suggested-action):not(.destructive-action), button.close.titlebutton:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.6); + background-color: "transparent"; +} + +button.minimize.titlebutton:hover:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:hover:not(.suggested-action):not(.destructive-action), button.close.titlebutton:hover:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.87); + background-color: alpha(currentColor, 0.15); +} + +button.minimize.titlebutton:active:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:active:not(.suggested-action):not(.destructive-action), button.close.titlebutton:active:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.87); + background-color: alpha(currentColor, 0.2); +} + +button.minimize.titlebutton:backdrop:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:backdrop:not(.suggested-action):not(.destructive-action), button.close.titlebutton:backdrop:not(.suggested-action):not(.destructive-action) { + opacity: 0.65; +} + +.monospace { + font-family: monospace; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #3c84f7; + -gtk-icon-source: -gtk-recolor(url("assets/scalable/cursor-handle-symbolic.svg")); +} + +cursor-handle.top:dir(ltr), cursor-handle.bottom:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +cursor-handle.bottom:dir(ltr), cursor-handle.top:dir(rtl) { + -gtk-icon-transform: unset; +} + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { + padding-top: 6px; + -gtk-icon-transform: rotate(45deg); +} + +.context-menu { + font: initial; +} + +.keycap { + min-width: 12px; + min-height: 26px; + margin-top: 2px; + padding-bottom: 2px; + padding-left: 8px; + padding-right: 8px; + border: solid 1px rgba(0, 0, 0, 0.12); + border-radius: 7px; + box-shadow: inset 0 -2px rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #3c84f7; +} + +stackswitcher { + min-height: 0; + padding: 3px; + margin: 6px 0; + border-radius: 9px; + background-color: rgba(0, 0, 0, 0.04); + border: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + margin: 0 0; + background-color: transparent; + border-radius: 6px; + padding: 3px 10px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 100px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):focus:not(:hover):not(:checked) { + box-shadow: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: white; + color: rgba(0, 0, 0, 0.87); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +stackswitcher button.text-button { + min-width: 100px; +} + +stackswitcher button.circular, +stackswitcher button.text-button.circular { + min-width: 36px; + min-height: 36px; + padding: 0; +} + +/************* + * App Icons * + *************/ +/********* + * Emoji * + *********/ +popover.emoji-picker { + padding: 0; +} + +popover.emoji-picker entry { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +popover.emoji-picker scrolledwindow { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); +} + +button.emoji-section { + margin: 4px; +} + +button.emoji-section:checked { + color: #3c84f7; +} + +button.emoji-section:not(:last-child) { + margin-right: 0; +} + +popover.emoji-picker .emoji { + min-width: 3em; + min-height: 3em; + padding: 0 8px; +} + +popover.emoji-picker .emoji widget { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; +} + +popover.emoji-picker .emoji widget:hover { + background-color: alpha(currentColor, 0.08); +} + +popover.emoji-completion { + padding: 8px 0; +} + +popover.emoji-completion arrow { + border: none; + background: none; +} + +popover.emoji-completion .emoji-completion-row { + min-height: 28px; + padding: 0 12px; +} + +popover.emoji-completion .emoji:hover { + background-color: alpha(currentColor, 0.08); +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color rgba(0, 0, 0, 0.87); +/* +text color for entries, views and content in general */ +@define-color theme_text_color rgba(0, 0, 0, 0.87); +/* +widget base background color */ +@define-color theme_bg_color #FFFFFF; +/* +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 #3c84f7; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color white; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #FFFFFF; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color rgba(0, 0, 0, 0.38); +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #FAFAFA; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color rgba(0, 0, 0, 0.87); +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color rgba(0, 0, 0, 0.87); +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #FFFFFF; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #FFFFFF; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #3c84f7; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color white; +/* +insensitive color on backdrop windows */ +@define-color unfocused_insensitive_color rgba(0, 0, 0, 0.38); +/* +widgets main borders color */ +@define-color borders rgba(0, 0, 0, 0.12); +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders rgba(0, 0, 0, 0.12); +/* +these are pretty self explicative */ +@define-color warning_color #F4B400; +@define-color error_color #D93025; +@define-color success_color #0F9D58; +/* +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 rgba(0, 0, 0, 0.87); +@define-color wm_unfocused_title rgba(0, 0, 0, 0.6); +@define-color wm_highlight rgba(255, 255, 255, 0.15); +@define-color wm_bg #FAFAFA; +@define-color wm_unfocused_bg #FFFFFF; +/* +FIXME this is really an API */ +@define-color content_view_bg #FFFFFF; +@define-color placeholder_text_color #666666; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #FFFFFF; +@define-color budgie_tasklist_indicator_color white; +@define-color budgie_tasklist_indicator_color_active white; +@define-color budgie_tasklist_indicator_color_active_window #f9f9f9; +@define-color budgie_tasklist_indicator_color_attention #F4B400; +@define-color STRAWBERRY_100 #FF9262; +@define-color STRAWBERRY_300 #FF793E; +@define-color STRAWBERRY_500 #F15D22; +@define-color STRAWBERRY_700 #CF3B00; +@define-color STRAWBERRY_900 #AC1800; +@define-color ORANGE_100 #FFDB91; +@define-color ORANGE_300 #FFCA40; +@define-color ORANGE_500 #FAA41A; +@define-color ORANGE_700 #DE8800; +@define-color ORANGE_900 #C26C00; +@define-color BANANA_100 #FFFFA8; +@define-color BANANA_300 #FFFA7D; +@define-color BANANA_500 #FFCE51; +@define-color BANANA_700 #D1A023; +@define-color BANANA_900 #A27100; +@define-color LIME_100 #A2F3BE; +@define-color LIME_300 #8ADBA6; +@define-color LIME_500 #73C48F; +@define-color LIME_700 #479863; +@define-color LIME_900 #1C6D38; +@define-color BLUEBERRY_100 #94A6FF; +@define-color BLUEBERRY_300 #6A7CE0; +@define-color BLUEBERRY_500 #3F51B5; +@define-color BLUEBERRY_700 #213397; +@define-color BLUEBERRY_900 #031579; +@define-color GRAPE_100 #D25DE6; +@define-color GRAPE_300 #B84ACB; +@define-color GRAPE_500 #9C27B0; +@define-color GRAPE_700 #830E97; +@define-color GRAPE_900 #6A007E; +@define-color COCOA_100 #9F9792; +@define-color COCOA_300 #7B736E; +@define-color COCOA_500 #574F4A; +@define-color COCOA_700 #463E39; +@define-color COCOA_900 #342C27; +@define-color SILVER_100 #EEE; +@define-color SILVER_300 #CCC; +@define-color SILVER_500 #AAA; +@define-color SILVER_700 #888; +@define-color SILVER_900 #666; +@define-color SLATE_100 #888; +@define-color SLATE_300 #666; +@define-color SLATE_500 #444; +@define-color SLATE_700 #222; +@define-color SLATE_900 #111; +@define-color BLACK_100 #474341; +@define-color BLACK_300 #403C3A; +@define-color BLACK_500 #393634; +@define-color BLACK_700 #33302F; +@define-color BLACK_900 #2B2928; diff --git a/Cutefish-light/gtk-3.0/thumbnail.png b/Cutefish-light/gtk-3.0/thumbnail.png new file mode 100644 index 0000000..cce29c2 Binary files /dev/null and b/Cutefish-light/gtk-3.0/thumbnail.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scalable/checkbox-checked-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/checkbox-checked-symbolic.svg new file mode 100644 index 0000000..7b89e88 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/checkbox-checked-symbolic@2.svg b/Cutefish-light/gtk-4.0/assets/scalable/checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..17e3c4a --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/checkbox-mixed-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..b4808a6 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/checkbox-mixed-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/checkbox-mixed-symbolic@2.svg b/Cutefish-light/gtk-4.0/assets/scalable/checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..3ea0541 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/checkbox-mixed-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/cursor-handle-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/cursor-handle-symbolic.svg new file mode 100644 index 0000000..e2a252b --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/cursor-handle-symbolic.svg @@ -0,0 +1,3 @@ + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/radio-checked-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/radio-checked-symbolic.svg new file mode 100644 index 0000000..67beb46 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/radio-checked-symbolic.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/radio-checked-symbolic@2.svg b/Cutefish-light/gtk-4.0/assets/scalable/radio-checked-symbolic@2.svg new file mode 100644 index 0000000..bf51d9e --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/radio-checked-symbolic@2.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/radio-mixed-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/radio-mixed-symbolic.svg new file mode 120000 index 0000000..79b7355 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/radio-mixed-symbolic.svg @@ -0,0 +1 @@ +checkbox-mixed-symbolic.svg \ No newline at end of file diff --git a/Cutefish-light/gtk-4.0/assets/scalable/radio-mixed-symbolic@2.svg b/Cutefish-light/gtk-4.0/assets/scalable/radio-mixed-symbolic@2.svg new file mode 120000 index 0000000..b68859d --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/radio-mixed-symbolic@2.svg @@ -0,0 +1 @@ +checkbox-mixed-symbolic@2.svg \ No newline at end of file diff --git a/Cutefish-light/gtk-4.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..de0d789 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..7f0235f --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg @@ -0,0 +1,47 @@ + + + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/scale-slider-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/scale-slider-symbolic.svg new file mode 100644 index 0000000..4b00bc1 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/scale-slider-symbolic.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..37d9c04 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..1bc5cb6 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic.svg new file mode 100644 index 0000000..4759e32 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic@2.svg b/Cutefish-light/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..a44f5c9 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..d621934 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg b/Cutefish-light/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..91c7006 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/small-radio-checked-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/small-radio-checked-symbolic.svg new file mode 100644 index 0000000..f2c9cf9 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/small-radio-checked-symbolic.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/small-radio-checked-symbolic@2.svg b/Cutefish-light/gtk-4.0/assets/scalable/small-radio-checked-symbolic@2.svg new file mode 100644 index 0000000..a06db4c --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/small-radio-checked-symbolic@2.svg @@ -0,0 +1,39 @@ + + + + + + diff --git a/Cutefish-light/gtk-4.0/assets/scalable/small-radio-mixed-symbolic.svg b/Cutefish-light/gtk-4.0/assets/scalable/small-radio-mixed-symbolic.svg new file mode 120000 index 0000000..86dfcec --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/small-radio-mixed-symbolic.svg @@ -0,0 +1 @@ +small-checkbox-mixed-symbolic.svg \ No newline at end of file diff --git a/Cutefish-light/gtk-4.0/assets/scalable/small-radio-mixed-symbolic@2.svg b/Cutefish-light/gtk-4.0/assets/scalable/small-radio-mixed-symbolic@2.svg new file mode 120000 index 0000000..bafb558 --- /dev/null +++ b/Cutefish-light/gtk-4.0/assets/scalable/small-radio-mixed-symbolic@2.svg @@ -0,0 +1 @@ +small-checkbox-mixed-symbolic@2.svg \ No newline at end of file diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-dark.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-dark.png new file mode 100644 index 0000000..00d08bd Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-dark.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-dark@2.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-dark@2.png new file mode 100644 index 0000000..25abeb6 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-dark@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark.png new file mode 100644 index 0000000..bb5607f Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png new file mode 100644 index 0000000..d6065db Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-disabled.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-disabled.png new file mode 100644 index 0000000..5861d66 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-disabled.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-disabled@2.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-disabled@2.png new file mode 100644 index 0000000..52907bf Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider-disabled@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider.png new file mode 100644 index 0000000..29f1fca Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider@2.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider@2.png new file mode 100644 index 0000000..47b16ec Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-after-slider@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-dark.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-dark.png new file mode 100644 index 0000000..22b3bc9 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-dark.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-dark@2.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-dark@2.png new file mode 100644 index 0000000..818c7ed Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-dark@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark.png new file mode 100644 index 0000000..e5f083e Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png new file mode 100644 index 0000000..2e8b6c7 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-disabled.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-disabled.png new file mode 100644 index 0000000..239ca9a Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-disabled.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-disabled@2.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-disabled@2.png new file mode 100644 index 0000000..adc1af7 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider-disabled@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider.png new file mode 100644 index 0000000..3a4aa7f Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider@2.png b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider@2.png new file mode 100644 index 0000000..9dd390f Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-horz-marks-before-slider@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-dark.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-dark.png new file mode 100644 index 0000000..3231d1b Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-dark.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-dark@2.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-dark@2.png new file mode 100644 index 0000000..78cff7e Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-dark@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark.png new file mode 100644 index 0000000..1bd736e Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png new file mode 100644 index 0000000..25f37ab Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-disabled.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-disabled.png new file mode 100644 index 0000000..8e9a3e2 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-disabled.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-disabled@2.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-disabled@2.png new file mode 100644 index 0000000..47f06af Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider-disabled@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider.png new file mode 100644 index 0000000..fedff3d Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider@2.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider@2.png new file mode 100644 index 0000000..6215f7c Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-after-slider@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-dark.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-dark.png new file mode 100644 index 0000000..5679039 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-dark.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-dark@2.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-dark@2.png new file mode 100644 index 0000000..03926a9 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-dark@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark.png new file mode 100644 index 0000000..61283d7 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png new file mode 100644 index 0000000..690689c Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-disabled.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-disabled.png new file mode 100644 index 0000000..040f9f6 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-disabled.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-disabled@2.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-disabled@2.png new file mode 100644 index 0000000..593ef55 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider-disabled@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider.png new file mode 100644 index 0000000..57825fd Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider.png differ diff --git a/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider@2.png b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider@2.png new file mode 100644 index 0000000..b828dae Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/scale-vert-marks-before-slider@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-checked-dark.png b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-checked-dark.png new file mode 100644 index 0000000..8dbedf6 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-checked-dark.png differ diff --git a/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-checked-dark@2.png b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-checked-dark@2.png new file mode 100644 index 0000000..d4b23d5 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-checked-dark@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-checked.png b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-checked.png new file mode 100644 index 0000000..a223d1f Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-checked.png differ diff --git a/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-checked@2.png b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-checked@2.png new file mode 100644 index 0000000..a7723f1 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-checked@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark.png b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark.png new file mode 100644 index 0000000..f6b914e Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark.png differ diff --git a/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark@2.png b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark@2.png new file mode 100644 index 0000000..29ecf2b Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark@2.png differ diff --git a/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-unchecked.png b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-unchecked.png new file mode 100644 index 0000000..40ff92e Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-unchecked.png differ diff --git a/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-unchecked@2.png b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-unchecked@2.png new file mode 100644 index 0000000..8e87ea7 Binary files /dev/null and b/Cutefish-light/gtk-4.0/assets/selectionmode-checkbox-unchecked@2.png differ diff --git a/Cutefish-light/gtk-4.0/gtk-dark.css b/Cutefish-light/gtk-4.0/gtk-dark.css new file mode 100644 index 0000000..89cfeca --- /dev/null +++ b/Cutefish-light/gtk-4.0/gtk-dark.css @@ -0,0 +1,4645 @@ +/*************** + * Base States * + ***************/ +.background { + background-color: #2C2C2C; + color: white; +} + +dnd { + color: white; +} + +.normal-icons { + -gtk-icon-size: 16px; +} + +.large-icons { + -gtk-icon-size: 32px; +} + +spinner:disabled, +arrow:disabled, +scrollbar:disabled, +check:disabled, +radio:disabled, +treeview.expander:disabled { + -gtk-icon-filter: opacity(0.5); +} + +iconview, .view { + color: white; +} + +iconview:disabled, .view:disabled { + color: rgba(255, 255, 255, 0.5); +} + +iconview:selected, .view:selected { + color: white; +} + +textview text { + background-color: #2C2C2C; +} + +textview border { + background-color: #242424; + color: rgba(255, 255, 255, 0.7); +} + +iconview:hover, iconview:selected { + border-radius: 3px; +} + +rubberband, .content-view rubberband, .content-view columnview.view > rubberband, +.content-view treeview.view > rubberband, .content-view .rubberband, columnview.view > rubberband, .content-view columnview.view > .rubberband, +treeview.view > rubberband, +.content-view treeview.view > .rubberband, gridview > rubberband, flowbox > rubberband { + border: 1px solid #5b9bf8; + background-color: rgba(91, 155, 248, 0.3); +} + +flowbox > flowboxchild { + padding: 4px; + border-radius: 6px; +} + +.content-view .tile:selected { + background-color: transparent; +} + +gridview > child { + padding: 3px; +} + +gridview > child:selected { + outline-color: alpha(currentColor, 0.06); +} + +gridview > child box { + border-spacing: 8px; + margin: 12px; +} + +coverflow cover { + color: white; + background-color: #2C2C2C; + border: 1px solid black; +} + +label.separator { + color: rgba(255, 255, 255, 0.7); +} + +label:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; +} + +label.osd { + border-radius: 6px; + background-color: rgba(25, 25, 25, 0.9); + color: white; +} + +.dim-label { + color: rgba(255, 255, 255, 0.7); +} + +window.assistant .sidebar { + padding: 4px 0; +} + +window.assistant .sidebar label { + min-height: 36px; + padding: 0 12px; + color: rgba(255, 255, 255, 0.5); + font-weight: 500; +} + +window.assistant .sidebar label.highlight { + color: white; +} + +.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: white; + background-color: #2C2C2C; + background-clip: padding-box; + border-radius: 6px; + border: none; +} + +.osd { + padding: 6px; + margin: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12); +} + +.osd.circular { + border-radius: 9999px; +} + +/********************* + * 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; +} + +.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 { + font-weight: 400; + font-size: 9pt; +} + +.caption-heading { + font-weight: 700; + font-size: 9pt; +} + +/**************** + * Text Entries * + ****************/ +spinbutton.vertical, spinbutton:not(.vertical), +entry { + min-height: 36px; + padding: 0 8px; + border-spacing: 6px; + border-radius: 6px; + caret-color: currentColor; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.vertical:focus-within, spinbutton:focus-within:not(.vertical), +entry:focus-within { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +spinbutton.vertical:drop(active), spinbutton:drop(active):not(.vertical), +entry:drop(active) { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +spinbutton.vertical:disabled, spinbutton:disabled:not(.vertical), +entry:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.flat.vertical, spinbutton.flat:not(.vertical), +entry.flat { + min-height: 0; + padding: 2px; + border-radius: 0; + background-color: transparent; +} + +spinbutton.vertical image, spinbutton:not(.vertical) image, +entry image { + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical image:hover, spinbutton:not(.vertical) image:hover, spinbutton.vertical image:active, spinbutton:not(.vertical) image:active, +entry image:hover, +entry image:active { + color: white; +} + +spinbutton.vertical image:disabled, spinbutton:not(.vertical) image:disabled, +entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical image.left, spinbutton:not(.vertical) image.left, +entry image.left { + margin-left: 2px; + margin-right: 6px; +} + +spinbutton.vertical image.right, spinbutton:not(.vertical) image.right, +entry image.right { + margin-left: 6px; + margin-right: 2px; +} + +spinbutton.vertical undershoot.left, spinbutton:not(.vertical) undershoot.left, +entry undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.vertical undershoot.right, spinbutton:not(.vertical) undershoot.right, +entry undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.error.vertical, spinbutton.error:not(.vertical), +entry.error { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.error.vertical:focus-within, spinbutton.error:focus-within:not(.vertical), +entry.error:focus-within { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #F28B82; +} + +spinbutton.error.vertical:disabled, spinbutton.error:disabled:not(.vertical), +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.warning.vertical, spinbutton.warning:not(.vertical), +entry.warning { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.warning.vertical:focus-within, spinbutton.warning:focus-within:not(.vertical), +entry.warning:focus-within { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #FDD633; +} + +spinbutton.warning.vertical:disabled, spinbutton.warning:disabled:not(.vertical), +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical > progress, spinbutton:not(.vertical) > progress, +spinbutton.vertical progress > trough > progress, +spinbutton:not(.vertical) progress > trough > progress, +entry > progress, +entry progress > trough > progress { + margin: 2px -8px; + border-bottom: 2px solid #5b9bf8; + background-color: transparent; +} + +treeview entry.flat, treeview entry { + background-color: #2C2C2C; +} + +treeview entry.flat, treeview entry.flat:focus-within, treeview entry, treeview entry:focus-within { + border-image: none; + box-shadow: none; +} + +.entry-tag { + margin: 2px; + border-radius: 9999px; + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +.entry-tag:hover { + background-image: image(alpha(currentColor, 0.08)); +} + +:dir(ltr) .entry-tag { + margin-left: 4px; + margin-right: 0; + padding-left: 12px; + padding-right: 8px; +} + +:dir(rtl) .entry-tag { + margin-left: 0; + margin-right: 4px; + padding-left: 8px; + padding-right: 12px; +} + +.entry-tag.button { + box-shadow: none; + background-color: transparent; +} + +.entry-tag.button:not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +editablelabel > stack > text { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: radial-gradient(farthest-side, #5b9bf8 0%, rgba(91, 155, 248, 0) 0%); + } + to { + background-image: radial-gradient(farthest-side, #5b9bf8 95%, rgba(91, 155, 248, 0)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button, popover.background.touch-selection button, popover.background.magnifier button, headerbar.selection-mode button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +infobar.warning > revealer > box button:focus, popover.background.touch-selection button:focus, popover.background.magnifier button:focus, headerbar.selection-mode button:focus:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:hover, popover.background.touch-selection button:hover, popover.background.magnifier button:hover, headerbar.selection-mode button:hover:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:active, popover.background.touch-selection button:active, popover.background.magnifier button:active, headerbar.selection-mode button:active:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:checked, popover.background.touch-selection button:checked, popover.background.magnifier button:checked, headerbar.selection-mode button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +infobar.warning > revealer > box button:disabled, popover.background.touch-selection button:disabled, popover.background.magnifier button:disabled, headerbar.selection-mode button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +infobar.warning > revealer > box button:checked:disabled, popover.background.touch-selection button:checked:disabled, popover.background.magnifier button:checked:disabled, headerbar.selection-mode button:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:not(.suggested-action):not(.destructive-action), button { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +actionbar > revealer > box .linked > button:focus:not(.suggested-action):not(.destructive-action), button:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +actionbar > revealer > box .linked > button:hover:not(.suggested-action):not(.destructive-action), button:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +actionbar > revealer > box .linked > button:active:not(.suggested-action):not(.destructive-action), button:active { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + +actionbar > revealer > box .linked > button:disabled:not(.suggested-action):not(.destructive-action), button:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:checked:not(.suggested-action):not(.destructive-action), button:checked { + background-color: #5b9bf8; + color: white; +} + +actionbar > revealer > box .linked > button:checked:hover:not(.suggested-action):not(.destructive-action), button:checked:hover { + box-shadow: inset 0 0 0 9999px transparent; +} + +actionbar > revealer > box .linked > button:checked:disabled:not(.suggested-action):not(.destructive-action), button:checked:disabled { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.1); + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button { + min-height: 24px; + min-width: 16px; + padding: 6px 10px; + border-radius: 6px; + font-weight: 500; +} + +button:drop(active) { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placessidebar .navigation-sidebar > row button.sidebar-button, calendar > header > button, columnview.view > header > button button.circular, +treeview.view > header > button button.circular, row.activatable button.circular, scrollbar button, notebook > header > tabs > arrow, spinbutton.vertical > button, spinbutton:not(.vertical) > button, modelbutton.flat, filechooser #pathbarbox > stack > box > button, window.dialog.message .dialog-action-area > button, .app-notification button, actionbar > revealer > box button:not(.suggested-action):not(.destructive-action), popover.background.menu button, +popover.background button.model, headerbar button:not(.suggested-action):not(.destructive-action), .toolbar button, +toolbar button, dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child), button.flat { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: transparent; + color: rgba(255, 255, 255, 0.7); +} + +placessidebar .navigation-sidebar > row button.sidebar-button:focus, calendar > header > button:focus, columnview.view > header > button button.circular:focus, +treeview.view > header > button button.circular:focus, row.activatable button.circular:focus, scrollbar button:focus, notebook > header > tabs > arrow:focus, spinbutton.vertical > button:focus, spinbutton:not(.vertical) > button:focus, modelbutton.flat:focus, filechooser #pathbarbox > stack > box > button:focus, window.dialog.message .dialog-action-area > button:focus, .app-notification button:focus, actionbar > revealer > box button:focus:not(.suggested-action):not(.destructive-action), popover.background.menu button:focus, +popover.background button.model:focus, headerbar button:focus:not(.suggested-action):not(.destructive-action), .toolbar button:focus, +toolbar button:focus, dropdown > .linked:not(.vertical) > button:focus:not(:only-child), +combobox > .linked:not(.vertical) > button:focus:not(:only-child), button.flat:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: white; +} + +placessidebar .navigation-sidebar > row button.sidebar-button:hover, calendar > header > button:hover, columnview.view > header > button button.circular:hover, +treeview.view > header > button button.circular:hover, row.activatable button.circular:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, spinbutton.vertical > button:hover, spinbutton:not(.vertical) > button:hover, modelbutton.flat:hover, filechooser #pathbarbox > stack > box > button:hover, window.dialog.message .dialog-action-area > button:hover, .app-notification button:hover, actionbar > revealer > box button:hover:not(.suggested-action):not(.destructive-action), popover.background.menu button:hover, +popover.background button.model:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), .toolbar button:hover, +toolbar button:hover, dropdown > .linked:not(.vertical) > button:hover:not(:only-child), +combobox > .linked:not(.vertical) > button:hover:not(:only-child), button.flat:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: white; +} + +placessidebar .navigation-sidebar > row button.sidebar-button:active, calendar > header > button:active, columnview.view > header > button button.circular:active, +treeview.view > header > button button.circular:active, row.activatable button.circular:active, scrollbar button:active, notebook > header > tabs > arrow:active, spinbutton.vertical > button:active, spinbutton:not(.vertical) > button:active, modelbutton.flat:active, filechooser #pathbarbox > stack > box > button:active, window.dialog.message .dialog-action-area > button:active, .app-notification button:active, actionbar > revealer > box button:active:not(.suggested-action):not(.destructive-action), popover.background.menu button:active, +popover.background button.model:active, headerbar button:active:not(.suggested-action):not(.destructive-action), .toolbar button:active, +toolbar button:active, dropdown > .linked:not(.vertical) > button:active:not(:only-child), +combobox > .linked:not(.vertical) > button:active:not(:only-child), button.flat:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); + color: white; +} + +placessidebar .navigation-sidebar > row button.sidebar-button:disabled, calendar > header > button:disabled, columnview.view > header > button button.circular:disabled, +treeview.view > header > button button.circular:disabled, row.activatable button.circular:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, spinbutton.vertical > button:disabled, spinbutton:not(.vertical) > button:disabled, modelbutton.flat:disabled, filechooser #pathbarbox > stack > box > button:disabled, window.dialog.message .dialog-action-area > button:disabled, .app-notification button:disabled, actionbar > revealer > box button:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:disabled, +popover.background button.model:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:disabled, +toolbar button:disabled, dropdown > .linked:not(.vertical) > button:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:disabled:not(:only-child), button.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +filechooser #pathbarbox > stack > box > button:checked, window.dialog.message .dialog-action-area > button:checked, .app-notification button:checked, actionbar > revealer > box button:checked:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked, +popover.background button.model:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), .toolbar button:checked, +toolbar button:checked, dropdown > .linked:not(.vertical) > button:checked:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:not(:only-child), button.flat:checked, button.flat:checked:hover { + background-color: alpha(currentColor, 0.1); + color: white; +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, window.dialog.message .dialog-action-area > button:checked:disabled, .app-notification button:checked:disabled, actionbar > revealer > box button:checked:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked:disabled, +popover.background button.model:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:checked:disabled, +toolbar button:checked:disabled, dropdown > .linked:not(.vertical) > button:checked:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(255, 255, 255, 0.5); +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.text-button.flat { + min-width: 48px; + padding-left: 8px; + padding-right: 8px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child) { + margin: 0 4px; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + border-radius: 6px; +} + +.linked:not(.vertical) > button.flat:focus, .linked.vertical > button.flat:focus { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +button.osd { + padding: 12px 16px; +} + +button.osd.image-button { + padding: 12px; +} + +button.osd:disabled { + opacity: 0; +} + +button.suggested-action { + background-color: #5b9bf8; + color: white; + box-shadow: none; +} + +button.suggested-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(91, 155, 248, 0.2), 0 4px 3px 0 rgba(91, 155, 248, 0.14), 0 1px 6px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:checked { + background-color: #8cb9fa; +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(91, 155, 248, 0.3), 0 2px 3px -1px rgba(91, 155, 248, 0.24), 0 2px 5px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #5b9bf8; +} + +button.suggested-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.suggested-action.flat:checked { + background-color: rgba(91, 155, 248, 0.3); +} + +button.destructive-action { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); + box-shadow: none; +} + +button.destructive-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(242, 139, 130, 0.2), 0 4px 3px 0 rgba(242, 139, 130, 0.14), 0 1px 6px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:checked { + background-color: rgba(182, 105, 98, 0.961); +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(242, 139, 130, 0.3), 0 2px 3px -1px rgba(242, 139, 130, 0.24), 0 2px 5px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(242, 139, 130, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #F28B82; +} + +button.destructive-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.destructive-action.flat:checked { + background-color: rgba(242, 139, 130, 0.3); +} + +stackswitcher > button > label { + margin: 0 -6px; + padding: 0 6px; +} + +stackswitcher > button > image { + margin: -3px -6px; + padding: 3px 6px; +} + +stackswitcher > button.needs-attention:checked > label, +stackswitcher > button.needs-attention:checked > image { + animation: none; + background-image: none; +} + +button.font > box, button.file > box { + border-spacing: 6px; +} + +button.font > box > box > label, button.file > box > box > label { + font-weight: bold; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action), filechooser #pathbarbox > stack > box > button, button.close, button.circular { + border-radius: 9999px; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, button.close label, button.circular label { + padding: 0; +} + +placessidebar .navigation-sidebar > row button.sidebar-button, notebook > header tab button.flat, popover.menu box.circular-buttons button.circular.image-button.model, spinbutton.vertical > button, spinbutton:not(.vertical) > button { + min-height: 24px; + min-width: 24px; + padding: 0; + border-radius: 9999px; +} + +stacksidebar row.needs-attention > label, stackswitcher > button.needs-attention > label, +stackswitcher > button.needs-attention > image { + animation: needs-attention 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-repeat: no-repeat; + background-position: right 3px; + background-size: 6px 6px; +} + +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; +} + +.linked:not(.vertical) > spinbutton.vertical, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry, .linked:not(.vertical) > button, .linked:not(.vertical) > button.image-button { + border-radius: 0; +} + +.linked:not(.vertical) > spinbutton.vertical:first-child, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child, .linked:not(.vertical) > button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.linked:not(.vertical) > spinbutton.vertical:last-child, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child, .linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > spinbutton.vertical:only-child, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child, .linked:not(.vertical) > button:only-child { + border-radius: 6px; +} + +.linked.vertical > spinbutton.vertical, .linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry, .linked.vertical > button, .linked.vertical > button.image-button { + border-radius: 0; +} + +.linked.vertical > spinbutton.vertical:first-child, .linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child, .linked.vertical > button:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > spinbutton.vertical:last-child, .linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child, .linked.vertical > button:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > spinbutton.vertical:only-child, .linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child, .linked.vertical > button:only-child { + border-radius: 6px; +} + +/* menu buttons */ +modelbutton.flat { + min-height: 28px; + padding: 0 9px; + border-radius: 6px; + color: white; +} + +modelbutton.flat arrow.left { + -gtk-icon-source: -gtk-icontheme("go-previous-symbolic"); +} + +modelbutton.flat arrow.right { + -gtk-icon-source: -gtk-icontheme("go-next-symbolic"); +} + +button.color { + min-height: 24px; + min-width: 24px; + padding: 6px; +} + + +list > row button.image-button:not(.flat) { + background-color: transparent; + box-shadow: none; + border: none; +} + + +list > row button.image-button:not(.flat):hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + + +list > row button.image-button:not(.flat):active, +list > row button.image-button:not(.flat):checked { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + + +list > row button.image-button:not(.flat).suggested-action { + background-color: #5b9bf8; + color: white; +} + + +list > row button.image-button:not(.flat).destructive-action { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); +} + +/********* + * Links * + *********/ +link { + color: #2196F3; +} + +link:visited { + color: #CE93D8; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #2196F3; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #CE93D8; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton:not(.vertical) { + padding: 0; + border-spacing: 0; +} + +spinbutton:not(.vertical) > text { + min-width: 32px; + margin: 0; + padding-left: 12px; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +spinbutton:not(.vertical) > button { + border: solid 6px transparent; +} + +spinbutton:not(.vertical) > button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton:not(.vertical) > button.up:dir(ltr), spinbutton:not(.vertical) > button.down:dir(rtl) { + margin-left: -3px; +} + +spinbutton:not(.vertical) > button.up:dir(rtl), spinbutton:not(.vertical) > button.down:dir(ltr) { + margin-right: -3px; +} + +spinbutton.vertical { + padding: 0; +} + +spinbutton.vertical:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical > text { + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical > button { + padding: 0; + border: solid 6px transparent; +} + +spinbutton.vertical > button:focus:not(:hover):not(:active) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical > button.up { + margin: 0 3px; +} + +spinbutton.vertical > button.down { + margin: 0 3px; +} + +treeview spinbutton:not(.vertical), row spinbutton:not(.vertical) { + min-height: 0; + border-style: none; + border-radius: 0; +} + +treeview spinbutton:not(.vertical) > text, row 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 button.combo cellview:dir(ltr), +combobox button.combo cellview:dir(ltr) { + margin-left: -2px; +} + +dropdown button.combo cellview:dir(rtl), +combobox button.combo cellview:dir(rtl) { + margin-right: -2px; +} + +dropdown popover, +combobox popover { + margin-top: 4px; + padding: 0; +} + +dropdown popover listview, +combobox popover listview { + margin: 6px 0; +} + +dropdown popover listview > row, +combobox popover listview > row { + padding: 6px; +} + +dropdown popover listview > row:selected, +combobox popover listview > row:selected { + color: white; + background-color: alpha(currentColor, 0.06); +} + +dropdown popover .dropdown-searchbar, +combobox popover .dropdown-searchbar { + padding: 6px; +} + +dropdown.linked button:nth-child(2):dir(ltr), +combobox.linked button:nth-child(2):dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +dropdown.linked button:nth-child(2):dir(rtl), +combobox.linked button:nth-child(2):dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child), +combobox > .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child):first-child, +combobox > .linked:not(.vertical) > entry:not(:only-child):first-child { + margin-right: -36px; + padding-right: 36px; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child):last-child, +combobox > .linked:not(.vertical) > entry:not(:only-child):last-child { + margin-left: -36px; + padding-left: 36px; +} + +dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child) { + min-height: 16px; + min-width: 16px; + margin: 6px; + padding: 4px; + border-radius: 6px; +} + +.linked:not(.vertical) > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.linked:not(.vertical) > combobox:not(:last-child) > box > button.combo { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.linked.vertical > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.linked.vertical > combobox:not(:last-child) > box > button.combo { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +button.combo:only-child { + border-radius: 6px; + font-weight: normal; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +button.combo:only-child:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: white; +} + +button.combo:only-child:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: white; +} + +button.combo:only-child:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); + color: white; +} + +button.combo:only-child:checked { + background-color: alpha(currentColor, 0.1); + color: white; +} + +button.combo:only-child:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +/************ + * Toolbars * + ************/ +.toolbar, +toolbar { + padding: 3px 6px; + background-color: #2C2C2C; + border-spacing: 6px; +} + +.osd .toolbar, .osd toolbar { + background-color: transparent; +} + +.app-notification, .toolbar.osd, +toolbar.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +.app-notification:backdrop, .toolbar.osd:backdrop, +toolbar.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +.left.app-notification, .right.app-notification, .top.app-notification, .bottom.app-notification, .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; +} + +.bottom.app-notification, .toolbar.osd.bottom, +toolbar.osd.bottom { + box-shadow: none; + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.4)); +} + +.toolbar.horizontal > separator, +toolbar.horizontal > separator { + margin: 2px; +} + +.toolbar.vertical > separator, +toolbar.vertical > separator { + margin: 2px; +} + +.toolbar:not(.inline-toolbar):not(.osd) scale, +.toolbar:not(.inline-toolbar):not(.osd) entry, +.toolbar:not(.inline-toolbar):not(.osd) spinbutton, +.toolbar:not(.inline-toolbar):not(.osd) button, +toolbar:not(.inline-toolbar):not(.osd) scale, +toolbar:not(.inline-toolbar):not(.osd) entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton, +toolbar:not(.inline-toolbar):not(.osd) button { + margin: 2px; +} + +.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child) { + margin-left: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child) { + margin-right: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +.toolbar:not(.inline-toolbar):not(.osd) spinbutton button, +toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton button { + margin: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) switch, +toolbar:not(.inline-toolbar):not(.osd) switch { + margin: 8px 2px; +} + +.toolbar button { + margin: 1px; + border-radius: 3px; +} + +searchbar > revealer > box { + padding: 6px; + border-spacing: 6px; + border-style: solid; + border-width: 0 0 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + border: none; +} + +headerbar .linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + border-radius: 6px; +} + +headerbar button:focus:not(.suggested-action):not(.destructive-action), headerbar button:hover:not(.suggested-action):not(.destructive-action), headerbar button:active:not(.suggested-action):not(.destructive-action), headerbar button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action) { + background-color: transparent; + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:focus:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:hover:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:backdrop:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar entry { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +headerbar entry:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +headerbar entry image { + color: rgba(255, 255, 255, 0.7); +} + +headerbar entry image:hover, headerbar entry image:active { + color: white; +} + +headerbar entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); + background-color: #242424; + color: white; + min-height: 48px; + padding: 0 6px; +} + +headerbar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +headerbar:backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +headerbar .title { + padding: 0 12px; + font-weight: bold; +} + +headerbar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +headerbar .subtitle, +headerbar .dim-label { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +headerbar .subtitle:backdrop, +headerbar .dim-label:backdrop { + color: rgba(255, 255, 255, 0.5); +} + +headerbar .titlebar { + background-color: transparent; + box-shadow: none; +} + +headerbar headerbar + separator { + background-color: rgba(255, 255, 255, 0.12); +} + +box.vertical headerbar { + background-color: #242424; +} + +headerbar > windowhandle > box { + padding: 0 3px; +} + +headerbar > windowhandle > box, +headerbar > windowhandle > box > box.start, +headerbar > windowhandle > box > box.end { + border-spacing: 6px; +} + +headerbar entry, +headerbar spinbutton, +headerbar button, +headerbar stackswitcher { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar menubutton.popup { + margin-top: 0; + margin-bottom: 0; +} + +headerbar separator:not(.sidebar) { + margin-top: 12px; + margin-bottom: 12px; + background-color: rgba(255, 255, 255, 0.12); +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar spinbutton button { + margin-top: 0; + margin-bottom: 0; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +headerbar button.suggested-action:disabled, headerbar button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +headerbar.selection-mode { + transition: background-color 0.1ms 0ms, color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #5b9bf8; + color: white; +} + +headerbar.selection-mode:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +headerbar.selection-mode .subtitle:link { + color: white; +} + +headerbar.selection-mode .selection-menu { + padding-left: 16px; + padding-right: 16px; +} + +headerbar.selection-mode .selection-menu .arrow { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +headerbar .selection-mode { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #5b9bf8; +} + +headerbar.default-decoration { + min-height: 24px; + padding: 6px; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); +} + +headerbar.default-decoration windowcontrols button, +headerbar.default-decoration windowcontrols menubutton { + min-width: 16px; + min-height: 16px; + margin: 0; + padding: 0; +} + +headerbar.default-decoration windowcontrols menubutton button { + min-height: 20px; + min-width: 20px; + margin: 0; + padding: 4px; +} + +.solid-csd headerbar:dir(rtl), .solid-csd headerbar:dir(ltr) { + border-radius: 0; + box-shadow: none; +} + +window.devel headerbar.titlebar { + background: #242424 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, linear-gradient(to right, transparent 65%, rgba(91, 155, 248, 0.1)), linear-gradient(to top, #2c2c2c 3px, #313131); +} + +window.devel headerbar.titlebar:backdrop { + background: #242424 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, image(#242424); + /* background-color would flash */ +} + +viewswitcher { + margin: 0; +} + +viewswitcher.wide { + border-spacing: 3px; +} + +viewswitcher.narrow button.toggle { + border-radius: 0; + margin: 0; +} + +viewswitcher.narrow button.toggle:focus-within, viewswitcher.narrow button.toggle:focus { + box-shadow: none; +} + +viewswitcher button.toggle { + font-weight: bold; + padding: 0; +} + +viewswitcher button.toggle > stack > box.narrow { + font-size: 0.75rem; + padding-top: 6px; + padding-bottom: 4px; + border-spacing: 4px; +} + +viewswitcher button.toggle > stack > box.narrow > stack > label { + padding-left: 6px; + padding-right: 6px; +} + +viewswitcher button.toggle > stack > box.wide { + padding: 2px 12px; + border-spacing: 6px; +} + +viewswitcherbar actionbar > revealer > box { + padding: 0; +} + +viewswitchertitle viewswitcher { + margin-left: 12px; + margin-right: 12px; +} + +indicatorbin > indicator, indicatorbin > mask { + min-width: 6px; + min-height: 6px; + border-radius: 9999px; +} + +indicatorbin > indicator { + margin: 1px; + background-color: alpha(currentColor, 0.4); +} + +indicatorbin > indicator > label { + font-size: 0.6rem; + font-weight: bold; + padding: 1px 4px; + color: white; +} + +indicatorbin > mask { + padding: 1px; + background: black; +} + +indicatorbin.needs-attention > indicator { + background-color: #5b9bf8; +} + +indicatorbin.needs-attention > indicator > label { + color: white; +} + +/************ + * Pathbars * + ************/ + +pathbar > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 6px; + background-color: alpha(currentColor, 0.08); +} + + +pathbar > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +pathbar > button:checked { + background-color: alpha(currentColor, 0.16); + color: white; +} + + +pathbar > button label:not(:only-child):first-child { + margin-left: 0; +} + + +pathbar > button label:not(:only-child):last-child { + margin-right: 0; +} + + +pathbar > button.text-button { + min-width: 0; +} + + +pathbar > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +/************** + * Tree Views * + **************/ +columnview.view, +treeview.view { + border-left-color: #4b4b4b; + border-top-color: #4b4b4b; +} + +columnview.view:hover, columnview.view:selected, +treeview.view:hover, +treeview.view:selected { + border-radius: 0; + box-shadow: none; +} + +columnview.view.separator, +treeview.view.separator { + min-height: 5px; + color: rgba(255, 255, 255, 0.12); +} + +columnview.view:drop(active), +treeview.view:drop(active) { + box-shadow: none; +} + +columnview.view:drop(active).after, +treeview.view:drop(active).after { + border-top-style: none; +} + +columnview.view:drop(active).before, +treeview.view:drop(active).before { + border-bottom-style: none; +} + +columnview.view > dndtarget:drop(active), +treeview.view > dndtarget:drop(active) { + border-style: solid none; + border-width: 1px; + border-color: alpha(currentColor, 0.06); +} + +columnview.view > dndtarget:drop(active).after, +treeview.view > dndtarget:drop(active).after { + border-top-style: none; +} + +columnview.view > dndtarget:drop(active).before, +treeview.view > dndtarget:drop(active).before { + border-bottom-style: none; +} + +columnview.view.expander, +treeview.view.expander { + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); + color: rgba(255, 255, 255, 0.7); +} + +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: white; +} + +columnview.view.expander:selected, +treeview.view.expander:selected { + color: white; +} + +columnview.view.expander:selected:hover, +treeview.view.expander:selected:hover { + color: white; +} + +columnview.view.expander:checked, +treeview.view.expander:checked { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +columnview.view.expander:disabled, +treeview.view.expander:disabled { + color: rgba(255, 255, 255, 0.3); +} + +columnview.view.progressbar, +treeview.view.progressbar { + border-bottom: 6px solid #5b9bf8; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +columnview.view.progressbar:selected:hover, +treeview.view.progressbar:selected:hover { + box-shadow: none; +} + +columnview.view.trough, +treeview.view.trough { + border-bottom: 6px solid rgba(255, 255, 255, 0.12); + box-shadow: none; + background-color: transparent; + background-image: none; +} + +columnview.view.trough:selected:hover, +treeview.view.trough:selected:hover { + box-shadow: none; +} + +columnview.view > header > button, +treeview.view > header > button { + padding: 2px 6px; + border-style: none solid solid none; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + background-clip: border-box; +} + +columnview.view > header > button:not(:focus):not(:hover):not(:active), +treeview.view > header > button:not(:focus):not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +columnview.view > header > button, columnview.view > header > button:disabled, +treeview.view > header > button, +treeview.view > header > button:disabled { + background-color: #2C2C2C; +} + +columnview.view > header > button:last-child, +treeview.view > header > button:last-child { + border-right-style: none; +} + +columnview.view button.dnd, +columnview.view header.button.dnd, +treeview.view button.dnd, +treeview.view header.button.dnd { + padding: 2px 6px; + border-style: none solid solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + box-shadow: none; + background-color: #2C2C2C; + background-clip: border-box; + color: #5b9bf8; +} + +columnview.view acceleditor > label, +treeview.view acceleditor > label { + background-color: #5b9bf8; +} + +/********* + * Menus * + *********/ +menubar { + padding: 0; + background-color: #242424; + color: white; +} + +menubar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.csd menubar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > item { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + padding: 4px 8px; + color: rgba(255, 255, 255, 0.7); +} + +menubar > item:selected { + transition: none; + background-color: alpha(currentColor, 0.1); + color: white; +} + +menubar > item:disabled { + color: rgba(255, 255, 255, 0.3); +} + +menubar > item label:disabled { + color: inherit; +} + +menubar > item popover.menu popover.menu { + margin-left: 9px; +} + +menubar > item popover.menu.background popover.menu.background > contents { + margin: 0; + border-radius: 12px; +} + +/********************** + * Popover Base Menus * + **********************/ +popover.menu box.inline-buttons { + padding: 0 6px; +} + +popover.menu box.inline-buttons button.image-button.model { + min-height: 28px; + min-width: 28px; + padding: 0; + border: none; + outline: none; + transition: none; +} + +popover.menu box.inline-buttons button.image-button.model:selected { + background: image(alpha(currentColor, 0.06)); +} + +popover.menu box.circular-buttons { + padding: 6px; +} + +popover.menu box.circular-buttons button.circular.image-button.model { + padding: 6px; +} + +popover.menu box.circular-buttons button.circular.image-button.model:focus { + background-color: alpha(currentColor, 0.06); +} + +popover.menu.background separator { + margin: 6px 0; +} + +popover.menu arrow.left, +popover.menu radio.left, +popover.menu check.left { + margin-left: 0; + margin-right: 0; +} + +popover.menu arrow.right, +popover.menu radio.right, +popover.menu check.right { + margin-left: 0; + margin-right: 0; +} + +popover.menu modelbutton { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 22px; + min-width: 56px; + padding: 3px 9px; + color: white; + font: initial; + text-shadow: none; + box-shadow: none; + background: none; +} + +popover.menu modelbutton:hover { + transition: none; + background-color: alpha(currentColor, 0.08); +} + +popover.menu modelbutton:disabled { + color: rgba(255, 255, 255, 0.5); +} + +popover.menu label.title { + font-weight: bold; + padding: 4px 26px; +} + +/************ + * Popovers * + ************/ +popover.background { + font: initial; +} + +popover.background, popover.background:backdrop { + background-color: transparent; +} + +popover.background > arrow, +popover.background > contents { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + background-color: #3C3C3C; + border-radius: 12px; + border: 1px solid rgba(255, 255, 255, 0.1); + background-clip: border-box; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.75), 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05); +} + +popover.background > arrow:backdrop, +popover.background > contents:backdrop { + box-shadow: 0 3px 2px -2px rgba(0, 0, 0, 0.05), 0 2px 3px -1px rgba(0, 0, 0, 0.06), 0 1px 4px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +popover.background > contents > list, +popover.background > contents > .view, +popover.background > contents > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover.background > contents separator { + background-color: rgba(255, 255, 255, 0.12); + margin: 3px 0; +} + +popover.background > contents list separator { + margin: 0; +} + +popover.background .view:not(:selected), +popover.background toolbar { + background-color: #3C3C3C; +} + +popover.background .linked > button:not(.radio) { + background-color: transparent; + box-shadow: none; + border-radius: 6px; +} + +s +popover.background .linked > button:not(.radio):first-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):last-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):only-child { + border-radius: 6px; +} + +popover.background.menu button, +popover.background button.model { + min-height: 32px; + padding: 0 8px; + border-radius: 6px; +} + +.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: none; + box-shadow: none; +} + +magnifier { + background-color: #2C2C2C; +} + +/************* + * Notebooks * + *************/ +tabbar tab, notebook > header tab { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + min-height: 24px; + min-width: 24px; + padding: 3px 12px; + border: none; + outline: none; + background-clip: padding-box; + color: rgba(255, 255, 255, 0.7); + font-weight: 500; + border-radius: 6px; + background-image: none; + background-color: transparent; +} + +tabbar tab:hover, notebook > header tab:hover { + background-color: rgba(255, 255, 255, 0.04); + background-image: none; + color: white; +} + +tabbar tab:disabled, notebook > header tab:disabled { + color: rgba(255, 255, 255, 0.3); +} + +tabbar tab:checked, notebook > header tab:checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); + background-image: none; +} + +tabbar tab:checked:disabled, notebook > header tab:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +frame > paned > notebook > header, notebook.frame > header { + background-color: rgba(255, 255, 255, 0.04); +} + +notebook, notebook.frame { + background-color: #2C2C2C; + border-radius: 12px; +} + +notebook.frame frame > border { + border: none; + border-radius: 6px; +} + +notebook.frame frame > list row.activatable { + border-radius: 6px; +} + +notebook > header { + border: none; + background-color: rgba(255, 255, 255, 0.04); + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +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 { + padding-left: 4px; + padding-right: 4px; +} + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { + margin-left: 0; + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { + margin-right: 0; + -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 { + padding-top: 4px; + padding-bottom: 4px; +} + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { + margin-top: 0; + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { + margin-bottom: 0; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +notebook > header > tabs > arrow { + min-height: 16px; + min-width: 16px; + border-radius: 6px; +} + +notebook > header tab > box { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header tab > box:drop(active) { + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +notebook > header tab button.flat:last-child { + margin-left: 6px; + margin-right: -6px; +} + +notebook > header tab button.flat:first-child { + margin-left: -6px; + margin-right: 6px; +} + +notebook > header tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child { + margin-left: 0; +} + +notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child { + margin-right: 0; +} + +notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child { + margin-top: 0; +} + +notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child { + margin-bottom: 0; +} + +notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header > menubutton > button.image-button { + padding: 3px; + min-width: 24px; + min-height: 24px; + margin-left: 3px; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +tabbar .box { + min-height: 36px; + border-bottom: none; + background: none; +} + +tabbar scrolledwindow.pinned undershoot { + border: 0 solid rgba(255, 255, 255, 0.12); +} + +tabbar scrolledwindow.pinned:dir(rtl) undershoot.left { + border-left-width: 1px; +} + +tabbar scrolledwindow.pinned:dir(ltr) undershoot.right { + border-right-width: 1px; +} + +tabbar scrolledwindow.pinned tabbox > background:dir(ltr) { + box-shadow: inset -1px 0 rgba(255, 255, 255, 0.12); +} + +tabbar scrolledwindow.pinned tabbox > background:dir(rtl) { + box-shadow: inset 1px 0 rgba(255, 255, 255, 0.12); +} + +tabbar undershoot { + transition: background 150ms ease-in-out; +} + +tabbar undershoot.left { + background: linear-gradient(to right, #2C2C2C, rgba(0, 0, 0, 0) 20px); +} + +tabbar undershoot.right { + background: linear-gradient(to left, #2C2C2C, rgba(0, 0, 0, 0) 20px); +} + +tabbar .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar tabbox { + background-color: rgba(255, 255, 255, 0.04); + background-image: none; + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +tabbar tabbox > background { + background: none; +} + +tabbar tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#5b9bf8, 0.4) 10%, alpha(#5b9bf8, 0) 30%); +} + +tabbar tab.needs-attention:hover { + background-image: image(alpha(currentColor, 0.03)), radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#5b9bf8, 0.4) 10%, alpha(#5b9bf8, 0) 30%); +} + +tabbar .start-action, +tabbar .end-action { + background-color: rgba(255, 255, 255, 0.04); + background-clip: padding-box; + border-color: rgba(255, 255, 255, 0.12); + border-style: solid; + transition: background 150ms ease-in-out; +} + +tabbar .start-action button, +tabbar .end-action button { + border: none; + border-radius: 0; +} + +tabbar .start-action:dir(ltr), +tabbar .end-action:dir(rtl) { + border-right-width: 1px; +} + +tabbar .start-action:dir(rtl), +tabbar .end-action:dir(ltr) { + border-left-width: 1px; +} + +tabbar:not(.inline) scrolledwindow.pinned undershoot { + border-color: rgba(255, 255, 255, 0.12); +} + +tabbar:not(.inline) undershoot.left { + background: linear-gradient(to right, #242424, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) undershoot.right { + background: linear-gradient(to left, #242424, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar:not(.inline) tabbox > background { + background-color: #242424; +} + +tabbar:not(.inline) .start-action, +tabbar:not(.inline) .end-action { + background-color: alpha(#242424, 0.6); + border-color: rgba(255, 255, 255, 0.12); +} + +tabbar:not(.inline):backdrop .box { + background-color: #2C2C2C; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +dnd tab { + min-height: 24px; + background-color: #242424; + color: white; + box-shadow: 0 1px 5px 1px rgba(0, 0, 0, 0.09), 0 2px 14px 3px rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.05); + outline: 1px solid rgba(0, 0, 0, 0.75); + outline-offset: -1px; + margin: 24px; +} + +dnd tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#5b9bf8, 0.4) 10%, alpha(#5b9bf8, 0) 30%); +} + +tabbar tab, +dnd tab { + padding: 6px; +} + +tabbar tab button.image-button, +dnd tab button.image-button { + padding: 0; + margin: 0; + min-width: 24px; + min-height: 24px; + border-radius: 9999px; +} + +tabview:drop(active), +tabbox:drop(active) { + box-shadow: none; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #2C2C2C; + box-shadow: none; + outline: none; +} + +scrollbar.top { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.bottom { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.left { + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.right { + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar > range > trough > slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 8px; + min-height: 8px; + border: 4px solid transparent; + border-radius: 9999px; + background-clip: padding-box; + background-color: rgba(255, 255, 255, 0.5); + box-shadow: none; + outline: none; +} + +scrollbar > range > trough > slider:hover { + background-color: rgba(255, 255, 255, 0.7); +} + +scrollbar > range > trough > slider:active { + background-color: white; +} + +scrollbar > range > trough > slider:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar > range.fine-tune > trough > slider { + min-width: 4px; + min-height: 4px; +} + +scrollbar > range.fine-tune.horizontal > trough > slider { + margin: 2px 0; +} + +scrollbar > range.fine-tune.vertical > trough > slider { + margin: 0 2px; +} + +scrollbar.overlay-indicator:not(.fine-tune) > range > trough > slider { + transition-property: background-color, min-height, min-width; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { + border-color: transparent; + background-color: transparent; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) > range > trough > slider { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: padding-box; + -gtk-icon-source: none; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal > range > trough > slider { + min-width: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { + min-width: 8px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical > range > trough > slider { + min-height: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { + min-height: 8px; +} + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { + background-color: rgba(60, 60, 60, 0.9); +} + +scrollbar.horizontal > range > trough > slider { + min-width: 24px; +} + +scrollbar.vertical > range > trough > slider { + min-height: 24px; +} + +scrollbar button { + min-width: 16px; + min-height: 16px; + padding: 0; + border-radius: 0; +} + +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"); +} + +/********** + * Switch * + **********/ +switch { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + margin: 6px 0; + padding: 0; + border: none; + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: border-box; + font-size: 0; + color: transparent; +} + +switch:checked { + background-color: #5b9bf8; +} + +switch:disabled { + opacity: 0.5; +} + +switch image { + margin: -8px; +} + +switch > slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 20px; + min-height: 20px; + margin: 1px; + border-radius: 9999px; + outline: none; + box-shadow: none; + background-color: white; + border: none; +} + +switch:focus slider, switch:hover slider, switch:focus:hover slider { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); +} + +/************************* + * Check and Radio items * + *************************/ +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + min-height: 40px; + min-width: 40px; + margin: 0; + padding: 0; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +.view.content-view.check:not(list):hover, .view.content-view.check:not(list):active, +.content-view .tile check:not(list):hover, +.content-view .tile check:not(list):active { + box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.12); +} + +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-unchecked-dark.png"), url("assets/selectionmode-checkbox-unchecked-dark@2.png")); +} + +.view.content-view.check:not(list):checked, +.content-view .tile check:not(list):checked { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-checked-dark.png"), url("assets/selectionmode-checkbox-checked-dark@2.png")); +} + +checkbutton, +radiobutton { + outline: none; + border-spacing: 3px; +} + +check, +radio { + min-height: 20px; + min-width: 20px; + margin: 3px; + padding: 0; + border-radius: 9999px; + color: transparent; + background-color: rgba(255, 255, 255, 0.12); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +check:hover, +radio:hover { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.04); + background-color: rgba(255, 255, 255, 0.15); +} + +check:active, +radio:active { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); + background-color: rgba(255, 255, 255, 0.2); +} + +check:disabled, +radio:disabled { + background-color: rgba(255, 255, 255, 0.04); +} + +check:checked, check:indeterminate, +radio:checked, +radio:indeterminate { + color: white; + background-color: #5b9bf8; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.15); + background-color: #8cb9fa; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.2); + background-color: #5b9bf8; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(255, 255, 255, 0.7); + background-color: rgba(91, 155, 248, 0.35); +} + +popover modelbutton.flat check, popover modelbutton.flat check:focus, popover modelbutton.flat check:hover, popover modelbutton.flat check:focus:hover, popover modelbutton.flat check:active, popover modelbutton.flat check:disabled, popover modelbutton.flat radio, popover modelbutton.flat radio:focus, popover modelbutton.flat radio:hover, popover modelbutton.flat radio:focus:hover, popover modelbutton.flat radio:active, popover modelbutton.flat radio:disabled { + transition: none; + box-shadow: none; + background-image: none; +} + +popover modelbutton.flat check.left:dir(rtl), popover modelbutton.flat radio.left:dir(rtl) { + margin-left: -3px; + margin-right: 6px; +} + +popover modelbutton.flat check.right:dir(ltr), popover modelbutton.flat radio.right:dir(ltr) { + margin-left: 6px; + margin-right: -3px; +} + +popover.menu check, popover.menu radio { + transition: none; + margin: 0; + padding: 0; +} + +popover.menu check:dir(ltr), popover.menu radio:dir(ltr) { + margin-right: 6px; + margin-left: -3px; +} + +popover.menu check:dir(rtl), popover.menu radio:dir(rtl) { + margin-left: 6px; + margin-right: -3px; +} + +popover.menu check, popover.menu check:hover, popover.menu check:disabled, popover.menu check:checked:hover, popover.menu check:indeterminate:hover, popover.menu radio, popover.menu radio:hover, popover.menu radio:disabled, popover.menu radio:checked:hover, popover.menu radio:indeterminate:hover { + box-shadow: none; +} + + +check { + -gtk-icon-size: 20px; +} + + +check:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-checked-symbolic@2.svg"))); +} + + +check:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic@2.svg"))); +} + + +radio { + -gtk-icon-size: 20px; +} + + +radio:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-checked-symbolic@2.svg"))); +} + + +radio:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-mixed-symbolic@2.svg"))); +} + + +popover.menu check { + min-height: 16px; + min-width: 16px; + -gtk-icon-size: 16px; +} + + +popover.menu check:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic@2.svg"))); +} + + +popover.menu check:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic@2.svg"))); +} + + +popover.menu radio { + min-height: 16px; + min-width: 16px; + -gtk-icon-size: 16px; +} + + +popover.menu radio:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-checked-symbolic@2.svg"))); +} + + +popover.menu radio:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic@2.svg"))); +} + +check:not(:checked):active { + -gtk-icon-transform: rotate(90deg); +} + +treeview.view radio, treeview.view check, +columnview.view radio, +columnview.view check { + padding: 0; + margin: 0; + transition: none; +} + +treeview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), treeview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate), +columnview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), +columnview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate) { + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view radio, treeview.view radio:hover, treeview.view radio:disabled, treeview.view radio:checked:hover, treeview.view radio:indeterminate:hover, treeview.view check, treeview.view check:hover, treeview.view check:disabled, treeview.view check:checked:hover, treeview.view check:indeterminate:hover, +columnview.view radio, +columnview.view radio:hover, +columnview.view radio:disabled, +columnview.view radio:checked:hover, +columnview.view radio:indeterminate:hover, +columnview.view check, +columnview.view check:hover, +columnview.view check:disabled, +columnview.view check:checked:hover, +columnview.view check:indeterminate:hover { + box-shadow: none; +} + +treeview.view:hover check, treeview.view:hover radio, treeview.view:selected check, treeview.view:selected radio, treeview.view:focus check, treeview.view:focus radio, treeview.view:focus-within check, treeview.view:focus-within radio, +columnview.view:hover check, +columnview.view:hover radio, +columnview.view:selected check, +columnview.view:selected radio, +columnview.view:focus check, +columnview.view:focus radio, +columnview.view:focus-within check, +columnview.view:focus-within radio { + box-shadow: none; + background-color: transparent; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale slider { + min-height: 18px; + min-width: 18px; + margin: -8px; +} + +scale.fine-tune.horizontal { + min-height: 4px; + padding-top: 16px; + padding-bottom: 16px; +} + +scale.fine-tune.vertical { + min-width: 4px; + padding-left: 16px; + padding-right: 16px; +} + +scale.fine-tune slider { + margin: -7px; +} + +scale trough { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + background-color: rgba(255, 255, 255, 0.3); +} + +scale trough:disabled { + background-color: rgba(255, 255, 255, 0.12); +} + +scale highlight { + transition: background-image 0ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#5b9bf8); +} + +scale highlight:disabled { + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.3)); +} + +scale fill { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.3); +} + +scale fill:disabled { + background-color: transparent; +} + +scale slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #5b9bf8; + background-color: #2C2C2C; + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +scale slider:hover { + box-shadow: inset 0 0 0 2px #5b9bf8, 0 0 0 8px rgba(255, 255, 255, 0.12); +} + +scale slider:active { + box-shadow: inset 0 0 0 4px #5b9bf8, 0 0 0 8px rgba(255, 255, 255, 0.12); +} + +scale slider:disabled { + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3); +} + +scale marks, +scale value { + color: rgba(255, 255, 255, 0.7); +} + +scale indicator { + background-color: rgba(255, 255, 255, 0.3); + color: transparent; +} + +scale.horizontal > marks.top { + margin-bottom: 7px; + margin-top: -15px; +} + +scale.horizontal.fine-tune > marks.top { + margin-bottom: 6px; + margin-top: -14px; +} + +scale.horizontal > marks.bottom { + margin-top: 7px; + margin-bottom: -15px; +} + +scale.horizontal.fine-tune > marks.bottom { + margin-top: 6px; + margin-bottom: -14px; +} + +scale.vertical > marks.top { + margin-right: 7px; + margin-left: -15px; +} + +scale.vertical.fine-tune > marks.top { + margin-right: 6px; + margin-left: -14px; +} + +scale.vertical > marks.bottom { + margin-left: 7px; + margin-right: -15px; +} + +scale.vertical.fine-tune > marks.bottom { + margin-left: 6px; + margin-right: -14px; +} + +scale.horizontal indicator { + min-height: 8px; + min-width: 1px; +} + +scale.vertical indicator { + min-height: 1px; + min-width: 8px; +} + +scale.horizontal.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-before:not(.marks-after) slider, scale.horizontal.marks-before:not(.marks-after) slider:hover, scale.horizontal.marks-before:not(.marks-after) slider:active, scale.horizontal.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")); +} + +scale.horizontal.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-disabled-dark.png"), url("assets/scale-horz-marks-before-slider-disabled-dark@2.png")); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-after:not(.marks-before) slider, scale.horizontal.marks-after:not(.marks-before) slider:hover, scale.horizontal.marks-after:not(.marks-before) slider:active, scale.horizontal.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-disabled-dark.png"), url("assets/scale-horz-marks-after-slider-disabled-dark@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-before:not(.marks-after) slider, scale.vertical.marks-before:not(.marks-after) slider:hover, scale.vertical.marks-before:not(.marks-after) slider:active, scale.vertical.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-disabled-dark.png"), url("assets/scale-vert-marks-before-slider-disabled-dark@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-after:not(.marks-before) slider, scale.vertical.marks-after:not(.marks-before) slider:hover, scale.vertical.marks-after:not(.marks-before) slider:active, scale.vertical.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-disabled-dark.png"), url("assets/scale-vert-marks-after-slider-disabled-dark@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")); +} + +scale.color { + min-height: 0; + min-width: 0; +} + +scale.color.horizontal { + padding: 0 0 12px 0; +} + +scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl) { + margin-bottom: -13.5px; + margin-top: 11.5px; +} + +scale.color.vertical:dir(ltr) { + padding: 0 0 0 12px; +} + +scale.color.vertical:dir(ltr) slider { + margin-left: -13.5px; + margin-right: 11.5px; +} + +scale.color.vertical:dir(rtl) { + padding: 0 12px 0 0; +} + +scale.color.vertical:dir(rtl) slider { + margin-right: -13.5px; + margin-left: 11.5px; +} + +/***************** + * Progress bars * + *****************/ +progressbar { + color: rgba(255, 255, 255, 0.7); + font-size: smaller; +} + +progressbar.horizontal trough, +progressbar.horizontal progress { + min-height: 6px; +} + +progressbar.vertical trough, +progressbar.vertical progress { + min-width: 6px; +} + +progressbar trough { + border-radius: 6px; + background-color: rgba(255, 255, 255, 0.12); +} + +progressbar progress { + border-radius: 6px; + background-color: #5b9bf8; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #5b9bf8; +} + +progressbar trough.empty progress { + all: unset; +} + +/************* + * Level Bar * + *************/ +levelbar.horizontal block { + min-height: 6px; +} + +levelbar.horizontal.discrete block { + min-width: 36px; +} + +levelbar.horizontal.discrete block:not(:last-child) { + margin-right: 2px; +} + +levelbar.vertical block { + min-width: 6px; +} + +levelbar.vertical.discrete block { + min-height: 36px; +} + +levelbar.vertical.discrete block:not(:last-child) { + margin-bottom: 2px; +} + +levelbar trough { + border-radius: 6px; +} + +levelbar block.low { + background-color: #FDD633; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #5b9bf8; +} + +levelbar block.full { + background-color: #81C995; +} + +levelbar block.empty { + background-color: rgba(255, 255, 255, 0.12); +} + +/**************** + * Print dialog * +*****************/ +window.dialog.print drawing { + color: white; + background: none; + border: none; + padding: 0; +} + +window.dialog.print drawing paper { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + color: white; +} + +window.dialog.print .dialog-action-box { + margin: 12px; +} + +/********** + * Frames * + **********/ +frame, +.frame { + border: 1px solid rgba(255, 255, 255, 0.12); +} + +frame > list, +.frame > list { + border: none; +} + +frame.view, +.frame.view { + border-radius: 6px; +} + +frame.flat, +.frame.flat { + border-style: none; +} + +frame { + border-radius: 6px; +} + +frame > label { + margin: 4px; +} + +frame.flat > border, statusbar frame > border { + border: none; +} + +actionbar > revealer > box { + padding: 6px; + border-spacing: 6px; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; + border: none; +} + +.background.csd box.vertical > actionbar > revealer > box { + border-radius: 0 0 14px 14px; +} + +statusbar { + padding: 6px 18px; +} + +scrolledwindow viewport.frame { + border: none; +} + +stack scrolledwindow.frame viewport.frame list { + border: none; +} + +overshoot.top { + background-image: radial-gradient(farthest-side at top, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at top, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 100% 3%, 100% 50%; + background-repeat: no-repeat; + background-position: top; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.bottom { + background-image: radial-gradient(farthest-side at bottom, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at bottom, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 100% 3%, 100% 50%; + background-repeat: no-repeat; + background-position: bottom; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.left { + background-image: radial-gradient(farthest-side at left, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at left, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 3% 100%, 50% 100%; + background-repeat: no-repeat; + background-position: left; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.right { + background-image: radial-gradient(farthest-side at right, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at right, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 3% 100%, 50% 100%; + background-repeat: no-repeat; + background-position: right; + background-color: transparent; + border: none; + box-shadow: none; +} + +undershoot.top { + background-color: transparent; + background-image: linear-gradient(to left, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-top: 1px; + background-size: 12px 1px; + background-repeat: repeat-x; + background-origin: content-box; + background-position: left top; + margin: 0 4px; +} + +undershoot.bottom { + background-color: transparent; + background-image: linear-gradient(to left, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-bottom: 1px; + background-size: 12px 1px; + background-repeat: repeat-x; + background-origin: content-box; + background-position: left bottom; + margin: 0 4px; +} + +undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +junction { + border-style: solid none none solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +junction:dir(rtl) { + border-style: solid solid none none; +} + +separator { + min-width: 1px; + min-height: 1px; + background-color: rgba(255, 255, 255, 0.12); +} + +stacksidebar + separator.vertical, +stacksidebar separator.horizontal, button.font separator, button.file separator { + min-width: 0; + min-height: 0; + background-color: transparent; +} + +/********* + * Lists * + *********/ +listview.boxed-list, +list.boxed-list, listview.content:not(.conversation-listbox), +list.content:not(.conversation-listbox) { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(255, 255, 255, 0.12); +} + +listview.boxed-list > row.expander list > row, +list.boxed-list > row.expander list > row, listview.boxed-list > row, +list.boxed-list > row, listview.content:not(.conversation-listbox) > row, +list.content:not(.conversation-listbox) > row { + border-radius: 0; +} + +listview.boxed-list > row.expander list > row:first-child, +list.boxed-list > row.expander list > row:first-child, listview.boxed-list > row:first-child, +list.boxed-list > row:first-child, listview.content:not(.conversation-listbox) > row:first-child, +list.content:not(.conversation-listbox) > row:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +listview.boxed-list > row.expander list > row:last-child, +list.boxed-list > row.expander list > row:last-child, listview.boxed-list > row:last-child, +list.boxed-list > row:last-child, listview.content:not(.conversation-listbox) > row:last-child, +list.content:not(.conversation-listbox) > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +listview.boxed-list > row.expander list > row:only-child, +list.boxed-list > row.expander list > row:only-child, listview.boxed-list > row:only-child, +list.boxed-list > row:only-child, listview.content:not(.conversation-listbox) > row:only-child, +list.content:not(.conversation-listbox) > row:only-child { + border-radius: 6px; +} + +listview.boxed-list > row.expander list > row:focus, +list.boxed-list > row.expander list > row:focus, listview.boxed-list > row:focus, +list.boxed-list > row:focus, listview.content:not(.conversation-listbox) > row:focus, +list.content:not(.conversation-listbox) > row:focus { + box-shadow: inset 0 0 0 1000px alpha(currentColor, 0.08); +} + +listview, +list { + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +listview row, +list row { + padding: 6px; +} + +listview > row.expander, +list > row.expander { + padding: 0px; +} + +listview > row.expander .row-header, +list > row.expander .row-header { + padding: 2px; +} + +listview.boxed-list > row.expander list, +list.boxed-list > row.expander list { + background-color: transparent; + box-shadow: none; + border: none; +} + +list.frame { + border-radius: 6px; +} + +listview.view { + color: white; + background-color: transparent; +} + +popover.menu listview.view { + padding: 0; +} + +popover.menu listview.view > row { + margin-left: 0; + margin-right: 0; +} + +row { + color: rgba(255, 255, 255, 0.7); +} + +columnview.view > header > button, +treeview.view > header > button, row.activatable { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; +} + +columnview.view > header > button:focus, +treeview.view > header > button:focus, row.activatable:focus { + color: white; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +columnview.view > header > button:hover, +treeview.view > header > button:hover, row.activatable:hover { + color: white; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +columnview.view > header > button.has-open-popup, +treeview.view > header > button.has-open-popup, columnview.view > header > button:active, +treeview.view > header > button:active, row.activatable.has-open-popup, row.activatable:active { + color: white; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + +row:selected { + color: inherit; +} + +row:selected image, +row:selected label { + color: white; +} + +row:selected button image, +row:selected button label { + color: inherit; +} + +row:selected:disabled image, +row:selected:disabled label { + color: rgba(255, 255, 255, 0.5); +} + +treeexpander { + border-spacing: 6px; +} + +columnview row:not(:selected) cell editablelabel:not(.editing):focus-within { + outline: 2px solid alpha(currentColor, 0.06); +} + +columnview row:not(:selected) cell editablelabel.editing:focus-within { + outline: 2px solid #5b9bf8; +} + +columnview row:not(:selected) cell editablelabel.editing text selection { + color: white; + background-color: #5b9bf8; +} + +.rich-list { + /* rich lists usually containing other widgets than just labels/text */ +} + +.rich-list > row { + padding: 9px 12px; + min-height: 32px; + /* should be tall even when only containing a label */ +} + +.rich-list > row > box { + border-spacing: 12px; +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 8px; + border-spacing: 9px; + padding: 9px; + border: none; +} + +.app-notification button.text-button:not(:disabled) { + color: #5b9bf8; +} + +.app-notification.frame, +.app-notification border { + border-style: none; +} + +/************* + * Expanders * + *************/ +expander { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 16px; + min-height: 16px; + color: rgba(255, 255, 255, 0.7); + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); +} + +expander:dir(rtl) { + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); +} + +expander:hover, expander:active { + color: white; +} + +expander:disabled { + color: rgba(255, 255, 255, 0.3); +} + +expander-widget > box > title { + border-radius: 6px; +} + +expander-widget > box > title:hover > expander { + color: rgba(255, 255, 255, 0.7); +} + +.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 { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + border-radius: 6px; + color: white; +} + +calendar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +calendar:selected { + border-radius: 6px; +} + +calendar > header { + padding: 3px; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +calendar > header > button { + min-height: 24px; +} + +calendar > grid { + margin: 3px; +} + +calendar > grid > label { + border-radius: 9999px; + margin: 0; +} + +calendar > grid > label.today:selected { + box-shadow: none; +} + +calendar > grid > label:focus { + outline-style: none; +} + +calendar > grid > label.day-number { + padding: 9px; +} + +calendar > grid > label.day-number.other-month { + color: alpha(currentColor, 0.3); +} + +/*********** + * Dialogs * + ***********/ +window.dialog.message.background { + background-color: #3C3C3C; +} + +window.dialog.message box.dialog-vbox.vertical { + border-spacing: 10px; +} + +window.dialog.message .titlebar { + min-height: 24px; + border-style: none; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; + color: white; +} + +window.dialog.message .titlebar:backdrop { + background-color: #3C3C3C; + color: rgba(255, 255, 255, 0.7); +} + +window.dialog.message .dialog-action-area { + margin-top: -6px; +} + +window.dialog.message .dialog-action-area > button, window.dialog.message .dialog-action-area > button:first-child, window.dialog.message .dialog-action-area > button:last-child { + border-radius: 9999px; +} + +window.dialog.message .dialog-action-area > button:not(:last-child) { + margin-right: 6px; +} + +window.dialog.message .dialog-action-area > button:not(:disabled) { + color: #5b9bf8; +} + +window.dialog.message .dialog-action-area > button.destructive-action:not(:disabled) { + color: #F28B82; +} + +.csd filechooser { + background-color: #2C2C2C; + border-radius: 0 0 14px 14px; +} + +filechooser .dialog-action-box { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +filechooser #pathbarbox { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +filechooser stack.view { + background-color: transparent; +} + +filechooser stack.view scrolledwindow { + background-color: transparent; + border-radius: 0 0 14px 0; +} + +filechooser stack.view scrolledwindow list { + background-color: transparent; +} + +filechooser stack.view > placesview { + background-color: transparent; +} + +filechooser stack.view > placesview > actionbar, filechooser stack.view > placesview > actionbar > revealer > box { + background-color: transparent; +} + +filechooser stack.view frame > border { + border: none; +} + +.csd filechooser placessidebar { + background: none; + border-bottom-left-radius: 14px; +} + +filechooser actionbar, filechooser actionbar > revealer > box { + background-color: transparent; +} + +filechooserbutton > button > box { + border-spacing: 6px; +} + +filechooserbutton:drop(active) { + box-shadow: none; + border-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; + background-color: #242424; +} + +.sidebar:not(separator):dir(ltr), .sidebar:not(separator).left, .sidebar:not(separator).left:dir(rtl) { + border-right: 1px solid rgba(255, 255, 255, 0.12); + border-left-style: none; +} + +.sidebar:not(separator):dir(rtl), .sidebar:not(separator).right { + border-left: 1px solid rgba(255, 255, 255, 0.12); + 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 { + padding: 6px; + background-color: #242424; +} + +stacksidebar row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +stacksidebar row:selected { + background-color: alpha(currentColor, 0.06); + color: white; + font-weight: 500; +} + +stacksidebar row + row { + margin-top: 4px; +} + +stacksidebar row > label { + padding-left: 6px; + padding-right: 6px; + color: inherit; +} + +separator.sidebar { + background-color: rgba(255, 255, 255, 0.12); + border-right: none; +} + +separator.sidebar.selection-mode, .selection-mode separator.sidebar { + background-color: rgba(255, 255, 255, 0.15); +} + +/********************** + * Navigation Sidebar * + **********************/ +.navigation-sidebar { + padding: 6px; + border-right: none; +} + +.navigation-sidebar > row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +.navigation-sidebar > row:hover, .navigation-sidebar > row:focus-visible:focus-within { + background-color: alpha(currentColor, 0.08); +} + +.navigation-sidebar > row:selected { + background-color: alpha(currentColor, 0.06); + color: white; +} + +.navigation-sidebar > row:selected:hover { + background-color: alpha(currentColor, 0.16); +} + +.navigation-sidebar > row:selected:focus-visible:focus-within { + outline: none; + background-color: alpha(currentColor, 0.08); +} + +.navigation-sidebar > row:selected:focus-visible:focus-within:hover { + background-color: alpha(currentColor, 0.16); +} + +.navigation-sidebar > row:disabled { + color: rgba(255, 255, 255, 0.5); +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +row image.sidebar-icon:disabled { + color: rgba(255, 255, 255, 0.3); +} + +placessidebar > viewport.frame { + border-style: none; +} + +placessidebar list { + padding: 1px 0 4px; +} + +placessidebar .navigation-sidebar > row { + min-height: 32px; + margin: -1px 4px -1px 0; + padding: 0; + border-radius: 0 9999px 9999px 0; +} + +placessidebar .navigation-sidebar > row > revealer { + padding: 0 8px 0 16px; +} + +placessidebar .navigation-sidebar > row:selected { + background-color: alpha(currentColor, 0.06); + color: white; + font-weight: 500; +} + +placessidebar .navigation-sidebar > row:disabled { + color: rgba(255, 255, 255, 0.5); +} + +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 { + color: inherit; +} + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar .navigation-sidebar > row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row { + color: #5b9bf8; +} + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row image.sidebar-icon { + color: #5b9bf8; +} + +placessidebar .navigation-sidebar > row:drop(active) { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placesview .server-list-button > image { + transition: 200ms cubic-bezier(0, 0, 0.2, 1); + -gtk-icon-transform: rotate(0turn); +} + +placesview .server-list-button:checked > image { + transition: 200ms cubic-bezier(0, 0, 0.2, 1); + -gtk-icon-transform: rotate(-0.5turn); +} + +placesview > actionbar > revealer > box > label { + 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(rgba(255, 255, 255, 0.12)); + background-size: 1px 1px; + background-clip: content-box; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.12)), image(rgba(255, 255, 255, 0.12)); + 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; + border-radius: 6px; +} + +video image.osd { + min-width: 64px; + min-height: 64px; + border-radius: 9999px; + border: none; +} + +/************** + * GtkInfoBar * + **************/ +infobar { + border: none; + margin-bottom: 0; +} + +infobar > revealer > box { + padding: 6px; + border-spacing: 12px; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #2C2C2C; +} + +infobar.info > revealer > box button, infobar.info > revealer > box button.text-button:not(:disabled), infobar.info:hover > revealer > box button, infobar.info:hover > revealer > box button.text-button:not(:disabled), infobar.info:backdrop > revealer > box button, infobar.info:backdrop > revealer > box button.text-button:not(:disabled) { + color: #5b9bf8; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #5b9bf8; + color: white; +} + +infobar.action > revealer > box button, infobar.action > revealer > box button:hover, infobar.action > revealer > box button:focus, infobar.action > revealer > box button:active, infobar.action > revealer > box button:checked, infobar.action > revealer > box button.text-button:not(:disabled), infobar.action:backdrop > revealer > box button, infobar.action:backdrop > revealer > box button:hover, infobar.action:backdrop > revealer > box button:focus, infobar.action:backdrop > revealer > box button:active, infobar.action:backdrop > revealer > box button:checked, infobar.action:backdrop > revealer > box button.text-button:not(:disabled), infobar.question > revealer > box button, infobar.question > revealer > box button:hover, infobar.question > revealer > box button:focus, infobar.question > revealer > box button:active, infobar.question > revealer > box button:checked, infobar.question > revealer > box button.text-button:not(:disabled), infobar.question:backdrop > revealer > box button, infobar.question:backdrop > revealer > box button:hover, infobar.question:backdrop > revealer > box button:focus, infobar.question:backdrop > revealer > box button:active, infobar.question:backdrop > revealer > box button:checked, infobar.question:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: white; +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #438cf7; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #FDD633; + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box button, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked, infobar.warning > revealer > box button.text-button:not(:disabled), infobar.warning:backdrop > revealer > box button, infobar.warning:backdrop > revealer > box button:hover, infobar.warning:backdrop > revealer > box button:focus, infobar.warning:backdrop > revealer > box button:active, infobar.warning:backdrop > revealer > box button:checked, infobar.warning:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box *:link, infobar.warning:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning:hover > revealer > box { + background-color: #fdd11a; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box button, infobar.error > revealer > box button:hover, infobar.error > revealer > box button:focus, infobar.error > revealer > box button:active, infobar.error > revealer > box button:checked, infobar.error > revealer > box button.text-button:not(:disabled), infobar.error:backdrop > revealer > box button, infobar.error:backdrop > revealer > box button:hover, infobar.error:backdrop > revealer > box button:focus, infobar.error:backdrop > revealer > box button:active, infobar.error:backdrop > revealer > box button:checked, infobar.error:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error:hover > revealer > box { + background-color: #f0766b; +} + +/************ + * Tooltips * + ************/ +tooltip { + padding: 6px 12px; + box-shadow: none; + border: none; +} + +tooltip.background { + background-color: rgba(25, 25, 25, 0.9); + color: white; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12); + border-radius: 3px; + margin: 2px 6px 8px 6px; + border: none; +} + +tooltip > box { + border-spacing: 6px; +} + +/***************** + * Color Chooser * + *****************/ +colorswatch.top { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.top overlay { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.bottom { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.bottom overlay { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.left, colorswatch:first-child:not(.top) { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.left overlay, colorswatch:first-child:not(.top) overlay { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.right, colorswatch:last-child:not(.bottom) { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.dark { + color: white; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorchooser colorswatch:hover { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: 0 0 0 2px #5b9bf8; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; + color: white; +} + +colorswatch#add-color-button:only-child { + border-radius: 6px; +} + +colorswatch#add-color-button overlay { + background-color: rgba(255, 255, 255, 0.04); +} + +colorswatch#add-color-button overlay:hover { + background-color: rgba(255, 255, 255, 0.12); + box-shadow: none; +} + +colorswatch#add-color-button overlay:active { + background-color: rgba(255, 255, 255, 0.3); +} + +colorswatch:disabled { + opacity: 0.5; +} + +colorswatch:disabled overlay { + box-shadow: none; +} + +colorswatch#editor-color-sample { + border-radius: 6px; +} + +colorswatch#editor-color-sample overlay { + border-radius: 6px; +} + +colorswatch#editor-color-sample overlay:hover { + box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -0.6px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +/******** + * Misc * + ********/ +.content-view { + background-color: #2C2C2C; +} + +/********************** + * Window Decorations * + **********************/ +window.csd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 14px; + outline-color: rgba(255, 255, 255, 0.1); + outline-offset: -1px; + outline-style: solid; + outline-width: 1px; + box-shadow: 0 8px 6px -5px rgba(0, 0, 0, 0.2), 0 16px 15px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; +} + +window.csd:backdrop { + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; +} + +window.csd.popup { + border-radius: 12px; +} + +window.csd.dialog.message { + border-radius: 14px; +} + +.solid-csd window.csd { + margin: 0; + padding: 2px; + border-radius: 0; + background-color: #242424; + border: 1px solid #4b4b4b; +} + +.solid-csd window.csd:backdrop { + background-color: #2C2C2C; +} + +window.csd.maximized, window.csd.fullscreen, window.csd.tiled, window.csd.tiled-top, window.csd.tiled-right, window.csd.tiled-bottom, window.csd.tiled-left { + border-radius: 0; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action) { + min-height: 36px; + min-width: 36px; + padding: 0; + margin: 0 4px; +} + +windowcontrols button.minimize:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:not(.suggested-action):not(.destructive-action), windowcontrols button.close:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + background-color: "transparent"; +} + +windowcontrols button.minimize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.maximize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.close:not(.suggested-action):not(.destructive-action) image { + padding: 0; +} + +windowcontrols button.minimize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.close:hover:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.15); +} + +windowcontrols button.minimize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.close:active:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.2); +} + +windowcontrols button.minimize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.close:backdrop:not(.suggested-action):not(.destructive-action) { + opacity: 0.65; +} + +windowcontrols { + border-spacing: 6px; +} + +windowcontrols:not(.empty).start:dir(ltr), windowcontrols:not(.empty).end:dir(rtl) { + margin-right: 4px; + margin-left: 4px; +} + +windowcontrols:not(.empty).start:dir(rtl), windowcontrols:not(.empty).end:dir(ltr) { + margin-left: 4px; + margin-right: 4px; +} + +.view:selected, iconview:selected, gridview > child:selected, modelbutton.flat:selected, columnview.view:selected, +treeview.view:selected, row:selected, calendar:selected, calendar > grid > label.day-number:selected { + background-color: alpha(currentColor, 0.06); +} + +flowbox > flowboxchild:selected, calendar > grid > label.today { + color: #5b9bf8; + background-color: rgba(91, 155, 248, 0.2); +} + +textview text selection:focus, textview text selection, label > selection, +entry > text > selection, spinbutton:not(.vertical) > text > selection, spinbutton.vertical > text > selection, calendar > grid > label.today:selected { + color: white; + background-color: #5b9bf8; +} + +.monospace { + font-family: monospace; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #5b9bf8; + -gtk-icon-source: -gtk-recolor(url("assets/scalable/cursor-handle-symbolic.svg")); +} + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { + padding-top: 6px; +} + +shortcuts-section { + margin: 20px; +} + +.shortcuts-search-results { + margin: 20px; + border-spacing: 24px; +} + +shortcut { + border-spacing: 6px; +} + +shortcut > .keycap { + min-width: 12px; + min-height: 26px; + margin-top: 2px; + padding-bottom: 2px; + padding-left: 8px; + padding-right: 8px; + border: solid 1px rgba(255, 255, 255, 0.12); + border-radius: 7px; + box-shadow: inset 0 -2px rgba(255, 255, 255, 0.12); + background-color: #3C3C3C; + color: white; + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #5b9bf8; +} + +stackswitcher { + min-height: 0; + padding: 3px; + margin: 6px 0; + border-radius: 9px; + background-color: rgba(255, 255, 255, 0.04); + border: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + margin: 0 0; + background-color: transparent; + border-radius: 6px; + padding: 3px 10px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 100px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):focus:not(:hover):not(:checked) { + box-shadow: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +stackswitcher button.text-button { + min-width: 100px; +} + +stackswitcher button.circular, +stackswitcher button.text-button.circular { + min-width: 36px; + min-height: 36px; + padding: 0; +} + +/************* + * App Icons * + *************/ +.lowres-icon { + -gtk-icon-shadow: none; +} + +.icon-dropshadow { + -gtk-icon-shadow: none; +} + +/********* + * Emoji * + *********/ +popover.emoji-picker { + padding: 0; +} + +popover.emoji-picker > contents { + padding: 0; +} + +.emoji-searchbar { + padding: 6px; + border-spacing: 6px; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + background: none; +} + +.emoji-searchbar entry text { + background: none; + box-shadow: none; +} + +.emoji-toolbar { + padding: 0; + border-spacing: 3px; + border-top: 1px solid rgba(255, 255, 255, 0.12); + background: none; +} + +button.emoji-section { + margin: 0; + padding: 6px; + border-radius: 6px; +} + +button.emoji-section:checked { + color: #5b9bf8; +} + +popover.emoji-picker emoji { + font-size: x-large; + padding: 6px; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; +} + +popover.emoji-picker emoji:focus, popover.emoji-picker emoji:hover { + background: alpha(currentColor, 0.08); +} + +emoji-completion-row { + min-height: 28px; + padding: 0 12px; +} + +emoji-completion-row > box { + border-spacing: 6px; + padding: 2px 6px; +} + +emoji-completion-row:focus, emoji-completion-row:hover, +emoji-completion-row emoji:hover, emoji-completion-row emoji:focus { + background-color: alpha(currentColor, 0.08); + color: white; +} + +popover.entry-completion > contents { + padding: 0; +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color white; +/* +text color for entries, views and content in general */ +@define-color theme_text_color white; +/* +widget base background color */ +@define-color theme_bg_color #2C2C2C; +/* +text widgets and the like base background color */ +@define-color theme_base_color #2C2C2C; +/* +base background color of selections */ +@define-color theme_selected_bg_color #5b9bf8; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color white; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #2C2C2C; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color rgba(255, 255, 255, 0.5); +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #242424; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color white; +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color white; +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #2C2C2C; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #2C2C2C; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #5b9bf8; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color white; +/* +insensitive color on backdrop windows */ +@define-color unfocused_insensitive_color rgba(255, 255, 255, 0.5); +/* +widgets main borders color */ +@define-color borders rgba(255, 255, 255, 0.12); +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders rgba(255, 255, 255, 0.12); +/* +these are pretty self explicative */ +@define-color warning_color #FDD633; +@define-color error_color #F28B82; +@define-color success_color #81C995; +/* +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 white; +@define-color wm_unfocused_title rgba(255, 255, 255, 0.7); +@define-color wm_highlight rgba(255, 255, 255, 0.1); +@define-color wm_bg #242424; +@define-color wm_unfocused_bg #2C2C2C; +/* +FIXME this is really an API */ +@define-color content_view_bg #2C2C2C; +@define-color placeholder_text_color silver; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #2C2C2C; +@define-color budgie_tasklist_indicator_color white; +@define-color budgie_tasklist_indicator_color_active white; +@define-color budgie_tasklist_indicator_color_active_window #999999; +@define-color budgie_tasklist_indicator_color_attention #FDD633; +@define-color STRAWBERRY_100 #FF9262; +@define-color STRAWBERRY_300 #FF793E; +@define-color STRAWBERRY_500 #F15D22; +@define-color STRAWBERRY_700 #CF3B00; +@define-color STRAWBERRY_900 #AC1800; +@define-color ORANGE_100 #FFDB91; +@define-color ORANGE_300 #FFCA40; +@define-color ORANGE_500 #FAA41A; +@define-color ORANGE_700 #DE8800; +@define-color ORANGE_900 #C26C00; +@define-color BANANA_100 #FFFFA8; +@define-color BANANA_300 #FFFA7D; +@define-color BANANA_500 #FFCE51; +@define-color BANANA_700 #D1A023; +@define-color BANANA_900 #A27100; +@define-color LIME_100 #A2F3BE; +@define-color LIME_300 #8ADBA6; +@define-color LIME_500 #73C48F; +@define-color LIME_700 #479863; +@define-color LIME_900 #1C6D38; +@define-color BLUEBERRY_100 #94A6FF; +@define-color BLUEBERRY_300 #6A7CE0; +@define-color BLUEBERRY_500 #3F51B5; +@define-color BLUEBERRY_700 #213397; +@define-color BLUEBERRY_900 #031579; +@define-color GRAPE_100 #D25DE6; +@define-color GRAPE_300 #B84ACB; +@define-color GRAPE_500 #9C27B0; +@define-color GRAPE_700 #830E97; +@define-color GRAPE_900 #6A007E; +@define-color COCOA_100 #9F9792; +@define-color COCOA_300 #7B736E; +@define-color COCOA_500 #574F4A; +@define-color COCOA_700 #463E39; +@define-color COCOA_900 #342C27; +@define-color SILVER_100 #EEE; +@define-color SILVER_300 #CCC; +@define-color SILVER_500 #AAA; +@define-color SILVER_700 #888; +@define-color SILVER_900 #666; +@define-color SLATE_100 #888; +@define-color SLATE_300 #666; +@define-color SLATE_500 #444; +@define-color SLATE_700 #222; +@define-color SLATE_900 #111; +@define-color BLACK_100 #474341; +@define-color BLACK_300 #403C3A; +@define-color BLACK_500 #393634; +@define-color BLACK_700 #33302F; +@define-color BLACK_900 #2B2928; diff --git a/Cutefish-light/gtk-4.0/gtk.css b/Cutefish-light/gtk-4.0/gtk.css new file mode 100644 index 0000000..39ee1d1 --- /dev/null +++ b/Cutefish-light/gtk-4.0/gtk.css @@ -0,0 +1,4653 @@ +/*************** + * Base States * + ***************/ +.background { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +dnd { + color: rgba(0, 0, 0, 0.87); +} + +.normal-icons { + -gtk-icon-size: 16px; +} + +.large-icons { + -gtk-icon-size: 32px; +} + +spinner:disabled, +arrow:disabled, +scrollbar:disabled, +check:disabled, +radio:disabled, +treeview.expander:disabled { + -gtk-icon-filter: opacity(0.5); +} + +iconview, .view { + color: rgba(0, 0, 0, 0.87); +} + +iconview:disabled, .view:disabled { + color: rgba(0, 0, 0, 0.38); +} + +iconview:selected, .view:selected { + color: rgba(0, 0, 0, 0.87); +} + +textview text { + background-color: #FFFFFF; +} + +textview border { + background-color: #FAFAFA; + color: rgba(0, 0, 0, 0.6); +} + +iconview:hover, iconview:selected { + border-radius: 3px; +} + +rubberband, .content-view rubberband, .content-view columnview.view > rubberband, +.content-view treeview.view > rubberband, .content-view .rubberband, columnview.view > rubberband, .content-view columnview.view > .rubberband, +treeview.view > rubberband, +.content-view treeview.view > .rubberband, gridview > rubberband, flowbox > rubberband { + border: 1px solid #3c84f7; + background-color: rgba(60, 132, 247, 0.3); +} + +flowbox > flowboxchild { + padding: 4px; + border-radius: 6px; +} + +.content-view .tile:selected { + background-color: transparent; +} + +gridview > child { + padding: 3px; +} + +gridview > child:selected { + outline-color: alpha(currentColor, 0.06); +} + +gridview > child box { + border-spacing: 8px; + margin: 12px; +} + +coverflow cover { + color: rgba(0, 0, 0, 0.87); + background-color: #FFFFFF; + border: 1px solid black; +} + +label.separator { + color: rgba(0, 0, 0, 0.6); +} + +label:disabled { + color: rgba(0, 0, 0, 0.38); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; +} + +label.osd { + border-radius: 6px; + background-color: rgba(52, 52, 52, 0.9); + color: white; +} + +.dim-label { + color: rgba(0, 0, 0, 0.6); +} + +window.assistant .sidebar { + padding: 4px 0; +} + +window.assistant .sidebar label { + min-height: 36px; + padding: 0 12px; + color: rgba(0, 0, 0, 0.38); + font-weight: 500; +} + +window.assistant .sidebar label.highlight { + color: rgba(0, 0, 0, 0.87); +} + +.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: rgba(0, 0, 0, 0.87); + background-color: #FFFFFF; + background-clip: padding-box; + border-radius: 6px; + border: none; +} + +.osd { + padding: 6px; + margin: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12); +} + +.osd.circular { + border-radius: 9999px; +} + +/********************* + * 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; +} + +.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 { + font-weight: 400; + font-size: 9pt; +} + +.caption-heading { + font-weight: 700; + font-size: 9pt; +} + +/**************** + * Text Entries * + ****************/ +spinbutton.vertical, spinbutton:not(.vertical), +entry { + min-height: 36px; + padding: 0 8px; + border-spacing: 6px; + border-radius: 6px; + caret-color: currentColor; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.vertical:focus-within, spinbutton:focus-within:not(.vertical), +entry:focus-within { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #3c84f7; +} + +spinbutton.vertical:drop(active), spinbutton:drop(active):not(.vertical), +entry:drop(active) { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +spinbutton.vertical:disabled, spinbutton:disabled:not(.vertical), +entry:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.flat.vertical, spinbutton.flat:not(.vertical), +entry.flat { + min-height: 0; + padding: 2px; + border-radius: 0; + background-color: transparent; +} + +spinbutton.vertical image, spinbutton:not(.vertical) image, +entry image { + color: rgba(0, 0, 0, 0.6); +} + +spinbutton.vertical image:hover, spinbutton:not(.vertical) image:hover, spinbutton.vertical image:active, spinbutton:not(.vertical) image:active, +entry image:hover, +entry image:active { + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.vertical image:disabled, spinbutton:not(.vertical) image:disabled, +entry image:disabled { + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.vertical image.left, spinbutton:not(.vertical) image.left, +entry image.left { + margin-left: 2px; + margin-right: 6px; +} + +spinbutton.vertical image.right, spinbutton:not(.vertical) image.right, +entry image.right { + margin-left: 6px; + margin-right: 2px; +} + +spinbutton.vertical undershoot.left, spinbutton:not(.vertical) undershoot.left, +entry undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.vertical undershoot.right, spinbutton:not(.vertical) undershoot.right, +entry undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.error.vertical, spinbutton.error:not(.vertical), +entry.error { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.error.vertical:focus-within, spinbutton.error:focus-within:not(.vertical), +entry.error:focus-within { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #D93025; +} + +spinbutton.error.vertical:disabled, spinbutton.error:disabled:not(.vertical), +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.warning.vertical, spinbutton.warning:not(.vertical), +entry.warning { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.warning.vertical:focus-within, spinbutton.warning:focus-within:not(.vertical), +entry.warning:focus-within { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #F4B400; +} + +spinbutton.warning.vertical:disabled, spinbutton.warning:disabled:not(.vertical), +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.vertical > progress, spinbutton:not(.vertical) > progress, +spinbutton.vertical progress > trough > progress, +spinbutton:not(.vertical) progress > trough > progress, +entry > progress, +entry progress > trough > progress { + margin: 2px -8px; + border-bottom: 2px solid #3c84f7; + background-color: transparent; +} + +treeview entry.flat, treeview entry { + background-color: #FFFFFF; +} + +treeview entry.flat, treeview entry.flat:focus-within, treeview entry, treeview entry:focus-within { + border-image: none; + box-shadow: none; +} + +.entry-tag { + margin: 2px; + border-radius: 9999px; + box-shadow: none; + background-color: rgba(0, 0, 0, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +.entry-tag:hover { + background-image: image(alpha(currentColor, 0.08)); +} + +:dir(ltr) .entry-tag { + margin-left: 4px; + margin-right: 0; + padding-left: 12px; + padding-right: 8px; +} + +:dir(rtl) .entry-tag { + margin-left: 0; + margin-right: 4px; + padding-left: 8px; + padding-right: 12px; +} + +.entry-tag.button { + box-shadow: none; + background-color: transparent; +} + +.entry-tag.button:not(:hover):not(:active) { + color: rgba(0, 0, 0, 0.6); +} + +editablelabel > stack > text { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: radial-gradient(farthest-side, #3c84f7 0%, rgba(60, 132, 247, 0) 0%); + } + to { + background-image: radial-gradient(farthest-side, #3c84f7 95%, rgba(60, 132, 247, 0)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button, popover.background.touch-selection button, popover.background.magnifier button, headerbar.selection-mode button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +infobar.warning > revealer > box button:focus, popover.background.touch-selection button:focus, popover.background.magnifier button:focus, headerbar.selection-mode button:focus:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:hover, popover.background.touch-selection button:hover, popover.background.magnifier button:hover, headerbar.selection-mode button:hover:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:active, popover.background.touch-selection button:active, popover.background.magnifier button:active, headerbar.selection-mode button:active:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:checked, popover.background.touch-selection button:checked, popover.background.magnifier button:checked, headerbar.selection-mode button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +infobar.warning > revealer > box button:disabled, popover.background.touch-selection button:disabled, popover.background.magnifier button:disabled, headerbar.selection-mode button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +infobar.warning > revealer > box button:checked:disabled, popover.background.touch-selection button:checked:disabled, popover.background.magnifier button:checked:disabled, headerbar.selection-mode button:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:not(.suggested-action):not(.destructive-action), button { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +actionbar > revealer > box .linked > button:focus:not(.suggested-action):not(.destructive-action), button:focus { + box-shadow: 0 0 0 2px rgba(60, 132, 247, 0.35); +} + +actionbar > revealer > box .linked > button:hover:not(.suggested-action):not(.destructive-action), button:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +actionbar > revealer > box .linked > button:active:not(.suggested-action):not(.destructive-action), button:active { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + +actionbar > revealer > box .linked > button:disabled:not(.suggested-action):not(.destructive-action), button:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +actionbar > revealer > box .linked > button:checked:not(.suggested-action):not(.destructive-action), button:checked { + background-color: #3c84f7; + color: white; +} + +actionbar > revealer > box .linked > button:checked:hover:not(.suggested-action):not(.destructive-action), button:checked:hover { + box-shadow: inset 0 0 0 9999px transparent; +} + +actionbar > revealer > box .linked > button:checked:disabled:not(.suggested-action):not(.destructive-action), button:checked:disabled { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.1); + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +button { + min-height: 24px; + min-width: 16px; + padding: 6px 10px; + border-radius: 6px; + font-weight: 500; +} + +button:drop(active) { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placessidebar .navigation-sidebar > row button.sidebar-button, calendar > header > button, columnview.view > header > button button.circular, +treeview.view > header > button button.circular, row.activatable button.circular, scrollbar button, notebook > header > tabs > arrow, spinbutton.vertical > button, spinbutton:not(.vertical) > button, modelbutton.flat, filechooser #pathbarbox > stack > box > button, window.dialog.message .dialog-action-area > button, .app-notification button, actionbar > revealer > box button:not(.suggested-action):not(.destructive-action), popover.background.menu button, +popover.background button.model, headerbar button:not(.suggested-action):not(.destructive-action), .toolbar button, +toolbar button, dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child), button.flat { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: transparent; + color: rgba(0, 0, 0, 0.6); +} + +placessidebar .navigation-sidebar > row button.sidebar-button:focus, calendar > header > button:focus, columnview.view > header > button button.circular:focus, +treeview.view > header > button button.circular:focus, row.activatable button.circular:focus, scrollbar button:focus, notebook > header > tabs > arrow:focus, spinbutton.vertical > button:focus, spinbutton:not(.vertical) > button:focus, modelbutton.flat:focus, filechooser #pathbarbox > stack > box > button:focus, window.dialog.message .dialog-action-area > button:focus, .app-notification button:focus, actionbar > revealer > box button:focus:not(.suggested-action):not(.destructive-action), popover.background.menu button:focus, +popover.background button.model:focus, headerbar button:focus:not(.suggested-action):not(.destructive-action), .toolbar button:focus, +toolbar button:focus, dropdown > .linked:not(.vertical) > button:focus:not(:only-child), +combobox > .linked:not(.vertical) > button:focus:not(:only-child), button.flat:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +placessidebar .navigation-sidebar > row button.sidebar-button:hover, calendar > header > button:hover, columnview.view > header > button button.circular:hover, +treeview.view > header > button button.circular:hover, row.activatable button.circular:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, spinbutton.vertical > button:hover, spinbutton:not(.vertical) > button:hover, modelbutton.flat:hover, filechooser #pathbarbox > stack > box > button:hover, window.dialog.message .dialog-action-area > button:hover, .app-notification button:hover, actionbar > revealer > box button:hover:not(.suggested-action):not(.destructive-action), popover.background.menu button:hover, +popover.background button.model:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), .toolbar button:hover, +toolbar button:hover, dropdown > .linked:not(.vertical) > button:hover:not(:only-child), +combobox > .linked:not(.vertical) > button:hover:not(:only-child), button.flat:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +placessidebar .navigation-sidebar > row button.sidebar-button:active, calendar > header > button:active, columnview.view > header > button button.circular:active, +treeview.view > header > button button.circular:active, row.activatable button.circular:active, scrollbar button:active, notebook > header > tabs > arrow:active, spinbutton.vertical > button:active, spinbutton:not(.vertical) > button:active, modelbutton.flat:active, filechooser #pathbarbox > stack > box > button:active, window.dialog.message .dialog-action-area > button:active, .app-notification button:active, actionbar > revealer > box button:active:not(.suggested-action):not(.destructive-action), popover.background.menu button:active, +popover.background button.model:active, headerbar button:active:not(.suggested-action):not(.destructive-action), .toolbar button:active, +toolbar button:active, dropdown > .linked:not(.vertical) > button:active:not(:only-child), +combobox > .linked:not(.vertical) > button:active:not(:only-child), button.flat:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +placessidebar .navigation-sidebar > row button.sidebar-button:disabled, calendar > header > button:disabled, columnview.view > header > button button.circular:disabled, +treeview.view > header > button button.circular:disabled, row.activatable button.circular:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, spinbutton.vertical > button:disabled, spinbutton:not(.vertical) > button:disabled, modelbutton.flat:disabled, filechooser #pathbarbox > stack > box > button:disabled, window.dialog.message .dialog-action-area > button:disabled, .app-notification button:disabled, actionbar > revealer > box button:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:disabled, +popover.background button.model:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:disabled, +toolbar button:disabled, dropdown > .linked:not(.vertical) > button:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:disabled:not(:only-child), button.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(0, 0, 0, 0.26); +} + +filechooser #pathbarbox > stack > box > button:checked, window.dialog.message .dialog-action-area > button:checked, .app-notification button:checked, actionbar > revealer > box button:checked:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked, +popover.background button.model:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), .toolbar button:checked, +toolbar button:checked, dropdown > .linked:not(.vertical) > button:checked:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:not(:only-child), button.flat:checked, button.flat:checked:hover { + background-color: alpha(currentColor, 0.1); + color: rgba(0, 0, 0, 0.87); +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, window.dialog.message .dialog-action-area > button:checked:disabled, .app-notification button:checked:disabled, actionbar > revealer > box button:checked:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked:disabled, +popover.background button.model:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:checked:disabled, +toolbar button:checked:disabled, dropdown > .linked:not(.vertical) > button:checked:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(0, 0, 0, 0.38); +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.text-button.flat { + min-width: 48px; + padding-left: 8px; + padding-right: 8px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child) { + margin: 0 4px; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + border-radius: 6px; +} + +.linked:not(.vertical) > button.flat:focus, .linked.vertical > button.flat:focus { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +button.osd { + padding: 12px 16px; +} + +button.osd.image-button { + padding: 12px; +} + +button.osd:disabled { + opacity: 0; +} + +button.suggested-action { + background-color: #3c84f7; + color: white; + box-shadow: none; +} + +button.suggested-action:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(60, 132, 247, 0.2), 0 4px 3px 0 rgba(60, 132, 247, 0.14), 0 1px 6px 0 rgba(60, 132, 247, 0.12); +} + +button.suggested-action:checked { + background-color: #77a9f9; +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(60, 132, 247, 0.3), 0 2px 3px -1px rgba(60, 132, 247, 0.24), 0 2px 5px 0 rgba(60, 132, 247, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(60, 132, 247, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #3c84f7; +} + +button.suggested-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(0, 0, 0, 0.26); +} + +button.suggested-action.flat:checked { + background-color: rgba(60, 132, 247, 0.3); +} + +button.destructive-action { + background-color: #D93025; + color: white; + box-shadow: none; +} + +button.destructive-action:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(217, 48, 37, 0.2), 0 4px 3px 0 rgba(217, 48, 37, 0.14), 0 1px 6px 0 rgba(217, 48, 37, 0.12); +} + +button.destructive-action:checked { + background-color: #e46e66; +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(217, 48, 37, 0.3), 0 2px 3px -1px rgba(217, 48, 37, 0.24), 0 2px 5px 0 rgba(217, 48, 37, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(217, 48, 37, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #D93025; +} + +button.destructive-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(0, 0, 0, 0.26); +} + +button.destructive-action.flat:checked { + background-color: rgba(217, 48, 37, 0.3); +} + +stackswitcher > button > label { + margin: 0 -6px; + padding: 0 6px; +} + +stackswitcher > button > image { + margin: -3px -6px; + padding: 3px 6px; +} + +stackswitcher > button.needs-attention:checked > label, +stackswitcher > button.needs-attention:checked > image { + animation: none; + background-image: none; +} + +button.font > box, button.file > box { + border-spacing: 6px; +} + +button.font > box > box > label, button.file > box > box > label { + font-weight: bold; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action), filechooser #pathbarbox > stack > box > button, button.close, button.circular { + border-radius: 9999px; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, button.close label, button.circular label { + padding: 0; +} + +placessidebar .navigation-sidebar > row button.sidebar-button, notebook > header tab button.flat, popover.menu box.circular-buttons button.circular.image-button.model, spinbutton.vertical > button, spinbutton:not(.vertical) > button { + min-height: 24px; + min-width: 24px; + padding: 0; + border-radius: 9999px; +} + +stacksidebar row.needs-attention > label, stackswitcher > button.needs-attention > label, +stackswitcher > button.needs-attention > image { + animation: needs-attention 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-repeat: no-repeat; + background-position: right 3px; + background-size: 6px 6px; +} + +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; +} + +.linked:not(.vertical) > spinbutton.vertical, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry, .linked:not(.vertical) > button, .linked:not(.vertical) > button.image-button { + border-radius: 0; +} + +.linked:not(.vertical) > spinbutton.vertical:first-child, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child, .linked:not(.vertical) > button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.linked:not(.vertical) > spinbutton.vertical:last-child, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child, .linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > spinbutton.vertical:only-child, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child, .linked:not(.vertical) > button:only-child { + border-radius: 6px; +} + +.linked.vertical > spinbutton.vertical, .linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry, .linked.vertical > button, .linked.vertical > button.image-button { + border-radius: 0; +} + +.linked.vertical > spinbutton.vertical:first-child, .linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child, .linked.vertical > button:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > spinbutton.vertical:last-child, .linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child, .linked.vertical > button:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > spinbutton.vertical:only-child, .linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child, .linked.vertical > button:only-child { + border-radius: 6px; +} + +/* menu buttons */ +modelbutton.flat { + min-height: 28px; + padding: 0 9px; + border-radius: 6px; + color: rgba(0, 0, 0, 0.87); +} + +modelbutton.flat arrow.left { + -gtk-icon-source: -gtk-icontheme("go-previous-symbolic"); +} + +modelbutton.flat arrow.right { + -gtk-icon-source: -gtk-icontheme("go-next-symbolic"); +} + +button.color { + min-height: 24px; + min-width: 24px; + padding: 6px; +} + + +list > row button.image-button:not(.flat) { + background-color: transparent; + box-shadow: none; + border: none; +} + + +list > row button.image-button:not(.flat):hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + + +list > row button.image-button:not(.flat):active, +list > row button.image-button:not(.flat):checked { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + + +list > row button.image-button:not(.flat).suggested-action { + background-color: #3c84f7; + color: white; +} + + +list > row button.image-button:not(.flat).destructive-action { + background-color: #D93025; + color: white; +} + +/********* + * Links * + *********/ +link { + color: #2196F3; +} + +link:visited { + color: #9C27B0; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #2196F3; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #9C27B0; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton:not(.vertical) { + padding: 0; + border-spacing: 0; +} + +spinbutton:not(.vertical) > text { + min-width: 32px; + margin: 0; + padding-left: 12px; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +spinbutton:not(.vertical) > button { + border: solid 6px transparent; +} + +spinbutton:not(.vertical) > button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(0, 0, 0, 0.6); +} + +spinbutton:not(.vertical) > button.up:dir(ltr), spinbutton:not(.vertical) > button.down:dir(rtl) { + margin-left: -3px; +} + +spinbutton:not(.vertical) > button.up:dir(rtl), spinbutton:not(.vertical) > button.down:dir(ltr) { + margin-right: -3px; +} + +spinbutton.vertical { + padding: 0; +} + +spinbutton.vertical:disabled { + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.vertical > text { + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical > button { + padding: 0; + border: solid 6px transparent; +} + +spinbutton.vertical > button:focus:not(:hover):not(:active) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(0, 0, 0, 0.6); +} + +spinbutton.vertical > button.up { + margin: 0 3px; +} + +spinbutton.vertical > button.down { + margin: 0 3px; +} + +treeview spinbutton:not(.vertical), row spinbutton:not(.vertical) { + min-height: 0; + border-style: none; + border-radius: 0; +} + +treeview spinbutton:not(.vertical) > text, row 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 button.combo cellview:dir(ltr), +combobox button.combo cellview:dir(ltr) { + margin-left: -2px; +} + +dropdown button.combo cellview:dir(rtl), +combobox button.combo cellview:dir(rtl) { + margin-right: -2px; +} + +dropdown popover, +combobox popover { + margin-top: 4px; + padding: 0; +} + +dropdown popover listview, +combobox popover listview { + margin: 6px 0; +} + +dropdown popover listview > row, +combobox popover listview > row { + padding: 6px; +} + +dropdown popover listview > row:selected, +combobox popover listview > row:selected { + color: rgba(0, 0, 0, 0.87); + background-color: alpha(currentColor, 0.06); +} + +dropdown popover .dropdown-searchbar, +combobox popover .dropdown-searchbar { + padding: 6px; +} + +dropdown.linked button:nth-child(2):dir(ltr), +combobox.linked button:nth-child(2):dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +dropdown.linked button:nth-child(2):dir(rtl), +combobox.linked button:nth-child(2):dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child), +combobox > .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child):first-child, +combobox > .linked:not(.vertical) > entry:not(:only-child):first-child { + margin-right: -36px; + padding-right: 36px; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child):last-child, +combobox > .linked:not(.vertical) > entry:not(:only-child):last-child { + margin-left: -36px; + padding-left: 36px; +} + +dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child) { + min-height: 16px; + min-width: 16px; + margin: 6px; + padding: 4px; + border-radius: 6px; +} + +.linked:not(.vertical) > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.linked:not(.vertical) > combobox:not(:last-child) > box > button.combo { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.linked.vertical > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.linked.vertical > combobox:not(:last-child) > box > button.combo { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +button.combo:only-child { + border-radius: 6px; + font-weight: normal; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +button.combo:only-child:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +button.combo:only-child:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +button.combo:only-child:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +button.combo:only-child:checked { + background-color: alpha(currentColor, 0.1); + color: rgba(0, 0, 0, 0.87); +} + +button.combo:only-child:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +/************ + * Toolbars * + ************/ +.toolbar, +toolbar { + padding: 3px 6px; + background-color: #FFFFFF; + border-spacing: 6px; +} + +.osd .toolbar, .osd toolbar { + background-color: transparent; +} + +.app-notification, .toolbar.osd, +toolbar.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); + background-color: #FFFFFF; +} + +.app-notification:backdrop, .toolbar.osd:backdrop, +toolbar.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); +} + +.left.app-notification, .right.app-notification, .top.app-notification, .bottom.app-notification, .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; +} + +.bottom.app-notification, .toolbar.osd.bottom, +toolbar.osd.bottom { + box-shadow: none; + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.4)); +} + +.toolbar.horizontal > separator, +toolbar.horizontal > separator { + margin: 2px; +} + +.toolbar.vertical > separator, +toolbar.vertical > separator { + margin: 2px; +} + +.toolbar:not(.inline-toolbar):not(.osd) scale, +.toolbar:not(.inline-toolbar):not(.osd) entry, +.toolbar:not(.inline-toolbar):not(.osd) spinbutton, +.toolbar:not(.inline-toolbar):not(.osd) button, +toolbar:not(.inline-toolbar):not(.osd) scale, +toolbar:not(.inline-toolbar):not(.osd) entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton, +toolbar:not(.inline-toolbar):not(.osd) button { + margin: 2px; +} + +.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child) { + margin-left: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child) { + margin-right: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +.toolbar:not(.inline-toolbar):not(.osd) spinbutton button, +toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton button { + margin: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) switch, +toolbar:not(.inline-toolbar):not(.osd) switch { + margin: 8px 2px; +} + +.toolbar button { + margin: 1px; + border-radius: 3px; +} + +searchbar > revealer > box { + padding: 6px; + border-spacing: 6px; + border-style: solid; + border-width: 0 0 1px; + border-color: rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + background-clip: border-box; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.6); + border: none; +} + +headerbar .linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + border-radius: 6px; +} + +headerbar button:focus:not(.suggested-action):not(.destructive-action), headerbar button:hover:not(.suggested-action):not(.destructive-action), headerbar button:active:not(.suggested-action):not(.destructive-action), headerbar button:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.87); +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.26); +} + +headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action) { + background-color: transparent; + color: rgba(0, 0, 0, 0.38); +} + +headerbar button:backdrop:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.38); +} + +headerbar button:backdrop:focus:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:hover:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.6); +} + +headerbar button:backdrop:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.26); +} + +headerbar button:backdrop:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.6); +} + +headerbar button:backdrop:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.26); +} + +headerbar entry { + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +headerbar entry:disabled { + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +headerbar entry image { + color: rgba(0, 0, 0, 0.6); +} + +headerbar entry image:hover, headerbar entry image:active { + color: rgba(0, 0, 0, 0.87); +} + +headerbar entry image:disabled { + color: rgba(0, 0, 0, 0.38); +} + +headerbar { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(0, 0, 0, 0.12); + background-color: #FAFAFA; + color: rgba(0, 0, 0, 0.87); + min-height: 48px; + padding: 0 6px; +} + +headerbar:disabled { + color: rgba(0, 0, 0, 0.38); +} + +headerbar:backdrop { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.6); +} + +headerbar:backdrop:disabled { + color: rgba(0, 0, 0, 0.26); +} + +headerbar .title { + padding: 0 12px; + font-weight: bold; +} + +headerbar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +headerbar .subtitle, +headerbar .dim-label { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(0, 0, 0, 0.6); +} + +headerbar .subtitle:backdrop, +headerbar .dim-label:backdrop { + color: rgba(0, 0, 0, 0.38); +} + +headerbar .titlebar { + background-color: transparent; + box-shadow: none; +} + +headerbar headerbar + separator { + background-color: rgba(0, 0, 0, 0.12); +} + +box.vertical headerbar { + background-color: #FAFAFA; +} + +headerbar > windowhandle > box { + padding: 0 3px; +} + +headerbar > windowhandle > box, +headerbar > windowhandle > box > box.start, +headerbar > windowhandle > box > box.end { + border-spacing: 6px; +} + +headerbar entry, +headerbar spinbutton, +headerbar button, +headerbar stackswitcher { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar menubutton.popup { + margin-top: 0; + margin-bottom: 0; +} + +headerbar separator:not(.sidebar) { + margin-top: 12px; + margin-bottom: 12px; + background-color: rgba(0, 0, 0, 0.12); +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar spinbutton button { + margin-top: 0; + margin-bottom: 0; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +headerbar button.suggested-action:disabled, headerbar button.destructive-action:disabled { + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +headerbar.selection-mode { + transition: background-color 0.1ms 0ms, color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #3c84f7; + color: white; +} + +headerbar.selection-mode:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +headerbar.selection-mode .subtitle:link { + color: white; +} + +headerbar.selection-mode .selection-menu { + padding-left: 16px; + padding-right: 16px; +} + +headerbar.selection-mode .selection-menu .arrow { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +headerbar .selection-mode { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #3c84f7; +} + +headerbar.default-decoration { + min-height: 24px; + padding: 6px; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.15); +} + +headerbar.default-decoration windowcontrols button, +headerbar.default-decoration windowcontrols menubutton { + min-width: 16px; + min-height: 16px; + margin: 0; + padding: 0; +} + +headerbar.default-decoration windowcontrols menubutton button { + min-height: 20px; + min-width: 20px; + margin: 0; + padding: 4px; +} + +.solid-csd headerbar:dir(rtl), .solid-csd headerbar:dir(ltr) { + border-radius: 0; + box-shadow: none; +} + +window.devel headerbar.titlebar { + background: #FAFAFA cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, linear-gradient(to right, transparent 65%, rgba(60, 132, 247, 0.2)), linear-gradient(to top, #f2f2f2, #FAFAFA 3px, white); +} + +window.devel headerbar.titlebar:backdrop { + background: #FAFAFA cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, image(#FAFAFA); + /* background-color would flash */ +} + +viewswitcher { + margin: 0; +} + +viewswitcher.wide { + border-spacing: 3px; +} + +viewswitcher.narrow button.toggle { + border-radius: 0; + margin: 0; +} + +viewswitcher.narrow button.toggle:focus-within, viewswitcher.narrow button.toggle:focus { + box-shadow: none; +} + +viewswitcher button.toggle { + font-weight: bold; + padding: 0; +} + +viewswitcher button.toggle > stack > box.narrow { + font-size: 0.75rem; + padding-top: 6px; + padding-bottom: 4px; + border-spacing: 4px; +} + +viewswitcher button.toggle > stack > box.narrow > stack > label { + padding-left: 6px; + padding-right: 6px; +} + +viewswitcher button.toggle > stack > box.wide { + padding: 2px 12px; + border-spacing: 6px; +} + +viewswitcherbar actionbar > revealer > box { + padding: 0; +} + +viewswitchertitle viewswitcher { + margin-left: 12px; + margin-right: 12px; +} + +indicatorbin > indicator, indicatorbin > mask { + min-width: 6px; + min-height: 6px; + border-radius: 9999px; +} + +indicatorbin > indicator { + margin: 1px; + background-color: alpha(currentColor, 0.4); +} + +indicatorbin > indicator > label { + font-size: 0.6rem; + font-weight: bold; + padding: 1px 4px; + color: white; +} + +indicatorbin > mask { + padding: 1px; + background: black; +} + +indicatorbin.needs-attention > indicator { + background-color: #3c84f7; +} + +indicatorbin.needs-attention > indicator > label { + color: white; +} + +/************ + * Pathbars * + ************/ + +pathbar > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 6px; + background-color: alpha(currentColor, 0.08); +} + + +pathbar > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +pathbar > button:checked { + background-color: alpha(currentColor, 0.16); + color: rgba(0, 0, 0, 0.87); +} + + +pathbar > button label:not(:only-child):first-child { + margin-left: 0; +} + + +pathbar > button label:not(:only-child):last-child { + margin-right: 0; +} + + +pathbar > button.text-button { + min-width: 0; +} + + +pathbar > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +/************** + * Tree Views * + **************/ +columnview.view, +treeview.view { + border-left-color: #e0e0e0; + border-top-color: #e0e0e0; +} + +columnview.view:hover, columnview.view:selected, +treeview.view:hover, +treeview.view:selected { + border-radius: 0; + box-shadow: none; +} + +columnview.view.separator, +treeview.view.separator { + min-height: 5px; + color: rgba(0, 0, 0, 0.12); +} + +columnview.view:drop(active), +treeview.view:drop(active) { + box-shadow: none; +} + +columnview.view:drop(active).after, +treeview.view:drop(active).after { + border-top-style: none; +} + +columnview.view:drop(active).before, +treeview.view:drop(active).before { + border-bottom-style: none; +} + +columnview.view > dndtarget:drop(active), +treeview.view > dndtarget:drop(active) { + border-style: solid none; + border-width: 1px; + border-color: alpha(currentColor, 0.06); +} + +columnview.view > dndtarget:drop(active).after, +treeview.view > dndtarget:drop(active).after { + border-top-style: none; +} + +columnview.view > dndtarget:drop(active).before, +treeview.view > dndtarget:drop(active).before { + border-bottom-style: none; +} + +columnview.view.expander, +treeview.view.expander { + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); + color: rgba(0, 0, 0, 0.6); +} + +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: rgba(0, 0, 0, 0.87); +} + +columnview.view.expander:selected, +treeview.view.expander:selected { + color: rgba(0, 0, 0, 0.87); +} + +columnview.view.expander:selected:hover, +treeview.view.expander:selected:hover { + color: rgba(0, 0, 0, 0.87); +} + +columnview.view.expander:checked, +treeview.view.expander:checked { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +columnview.view.expander:disabled, +treeview.view.expander:disabled { + color: rgba(0, 0, 0, 0.26); +} + +columnview.view.progressbar, +treeview.view.progressbar { + border-bottom: 6px solid #3c84f7; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +columnview.view.progressbar:selected:hover, +treeview.view.progressbar:selected:hover { + box-shadow: none; +} + +columnview.view.trough, +treeview.view.trough { + border-bottom: 6px solid rgba(0, 0, 0, 0.12); + box-shadow: none; + background-color: transparent; + background-image: none; +} + +columnview.view.trough:selected:hover, +treeview.view.trough:selected:hover { + box-shadow: none; +} + +columnview.view > header > button, +treeview.view > header > button { + padding: 2px 6px; + border-style: none solid solid none; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.12); + border-radius: 0; + background-clip: border-box; +} + +columnview.view > header > button:not(:focus):not(:hover):not(:active), +treeview.view > header > button:not(:focus):not(:hover):not(:active) { + color: rgba(0, 0, 0, 0.6); +} + +columnview.view > header > button, columnview.view > header > button:disabled, +treeview.view > header > button, +treeview.view > header > button:disabled { + background-color: #FFFFFF; +} + +columnview.view > header > button:last-child, +treeview.view > header > button:last-child { + border-right-style: none; +} + +columnview.view button.dnd, +columnview.view header.button.dnd, +treeview.view button.dnd, +treeview.view header.button.dnd { + padding: 2px 6px; + border-style: none solid solid; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.12); + border-radius: 0; + box-shadow: none; + background-color: #FFFFFF; + background-clip: border-box; + color: #3c84f7; +} + +columnview.view acceleditor > label, +treeview.view acceleditor > label { + background-color: #3c84f7; +} + +/********* + * Menus * + *********/ +menubar { + padding: 0; + background-color: #FAFAFA; + color: rgba(0, 0, 0, 0.87); +} + +menubar:backdrop { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.6); +} + +.csd menubar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > item { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + padding: 4px 8px; + color: rgba(0, 0, 0, 0.6); +} + +menubar > item:selected { + transition: none; + background-color: alpha(currentColor, 0.1); + color: rgba(0, 0, 0, 0.87); +} + +menubar > item:disabled { + color: rgba(0, 0, 0, 0.26); +} + +menubar > item label:disabled { + color: inherit; +} + +menubar > item popover.menu popover.menu { + margin-left: 9px; +} + +menubar > item popover.menu.background popover.menu.background > contents { + margin: 0; + border-radius: 12px; +} + +/********************** + * Popover Base Menus * + **********************/ +popover.menu box.inline-buttons { + padding: 0 6px; +} + +popover.menu box.inline-buttons button.image-button.model { + min-height: 28px; + min-width: 28px; + padding: 0; + border: none; + outline: none; + transition: none; +} + +popover.menu box.inline-buttons button.image-button.model:selected { + background: image(alpha(currentColor, 0.06)); +} + +popover.menu box.circular-buttons { + padding: 6px; +} + +popover.menu box.circular-buttons button.circular.image-button.model { + padding: 6px; +} + +popover.menu box.circular-buttons button.circular.image-button.model:focus { + background-color: alpha(currentColor, 0.06); +} + +popover.menu.background separator { + margin: 6px 0; +} + +popover.menu arrow.left, +popover.menu radio.left, +popover.menu check.left { + margin-left: 0; + margin-right: 0; +} + +popover.menu arrow.right, +popover.menu radio.right, +popover.menu check.right { + margin-left: 0; + margin-right: 0; +} + +popover.menu modelbutton { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 22px; + min-width: 56px; + padding: 3px 9px; + color: rgba(0, 0, 0, 0.87); + font: initial; + text-shadow: none; + box-shadow: none; + background: none; +} + +popover.menu modelbutton:hover { + transition: none; + background-color: alpha(currentColor, 0.08); +} + +popover.menu modelbutton:disabled { + color: rgba(0, 0, 0, 0.38); +} + +popover.menu label.title { + font-weight: bold; + padding: 4px 26px; +} + +/************ + * Popovers * + ************/ +popover.background { + font: initial; +} + +popover.background, popover.background:backdrop { + background-color: transparent; +} + +popover.background > arrow, +popover.background > contents { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + background-color: #FFFFFF; + border-radius: 12px; + border: 1px solid rgba(255, 255, 255, 0.15); + background-clip: border-box; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.12), 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05); +} + +popover.background > arrow:backdrop, +popover.background > contents:backdrop { + box-shadow: 0 3px 2px -2px rgba(0, 0, 0, 0.05), 0 2px 3px -1px rgba(0, 0, 0, 0.06), 0 1px 4px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.12); +} + +popover.background > arrow { + border: 1px solid rgba(0, 0, 0, 0.12); +} + +popover.background > contents { + border: none; +} + +popover.background > contents > list, +popover.background > contents > .view, +popover.background > contents > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover.background > contents separator { + background-color: rgba(0, 0, 0, 0.12); + margin: 3px 0; +} + +popover.background > contents list separator { + margin: 0; +} + +popover.background .view:not(:selected), +popover.background toolbar { + background-color: #FFFFFF; +} + +popover.background .linked > button:not(.radio) { + background-color: transparent; + box-shadow: none; + border-radius: 6px; +} + +s +popover.background .linked > button:not(.radio):first-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):last-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):only-child { + border-radius: 6px; +} + +popover.background.menu button, +popover.background button.model { + min-height: 32px; + padding: 0 8px; + border-radius: 6px; +} + +.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: none; + box-shadow: none; +} + +magnifier { + background-color: #FFFFFF; +} + +/************* + * Notebooks * + *************/ +tabbar tab, notebook > header tab { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + min-height: 24px; + min-width: 24px; + padding: 3px 12px; + border: none; + outline: none; + background-clip: padding-box; + color: rgba(0, 0, 0, 0.6); + font-weight: 500; + border-radius: 6px; + background-image: none; + background-color: transparent; +} + +tabbar tab:hover, notebook > header tab:hover { + background-color: rgba(0, 0, 0, 0.04); + background-image: none; + color: rgba(0, 0, 0, 0.87); +} + +tabbar tab:disabled, notebook > header tab:disabled { + color: rgba(0, 0, 0, 0.26); +} + +tabbar tab:checked, notebook > header tab:checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: white; + color: rgba(0, 0, 0, 0.87); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); + background-image: none; +} + +tabbar tab:checked:disabled, notebook > header tab:checked:disabled { + color: rgba(0, 0, 0, 0.38); +} + +frame > paned > notebook > header, notebook.frame > header { + background-color: rgba(0, 0, 0, 0.04); +} + +notebook, notebook.frame { + background-color: #FFFFFF; + border-radius: 12px; +} + +notebook.frame frame > border { + border: none; + border-radius: 6px; +} + +notebook.frame frame > list row.activatable { + border-radius: 6px; +} + +notebook > header { + border: none; + background-color: rgba(0, 0, 0, 0.04); + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +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 { + padding-left: 4px; + padding-right: 4px; +} + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { + margin-left: 0; + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { + margin-right: 0; + -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 { + padding-top: 4px; + padding-bottom: 4px; +} + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { + margin-top: 0; + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { + margin-bottom: 0; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +notebook > header > tabs > arrow { + min-height: 16px; + min-width: 16px; + border-radius: 6px; +} + +notebook > header tab > box { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header tab > box:drop(active) { + background-color: rgba(0, 0, 0, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +notebook > header tab button.flat:last-child { + margin-left: 6px; + margin-right: -6px; +} + +notebook > header tab button.flat:first-child { + margin-left: -6px; + margin-right: 6px; +} + +notebook > header tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child { + margin-left: 0; +} + +notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child { + margin-right: 0; +} + +notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child { + margin-top: 0; +} + +notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child { + margin-bottom: 0; +} + +notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header > menubutton > button.image-button { + padding: 3px; + min-width: 24px; + min-height: 24px; + margin-left: 3px; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +tabbar .box { + min-height: 36px; + border-bottom: none; + background: none; +} + +tabbar scrolledwindow.pinned undershoot { + border: 0 solid rgba(0, 0, 0, 0.12); +} + +tabbar scrolledwindow.pinned:dir(rtl) undershoot.left { + border-left-width: 1px; +} + +tabbar scrolledwindow.pinned:dir(ltr) undershoot.right { + border-right-width: 1px; +} + +tabbar scrolledwindow.pinned tabbox > background:dir(ltr) { + box-shadow: inset -1px 0 rgba(0, 0, 0, 0.12); +} + +tabbar scrolledwindow.pinned tabbox > background:dir(rtl) { + box-shadow: inset 1px 0 rgba(0, 0, 0, 0.12); +} + +tabbar undershoot { + transition: background 150ms ease-in-out; +} + +tabbar undershoot.left { + background: linear-gradient(to right, #FFFFFF, rgba(0, 0, 0, 0) 20px); +} + +tabbar undershoot.right { + background: linear-gradient(to left, #FFFFFF, rgba(0, 0, 0, 0) 20px); +} + +tabbar .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#3c84f7, 0.5), alpha(#3c84f7, 0.3) 1px, alpha(#3c84f7, 0) 20px); +} + +tabbar .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#3c84f7, 0.5), alpha(#3c84f7, 0.3) 1px, alpha(#3c84f7, 0) 20px); +} + +tabbar tabbox { + background-color: rgba(0, 0, 0, 0.04); + background-image: none; + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +tabbar tabbox > background { + background: none; +} + +tabbar tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#3c84f7, 0.4) 10%, alpha(#3c84f7, 0) 30%); +} + +tabbar tab.needs-attention:hover { + background-image: image(alpha(currentColor, 0.03)), radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#3c84f7, 0.4) 10%, alpha(#3c84f7, 0) 30%); +} + +tabbar .start-action, +tabbar .end-action { + background-color: rgba(0, 0, 0, 0.04); + background-clip: padding-box; + border-color: rgba(0, 0, 0, 0.12); + border-style: solid; + transition: background 150ms ease-in-out; +} + +tabbar .start-action button, +tabbar .end-action button { + border: none; + border-radius: 0; +} + +tabbar .start-action:dir(ltr), +tabbar .end-action:dir(rtl) { + border-right-width: 1px; +} + +tabbar .start-action:dir(rtl), +tabbar .end-action:dir(ltr) { + border-left-width: 1px; +} + +tabbar:not(.inline) scrolledwindow.pinned undershoot { + border-color: rgba(0, 0, 0, 0.12); +} + +tabbar:not(.inline) undershoot.left { + background: linear-gradient(to right, #FAFAFA, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) undershoot.right { + background: linear-gradient(to left, #FAFAFA, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#3c84f7, 0.5), alpha(#3c84f7, 0.3) 1px, alpha(#3c84f7, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#3c84f7, 0.5), alpha(#3c84f7, 0.3) 1px, alpha(#3c84f7, 0) 20px); +} + +tabbar:not(.inline) tabbox > background { + background-color: #FAFAFA; +} + +tabbar:not(.inline) .start-action, +tabbar:not(.inline) .end-action { + background-color: alpha(#FAFAFA, 0.6); + border-color: rgba(0, 0, 0, 0.12); +} + +tabbar:not(.inline):backdrop .box { + background-color: #FFFFFF; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +dnd tab { + min-height: 24px; + background-color: #FAFAFA; + color: rgba(0, 0, 0, 0.87); + box-shadow: 0 1px 5px 1px rgba(0, 0, 0, 0.09), 0 2px 14px 3px rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.05); + outline: 1px solid rgba(0, 0, 0, 0.12); + outline-offset: -1px; + margin: 24px; +} + +dnd tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#3c84f7, 0.4) 10%, alpha(#3c84f7, 0) 30%); +} + +tabbar tab, +dnd tab { + padding: 6px; +} + +tabbar tab button.image-button, +dnd tab button.image-button { + padding: 0; + margin: 0; + min-width: 24px; + min-height: 24px; + border-radius: 9999px; +} + +tabview:drop(active), +tabbox:drop(active) { + box-shadow: none; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #FFFFFF; + box-shadow: none; + outline: none; +} + +scrollbar.top { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar.bottom { + border-top: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar.left { + border-right: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar.right { + border-left: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar > range > trough > slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 8px; + min-height: 8px; + border: 4px solid transparent; + border-radius: 9999px; + background-clip: padding-box; + background-color: rgba(0, 0, 0, 0.38); + box-shadow: none; + outline: none; +} + +scrollbar > range > trough > slider:hover { + background-color: rgba(0, 0, 0, 0.6); +} + +scrollbar > range > trough > slider:active { + background-color: rgba(0, 0, 0, 0.87); +} + +scrollbar > range > trough > slider:disabled { + background-color: rgba(0, 0, 0, 0.26); +} + +scrollbar > range.fine-tune > trough > slider { + min-width: 4px; + min-height: 4px; +} + +scrollbar > range.fine-tune.horizontal > trough > slider { + margin: 2px 0; +} + +scrollbar > range.fine-tune.vertical > trough > slider { + margin: 0 2px; +} + +scrollbar.overlay-indicator:not(.fine-tune) > range > trough > slider { + transition-property: background-color, min-height, min-width; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { + border-color: transparent; + background-color: transparent; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) > range > trough > slider { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(255, 255, 255, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(255, 255, 255, 0.3); + border-radius: 9999px; + background-color: rgba(0, 0, 0, 0.38); + background-clip: padding-box; + -gtk-icon-source: none; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button:disabled { + background-color: rgba(0, 0, 0, 0.26); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal > range > trough > slider { + min-width: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { + min-width: 8px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical > range > trough > slider { + min-height: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { + min-height: 8px; +} + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { + background-color: rgba(255, 255, 255, 0.9); +} + +scrollbar.horizontal > range > trough > slider { + min-width: 24px; +} + +scrollbar.vertical > range > trough > slider { + min-height: 24px; +} + +scrollbar button { + min-width: 16px; + min-height: 16px; + padding: 0; + border-radius: 0; +} + +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"); +} + +/********** + * Switch * + **********/ +switch { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + margin: 6px 0; + padding: 0; + border: none; + border-radius: 9999px; + background-color: rgba(0, 0, 0, 0.38); + background-clip: border-box; + font-size: 0; + color: transparent; +} + +switch:checked { + background-color: #3c84f7; +} + +switch:disabled { + opacity: 0.5; +} + +switch image { + margin: -8px; +} + +switch > slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 20px; + min-height: 20px; + margin: 1px; + border-radius: 9999px; + outline: none; + box-shadow: none; + background-color: white; + border: none; +} + +switch:focus slider, switch:hover slider, switch:focus:hover slider { + box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.12); +} + +/************************* + * Check and Radio items * + *************************/ +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + min-height: 40px; + min-width: 40px; + margin: 0; + padding: 0; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +.view.content-view.check:not(list):hover, .view.content-view.check:not(list):active, +.content-view .tile check:not(list):hover, +.content-view .tile check:not(list):active { + box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.12); +} + +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-unchecked.png"), url("assets/selectionmode-checkbox-unchecked@2.png")); +} + +.view.content-view.check:not(list):checked, +.content-view .tile check:not(list):checked { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-checked.png"), url("assets/selectionmode-checkbox-checked@2.png")); +} + +checkbutton, +radiobutton { + outline: none; + border-spacing: 3px; +} + +check, +radio { + min-height: 20px; + min-width: 20px; + margin: 3px; + padding: 0; + border-radius: 9999px; + color: transparent; + background-color: rgba(0, 0, 0, 0.12); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +check:hover, +radio:hover { + box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.04); + background-color: rgba(0, 0, 0, 0.15); +} + +check:active, +radio:active { + box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.12); + background-color: rgba(0, 0, 0, 0.2); +} + +check:disabled, +radio:disabled { + background-color: rgba(0, 0, 0, 0.04); +} + +check:checked, check:indeterminate, +radio:checked, +radio:indeterminate { + color: white; + background-color: #3c84f7; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(60, 132, 247, 0.15); + background-color: #6da3f9; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(60, 132, 247, 0.2); + background-color: #3c84f7; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(255, 255, 255, 0.7); + background-color: rgba(60, 132, 247, 0.35); +} + +popover modelbutton.flat check, popover modelbutton.flat check:focus, popover modelbutton.flat check:hover, popover modelbutton.flat check:focus:hover, popover modelbutton.flat check:active, popover modelbutton.flat check:disabled, popover modelbutton.flat radio, popover modelbutton.flat radio:focus, popover modelbutton.flat radio:hover, popover modelbutton.flat radio:focus:hover, popover modelbutton.flat radio:active, popover modelbutton.flat radio:disabled { + transition: none; + box-shadow: none; + background-image: none; +} + +popover modelbutton.flat check.left:dir(rtl), popover modelbutton.flat radio.left:dir(rtl) { + margin-left: -3px; + margin-right: 6px; +} + +popover modelbutton.flat check.right:dir(ltr), popover modelbutton.flat radio.right:dir(ltr) { + margin-left: 6px; + margin-right: -3px; +} + +popover.menu check, popover.menu radio { + transition: none; + margin: 0; + padding: 0; +} + +popover.menu check:dir(ltr), popover.menu radio:dir(ltr) { + margin-right: 6px; + margin-left: -3px; +} + +popover.menu check:dir(rtl), popover.menu radio:dir(rtl) { + margin-left: 6px; + margin-right: -3px; +} + +popover.menu check, popover.menu check:hover, popover.menu check:disabled, popover.menu check:checked:hover, popover.menu check:indeterminate:hover, popover.menu radio, popover.menu radio:hover, popover.menu radio:disabled, popover.menu radio:checked:hover, popover.menu radio:indeterminate:hover { + box-shadow: none; +} + + +check { + -gtk-icon-size: 20px; +} + + +check:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-checked-symbolic@2.svg"))); +} + + +check:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic@2.svg"))); +} + + +radio { + -gtk-icon-size: 20px; +} + + +radio:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-checked-symbolic@2.svg"))); +} + + +radio:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-mixed-symbolic@2.svg"))); +} + + +popover.menu check { + min-height: 16px; + min-width: 16px; + -gtk-icon-size: 16px; +} + + +popover.menu check:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic@2.svg"))); +} + + +popover.menu check:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic@2.svg"))); +} + + +popover.menu radio { + min-height: 16px; + min-width: 16px; + -gtk-icon-size: 16px; +} + + +popover.menu radio:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-checked-symbolic@2.svg"))); +} + + +popover.menu radio:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic@2.svg"))); +} + +check:not(:checked):active { + -gtk-icon-transform: rotate(90deg); +} + +treeview.view radio, treeview.view check, +columnview.view radio, +columnview.view check { + padding: 0; + margin: 0; + transition: none; +} + +treeview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), treeview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate), +columnview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), +columnview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate) { + background-color: rgba(0, 0, 0, 0.12); +} + +treeview.view radio, treeview.view radio:hover, treeview.view radio:disabled, treeview.view radio:checked:hover, treeview.view radio:indeterminate:hover, treeview.view check, treeview.view check:hover, treeview.view check:disabled, treeview.view check:checked:hover, treeview.view check:indeterminate:hover, +columnview.view radio, +columnview.view radio:hover, +columnview.view radio:disabled, +columnview.view radio:checked:hover, +columnview.view radio:indeterminate:hover, +columnview.view check, +columnview.view check:hover, +columnview.view check:disabled, +columnview.view check:checked:hover, +columnview.view check:indeterminate:hover { + box-shadow: none; +} + +treeview.view:hover check, treeview.view:hover radio, treeview.view:selected check, treeview.view:selected radio, treeview.view:focus check, treeview.view:focus radio, treeview.view:focus-within check, treeview.view:focus-within radio, +columnview.view:hover check, +columnview.view:hover radio, +columnview.view:selected check, +columnview.view:selected radio, +columnview.view:focus check, +columnview.view:focus radio, +columnview.view:focus-within check, +columnview.view:focus-within radio { + box-shadow: none; + background-color: transparent; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale slider { + min-height: 18px; + min-width: 18px; + margin: -8px; +} + +scale.fine-tune.horizontal { + min-height: 4px; + padding-top: 16px; + padding-bottom: 16px; +} + +scale.fine-tune.vertical { + min-width: 4px; + padding-left: 16px; + padding-right: 16px; +} + +scale.fine-tune slider { + margin: -7px; +} + +scale trough { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + background-color: rgba(0, 0, 0, 0.26); +} + +scale trough:disabled { + background-color: rgba(0, 0, 0, 0.12); +} + +scale highlight { + transition: background-image 0ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#3c84f7); +} + +scale highlight:disabled { + background-color: #FFFFFF; + background-image: image(rgba(0, 0, 0, 0.26)); +} + +scale fill { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(0, 0, 0, 0.26); +} + +scale fill:disabled { + background-color: transparent; +} + +scale slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #3c84f7; + background-color: #FFFFFF; + box-shadow: inset 0 0 0 2px #3c84f7; +} + +scale slider:hover { + box-shadow: inset 0 0 0 2px #3c84f7, 0 0 0 8px rgba(0, 0, 0, 0.12); +} + +scale slider:active { + box-shadow: inset 0 0 0 4px #3c84f7, 0 0 0 8px rgba(0, 0, 0, 0.12); +} + +scale slider:disabled { + box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.26); +} + +scale marks, +scale value { + color: rgba(0, 0, 0, 0.6); +} + +scale indicator { + background-color: rgba(0, 0, 0, 0.26); + color: transparent; +} + +scale.horizontal > marks.top { + margin-bottom: 7px; + margin-top: -15px; +} + +scale.horizontal.fine-tune > marks.top { + margin-bottom: 6px; + margin-top: -14px; +} + +scale.horizontal > marks.bottom { + margin-top: 7px; + margin-bottom: -15px; +} + +scale.horizontal.fine-tune > marks.bottom { + margin-top: 6px; + margin-bottom: -14px; +} + +scale.vertical > marks.top { + margin-right: 7px; + margin-left: -15px; +} + +scale.vertical.fine-tune > marks.top { + margin-right: 6px; + margin-left: -14px; +} + +scale.vertical > marks.bottom { + margin-left: 7px; + margin-right: -15px; +} + +scale.vertical.fine-tune > marks.bottom { + margin-left: 6px; + margin-right: -14px; +} + +scale.horizontal indicator { + min-height: 8px; + min-width: 1px; +} + +scale.vertical indicator { + min-height: 1px; + min-width: 8px; +} + +scale.horizontal.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-before:not(.marks-after) slider, scale.horizontal.marks-before:not(.marks-after) slider:hover, scale.horizontal.marks-before:not(.marks-after) slider:active, scale.horizontal.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider.png"), url("assets/scale-horz-marks-before-slider@2.png")); +} + +scale.horizontal.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-disabled.png"), url("assets/scale-horz-marks-before-slider-disabled@2.png")); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider.png"), url("assets/scale-horz-marks-before-slider@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-after:not(.marks-before) slider, scale.horizontal.marks-after:not(.marks-before) slider:hover, scale.horizontal.marks-after:not(.marks-before) slider:active, scale.horizontal.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider.png"), url("assets/scale-horz-marks-after-slider@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-disabled.png"), url("assets/scale-horz-marks-after-slider-disabled@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider.png"), url("assets/scale-horz-marks-after-slider@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-before:not(.marks-after) slider, scale.vertical.marks-before:not(.marks-after) slider:hover, scale.vertical.marks-before:not(.marks-after) slider:active, scale.vertical.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider.png"), url("assets/scale-vert-marks-before-slider@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-disabled.png"), url("assets/scale-vert-marks-before-slider-disabled@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider.png"), url("assets/scale-vert-marks-before-slider@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-after:not(.marks-before) slider, scale.vertical.marks-after:not(.marks-before) slider:hover, scale.vertical.marks-after:not(.marks-before) slider:active, scale.vertical.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider.png"), url("assets/scale-vert-marks-after-slider@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-disabled.png"), url("assets/scale-vert-marks-after-slider-disabled@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider.png"), url("assets/scale-vert-marks-after-slider@2.png")); +} + +scale.color { + min-height: 0; + min-width: 0; +} + +scale.color.horizontal { + padding: 0 0 12px 0; +} + +scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl) { + margin-bottom: -13.5px; + margin-top: 11.5px; +} + +scale.color.vertical:dir(ltr) { + padding: 0 0 0 12px; +} + +scale.color.vertical:dir(ltr) slider { + margin-left: -13.5px; + margin-right: 11.5px; +} + +scale.color.vertical:dir(rtl) { + padding: 0 12px 0 0; +} + +scale.color.vertical:dir(rtl) slider { + margin-right: -13.5px; + margin-left: 11.5px; +} + +/***************** + * Progress bars * + *****************/ +progressbar { + color: rgba(0, 0, 0, 0.6); + font-size: smaller; +} + +progressbar.horizontal trough, +progressbar.horizontal progress { + min-height: 6px; +} + +progressbar.vertical trough, +progressbar.vertical progress { + min-width: 6px; +} + +progressbar trough { + border-radius: 6px; + background-color: rgba(0, 0, 0, 0.12); +} + +progressbar progress { + border-radius: 6px; + background-color: #3c84f7; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #3c84f7; +} + +progressbar trough.empty progress { + all: unset; +} + +/************* + * Level Bar * + *************/ +levelbar.horizontal block { + min-height: 6px; +} + +levelbar.horizontal.discrete block { + min-width: 36px; +} + +levelbar.horizontal.discrete block:not(:last-child) { + margin-right: 2px; +} + +levelbar.vertical block { + min-width: 6px; +} + +levelbar.vertical.discrete block { + min-height: 36px; +} + +levelbar.vertical.discrete block:not(:last-child) { + margin-bottom: 2px; +} + +levelbar trough { + border-radius: 6px; +} + +levelbar block.low { + background-color: #F4B400; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #3c84f7; +} + +levelbar block.full { + background-color: #0F9D58; +} + +levelbar block.empty { + background-color: rgba(0, 0, 0, 0.12); +} + +/**************** + * Print dialog * +*****************/ +window.dialog.print drawing { + color: rgba(0, 0, 0, 0.87); + background: none; + border: none; + padding: 0; +} + +window.dialog.print drawing paper { + padding: 0; + border: 1px solid rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +window.dialog.print .dialog-action-box { + margin: 12px; +} + +/********** + * Frames * + **********/ +frame, +.frame { + border: 1px solid rgba(0, 0, 0, 0.12); +} + +frame > list, +.frame > list { + border: none; +} + +frame.view, +.frame.view { + border-radius: 6px; +} + +frame.flat, +.frame.flat { + border-style: none; +} + +frame { + border-radius: 6px; +} + +frame > label { + margin: 4px; +} + +frame.flat > border, statusbar frame > border { + border: none; +} + +actionbar > revealer > box { + padding: 6px; + border-spacing: 6px; + box-shadow: inset 0 1px rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + background-clip: border-box; + border: none; +} + +.background.csd box.vertical > actionbar > revealer > box { + border-radius: 0 0 14px 14px; +} + +statusbar { + padding: 6px 18px; +} + +scrolledwindow viewport.frame { + border: none; +} + +stack scrolledwindow.frame viewport.frame list { + border: none; +} + +overshoot.top { + background-image: radial-gradient(farthest-side at top, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at top, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 100% 3%, 100% 50%; + background-repeat: no-repeat; + background-position: top; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.bottom { + background-image: radial-gradient(farthest-side at bottom, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at bottom, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 100% 3%, 100% 50%; + background-repeat: no-repeat; + background-position: bottom; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.left { + background-image: radial-gradient(farthest-side at left, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at left, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 3% 100%, 50% 100%; + background-repeat: no-repeat; + background-position: left; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.right { + background-image: radial-gradient(farthest-side at right, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at right, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 3% 100%, 50% 100%; + background-repeat: no-repeat; + background-position: right; + background-color: transparent; + border: none; + box-shadow: none; +} + +undershoot.top { + background-color: transparent; + background-image: linear-gradient(to left, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-top: 1px; + background-size: 12px 1px; + background-repeat: repeat-x; + background-origin: content-box; + background-position: left top; + margin: 0 4px; +} + +undershoot.bottom { + background-color: transparent; + background-image: linear-gradient(to left, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-bottom: 1px; + background-size: 12px 1px; + background-repeat: repeat-x; + background-origin: content-box; + background-position: left bottom; + margin: 0 4px; +} + +undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +junction { + border-style: solid none none solid; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; +} + +junction:dir(rtl) { + border-style: solid solid none none; +} + +separator { + min-width: 1px; + min-height: 1px; + background-color: rgba(0, 0, 0, 0.12); +} + +stacksidebar + separator.vertical, +stacksidebar separator.horizontal, button.font separator, button.file separator { + min-width: 0; + min-height: 0; + background-color: transparent; +} + +/********* + * Lists * + *********/ +listview.boxed-list, +list.boxed-list, listview.content:not(.conversation-listbox), +list.content:not(.conversation-listbox) { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(0, 0, 0, 0.12); +} + +listview.boxed-list > row.expander list > row, +list.boxed-list > row.expander list > row, listview.boxed-list > row, +list.boxed-list > row, listview.content:not(.conversation-listbox) > row, +list.content:not(.conversation-listbox) > row { + border-radius: 0; +} + +listview.boxed-list > row.expander list > row:first-child, +list.boxed-list > row.expander list > row:first-child, listview.boxed-list > row:first-child, +list.boxed-list > row:first-child, listview.content:not(.conversation-listbox) > row:first-child, +list.content:not(.conversation-listbox) > row:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +listview.boxed-list > row.expander list > row:last-child, +list.boxed-list > row.expander list > row:last-child, listview.boxed-list > row:last-child, +list.boxed-list > row:last-child, listview.content:not(.conversation-listbox) > row:last-child, +list.content:not(.conversation-listbox) > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +listview.boxed-list > row.expander list > row:only-child, +list.boxed-list > row.expander list > row:only-child, listview.boxed-list > row:only-child, +list.boxed-list > row:only-child, listview.content:not(.conversation-listbox) > row:only-child, +list.content:not(.conversation-listbox) > row:only-child { + border-radius: 6px; +} + +listview.boxed-list > row.expander list > row:focus, +list.boxed-list > row.expander list > row:focus, listview.boxed-list > row:focus, +list.boxed-list > row:focus, listview.content:not(.conversation-listbox) > row:focus, +list.content:not(.conversation-listbox) > row:focus { + box-shadow: inset 0 0 0 1000px alpha(currentColor, 0.08); +} + +listview, +list { + border-color: rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; +} + +listview row, +list row { + padding: 6px; +} + +listview > row.expander, +list > row.expander { + padding: 0px; +} + +listview > row.expander .row-header, +list > row.expander .row-header { + padding: 2px; +} + +listview.boxed-list > row.expander list, +list.boxed-list > row.expander list { + background-color: transparent; + box-shadow: none; + border: none; +} + +list.frame { + border-radius: 6px; +} + +listview.view { + color: rgba(0, 0, 0, 0.87); + background-color: transparent; +} + +popover.menu listview.view { + padding: 0; +} + +popover.menu listview.view > row { + margin-left: 0; + margin-right: 0; +} + +row { + color: rgba(0, 0, 0, 0.6); +} + +columnview.view > header > button, +treeview.view > header > button, row.activatable { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; +} + +columnview.view > header > button:focus, +treeview.view > header > button:focus, row.activatable:focus { + color: rgba(0, 0, 0, 0.87); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +columnview.view > header > button:hover, +treeview.view > header > button:hover, row.activatable:hover { + color: rgba(0, 0, 0, 0.87); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +columnview.view > header > button.has-open-popup, +treeview.view > header > button.has-open-popup, columnview.view > header > button:active, +treeview.view > header > button:active, row.activatable.has-open-popup, row.activatable:active { + color: rgba(0, 0, 0, 0.87); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + +row:selected { + color: inherit; +} + +row:selected image, +row:selected label { + color: rgba(0, 0, 0, 0.87); +} + +row:selected button image, +row:selected button label { + color: inherit; +} + +row:selected:disabled image, +row:selected:disabled label { + color: rgba(0, 0, 0, 0.38); +} + +treeexpander { + border-spacing: 6px; +} + +columnview row:not(:selected) cell editablelabel:not(.editing):focus-within { + outline: 2px solid alpha(currentColor, 0.06); +} + +columnview row:not(:selected) cell editablelabel.editing:focus-within { + outline: 2px solid #3c84f7; +} + +columnview row:not(:selected) cell editablelabel.editing text selection { + color: white; + background-color: #3c84f7; +} + +.rich-list { + /* rich lists usually containing other widgets than just labels/text */ +} + +.rich-list > row { + padding: 9px 12px; + min-height: 32px; + /* should be tall even when only containing a label */ +} + +.rich-list > row > box { + border-spacing: 12px; +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 8px; + border-spacing: 9px; + padding: 9px; + border: none; +} + +.app-notification button.text-button:not(:disabled) { + color: #3c84f7; +} + +.app-notification.frame, +.app-notification border { + border-style: none; +} + +/************* + * Expanders * + *************/ +expander { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 16px; + min-height: 16px; + color: rgba(0, 0, 0, 0.6); + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); +} + +expander:dir(rtl) { + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); +} + +expander:hover, expander:active { + color: rgba(0, 0, 0, 0.87); +} + +expander:disabled { + color: rgba(0, 0, 0, 0.26); +} + +expander-widget > box > title { + border-radius: 6px; +} + +expander-widget > box > title:hover > expander { + color: rgba(0, 0, 0, 0.6); +} + +.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 { + padding: 0; + border: 1px solid rgba(0, 0, 0, 0.12); + border-radius: 6px; + color: rgba(0, 0, 0, 0.87); +} + +calendar:disabled { + color: rgba(0, 0, 0, 0.38); +} + +calendar:selected { + border-radius: 6px; +} + +calendar > header { + padding: 3px; + border-bottom: 1px solid rgba(0, 0, 0, 0.12); +} + +calendar > header > button { + min-height: 24px; +} + +calendar > grid { + margin: 3px; +} + +calendar > grid > label { + border-radius: 9999px; + margin: 0; +} + +calendar > grid > label.today:selected { + box-shadow: none; +} + +calendar > grid > label:focus { + outline-style: none; +} + +calendar > grid > label.day-number { + padding: 9px; +} + +calendar > grid > label.day-number.other-month { + color: alpha(currentColor, 0.3); +} + +/*********** + * Dialogs * + ***********/ +window.dialog.message.background { + background-color: #FFFFFF; +} + +window.dialog.message box.dialog-vbox.vertical { + border-spacing: 10px; +} + +window.dialog.message .titlebar { + min-height: 24px; + border-style: none; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.15); + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +window.dialog.message .titlebar:backdrop { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.6); +} + +window.dialog.message .dialog-action-area { + margin-top: -6px; +} + +window.dialog.message .dialog-action-area > button, window.dialog.message .dialog-action-area > button:first-child, window.dialog.message .dialog-action-area > button:last-child { + border-radius: 9999px; +} + +window.dialog.message .dialog-action-area > button:not(:last-child) { + margin-right: 6px; +} + +window.dialog.message .dialog-action-area > button:not(:disabled) { + color: #3c84f7; +} + +window.dialog.message .dialog-action-area > button.destructive-action:not(:disabled) { + color: #D93025; +} + +.csd filechooser { + background-color: #FFFFFF; + border-radius: 0 0 14px 14px; +} + +filechooser .dialog-action-box { + border-top: 1px solid rgba(0, 0, 0, 0.12); +} + +filechooser #pathbarbox { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; +} + +filechooser stack.view { + background-color: transparent; +} + +filechooser stack.view scrolledwindow { + background-color: transparent; + border-radius: 0 0 14px 0; +} + +filechooser stack.view scrolledwindow list { + background-color: transparent; +} + +filechooser stack.view > placesview { + background-color: transparent; +} + +filechooser stack.view > placesview > actionbar, filechooser stack.view > placesview > actionbar > revealer > box { + background-color: transparent; +} + +filechooser stack.view frame > border { + border: none; +} + +.csd filechooser placessidebar { + background: none; + border-bottom-left-radius: 14px; +} + +filechooser actionbar, filechooser actionbar > revealer > box { + background-color: transparent; +} + +filechooserbutton > button > box { + border-spacing: 6px; +} + +filechooserbutton:drop(active) { + box-shadow: none; + border-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; + background-color: #FAFAFA; +} + +.sidebar:not(separator):dir(ltr), .sidebar:not(separator).left, .sidebar:not(separator).left:dir(rtl) { + border-right: 1px solid rgba(0, 0, 0, 0.12); + border-left-style: none; +} + +.sidebar:not(separator):dir(rtl), .sidebar:not(separator).right { + border-left: 1px solid rgba(0, 0, 0, 0.12); + 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 { + padding: 6px; + background-color: #FAFAFA; +} + +stacksidebar row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +stacksidebar row:selected { + background-color: alpha(currentColor, 0.06); + color: rgba(0, 0, 0, 0.87); + font-weight: 500; +} + +stacksidebar row + row { + margin-top: 4px; +} + +stacksidebar row > label { + padding-left: 6px; + padding-right: 6px; + color: inherit; +} + +separator.sidebar { + background-color: rgba(0, 0, 0, 0.12); + border-right: none; +} + +separator.sidebar.selection-mode, .selection-mode separator.sidebar { + background-color: rgba(255, 255, 255, 0.15); +} + +/********************** + * Navigation Sidebar * + **********************/ +.navigation-sidebar { + padding: 6px; + border-right: none; +} + +.navigation-sidebar > row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +.navigation-sidebar > row:hover, .navigation-sidebar > row:focus-visible:focus-within { + background-color: alpha(currentColor, 0.08); +} + +.navigation-sidebar > row:selected { + background-color: alpha(currentColor, 0.06); + color: rgba(0, 0, 0, 0.87); +} + +.navigation-sidebar > row:selected:hover { + background-color: alpha(currentColor, 0.16); +} + +.navigation-sidebar > row:selected:focus-visible:focus-within { + outline: none; + background-color: alpha(currentColor, 0.08); +} + +.navigation-sidebar > row:selected:focus-visible:focus-within:hover { + background-color: alpha(currentColor, 0.16); +} + +.navigation-sidebar > row:disabled { + color: rgba(0, 0, 0, 0.38); +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(0, 0, 0, 0.6); +} + +row image.sidebar-icon:disabled { + color: rgba(0, 0, 0, 0.26); +} + +placessidebar > viewport.frame { + border-style: none; +} + +placessidebar list { + padding: 1px 0 4px; +} + +placessidebar .navigation-sidebar > row { + min-height: 32px; + margin: -1px 4px -1px 0; + padding: 0; + border-radius: 0 9999px 9999px 0; +} + +placessidebar .navigation-sidebar > row > revealer { + padding: 0 8px 0 16px; +} + +placessidebar .navigation-sidebar > row:selected { + background-color: alpha(currentColor, 0.06); + color: rgba(0, 0, 0, 0.87); + font-weight: 500; +} + +placessidebar .navigation-sidebar > row:disabled { + color: rgba(0, 0, 0, 0.38); +} + +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 { + color: inherit; +} + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar .navigation-sidebar > row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row { + color: #3c84f7; +} + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row image.sidebar-icon { + color: #3c84f7; +} + +placessidebar .navigation-sidebar > row:drop(active) { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placesview .server-list-button > image { + transition: 200ms cubic-bezier(0, 0, 0.2, 1); + -gtk-icon-transform: rotate(0turn); +} + +placesview .server-list-button:checked > image { + transition: 200ms cubic-bezier(0, 0, 0.2, 1); + -gtk-icon-transform: rotate(-0.5turn); +} + +placesview > actionbar > revealer > box > label { + 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(rgba(0, 0, 0, 0.12)); + background-size: 1px 1px; + background-clip: content-box; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #FFFFFF; + background-image: image(rgba(0, 0, 0, 0.12)), image(rgba(0, 0, 0, 0.12)); + 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; + border-radius: 6px; +} + +video image.osd { + min-width: 64px; + min-height: 64px; + border-radius: 9999px; + border: none; +} + +/************** + * GtkInfoBar * + **************/ +infobar { + border: none; + margin-bottom: 0; +} + +infobar > revealer > box { + padding: 6px; + border-spacing: 12px; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #FFFFFF; +} + +infobar.info > revealer > box button, infobar.info > revealer > box button.text-button:not(:disabled), infobar.info:hover > revealer > box button, infobar.info:hover > revealer > box button.text-button:not(:disabled), infobar.info:backdrop > revealer > box button, infobar.info:backdrop > revealer > box button.text-button:not(:disabled) { + color: #3c84f7; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #3c84f7; + color: white; +} + +infobar.action > revealer > box button, infobar.action > revealer > box button:hover, infobar.action > revealer > box button:focus, infobar.action > revealer > box button:active, infobar.action > revealer > box button:checked, infobar.action > revealer > box button.text-button:not(:disabled), infobar.action:backdrop > revealer > box button, infobar.action:backdrop > revealer > box button:hover, infobar.action:backdrop > revealer > box button:focus, infobar.action:backdrop > revealer > box button:active, infobar.action:backdrop > revealer > box button:checked, infobar.action:backdrop > revealer > box button.text-button:not(:disabled), infobar.question > revealer > box button, infobar.question > revealer > box button:hover, infobar.question > revealer > box button:focus, infobar.question > revealer > box button:active, infobar.question > revealer > box button:checked, infobar.question > revealer > box button.text-button:not(:disabled), infobar.question:backdrop > revealer > box button, infobar.question:backdrop > revealer > box button:hover, infobar.question:backdrop > revealer > box button:focus, infobar.question:backdrop > revealer > box button:active, infobar.question:backdrop > revealer > box button:checked, infobar.question:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: white; +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #5493f8; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #F4B400; + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box button, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked, infobar.warning > revealer > box button.text-button:not(:disabled), infobar.warning:backdrop > revealer > box button, infobar.warning:backdrop > revealer > box button:hover, infobar.warning:backdrop > revealer > box button:focus, infobar.warning:backdrop > revealer > box button:active, infobar.warning:backdrop > revealer > box button:checked, infobar.warning:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box *:link, infobar.warning:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning:hover > revealer > box { + background-color: #ffc00f; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #D93025; + color: white; +} + +infobar.error > revealer > box button, infobar.error > revealer > box button:hover, infobar.error > revealer > box button:focus, infobar.error > revealer > box button:active, infobar.error > revealer > box button:checked, infobar.error > revealer > box button.text-button:not(:disabled), infobar.error:backdrop > revealer > box button, infobar.error:backdrop > revealer > box button:hover, infobar.error:backdrop > revealer > box button:focus, infobar.error:backdrop > revealer > box button:active, infobar.error:backdrop > revealer > box button:checked, infobar.error:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: white; +} + +infobar.error:hover > revealer > box { + background-color: #dd443a; +} + +/************ + * Tooltips * + ************/ +tooltip { + padding: 6px 12px; + box-shadow: none; + border: none; +} + +tooltip.background { + background-color: rgba(52, 52, 52, 0.9); + color: white; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12); + border-radius: 3px; + margin: 2px 6px 8px 6px; + border: none; +} + +tooltip > box { + border-spacing: 6px; +} + +/***************** + * Color Chooser * + *****************/ +colorswatch.top { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.top overlay { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.bottom { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.bottom overlay { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.left, colorswatch:first-child:not(.top) { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.left overlay, colorswatch:first-child:not(.top) overlay { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.right, colorswatch:last-child:not(.bottom) { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.dark { + color: white; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorchooser colorswatch:hover { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: 0 0 0 2px #3c84f7; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; + color: rgba(0, 0, 0, 0.87); +} + +colorswatch#add-color-button:only-child { + border-radius: 6px; +} + +colorswatch#add-color-button overlay { + background-color: rgba(0, 0, 0, 0.04); +} + +colorswatch#add-color-button overlay:hover { + background-color: rgba(0, 0, 0, 0.12); + box-shadow: none; +} + +colorswatch#add-color-button overlay:active { + background-color: rgba(0, 0, 0, 0.26); +} + +colorswatch:disabled { + opacity: 0.5; +} + +colorswatch:disabled overlay { + box-shadow: none; +} + +colorswatch#editor-color-sample { + border-radius: 6px; +} + +colorswatch#editor-color-sample overlay { + border-radius: 6px; +} + +colorswatch#editor-color-sample overlay:hover { + box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -0.6px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); + background-color: #FFFFFF; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); +} + +/******** + * Misc * + ********/ +.content-view { + background-color: #FFFFFF; +} + +/********************** + * Window Decorations * + **********************/ +window.csd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 14px; + outline-color: rgba(255, 255, 255, 0.15); + outline-offset: -1px; + outline-style: solid; + outline-width: 1px; + box-shadow: 0 8px 6px -5px rgba(0, 0, 0, 0.2), 0 16px 15px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.12), 0 0 36px transparent; +} + +window.csd:backdrop { + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.12), 0 0 36px transparent; +} + +window.csd.popup { + border-radius: 12px; +} + +window.csd.dialog.message { + border-radius: 14px; +} + +.solid-csd window.csd { + margin: 0; + padding: 2px; + border-radius: 0; + background-color: #FAFAFA; + border: 1px solid #e0e0e0; +} + +.solid-csd window.csd:backdrop { + background-color: #FFFFFF; +} + +window.csd.maximized, window.csd.fullscreen, window.csd.tiled, window.csd.tiled-top, window.csd.tiled-right, window.csd.tiled-bottom, window.csd.tiled-left { + border-radius: 0; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action) { + min-height: 36px; + min-width: 36px; + padding: 0; + margin: 0 4px; +} + +windowcontrols button.minimize:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:not(.suggested-action):not(.destructive-action), windowcontrols button.close:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.6); + background-color: "transparent"; +} + +windowcontrols button.minimize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.maximize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.close:not(.suggested-action):not(.destructive-action) image { + padding: 0; +} + +windowcontrols button.minimize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.close:hover:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.87); + background-color: alpha(currentColor, 0.15); +} + +windowcontrols button.minimize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.close:active:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.87); + background-color: alpha(currentColor, 0.2); +} + +windowcontrols button.minimize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.close:backdrop:not(.suggested-action):not(.destructive-action) { + opacity: 0.65; +} + +windowcontrols { + border-spacing: 6px; +} + +windowcontrols:not(.empty).start:dir(ltr), windowcontrols:not(.empty).end:dir(rtl) { + margin-right: 4px; + margin-left: 4px; +} + +windowcontrols:not(.empty).start:dir(rtl), windowcontrols:not(.empty).end:dir(ltr) { + margin-left: 4px; + margin-right: 4px; +} + +.view:selected, iconview:selected, gridview > child:selected, modelbutton.flat:selected, columnview.view:selected, +treeview.view:selected, row:selected, calendar:selected, calendar > grid > label.day-number:selected { + background-color: alpha(currentColor, 0.06); +} + +flowbox > flowboxchild:selected, calendar > grid > label.today { + color: #3c84f7; + background-color: rgba(60, 132, 247, 0.2); +} + +textview text selection:focus, textview text selection, label > selection, +entry > text > selection, spinbutton:not(.vertical) > text > selection, spinbutton.vertical > text > selection, calendar > grid > label.today:selected { + color: white; + background-color: #3c84f7; +} + +.monospace { + font-family: monospace; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #3c84f7; + -gtk-icon-source: -gtk-recolor(url("assets/scalable/cursor-handle-symbolic.svg")); +} + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { + padding-top: 6px; +} + +shortcuts-section { + margin: 20px; +} + +.shortcuts-search-results { + margin: 20px; + border-spacing: 24px; +} + +shortcut { + border-spacing: 6px; +} + +shortcut > .keycap { + min-width: 12px; + min-height: 26px; + margin-top: 2px; + padding-bottom: 2px; + padding-left: 8px; + padding-right: 8px; + border: solid 1px rgba(0, 0, 0, 0.12); + border-radius: 7px; + box-shadow: inset 0 -2px rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #3c84f7; +} + +stackswitcher { + min-height: 0; + padding: 3px; + margin: 6px 0; + border-radius: 9px; + background-color: rgba(0, 0, 0, 0.04); + border: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + margin: 0 0; + background-color: transparent; + border-radius: 6px; + padding: 3px 10px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 100px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):focus:not(:hover):not(:checked) { + box-shadow: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: white; + color: rgba(0, 0, 0, 0.87); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +stackswitcher button.text-button { + min-width: 100px; +} + +stackswitcher button.circular, +stackswitcher button.text-button.circular { + min-width: 36px; + min-height: 36px; + padding: 0; +} + +/************* + * App Icons * + *************/ +.lowres-icon { + -gtk-icon-shadow: none; +} + +.icon-dropshadow { + -gtk-icon-shadow: none; +} + +/********* + * Emoji * + *********/ +popover.emoji-picker { + padding: 0; +} + +popover.emoji-picker > contents { + padding: 0; +} + +.emoji-searchbar { + padding: 6px; + border-spacing: 6px; + border-bottom: 1px solid rgba(0, 0, 0, 0.12); + background: none; +} + +.emoji-searchbar entry text { + background: none; + box-shadow: none; +} + +.emoji-toolbar { + padding: 0; + border-spacing: 3px; + border-top: 1px solid rgba(0, 0, 0, 0.12); + background: none; +} + +button.emoji-section { + margin: 0; + padding: 6px; + border-radius: 6px; +} + +button.emoji-section:checked { + color: #3c84f7; +} + +popover.emoji-picker emoji { + font-size: x-large; + padding: 6px; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; +} + +popover.emoji-picker emoji:focus, popover.emoji-picker emoji:hover { + background: alpha(currentColor, 0.08); +} + +emoji-completion-row { + min-height: 28px; + padding: 0 12px; +} + +emoji-completion-row > box { + border-spacing: 6px; + padding: 2px 6px; +} + +emoji-completion-row:focus, emoji-completion-row:hover, +emoji-completion-row emoji:hover, emoji-completion-row emoji:focus { + background-color: alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +popover.entry-completion > contents { + padding: 0; +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color rgba(0, 0, 0, 0.87); +/* +text color for entries, views and content in general */ +@define-color theme_text_color rgba(0, 0, 0, 0.87); +/* +widget base background color */ +@define-color theme_bg_color #FFFFFF; +/* +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 #3c84f7; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color white; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #FFFFFF; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color rgba(0, 0, 0, 0.38); +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #FAFAFA; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color rgba(0, 0, 0, 0.87); +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color rgba(0, 0, 0, 0.87); +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #FFFFFF; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #FFFFFF; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #3c84f7; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color white; +/* +insensitive color on backdrop windows */ +@define-color unfocused_insensitive_color rgba(0, 0, 0, 0.38); +/* +widgets main borders color */ +@define-color borders rgba(0, 0, 0, 0.12); +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders rgba(0, 0, 0, 0.12); +/* +these are pretty self explicative */ +@define-color warning_color #F4B400; +@define-color error_color #D93025; +@define-color success_color #0F9D58; +/* +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 rgba(0, 0, 0, 0.87); +@define-color wm_unfocused_title rgba(0, 0, 0, 0.6); +@define-color wm_highlight rgba(255, 255, 255, 0.15); +@define-color wm_bg #FAFAFA; +@define-color wm_unfocused_bg #FFFFFF; +/* +FIXME this is really an API */ +@define-color content_view_bg #FFFFFF; +@define-color placeholder_text_color #666666; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #FFFFFF; +@define-color budgie_tasklist_indicator_color white; +@define-color budgie_tasklist_indicator_color_active white; +@define-color budgie_tasklist_indicator_color_active_window #f9f9f9; +@define-color budgie_tasklist_indicator_color_attention #F4B400; +@define-color STRAWBERRY_100 #FF9262; +@define-color STRAWBERRY_300 #FF793E; +@define-color STRAWBERRY_500 #F15D22; +@define-color STRAWBERRY_700 #CF3B00; +@define-color STRAWBERRY_900 #AC1800; +@define-color ORANGE_100 #FFDB91; +@define-color ORANGE_300 #FFCA40; +@define-color ORANGE_500 #FAA41A; +@define-color ORANGE_700 #DE8800; +@define-color ORANGE_900 #C26C00; +@define-color BANANA_100 #FFFFA8; +@define-color BANANA_300 #FFFA7D; +@define-color BANANA_500 #FFCE51; +@define-color BANANA_700 #D1A023; +@define-color BANANA_900 #A27100; +@define-color LIME_100 #A2F3BE; +@define-color LIME_300 #8ADBA6; +@define-color LIME_500 #73C48F; +@define-color LIME_700 #479863; +@define-color LIME_900 #1C6D38; +@define-color BLUEBERRY_100 #94A6FF; +@define-color BLUEBERRY_300 #6A7CE0; +@define-color BLUEBERRY_500 #3F51B5; +@define-color BLUEBERRY_700 #213397; +@define-color BLUEBERRY_900 #031579; +@define-color GRAPE_100 #D25DE6; +@define-color GRAPE_300 #B84ACB; +@define-color GRAPE_500 #9C27B0; +@define-color GRAPE_700 #830E97; +@define-color GRAPE_900 #6A007E; +@define-color COCOA_100 #9F9792; +@define-color COCOA_300 #7B736E; +@define-color COCOA_500 #574F4A; +@define-color COCOA_700 #463E39; +@define-color COCOA_900 #342C27; +@define-color SILVER_100 #EEE; +@define-color SILVER_300 #CCC; +@define-color SILVER_500 #AAA; +@define-color SILVER_700 #888; +@define-color SILVER_900 #666; +@define-color SLATE_100 #888; +@define-color SLATE_300 #666; +@define-color SLATE_500 #444; +@define-color SLATE_700 #222; +@define-color SLATE_900 #111; +@define-color BLACK_100 #474341; +@define-color BLACK_300 #403C3A; +@define-color BLACK_500 #393634; +@define-color BLACK_700 #33302F; +@define-color BLACK_900 #2B2928; diff --git a/Cutefish-light/gtk-4.0/thumbnail.png b/Cutefish-light/gtk-4.0/thumbnail.png new file mode 100644 index 0000000..cce29c2 Binary files /dev/null and b/Cutefish-light/gtk-4.0/thumbnail.png differ diff --git a/Cutefish-light/index.theme b/Cutefish-light/index.theme new file mode 100644 index 0000000..9bd0282 --- /dev/null +++ b/Cutefish-light/index.theme @@ -0,0 +1,5 @@ +[Desktop Entry] +Type=X-GNOME-Metatheme +Name=Cutefish-light +Comment=CutefishOS Gtk Theme +Encoding=UTF-8 diff --git a/Cutefish/gtk-2.0/apps.rc b/Cutefish/gtk-2.0/apps.rc new file mode 100644 index 0000000..530e72f --- /dev/null +++ b/Cutefish/gtk-2.0/apps.rc @@ -0,0 +1,92 @@ +# vim:set ft=gtkrc ts=2 sw=2 sts=2 ai et: +# +# This file, unlike hacks.rc, contains legitimate cases we need to handle, e.g. +# custom widgets, programs giving us a chance to alter their UI to fit more with +# the theme or stuff that is supposed to look different, like panels. + +# TODO: This could really look nicer +style "gimp_spin_scale" { + # Spin background + bg[NORMAL] = @base_color + + engine "pixmap" { + image { + function = BOX + state = NORMAL + detail = "spinbutton_up" + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_up" + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_up" + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_up" + overlay_file = "assets/pan-up-alt-disabled.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = NORMAL + detail = "spinbutton_down" + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_down" + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_down" + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_down" + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + } + } +} + +style "chrome_gtk_frame" { + ChromeGtkFrame::frame-color = @titlebar_bg_color + ChromeGtkFrame::inactive-frame-color = @titlebar_bg_color + ChromeGtkFrame::incognito-frame-color = @titlebar_bg_color + ChromeGtkFrame::incognito-inactive-frame-color = @titlebar_bg_color + + ChromeGtkFrame::frame-gradient-size = 0 +} + +# Disable spin button assets for GimpSpinScale +class "GimpSpinScale" style "gimp_spin_scale" + +# Chromium lets us define some colours and settings for better integration +class "ChromeGtkFrame" style "chrome_gtk_frame" diff --git a/Cutefish/gtk-2.0/assets/border.png b/Cutefish/gtk-2.0/assets/border.png new file mode 100644 index 0000000..b755468 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/border.png differ diff --git a/Cutefish/gtk-2.0/assets/button-active.png b/Cutefish/gtk-2.0/assets/button-active.png new file mode 100644 index 0000000..6a3942c Binary files /dev/null and b/Cutefish/gtk-2.0/assets/button-active.png differ diff --git a/Cutefish/gtk-2.0/assets/button-disabled.png b/Cutefish/gtk-2.0/assets/button-disabled.png new file mode 100644 index 0000000..0be273b Binary files /dev/null and b/Cutefish/gtk-2.0/assets/button-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/button-hover.png b/Cutefish/gtk-2.0/assets/button-hover.png new file mode 100644 index 0000000..de5b618 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/button-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/button.png b/Cutefish/gtk-2.0/assets/button.png new file mode 100644 index 0000000..daeaec7 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/button.png differ diff --git a/Cutefish/gtk-2.0/assets/checkbox-checked-active.png b/Cutefish/gtk-2.0/assets/checkbox-checked-active.png new file mode 100644 index 0000000..f2684b7 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/checkbox-checked-active.png differ diff --git a/Cutefish/gtk-2.0/assets/checkbox-checked-disabled.png b/Cutefish/gtk-2.0/assets/checkbox-checked-disabled.png new file mode 100644 index 0000000..3ba34ed Binary files /dev/null and b/Cutefish/gtk-2.0/assets/checkbox-checked-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/checkbox-checked-hover.png b/Cutefish/gtk-2.0/assets/checkbox-checked-hover.png new file mode 100644 index 0000000..d576c01 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/checkbox-checked-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/checkbox-checked.png b/Cutefish/gtk-2.0/assets/checkbox-checked.png new file mode 100644 index 0000000..74291ff Binary files /dev/null and b/Cutefish/gtk-2.0/assets/checkbox-checked.png differ diff --git a/Cutefish/gtk-2.0/assets/checkbox-mixed-active.png b/Cutefish/gtk-2.0/assets/checkbox-mixed-active.png new file mode 100644 index 0000000..c32b114 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/checkbox-mixed-active.png differ diff --git a/Cutefish/gtk-2.0/assets/checkbox-mixed-disabled.png b/Cutefish/gtk-2.0/assets/checkbox-mixed-disabled.png new file mode 100644 index 0000000..f4cd89b Binary files /dev/null and b/Cutefish/gtk-2.0/assets/checkbox-mixed-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/checkbox-mixed-hover.png b/Cutefish/gtk-2.0/assets/checkbox-mixed-hover.png new file mode 100644 index 0000000..4635e4f Binary files /dev/null and b/Cutefish/gtk-2.0/assets/checkbox-mixed-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/checkbox-mixed.png b/Cutefish/gtk-2.0/assets/checkbox-mixed.png new file mode 100644 index 0000000..0a7e5a3 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/checkbox-mixed.png differ diff --git a/Cutefish/gtk-2.0/assets/checkbox-unchecked-active.png b/Cutefish/gtk-2.0/assets/checkbox-unchecked-active.png new file mode 100644 index 0000000..b2112ca Binary files /dev/null and b/Cutefish/gtk-2.0/assets/checkbox-unchecked-active.png differ diff --git a/Cutefish/gtk-2.0/assets/checkbox-unchecked-disabled.png b/Cutefish/gtk-2.0/assets/checkbox-unchecked-disabled.png new file mode 100644 index 0000000..ca92669 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/checkbox-unchecked-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/checkbox-unchecked-hover.png b/Cutefish/gtk-2.0/assets/checkbox-unchecked-hover.png new file mode 100644 index 0000000..95cb359 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/checkbox-unchecked-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/checkbox-unchecked.png b/Cutefish/gtk-2.0/assets/checkbox-unchecked.png new file mode 100644 index 0000000..6496e92 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/checkbox-unchecked.png differ diff --git a/Cutefish/gtk-2.0/assets/combo-left-entry-active.png b/Cutefish/gtk-2.0/assets/combo-left-entry-active.png new file mode 100644 index 0000000..a70672d Binary files /dev/null and b/Cutefish/gtk-2.0/assets/combo-left-entry-active.png differ diff --git a/Cutefish/gtk-2.0/assets/combo-left-entry-disabled.png b/Cutefish/gtk-2.0/assets/combo-left-entry-disabled.png new file mode 100644 index 0000000..bec439a Binary files /dev/null and b/Cutefish/gtk-2.0/assets/combo-left-entry-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/combo-left-entry-hover.png b/Cutefish/gtk-2.0/assets/combo-left-entry-hover.png new file mode 100644 index 0000000..d896386 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/combo-left-entry-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/combo-left-entry.png b/Cutefish/gtk-2.0/assets/combo-left-entry.png new file mode 100644 index 0000000..943fac5 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/combo-left-entry.png differ diff --git a/Cutefish/gtk-2.0/assets/combo-right-entry-active.png b/Cutefish/gtk-2.0/assets/combo-right-entry-active.png new file mode 100644 index 0000000..54bafd1 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/combo-right-entry-active.png differ diff --git a/Cutefish/gtk-2.0/assets/combo-right-entry-disabled.png b/Cutefish/gtk-2.0/assets/combo-right-entry-disabled.png new file mode 100644 index 0000000..5293406 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/combo-right-entry-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/combo-right-entry-hover.png b/Cutefish/gtk-2.0/assets/combo-right-entry-hover.png new file mode 100644 index 0000000..05548f3 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/combo-right-entry-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/combo-right-entry.png b/Cutefish/gtk-2.0/assets/combo-right-entry.png new file mode 100644 index 0000000..dd2118a Binary files /dev/null and b/Cutefish/gtk-2.0/assets/combo-right-entry.png differ diff --git a/Cutefish/gtk-2.0/assets/entry-active.png b/Cutefish/gtk-2.0/assets/entry-active.png new file mode 100644 index 0000000..aa7706b Binary files /dev/null and b/Cutefish/gtk-2.0/assets/entry-active.png differ diff --git a/Cutefish/gtk-2.0/assets/entry-background-disabled.png b/Cutefish/gtk-2.0/assets/entry-background-disabled.png new file mode 100644 index 0000000..7f3aa5e Binary files /dev/null and b/Cutefish/gtk-2.0/assets/entry-background-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/entry-background.png b/Cutefish/gtk-2.0/assets/entry-background.png new file mode 100644 index 0000000..72facdb Binary files /dev/null and b/Cutefish/gtk-2.0/assets/entry-background.png differ diff --git a/Cutefish/gtk-2.0/assets/entry-disabled.png b/Cutefish/gtk-2.0/assets/entry-disabled.png new file mode 100644 index 0000000..0be273b Binary files /dev/null and b/Cutefish/gtk-2.0/assets/entry-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/entry-hover.png b/Cutefish/gtk-2.0/assets/entry-hover.png new file mode 100644 index 0000000..1e7804c Binary files /dev/null and b/Cutefish/gtk-2.0/assets/entry-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/entry.png b/Cutefish/gtk-2.0/assets/entry.png new file mode 100644 index 0000000..daeaec7 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/entry.png differ diff --git a/Cutefish/gtk-2.0/assets/flat-button-active.png b/Cutefish/gtk-2.0/assets/flat-button-active.png new file mode 100644 index 0000000..6a3942c Binary files /dev/null and b/Cutefish/gtk-2.0/assets/flat-button-active.png differ diff --git a/Cutefish/gtk-2.0/assets/flat-button-disabled.png b/Cutefish/gtk-2.0/assets/flat-button-disabled.png new file mode 100644 index 0000000..34d490f Binary files /dev/null and b/Cutefish/gtk-2.0/assets/flat-button-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/flat-button-hover.png b/Cutefish/gtk-2.0/assets/flat-button-hover.png new file mode 100644 index 0000000..de5b618 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/flat-button-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/flat-button.png b/Cutefish/gtk-2.0/assets/flat-button.png new file mode 100644 index 0000000..34d490f Binary files /dev/null and b/Cutefish/gtk-2.0/assets/flat-button.png differ diff --git a/Cutefish/gtk-2.0/assets/focus.png b/Cutefish/gtk-2.0/assets/focus.png new file mode 100644 index 0000000..cf26e66 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/focus.png differ diff --git a/Cutefish/gtk-2.0/assets/frame-inline.png b/Cutefish/gtk-2.0/assets/frame-inline.png new file mode 100644 index 0000000..34703f8 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/frame-inline.png differ diff --git a/Cutefish/gtk-2.0/assets/frame-notebook.png b/Cutefish/gtk-2.0/assets/frame-notebook.png new file mode 100644 index 0000000..ddb5196 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/frame-notebook.png differ diff --git a/Cutefish/gtk-2.0/assets/frame.png b/Cutefish/gtk-2.0/assets/frame.png new file mode 100644 index 0000000..bd3e851 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/frame.png differ diff --git a/Cutefish/gtk-2.0/assets/handle-horz-active.png b/Cutefish/gtk-2.0/assets/handle-horz-active.png new file mode 100644 index 0000000..982db3d Binary files /dev/null and b/Cutefish/gtk-2.0/assets/handle-horz-active.png differ diff --git a/Cutefish/gtk-2.0/assets/handle-horz-hover.png b/Cutefish/gtk-2.0/assets/handle-horz-hover.png new file mode 100644 index 0000000..af9f1f4 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/handle-horz-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/handle-horz.png b/Cutefish/gtk-2.0/assets/handle-horz.png new file mode 100644 index 0000000..a726388 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/handle-horz.png differ diff --git a/Cutefish/gtk-2.0/assets/handle-vert-active.png b/Cutefish/gtk-2.0/assets/handle-vert-active.png new file mode 100644 index 0000000..e44fc64 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/handle-vert-active.png differ diff --git a/Cutefish/gtk-2.0/assets/handle-vert-hover.png b/Cutefish/gtk-2.0/assets/handle-vert-hover.png new file mode 100644 index 0000000..d14f004 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/handle-vert-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/handle-vert.png b/Cutefish/gtk-2.0/assets/handle-vert.png new file mode 100644 index 0000000..567a281 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/handle-vert.png differ diff --git a/Cutefish/gtk-2.0/assets/menu-checkbox-checked-disabled.png b/Cutefish/gtk-2.0/assets/menu-checkbox-checked-disabled.png new file mode 100644 index 0000000..514a48a Binary files /dev/null and b/Cutefish/gtk-2.0/assets/menu-checkbox-checked-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/menu-checkbox-checked.png b/Cutefish/gtk-2.0/assets/menu-checkbox-checked.png new file mode 100644 index 0000000..b73067f Binary files /dev/null and b/Cutefish/gtk-2.0/assets/menu-checkbox-checked.png differ diff --git a/Cutefish/gtk-2.0/assets/menu-checkbox-mixed-disabled.png b/Cutefish/gtk-2.0/assets/menu-checkbox-mixed-disabled.png new file mode 100644 index 0000000..db5fe5f Binary files /dev/null and b/Cutefish/gtk-2.0/assets/menu-checkbox-mixed-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/menu-checkbox-mixed.png b/Cutefish/gtk-2.0/assets/menu-checkbox-mixed.png new file mode 100644 index 0000000..b89d331 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/menu-checkbox-mixed.png differ diff --git a/Cutefish/gtk-2.0/assets/menu-checkbox-unchecked-disabled.png b/Cutefish/gtk-2.0/assets/menu-checkbox-unchecked-disabled.png new file mode 100644 index 0000000..e8de055 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/menu-checkbox-unchecked-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/menu-checkbox-unchecked.png b/Cutefish/gtk-2.0/assets/menu-checkbox-unchecked.png new file mode 100644 index 0000000..5846b31 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/menu-checkbox-unchecked.png differ diff --git a/Cutefish/gtk-2.0/assets/menu-radio-checked-disabled.png b/Cutefish/gtk-2.0/assets/menu-radio-checked-disabled.png new file mode 100644 index 0000000..2c2d532 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/menu-radio-checked-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/menu-radio-checked.png b/Cutefish/gtk-2.0/assets/menu-radio-checked.png new file mode 100644 index 0000000..52f82f2 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/menu-radio-checked.png differ diff --git a/Cutefish/gtk-2.0/assets/menu-radio-mixed-disabled.png b/Cutefish/gtk-2.0/assets/menu-radio-mixed-disabled.png new file mode 100644 index 0000000..db5fe5f Binary files /dev/null and b/Cutefish/gtk-2.0/assets/menu-radio-mixed-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/menu-radio-mixed.png b/Cutefish/gtk-2.0/assets/menu-radio-mixed.png new file mode 100644 index 0000000..b89d331 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/menu-radio-mixed.png differ diff --git a/Cutefish/gtk-2.0/assets/menu-radio-unchecked-disabled.png b/Cutefish/gtk-2.0/assets/menu-radio-unchecked-disabled.png new file mode 100644 index 0000000..e8de055 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/menu-radio-unchecked-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/menu-radio-unchecked.png b/Cutefish/gtk-2.0/assets/menu-radio-unchecked.png new file mode 100644 index 0000000..5846b31 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/menu-radio-unchecked.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-down-alt-disabled.png b/Cutefish/gtk-2.0/assets/pan-down-alt-disabled.png new file mode 100644 index 0000000..db1d361 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-down-alt-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-down-alt.png b/Cutefish/gtk-2.0/assets/pan-down-alt.png new file mode 100644 index 0000000..820e026 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-down-alt.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-down-disabled.png b/Cutefish/gtk-2.0/assets/pan-down-disabled.png new file mode 100644 index 0000000..567f441 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-down-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-down.png b/Cutefish/gtk-2.0/assets/pan-down.png new file mode 100644 index 0000000..f664be1 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-down.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-left-alt-disabled.png b/Cutefish/gtk-2.0/assets/pan-left-alt-disabled.png new file mode 100644 index 0000000..d25e4b6 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-left-alt-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-left-alt.png b/Cutefish/gtk-2.0/assets/pan-left-alt.png new file mode 100644 index 0000000..6309016 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-left-alt.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-left-disabled.png b/Cutefish/gtk-2.0/assets/pan-left-disabled.png new file mode 100644 index 0000000..f0f94da Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-left-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-left-semi.png b/Cutefish/gtk-2.0/assets/pan-left-semi.png new file mode 100644 index 0000000..efe1807 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-left-semi.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-left.png b/Cutefish/gtk-2.0/assets/pan-left.png new file mode 100644 index 0000000..ae7f93d Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-left.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-right-alt-disabled.png b/Cutefish/gtk-2.0/assets/pan-right-alt-disabled.png new file mode 100644 index 0000000..d11562a Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-right-alt-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-right-alt.png b/Cutefish/gtk-2.0/assets/pan-right-alt.png new file mode 100644 index 0000000..3acb33b Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-right-alt.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-right-disabled.png b/Cutefish/gtk-2.0/assets/pan-right-disabled.png new file mode 100644 index 0000000..f49afae Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-right-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-right-semi.png b/Cutefish/gtk-2.0/assets/pan-right-semi.png new file mode 100644 index 0000000..331a306 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-right-semi.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-right.png b/Cutefish/gtk-2.0/assets/pan-right.png new file mode 100644 index 0000000..5975475 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-right.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-up-alt-disabled.png b/Cutefish/gtk-2.0/assets/pan-up-alt-disabled.png new file mode 100644 index 0000000..361acb3 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-up-alt-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-up-alt.png b/Cutefish/gtk-2.0/assets/pan-up-alt.png new file mode 100644 index 0000000..dcdf2ec Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-up-alt.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-up-disabled.png b/Cutefish/gtk-2.0/assets/pan-up-disabled.png new file mode 100644 index 0000000..8a52366 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-up-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/pan-up.png b/Cutefish/gtk-2.0/assets/pan-up.png new file mode 100644 index 0000000..031ac46 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/pan-up.png differ diff --git a/Cutefish/gtk-2.0/assets/progressbar-progress.png b/Cutefish/gtk-2.0/assets/progressbar-progress.png new file mode 100644 index 0000000..2378968 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/progressbar-progress.png differ diff --git a/Cutefish/gtk-2.0/assets/progressbar-trough.png b/Cutefish/gtk-2.0/assets/progressbar-trough.png new file mode 100644 index 0000000..9c4c595 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/progressbar-trough.png differ diff --git a/Cutefish/gtk-2.0/assets/radio-checked-active.png b/Cutefish/gtk-2.0/assets/radio-checked-active.png new file mode 100644 index 0000000..eab511e Binary files /dev/null and b/Cutefish/gtk-2.0/assets/radio-checked-active.png differ diff --git a/Cutefish/gtk-2.0/assets/radio-checked-disabled.png b/Cutefish/gtk-2.0/assets/radio-checked-disabled.png new file mode 100644 index 0000000..7b14a92 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/radio-checked-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/radio-checked-hover.png b/Cutefish/gtk-2.0/assets/radio-checked-hover.png new file mode 100644 index 0000000..4211ab0 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/radio-checked-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/radio-checked.png b/Cutefish/gtk-2.0/assets/radio-checked.png new file mode 100644 index 0000000..f886a45 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/radio-checked.png differ diff --git a/Cutefish/gtk-2.0/assets/radio-mixed-active.png b/Cutefish/gtk-2.0/assets/radio-mixed-active.png new file mode 100644 index 0000000..c32b114 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/radio-mixed-active.png differ diff --git a/Cutefish/gtk-2.0/assets/radio-mixed-disabled.png b/Cutefish/gtk-2.0/assets/radio-mixed-disabled.png new file mode 100644 index 0000000..f4cd89b Binary files /dev/null and b/Cutefish/gtk-2.0/assets/radio-mixed-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/radio-mixed-hover.png b/Cutefish/gtk-2.0/assets/radio-mixed-hover.png new file mode 100644 index 0000000..4635e4f Binary files /dev/null and b/Cutefish/gtk-2.0/assets/radio-mixed-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/radio-mixed.png b/Cutefish/gtk-2.0/assets/radio-mixed.png new file mode 100644 index 0000000..0a7e5a3 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/radio-mixed.png differ diff --git a/Cutefish/gtk-2.0/assets/radio-unchecked-active.png b/Cutefish/gtk-2.0/assets/radio-unchecked-active.png new file mode 100644 index 0000000..b2112ca Binary files /dev/null and b/Cutefish/gtk-2.0/assets/radio-unchecked-active.png differ diff --git a/Cutefish/gtk-2.0/assets/radio-unchecked-disabled.png b/Cutefish/gtk-2.0/assets/radio-unchecked-disabled.png new file mode 100644 index 0000000..ca92669 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/radio-unchecked-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/radio-unchecked-hover.png b/Cutefish/gtk-2.0/assets/radio-unchecked-hover.png new file mode 100644 index 0000000..95cb359 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/radio-unchecked-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/radio-unchecked.png b/Cutefish/gtk-2.0/assets/radio-unchecked.png new file mode 100644 index 0000000..6496e92 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/radio-unchecked.png differ diff --git a/Cutefish/gtk-2.0/assets/scale-horz-trough-active.png b/Cutefish/gtk-2.0/assets/scale-horz-trough-active.png new file mode 100644 index 0000000..4d1ed0c Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scale-horz-trough-active.png differ diff --git a/Cutefish/gtk-2.0/assets/scale-horz-trough-disabled.png b/Cutefish/gtk-2.0/assets/scale-horz-trough-disabled.png new file mode 100644 index 0000000..e38cec0 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scale-horz-trough-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/scale-horz-trough.png b/Cutefish/gtk-2.0/assets/scale-horz-trough.png new file mode 100644 index 0000000..85e9486 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scale-horz-trough.png differ diff --git a/Cutefish/gtk-2.0/assets/scale-slider-active.png b/Cutefish/gtk-2.0/assets/scale-slider-active.png new file mode 100644 index 0000000..b9a8a00 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scale-slider-active.png differ diff --git a/Cutefish/gtk-2.0/assets/scale-slider-disabled.png b/Cutefish/gtk-2.0/assets/scale-slider-disabled.png new file mode 100644 index 0000000..9e2860d Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scale-slider-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/scale-slider-hover.png b/Cutefish/gtk-2.0/assets/scale-slider-hover.png new file mode 100644 index 0000000..406a6ca Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scale-slider-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/scale-slider.png b/Cutefish/gtk-2.0/assets/scale-slider.png new file mode 100644 index 0000000..f988443 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scale-slider.png differ diff --git a/Cutefish/gtk-2.0/assets/scale-vert-trough-active.png b/Cutefish/gtk-2.0/assets/scale-vert-trough-active.png new file mode 100644 index 0000000..a19e102 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scale-vert-trough-active.png differ diff --git a/Cutefish/gtk-2.0/assets/scale-vert-trough-disabled.png b/Cutefish/gtk-2.0/assets/scale-vert-trough-disabled.png new file mode 100644 index 0000000..f976e3a Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scale-vert-trough-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/scale-vert-trough.png b/Cutefish/gtk-2.0/assets/scale-vert-trough.png new file mode 100644 index 0000000..ef79e78 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scale-vert-trough.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-horz-slider-active.png b/Cutefish/gtk-2.0/assets/scrollbar-horz-slider-active.png new file mode 100644 index 0000000..060da6d Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-horz-slider-active.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-horz-slider-disabled.png b/Cutefish/gtk-2.0/assets/scrollbar-horz-slider-disabled.png new file mode 100644 index 0000000..9617e3f Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-horz-slider-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-horz-slider-hover.png b/Cutefish/gtk-2.0/assets/scrollbar-horz-slider-hover.png new file mode 100644 index 0000000..bb6d9b0 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-horz-slider-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-horz-slider.png b/Cutefish/gtk-2.0/assets/scrollbar-horz-slider.png new file mode 100644 index 0000000..45e4bd9 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-horz-slider.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-horz-trough.png b/Cutefish/gtk-2.0/assets/scrollbar-horz-trough.png new file mode 100644 index 0000000..0394def Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-horz-trough.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-slider-active.png b/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-slider-active.png new file mode 100644 index 0000000..475b1af Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-slider-active.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-slider-disabled.png b/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-slider-disabled.png new file mode 100644 index 0000000..d27871e Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-slider-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-slider-hover.png b/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-slider-hover.png new file mode 100644 index 0000000..4739b68 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-slider-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-slider.png b/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-slider.png new file mode 100644 index 0000000..dcab805 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-slider.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-trough.png b/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-trough.png new file mode 100644 index 0000000..06b93b5 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-vert-ltr-trough.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-slider-active.png b/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-slider-active.png new file mode 100644 index 0000000..dcc9e9f Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-slider-active.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-slider-disabled.png b/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-slider-disabled.png new file mode 100644 index 0000000..96562d1 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-slider-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-slider-hover.png b/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-slider-hover.png new file mode 100644 index 0000000..378bfa0 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-slider-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-slider.png b/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-slider.png new file mode 100644 index 0000000..5f5dd82 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-slider.png differ diff --git a/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-trough.png b/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-trough.png new file mode 100644 index 0000000..4d6a6aa Binary files /dev/null and b/Cutefish/gtk-2.0/assets/scrollbar-vert-rtl-trough.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-ltr-down-active.png b/Cutefish/gtk-2.0/assets/spin-ltr-down-active.png new file mode 100644 index 0000000..c3939d0 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-ltr-down-active.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-ltr-down-disabled.png b/Cutefish/gtk-2.0/assets/spin-ltr-down-disabled.png new file mode 100644 index 0000000..d771501 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-ltr-down-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-ltr-down-hover.png b/Cutefish/gtk-2.0/assets/spin-ltr-down-hover.png new file mode 100644 index 0000000..d8f4c37 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-ltr-down-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-ltr-down.png b/Cutefish/gtk-2.0/assets/spin-ltr-down.png new file mode 100644 index 0000000..d44a3dd Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-ltr-down.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-ltr-up-active.png b/Cutefish/gtk-2.0/assets/spin-ltr-up-active.png new file mode 100644 index 0000000..51ee414 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-ltr-up-active.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-ltr-up-disabled.png b/Cutefish/gtk-2.0/assets/spin-ltr-up-disabled.png new file mode 100644 index 0000000..108a107 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-ltr-up-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-ltr-up-hover.png b/Cutefish/gtk-2.0/assets/spin-ltr-up-hover.png new file mode 100644 index 0000000..6a4d2cd Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-ltr-up-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-ltr-up.png b/Cutefish/gtk-2.0/assets/spin-ltr-up.png new file mode 100644 index 0000000..b735ea2 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-ltr-up.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-rtl-down-active.png b/Cutefish/gtk-2.0/assets/spin-rtl-down-active.png new file mode 100644 index 0000000..eeed15c Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-rtl-down-active.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-rtl-down-disabled.png b/Cutefish/gtk-2.0/assets/spin-rtl-down-disabled.png new file mode 100644 index 0000000..a705208 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-rtl-down-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-rtl-down-hover.png b/Cutefish/gtk-2.0/assets/spin-rtl-down-hover.png new file mode 100644 index 0000000..35364e5 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-rtl-down-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-rtl-down.png b/Cutefish/gtk-2.0/assets/spin-rtl-down.png new file mode 100644 index 0000000..74ba4d6 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-rtl-down.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-rtl-up-active.png b/Cutefish/gtk-2.0/assets/spin-rtl-up-active.png new file mode 100644 index 0000000..0b43378 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-rtl-up-active.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-rtl-up-disabled.png b/Cutefish/gtk-2.0/assets/spin-rtl-up-disabled.png new file mode 100644 index 0000000..95f42b7 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-rtl-up-disabled.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-rtl-up-hover.png b/Cutefish/gtk-2.0/assets/spin-rtl-up-hover.png new file mode 100644 index 0000000..5d83996 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-rtl-up-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/spin-rtl-up.png b/Cutefish/gtk-2.0/assets/spin-rtl-up.png new file mode 100644 index 0000000..08c266a Binary files /dev/null and b/Cutefish/gtk-2.0/assets/spin-rtl-up.png differ diff --git a/Cutefish/gtk-2.0/assets/tab.png b/Cutefish/gtk-2.0/assets/tab.png new file mode 100644 index 0000000..52c5850 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/tab.png differ diff --git a/Cutefish/gtk-2.0/assets/treeview-ltr-button-active.png b/Cutefish/gtk-2.0/assets/treeview-ltr-button-active.png new file mode 100644 index 0000000..365523e Binary files /dev/null and b/Cutefish/gtk-2.0/assets/treeview-ltr-button-active.png differ diff --git a/Cutefish/gtk-2.0/assets/treeview-ltr-button-hover.png b/Cutefish/gtk-2.0/assets/treeview-ltr-button-hover.png new file mode 100644 index 0000000..e43317c Binary files /dev/null and b/Cutefish/gtk-2.0/assets/treeview-ltr-button-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/treeview-ltr-button.png b/Cutefish/gtk-2.0/assets/treeview-ltr-button.png new file mode 100644 index 0000000..862ac32 Binary files /dev/null and b/Cutefish/gtk-2.0/assets/treeview-ltr-button.png differ diff --git a/Cutefish/gtk-2.0/assets/treeview-rtl-button-active.png b/Cutefish/gtk-2.0/assets/treeview-rtl-button-active.png new file mode 100644 index 0000000..3dc0f5a Binary files /dev/null and b/Cutefish/gtk-2.0/assets/treeview-rtl-button-active.png differ diff --git a/Cutefish/gtk-2.0/assets/treeview-rtl-button-hover.png b/Cutefish/gtk-2.0/assets/treeview-rtl-button-hover.png new file mode 100644 index 0000000..f6dce3b Binary files /dev/null and b/Cutefish/gtk-2.0/assets/treeview-rtl-button-hover.png differ diff --git a/Cutefish/gtk-2.0/assets/treeview-rtl-button.png b/Cutefish/gtk-2.0/assets/treeview-rtl-button.png new file mode 100644 index 0000000..04b779b Binary files /dev/null and b/Cutefish/gtk-2.0/assets/treeview-rtl-button.png differ diff --git a/Cutefish/gtk-2.0/gtkrc b/Cutefish/gtk-2.0/gtkrc new file mode 100644 index 0000000..4093a5a --- /dev/null +++ b/Cutefish/gtk-2.0/gtkrc @@ -0,0 +1,36 @@ +# Based on Bridge by ScionicSpectre and Adwaita by GNOME +# vim:set ts=2 sw=2 sts=2 ai et: +# +# This is the GTK 2 version of Materia. It's whole purpose is to look as the +# GTK 3 version as much as possible until GTK 2 dies completely. +# +# Note: comments for explaining styles are on the bottom of each file beside the +# widget matches. + +# Declare the colours used throughout the theme. +# There shouldn't be any fiddling with them in the theme files themselves in +# order to not mess up the dark theme. + +# Text/base +gtk-color-scheme = "text_color:#212121\nbase_color:#FFFFFF" +# Foreground/background +gtk-color-scheme = "fg_color:#212121\nbg_color:#F2F2F2" +# Selected foreground/background +gtk-color-scheme = "selected_fg_color:#FFFFFF\nselected_bg_color:#3c84f7" +# Titlebar foreground/background +gtk-color-scheme = "titlebar_fg_color:#212121\ntitlebar_bg_color:#FFFFFF" +# Menus +gtk-color-scheme = "menu_color:#FFFFFF" +# Tooltips foreground/background +gtk-color-scheme = "tooltip_fg_color:#FFFFFF\ntooltip_bg_color:#616161" +# Links +gtk-color-scheme = "link_color:#1A73E8\nvisited_link_color:#9C27B0" + +# Set GTK settings +gtk-auto-mnemonics = 1 +gtk-primary-button-warps-slider = 1 + +# And hand over the control to the theme files +include "main.rc" +include "apps.rc" +include "hacks.rc" diff --git a/Cutefish/gtk-2.0/hacks.rc b/Cutefish/gtk-2.0/hacks.rc new file mode 100644 index 0000000..c288da3 --- /dev/null +++ b/Cutefish/gtk-2.0/hacks.rc @@ -0,0 +1,36 @@ +# vim:set ft=gtkrc ts=2 sw=2 sts=2 ai et: +# +# This file contains horrible hacks to make this theme work with some programs +# This is mostly due to the limitations of GTK 2 but sometimes its the fault of +# the programs themselves. Not going to point fingers. +# +# Either way, it's a WONTFIX for both, hence this horrible file. + +style "toplevel_hack" { + engine "adwaita" {} +} + +style "chrome_entry" { + base[NORMAL] = @base_color + base[INSENSITIVE] = @base_color +} + +style "vim_notebook" { + bg[NORMAL] = @base_color + bg[ACTIVE] = @bg_color +} + +# Vim puts an eventbox between the tab and the label and colours it, +# we need to handle that +widget "vim-main-window*GtkNotebook.GtkEventBox" style "vim_notebook" + +# (he)xchat input box +class "SexySpellEntry" style:highest "normal_entry" + +# Chromium uses base as the fill colour of its own entries +# This would be fine but GTK uses it to fill the surrounding space, so its set to bg +# That results in Chromium using it for the fill, so we need to handle that +widget_class "*Chrom*" style "chrome_entry" + +# Hack to be able to match widgets in LibreOffice +class "GtkWindow" style "toplevel_hack" diff --git a/Cutefish/gtk-2.0/main.rc b/Cutefish/gtk-2.0/main.rc new file mode 100644 index 0000000..62edf4d --- /dev/null +++ b/Cutefish/gtk-2.0/main.rc @@ -0,0 +1,2705 @@ +# vim:set ft=gtkrc ts=2 sw=2 sts=2 ai et: +# +# This is the main theme file, handling all the default widgets and theme +# properties. Since GTK 2 is old, we need to overcome some of its limitations, +# which is also mostly done in this file. Sadly not all of them can be overcome +# so there will always be a visible difference between the GTK 2 and 3 theme. + +style "default" { + xthickness = 1 + ythickness = 1 + + #################### + # Style Properties # + #################### + + GtkWidget::focus-padding = 0 + GtkWidget::focus-line-width = 2 + GtkWidget::focus-line-pattern = "\2\1" + + GtkToolbar::space-size = 5 # 1 + 2*2 (separator + margins) + GtkToolbar::internal-padding = 2 + GtkToolButton::icon-spacing = 4 + + GtkWidget::tooltip-radius = 4 + GtkWidget::tooltip-alpha = 230 + GtkWidget::new-tooltip-style = 1 #for compatibility + + GtkWidget::link-color = @link_color + GtkWidget::visited-link-color = @visited_link_color + GnomeHRef::link_color = @link_color + GtkHTML::link-color = @link_color + GtkHTML::vlink-color = @visited_link_color + GtkIMHtml::hyperlink-color = @link_color + GtkIMHtml::hyperlink-visited-color = @visited_link_color + + GtkSeparatorMenuItem::horizontal-padding = 0 + GtkSeparatorMenuItem::wide-separators = 1 + GtkSeparatorMenuItem::separator-height = 3 + + GtkButton::child-displacement-y = 0 + + GtkButton::default-border = {0, 0, 0, 0} + GtkButton::default-outside-border = {0, 0, 0, 0} + GtkButton::inner-border = {4, 4, 4, 4} + + GtkEntry::state-hint = 1 + GtkEntry::inner-border = {4, 4, 4, 4} + + GtkPaned::handle-size = 8 + GtkHPaned::handle-size = 8 + GtkVPaned::handle-size = 8 + + GtkScrollbar::trough-border = 0 + GtkRange::trough-border = 0 + GtkRange::slider-width = 17 + GtkRange::stepper-size = 0 + GtkRange::activate-slider = 1 + + GtkScrollbar::activate-slider = 1 + GtkScrollbar::stepper-size = 0 + GtkScrollbar::has-backward-stepper = 0 + GtkScrollbar::has-forward-stepper = 0 + GtkScrollbar::min-slider-length = 32 # 24 + 2*4 (margins) + GtkScrolledWindow::scrollbar-spacing = 0 + GtkScrolledWindow::scrollbars-within-bevel = 1 + + GtkScale::slider_length = 24 + GtkScale::slider_width = 24 + GtkScale::trough-side-details = 1 + + GtkProgressBar::min-horizontal-bar-height = 4 + GtkProgressBar::min-vertical-bar-width = 4 + GtkProgressBar::xspacing = 4 + GtkProgressBar::yspacing = 4 + + GtkStatusbar::shadow_type = GTK_SHADOW_NONE + GtkSpinButton::shadow_type = GTK_SHADOW_NONE + GtkMenuBar::shadow-type = GTK_SHADOW_NONE + GtkToolbar::shadow-type = GTK_SHADOW_NONE + # TODO: find out what this comment means: + # ( every window is misaligned for the sake of menus ): + GtkMenuBar::internal-padding = 0 + GtkMenu::horizontal-padding = 0 + GtkMenu::vertical-padding = 4 + GtkMenu::double-arrows = 0 + GtkMenuItem::arrow-scaling = 1 + GtkMenuItem::toggle-spacing = 12 + + GtkCheckButton::indicator-size = 24 + GtkCheckButton::indicator_spacing = 2 + GtkOptionMenu::indicator_spacing = {8, 8, 4, 4} + + GtkTreeView::expander-size = 16 + GtkTreeView::vertical-separator = 0 + GtkTreeView::horizontal-separator = 4 + GtkTreeView::allow-rules = 0 + # Set this because some apps read it + GtkTreeView::odd-row-color = @base_color + GtkTreeView::even-row-color = @base_color + + GtkExpander::expander-size = 16 + + GtkNotebook::tab-overlap = 0 + + ########## + # Colors # + ########## + + bg[NORMAL] = @bg_color + bg[PRELIGHT] = @bg_color + bg[SELECTED] = mix (0.24, @selected_bg_color, @bg_color) + bg[INSENSITIVE] = @bg_color + bg[ACTIVE] = @bg_color + + fg[NORMAL] = @fg_color + fg[PRELIGHT] = @fg_color + fg[SELECTED] = @fg_color + fg[INSENSITIVE] = mix (0.5, @fg_color, @bg_color) + fg[ACTIVE] = @fg_color + + text[NORMAL] = @text_color + text[PRELIGHT] = @text_color + text[SELECTED] = @text_color + text[INSENSITIVE] = mix (0.5, @text_color, @base_color) + text[ACTIVE] = @text_color + + base[NORMAL] = @base_color + base[PRELIGHT] = mix (0.08, @text_color, @base_color) + base[SELECTED] = mix (0.24, @selected_bg_color, @base_color) + base[INSENSITIVE] = mix (0.5, @base_color, @bg_color) + base[ACTIVE] = mix (0.24, @selected_bg_color, @base_color) + + # For succinctness, all reasonable pixmap options remain here + + # Draw frame around menu in a non-compositied environment + # This needs to go before pixmap because we need to override some stuff + engine "adwaita" {} + + engine "pixmap" { + + ################# + # Check Buttons # + ################# + + image { + function = CHECK + state = NORMAL + shadow = OUT + overlay_file = "assets/checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = OUT + overlay_file = "assets/checkbox-unchecked-hover.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = OUT + overlay_file = "assets/checkbox-unchecked-active.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = SELECTED + shadow = OUT + overlay_file = "assets/checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = OUT + overlay_file = "assets/checkbox-unchecked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = NORMAL + shadow = IN + overlay_file = "assets/checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = IN + overlay_file = "assets/checkbox-checked-hover.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = IN + overlay_file = "assets/checkbox-checked-active.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = SELECTED + shadow = IN + overlay_file = "assets/checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = IN + overlay_file = "assets/checkbox-checked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = NORMAL + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed-hover.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed-active.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = SELECTED + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = ETCHED_IN + overlay_file = "assets/checkbox-mixed-disabled.png" + overlay_stretch = FALSE + } + + ################# + # Radio Buttons # + ################# + + image { + function = OPTION + state = NORMAL + shadow = OUT + overlay_file = "assets/radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = OUT + overlay_file = "assets/radio-unchecked-hover.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = OUT + overlay_file = "assets/radio-unchecked-active.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = SELECTED + shadow = OUT + overlay_file = "assets/radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = OUT + overlay_file = "assets/radio-unchecked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = NORMAL + shadow = IN + overlay_file = "assets/radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = IN + overlay_file = "assets/radio-checked-hover.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = IN + overlay_file = "assets/radio-checked-active.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = SELECTED + shadow = IN + overlay_file = "assets/radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = IN + overlay_file = "assets/radio-checked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = NORMAL + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed-hover.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed-active.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = SELECTED + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = ETCHED_IN + overlay_file = "assets/radio-mixed-disabled.png" + overlay_stretch = FALSE + } + + ########## + # Arrows # + ########## + + # Overrides + + # Disable arrows in spinbuttons + image { + function = ARROW + detail = "spinbutton" + } + + # Disable arrows for qt in scrollbars + + image { + function = ARROW + detail = "vscrollbar" + } + + image { + function = ARROW + detail = "hscrollbar" + } + + # Menu arrows + + image { + function = ARROW + state = NORMAL + detail = "menuitem" + overlay_file = "assets/pan-left.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = PRELIGHT + detail = "menuitem" + overlay_file = "assets/pan-left.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = INSENSITIVE + detail = "menuitem" + overlay_file = "assets/pan-left-disabled.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = NORMAL + detail = "menuitem" + overlay_file = "assets/pan-right.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = PRELIGHT + detail = "menuitem" + overlay_file = "assets/pan-right.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = INSENSITIVE + detail = "menuitem" + overlay_file = "assets/pan-right-disabled.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = INSENSITIVE + detail = "menu_scroll_arrow_up" + overlay_file = "assets/pan-up-disabled.png" + overlay_stretch = FALSE + } + + image { + function = ARROW + detail = "menu_scroll_arrow_up" + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + } + + image { + function = ARROW + state = INSENSITIVE + detail = "menu_scroll_arrow_down" + overlay_file = "assets/pan-down-disabled.png" + overlay_stretch = FALSE + } + + image { + function = ARROW + detail = "menu_scroll_arrow_down" + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + # Regular arrows + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = INSENSITIVE + overlay_file = "assets/pan-up-alt-disabled.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = INSENSITIVE + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-left-alt.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-left.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-left.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = INSENSITIVE + overlay_file = "assets/pan-left-alt-disabled.png" + overlay_stretch = FALSE + arrow_direction = LEFT + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-right-alt.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-right.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-right.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + image { + function = ARROW + state = INSENSITIVE + overlay_file = "assets/pan-right-alt-disabled.png" + overlay_stretch = FALSE + arrow_direction = RIGHT + } + + ###################### + # Option Menu Arrows # + ###################### + + image { + function = TAB + state = NORMAL + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + } + + image { + function = TAB + state = PRELIGHT + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + image { + function = TAB + state = ACTIVE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + } + + image { + function = TAB + state = INSENSITIVE + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + } + + ######### + # Lines # + ######### + + image { + function = VLINE + file = "assets/border.png" + border = {1, 0, 0, 0} + } + + image { + function = HLINE + file = "assets/border.png" + border = {0, 0, 1, 0} + } + + ######### + # Focus # + ######### + + image { + function = FOCUS + file = "assets/focus.png" + border = {5, 5, 5, 5} # Super strange, {4, 4, 4, 4} does not work properly... + stretch = TRUE + } + + ########### + # Handles # + ########### + + image { + function = HANDLE + detail = "handlebox" + overlay_file = "assets/handle-vert.png" + overlay_stretch = FALSE + } + + image { + function = HANDLE + state = NORMAL + overlay_file = "assets/handle-horz.png" + overlay_stretch = FALSE + orientation = HORIZONTAL + } + + image { + function = HANDLE + state = PRELIGHT + overlay_file = "assets/handle-horz-hover.png" + overlay_stretch = FALSE + orientation = HORIZONTAL + } + + image { + function = HANDLE + state = ACTIVE + overlay_file = "assets/handle-horz-active.png" + overlay_stretch = FALSE + orientation = HORIZONTAL + } + + image { + function = HANDLE + state = NORMAL + overlay_file = "assets/handle-vert.png" + overlay_stretch = FALSE + orientation = VERTICAL + } + + image { + function = HANDLE + state = PRELIGHT + overlay_file = "assets/handle-vert-hover.png" + overlay_stretch = FALSE + orientation = VERTICAL + } + + image { + function = HANDLE + state = ACTIVE + overlay_file = "assets/handle-vert-active.png" + overlay_stretch = FALSE + orientation = VERTICAL + } + + image { + function = RESIZE_GRIP + } + + ############# + # Expanders # + ############# + + image { + function = EXPANDER + expander_style = EXPANDED + state = NORMAL + file = "assets/pan-down-alt.png" + } + + image { + function = EXPANDER + expander_style = EXPANDED + state = PRELIGHT + file = "assets/pan-down.png" + } + + image { + function = EXPANDER + expander_style = EXPANDED + state = ACTIVE + file = "assets/pan-down.png" + } + + image { + function = EXPANDER + expander_style = EXPANDED + state = INSENSITIVE + file = "assets/pan-down-alt-disabled.png" + } + + # LTR + + image { + function = EXPANDER + expander_style = COLLAPSED + state = NORMAL + file = "assets/pan-right-alt.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = PRELIGHT + file = "assets/pan-right.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = ACTIVE + file = "assets/pan-right.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = INSENSITIVE + file = "assets/pan-right-alt-disabled.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = SEMI_COLLAPSED + file = "assets/pan-right-semi.png" + direction = LTR + } + + image { + function = EXPANDER + expander_style = SEMI_EXPANDED + file = "assets/pan-right-semi.png" + direction = LTR + } + + # RTL + + image { + function = EXPANDER + expander_style = COLLAPSED + state = NORMAL + file = "assets/pan-left-alt.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = PRELIGHT + file = "assets/pan-left.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = ACTIVE + file = "assets/pan-left.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = COLLAPSED + state = INSENSITIVE + file = "assets/pan-left-alt-disabled.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = SEMI_COLLAPSED + file = "assets/pan-left-semi.png" + direction = RTL + } + + image { + function = EXPANDER + expander_style = SEMI_EXPANDED + file = "assets/pan-left-semi.png" + direction = RTL + } + + ############# + # Notebooks # + ############# + + # Left + + image { + function = EXTENSION + state = NORMAL + file = "assets/tab.png" + border = {0, 1, 0, 0} + stretch = TRUE + gap_side = RIGHT + } + + image { + function = EXTENSION + gap_side = RIGHT + } + + # Right + + image { + function = EXTENSION + state = NORMAL + file = "assets/tab.png" + border = {1, 0, 0, 0} + stretch = TRUE + gap_side = LEFT + } + + image { + function = EXTENSION + gap_side = LEFT + } + + # Up + + image { + function = EXTENSION + state = NORMAL + file = "assets/tab.png" + border = {0, 0, 0, 1} + stretch = TRUE + gap_side = BOTTOM + } + + image { + function = EXTENSION + gap_side = BOTTOM + } + + # Down + + image { + function = EXTENSION + state = NORMAL + file = "assets/tab.png" + border = {0, 0, 1, 0} + stretch = TRUE + gap_side = TOP + } + + image { + function = EXTENSION + gap_side = TOP + } + + # Inner frame + + image { + function = BOX_GAP + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_file = "assets/tab.png" + gap_border = {1, 0, 0, 0} + gap_side = LEFT + } + + image { + function = BOX_GAP + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_file = "assets/tab.png" + gap_border = {0, 1, 0, 0} + gap_side = RIGHT + } + + image { + function = BOX_GAP + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_file = "assets/tab.png" + gap_border = {0, 0, 1, 0} + gap_side = TOP + } + + image { + function = BOX_GAP + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_file = "assets/tab.png" + gap_border = {0, 0, 0, 1} + gap_side = BOTTOM + } + + # Standalone frame + image { + function = BOX + detail = "notebook" + file = "assets/frame-notebook.png" + border = {1, 1, 1, 1} + stretch = TRUE + } + + ############## + # Scrollbars # + ############## + + image { + function = BOX + detail = "trough" + file = "assets/scrollbar-horz-trough.png" + border = {0, 0, 1, 0} + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "trough" + file = "assets/scrollbar-vert-ltr-trough.png" + border = {1, 0, 0, 0} + orientation = VERTICAL + direction = LTR + } + + image { + function = BOX + detail = "trough" + file = "assets/scrollbar-vert-rtl-trough.png" + border = {0, 1, 0, 0} + orientation = VERTICAL + direction = RTL + } + + # Horizontal sliders + + image { + function = SLIDER + state = NORMAL + detail = "slider" + file = "assets/scrollbar-horz-slider.png" + border = {8, 8, 9, 8 } + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = SLIDER + state = PRELIGHT + detail = "slider" + file = "assets/scrollbar-horz-slider-hover.png" + border = {8, 8, 9, 8 } + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = SLIDER + state = ACTIVE + detail = "slider" + file = "assets/scrollbar-horz-slider-active.png" + border = {8, 8, 9, 8 } + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "slider" + file = "assets/scrollbar-horz-slider-disabled.png" + border = {8, 8, 9, 8 } + stretch = TRUE + orientation = HORIZONTAL + } + + # Vertical sliders + + image { + function = SLIDER + state = NORMAL + detail = "slider" + file = "assets/scrollbar-vert-ltr-slider.png" + border = {9, 8, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = LTR + } + + image { + function = SLIDER + state = PRELIGHT + detail = "slider" + file = "assets/scrollbar-vert-ltr-slider-hover.png" + border = {9, 8, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = LTR + } + + image { + function = SLIDER + state = ACTIVE + detail = "slider" + file = "assets/scrollbar-vert-ltr-slider-active.png" + border = {9, 8, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = LTR + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "slider" + file = "assets/scrollbar-vert-ltr-slider-disabled.png" + border = {9, 8, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = LTR + } + + # RTL + + image { + function = SLIDER + state = NORMAL + detail = "slider" + file = "assets/scrollbar-vert-rtl-slider.png" + border = {8, 9, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = RTL + } + + image { + function = SLIDER + state = PRELIGHT + detail = "slider" + file = "assets/scrollbar-vert-rtl-slider-hover.png" + border = {8, 9, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = RTL + } + + image { + function = SLIDER + state = ACTIVE + detail = "slider" + file = "assets/scrollbar-vert-rtl-slider-active.png" + border = {8, 9, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = RTL + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "slider" + file = "assets/scrollbar-vert-rtl-slider-disabled.png" + border = {8, 9, 8, 8} + stretch = TRUE + orientation = VERTICAL + direction = RTL + } + + ########## + # Scales # + ########## + + # Troughs, overrided later on. We set them here too because some widgets + # don't specify their orientation. + + image { + function = BOX + detail = "trough-upper" + file = "assets/scale-horz-trough.png" + border = {6, 6, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + state = INSENSITIVE + detail = "trough-upper" + file = "assets/scale-horz-trough-disabled.png" + border = {6, 6, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "trough-lower" + file = "assets/scale-horz-trough-active.png" + border = {6, 6, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + state = INSENSITIVE + detail = "trough-lower" + file = "assets/scale-horz-trough-disabled.png" + border = {6, 6, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "trough-upper" + file = "assets/scale-vert-trough.png" + border = {0, 0, 6, 6} + stretch = TRUE + orientation = VERTICAL + } + + image { + function = BOX + state = INSENSITIVE + detail = "trough-upper" + file = "assets/scale-vert-trough-disabled.png" + border = {0, 0, 6, 6} + stretch = TRUE + orientation = VERTICAL + } + + image { + function = BOX + detail = "trough-lower" + file = "assets/scale-vert-trough-active.png" + border = {0, 0, 6, 6} + stretch = TRUE + orientation = VERTICAL + } + + image { + function = BOX + state = INSENSITIVE + detail = "trough-lower" + file = "assets/scale-vert-trough-disabled.png" + border = {0, 0, 6, 6} + stretch = TRUE + orientation = VERTICAL + } + + # Sliders + + image { + function = SLIDER + state = NORMAL + detail = "hscale" + file = "assets/scale-slider.png" + } + + image { + function = SLIDER + state = PRELIGHT + detail = "hscale" + file = "assets/scale-slider-hover.png" + } + + image { + function = SLIDER + state = ACTIVE + detail = "hscale" + file = "assets/scale-slider-active.png" + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "hscale" + file = "assets/scale-slider-disabled.png" + } + + image { + function = SLIDER + state = NORMAL + detail = "vscale" + file = "assets/scale-slider.png" + } + + image { + function = SLIDER + state = PRELIGHT + detail = "vscale" + file = "assets/scale-slider-hover.png" + } + + image { + function = SLIDER + state = ACTIVE + detail = "vscale" + file = "assets/scale-slider-active.png" + } + + image { + function = SLIDER + state = INSENSITIVE + detail = "vscale" + file = "assets/scale-slider-disabled.png" + } + + ########### + # Menubar # + ########### + + # image { + # function = BOX + # detail = "menubar" + # file = "assets/border.png" + # border = {0, 0, 0, 1} + # } + + ######### + # Menus # + ######### + + image { + function = BOX + state = PRELIGHT + detail = "menu_scroll_arrow_up" + file = "assets/border.png" + } + + image { + function = BOX + detail = "menu_scroll_arrow_up" + file = "assets/border.png" + border = {0, 0, 0, 1} + } + + image { + function = BOX + state = PRELIGHT + detail = "menu_scroll_arrow_down" + file = "assets/border.png" + } + + image { + function = BOX + detail = "menu_scroll_arrow_down" + file = "assets/border.png" + border = {0, 0, 1, 0} + } + + ########### + # Entries # + ########### + + image { + function = SHADOW + state = ACTIVE + detail = "entry" + file = "assets/entry-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = SHADOW + state = INSENSITIVE + detail = "entry" + file = "assets/entry-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = SHADOW + detail = "entry" + file = "assets/entry.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = FLAT_BOX + state = ACTIVE + detail = "entry_bg" + file = "assets/entry-background.png" + } + + image { + function = FLAT_BOX + state = INSENSITIVE + detail = "entry_bg" + file = "assets/entry-background-disabled.png" + } + + image { + function = FLAT_BOX + detail = "entry_bg" + file = "assets/entry-background.png" + } + + ######### + # Spins # + ######### + + # Spin-Up LTR + + image { + function = BOX + state = NORMAL + detail = "spinbutton_up" + file = "assets/spin-ltr-up.png" + border = {0, 8, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_up" + file = "assets/spin-ltr-up-hover.png" + border = {0, 8, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_up" + file = "assets/spin-ltr-up-active.png" + border = {0, 8, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_up" + file = "assets/spin-ltr-up-disabled.png" + border = {0, 8, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up-alt-disabled.png" + overlay_stretch = FALSE + direction = LTR + } + + # Spin-Up RTL + + image { + function = BOX + state = NORMAL + detail = "spinbutton_up" + file = "assets/spin-rtl-up.png" + border = {8, 0, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_up" + file = "assets/spin-rtl-up-hover.png" + border = {8, 0, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_up" + file = "assets/spin-rtl-up-hover.png" + border = {8, 0, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_up" + file = "assets/spin-rtl-up-disabled.png" + border = {8, 0, 8, 0} + stretch = TRUE + overlay_file = "assets/pan-up-alt-disabled.png" + overlay_stretch = FALSE + direction = RTL + } + + # Spin-Down LTR + + image { + function = BOX + state = NORMAL + detail = "spinbutton_down" + file = "assets/spin-ltr-down.png" + border = {0, 8, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_down" + file = "assets/spin-ltr-down-hover.png" + border = {0, 8, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_down" + file = "assets/spin-ltr-down-active.png" + border = {0, 8, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + direction = LTR + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_down" + file = "assets/spin-ltr-down-disabled.png" + border = {0, 8, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + direction = LTR + } + + # Spin-Down RTL + + image { + function = BOX + state = NORMAL + detail = "spinbutton_down" + file = "assets/spin-rtl-down.png" + border = {8, 0, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = PRELIGHT + detail = "spinbutton_down" + file = "assets/spin-rtl-down-hover.png" + border = {8, 0, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = ACTIVE + detail = "spinbutton_down" + file = "assets/spin-rtl-down-active.png" + border = {8, 0, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + direction = RTL + } + + image { + function = BOX + state = INSENSITIVE + detail = "spinbutton_down" + file = "assets/spin-rtl-down-disabled.png" + border = {8, 0, 0, 8} + stretch = TRUE + overlay_file = "assets/pan-down-alt-disabled.png" + overlay_stretch = FALSE + direction = RTL + } + + ############## + # Scrollbars # + ############## + + image { + function = BOX + detail = "bar" + file = "assets/progressbar-progress.png" + stretch = TRUE + border = {0, 0, 0, 0} + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "bar" + file = "assets/progressbar-progress.png" + stretch = TRUE + border = {0, 0, 0, 0} + orientation = VERTICAL + } + + ############# + # Treeviews # + ############# + + # Disable active the column highlight + # We need to match specific cells or we break stuff + # Looking at you deadbeef + + image { + function = FLAT_BOX + detail = "cell_even_sorted" + state = NORMAL + } + + image { + function = FLAT_BOX + detail = "cell_odd_sorted" + state = NORMAL + } + + # Disable all the other shadows + # This prevents the Raleigh effect + image { + function = SHADOW + } + } +} + +style "menubar" { + bg[NORMAL] = @titlebar_bg_color + fg[NORMAL] = mix(0.7, @titlebar_fg_color, @titlebar_bg_color) + fg[PRELIGHT] = @titlebar_fg_color + fg[INSENSITIVE] = mix(0.3, @titlebar_fg_color, @titlebar_bg_color) + # Needed to fix Firefox's menubar text + bg[SELECTED] = mix(0.12, @titlebar_fg_color, @titlebar_bg_color) + fg[SELECTED] = @titlebar_fg_color +} + +style "menubar_item" { + xthickness = 3 + ythickness = 4 + + fg[NORMAL] = mix(0.7, @titlebar_fg_color, @titlebar_bg_color) + bg[PRELIGHT] = mix(0.12, @titlebar_fg_color, @titlebar_bg_color) + fg[PRELIGHT] = @titlebar_fg_color + fg[INSENSITIVE] = mix(0.3, @titlebar_fg_color, @titlebar_bg_color) +} + +style "menu" { + xthickness = 0 + ythickness = 0 + + bg[NORMAL] = @menu_color + bg[INSENSITIVE] = @menu_color + bg[PRELIGHT] = @menu_color + bg[SELECTED] = mix(0.08, @fg_color, @menu_color) +} + +style "menu_item" { + xthickness = 4 + ythickness = 4 + + bg[PRELIGHT] = mix(0.08, @fg_color, @menu_color) + fg[PRELIGHT] = @fg_color + # Chromium uses this setting + bg[SELECTED] = mix(0.08, @fg_color, @menu_color) + text[SELECTED] = @fg_color + # Some widgets use text, we need to handle that + text[NORMAL] = @fg_color + text[PRELIGHT] = @fg_color + + # Unfortunately we can't tell regular and menu checks/radios apart + # Without the heirarchy + engine "pixmap" { + + ################# + # Check Buttons # + ################# + + image { + function = CHECK + state = NORMAL + shadow = OUT + overlay_file = "assets/menu-checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = OUT + overlay_file = "assets/menu-checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = OUT + overlay_file = "assets/menu-checkbox-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = OUT + overlay_file = "assets/menu-checkbox-unchecked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = NORMAL + shadow = IN + overlay_file = "assets/menu-checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = IN + overlay_file = "assets/menu-checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = IN + overlay_file = "assets/menu-checkbox-checked.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = IN + overlay_file = "assets/menu-checkbox-checked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = NORMAL + shadow = ETCHED_IN + overlay_file = "assets/menu-checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = PRELIGHT + shadow = ETCHED_IN + overlay_file = "assets/menu-checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = ACTIVE + shadow = ETCHED_IN + overlay_file = "assets/menu-checkbox-mixed.png" + overlay_stretch = FALSE + } + + image { + function = CHECK + state = INSENSITIVE + shadow = ETCHED_IN + overlay_file = "assets/menu-checkbox-mixed-disabled.png" + overlay_stretch = FALSE + } + + ################# + # Radio Buttons # + ################# + + image { + function = OPTION + state = NORMAL + shadow = OUT + overlay_file = "assets/menu-radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = OUT + overlay_file = "assets/menu-radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = OUT + overlay_file = "assets/menu-radio-unchecked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = OUT + overlay_file = "assets/menu-radio-unchecked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = NORMAL + shadow = IN + overlay_file = "assets/menu-radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = IN + overlay_file = "assets/menu-radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = IN + overlay_file = "assets/menu-radio-checked.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = IN + overlay_file = "assets/menu-radio-checked-disabled.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = NORMAL + shadow = ETCHED_IN + overlay_file = "assets/menu-radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = PRELIGHT + shadow = ETCHED_IN + overlay_file = "assets/menu-radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = ACTIVE + shadow = ETCHED_IN + overlay_file = "assets/menu-radio-mixed.png" + overlay_stretch = FALSE + } + + image { + function = OPTION + state = INSENSITIVE + shadow = ETCHED_IN + overlay_file = "assets/menu-radio-mixed-disabled.png" + overlay_stretch = FALSE + } + } +} + +style "separator_menu_item" { + xthickness = 0 + ythickness = 2 + + engine "pixmap" { + image { + function = BOX + file = "assets/border.png" + border = {0, 0, 0, 1} + } + } +} + +style "button_label" { + # fg[NORMAL] = mix(0.7, @fg_color, @bg_color) + # fg[INSENSITIVE] = mix(0.3, @fg_color, @bg_color) + + font_name = "Medium" +} + +style "normal_button_label" { + # fg[NORMAL] = @fg_color + # fg[INSENSITIVE] = mix(0.5, @fg_color, @bg_color) + + font_name = "Regular" +} + +style "button" { + xthickness = 6 + ythickness = 6 + + # For the sake of sanity style buttons this way + engine "pixmap" { + + ########### + # Buttons # + ########### + + image { + function = BOX + state = NORMAL + file = "assets/button.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = PRELIGHT + shadow = OUT + file = "assets/button-hover.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + # Don't add hover effect on pressed buttons + image { + function = BOX + state = PRELIGHT + shadow = IN + file = "assets/button-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = ACTIVE + file = "assets/button-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = INSENSITIVE + file = "assets/button-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + } +} + +style "link_button" { + # Disable the button effect, leave just the link + engine "pixmap" { + image { + function = BOX + } + } +} + +style "entry" { + base[NORMAL] = @bg_color + base[SELECTED] = mix (0.24, @selected_bg_color, @bg_color) + base[INSENSITIVE] = @bg_color + base[ACTIVE] = mix (0.24, @selected_bg_color, @bg_color) + + # We set this same as the border of the border of the entry + # This way there's no overlap + xthickness = 6 + ythickness = 6 +} + +style "combobox" { + xthickness = 6 + ythickness = 6 + + # This affects only the button beside an entry + GtkButton::inner-border = {0, 0, 0, 0} + + # For the sake of sanity style buttons this way + engine "pixmap" { + + ########### + # Buttons # + ########### + + image { + function = BOX + state = NORMAL + file = "assets/entry.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = PRELIGHT + file = "assets/entry-hover.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = ACTIVE + file = "assets/entry-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = INSENSITIVE + file = "assets/entry-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + } +} + +style "combobox_cellview" { + # text[NORMAL] = mix(0.7, @fg_color, @bg_color) + # text[INSENSITIVE] = mix(0.3, @fg_color, @bg_color) +} + +style "combobox_entry" { + # Since one side of the button is missing, we need to shift the arrow a little to the right + GtkButton::inner-border = {0, 2, 0, 0} + + base[NORMAL] = @base_color + base[ACTIVE] = @base_color + + engine "pixmap" { + + ############# + # LTR entry # + ############# + + image { + function = SHADOW + state = NORMAL + detail = "entry" + file = "assets/combo-left-entry.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = SHADOW + state = ACTIVE + detail = "entry" + file = "assets/combo-left-entry-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = SHADOW + state = INSENSITIVE + detail = "entry" + file = "assets/combo-left-entry-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + ############# + # RTL entry # + ############# + + image { + function = SHADOW + state = NORMAL + detail = "entry" + file = "assets/combo-right-entry.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = SHADOW + state = ACTIVE + detail = "entry" + file = "assets/combo-right-entry-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = SHADOW + state = INSENSITIVE + detail = "entry" + file = "assets/combo-right-entry-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + direction = RTL + } + + ############## + # LTR button # + ############## + + image { + function = BOX + state = NORMAL + detail = "button" + file = "assets/combo-right-entry.png" + border = {0, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = PRELIGHT + detail = "button" + file = "assets/combo-right-entry-hover.png" + border = {0, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = ACTIVE + detail = "button" + file = "assets/combo-right-entry-active.png" + border = {0, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = INSENSITIVE + detail = "button" + file = "assets/combo-right-entry-disabled.png" + border = {0, 6, 6, 6} + stretch = TRUE + direction = LTR + } + + ############## + # RTL button # + ############## + + image { + function = BOX + state = NORMAL + detail = "button" + file = "assets/combo-left-entry.png" + border = {6, 0, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = PRELIGHT + detail = "button" + file = "assets/combo-left-entry-hover.png" + border = {6, 0, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = ACTIVE + detail = "button" + file = "assets/combo-left-entry-active.png" + border = {6, 0, 6, 6} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = INSENSITIVE + detail = "button" + file = "assets/combo-left-entry-disabled.png" + border = {6, 0, 6, 6} + stretch = TRUE + direction = RTL + } + } +} + +style "combo_button_padding" { + # Since one side of the button is missing, we need to shift the arrow a + # little to the right. + # This is the same thing we've done above but the combo, unlike the combobox, + # uses padding the same way as a button. + GtkButton::inner-border = {3, 6, 3, 3} +} + +style "notebook" { + xthickness = 3 + ythickness = 3 +} + +style "notebook_tab_label" { + fg[ACTIVE] = mix(0.7, @fg_color, @bg_color) + + font_name = "Medium" +} + +style "notebook_viewport" { + bg[NORMAL] = @base_color +} + +style "notebook_bg" { + bg[NORMAL] = @base_color + bg[PRELIGHT] = @base_color + bg[INSENSITIVE] = @base_color +} + +style "notebook_entry" { + base[NORMAL] = @base_color + base[SELECTED] = mix (0.24, @selected_bg_color, @base_color) + base[INSENSITIVE] = @base_color + base[ACTIVE] = mix (0.24, @selected_bg_color, @base_color) +} + +style "normal_bg" { + bg[NORMAL] = @bg_color + bg[PRELIGHT] = @bg_color + bg[INSENSITIVE] = @bg_color +} + +style "normal_entry" { + base[NORMAL] = @bg_color + base[SELECTED] = mix (0.24, @selected_bg_color, @bg_color) + base[INSENSITIVE] = @bg_color + base[ACTIVE] = mix (0.24, @selected_bg_color, @bg_color) +} + +style "textview" { + bg[NORMAL] = @base_color +} + +style "scale_horz" { + engine "pixmap" { + image { + function = BOX + detail = "trough-upper" + file = "assets/scale-horz-trough.png" + border = {6, 6, 0, 0} + stretch = TRUE + } + + image { + function = BOX + detail = "trough-lower" + file = "assets/scale-horz-trough-active.png" + border = {6, 6, 0, 0} + stretch = TRUE + } + } +} + +style "scale_vert" { + engine "pixmap" { + image { + function = BOX + detail = "trough-upper" + file = "assets/scale-vert-trough.png" + border = {0, 0, 6, 6} + stretch = TRUE + } + + image { + function = BOX + detail = "trough-lower" + file = "assets/scale-vert-trough-active.png" + border = {0, 0, 6, 6} + stretch = TRUE + } + } +} + +style "progressbar" { + xthickness = 0 + ythickness = 0 + + fg[PRELIGHT] = @selected_fg_color + + engine "pixmap" { + image { + function = BOX + detail = "trough" + file = "assets/progressbar-trough.png" + border = {0, 0, 0, 0} + stretch = TRUE + orientation = HORIZONTAL + } + + image { + function = BOX + detail = "trough" + file = "assets/progressbar-trough.png" + border = {0, 0, 0, 0} + stretch = TRUE + orientation = VERTICAL + } + } +} + +style "treeview_header" { + xthickness = 2 + ythickness = 2 + + fg[NORMAL] = mix(0.7, @fg_color, @base_color) + fg[PRELIGHT] = @fg_color + + font_name = "Medium" + + GtkButton::inner-border = {4, 4, 0, 2} + + engine "pixmap" { + image { + function = BOX + state = NORMAL + file = "assets/treeview-ltr-button.png" + border = {0, 1, 0, 1} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = PRELIGHT + file = "assets/treeview-ltr-button-hover.png" + border = {0, 1, 0, 1} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = ACTIVE + file = "assets/treeview-ltr-button-active.png" + border = {0, 1, 0, 1} + stretch = TRUE + direction = LTR + } + + image { + function = BOX + state = NORMAL + file = "assets/treeview-rtl-button.png" + border = {1, 0, 0, 1} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = PRELIGHT + file = "assets/treeview-rtl-button-hover.png" + border = {1, 0, 0, 1} + stretch = TRUE + direction = RTL + } + + image { + function = BOX + state = ACTIVE + file = "assets/treeview-rtl-button-active.png" + border = {1, 0, 0, 1} + stretch = TRUE + direction = RTL + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-up-alt.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-up.png" + overlay_stretch = FALSE + arrow_direction = UP + } + + image { + function = ARROW + state = NORMAL + overlay_file = "assets/pan-down-alt.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = PRELIGHT + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + + image { + function = ARROW + state = ACTIVE + overlay_file = "assets/pan-down.png" + overlay_stretch = FALSE + arrow_direction = DOWN + } + } +} + +style "scrolled_window" { + engine "pixmap" { + image { + function = SHADOW + file = "assets/frame.png" + border = {1, 1, 1, 1} + stretch = TRUE + } + } +} + +style "frame" { + engine "pixmap" { + image { + function = SHADOW + shadow = NONE + } + + image { + function = SHADOW + file = "assets/frame.png" + border = {1, 1, 1, 1} + stretch = TRUE + } + + image { + function = SHADOW_GAP + file = "assets/frame.png" + border = {1, 1, 1, 1} + stretch = TRUE + gap_start_file = "assets/border.png" + gap_end_file = "assets/border.png" + } + } +} + +style "tool_button" { + GtkButton::inner-border = {2, 2, 2, 2} + + # For the sake of sanity style buttons this way + engine "pixmap" { + image { + function = BOX + state = NORMAL + file = "assets/flat-button.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = PRELIGHT + shadow = OUT + file = "assets/flat-button-hover.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + # Don't add hover effect on pressed buttons + image { + function = BOX + state = PRELIGHT + shadow = IN + file = "assets/flat-button-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = ACTIVE + file = "assets/flat-button-active.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = INSENSITIVE + shadow = OUT + file = "assets/flat-button-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + + image { + function = BOX + state = INSENSITIVE + shadow = IN + file = "assets/button-disabled.png" + border = {6, 6, 6, 6} + stretch = TRUE + } + } +} + +style "toolbar_separator" { + GtkWidget::wide-separators = 1 + GtkWidget::separator-width = 1 + GtkWidget::separator-height = 1 + + engine "pixmap" { + image { + function = BOX + file = "assets/border.png" + } + } +} + +style "inline_toolbar" { + # GtkToolbar::button-relief = GTK_RELIEF_NORMAL + + engine "pixmap" { + image { + function = BOX + file = "assets/frame-inline.png" + border = {1, 1, 0, 1} + stretch = TRUE + } + } +} + +style "tooltip" { + xthickness = 8 + ythickness = 8 + + bg[NORMAL] = @tooltip_bg_color + fg[NORMAL] = @tooltip_fg_color + bg[SELECTED] = @tooltip_bg_color +} + +style "disable_text_shadow" { + engine "murrine" { + textstyle = 0 + } +} + +style "disable_separator" { + xthickness = 0 + ythickness = 0 + + GtkWidget::wide-separators = 1 +} + +# Default style, containing theme properties and trying to match every widget as +# much as possible, which is not only faster than trying to match every widget +# by its own but also less bug-prune and more consistent. However there is some +# widget specific stuff that needs to be taken care of, which is the point of +# every other style below. +class "GtkWidget" style "default" + +###################################### +# Override padding, style and colour # +###################################### + +class "GtkButton" style "button" +class "GtkLinkButton" style "link_button" +class "GtkEntry" style "entry" +class "GtkOldEditable" style "entry" +class "GtkNotebook" style "notebook" +class "GtkHScale" style "scale_horz" +class "GtkVScale" style "scale_vert" +class "GtkProgressBar" style "progressbar" +class "GtkScrolledWindow" style "scrolled_window" +class "GtkFrame" style "frame" +class "GtkSeparatorToolItem" style "toolbar_separator" +class "GtkMenuBar" style "menubar" +class "GtkMenu" style "menu" +class "GtkTextView" style "textview" + +# Menu and menubar items +widget_class "**" style "menu_item" +widget_class "*.*" style "menubar_item" +widget_class "**" style "separator_menu_item" + +# Treeview buttons +widget_class "***" style "treeview_header" + +# Give the file chooser toolbar a border +widget_class "**" style "inline_toolbar" + +# Fix padding on regular comboboxes +widget_class "*." style "combobox" +widget_class "*" style "combobox" + +# And disable separators on them +widget_class "*.*" style "disable_separator" +widget_class "**" style "disable_separator" +widget_class "**" style "disable_separator" + +# Join together the ComboBoxEntry entry and button +widget_class "**" style "combobox_entry" + +# Join the Combo entry and button +widget_class "**" style "combobox_entry" + +# Tweak the padding on the button a little bit because it +# uses it a bit differently +widget_class "*." style "combo_button_padding" + +# Alas we cannot do the same for ComboBoxText because there +# isn't a way to apply the style to only the comboboxes that +# have an entry inside + +# Tool buttons have different styles +widget_class "**" style "tool_button" +widget_class "**.*" style "tool_button" + +# Notebooks +widget_class "*." style "notebook_tab_label" +widget_class "*.." style "notebook_tab_label" + +# Notebooks are white, act accordingly +widget_class "**" style "notebook_entry" +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" + +# However, stuff inside eventboxes inside notebooks is grey +# again, react +widget_class "***" style "normal_entry" +widget_class "***" style "normal_bg" +widget_class "***" style "normal_bg" + +# Button labels +widget_class "*." style "button_label" + +# Normalize button labels +widget_class "*." style "normal_button_label" +widget_class "*." style "normal_button_label" + +# ComboBoxes tend to draw the button label with text[] +# instead of fg[], we need to fix that +widget_class "**" style "combobox_cellview" + +# Disable white text shadows +widget_class "*" style "disable_text_shadow" +widget_class "*" style "disable_text_shadow" + +# GTK tooltips +widget "gtk-tooltip*" style "tooltip" diff --git a/Cutefish/gtk-3.0/assets/scalable/checkbox-checked-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/checkbox-checked-symbolic.svg new file mode 100644 index 0000000..7b89e88 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/checkbox-checked-symbolic@2.svg b/Cutefish/gtk-3.0/assets/scalable/checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..17e3c4a --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/checkbox-mixed-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..b4808a6 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/checkbox-mixed-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/checkbox-mixed-symbolic@2.svg b/Cutefish/gtk-3.0/assets/scalable/checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..3ea0541 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/checkbox-mixed-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/cursor-handle-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/cursor-handle-symbolic.svg new file mode 100644 index 0000000..e2a252b --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/cursor-handle-symbolic.svg @@ -0,0 +1,3 @@ + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/radio-checked-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/radio-checked-symbolic.svg new file mode 100644 index 0000000..67beb46 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/radio-checked-symbolic.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/radio-checked-symbolic@2.svg b/Cutefish/gtk-3.0/assets/scalable/radio-checked-symbolic@2.svg new file mode 100644 index 0000000..bf51d9e --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/radio-checked-symbolic@2.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/radio-mixed-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/radio-mixed-symbolic.svg new file mode 120000 index 0000000..79b7355 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/radio-mixed-symbolic.svg @@ -0,0 +1 @@ +checkbox-mixed-symbolic.svg \ No newline at end of file diff --git a/Cutefish/gtk-3.0/assets/scalable/radio-mixed-symbolic@2.svg b/Cutefish/gtk-3.0/assets/scalable/radio-mixed-symbolic@2.svg new file mode 120000 index 0000000..b68859d --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/radio-mixed-symbolic@2.svg @@ -0,0 +1 @@ +checkbox-mixed-symbolic@2.svg \ No newline at end of file diff --git a/Cutefish/gtk-3.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..de0d789 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..7f0235f --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg @@ -0,0 +1,47 @@ + + + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/scale-slider-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/scale-slider-symbolic.svg new file mode 100644 index 0000000..4b00bc1 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/scale-slider-symbolic.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..37d9c04 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..1bc5cb6 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic.svg new file mode 100644 index 0000000..4759e32 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic@2.svg b/Cutefish/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..a44f5c9 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/small-checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..d621934 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg b/Cutefish/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..91c7006 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/small-radio-checked-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/small-radio-checked-symbolic.svg new file mode 100644 index 0000000..f2c9cf9 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/small-radio-checked-symbolic.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/small-radio-checked-symbolic@2.svg b/Cutefish/gtk-3.0/assets/scalable/small-radio-checked-symbolic@2.svg new file mode 100644 index 0000000..a06db4c --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/small-radio-checked-symbolic@2.svg @@ -0,0 +1,39 @@ + + + + + + diff --git a/Cutefish/gtk-3.0/assets/scalable/small-radio-mixed-symbolic.svg b/Cutefish/gtk-3.0/assets/scalable/small-radio-mixed-symbolic.svg new file mode 120000 index 0000000..86dfcec --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/small-radio-mixed-symbolic.svg @@ -0,0 +1 @@ +small-checkbox-mixed-symbolic.svg \ No newline at end of file diff --git a/Cutefish/gtk-3.0/assets/scalable/small-radio-mixed-symbolic@2.svg b/Cutefish/gtk-3.0/assets/scalable/small-radio-mixed-symbolic@2.svg new file mode 120000 index 0000000..bafb558 --- /dev/null +++ b/Cutefish/gtk-3.0/assets/scalable/small-radio-mixed-symbolic@2.svg @@ -0,0 +1 @@ +small-checkbox-mixed-symbolic@2.svg \ No newline at end of file diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-dark.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-dark.png new file mode 100644 index 0000000..00d08bd Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-dark.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-dark@2.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-dark@2.png new file mode 100644 index 0000000..25abeb6 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-dark@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark.png new file mode 100644 index 0000000..bb5607f Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png new file mode 100644 index 0000000..d6065db Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-disabled.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-disabled.png new file mode 100644 index 0000000..5861d66 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-disabled.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-disabled@2.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-disabled@2.png new file mode 100644 index 0000000..52907bf Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider-disabled@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider.png new file mode 100644 index 0000000..29f1fca Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider@2.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider@2.png new file mode 100644 index 0000000..47b16ec Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-after-slider@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-dark.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-dark.png new file mode 100644 index 0000000..22b3bc9 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-dark.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-dark@2.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-dark@2.png new file mode 100644 index 0000000..818c7ed Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-dark@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark.png new file mode 100644 index 0000000..e5f083e Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png new file mode 100644 index 0000000..2e8b6c7 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-disabled.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-disabled.png new file mode 100644 index 0000000..239ca9a Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-disabled.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-disabled@2.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-disabled@2.png new file mode 100644 index 0000000..adc1af7 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider-disabled@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider.png new file mode 100644 index 0000000..3a4aa7f Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider@2.png b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider@2.png new file mode 100644 index 0000000..9dd390f Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-horz-marks-before-slider@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-dark.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-dark.png new file mode 100644 index 0000000..3231d1b Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-dark.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-dark@2.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-dark@2.png new file mode 100644 index 0000000..78cff7e Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-dark@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark.png new file mode 100644 index 0000000..1bd736e Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png new file mode 100644 index 0000000..25f37ab Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-disabled.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-disabled.png new file mode 100644 index 0000000..8e9a3e2 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-disabled.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-disabled@2.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-disabled@2.png new file mode 100644 index 0000000..47f06af Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider-disabled@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider.png new file mode 100644 index 0000000..fedff3d Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider@2.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider@2.png new file mode 100644 index 0000000..6215f7c Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-after-slider@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-dark.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-dark.png new file mode 100644 index 0000000..5679039 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-dark.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-dark@2.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-dark@2.png new file mode 100644 index 0000000..03926a9 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-dark@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark.png new file mode 100644 index 0000000..61283d7 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png new file mode 100644 index 0000000..690689c Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-disabled.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-disabled.png new file mode 100644 index 0000000..040f9f6 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-disabled.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-disabled@2.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-disabled@2.png new file mode 100644 index 0000000..593ef55 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider-disabled@2.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider.png new file mode 100644 index 0000000..57825fd Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider.png differ diff --git a/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider@2.png b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider@2.png new file mode 100644 index 0000000..b828dae Binary files /dev/null and b/Cutefish/gtk-3.0/assets/scale-vert-marks-before-slider@2.png differ diff --git a/Cutefish/gtk-3.0/assets/selectionmode-checkbox-checked-dark.png b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-checked-dark.png new file mode 100644 index 0000000..8dbedf6 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-checked-dark.png differ diff --git a/Cutefish/gtk-3.0/assets/selectionmode-checkbox-checked-dark@2.png b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-checked-dark@2.png new file mode 100644 index 0000000..d4b23d5 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-checked-dark@2.png differ diff --git a/Cutefish/gtk-3.0/assets/selectionmode-checkbox-checked.png b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-checked.png new file mode 100644 index 0000000..a223d1f Binary files /dev/null and b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-checked.png differ diff --git a/Cutefish/gtk-3.0/assets/selectionmode-checkbox-checked@2.png b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-checked@2.png new file mode 100644 index 0000000..a7723f1 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-checked@2.png differ diff --git a/Cutefish/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark.png b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark.png new file mode 100644 index 0000000..f6b914e Binary files /dev/null and b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark.png differ diff --git a/Cutefish/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark@2.png b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark@2.png new file mode 100644 index 0000000..29ecf2b Binary files /dev/null and b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-unchecked-dark@2.png differ diff --git a/Cutefish/gtk-3.0/assets/selectionmode-checkbox-unchecked.png b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-unchecked.png new file mode 100644 index 0000000..40ff92e Binary files /dev/null and b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-unchecked.png differ diff --git a/Cutefish/gtk-3.0/assets/selectionmode-checkbox-unchecked@2.png b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-unchecked@2.png new file mode 100644 index 0000000..8e87ea7 Binary files /dev/null and b/Cutefish/gtk-3.0/assets/selectionmode-checkbox-unchecked@2.png differ diff --git a/Cutefish/gtk-3.0/gtk-dark.css b/Cutefish/gtk-3.0/gtk-dark.css new file mode 100644 index 0000000..506b1fe --- /dev/null +++ b/Cutefish/gtk-3.0/gtk-dark.css @@ -0,0 +1,4180 @@ +@keyframes ripple { + to { + background-size: 1000% 1000%; + } +} + +@keyframes ripple-on-slider { + to { + background-size: auto, 1000% 1000%; + } +} + +@keyframes ripple-on-headerbar { + from { + background-image: radial-gradient(circle, #5b9bf8 0%, transparent 0%); + } + to { + background-image: radial-gradient(circle, #5b9bf8 100%, transparent 0%); + } +} + +* { + background-clip: padding-box; + -GtkToolButton-icon-spacing: 0; + -GtkTextView-error-underline-color: #F28B82; + -GtkScrolledWindow-scrollbar-spacing: 0; + -GtkToolItemGroup-expander-size: 11; + -GtkWidget-text-handle-width: 24; + -GtkWidget-text-handle-height: 24; + -GtkDialog-button-spacing: 6; + -GtkDialog-action-area-border: 6; + outline-style: solid; + outline-width: 2px; + outline-color: transparent; + outline-offset: -4px; + -gtk-outline-radius: 6px; + -gtk-secondary-caret-color: #5b9bf8; +} + +*:focus { + outline-color: alpha(currentColor, 0.1); +} + +calendar:selected, treeview.view:selected, modelbutton.flat:selected, +.menuitem.button.flat:selected, .background.csd .view:selected { + color: white; + background-color: alpha(currentColor, 0.1); +} + +flowbox flowboxchild:selected { + color: #5b9bf8; + background-color: rgba(91, 155, 248, 0.2); +} + +spinbutton.vertical selection, spinbutton:not(.vertical) selection, +entry selection, label selection, textview text selection:focus, textview text selection, widget.view:selected, .view:selected { + color: white; + background-color: #5b9bf8; +} + +.linked:not(.vertical) > button, .linked:not(.vertical) > spinbutton.vertical, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry { + border-radius: 0; +} + +.linked:not(.vertical) > button:first-child, .linked:not(.vertical) > spinbutton.vertical:first-child, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.linked:not(.vertical) > button:last-child, .linked:not(.vertical) > spinbutton.vertical:last-child, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > button:only-child, .linked:not(.vertical) > spinbutton.vertical:only-child, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child { + border-radius: 6px; +} + +.linked.vertical > button, .linked.vertical > spinbutton.vertical, .linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry { + border-radius: 0; +} + +.linked.vertical > button:first-child, .linked.vertical > spinbutton.vertical:first-child, .linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > button:last-child, .linked.vertical > spinbutton.vertical:last-child, .linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > button:only-child, .linked.vertical > spinbutton.vertical:only-child, .linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child { + border-radius: 6px; +} + +/*************** + * Base States * + ***************/ +.background { + background-color: #2C2C2C; + color: white; +} + +.background.csd { + border-radius: 0 0 14px 14px; +} + +.background.maximized, .background.solid-csd { + border-radius: 0; +} + +*:disabled { + -gtk-icon-effect: dim; +} + +.gtkstyle-fallback { + background-color: #2C2C2C; + color: white; +} + +.gtkstyle-fallback:hover { + background-color: #1f1f1f; + color: white; +} + +.gtkstyle-fallback:active { + background-color: #131313; + color: white; +} + +.gtkstyle-fallback:disabled { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.5); +} + +.gtkstyle-fallback:selected { + background-color: #5b9bf8; + color: white; +} + +.view { + background-color: #2C2C2C; + color: white; +} + +.view:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +.view:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.view:selected:hover { + box-shadow: none; +} + +window.background.csd > stack.view { + border-radius: 0 0 14px 14px; +} + +textview text { + background-color: #2C2C2C; +} + +textview border { + background-color: #242424; + color: rgba(255, 255, 255, 0.7); +} + +iconview:hover, iconview:selected { + border-radius: 6px; +} + +.rubberband, +rubberband, +.content-view rubberband, +.content-view treeview.view rubberband, +treeview.view .content-view rubberband, +.content-view .rubberband, +treeview.view rubberband, +treeview.view .content-view .rubberband, +.content-view treeview.view .rubberband, +treeview.view flowbox rubberband, +flowbox treeview.view rubberband, +flowbox rubberband, +flowbox treeview.view rubberband, +treeview.view flowbox rubberband, +treeview.view flowbox rubberband, +flowbox treeview.view rubberband { + border: 1px solid #5b9bf8; + background-color: rgba(91, 155, 248, 0.3); +} + +flowbox flowboxchild { + padding: 4px; + border-radius: 6px; +} + +.content-view .tile:selected { + background-color: transparent; +} + +label { + caret-color: currentColor; +} + +label.separator { + color: rgba(255, 255, 255, 0.7); +} + +label:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; +} + +label.osd { + border-radius: 6px; + background-color: rgba(25, 25, 25, 0.9); + color: white; +} + +.dim-label { + color: rgba(255, 255, 255, 0.7); +} + +assistant .sidebar { + padding: 4px 0; +} + +assistant .sidebar label { + min-height: 36px; + padding: 0 12px; + color: rgba(255, 255, 255, 0.5); + font-weight: 500; +} + +assistant .sidebar label.highlight { + color: white; +} + +/********************* + * Spinner Animation * + *********************/ +@keyframes spin { + to { + -gtk-icon-transform: rotate(1turn); + } +} + +spinner { + background: none; + opacity: 0; + -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); +} + +spinner:checked { + opacity: 1; + animation: spin 1s linear infinite; +} + +spinner:checked:disabled { + opacity: 0.5; +} + +/**************** + * Text Entries * + ****************/ +spinbutton.vertical, spinbutton:not(.vertical), +entry { + min-height: 36px; + padding: 0 8px; + border-radius: 6px; + caret-color: currentColor; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.vertical:focus, spinbutton:focus:not(.vertical), +entry:focus { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +spinbutton.vertical:drop(active), spinbutton:drop(active):not(.vertical), +entry:drop(active) { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +spinbutton.vertical:disabled, spinbutton:disabled:not(.vertical), +entry:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.flat.vertical, spinbutton.flat:not(.vertical), +entry.flat { + min-height: 0; + padding: 2px; + border-radius: 0; + background-color: transparent; +} + +spinbutton.vertical image, spinbutton:not(.vertical) image, +entry image { + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical image:hover, spinbutton:not(.vertical) image:hover, spinbutton.vertical image:active, spinbutton:not(.vertical) image:active, +entry image:hover, +entry image:active { + color: white; +} + +spinbutton.vertical image:disabled, spinbutton:not(.vertical) image:disabled, +entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical image.left, spinbutton:not(.vertical) image.left, +entry image.left { + margin-left: 2px; + margin-right: 6px; +} + +spinbutton.vertical image.right, spinbutton:not(.vertical) image.right, +entry image.right { + margin-left: 6px; + margin-right: 2px; +} + +spinbutton.vertical undershoot.left, spinbutton:not(.vertical) undershoot.left, +entry undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.vertical undershoot.right, spinbutton:not(.vertical) undershoot.right, +entry undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.error.vertical, spinbutton.error:not(.vertical), +entry.error { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.error.vertical:focus, spinbutton.error:focus:not(.vertical), +entry.error:focus { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #F28B82; +} + +spinbutton.error.vertical:disabled, spinbutton.error:disabled:not(.vertical), +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.warning.vertical, spinbutton.warning:not(.vertical), +entry.warning { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.warning.vertical:focus, spinbutton.warning:focus:not(.vertical), +entry.warning:focus { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #FDD633; +} + +spinbutton.warning.vertical:disabled, spinbutton.warning:disabled:not(.vertical), +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical progress, spinbutton:not(.vertical) progress, +entry progress { + margin: 2px -8px; + border-bottom: 2px solid #5b9bf8; + background-color: transparent; +} + +treeview entry.flat, treeview entry { + background-color: #2C2C2C; +} + +treeview entry.flat, treeview entry.flat:focus, treeview entry, treeview entry:focus { + border-image: none; + box-shadow: none; +} + +.entry-tag { + margin: 2px; + border-radius: 9999px; + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +.entry-tag:hover { + background-image: image(alpha(currentColor, 0.08)); +} + +:dir(ltr) .entry-tag { + margin-left: 4px; + margin-right: 0; + padding-left: 12px; + padding-right: 8px; +} + +:dir(rtl) .entry-tag { + margin-left: 0; + margin-right: 4px; + padding-left: 8px; + padding-right: 12px; +} + +.entry-tag.button { + box-shadow: none; + background-color: transparent; +} + +.entry-tag.button:not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: -gtk-gradient(radial, center center, 0, center center, 0.001, to(#5b9bf8), to(transparent)); + } + to { + background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(#5b9bf8), to(transparent)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button { + color: rgba(255, 255, 255, 0.7); +} + +infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked { + color: white; +} + +infobar.warning > revealer > box button:disabled { + color: rgba(255, 255, 255, 0.3); +} + +infobar.warning > revealer > box button:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:not(.suggested-action):not(.destructive-action), button { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: rgba(255, 255, 255, 0.08); + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + color: white; +} + +actionbar > revealer > box .linked > button:focus:not(.suggested-action):not(.destructive-action), button:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +actionbar > revealer > box .linked > button:hover:not(.suggested-action):not(.destructive-action), button:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +actionbar > revealer > box .linked > button:active:not(.suggested-action):not(.destructive-action), button:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; +} + +actionbar > revealer > box .linked > button:disabled:not(.suggested-action):not(.destructive-action), button:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:checked:not(.suggested-action):not(.destructive-action), button:checked { + background-color: #5b9bf8; + color: white; +} + +actionbar > revealer > box .linked > button:checked:hover:not(.suggested-action):not(.destructive-action), button:checked:hover { + box-shadow: inset 0 0 0 9999px transparent; +} + +actionbar > revealer > box .linked > button:checked:disabled:not(.suggested-action):not(.destructive-action), button:checked:disabled { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.1); + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.titlebutton:not(.suggested-action):not(.destructive-action), filechooser #pathbarbox > stack > box > button, button.close, button.circular, .inline-toolbar button:not(.text-button) { + border-radius: 9999px; +} + +button.titlebutton:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, button.close label, button.circular label, .inline-toolbar button:not(.text-button) label { + padding: 0; +} + +placessidebar.sidebar row button.sidebar-button, notebook > header tab button.flat, spinbutton.vertical button, spinbutton:not(.vertical) button { + min-height: 24px; + min-width: 24px; + padding: 0; + border-radius: 9999px; +} + +button { + min-height: 24px; + min-width: 16px; + padding: 6px 10px; + border-radius: 6px; + font-weight: 500; +} + +button:drop(active) { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placessidebar.sidebar row button.sidebar-button, calendar.button, treeview.view header button button.circular, row.activatable button.circular, scrollbar button, notebook > header > tabs > arrow, spinbutton.vertical button, spinbutton:not(.vertical) button, modelbutton.flat, +.menuitem.button.flat, filechooser #pathbarbox > stack > box > button, messagedialog .dialog-action-box button, messagedialog .dialog-action-box .linked:not(.vertical) > button, .app-notification button, actionbar > revealer > box button:not(.suggested-action):not(.destructive-action), popover.background.menu button, +popover.background button.model, headerbar button:not(.suggested-action):not(.destructive-action), toolbar button, combobox > .linked:not(.vertical) > button:not(:only-child), button.flat { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), border-image 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + color: rgba(255, 255, 255, 0.7); +} + +placessidebar.sidebar row button.sidebar-button:focus, calendar.button:focus, treeview.view header button button.circular:focus, row.activatable button.circular:focus, scrollbar button:focus, notebook > header > tabs > arrow:focus, spinbutton.vertical button:focus, spinbutton:not(.vertical) button:focus, modelbutton.flat:focus, +.menuitem.button.flat:focus, filechooser #pathbarbox > stack > box > button:focus, messagedialog .dialog-action-box button:focus, messagedialog .dialog-action-box .linked:not(.vertical) > button:focus, .app-notification button:focus, actionbar > revealer > box button:focus:not(.suggested-action):not(.destructive-action), popover.background.menu button:focus, +popover.background button.model:focus, headerbar button:focus:not(.suggested-action):not(.destructive-action), toolbar button:focus, combobox > .linked:not(.vertical) > button:focus:not(:only-child), button.flat:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: white; +} + +placessidebar.sidebar row button.sidebar-button:hover, calendar.button:hover, treeview.view header button button.circular:hover, row.activatable button.circular:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, spinbutton.vertical button:hover, spinbutton:not(.vertical) button:hover, modelbutton.flat:hover, +.menuitem.button.flat:hover, filechooser #pathbarbox > stack > box > button:hover, messagedialog .dialog-action-box button:hover, messagedialog .dialog-action-box .linked:not(.vertical) > button:hover, .app-notification button:hover, actionbar > revealer > box button:hover:not(.suggested-action):not(.destructive-action), popover.background.menu button:hover, +popover.background button.model:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), toolbar button:hover, combobox > .linked:not(.vertical) > button:hover:not(:only-child), button.flat:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: white; +} + +placessidebar.sidebar row button.sidebar-button:active, calendar.button:active, treeview.view header button button.circular:active, row.activatable button.circular:active, scrollbar button:active, notebook > header > tabs > arrow:active, spinbutton.vertical button:active, spinbutton:not(.vertical) button:active, modelbutton.flat:active, +.menuitem.button.flat:active, filechooser #pathbarbox > stack > box > button:active, messagedialog .dialog-action-box button:active, messagedialog .dialog-action-box .linked:not(.vertical) > button:active, .app-notification button:active, actionbar > revealer > box button:active:not(.suggested-action):not(.destructive-action), popover.background.menu button:active, +popover.background button.model:active, headerbar button:active:not(.suggested-action):not(.destructive-action), toolbar button:active, combobox > .linked:not(.vertical) > button:active:not(:only-child), button.flat:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), border-image 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; + color: white; +} + +placessidebar.sidebar row button.sidebar-button:disabled, calendar.button:disabled, treeview.view header button button.circular:disabled, row.activatable button.circular:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, spinbutton.vertical button:disabled, spinbutton:not(.vertical) button:disabled, modelbutton.flat:disabled, +.menuitem.button.flat:disabled, filechooser #pathbarbox > stack > box > button:disabled, messagedialog .dialog-action-box button:disabled, messagedialog .dialog-action-box .linked:not(.vertical) > button:disabled, .app-notification button:disabled, actionbar > revealer > box button:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:disabled, +popover.background button.model:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), toolbar button:disabled, combobox > .linked:not(.vertical) > button:disabled:not(:only-child), button.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +filechooser #pathbarbox > stack > box > button:checked, messagedialog .dialog-action-box button:checked, messagedialog .dialog-action-box .linked:not(.vertical) > button:checked, .app-notification button:checked, actionbar > revealer > box button:checked:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked, +popover.background button.model:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), toolbar button:checked, combobox > .linked:not(.vertical) > button:checked:not(:only-child), button.flat:checked, button.flat:checked:hover { + background-color: alpha(currentColor, 0.1); + color: white; +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, messagedialog .dialog-action-box button:checked:disabled, .app-notification button:checked:disabled, actionbar > revealer > box button:checked:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked:disabled, +popover.background button.model:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), toolbar button:checked:disabled, combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(255, 255, 255, 0.5); +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.text-button.flat { + min-width: 48px; + padding-left: 8px; + padding-right: 8px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child) { + margin: 0 4px; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + border-radius: 6px; +} + +.linked:not(.vertical) > button.flat:not(:only-child).image-button:not(.text-button), .linked.vertical > button.flat:not(:only-child).image-button:not(.text-button) { + border-radius: 9999px; +} + +button.osd { + min-width: 24px; + min-width: 24px; + padding: 12px 16px; + background-color: #5b9bf8; + color: white; +} + +button.osd:hover { + background-color: #6fa7f9; + color: white; +} + +button.osd:active { + background-color: #86b5fa; + color: white; +} + +button.osd.image-button, button.osd.circular { + padding: 12px; +} + +button.osd.image-button > image, button.osd.circular > image { + padding: 0; +} + +button.osd:disabled { + opacity: 0; +} + +button.suggested-action { + background-color: #5b9bf8; + color: white; + box-shadow: none; +} + +button.suggested-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(91, 155, 248, 0.2), 0 4px 3px 0 rgba(91, 155, 248, 0.14), 0 1px 6px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:checked { + background-color: #8cb9fa; +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(91, 155, 248, 0.3), 0 2px 3px -1px rgba(91, 155, 248, 0.24), 0 2px 5px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #5b9bf8; +} + +button.suggested-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.suggested-action.flat:checked { + background-color: rgba(91, 155, 248, 0.3); +} + +button.destructive-action { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); + box-shadow: none; +} + +button.destructive-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(242, 139, 130, 0.2), 0 4px 3px 0 rgba(242, 139, 130, 0.14), 0 1px 6px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:checked { + background-color: rgba(182, 105, 98, 0.961); +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(242, 139, 130, 0.3), 0 2px 3px -1px rgba(242, 139, 130, 0.24), 0 2px 5px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(242, 139, 130, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #F28B82; +} + +button.destructive-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.destructive-action.flat:checked { + background-color: rgba(242, 139, 130, 0.3); +} + +.stack-switcher > button > label { + margin: 0 -6px; + padding: 0 6px; +} + +.stack-switcher > button > image { + margin: -3px -6px; + padding: 3px 6px; +} + +.stack-switcher > button.needs-attention:checked > label, +.stack-switcher > button.needs-attention:checked > image { + animation: none; + background-image: none; +} + +.primary-toolbar button { + -gtk-icon-shadow: none; +} + +button.close, button.circular { + min-width: 24px; + padding: 6px; +} + +stacksidebar.sidebar row.needs-attention > label, .stack-switcher > button.needs-attention > label, +.stack-switcher > button.needs-attention > image { + animation: needs-attention 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-repeat: no-repeat; + background-position: right 3px; + background-size: 6px 6px; +} + +stacksidebar.sidebar row.needs-attention > label:dir(rtl), .stack-switcher > button.needs-attention > label:dir(rtl), +.stack-switcher > button.needs-attention > image:dir(rtl) { + background-position: left 3px; +} + +modelbutton.flat, +.menuitem.button.flat { + min-height: 28px; + padding: 0 8px; + border-radius: 6px; + color: white; +} + +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 { + min-height: 24px; + min-width: 24px; + padding: 6px; +} + +/********* + * Links * + *********/ +*:link { + color: #2196F3; +} + +*:visited { + color: #CE93D8; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #2196F3; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #CE93D8; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton:not(.vertical) { + padding: 0; +} + +spinbutton:not(.vertical) entry { + min-width: 32px; + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +spinbutton:not(.vertical) button { + border: solid 6px transparent; +} + +spinbutton:not(.vertical) button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton:not(.vertical) button.up:dir(ltr), spinbutton:not(.vertical) button.down:dir(rtl) { + margin-left: -3px; +} + +spinbutton:not(.vertical) button.up:dir(rtl), spinbutton:not(.vertical) button.down:dir(ltr) { + margin-right: -3px; +} + +spinbutton.vertical { + padding: 0; +} + +spinbutton.vertical:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical entry { + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical button { + padding: 0; + border: solid 6px transparent; +} + +spinbutton.vertical button:focus:not(:hover):not(:active) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical button.up { + margin: 0 3px; +} + +spinbutton.vertical button.down { + margin: 0 3px; +} + +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: 24px; + min-width: 24px; +} + +combobox decoration { + transition: none; +} + +combobox button.combo cellview:dir(ltr) { + margin-left: -2px; +} + +combobox button.combo cellview:dir(rtl) { + margin-right: -2px; +} + +combobox.linked button:nth-child(2):dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +combobox.linked button:nth-child(2):dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child):first-child { + margin-right: -36px; + padding-right: 36px; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child):last-child { + margin-left: -36px; + padding-left: 36px; +} + +combobox > .linked:not(.vertical) > button:not(:only-child) { + min-height: 16px; + min-width: 16px; + margin: 6px; + padding: 4px; + border-radius: 6px; +} + +.linked:not(.vertical) > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.linked:not(.vertical) > combobox:not(:last-child) > box > button.combo { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.linked.vertical > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.linked.vertical > combobox:not(:last-child) > box > button.combo { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +button.combo:only-child { + border-radius: 6px; + font-weight: normal; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +button.combo:only-child:focus { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3); +} + +button.combo:only-child:hover { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +button.combo:only-child:checked { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +button.combo:only-child:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); +} + +/************ + * Toolbars * + ************/ +toolbar { + -GtkWidget-window-dragging: true; + padding: 2px; + background-color: #2C2C2C; +} + +.osd toolbar { + background-color: transparent; +} + +.app-notification, toolbar.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +.app-notification:backdrop, toolbar.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +.left.app-notification, .right.app-notification, .top.app-notification, .bottom.app-notification, toolbar.osd.left, toolbar.osd.right, toolbar.osd.top, toolbar.osd.bottom { + border-radius: 0; +} + +.bottom.app-notification, toolbar.osd.bottom { + box-shadow: none; + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.4)); +} + +toolbar.horizontal > separator { + margin: 2px; +} + +toolbar.vertical > separator { + margin: 2px; +} + +toolbar:not(.inline-toolbar):not(.osd) scale, +toolbar:not(.inline-toolbar):not(.osd) entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton, +toolbar:not(.inline-toolbar):not(.osd) button { + margin: 2px; +} + +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child) { + margin-left: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child) { + margin-right: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton button { + margin: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) switch { + margin: 8px 2px; +} + +.inline-toolbar { + padding: 6px; + border-style: solid; + border-width: 0 1px 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #242424; +} + +searchbar > revealer > box, +.location-bar { + padding: 6px; + border-style: solid; + border-width: 0 0 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; +} + +searchbar > revealer > box { + margin: -6px; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar .linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + border-radius: 6px; +} + +headerbar button:focus:not(.suggested-action):not(.destructive-action), headerbar button:hover:not(.suggested-action):not(.destructive-action), headerbar button:active:not(.suggested-action):not(.destructive-action), headerbar button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action) { + background-color: transparent; + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:focus:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:hover:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:backdrop:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar entry { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +.titlebar entry:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +.titlebar entry image { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar entry image:hover, .titlebar entry image:active { + color: white; +} + +.titlebar entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #242424; + color: white; + border-radius: 14px 14px 0 0; + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.titlebar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.titlebar:backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar .title { + padding: 0 12px; + font-weight: bold; +} + +.titlebar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +.titlebar .subtitle, +.titlebar .dim-label { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +.titlebar .subtitle:backdrop, +.titlebar .dim-label:backdrop { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar .titlebar { + background-color: transparent; + box-shadow: none; +} + +.titlebar + separator, .titlebar + separator.sidebar { + background-color: #242424; + background-image: none; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.titlebar + separator:backdrop, .titlebar + separator.sidebar:backdrop { + background-color: #2C2C2C; +} + +.titlebar.selection-mode + separator, .titlebar.selection-mode + separator.sidebar, .selection-mode .titlebar + separator, .selection-mode .titlebar + separator.sidebar { + background-color: #5b9bf8; +} + +.titlebar.selection-mode + separator:backdrop, .titlebar.selection-mode + separator.sidebar:backdrop, .selection-mode .titlebar + separator:backdrop, .selection-mode .titlebar + separator.sidebar:backdrop { + background-color: #5b9bf8; +} + +.background.csd.unified .titlebar + separator, .background.csd.unified .titlebar + separator.sidebar { + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.titlebar .linked:not(.vertical) > entry { + border-radius: 6px; + margin-left: 3px; + margin-right: 3px; +} + +.titlebar button.suggested-action:disabled, .titlebar button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +.titlebar .path-bar button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 0; + padding-left: 6px; + padding-right: 6px; +} + +.titlebar.selection-mode { + transition: background-color 0.1ms 0ms, color 0ms cubic-bezier(0, 0, 0.2, 1); + animation: ripple-on-headerbar 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2), inset 0 -1px rgba(255, 255, 255, 0.12); + background-color: #5b9bf8; + color: white; +} + +.titlebar.selection-mode:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode .subtitle:link { + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action) { + border-image: radial-gradient(circle closest-corner at center calc(100% - 1px), currentColor 0%, transparent 0%) 0 0 0/0 0 0px; + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):checked { + border-image: radial-gradient(circle closest-corner at center calc(100% - 1px), currentColor 100%, transparent 0%) 0 0 2/0 0 2px; + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:not(.titlebutton) { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:checked { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:checked:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar.selection-mode .selection-menu { + padding-left: 16px; + padding-right: 16px; +} + +.titlebar.selection-mode .selection-menu arrow { + -GtkArrow-arrow-scaling: 1; +} + +.titlebar.selection-mode .selection-menu .arrow { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +.titlebar .selection-mode { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #5b9bf8; +} + +.tiled .titlebar, .tiled-top .titlebar, .tiled-right .titlebar, .tiled-bottom .titlebar, .tiled-left .titlebar, .maximized .titlebar, .fullscreen .titlebar { + border-radius: 0; +} + +.titlebar.default-decoration { + min-height: 24px; + padding: 6px 12px; + border-radius: 14px 14px 0 0; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); +} + +.tiled .titlebar.default-decoration, .maximized .titlebar.default-decoration, .fullscreen .titlebar.default-decoration { + box-shadow: none; + border-radius: 0; +} + +.titlebar.default-decoration button.titlebutton { + min-height: 24px; + min-width: 24px; + margin: 0; + padding: 0; +} + +.background.csd .titlebar.default-decoration { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1), inset 0 -1px rgba(255, 255, 255, 0.12); +} + +.background:not(.csd) .titlebar.default-decoration button.titlebutton:active { + background-size: 1000% 1000%; +} + +.solid-csd .titlebar:dir(rtl), .solid-csd .titlebar:dir(ltr) { + border-radius: 0; + box-shadow: none; +} + +headerbar { + min-height: 48px; + padding: 0 6px; +} + +box.vertical headerbar { + background-color: #242424; +} + +headerbar entry, +headerbar spinbutton, +headerbar button { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar button, headerbar button.image-button { + border-radius: 6px; +} + +headerbar > box.left, +headerbar > box.right { + padding: 0 4px; +} + +headerbar separator.titlebutton, headerbar separator.sidebar { + margin-top: 12px; + margin-bottom: 12px; + background-color: transparent; +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar spinbutton button { + margin-top: 0; + margin-bottom: 0; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action) { + border-radius: 0; + margin: 0; + min-width: 120px; + padding: 0; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action) > stack > box { + padding: 0 12px; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action):focus { + box-shadow: none; +} + +headerbar.windowhandle > button.popup label, headerbar.windowhandle > button.popup image { + min-height: 0; +} + +headerbar.windowhandle viewswitchertitle > squeezer { + margin-top: 0; + margin-bottom: 0; + background: none; +} + +headerbar.windowhandle viewswitchertitle > squeezer > viewswitcher { + margin: 0 0; + background: none; +} + +headerbar.windowhandle viewswitchertitle > squeezer > viewswitcher > box.horizontal > button.radio { + margin: 0; + padding: 0; + border-radius: 0; +} + +/************ + * Pathbars * + ************/ + +.path-bar.linked:not(.vertical) > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 3px; + margin-left: 1px; + margin-right: 1px; + background-color: alpha(currentColor, 0.08); +} + + +.path-bar.linked:not(.vertical) > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +.path-bar.linked:not(.vertical) > button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + + +.path-bar.linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + + +.path-bar.linked:not(.vertical) > button:checked { + background-color: alpha(currentColor, 0.16); + color: white; +} + + +.path-bar.linked:not(.vertical) > button label:not(:only-child):first-child { + margin-left: 0; +} + + +.path-bar.linked:not(.vertical) > button label:not(:only-child):last-child { + margin-right: 0; +} + + +.path-bar.linked:not(.vertical) > button.text-button { + min-width: 0; +} + + +.path-bar.linked:not(.vertical) > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +/************** + * Tree Views * + **************/ +treeview.view { + border-left-color: rgba(255, 255, 255, 0.3); + border-top-color: rgba(255, 255, 255, 0.12); + padding: 3px; +} + +* { + -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; +} + +.csd treeview.view:not(:selected):not(:hover):not(.progressbar):not(.expander):not(.trough):not(.separator) { + background-color: transparent; +} + +treeview.view:hover, treeview.view:selected { + border-radius: 0; +} + +treeview.view.separator { + min-height: 6px; + color: rgba(255, 255, 255, 0.12); +} + +treeview.view:drop(active) { + border-style: solid none; + border-width: 9999px; + border-color: alpha(currentColor, 0.08); +} + +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-down-symbolic"); + -gtk-icon-transform: rotate(-90deg); + color: rgba(255, 255, 255, 0.7); +} + +treeview.view.expander:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +treeview.view.expander:checked { + -gtk-icon-transform: unset; +} + +treeview.view.expander:hover, treeview.view.expander:active { + color: white; +} + +treeview.view.expander:disabled { + color: rgba(255, 255, 255, 0.3); +} + +treeview.view.progressbar { + border: none; + box-shadow: none; + background-color: #5b9bf8; + background-image: none; + border-radius: 9999px; + color: white; +} + +treeview.view.progressbar:selected, treeview.view.progressbar:selected:hover, treeview.view.progressbar:selected:focus { + box-shadow: none; + background-color: #74aaf9; + color: white; +} + +treeview.view.progressbar:selected:backdrop, treeview.view.progressbar:selected:hover:backdrop, treeview.view.progressbar:selected:focus:backdrop { + color: white; +} + +treeview.view.progressbar:backdrop, treeview.view.progressbar:selected:backdrop { + background-color: rgba(255, 255, 255, 0.3); +} + +treeview.view.trough { + border: none; + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); + background-image: none; + border-radius: 9999px; + padding: 0; + margin: 0; +} + +treeview.view.trough:selected, treeview.view.trough:selected:hover, treeview.view.trough:selected:focus { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view.trough:backdrop, treeview.view.trough:selected:backdrop { + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view header button { + padding: 2px 6px; + border-style: none solid solid none; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + background-clip: border-box; +} + +treeview.view header button:not(:focus):not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +treeview.view header button, treeview.view header button:disabled { + background-color: #2C2C2C; +} + +treeview.view header button:last-child { + border-right-style: none; +} + +treeview.view button.dnd, +treeview.view header.button.dnd { + padding: 2px 6px; + border-style: none solid solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + box-shadow: none; + background-color: #2C2C2C; + background-clip: border-box; + color: #5b9bf8; +} + +treeview.view acceleditor > label { + background-color: #5b9bf8; +} + +/********* + * Menus * + *********/ +menubar, +.menubar { + -GtkWidget-window-dragging: true; + padding: 0; + background-color: #242424; + color: white; + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); +} + +menubar:backdrop, +.menubar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.csd menubar, .csd .menubar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > menuitem, +.menubar > menuitem { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + padding: 4px 8px; + color: rgba(255, 255, 255, 0.7); + border-radius: 6px; +} + +menubar > menuitem:hover, +.menubar > menuitem:hover { + transition: none; + background-color: alpha(currentColor, 0.1); + color: white; +} + +menubar > menuitem:disabled, +.menubar > menuitem:disabled { + color: rgba(255, 255, 255, 0.3); +} + +menubar > menuitem label:disabled, +.menubar > menuitem label:disabled { + color: inherit; +} + +.background.popup { + background-color: transparent; +} + +menu, +.menu, +.context-menu { + margin: 6px; + padding: 6px; + background-color: #3C3C3C; + background-clip: border-box; + border-radius: 12px; + border: 1px solid #4b4b4b; +} + +.csd menu, .csd .menu, .csd .context-menu { + border: none; + box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1); +} + +menu menuitem, +.menu menuitem, +.context-menu menuitem { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + min-width: 40px; + padding: 4px 8px; + color: white; + font: initial; + text-shadow: none; + border-radius: 6px; +} + +menu menuitem:hover, +.menu menuitem:hover, +.context-menu menuitem:hover { + background-color: alpha(currentColor, 0.08); +} + +menu menuitem:active, +.menu menuitem:active, +.context-menu menuitem:active { + background-color: alpha(currentColor, 0.12); +} + +menu menuitem:disabled, +.menu menuitem:disabled, +.context-menu menuitem:disabled { + color: rgba(255, 255, 255, 0.5); +} + +menu menuitem accelerator, +.menu menuitem accelerator, +.context-menu menuitem accelerator { + color: rgba(255, 255, 255, 0.7); +} + +menu menuitem:disabled accelerator, +.menu menuitem:disabled accelerator, +.context-menu menuitem:disabled accelerator { + color: rgba(255, 255, 255, 0.3); +} + +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: 8px; +} + +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: 8px; +} + +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 .view:selected, +.menu .view:selected, +.context-menu .view:selected { + background-color: #505050; +} + +menu > arrow, +.menu > arrow, +.context-menu > arrow { + min-height: 16px; + min-width: 16px; + padding: 4px; + background-color: #3C3C3C; + color: rgba(255, 255, 255, 0.7); +} + +menu > arrow.top, +.menu > arrow.top, +.context-menu > arrow.top { + margin-top: 0; + border-radius: 6px; + -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-radius: 6px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +menu > arrow:hover, +.menu > arrow:hover, +.context-menu > arrow:hover { + background-image: image(alpha(currentColor, 0.08)); + color: white; +} + +menu > arrow:disabled, +.menu > arrow:disabled, +.context-menu > arrow:disabled { + border-color: transparent; + background-color: transparent; + color: transparent; +} + +menu separator, +.menu separator, +.context-menu separator { + margin: 4px 0; +} + +/************ + * Popovers * + ************/ +popover.background { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 0; + background-color: #3C3C3C; + border-radius: 12px; +} + +popover.background, .csd popover.background { + border: 1px solid rgba(255, 255, 255, 0.1); + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); + background-clip: border-box; +} + +popover.background:backdrop, .csd popover.background:backdrop { + box-shadow: 0 3px 2px -2px rgba(0, 0, 0, 0.05), 0 2px 3px -1px rgba(0, 0, 0, 0.06), 0 1px 4px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +popover.background > stack { + margin: 0; +} + +popover.background > toolbar { + margin: 0; +} + +popover.background > list, +popover.background > .view, +popover.background > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover.background > scrolledwindow > viewport.frame > list { + background-color: transparent; + padding: 6px; +} + +popover.background > scrolledwindow > viewport.frame > list > row { + border-radius: 6px; + padding: 6px; +} + +popover.background .view:not(:selected), +popover.background toolbar { + background-color: #3C3C3C; +} + +popover.background .linked > button:not(.radio) { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):first-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):last-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):only-child { + border-radius: 6px; +} + +popover.background.menu button, +popover.background button.model { + min-height: 32px; + padding: 0 8px; + border-radius: 6px; +} + +popover.background separator { + margin: 4px 0; +} + +popover.background list separator { + margin: 0; +} + +/************* + * Notebooks * + *************/ +notebook > header tab { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + min-height: 24px; + min-width: 24px; + padding: 3px 12px; + border: none; + outline: none; + background-clip: padding-box; + color: rgba(255, 255, 255, 0.7); + font-weight: 500; + border-radius: 6px; +} + +notebook > header tab:hover { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +notebook > header tab:disabled { + color: rgba(255, 255, 255, 0.3); +} + +notebook > header tab:checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +notebook > header tab:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +frame > paned > notebook > header, notebook.frame > header { + background-color: rgba(255, 255, 255, 0.04); +} + +notebook, notebook.frame { + background-color: #2C2C2C; + border-radius: 12px; +} + +notebook.frame frame > border { + border: none; + border-radius: 6px; +} + +notebook.frame frame > list row.activatable { + border-radius: 6px; +} + +notebook > header { + border: none; + background-color: rgba(255, 255, 255, 0.04); + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +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 { + padding-left: 4px; + padding-right: 4px; +} + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { + margin-left: 0; + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { + margin-right: 0; + -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 { + padding-top: 4px; + padding-bottom: 4px; +} + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { + margin-top: 0; + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { + margin-bottom: 0; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +notebook > header > tabs > arrow { + min-height: 16px; + min-width: 16px; + border-radius: 6px; +} + +notebook > header tab > box { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header tab > box:drop(active) { + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +notebook > header tab button.flat:last-child { + margin-left: 6px; + margin-right: -6px; +} + +notebook > header tab button.flat:first-child { + margin-left: -6px; + margin-right: 6px; +} + +notebook > header tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child { + margin-left: 0; +} + +notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child { + margin-right: 0; +} + +notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child { + margin-top: 0; +} + +notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child { + margin-bottom: 0; +} + +notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page { + border-style: solid; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #2C2C2C; +} + +* { + -GtkScrollbar-has-backward-stepper: false; + -GtkScrollbar-has-forward-stepper: false; +} + +scrollbar.top { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.bottom { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.left { + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.right { + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 8px; + min-height: 8px; + border: 4px solid transparent; + border-radius: 9999px; + background-clip: padding-box; + background-color: rgba(255, 255, 255, 0.5); +} + +scrollbar slider:hover { + background-color: rgba(255, 255, 255, 0.7); +} + +scrollbar slider:active { + background-color: white; +} + +scrollbar slider:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar.fine-tune slider { + min-width: 4px; + min-height: 4px; +} + +scrollbar.fine-tune.horizontal slider { + margin: 2px 0; +} + +scrollbar.fine-tune.vertical slider { + margin: 0 2px; +} + +scrollbar.overlay-indicator:not(.fine-tune) slider { + transition-property: background-color, min-height, min-width; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { + border-color: transparent; + background-color: transparent; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) slider { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: padding-box; + -gtk-icon-source: none; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal slider { + min-width: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { + min-width: 8px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical slider { + min-height: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { + min-height: 8px; +} + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { + background-color: rgba(60, 60, 60, 0.9); +} + +scrollbar.horizontal slider { + min-width: 24px; +} + +scrollbar.vertical slider { + min-height: 24px; +} + +scrollbar button { + min-width: 16px; + min-height: 16px; + padding: 0; + border-radius: 0; +} + +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"); +} + +/********** + * Switch * + **********/ +switch { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + margin: 6px 0; + border: none; + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: padding-box; + font-size: 0; + color: transparent; +} + +switch:checked { + background-color: #5b9bf8; +} + +switch:disabled { + opacity: 0.5; +} + +switch slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 20px; + min-height: 20px; + margin: 0; + border-radius: 9999px; + outline: none; + box-shadow: none; + background-color: white; + border: none; + color: transparent; +} + +switch:focus slider, switch:hover slider, switch:focus:hover slider { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); +} + +/************************* + * Check and Radio items * + *************************/ +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + min-height: 40px; + min-width: 40px; + margin: 0; + padding: 0; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-unchecked-dark.png"), url("assets/selectionmode-checkbox-unchecked-dark@2.png")); +} + +.view.content-view.check:not(list):checked, +.content-view .tile check:not(list):checked { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-checked-dark.png"), url("assets/selectionmode-checkbox-checked-dark@2.png")); +} + +checkbutton, +radiobutton { + outline: none; +} + +checkbutton.text-button, +radiobutton.text-button { + padding: 2px; +} + +checkbutton.text-button label:not(:only-child), +radiobutton.text-button label:not(:only-child) { + margin: 0 4px; +} + +check, +radio { + min-height: 20px; + min-width: 20px; + margin: 3px; + padding: 0; + border-radius: 9999px; + color: transparent; + background-color: rgba(255, 255, 255, 0.12); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +check:hover, +radio:hover { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.04); + background-color: rgba(255, 255, 255, 0.15); +} + +check:active, +radio:active { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); + background-color: rgba(255, 255, 255, 0.2); +} + +check:disabled, +radio:disabled { + background-color: rgba(255, 255, 255, 0.04); +} + +check:checked, check:indeterminate, +radio:checked, +radio:indeterminate { + color: white; + background-color: #5b9bf8; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.15); + background-color: #8cb9fa; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.2); + background-color: #5b9bf8; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(255, 255, 255, 0.5); + background-color: rgba(91, 155, 248, 0.35); +} + +popover modelbutton.flat check, popover modelbutton.flat check:focus, popover modelbutton.flat check:hover, popover modelbutton.flat check:focus:hover, popover modelbutton.flat check:active, popover modelbutton.flat check:disabled, popover modelbutton.flat radio, popover modelbutton.flat radio:focus, popover modelbutton.flat radio:hover, popover modelbutton.flat radio:focus:hover, popover modelbutton.flat radio:active, popover modelbutton.flat radio:disabled { + transition: none; + box-shadow: none; + background-image: none; +} + +popover modelbutton.flat check.left:dir(rtl), popover modelbutton.flat radio.left:dir(rtl) { + margin-left: -3px; + margin-right: 6px; +} + +popover modelbutton.flat check.right:dir(ltr), popover modelbutton.flat radio.right:dir(ltr) { + margin-left: 6px; + margin-right: -3px; +} + +menu menuitem check, menu menuitem radio { + transition: none; + margin: 0; + padding: 0; +} + +menu menuitem check:dir(ltr), menu menuitem radio:dir(ltr) { + margin-right: 6px; + margin-left: -3px; +} + +menu menuitem check:dir(rtl), menu menuitem radio:dir(rtl) { + margin-left: 6px; + margin-right: -3px; +} + +menu menuitem check, menu menuitem check:hover, menu menuitem check:disabled, menu menuitem check:checked:hover, menu menuitem check:indeterminate:hover, menu menuitem radio, menu menuitem radio:hover, menu menuitem radio:disabled, menu menuitem radio:checked:hover, menu menuitem radio:indeterminate:hover { + box-shadow: none; +} + + +check:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/checkbox-checked-symbolic.svg")); +} + + +check:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic.svg")); +} + + +radio:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/radio-checked-symbolic.svg")); +} + + +radio:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/radio-mixed-symbolic.svg")); +} + + +menu menuitem check { + min-height: 16px; + min-width: 16px; +} + + +menu menuitem check:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic.svg")); +} + + +menu menuitem check:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic.svg")); +} + + +menu menuitem radio { + min-height: 16px; + min-width: 16px; +} + + +menu menuitem radio:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-radio-checked-symbolic.svg")); +} + + +menu menuitem radio:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic.svg")); +} + +check:not(:checked):active { + -gtk-icon-transform: rotate(90deg); +} + +check:not(:checked):indeterminate:active, +radio:not(:checked):indeterminate:active { + -gtk-icon-transform: scaleX(-1); +} + +treeview.view radio, treeview.view check { + padding: 0; + margin: 0; +} + +treeview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), treeview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate) { + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view radio, treeview.view radio:hover, treeview.view radio:disabled, treeview.view radio:checked:hover, treeview.view radio:indeterminate:hover, treeview.view check, treeview.view check:hover, treeview.view check:disabled, treeview.view check:checked:hover, treeview.view check:indeterminate:hover { + box-shadow: none; +} + +treeview.view:selected radio:checked, treeview.view:selected radio:indeterminate, treeview.view:selected check:checked, treeview.view:selected check:indeterminate, treeview.view:selected:focus radio:checked, treeview.view:selected:focus radio:indeterminate, treeview.view:selected:focus check:checked, treeview.view:selected:focus check:indeterminate { + background-color: #5b9bf8; + color: white; + background-image: none; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale slider { + min-height: 18px; + min-width: 18px; + margin: -8px; +} + +scale.fine-tune.horizontal { + min-height: 4px; + padding-top: 16px; + padding-bottom: 16px; +} + +scale.fine-tune.vertical { + min-width: 4px; + padding-left: 16px; + padding-right: 16px; +} + +scale.fine-tune slider { + margin: -7px; +} + +scale trough { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + background-color: rgba(255, 255, 255, 0.3); +} + +scale trough:disabled { + background-color: rgba(255, 255, 255, 0.12); +} + +scale highlight { + transition: background-image 0ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#5b9bf8); +} + +scale highlight:disabled { + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.3)); +} + +scale fill { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.3); +} + +scale fill:disabled { + background-color: transparent; +} + +scale slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #5b9bf8; + background-color: #2C2C2C; + box-shadow: 0 0 5px #ccc; +} + +scale slider:active { + box-shadow: 0 0 5px #B3B3B3; +} + +scale slider:disabled { + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3); +} + +scale marks, +scale value { + color: rgba(255, 255, 255, 0.7); +} + +scale indicator { + background-color: rgba(255, 255, 255, 0.3); + color: transparent; +} + +scale.horizontal marks.top { + margin-bottom: 7px; + margin-top: -15px; +} + +scale.horizontal.fine-tune marks.top { + margin-bottom: 6px; + margin-top: -14px; +} + +scale.horizontal marks.bottom { + margin-top: 7px; + margin-bottom: -15px; +} + +scale.horizontal.fine-tune marks.bottom { + margin-top: 6px; + margin-bottom: -14px; +} + +scale.vertical marks.top { + margin-right: 7px; + margin-left: -15px; +} + +scale.vertical.fine-tune marks.top { + margin-right: 6px; + margin-left: -14px; +} + +scale.vertical marks.bottom { + margin-left: 7px; + margin-right: -15px; +} + +scale.vertical.fine-tune marks.bottom { + margin-left: 6px; + margin-right: -14px; +} + +scale.horizontal indicator { + min-height: 8px; + min-width: 1px; +} + +scale.vertical indicator { + min-height: 1px; + min-width: 8px; +} + +scale.horizontal.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-before:not(.marks-after) slider, scale.horizontal.marks-before:not(.marks-after) slider:hover, scale.horizontal.marks-before:not(.marks-after) slider:active, scale.horizontal.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-disabled-dark.png"), url("assets/scale-horz-marks-before-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-after:not(.marks-before) slider, scale.horizontal.marks-after:not(.marks-before) slider:hover, scale.horizontal.marks-after:not(.marks-before) slider:active, scale.horizontal.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-disabled-dark.png"), url("assets/scale-horz-marks-after-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-before:not(.marks-after) slider, scale.vertical.marks-before:not(.marks-after) slider:hover, scale.vertical.marks-before:not(.marks-after) slider:active, scale.vertical.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-disabled-dark.png"), url("assets/scale-vert-marks-before-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-after:not(.marks-before) slider, scale.vertical.marks-after:not(.marks-before) slider:hover, scale.vertical.marks-after:not(.marks-before) slider:active, scale.vertical.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-disabled-dark.png"), url("assets/scale-vert-marks-after-slider-disabled-dark@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.color { + min-height: 0; + min-width: 0; +} + +scale.color.horizontal { + padding: 0 0 12px 0; +} + +scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl) { + margin-bottom: -13.5px; + margin-top: 11.5px; +} + +scale.color.vertical:dir(ltr) { + padding: 0 0 0 12px; +} + +scale.color.vertical:dir(ltr) slider { + margin-left: -13.5px; + margin-right: 11.5px; +} + +scale.color.vertical:dir(rtl) { + padding: 0 12px 0 0; +} + +scale.color.vertical:dir(rtl) slider { + margin-right: -13.5px; + margin-left: 11.5px; +} + +/***************** + * Progress bars * + *****************/ +progressbar { + color: rgba(255, 255, 255, 0.7); + font-size: smaller; +} + +progressbar.horizontal trough, +progressbar.horizontal progress { + min-height: 6px; +} + +progressbar.vertical trough, +progressbar.vertical progress { + min-width: 6px; +} + +progressbar trough { + border-radius: 6px; + background-color: rgba(255, 255, 255, 0.12); +} + +progressbar progress { + border-radius: 6px; + background-color: #5b9bf8; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #5b9bf8; +} + +progressbar trough.empty progress { + all: unset; +} + +/************* + * Level Bar * + *************/ +levelbar.horizontal block { + min-height: 6px; +} + +levelbar.horizontal.discrete block { + min-width: 36px; +} + +levelbar.horizontal.discrete block:not(:last-child) { + margin-right: 2px; +} + +levelbar.vertical block { + min-width: 6px; +} + +levelbar.vertical.discrete block { + min-height: 36px; +} + +levelbar.vertical.discrete block:not(:last-child) { + margin-bottom: 2px; +} + +levelbar trough { + border-radius: 6px; +} + +levelbar block.low { + background-color: #FDD633; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #5b9bf8; +} + +levelbar block.full { + background-color: #81C995; +} + +levelbar block.empty { + background-color: rgba(255, 255, 255, 0.12); +} + +/**************** + * Print dialog * +*****************/ +printdialog paper { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + color: white; +} + +printdialog .dialog-action-box { + margin: 12px; +} + +/********** + * Frames * + **********/ +frame > border, +.frame { + margin: 0; + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + border-radius: 0; + box-shadow: none; +} + +frame > border.view, +.frame.view { + border-radius: 6px; +} + +frame > border.flat, +.frame.flat { + border-style: none; +} + +frame.flat > border, statusbar frame > border { + border: none; +} + +actionbar > revealer > box { + padding: 6px; + border-top: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; +} + +.background.csd box.vertical > actionbar > revealer > box { + border-radius: 0 0 14px 14px; +} + +scrolledwindow viewport.frame { + border: none; +} + +stack scrolledwindow.frame viewport.frame list { + border: none; +} + +overshoot.top { + background-image: -gtk-gradient(radial, center top, 0, center top, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, center top, 0, center top, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 100% 5%, 100% 100%; + background-repeat: no-repeat; + background-position: center top; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.bottom { + background-image: -gtk-gradient(radial, center bottom, 0, center bottom, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, center bottom, 0, center bottom, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 100% 5%, 100% 100%; + background-repeat: no-repeat; + background-position: center bottom; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.left { + background-image: -gtk-gradient(radial, left center, 0, left center, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, left center, 0, left center, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 5% 100%, 100% 100%; + background-repeat: no-repeat; + background-position: left center; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.right { + background-image: -gtk-gradient(radial, right center, 0, right center, 0.5, to(rgba(255, 255, 255, 0.12)), to(rgba(255, 255, 255, 0))), -gtk-gradient(radial, right center, 0, right center, 0.6, from(rgba(255, 255, 255, 0.07)), to(rgba(255, 255, 255, 0))); + background-size: 5% 100%, 100% 100%; + background-repeat: no-repeat; + background-position: right center; + background-color: transparent; + border: none; + box-shadow: none; +} + +junction { + border-style: solid none none solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +junction:dir(rtl) { + border-style: solid solid none none; +} + +separator { + min-width: 1px; + min-height: 1px; + background-color: rgba(255, 255, 255, 0.12); +} + +placessidebar.sidebar list > separator, stacksidebar.sidebar + separator.vertical, +stacksidebar.sidebar separator.horizontal, button.font separator, button.file separator { + min-width: 0; + min-height: 0; + background-color: transparent; +} + +/********* + * Lists * + *********/ +list.content:not(.conversation-listbox) { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(255, 255, 255, 0.12); +} + +list.content:not(.conversation-listbox) > row { + border-radius: 0; +} + +list.content:not(.conversation-listbox) > row:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:only-child { + border-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:focus { + box-shadow: inset 0 0 0 1000px alpha(currentColor, 0.08); +} + +list { + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +list row { + padding: 3px; +} + +list.navigation-sidebar { + padding: 3px; +} + +list.navigation-sidebar > row { + border-radius: 6px; +} + +treeview.view header button, row.activatable { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; +} + +treeview.view header button:focus, row.activatable:focus { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +treeview.view header button:hover, row.activatable:hover { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms, background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +treeview.view header button.has-open-popup, treeview.view header button:active, row.activatable.has-open-popup, row.activatable:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; +} + +row:selected { + color: inherit; + background-color: rgba(255, 255, 255, 0.12); +} + +row:selected image, +row:selected label { + color: white; +} + +row:selected button image, +row:selected button label { + color: inherit; +} + +row:selected:disabled image, +row:selected:disabled label { + color: rgba(255, 255, 255, 0.5); +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 8px; +} + +.app-notification button.text-button:not(:disabled) { + color: #5b9bf8; +} + +.app-notification.frame, +.app-notification border { + border-style: none; +} + +/************* + * Expanders * + *************/ +expander title > arrow { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); + -gtk-icon-transform: rotate(-90deg); + color: rgba(255, 255, 255, 0.7); +} + +expander title > arrow:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +expander title > arrow:checked { + -gtk-icon-transform: unset; +} + +expander title > arrow:hover, expander title > arrow:active { + color: white; +} + +expander title > arrow:disabled { + color: rgba(255, 255, 255, 0.3); +} + +/************ + * Calendar * + ************/ +calendar { + padding: 1px; + border: 1px solid rgba(255, 255, 255, 0.12); + color: white; +} + +calendar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +calendar:selected { + border-radius: 7px; +} + +calendar.header { + border-style: none none solid; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; +} + +calendar.highlight { + color: rgba(255, 255, 255, 0.7); + font-weight: 500; +} + +calendar:indeterminate { + color: rgba(255, 255, 255, 0.3); +} + +/*********** + * Dialogs * + ***********/ +messagedialog.background { + background-color: #3C3C3C; +} + +messagedialog.background.csd { + border-bottom-left-radius: 14px; + border-bottom-right-radius: 14px; +} + +messagedialog .titlebar { + min-height: 24px; + border-style: none; + box-shadow: none; + background-color: #3C3C3C; + color: white; +} + +messagedialog .titlebar:backdrop { + background-color: #3C3C3C; + color: rgba(255, 255, 255, 0.7); +} + +messagedialog .dialog-action-box { + margin-top: -6px; +} + +messagedialog .dialog-action-box button, messagedialog .dialog-action-box button:first-child, messagedialog .dialog-action-box button:last-child, messagedialog .dialog-action-box .linked:not(.vertical) > button, messagedialog .dialog-action-box .linked:not(.vertical) > button:first-child, messagedialog .dialog-action-box .linked:not(.vertical) > button:last-child { + border-radius: 6px; +} + +messagedialog .dialog-action-box button:not(:last-child), messagedialog .dialog-action-box .linked:not(.vertical) > button:not(:last-child) { + margin-right: 6px; +} + +messagedialog .dialog-action-box button.suggested-action:not(:disabled), messagedialog .dialog-action-box .linked:not(.vertical) > button.suggested-action:not(:disabled) { + color: #5b9bf8; +} + +messagedialog .dialog-action-box button.destructive-action:not(:disabled), messagedialog .dialog-action-box .linked:not(.vertical) > button.destructive-action:not(:disabled) { + color: #F28B82; +} + +.csd filechooser { + background-color: #2C2C2C; + border-radius: 0 0 14px 14px; +} + +filechooser .dialog-action-box { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +filechooser #pathbarbox { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +filechooser stack.view { + background-color: transparent; + padding: 0; +} + +filechooser stack.view scrolledwindow { + background-color: transparent; + border-radius: 0 0 14px 0; +} + +filechooser stack.view scrolledwindow list { + background-color: transparent; +} + +filechooser stack.view > placesview { + background-color: transparent; +} + +filechooser stack.view > placesview > actionbar, filechooser stack.view > placesview > actionbar > revealer > box { + background-color: transparent; +} + +filechooser stack.view frame > border { + border: none; +} + +.csd filechooser placessidebar { + background: none; + border-bottom-left-radius: 14px; +} + +filechooser actionbar, filechooser actionbar > revealer > box { + background-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; +} + +stacksidebar.sidebar:dir(ltr) list, stacksidebar.sidebar.left list, stacksidebar.sidebar.left:dir(rtl) list, .sidebar:not(separator):dir(ltr), .sidebar:not(separator).left { + border-right: 1px solid rgba(255, 255, 255, 0.12); + 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 rgba(255, 255, 255, 0.12); + border-right-style: none; +} + +.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.sidebar list { + padding: 3px; + background-color: #2C2C2C; +} + +stacksidebar.sidebar row { + min-height: 32px; + padding: 0 3px; + border-radius: 6px; +} + +stacksidebar.sidebar row:selected { + background-color: #5b9bf8; + color: white; + font-weight: 500; +} + +stacksidebar.sidebar row:selected label, stacksidebar.sidebar row:selected image { + color: white; +} + +stacksidebar.sidebar row + row { + margin-top: 3px; +} + +stacksidebar.sidebar row > label { + padding-left: 6px; + padding-right: 6px; + color: inherit; +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +row image.sidebar-icon:disabled { + color: rgba(255, 255, 255, 0.3); +} + +placessidebar.sidebar > viewport.frame { + border-style: none; +} + +placessidebar.sidebar list { + padding: 6px; +} + +placessidebar.sidebar row { + min-height: 32px; + margin: 0; + padding: 0; + border-radius: 6px; +} + +placessidebar.sidebar row > revealer { + padding: 0 8px 0 16px; +} + +placessidebar.sidebar row:selected { + background-color: rgba(255, 255, 255, 0.12); + font-weight: 500; +} + +placessidebar.sidebar row:disabled { + color: rgba(255, 255, 255, 0.5); +} + +placessidebar.sidebar row image.sidebar-icon:dir(ltr) { + padding-right: 8px; +} + +placessidebar.sidebar row image.sidebar-icon:dir(rtl) { + padding-left: 8px; +} + +placessidebar.sidebar row label.sidebar-label { + color: inherit; +} + +placessidebar.sidebar row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar.sidebar row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar.sidebar row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar.sidebar row.sidebar-new-bookmark-row { + color: #5b9bf8; +} + +placessidebar.sidebar row.sidebar-new-bookmark-row image.sidebar-icon { + color: #5b9bf8; +} + +placessidebar.sidebar row:drop(active) { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms, background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placesview .server-list-button > image { + -gtk-icon-transform: rotate(0turn); +} + +placesview .server-list-button:checked > image { + -gtk-icon-transform: rotate(-0.5turn); +} + +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(rgba(255, 255, 255, 0.12)); + background-size: 1px 1px; + background-clip: content-box; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.12)), image(rgba(255, 255, 255, 0.12)); + 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; +} + +/************** + * GtkInfoBar * + **************/ +infobar { + border: none; + margin-bottom: 0; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #2C2C2C; +} + +infobar.info > revealer > box button, infobar.info > revealer > box button.text-button:not(:disabled), infobar.info:hover > revealer > box button, infobar.info:hover > revealer > box button.text-button:not(:disabled), infobar.info:backdrop > revealer > box button, infobar.info:backdrop > revealer > box button.text-button:not(:disabled) { + color: #5b9bf8; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #5b9bf8; + color: white; +} + +infobar.action > revealer > box button, infobar.action > revealer > box button:hover, infobar.action > revealer > box button:focus, infobar.action > revealer > box button:active, infobar.action > revealer > box button:checked, infobar.action > revealer > box button.text-button:not(:disabled), infobar.action:backdrop > revealer > box button, infobar.action:backdrop > revealer > box button:hover, infobar.action:backdrop > revealer > box button:focus, infobar.action:backdrop > revealer > box button:active, infobar.action:backdrop > revealer > box button:checked, infobar.action:backdrop > revealer > box button.text-button:not(:disabled), infobar.question > revealer > box button, infobar.question > revealer > box button:hover, infobar.question > revealer > box button:focus, infobar.question > revealer > box button:active, infobar.question > revealer > box button:checked, infobar.question > revealer > box button.text-button:not(:disabled), infobar.question:backdrop > revealer > box button, infobar.question:backdrop > revealer > box button:hover, infobar.question:backdrop > revealer > box button:focus, infobar.question:backdrop > revealer > box button:active, infobar.question:backdrop > revealer > box button:checked, infobar.question:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: white; +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #438cf7; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #FDD633; + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box button, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked, infobar.warning > revealer > box button.text-button:not(:disabled), infobar.warning:backdrop > revealer > box button, infobar.warning:backdrop > revealer > box button:hover, infobar.warning:backdrop > revealer > box button:focus, infobar.warning:backdrop > revealer > box button:active, infobar.warning:backdrop > revealer > box button:checked, infobar.warning:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box *:link, infobar.warning:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning:hover > revealer > box { + background-color: #fdd11a; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box button, infobar.error > revealer > box button:hover, infobar.error > revealer > box button:focus, infobar.error > revealer > box button:active, infobar.error > revealer > box button:checked, infobar.error > revealer > box button.text-button:not(:disabled), infobar.error:backdrop > revealer > box button, infobar.error:backdrop > revealer > box button:hover, infobar.error:backdrop > revealer > box button:focus, infobar.error:backdrop > revealer > box button:active, infobar.error:backdrop > revealer > box button:checked, infobar.error:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error:hover > revealer > box { + background-color: #f0766b; +} + +/************ + * Tooltips * + ************/ +tooltip { + border-radius: 3px; + box-shadow: none; +} + +tooltip.background { + background-color: rgba(25, 25, 25, 0.9); + color: white; +} + +tooltip.background.csd { + border-radius: 6px; +} + +tooltip decoration { + background-color: transparent; +} + +tooltip > box { + margin: -6px; + min-height: 24px; + padding: 4px 8px; +} + +/***************** + * Color Chooser * + *****************/ +colorswatch.top { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.top overlay { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.bottom { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.bottom overlay { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.left, colorswatch:first-child:not(.top) { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.left overlay, colorswatch:first-child:not(.top) overlay { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.right, colorswatch:last-child:not(.bottom) { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.dark { + color: white; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorswatch overlay { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +colorswatch overlay:hover { + box-shadow: 0 0 0 2px #5b9bf8; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; +} + +colorswatch#add-color-button:only-child { + border-radius: 6px; +} + +colorswatch#add-color-button overlay { + background-color: rgba(255, 255, 255, 0.04); +} + +colorswatch#add-color-button overlay:hover { + background-color: rgba(255, 255, 255, 0.12); + box-shadow: none; +} + +colorswatch#add-color-button overlay:active { + background-color: rgba(255, 255, 255, 0.3); +} + +colorswatch:disabled { + opacity: 0.5; +} + +colorswatch:disabled overlay { + box-shadow: none; +} + +colorswatch#editor-color-sample { + border-radius: 12px; +} + +colorswatch#editor-color-sample overlay { + border-radius: 12px; +} + +colorswatch#editor-color-sample overlay:hover { + box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -0.6px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +/******** + * Misc * + ********/ +.content-view { + background-color: #2C2C2C; +} + +/********************** + * Window Decorations * + **********************/ +decoration { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 14px; + box-shadow: 0 8px 6px -5px rgba(0, 0, 0, 0.2), 0 16px 15px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; + margin: 8px; +} + +.csd decoration { + border: 1px solid rgba(255, 255, 255, 0.1); + background-color: #2C2C2C; + background-clip: border-box; +} + +decoration:backdrop { + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; +} + +.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; + border: none; +} + +.ssd decoration { + border: none; + border-radius: 14px 14px 0 0; + box-shadow: 0 3px 3px rgba(0, 0, 0, 0.16), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +.metacity decoration { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + border: none; +} + +.csd.popup decoration { + border-radius: 12px; + border: none; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +tooltip.csd decoration { + border-radius: 12px; + box-shadow: none; + border: none; +} + +messagedialog.csd decoration { + border-radius: 14px; + border: 1px solid rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; + background-clip: border-box; +} + +.solid-csd decoration { + margin: 0; + padding: 2px; + border-radius: 0; + box-shadow: none; + background-color: #242424; + border: 1px solid #4b4b4b; +} + +.solid-csd decoration:backdrop { + background-color: #2C2C2C; +} + +button.titlebutton:not(.suggested-action):not(.destructive-action) { + min-height: 36px; + min-width: 36px; + padding: 0; + margin: 0 4px; +} + +button.minimize.titlebutton:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:not(.suggested-action):not(.destructive-action), button.close.titlebutton:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + background-color: "transparent"; +} + +button.minimize.titlebutton:hover:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:hover:not(.suggested-action):not(.destructive-action), button.close.titlebutton:hover:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.15); +} + +button.minimize.titlebutton:active:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:active:not(.suggested-action):not(.destructive-action), button.close.titlebutton:active:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.2); +} + +button.minimize.titlebutton:backdrop:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:backdrop:not(.suggested-action):not(.destructive-action), button.close.titlebutton:backdrop:not(.suggested-action):not(.destructive-action) { + opacity: 0.65; +} + +.monospace { + font-family: monospace; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #5b9bf8; + -gtk-icon-source: -gtk-recolor(url("assets/scalable/cursor-handle-symbolic.svg")); +} + +cursor-handle.top:dir(ltr), cursor-handle.bottom:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +cursor-handle.bottom:dir(ltr), cursor-handle.top:dir(rtl) { + -gtk-icon-transform: unset; +} + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { + padding-top: 6px; + -gtk-icon-transform: rotate(45deg); +} + +.context-menu { + font: initial; +} + +.keycap { + min-width: 12px; + min-height: 26px; + margin-top: 2px; + padding-bottom: 2px; + padding-left: 8px; + padding-right: 8px; + border: solid 1px rgba(255, 255, 255, 0.12); + border-radius: 7px; + box-shadow: inset 0 -2px rgba(255, 255, 255, 0.12); + background-color: #3C3C3C; + color: white; + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #5b9bf8; +} + +stackswitcher { + min-height: 0; + padding: 3px; + margin: 6px 0; + border-radius: 9px; + background-color: rgba(255, 255, 255, 0.04); + border: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + margin: 0 0; + background-color: transparent; + border-radius: 6px; + padding: 3px 10px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 100px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):focus:not(:hover):not(:checked) { + box-shadow: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +stackswitcher button.text-button { + min-width: 100px; +} + +stackswitcher button.circular, +stackswitcher button.text-button.circular { + min-width: 36px; + min-height: 36px; + padding: 0; +} + +/************* + * App Icons * + *************/ +/********* + * Emoji * + *********/ +popover.emoji-picker { + padding: 0; +} + +popover.emoji-picker entry { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +popover.emoji-picker scrolledwindow { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +button.emoji-section { + margin: 4px; +} + +button.emoji-section:checked { + color: #5b9bf8; +} + +button.emoji-section:not(:last-child) { + margin-right: 0; +} + +popover.emoji-picker .emoji { + min-width: 3em; + min-height: 3em; + padding: 0 8px; +} + +popover.emoji-picker .emoji widget { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; +} + +popover.emoji-picker .emoji widget:hover { + background-color: alpha(currentColor, 0.08); +} + +popover.emoji-completion { + padding: 8px 0; +} + +popover.emoji-completion arrow { + border: none; + background: none; +} + +popover.emoji-completion .emoji-completion-row { + min-height: 28px; + padding: 0 12px; +} + +popover.emoji-completion .emoji:hover { + background-color: alpha(currentColor, 0.08); +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color white; +/* +text color for entries, views and content in general */ +@define-color theme_text_color white; +/* +widget base background color */ +@define-color theme_bg_color #2C2C2C; +/* +text widgets and the like base background color */ +@define-color theme_base_color #2C2C2C; +/* +base background color of selections */ +@define-color theme_selected_bg_color #5b9bf8; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color white; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #2C2C2C; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color rgba(255, 255, 255, 0.5); +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #242424; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color white; +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color white; +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #2C2C2C; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #2C2C2C; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #5b9bf8; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color white; +/* +insensitive color on backdrop windows */ +@define-color unfocused_insensitive_color rgba(255, 255, 255, 0.5); +/* +widgets main borders color */ +@define-color borders rgba(255, 255, 255, 0.12); +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders rgba(255, 255, 255, 0.12); +/* +these are pretty self explicative */ +@define-color warning_color #FDD633; +@define-color error_color #F28B82; +@define-color success_color #81C995; +/* +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 white; +@define-color wm_unfocused_title rgba(255, 255, 255, 0.7); +@define-color wm_highlight rgba(255, 255, 255, 0.1); +@define-color wm_bg #242424; +@define-color wm_unfocused_bg #2C2C2C; +/* +FIXME this is really an API */ +@define-color content_view_bg #2C2C2C; +@define-color placeholder_text_color silver; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #2C2C2C; +@define-color budgie_tasklist_indicator_color white; +@define-color budgie_tasklist_indicator_color_active white; +@define-color budgie_tasklist_indicator_color_active_window #999999; +@define-color budgie_tasklist_indicator_color_attention #FDD633; +@define-color STRAWBERRY_100 #FF9262; +@define-color STRAWBERRY_300 #FF793E; +@define-color STRAWBERRY_500 #F15D22; +@define-color STRAWBERRY_700 #CF3B00; +@define-color STRAWBERRY_900 #AC1800; +@define-color ORANGE_100 #FFDB91; +@define-color ORANGE_300 #FFCA40; +@define-color ORANGE_500 #FAA41A; +@define-color ORANGE_700 #DE8800; +@define-color ORANGE_900 #C26C00; +@define-color BANANA_100 #FFFFA8; +@define-color BANANA_300 #FFFA7D; +@define-color BANANA_500 #FFCE51; +@define-color BANANA_700 #D1A023; +@define-color BANANA_900 #A27100; +@define-color LIME_100 #A2F3BE; +@define-color LIME_300 #8ADBA6; +@define-color LIME_500 #73C48F; +@define-color LIME_700 #479863; +@define-color LIME_900 #1C6D38; +@define-color BLUEBERRY_100 #94A6FF; +@define-color BLUEBERRY_300 #6A7CE0; +@define-color BLUEBERRY_500 #3F51B5; +@define-color BLUEBERRY_700 #213397; +@define-color BLUEBERRY_900 #031579; +@define-color GRAPE_100 #D25DE6; +@define-color GRAPE_300 #B84ACB; +@define-color GRAPE_500 #9C27B0; +@define-color GRAPE_700 #830E97; +@define-color GRAPE_900 #6A007E; +@define-color COCOA_100 #9F9792; +@define-color COCOA_300 #7B736E; +@define-color COCOA_500 #574F4A; +@define-color COCOA_700 #463E39; +@define-color COCOA_900 #342C27; +@define-color SILVER_100 #EEE; +@define-color SILVER_300 #CCC; +@define-color SILVER_500 #AAA; +@define-color SILVER_700 #888; +@define-color SILVER_900 #666; +@define-color SLATE_100 #888; +@define-color SLATE_300 #666; +@define-color SLATE_500 #444; +@define-color SLATE_700 #222; +@define-color SLATE_900 #111; +@define-color BLACK_100 #474341; +@define-color BLACK_300 #403C3A; +@define-color BLACK_500 #393634; +@define-color BLACK_700 #33302F; +@define-color BLACK_900 #2B2928; diff --git a/Cutefish/gtk-3.0/gtk.css b/Cutefish/gtk-3.0/gtk.css new file mode 100644 index 0000000..8621d22 --- /dev/null +++ b/Cutefish/gtk-3.0/gtk.css @@ -0,0 +1,4180 @@ +@keyframes ripple { + to { + background-size: 1000% 1000%; + } +} + +@keyframes ripple-on-slider { + to { + background-size: auto, 1000% 1000%; + } +} + +@keyframes ripple-on-headerbar { + from { + background-image: radial-gradient(circle, #3c84f7 0%, transparent 0%); + } + to { + background-image: radial-gradient(circle, #3c84f7 100%, transparent 0%); + } +} + +* { + background-clip: padding-box; + -GtkToolButton-icon-spacing: 0; + -GtkTextView-error-underline-color: #D93025; + -GtkScrolledWindow-scrollbar-spacing: 0; + -GtkToolItemGroup-expander-size: 11; + -GtkWidget-text-handle-width: 24; + -GtkWidget-text-handle-height: 24; + -GtkDialog-button-spacing: 6; + -GtkDialog-action-area-border: 6; + outline-style: solid; + outline-width: 2px; + outline-color: transparent; + outline-offset: -4px; + -gtk-outline-radius: 6px; + -gtk-secondary-caret-color: #3c84f7; +} + +*:focus { + outline-color: alpha(currentColor, 0.1); +} + +calendar:selected, treeview.view:selected, modelbutton.flat:selected, +.menuitem.button.flat:selected, .background.csd .view:selected { + color: rgba(0, 0, 0, 0.87); + background-color: alpha(currentColor, 0.1); +} + +flowbox flowboxchild:selected { + color: #3c84f7; + background-color: rgba(60, 132, 247, 0.2); +} + +spinbutton.vertical selection, spinbutton:not(.vertical) selection, +entry selection, label selection, textview text selection:focus, textview text selection, widget.view:selected, .view:selected { + color: white; + background-color: #3c84f7; +} + +.linked:not(.vertical) > button, .linked:not(.vertical) > spinbutton.vertical, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry { + border-radius: 0; +} + +.linked:not(.vertical) > button:first-child, .linked:not(.vertical) > spinbutton.vertical:first-child, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.linked:not(.vertical) > button:last-child, .linked:not(.vertical) > spinbutton.vertical:last-child, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > button:only-child, .linked:not(.vertical) > spinbutton.vertical:only-child, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child { + border-radius: 6px; +} + +.linked.vertical > button, .linked.vertical > spinbutton.vertical, .linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry { + border-radius: 0; +} + +.linked.vertical > button:first-child, .linked.vertical > spinbutton.vertical:first-child, .linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > button:last-child, .linked.vertical > spinbutton.vertical:last-child, .linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > button:only-child, .linked.vertical > spinbutton.vertical:only-child, .linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child { + border-radius: 6px; +} + +/*************** + * Base States * + ***************/ +.background { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +.background.csd { + border-radius: 0 0 14px 14px; +} + +.background.maximized, .background.solid-csd { + border-radius: 0; +} + +*:disabled { + -gtk-icon-effect: dim; +} + +.gtkstyle-fallback { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +.gtkstyle-fallback:hover { + background-color: #f2f2f2; + color: rgba(0, 0, 0, 0.87); +} + +.gtkstyle-fallback:active { + background-color: #e6e6e6; + color: rgba(0, 0, 0, 0.87); +} + +.gtkstyle-fallback:disabled { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.38); +} + +.gtkstyle-fallback:selected { + background-color: #3c84f7; + color: white; +} + +.view { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +.view:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +.view:disabled { + color: rgba(0, 0, 0, 0.38); +} + +.view:selected:hover { + box-shadow: none; +} + +window.background.csd > stack.view { + border-radius: 0 0 14px 14px; +} + +textview text { + background-color: #FFFFFF; +} + +textview border { + background-color: #FAFAFA; + color: rgba(0, 0, 0, 0.6); +} + +iconview:hover, iconview:selected { + border-radius: 6px; +} + +.rubberband, +rubberband, +.content-view rubberband, +.content-view treeview.view rubberband, +treeview.view .content-view rubberband, +.content-view .rubberband, +treeview.view rubberband, +treeview.view .content-view .rubberband, +.content-view treeview.view .rubberband, +treeview.view flowbox rubberband, +flowbox treeview.view rubberband, +flowbox rubberband, +flowbox treeview.view rubberband, +treeview.view flowbox rubberband, +treeview.view flowbox rubberband, +flowbox treeview.view rubberband { + border: 1px solid #3c84f7; + background-color: rgba(60, 132, 247, 0.3); +} + +flowbox flowboxchild { + padding: 4px; + border-radius: 6px; +} + +.content-view .tile:selected { + background-color: transparent; +} + +label { + caret-color: currentColor; +} + +label.separator { + color: rgba(0, 0, 0, 0.6); +} + +label:disabled { + color: rgba(0, 0, 0, 0.38); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; +} + +label.osd { + border-radius: 6px; + background-color: rgba(52, 52, 52, 0.9); + color: white; +} + +.dim-label { + color: rgba(0, 0, 0, 0.6); +} + +assistant .sidebar { + padding: 4px 0; +} + +assistant .sidebar label { + min-height: 36px; + padding: 0 12px; + color: rgba(0, 0, 0, 0.38); + font-weight: 500; +} + +assistant .sidebar label.highlight { + color: rgba(0, 0, 0, 0.87); +} + +/********************* + * Spinner Animation * + *********************/ +@keyframes spin { + to { + -gtk-icon-transform: rotate(1turn); + } +} + +spinner { + background: none; + opacity: 0; + -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); +} + +spinner:checked { + opacity: 1; + animation: spin 1s linear infinite; +} + +spinner:checked:disabled { + opacity: 0.5; +} + +/**************** + * Text Entries * + ****************/ +spinbutton.vertical, spinbutton:not(.vertical), +entry { + min-height: 36px; + padding: 0 8px; + border-radius: 6px; + caret-color: currentColor; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.vertical:focus, spinbutton:focus:not(.vertical), +entry:focus { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #3c84f7; +} + +spinbutton.vertical:drop(active), spinbutton:drop(active):not(.vertical), +entry:drop(active) { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +spinbutton.vertical:disabled, spinbutton:disabled:not(.vertical), +entry:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.flat.vertical, spinbutton.flat:not(.vertical), +entry.flat { + min-height: 0; + padding: 2px; + border-radius: 0; + background-color: transparent; +} + +spinbutton.vertical image, spinbutton:not(.vertical) image, +entry image { + color: rgba(0, 0, 0, 0.6); +} + +spinbutton.vertical image:hover, spinbutton:not(.vertical) image:hover, spinbutton.vertical image:active, spinbutton:not(.vertical) image:active, +entry image:hover, +entry image:active { + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.vertical image:disabled, spinbutton:not(.vertical) image:disabled, +entry image:disabled { + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.vertical image.left, spinbutton:not(.vertical) image.left, +entry image.left { + margin-left: 2px; + margin-right: 6px; +} + +spinbutton.vertical image.right, spinbutton:not(.vertical) image.right, +entry image.right { + margin-left: 6px; + margin-right: 2px; +} + +spinbutton.vertical undershoot.left, spinbutton:not(.vertical) undershoot.left, +entry undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.vertical undershoot.right, spinbutton:not(.vertical) undershoot.right, +entry undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.error.vertical, spinbutton.error:not(.vertical), +entry.error { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.error.vertical:focus, spinbutton.error:focus:not(.vertical), +entry.error:focus { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #D93025; +} + +spinbutton.error.vertical:disabled, spinbutton.error:disabled:not(.vertical), +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.warning.vertical, spinbutton.warning:not(.vertical), +entry.warning { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.warning.vertical:focus, spinbutton.warning:focus:not(.vertical), +entry.warning:focus { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #F4B400; +} + +spinbutton.warning.vertical:disabled, spinbutton.warning:disabled:not(.vertical), +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.vertical progress, spinbutton:not(.vertical) progress, +entry progress { + margin: 2px -8px; + border-bottom: 2px solid #3c84f7; + background-color: transparent; +} + +treeview entry.flat, treeview entry { + background-color: #FFFFFF; +} + +treeview entry.flat, treeview entry.flat:focus, treeview entry, treeview entry:focus { + border-image: none; + box-shadow: none; +} + +.entry-tag { + margin: 2px; + border-radius: 9999px; + box-shadow: none; + background-color: rgba(0, 0, 0, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +.entry-tag:hover { + background-image: image(alpha(currentColor, 0.08)); +} + +:dir(ltr) .entry-tag { + margin-left: 4px; + margin-right: 0; + padding-left: 12px; + padding-right: 8px; +} + +:dir(rtl) .entry-tag { + margin-left: 0; + margin-right: 4px; + padding-left: 8px; + padding-right: 12px; +} + +.entry-tag.button { + box-shadow: none; + background-color: transparent; +} + +.entry-tag.button:not(:hover):not(:active) { + color: rgba(0, 0, 0, 0.6); +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: -gtk-gradient(radial, center center, 0, center center, 0.001, to(#3c84f7), to(transparent)); + } + to { + background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(#3c84f7), to(transparent)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button { + color: rgba(255, 255, 255, 0.7); +} + +infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked { + color: white; +} + +infobar.warning > revealer > box button:disabled { + color: rgba(255, 255, 255, 0.3); +} + +infobar.warning > revealer > box button:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:not(.suggested-action):not(.destructive-action), button { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: rgba(0, 0, 0, 0.04); + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + color: rgba(0, 0, 0, 0.87); +} + +actionbar > revealer > box .linked > button:focus:not(.suggested-action):not(.destructive-action), button:focus { + box-shadow: 0 0 0 2px rgba(60, 132, 247, 0.35); +} + +actionbar > revealer > box .linked > button:hover:not(.suggested-action):not(.destructive-action), button:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +actionbar > revealer > box .linked > button:active:not(.suggested-action):not(.destructive-action), button:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; +} + +actionbar > revealer > box .linked > button:disabled:not(.suggested-action):not(.destructive-action), button:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +actionbar > revealer > box .linked > button:checked:not(.suggested-action):not(.destructive-action), button:checked { + background-color: #3c84f7; + color: white; +} + +actionbar > revealer > box .linked > button:checked:hover:not(.suggested-action):not(.destructive-action), button:checked:hover { + box-shadow: inset 0 0 0 9999px transparent; +} + +actionbar > revealer > box .linked > button:checked:disabled:not(.suggested-action):not(.destructive-action), button:checked:disabled { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.1); + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +button.titlebutton:not(.suggested-action):not(.destructive-action), filechooser #pathbarbox > stack > box > button, button.close, button.circular, .inline-toolbar button:not(.text-button) { + border-radius: 9999px; +} + +button.titlebutton:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, button.close label, button.circular label, .inline-toolbar button:not(.text-button) label { + padding: 0; +} + +placessidebar.sidebar row button.sidebar-button, notebook > header tab button.flat, spinbutton.vertical button, spinbutton:not(.vertical) button { + min-height: 24px; + min-width: 24px; + padding: 0; + border-radius: 9999px; +} + +button { + min-height: 24px; + min-width: 16px; + padding: 6px 10px; + border-radius: 6px; + font-weight: 500; +} + +button:drop(active) { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placessidebar.sidebar row button.sidebar-button, calendar.button, treeview.view header button button.circular, row.activatable button.circular, scrollbar button, notebook > header > tabs > arrow, spinbutton.vertical button, spinbutton:not(.vertical) button, modelbutton.flat, +.menuitem.button.flat, filechooser #pathbarbox > stack > box > button, messagedialog .dialog-action-box button, messagedialog .dialog-action-box .linked:not(.vertical) > button, .app-notification button, actionbar > revealer > box button:not(.suggested-action):not(.destructive-action), popover.background.menu button, +popover.background button.model, headerbar button:not(.suggested-action):not(.destructive-action), toolbar button, combobox > .linked:not(.vertical) > button:not(:only-child), button.flat { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), border-image 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + color: rgba(0, 0, 0, 0.6); +} + +placessidebar.sidebar row button.sidebar-button:focus, calendar.button:focus, treeview.view header button button.circular:focus, row.activatable button.circular:focus, scrollbar button:focus, notebook > header > tabs > arrow:focus, spinbutton.vertical button:focus, spinbutton:not(.vertical) button:focus, modelbutton.flat:focus, +.menuitem.button.flat:focus, filechooser #pathbarbox > stack > box > button:focus, messagedialog .dialog-action-box button:focus, messagedialog .dialog-action-box .linked:not(.vertical) > button:focus, .app-notification button:focus, actionbar > revealer > box button:focus:not(.suggested-action):not(.destructive-action), popover.background.menu button:focus, +popover.background button.model:focus, headerbar button:focus:not(.suggested-action):not(.destructive-action), toolbar button:focus, combobox > .linked:not(.vertical) > button:focus:not(:only-child), button.flat:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +placessidebar.sidebar row button.sidebar-button:hover, calendar.button:hover, treeview.view header button button.circular:hover, row.activatable button.circular:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, spinbutton.vertical button:hover, spinbutton:not(.vertical) button:hover, modelbutton.flat:hover, +.menuitem.button.flat:hover, filechooser #pathbarbox > stack > box > button:hover, messagedialog .dialog-action-box button:hover, messagedialog .dialog-action-box .linked:not(.vertical) > button:hover, .app-notification button:hover, actionbar > revealer > box button:hover:not(.suggested-action):not(.destructive-action), popover.background.menu button:hover, +popover.background button.model:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), toolbar button:hover, combobox > .linked:not(.vertical) > button:hover:not(:only-child), button.flat:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +placessidebar.sidebar row button.sidebar-button:active, calendar.button:active, treeview.view header button button.circular:active, row.activatable button.circular:active, scrollbar button:active, notebook > header > tabs > arrow:active, spinbutton.vertical button:active, spinbutton:not(.vertical) button:active, modelbutton.flat:active, +.menuitem.button.flat:active, filechooser #pathbarbox > stack > box > button:active, messagedialog .dialog-action-box button:active, messagedialog .dialog-action-box .linked:not(.vertical) > button:active, .app-notification button:active, actionbar > revealer > box button:active:not(.suggested-action):not(.destructive-action), popover.background.menu button:active, +popover.background button.model:active, headerbar button:active:not(.suggested-action):not(.destructive-action), toolbar button:active, combobox > .linked:not(.vertical) > button:active:not(:only-child), button.flat:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), border-image 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; + color: rgba(0, 0, 0, 0.87); +} + +placessidebar.sidebar row button.sidebar-button:disabled, calendar.button:disabled, treeview.view header button button.circular:disabled, row.activatable button.circular:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, spinbutton.vertical button:disabled, spinbutton:not(.vertical) button:disabled, modelbutton.flat:disabled, +.menuitem.button.flat:disabled, filechooser #pathbarbox > stack > box > button:disabled, messagedialog .dialog-action-box button:disabled, messagedialog .dialog-action-box .linked:not(.vertical) > button:disabled, .app-notification button:disabled, actionbar > revealer > box button:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:disabled, +popover.background button.model:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), toolbar button:disabled, combobox > .linked:not(.vertical) > button:disabled:not(:only-child), button.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(0, 0, 0, 0.26); +} + +filechooser #pathbarbox > stack > box > button:checked, messagedialog .dialog-action-box button:checked, messagedialog .dialog-action-box .linked:not(.vertical) > button:checked, .app-notification button:checked, actionbar > revealer > box button:checked:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked, +popover.background button.model:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), toolbar button:checked, combobox > .linked:not(.vertical) > button:checked:not(:only-child), button.flat:checked, button.flat:checked:hover { + background-color: alpha(currentColor, 0.1); + color: rgba(0, 0, 0, 0.87); +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, messagedialog .dialog-action-box button:checked:disabled, .app-notification button:checked:disabled, actionbar > revealer > box button:checked:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked:disabled, +popover.background button.model:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), toolbar button:checked:disabled, combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(0, 0, 0, 0.38); +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.text-button.flat { + min-width: 48px; + padding-left: 8px; + padding-right: 8px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child) { + margin: 0 4px; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + border-radius: 6px; +} + +.linked:not(.vertical) > button.flat:not(:only-child).image-button:not(.text-button), .linked.vertical > button.flat:not(:only-child).image-button:not(.text-button) { + border-radius: 9999px; +} + +button.osd { + min-width: 24px; + min-width: 24px; + padding: 12px 16px; + background-color: #3c84f7; + color: white; +} + +button.osd:hover { + background-color: #5393f8; + color: white; +} + +button.osd:active { + background-color: #6fa4f9; + color: white; +} + +button.osd.image-button, button.osd.circular { + padding: 12px; +} + +button.osd.image-button > image, button.osd.circular > image { + padding: 0; +} + +button.osd:disabled { + opacity: 0; +} + +button.suggested-action { + background-color: #3c84f7; + color: white; + box-shadow: none; +} + +button.suggested-action:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(60, 132, 247, 0.2), 0 4px 3px 0 rgba(60, 132, 247, 0.14), 0 1px 6px 0 rgba(60, 132, 247, 0.12); +} + +button.suggested-action:checked { + background-color: #77a9f9; +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(60, 132, 247, 0.3), 0 2px 3px -1px rgba(60, 132, 247, 0.24), 0 2px 5px 0 rgba(60, 132, 247, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(60, 132, 247, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #3c84f7; +} + +button.suggested-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(0, 0, 0, 0.26); +} + +button.suggested-action.flat:checked { + background-color: rgba(60, 132, 247, 0.3); +} + +button.destructive-action { + background-color: #D93025; + color: white; + box-shadow: none; +} + +button.destructive-action:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(217, 48, 37, 0.2), 0 4px 3px 0 rgba(217, 48, 37, 0.14), 0 1px 6px 0 rgba(217, 48, 37, 0.12); +} + +button.destructive-action:checked { + background-color: #e46e66; +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(217, 48, 37, 0.3), 0 2px 3px -1px rgba(217, 48, 37, 0.24), 0 2px 5px 0 rgba(217, 48, 37, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(217, 48, 37, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #D93025; +} + +button.destructive-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(0, 0, 0, 0.26); +} + +button.destructive-action.flat:checked { + background-color: rgba(217, 48, 37, 0.3); +} + +.stack-switcher > button > label { + margin: 0 -6px; + padding: 0 6px; +} + +.stack-switcher > button > image { + margin: -3px -6px; + padding: 3px 6px; +} + +.stack-switcher > button.needs-attention:checked > label, +.stack-switcher > button.needs-attention:checked > image { + animation: none; + background-image: none; +} + +.primary-toolbar button { + -gtk-icon-shadow: none; +} + +button.close, button.circular { + min-width: 24px; + padding: 6px; +} + +stacksidebar.sidebar row.needs-attention > label, .stack-switcher > button.needs-attention > label, +.stack-switcher > button.needs-attention > image { + animation: needs-attention 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-repeat: no-repeat; + background-position: right 3px; + background-size: 6px 6px; +} + +stacksidebar.sidebar row.needs-attention > label:dir(rtl), .stack-switcher > button.needs-attention > label:dir(rtl), +.stack-switcher > button.needs-attention > image:dir(rtl) { + background-position: left 3px; +} + +modelbutton.flat, +.menuitem.button.flat { + min-height: 28px; + padding: 0 8px; + border-radius: 6px; + color: rgba(0, 0, 0, 0.87); +} + +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 { + min-height: 24px; + min-width: 24px; + padding: 6px; +} + +/********* + * Links * + *********/ +*:link { + color: #2196F3; +} + +*:visited { + color: #9C27B0; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #2196F3; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #9C27B0; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton:not(.vertical) { + padding: 0; +} + +spinbutton:not(.vertical) entry { + min-width: 32px; + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +spinbutton:not(.vertical) button { + border: solid 6px transparent; +} + +spinbutton:not(.vertical) button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(0, 0, 0, 0.6); +} + +spinbutton:not(.vertical) button.up:dir(ltr), spinbutton:not(.vertical) button.down:dir(rtl) { + margin-left: -3px; +} + +spinbutton:not(.vertical) button.up:dir(rtl), spinbutton:not(.vertical) button.down:dir(ltr) { + margin-right: -3px; +} + +spinbutton.vertical { + padding: 0; +} + +spinbutton.vertical:disabled { + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.vertical entry { + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical button { + padding: 0; + border: solid 6px transparent; +} + +spinbutton.vertical button:focus:not(:hover):not(:active) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(0, 0, 0, 0.6); +} + +spinbutton.vertical button.up { + margin: 0 3px; +} + +spinbutton.vertical button.down { + margin: 0 3px; +} + +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: 24px; + min-width: 24px; +} + +combobox decoration { + transition: none; +} + +combobox button.combo cellview:dir(ltr) { + margin-left: -2px; +} + +combobox button.combo cellview:dir(rtl) { + margin-right: -2px; +} + +combobox.linked button:nth-child(2):dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +combobox.linked button:nth-child(2):dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child):first-child { + margin-right: -36px; + padding-right: 36px; +} + +combobox > .linked:not(.vertical) > entry:not(:only-child):last-child { + margin-left: -36px; + padding-left: 36px; +} + +combobox > .linked:not(.vertical) > button:not(:only-child) { + min-height: 16px; + min-width: 16px; + margin: 6px; + padding: 4px; + border-radius: 6px; +} + +.linked:not(.vertical) > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.linked:not(.vertical) > combobox:not(:last-child) > box > button.combo { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.linked.vertical > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.linked.vertical > combobox:not(:last-child) > box > button.combo { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +button.combo:only-child { + border-radius: 6px; + font-weight: normal; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +button.combo:only-child:focus { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.26); +} + +button.combo:only-child:hover { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +button.combo:only-child:checked { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #3c84f7; +} + +button.combo:only-child:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +/************ + * Toolbars * + ************/ +toolbar { + -GtkWidget-window-dragging: true; + padding: 2px; + background-color: #FFFFFF; +} + +.osd toolbar { + background-color: transparent; +} + +.app-notification, toolbar.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); + background-color: #FFFFFF; +} + +.app-notification:backdrop, toolbar.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); +} + +.left.app-notification, .right.app-notification, .top.app-notification, .bottom.app-notification, toolbar.osd.left, toolbar.osd.right, toolbar.osd.top, toolbar.osd.bottom { + border-radius: 0; +} + +.bottom.app-notification, toolbar.osd.bottom { + box-shadow: none; + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.4)); +} + +toolbar.horizontal > separator { + margin: 2px; +} + +toolbar.vertical > separator { + margin: 2px; +} + +toolbar:not(.inline-toolbar):not(.osd) scale, +toolbar:not(.inline-toolbar):not(.osd) entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton, +toolbar:not(.inline-toolbar):not(.osd) button { + margin: 2px; +} + +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child) { + margin-left: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child) { + margin-right: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton button { + margin: 0; +} + +toolbar:not(.inline-toolbar):not(.osd) switch { + margin: 8px 2px; +} + +.inline-toolbar { + padding: 6px; + border-style: solid; + border-width: 0 1px 1px; + border-color: rgba(0, 0, 0, 0.12); + background-color: #FAFAFA; +} + +searchbar > revealer > box, +.location-bar { + padding: 6px; + border-style: solid; + border-width: 0 0 1px; + border-color: rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + background-clip: border-box; +} + +searchbar > revealer > box { + margin: -6px; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar .linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + border-radius: 6px; +} + +headerbar button:focus:not(.suggested-action):not(.destructive-action), headerbar button:hover:not(.suggested-action):not(.destructive-action), headerbar button:active:not(.suggested-action):not(.destructive-action), headerbar button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action) { + background-color: transparent; + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:focus:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:hover:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:backdrop:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar entry { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +.titlebar entry:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +.titlebar entry image { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar entry image:hover, .titlebar entry image:active { + color: white; +} + +.titlebar entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #242424; + color: white; + border-radius: 14px 14px 0 0; + box-shadow: inset 0 -1px rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +.titlebar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.titlebar:backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar .title { + padding: 0 12px; + font-weight: bold; +} + +.titlebar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +.titlebar .subtitle, +.titlebar .dim-label { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +.titlebar .subtitle:backdrop, +.titlebar .dim-label:backdrop { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar .titlebar { + background-color: transparent; + box-shadow: none; +} + +.titlebar + separator, .titlebar + separator.sidebar { + background-color: #242424; + background-image: none; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +.titlebar + separator:backdrop, .titlebar + separator.sidebar:backdrop { + background-color: #2C2C2C; +} + +.titlebar.selection-mode + separator, .titlebar.selection-mode + separator.sidebar, .selection-mode .titlebar + separator, .selection-mode .titlebar + separator.sidebar { + background-color: #3c84f7; +} + +.titlebar.selection-mode + separator:backdrop, .titlebar.selection-mode + separator.sidebar:backdrop, .selection-mode .titlebar + separator:backdrop, .selection-mode .titlebar + separator.sidebar:backdrop { + background-color: #3c84f7; +} + +.background.csd.unified .titlebar + separator, .background.csd.unified .titlebar + separator.sidebar { + box-shadow: inset 0 -1px rgba(0, 0, 0, 0.12); +} + +.titlebar .linked:not(.vertical) > entry { + border-radius: 6px; + margin-left: 3px; + margin-right: 3px; +} + +.titlebar button.suggested-action:disabled, .titlebar button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +.titlebar stackswitcher { + background-color: rgba(255, 255, 255, 0.04); +} + +.titlebar stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + background-color: rgba(255, 255, 255, 0.15); + color: white; +} + +.titlebar .path-bar button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 0; + padding-left: 6px; + padding-right: 6px; +} + +.titlebar.selection-mode { + transition: background-color 0.1ms 0ms, color 0ms cubic-bezier(0, 0, 0.2, 1); + animation: ripple-on-headerbar 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2), inset 0 -1px rgba(0, 0, 0, 0.12); + background-color: #3c84f7; + color: white; +} + +.titlebar.selection-mode:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode .subtitle:link { + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action) { + border-image: radial-gradient(circle closest-corner at center calc(100% - 1px), currentColor 0%, transparent 0%) 0 0 0/0 0 0px; + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):checked { + border-image: radial-gradient(circle closest-corner at center calc(100% - 1px), currentColor 100%, transparent 0%) 0 0 2/0 0 2px; + color: white; +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:not(.titlebutton) { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:checked { + color: rgba(255, 255, 255, 0.7); +} + +.titlebar.selection-mode button:not(.suggested-action):not(.destructive-action):backdrop:checked:disabled { + color: rgba(255, 255, 255, 0.3); +} + +.titlebar.selection-mode .selection-menu { + padding-left: 16px; + padding-right: 16px; +} + +.titlebar.selection-mode .selection-menu arrow { + -GtkArrow-arrow-scaling: 1; +} + +.titlebar.selection-mode .selection-menu .arrow { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +.titlebar .selection-mode { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #3c84f7; +} + +.tiled .titlebar, .tiled-top .titlebar, .tiled-right .titlebar, .tiled-bottom .titlebar, .tiled-left .titlebar, .maximized .titlebar, .fullscreen .titlebar { + border-radius: 0; +} + +.titlebar.default-decoration { + min-height: 24px; + padding: 6px 12px; + border-radius: 14px 14px 0 0; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); +} + +.tiled .titlebar.default-decoration, .maximized .titlebar.default-decoration, .fullscreen .titlebar.default-decoration { + box-shadow: none; + border-radius: 0; +} + +.titlebar.default-decoration button.titlebutton { + min-height: 24px; + min-width: 24px; + margin: 0; + padding: 0; +} + +.background.csd .titlebar.default-decoration { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1), inset 0 -1px rgba(0, 0, 0, 0.12); +} + +.background:not(.csd) .titlebar.default-decoration button.titlebutton:active { + background-size: 1000% 1000%; +} + +.solid-csd .titlebar:dir(rtl), .solid-csd .titlebar:dir(ltr) { + border-radius: 0; + box-shadow: none; +} + +headerbar { + min-height: 48px; + padding: 0 6px; +} + +box.vertical headerbar { + background-color: #242424; +} + +headerbar entry, +headerbar spinbutton, +headerbar button { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar button, headerbar button.image-button { + border-radius: 6px; +} + +headerbar > box.left, +headerbar > box.right { + padding: 0 4px; +} + +headerbar separator.titlebutton, headerbar separator.sidebar { + margin-top: 12px; + margin-bottom: 12px; + background-color: transparent; +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar spinbutton button { + margin-top: 0; + margin-bottom: 0; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action) { + border-radius: 0; + margin: 0; + min-width: 120px; + padding: 0; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action) > stack > box { + padding: 0 12px; +} + +headerbar.windowhandle viewswitcher button:not(.titlebutton):not(.suggested-action):not(.destructive-action):focus { + box-shadow: none; +} + +headerbar.windowhandle > button.popup label, headerbar.windowhandle > button.popup image { + min-height: 0; +} + +headerbar.windowhandle viewswitchertitle > squeezer { + margin-top: 0; + margin-bottom: 0; + background: none; +} + +headerbar.windowhandle viewswitchertitle > squeezer > viewswitcher { + margin: 0 0; + background: none; +} + +headerbar.windowhandle viewswitchertitle > squeezer > viewswitcher > box.horizontal > button.radio { + margin: 0; + padding: 0; + border-radius: 0; +} + +/************ + * Pathbars * + ************/ + +.path-bar.linked:not(.vertical) > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 3px; + margin-left: 1px; + margin-right: 1px; + background-color: alpha(currentColor, 0.08); +} + + +.path-bar.linked:not(.vertical) > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +.path-bar.linked:not(.vertical) > button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + + +.path-bar.linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + + +.path-bar.linked:not(.vertical) > button:checked { + background-color: alpha(currentColor, 0.16); + color: rgba(0, 0, 0, 0.87); +} + + +.path-bar.linked:not(.vertical) > button label:not(:only-child):first-child { + margin-left: 0; +} + + +.path-bar.linked:not(.vertical) > button label:not(:only-child):last-child { + margin-right: 0; +} + + +.path-bar.linked:not(.vertical) > button.text-button { + min-width: 0; +} + + +.path-bar.linked:not(.vertical) > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +/************** + * Tree Views * + **************/ +treeview.view { + border-left-color: rgba(0, 0, 0, 0.26); + border-top-color: rgba(0, 0, 0, 0.12); + padding: 3px; +} + +* { + -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; +} + +.csd treeview.view:not(:selected):not(:hover):not(.progressbar):not(.expander):not(.trough):not(.separator) { + background-color: transparent; +} + +treeview.view:hover, treeview.view:selected { + border-radius: 0; +} + +treeview.view.separator { + min-height: 6px; + color: rgba(0, 0, 0, 0.12); +} + +treeview.view:drop(active) { + border-style: solid none; + border-width: 9999px; + border-color: alpha(currentColor, 0.08); +} + +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-down-symbolic"); + -gtk-icon-transform: rotate(-90deg); + color: rgba(0, 0, 0, 0.6); +} + +treeview.view.expander:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +treeview.view.expander:checked { + -gtk-icon-transform: unset; +} + +treeview.view.expander:hover, treeview.view.expander:active { + color: rgba(0, 0, 0, 0.87); +} + +treeview.view.expander:disabled { + color: rgba(0, 0, 0, 0.26); +} + +treeview.view.progressbar { + border: none; + box-shadow: none; + background-color: #3c84f7; + background-image: none; + border-radius: 9999px; + color: white; +} + +treeview.view.progressbar:selected, treeview.view.progressbar:selected:hover, treeview.view.progressbar:selected:focus { + box-shadow: none; + background-color: rgba(53, 116, 217, 0.9805); + color: white; +} + +treeview.view.progressbar:selected:backdrop, treeview.view.progressbar:selected:hover:backdrop, treeview.view.progressbar:selected:focus:backdrop { + color: white; +} + +treeview.view.progressbar:backdrop, treeview.view.progressbar:selected:backdrop { + background-color: rgba(0, 0, 0, 0.26); +} + +treeview.view.trough { + border: none; + box-shadow: none; + background-color: rgba(0, 0, 0, 0.12); + background-image: none; + border-radius: 9999px; + padding: 0; + margin: 0; +} + +treeview.view.trough:selected, treeview.view.trough:selected:hover, treeview.view.trough:selected:focus { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.12); +} + +treeview.view.trough:backdrop, treeview.view.trough:selected:backdrop { + background-color: rgba(0, 0, 0, 0.12); +} + +treeview.view header button { + padding: 2px 6px; + border-style: none solid solid none; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.12); + border-radius: 0; + background-clip: border-box; +} + +treeview.view header button:not(:focus):not(:hover):not(:active) { + color: rgba(0, 0, 0, 0.6); +} + +treeview.view header button, treeview.view header button:disabled { + background-color: #FFFFFF; +} + +treeview.view header button:last-child { + border-right-style: none; +} + +treeview.view button.dnd, +treeview.view header.button.dnd { + padding: 2px 6px; + border-style: none solid solid; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.12); + border-radius: 0; + box-shadow: none; + background-color: #FFFFFF; + background-clip: border-box; + color: #3c84f7; +} + +treeview.view acceleditor > label { + background-color: #3c84f7; +} + +/********* + * Menus * + *********/ +menubar, +.menubar { + -GtkWidget-window-dragging: true; + padding: 0; + background-color: #242424; + color: white; + box-shadow: inset 0 -1px rgba(0, 0, 0, 0.12); +} + +menubar:backdrop, +.menubar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.csd menubar, .csd .menubar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > menuitem, +.menubar > menuitem { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + padding: 4px 8px; + color: rgba(255, 255, 255, 0.7); + border-radius: 6px; +} + +menubar > menuitem:hover, +.menubar > menuitem:hover { + transition: none; + background-color: alpha(currentColor, 0.1); + color: white; +} + +menubar > menuitem:disabled, +.menubar > menuitem:disabled { + color: rgba(255, 255, 255, 0.3); +} + +menubar > menuitem label:disabled, +.menubar > menuitem label:disabled { + color: inherit; +} + +.background.popup { + background-color: transparent; +} + +menu, +.menu, +.context-menu { + margin: 6px; + padding: 6px; + background-color: #FFFFFF; + background-clip: border-box; + border-radius: 12px; + border: 1px solid #e0e0e0; +} + +.csd menu, .csd .menu, .csd .context-menu { + border: none; + box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.15); +} + +menu menuitem, +.menu menuitem, +.context-menu menuitem { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + min-width: 40px; + padding: 4px 8px; + color: rgba(0, 0, 0, 0.87); + font: initial; + text-shadow: none; + border-radius: 6px; +} + +menu menuitem:hover, +.menu menuitem:hover, +.context-menu menuitem:hover { + background-color: alpha(currentColor, 0.08); +} + +menu menuitem:active, +.menu menuitem:active, +.context-menu menuitem:active { + background-color: alpha(currentColor, 0.12); +} + +menu menuitem:disabled, +.menu menuitem:disabled, +.context-menu menuitem:disabled { + color: rgba(0, 0, 0, 0.38); +} + +menu menuitem accelerator, +.menu menuitem accelerator, +.context-menu menuitem accelerator { + color: rgba(0, 0, 0, 0.6); +} + +menu menuitem:disabled accelerator, +.menu menuitem:disabled accelerator, +.context-menu menuitem:disabled accelerator { + color: rgba(0, 0, 0, 0.26); +} + +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: 8px; +} + +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: 8px; +} + +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 .view:selected, +.menu .view:selected, +.context-menu .view:selected { + background-color: rgba(235, 235, 235, 0.987); +} + +menu > arrow, +.menu > arrow, +.context-menu > arrow { + min-height: 16px; + min-width: 16px; + padding: 4px; + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.6); +} + +menu > arrow.top, +.menu > arrow.top, +.context-menu > arrow.top { + margin-top: 0; + border-radius: 6px; + -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-radius: 6px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +menu > arrow:hover, +.menu > arrow:hover, +.context-menu > arrow:hover { + background-image: image(alpha(currentColor, 0.08)); + color: rgba(0, 0, 0, 0.87); +} + +menu > arrow:disabled, +.menu > arrow:disabled, +.context-menu > arrow:disabled { + border-color: transparent; + background-color: transparent; + color: transparent; +} + +menu separator, +.menu separator, +.context-menu separator { + margin: 4px 0; +} + +/************ + * Popovers * + ************/ +popover.background { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 0; + background-color: #FFFFFF; + border-radius: 12px; +} + +popover.background, .csd popover.background { + border: 1px solid rgba(0, 0, 0, 0.15); + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05); + background-clip: padding-box; +} + +popover.background:backdrop, .csd popover.background:backdrop { + box-shadow: 0 3px 2px -2px rgba(0, 0, 0, 0.05), 0 2px 3px -1px rgba(0, 0, 0, 0.06), 0 1px 4px 0 rgba(0, 0, 0, 0.05); +} + +popover.background > stack { + margin: 0; +} + +popover.background > toolbar { + margin: 0; +} + +popover.background > list, +popover.background > .view, +popover.background > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover.background > scrolledwindow > viewport.frame > list { + background-color: transparent; + padding: 6px; +} + +popover.background > scrolledwindow > viewport.frame > list > row { + border-radius: 6px; + padding: 6px; +} + +popover.background .view:not(:selected), +popover.background toolbar { + background-color: #FFFFFF; +} + +popover.background .linked > button:not(.radio) { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):first-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):last-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):only-child { + border-radius: 6px; +} + +popover.background.menu button, +popover.background button.model { + min-height: 32px; + padding: 0 8px; + border-radius: 6px; +} + +popover.background separator { + margin: 4px 0; +} + +popover.background list separator { + margin: 0; +} + +/************* + * Notebooks * + *************/ +notebook > header tab { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + min-height: 24px; + min-width: 24px; + padding: 3px 12px; + border: none; + outline: none; + background-clip: padding-box; + color: rgba(0, 0, 0, 0.6); + font-weight: 500; + border-radius: 6px; +} + +notebook > header tab:hover { + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +notebook > header tab:disabled { + color: rgba(0, 0, 0, 0.26); +} + +notebook > header tab:checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: white; + color: rgba(0, 0, 0, 0.87); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +notebook > header tab:checked:disabled { + color: rgba(0, 0, 0, 0.38); +} + +frame > paned > notebook > header, notebook.frame > header { + background-color: rgba(0, 0, 0, 0.04); +} + +notebook, notebook.frame { + background-color: #FFFFFF; + border-radius: 12px; +} + +notebook.frame frame > border { + border: none; + border-radius: 6px; +} + +notebook.frame frame > list row.activatable { + border-radius: 6px; +} + +notebook > header { + border: none; + background-color: rgba(0, 0, 0, 0.04); + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +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 { + padding-left: 4px; + padding-right: 4px; +} + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { + margin-left: 0; + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { + margin-right: 0; + -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 { + padding-top: 4px; + padding-bottom: 4px; +} + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { + margin-top: 0; + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { + margin-bottom: 0; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +notebook > header > tabs > arrow { + min-height: 16px; + min-width: 16px; + border-radius: 6px; +} + +notebook > header tab > box { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header tab > box:drop(active) { + background-color: rgba(0, 0, 0, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +notebook > header tab button.flat:last-child { + margin-left: 6px; + margin-right: -6px; +} + +notebook > header tab button.flat:first-child { + margin-left: -6px; + margin-right: 6px; +} + +notebook > header tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child { + margin-left: 0; +} + +notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child { + margin-right: 0; +} + +notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child { + margin-top: 0; +} + +notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child { + margin-bottom: 0; +} + +notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page { + border-style: solid; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #FFFFFF; +} + +* { + -GtkScrollbar-has-backward-stepper: false; + -GtkScrollbar-has-forward-stepper: false; +} + +scrollbar.top { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar.bottom { + border-top: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar.left { + border-right: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar.right { + border-left: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 8px; + min-height: 8px; + border: 4px solid transparent; + border-radius: 9999px; + background-clip: padding-box; + background-color: rgba(0, 0, 0, 0.38); +} + +scrollbar slider:hover { + background-color: rgba(0, 0, 0, 0.6); +} + +scrollbar slider:active { + background-color: rgba(0, 0, 0, 0.87); +} + +scrollbar slider:disabled { + background-color: rgba(0, 0, 0, 0.26); +} + +scrollbar.fine-tune slider { + min-width: 4px; + min-height: 4px; +} + +scrollbar.fine-tune.horizontal slider { + margin: 2px 0; +} + +scrollbar.fine-tune.vertical slider { + margin: 0 2px; +} + +scrollbar.overlay-indicator:not(.fine-tune) slider { + transition-property: background-color, min-height, min-width; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { + border-color: transparent; + background-color: transparent; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) slider { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(255, 255, 255, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(255, 255, 255, 0.3); + border-radius: 9999px; + background-color: rgba(0, 0, 0, 0.38); + background-clip: padding-box; + -gtk-icon-source: none; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button:disabled { + background-color: rgba(0, 0, 0, 0.26); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal slider { + min-width: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { + min-width: 8px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical slider { + min-height: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { + min-height: 8px; +} + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { + background-color: rgba(255, 255, 255, 0.9); +} + +scrollbar.horizontal slider { + min-width: 24px; +} + +scrollbar.vertical slider { + min-height: 24px; +} + +scrollbar button { + min-width: 16px; + min-height: 16px; + padding: 0; + border-radius: 0; +} + +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"); +} + +/********** + * Switch * + **********/ +switch { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + margin: 6px 0; + border: none; + border-radius: 9999px; + background-color: rgba(0, 0, 0, 0.38); + background-clip: padding-box; + font-size: 0; + color: transparent; +} + +switch:checked { + background-color: #3c84f7; +} + +switch:disabled { + opacity: 0.5; +} + +switch slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 20px; + min-height: 20px; + margin: 1px; + border-radius: 9999px; + outline: none; + box-shadow: none; + background-color: white; + border: none; + color: transparent; +} + +switch:focus slider, switch:hover slider, switch:focus:hover slider { + box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.12); +} + +/************************* + * Check and Radio items * + *************************/ +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + min-height: 40px; + min-width: 40px; + margin: 0; + padding: 0; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-unchecked.png"), url("assets/selectionmode-checkbox-unchecked@2.png")); +} + +.view.content-view.check:not(list):checked, +.content-view .tile check:not(list):checked { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-checked.png"), url("assets/selectionmode-checkbox-checked@2.png")); +} + +checkbutton, +radiobutton { + outline: none; +} + +checkbutton.text-button, +radiobutton.text-button { + padding: 2px; +} + +checkbutton.text-button label:not(:only-child), +radiobutton.text-button label:not(:only-child) { + margin: 0 4px; +} + +check, +radio { + min-height: 20px; + min-width: 20px; + margin: 3px; + padding: 0; + border-radius: 9999px; + color: transparent; + background-color: rgba(0, 0, 0, 0.12); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +check:hover, +radio:hover { + box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.04); + background-color: rgba(0, 0, 0, 0.15); +} + +check:active, +radio:active { + box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.12); + background-color: rgba(0, 0, 0, 0.2); +} + +check:disabled, +radio:disabled { + background-color: rgba(0, 0, 0, 0.04); +} + +check:checked, check:indeterminate, +radio:checked, +radio:indeterminate { + color: white; + background-color: #3c84f7; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(60, 132, 247, 0.15); + background-color: #6da3f9; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(60, 132, 247, 0.2); + background-color: #3c84f7; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(255, 255, 255, 0.5); + background-color: rgba(60, 132, 247, 0.35); +} + +popover modelbutton.flat check, popover modelbutton.flat check:focus, popover modelbutton.flat check:hover, popover modelbutton.flat check:focus:hover, popover modelbutton.flat check:active, popover modelbutton.flat check:disabled, popover modelbutton.flat radio, popover modelbutton.flat radio:focus, popover modelbutton.flat radio:hover, popover modelbutton.flat radio:focus:hover, popover modelbutton.flat radio:active, popover modelbutton.flat radio:disabled { + transition: none; + box-shadow: none; + background-image: none; +} + +popover modelbutton.flat check.left:dir(rtl), popover modelbutton.flat radio.left:dir(rtl) { + margin-left: -3px; + margin-right: 6px; +} + +popover modelbutton.flat check.right:dir(ltr), popover modelbutton.flat radio.right:dir(ltr) { + margin-left: 6px; + margin-right: -3px; +} + +menu menuitem check, menu menuitem radio { + transition: none; + margin: 0; + padding: 0; +} + +menu menuitem check:dir(ltr), menu menuitem radio:dir(ltr) { + margin-right: 6px; + margin-left: -3px; +} + +menu menuitem check:dir(rtl), menu menuitem radio:dir(rtl) { + margin-left: 6px; + margin-right: -3px; +} + +menu menuitem check, menu menuitem check:hover, menu menuitem check:disabled, menu menuitem check:checked:hover, menu menuitem check:indeterminate:hover, menu menuitem radio, menu menuitem radio:hover, menu menuitem radio:disabled, menu menuitem radio:checked:hover, menu menuitem radio:indeterminate:hover { + box-shadow: none; +} + + +check:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/checkbox-checked-symbolic.svg")); +} + + +check:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic.svg")); +} + + +radio:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/radio-checked-symbolic.svg")); +} + + +radio:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/radio-mixed-symbolic.svg")); +} + + +menu menuitem check { + min-height: 16px; + min-width: 16px; +} + + +menu menuitem check:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic.svg")); +} + + +menu menuitem check:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic.svg")); +} + + +menu menuitem radio { + min-height: 16px; + min-width: 16px; +} + + +menu menuitem radio:checked { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-radio-checked-symbolic.svg")); +} + + +menu menuitem radio:indeterminate { + -gtk-icon-source: -gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic.svg")); +} + +check:not(:checked):active { + -gtk-icon-transform: rotate(90deg); +} + +check:not(:checked):indeterminate:active, +radio:not(:checked):indeterminate:active { + -gtk-icon-transform: scaleX(-1); +} + +treeview.view radio, treeview.view check { + padding: 0; + margin: 0; +} + +treeview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), treeview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate) { + background-color: rgba(0, 0, 0, 0.12); +} + +treeview.view radio, treeview.view radio:hover, treeview.view radio:disabled, treeview.view radio:checked:hover, treeview.view radio:indeterminate:hover, treeview.view check, treeview.view check:hover, treeview.view check:disabled, treeview.view check:checked:hover, treeview.view check:indeterminate:hover { + box-shadow: none; +} + +treeview.view:selected radio:checked, treeview.view:selected radio:indeterminate, treeview.view:selected check:checked, treeview.view:selected check:indeterminate, treeview.view:selected:focus radio:checked, treeview.view:selected:focus radio:indeterminate, treeview.view:selected:focus check:checked, treeview.view:selected:focus check:indeterminate { + background-color: #3c84f7; + color: white; + background-image: none; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale slider { + min-height: 18px; + min-width: 18px; + margin: -8px; +} + +scale.fine-tune.horizontal { + min-height: 4px; + padding-top: 16px; + padding-bottom: 16px; +} + +scale.fine-tune.vertical { + min-width: 4px; + padding-left: 16px; + padding-right: 16px; +} + +scale.fine-tune slider { + margin: -7px; +} + +scale trough { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + background-color: rgba(0, 0, 0, 0.26); +} + +scale trough:disabled { + background-color: rgba(0, 0, 0, 0.12); +} + +scale highlight { + transition: background-image 0ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#3c84f7); +} + +scale highlight:disabled { + background-color: #FFFFFF; + background-image: image(rgba(0, 0, 0, 0.26)); +} + +scale fill { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(0, 0, 0, 0.26); +} + +scale fill:disabled { + background-color: transparent; +} + +scale slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #3c84f7; + background-color: #FFFFFF; + box-shadow: 0 0 5px #ccc; +} + +scale slider:active { + box-shadow: 0 0 5px #B3B3B3; +} + +scale slider:disabled { + box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.26); +} + +scale marks, +scale value { + color: rgba(0, 0, 0, 0.6); +} + +scale indicator { + background-color: rgba(0, 0, 0, 0.26); + color: transparent; +} + +scale.horizontal marks.top { + margin-bottom: 7px; + margin-top: -15px; +} + +scale.horizontal.fine-tune marks.top { + margin-bottom: 6px; + margin-top: -14px; +} + +scale.horizontal marks.bottom { + margin-top: 7px; + margin-bottom: -15px; +} + +scale.horizontal.fine-tune marks.bottom { + margin-top: 6px; + margin-bottom: -14px; +} + +scale.vertical marks.top { + margin-right: 7px; + margin-left: -15px; +} + +scale.vertical.fine-tune marks.top { + margin-right: 6px; + margin-left: -14px; +} + +scale.vertical marks.bottom { + margin-left: 7px; + margin-right: -15px; +} + +scale.vertical.fine-tune marks.bottom { + margin-left: 6px; + margin-right: -14px; +} + +scale.horizontal indicator { + min-height: 8px; + min-width: 1px; +} + +scale.vertical indicator { + min-height: 1px; + min-width: 8px; +} + +scale.horizontal.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-before:not(.marks-after) slider, scale.horizontal.marks-before:not(.marks-after) slider:hover, scale.horizontal.marks-before:not(.marks-after) slider:active, scale.horizontal.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider.png"), url("assets/scale-horz-marks-before-slider@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-disabled.png"), url("assets/scale-horz-marks-before-slider-disabled@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider.png"), url("assets/scale-horz-marks-before-slider@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-after:not(.marks-before) slider, scale.horizontal.marks-after:not(.marks-before) slider:hover, scale.horizontal.marks-after:not(.marks-before) slider:active, scale.horizontal.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider.png"), url("assets/scale-horz-marks-after-slider@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-disabled.png"), url("assets/scale-horz-marks-after-slider-disabled@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider.png"), url("assets/scale-horz-marks-after-slider@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-before:not(.marks-after) slider, scale.vertical.marks-before:not(.marks-after) slider:hover, scale.vertical.marks-before:not(.marks-after) slider:active, scale.vertical.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider.png"), url("assets/scale-vert-marks-before-slider@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-disabled.png"), url("assets/scale-vert-marks-before-slider-disabled@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider.png"), url("assets/scale-vert-marks-before-slider@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-after:not(.marks-before) slider, scale.vertical.marks-after:not(.marks-before) slider:hover, scale.vertical.marks-after:not(.marks-before) slider:active, scale.vertical.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple-on-slider 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider.png"), url("assets/scale-vert-marks-after-slider@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-disabled.png"), url("assets/scale-vert-marks-after-slider-disabled@2.png")), radial-gradient(circle, transparent 10%, transparent 0%); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider.png"), url("assets/scale-vert-marks-after-slider@2.png")), radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); +} + +scale.color { + min-height: 0; + min-width: 0; +} + +scale.color.horizontal { + padding: 0 0 12px 0; +} + +scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl) { + margin-bottom: -13.5px; + margin-top: 11.5px; +} + +scale.color.vertical:dir(ltr) { + padding: 0 0 0 12px; +} + +scale.color.vertical:dir(ltr) slider { + margin-left: -13.5px; + margin-right: 11.5px; +} + +scale.color.vertical:dir(rtl) { + padding: 0 12px 0 0; +} + +scale.color.vertical:dir(rtl) slider { + margin-right: -13.5px; + margin-left: 11.5px; +} + +/***************** + * Progress bars * + *****************/ +progressbar { + color: rgba(0, 0, 0, 0.6); + font-size: smaller; +} + +progressbar.horizontal trough, +progressbar.horizontal progress { + min-height: 6px; +} + +progressbar.vertical trough, +progressbar.vertical progress { + min-width: 6px; +} + +progressbar trough { + border-radius: 6px; + background-color: rgba(0, 0, 0, 0.12); +} + +progressbar progress { + border-radius: 6px; + background-color: #3c84f7; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #3c84f7; +} + +progressbar trough.empty progress { + all: unset; +} + +/************* + * Level Bar * + *************/ +levelbar.horizontal block { + min-height: 6px; +} + +levelbar.horizontal.discrete block { + min-width: 36px; +} + +levelbar.horizontal.discrete block:not(:last-child) { + margin-right: 2px; +} + +levelbar.vertical block { + min-width: 6px; +} + +levelbar.vertical.discrete block { + min-height: 36px; +} + +levelbar.vertical.discrete block:not(:last-child) { + margin-bottom: 2px; +} + +levelbar trough { + border-radius: 6px; +} + +levelbar block.low { + background-color: #F4B400; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #3c84f7; +} + +levelbar block.full { + background-color: #0F9D58; +} + +levelbar block.empty { + background-color: rgba(0, 0, 0, 0.12); +} + +/**************** + * Print dialog * +*****************/ +printdialog paper { + padding: 0; + border: 1px solid rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +printdialog .dialog-action-box { + margin: 12px; +} + +/********** + * Frames * + **********/ +frame > border, +.frame { + margin: 0; + padding: 0; + border: 1px solid rgba(0, 0, 0, 0.12); + border-radius: 0; + box-shadow: none; +} + +frame > border.view, +.frame.view { + border-radius: 6px; +} + +frame > border.flat, +.frame.flat { + border-style: none; +} + +frame.flat > border, statusbar frame > border { + border: none; +} + +actionbar > revealer > box { + padding: 6px; + border-top: 1px solid rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + background-clip: border-box; +} + +.background.csd box.vertical > actionbar > revealer > box { + border-radius: 0 0 14px 14px; +} + +scrolledwindow viewport.frame { + border: none; +} + +stack scrolledwindow.frame viewport.frame list { + border: none; +} + +overshoot.top { + background-image: -gtk-gradient(radial, center top, 0, center top, 0.5, to(rgba(0, 0, 0, 0.12)), to(rgba(0, 0, 0, 0))), -gtk-gradient(radial, center top, 0, center top, 0.6, from(rgba(0, 0, 0, 0.07)), to(rgba(0, 0, 0, 0))); + background-size: 100% 5%, 100% 100%; + background-repeat: no-repeat; + background-position: center top; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.bottom { + background-image: -gtk-gradient(radial, center bottom, 0, center bottom, 0.5, to(rgba(0, 0, 0, 0.12)), to(rgba(0, 0, 0, 0))), -gtk-gradient(radial, center bottom, 0, center bottom, 0.6, from(rgba(0, 0, 0, 0.07)), to(rgba(0, 0, 0, 0))); + background-size: 100% 5%, 100% 100%; + background-repeat: no-repeat; + background-position: center bottom; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.left { + background-image: -gtk-gradient(radial, left center, 0, left center, 0.5, to(rgba(0, 0, 0, 0.12)), to(rgba(0, 0, 0, 0))), -gtk-gradient(radial, left center, 0, left center, 0.6, from(rgba(0, 0, 0, 0.07)), to(rgba(0, 0, 0, 0))); + background-size: 5% 100%, 100% 100%; + background-repeat: no-repeat; + background-position: left center; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.right { + background-image: -gtk-gradient(radial, right center, 0, right center, 0.5, to(rgba(0, 0, 0, 0.12)), to(rgba(0, 0, 0, 0))), -gtk-gradient(radial, right center, 0, right center, 0.6, from(rgba(0, 0, 0, 0.07)), to(rgba(0, 0, 0, 0))); + background-size: 5% 100%, 100% 100%; + background-repeat: no-repeat; + background-position: right center; + background-color: transparent; + border: none; + box-shadow: none; +} + +junction { + border-style: solid none none solid; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; +} + +junction:dir(rtl) { + border-style: solid solid none none; +} + +separator { + min-width: 1px; + min-height: 1px; + background-color: rgba(0, 0, 0, 0.12); +} + +placessidebar.sidebar list > separator, stacksidebar.sidebar + separator.vertical, +stacksidebar.sidebar separator.horizontal, button.font separator, button.file separator { + min-width: 0; + min-height: 0; + background-color: transparent; +} + +/********* + * Lists * + *********/ +list.content:not(.conversation-listbox) { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(0, 0, 0, 0.12); +} + +list.content:not(.conversation-listbox) > row { + border-radius: 0; +} + +list.content:not(.conversation-listbox) > row:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:only-child { + border-radius: 6px; +} + +list.content:not(.conversation-listbox) > row:focus { + box-shadow: inset 0 0 0 1000px alpha(currentColor, 0.08); +} + +list { + border-color: rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; +} + +list row { + padding: 3px; +} + +list.navigation-sidebar { + padding: 3px; +} + +list.navigation-sidebar > row { + border-radius: 6px; +} + +treeview.view header button, row.activatable { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; +} + +treeview.view header button:focus, row.activatable:focus { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +treeview.view header button:hover, row.activatable:hover { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms, background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +treeview.view header button.has-open-popup, treeview.view header button:active, row.activatable.has-open-popup, row.activatable:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + background-image: radial-gradient(circle, alpha(currentColor, 0.12) 10%, transparent 0%); + background-size: 0% 0%; +} + +row:selected { + color: inherit; + background-color: rgba(0, 0, 0, 0.12); +} + +row:selected image, +row:selected label { + color: rgba(0, 0, 0, 0.87); +} + +row:selected button image, +row:selected button label { + color: inherit; +} + +row:selected:disabled image, +row:selected:disabled label { + color: rgba(0, 0, 0, 0.38); +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 8px; +} + +.app-notification button.text-button:not(:disabled) { + color: #3c84f7; +} + +.app-notification.frame, +.app-notification border { + border-style: none; +} + +/************* + * Expanders * + *************/ +expander title > arrow { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); + -gtk-icon-transform: rotate(-90deg); + color: rgba(0, 0, 0, 0.6); +} + +expander title > arrow:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +expander title > arrow:checked { + -gtk-icon-transform: unset; +} + +expander title > arrow:hover, expander title > arrow:active { + color: rgba(0, 0, 0, 0.87); +} + +expander title > arrow:disabled { + color: rgba(0, 0, 0, 0.26); +} + +/************ + * Calendar * + ************/ +calendar { + padding: 1px; + border: 1px solid rgba(0, 0, 0, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +calendar:disabled { + color: rgba(0, 0, 0, 0.38); +} + +calendar:selected { + border-radius: 7px; +} + +calendar.header { + border-style: none none solid; + border-color: rgba(0, 0, 0, 0.12); + border-radius: 0; +} + +calendar.highlight { + color: rgba(0, 0, 0, 0.6); + font-weight: 500; +} + +calendar:indeterminate { + color: rgba(0, 0, 0, 0.26); +} + +/*********** + * Dialogs * + ***********/ +messagedialog.background { + background-color: #FFFFFF; +} + +messagedialog.background.csd { + border-bottom-left-radius: 14px; + border-bottom-right-radius: 14px; +} + +messagedialog .titlebar { + min-height: 24px; + border-style: none; + box-shadow: none; + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +messagedialog .titlebar:backdrop { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.6); +} + +messagedialog .dialog-action-box { + margin-top: -6px; +} + +messagedialog .dialog-action-box button, messagedialog .dialog-action-box button:first-child, messagedialog .dialog-action-box button:last-child, messagedialog .dialog-action-box .linked:not(.vertical) > button, messagedialog .dialog-action-box .linked:not(.vertical) > button:first-child, messagedialog .dialog-action-box .linked:not(.vertical) > button:last-child { + border-radius: 6px; +} + +messagedialog .dialog-action-box button:not(:last-child), messagedialog .dialog-action-box .linked:not(.vertical) > button:not(:last-child) { + margin-right: 6px; +} + +messagedialog .dialog-action-box button.suggested-action:not(:disabled), messagedialog .dialog-action-box .linked:not(.vertical) > button.suggested-action:not(:disabled) { + color: #3c84f7; +} + +messagedialog .dialog-action-box button.destructive-action:not(:disabled), messagedialog .dialog-action-box .linked:not(.vertical) > button.destructive-action:not(:disabled) { + color: #D93025; +} + +.csd filechooser { + background-color: #FFFFFF; + border-radius: 0 0 14px 14px; +} + +filechooser .dialog-action-box { + border-top: 1px solid rgba(0, 0, 0, 0.12); +} + +filechooser #pathbarbox { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; +} + +filechooser stack.view { + background-color: transparent; + padding: 0; +} + +filechooser stack.view scrolledwindow { + background-color: transparent; + border-radius: 0 0 14px 0; +} + +filechooser stack.view scrolledwindow list { + background-color: transparent; +} + +filechooser stack.view > placesview { + background-color: transparent; +} + +filechooser stack.view > placesview > actionbar, filechooser stack.view > placesview > actionbar > revealer > box { + background-color: transparent; +} + +filechooser stack.view frame > border { + border: none; +} + +.csd filechooser placessidebar { + background: none; + border-bottom-left-radius: 14px; +} + +filechooser actionbar, filechooser actionbar > revealer > box { + background-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; +} + +stacksidebar.sidebar:dir(ltr) list, stacksidebar.sidebar.left list, stacksidebar.sidebar.left:dir(rtl) list, .sidebar:not(separator):dir(ltr), .sidebar:not(separator).left { + border-right: 1px solid rgba(0, 0, 0, 0.12); + 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 rgba(0, 0, 0, 0.12); + border-right-style: none; +} + +.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.sidebar list { + padding: 3px; + background-color: #FFFFFF; +} + +stacksidebar.sidebar row { + min-height: 32px; + padding: 0 3px; + border-radius: 6px; +} + +stacksidebar.sidebar row:selected { + background-color: #3c84f7; + color: white; + font-weight: 500; +} + +stacksidebar.sidebar row:selected label, stacksidebar.sidebar row:selected image { + color: white; +} + +stacksidebar.sidebar row + row { + margin-top: 3px; +} + +stacksidebar.sidebar row > label { + padding-left: 6px; + padding-right: 6px; + color: inherit; +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(0, 0, 0, 0.6); +} + +row image.sidebar-icon:disabled { + color: rgba(0, 0, 0, 0.26); +} + +placessidebar.sidebar > viewport.frame { + border-style: none; +} + +placessidebar.sidebar list { + padding: 6px; +} + +placessidebar.sidebar row { + min-height: 32px; + margin: 0; + padding: 0; + border-radius: 6px; +} + +placessidebar.sidebar row > revealer { + padding: 0 8px 0 16px; +} + +placessidebar.sidebar row:selected { + background-color: rgba(0, 0, 0, 0.12); + font-weight: 500; +} + +placessidebar.sidebar row:disabled { + color: rgba(0, 0, 0, 0.38); +} + +placessidebar.sidebar row image.sidebar-icon:dir(ltr) { + padding-right: 8px; +} + +placessidebar.sidebar row image.sidebar-icon:dir(rtl) { + padding-left: 8px; +} + +placessidebar.sidebar row label.sidebar-label { + color: inherit; +} + +placessidebar.sidebar row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar.sidebar row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar.sidebar row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar.sidebar row.sidebar-new-bookmark-row { + color: #3c84f7; +} + +placessidebar.sidebar row.sidebar-new-bookmark-row image.sidebar-icon { + color: #3c84f7; +} + +placessidebar.sidebar row:drop(active) { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms, background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placesview .server-list-button > image { + -gtk-icon-transform: rotate(0turn); +} + +placesview .server-list-button:checked > image { + -gtk-icon-transform: rotate(-0.5turn); +} + +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(rgba(0, 0, 0, 0.12)); + background-size: 1px 1px; + background-clip: content-box; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #FFFFFF; + background-image: image(rgba(0, 0, 0, 0.12)), image(rgba(0, 0, 0, 0.12)); + 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; +} + +/************** + * GtkInfoBar * + **************/ +infobar { + border: none; + margin-bottom: 0; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #FFFFFF; +} + +infobar.info > revealer > box button, infobar.info > revealer > box button.text-button:not(:disabled), infobar.info:hover > revealer > box button, infobar.info:hover > revealer > box button.text-button:not(:disabled), infobar.info:backdrop > revealer > box button, infobar.info:backdrop > revealer > box button.text-button:not(:disabled) { + color: #3c84f7; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #3c84f7; + color: white; +} + +infobar.action > revealer > box button, infobar.action > revealer > box button:hover, infobar.action > revealer > box button:focus, infobar.action > revealer > box button:active, infobar.action > revealer > box button:checked, infobar.action > revealer > box button.text-button:not(:disabled), infobar.action:backdrop > revealer > box button, infobar.action:backdrop > revealer > box button:hover, infobar.action:backdrop > revealer > box button:focus, infobar.action:backdrop > revealer > box button:active, infobar.action:backdrop > revealer > box button:checked, infobar.action:backdrop > revealer > box button.text-button:not(:disabled), infobar.question > revealer > box button, infobar.question > revealer > box button:hover, infobar.question > revealer > box button:focus, infobar.question > revealer > box button:active, infobar.question > revealer > box button:checked, infobar.question > revealer > box button.text-button:not(:disabled), infobar.question:backdrop > revealer > box button, infobar.question:backdrop > revealer > box button:hover, infobar.question:backdrop > revealer > box button:focus, infobar.question:backdrop > revealer > box button:active, infobar.question:backdrop > revealer > box button:checked, infobar.question:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: white; +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #5493f8; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #F4B400; + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box button, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked, infobar.warning > revealer > box button.text-button:not(:disabled), infobar.warning:backdrop > revealer > box button, infobar.warning:backdrop > revealer > box button:hover, infobar.warning:backdrop > revealer > box button:focus, infobar.warning:backdrop > revealer > box button:active, infobar.warning:backdrop > revealer > box button:checked, infobar.warning:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box *:link, infobar.warning:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning:hover > revealer > box { + background-color: #ffc00f; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #D93025; + color: white; +} + +infobar.error > revealer > box button, infobar.error > revealer > box button:hover, infobar.error > revealer > box button:focus, infobar.error > revealer > box button:active, infobar.error > revealer > box button:checked, infobar.error > revealer > box button.text-button:not(:disabled), infobar.error:backdrop > revealer > box button, infobar.error:backdrop > revealer > box button:hover, infobar.error:backdrop > revealer > box button:focus, infobar.error:backdrop > revealer > box button:active, infobar.error:backdrop > revealer > box button:checked, infobar.error:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: white; +} + +infobar.error:hover > revealer > box { + background-color: #dd443a; +} + +/************ + * Tooltips * + ************/ +tooltip { + border-radius: 3px; + box-shadow: none; +} + +tooltip.background { + background-color: rgba(52, 52, 52, 0.9); + color: white; +} + +tooltip.background.csd { + border-radius: 6px; +} + +tooltip decoration { + background-color: transparent; +} + +tooltip > box { + margin: -6px; + min-height: 24px; + padding: 4px 8px; +} + +/***************** + * Color Chooser * + *****************/ +colorswatch.top { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.top overlay { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.bottom { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.bottom overlay { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.left, colorswatch:first-child:not(.top) { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.left overlay, colorswatch:first-child:not(.top) overlay { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.right, colorswatch:last-child:not(.bottom) { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.dark { + color: white; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorswatch overlay { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +colorswatch overlay:hover { + box-shadow: 0 0 0 2px #3c84f7; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; +} + +colorswatch#add-color-button:only-child { + border-radius: 6px; +} + +colorswatch#add-color-button overlay { + background-color: rgba(0, 0, 0, 0.04); +} + +colorswatch#add-color-button overlay:hover { + background-color: rgba(0, 0, 0, 0.12); + box-shadow: none; +} + +colorswatch#add-color-button overlay:active { + background-color: rgba(0, 0, 0, 0.26); +} + +colorswatch:disabled { + opacity: 0.5; +} + +colorswatch:disabled overlay { + box-shadow: none; +} + +colorswatch#editor-color-sample { + border-radius: 12px; +} + +colorswatch#editor-color-sample overlay { + border-radius: 12px; +} + +colorswatch#editor-color-sample overlay:hover { + box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -0.6px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); + background-color: #FFFFFF; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); +} + +/******** + * Misc * + ********/ +.content-view { + background-color: #FFFFFF; +} + +/********************** + * Window Decorations * + **********************/ +decoration { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 14px; + box-shadow: 0 8px 6px -5px rgba(0, 0, 0, 0.2), 0 16px 15px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.12), 0 0 36px transparent; + margin: 8px; +} + +decoration:backdrop { + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.12), 0 0 36px transparent; +} + +.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; + border: none; +} + +.ssd decoration { + border: none; + border-radius: 14px 14px 0 0; + box-shadow: 0 3px 3px rgba(0, 0, 0, 0.16), 0 0 0 1px rgba(0, 0, 0, 0.12); +} + +.metacity decoration { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + border: none; +} + +.csd.popup decoration { + border-radius: 12px; + border: none; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.12); +} + +tooltip.csd decoration { + border-radius: 12px; + box-shadow: none; + border: none; +} + +messagedialog.csd decoration { + border-radius: 14px; +} + +.solid-csd decoration { + margin: 0; + padding: 2px; + border-radius: 0; + box-shadow: none; + background-color: #242424; + border: 1px solid #e0e0e0; +} + +.solid-csd decoration:backdrop { + background-color: #2C2C2C; +} + +button.titlebutton:not(.suggested-action):not(.destructive-action) { + min-height: 36px; + min-width: 36px; + padding: 0; + margin: 0 4px; +} + +button.minimize.titlebutton:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:not(.suggested-action):not(.destructive-action), button.close.titlebutton:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + background-color: "transparent"; +} + +button.minimize.titlebutton:hover:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:hover:not(.suggested-action):not(.destructive-action), button.close.titlebutton:hover:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.15); +} + +button.minimize.titlebutton:active:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:active:not(.suggested-action):not(.destructive-action), button.close.titlebutton:active:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.2); +} + +button.minimize.titlebutton:backdrop:not(.suggested-action):not(.destructive-action), button.maximize.titlebutton:backdrop:not(.suggested-action):not(.destructive-action), button.close.titlebutton:backdrop:not(.suggested-action):not(.destructive-action) { + opacity: 0.65; +} + +.monospace { + font-family: monospace; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #3c84f7; + -gtk-icon-source: -gtk-recolor(url("assets/scalable/cursor-handle-symbolic.svg")); +} + +cursor-handle.top:dir(ltr), cursor-handle.bottom:dir(rtl) { + -gtk-icon-transform: rotate(90deg); +} + +cursor-handle.bottom:dir(ltr), cursor-handle.top:dir(rtl) { + -gtk-icon-transform: unset; +} + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { + padding-top: 6px; + -gtk-icon-transform: rotate(45deg); +} + +.context-menu { + font: initial; +} + +.keycap { + min-width: 12px; + min-height: 26px; + margin-top: 2px; + padding-bottom: 2px; + padding-left: 8px; + padding-right: 8px; + border: solid 1px rgba(0, 0, 0, 0.12); + border-radius: 7px; + box-shadow: inset 0 -2px rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #3c84f7; +} + +stackswitcher { + min-height: 0; + padding: 3px; + margin: 6px 0; + border-radius: 9px; + background-color: rgba(0, 0, 0, 0.04); + border: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + margin: 0 0; + background-color: transparent; + border-radius: 6px; + padding: 3px 10px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 100px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):focus:not(:hover):not(:checked) { + box-shadow: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: white; + color: rgba(0, 0, 0, 0.87); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +stackswitcher button.text-button { + min-width: 100px; +} + +stackswitcher button.circular, +stackswitcher button.text-button.circular { + min-width: 36px; + min-height: 36px; + padding: 0; +} + +/************* + * App Icons * + *************/ +/********* + * Emoji * + *********/ +popover.emoji-picker { + padding: 0; +} + +popover.emoji-picker entry { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +popover.emoji-picker scrolledwindow { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); +} + +button.emoji-section { + margin: 4px; +} + +button.emoji-section:checked { + color: #3c84f7; +} + +button.emoji-section:not(:last-child) { + margin-right: 0; +} + +popover.emoji-picker .emoji { + min-width: 3em; + min-height: 3em; + padding: 0 8px; +} + +popover.emoji-picker .emoji widget { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; +} + +popover.emoji-picker .emoji widget:hover { + background-color: alpha(currentColor, 0.08); +} + +popover.emoji-completion { + padding: 8px 0; +} + +popover.emoji-completion arrow { + border: none; + background: none; +} + +popover.emoji-completion .emoji-completion-row { + min-height: 28px; + padding: 0 12px; +} + +popover.emoji-completion .emoji:hover { + background-color: alpha(currentColor, 0.08); +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color rgba(0, 0, 0, 0.87); +/* +text color for entries, views and content in general */ +@define-color theme_text_color rgba(0, 0, 0, 0.87); +/* +widget base background color */ +@define-color theme_bg_color #FFFFFF; +/* +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 #3c84f7; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color white; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #FFFFFF; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color rgba(0, 0, 0, 0.38); +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #FAFAFA; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color rgba(0, 0, 0, 0.87); +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color rgba(0, 0, 0, 0.87); +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #FFFFFF; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #FFFFFF; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #3c84f7; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color white; +/* +insensitive color on backdrop windows */ +@define-color unfocused_insensitive_color rgba(0, 0, 0, 0.38); +/* +widgets main borders color */ +@define-color borders rgba(0, 0, 0, 0.12); +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders rgba(0, 0, 0, 0.12); +/* +these are pretty self explicative */ +@define-color warning_color #F4B400; +@define-color error_color #D93025; +@define-color success_color #0F9D58; +/* +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 white; +@define-color wm_unfocused_title rgba(255, 255, 255, 0.7); +@define-color wm_highlight rgba(255, 255, 255, 0.1); +@define-color wm_bg #242424; +@define-color wm_unfocused_bg #2C2C2C; +/* +FIXME this is really an API */ +@define-color content_view_bg #FFFFFF; +@define-color placeholder_text_color #666666; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #FFFFFF; +@define-color budgie_tasklist_indicator_color white; +@define-color budgie_tasklist_indicator_color_active white; +@define-color budgie_tasklist_indicator_color_active_window #999999; +@define-color budgie_tasklist_indicator_color_attention #F4B400; +@define-color STRAWBERRY_100 #FF9262; +@define-color STRAWBERRY_300 #FF793E; +@define-color STRAWBERRY_500 #F15D22; +@define-color STRAWBERRY_700 #CF3B00; +@define-color STRAWBERRY_900 #AC1800; +@define-color ORANGE_100 #FFDB91; +@define-color ORANGE_300 #FFCA40; +@define-color ORANGE_500 #FAA41A; +@define-color ORANGE_700 #DE8800; +@define-color ORANGE_900 #C26C00; +@define-color BANANA_100 #FFFFA8; +@define-color BANANA_300 #FFFA7D; +@define-color BANANA_500 #FFCE51; +@define-color BANANA_700 #D1A023; +@define-color BANANA_900 #A27100; +@define-color LIME_100 #A2F3BE; +@define-color LIME_300 #8ADBA6; +@define-color LIME_500 #73C48F; +@define-color LIME_700 #479863; +@define-color LIME_900 #1C6D38; +@define-color BLUEBERRY_100 #94A6FF; +@define-color BLUEBERRY_300 #6A7CE0; +@define-color BLUEBERRY_500 #3F51B5; +@define-color BLUEBERRY_700 #213397; +@define-color BLUEBERRY_900 #031579; +@define-color GRAPE_100 #D25DE6; +@define-color GRAPE_300 #B84ACB; +@define-color GRAPE_500 #9C27B0; +@define-color GRAPE_700 #830E97; +@define-color GRAPE_900 #6A007E; +@define-color COCOA_100 #9F9792; +@define-color COCOA_300 #7B736E; +@define-color COCOA_500 #574F4A; +@define-color COCOA_700 #463E39; +@define-color COCOA_900 #342C27; +@define-color SILVER_100 #EEE; +@define-color SILVER_300 #CCC; +@define-color SILVER_500 #AAA; +@define-color SILVER_700 #888; +@define-color SILVER_900 #666; +@define-color SLATE_100 #888; +@define-color SLATE_300 #666; +@define-color SLATE_500 #444; +@define-color SLATE_700 #222; +@define-color SLATE_900 #111; +@define-color BLACK_100 #474341; +@define-color BLACK_300 #403C3A; +@define-color BLACK_500 #393634; +@define-color BLACK_700 #33302F; +@define-color BLACK_900 #2B2928; diff --git a/Cutefish/gtk-3.0/thumbnail.png b/Cutefish/gtk-3.0/thumbnail.png new file mode 100644 index 0000000..cce29c2 Binary files /dev/null and b/Cutefish/gtk-3.0/thumbnail.png differ diff --git a/Cutefish/gtk-4.0/assets/scalable/checkbox-checked-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/checkbox-checked-symbolic.svg new file mode 100644 index 0000000..7b89e88 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/checkbox-checked-symbolic@2.svg b/Cutefish/gtk-4.0/assets/scalable/checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..17e3c4a --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/checkbox-mixed-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..b4808a6 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/checkbox-mixed-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/checkbox-mixed-symbolic@2.svg b/Cutefish/gtk-4.0/assets/scalable/checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..3ea0541 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/checkbox-mixed-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/cursor-handle-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/cursor-handle-symbolic.svg new file mode 100644 index 0000000..e2a252b --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/cursor-handle-symbolic.svg @@ -0,0 +1,3 @@ + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/radio-checked-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/radio-checked-symbolic.svg new file mode 100644 index 0000000..67beb46 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/radio-checked-symbolic.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/radio-checked-symbolic@2.svg b/Cutefish/gtk-4.0/assets/scalable/radio-checked-symbolic@2.svg new file mode 100644 index 0000000..bf51d9e --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/radio-checked-symbolic@2.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/radio-mixed-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/radio-mixed-symbolic.svg new file mode 120000 index 0000000..79b7355 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/radio-mixed-symbolic.svg @@ -0,0 +1 @@ +checkbox-mixed-symbolic.svg \ No newline at end of file diff --git a/Cutefish/gtk-4.0/assets/scalable/radio-mixed-symbolic@2.svg b/Cutefish/gtk-4.0/assets/scalable/radio-mixed-symbolic@2.svg new file mode 120000 index 0000000..b68859d --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/radio-mixed-symbolic@2.svg @@ -0,0 +1 @@ +checkbox-mixed-symbolic@2.svg \ No newline at end of file diff --git a/Cutefish/gtk-4.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..de0d789 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/scale-horz-marks-after-slider-symbolic.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..7f0235f --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/scale-horz-marks-before-slider-symbolic.svg @@ -0,0 +1,47 @@ + + + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/scale-slider-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/scale-slider-symbolic.svg new file mode 100644 index 0000000..4b00bc1 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/scale-slider-symbolic.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..37d9c04 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/scale-vert-marks-after-slider-symbolic.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..1bc5cb6 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/scale-vert-marks-before-slider-symbolic.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic.svg new file mode 100644 index 0000000..4759e32 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic@2.svg b/Cutefish/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..a44f5c9 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/small-checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..d621934 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic.svg @@ -0,0 +1,42 @@ + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg b/Cutefish/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..91c7006 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/small-checkbox-mixed-symbolic@2.svg @@ -0,0 +1,43 @@ + + + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/small-radio-checked-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/small-radio-checked-symbolic.svg new file mode 100644 index 0000000..f2c9cf9 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/small-radio-checked-symbolic.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/small-radio-checked-symbolic@2.svg b/Cutefish/gtk-4.0/assets/scalable/small-radio-checked-symbolic@2.svg new file mode 100644 index 0000000..a06db4c --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/small-radio-checked-symbolic@2.svg @@ -0,0 +1,39 @@ + + + + + + diff --git a/Cutefish/gtk-4.0/assets/scalable/small-radio-mixed-symbolic.svg b/Cutefish/gtk-4.0/assets/scalable/small-radio-mixed-symbolic.svg new file mode 120000 index 0000000..86dfcec --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/small-radio-mixed-symbolic.svg @@ -0,0 +1 @@ +small-checkbox-mixed-symbolic.svg \ No newline at end of file diff --git a/Cutefish/gtk-4.0/assets/scalable/small-radio-mixed-symbolic@2.svg b/Cutefish/gtk-4.0/assets/scalable/small-radio-mixed-symbolic@2.svg new file mode 120000 index 0000000..bafb558 --- /dev/null +++ b/Cutefish/gtk-4.0/assets/scalable/small-radio-mixed-symbolic@2.svg @@ -0,0 +1 @@ +small-checkbox-mixed-symbolic@2.svg \ No newline at end of file diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-dark.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-dark.png new file mode 100644 index 0000000..00d08bd Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-dark.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-dark@2.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-dark@2.png new file mode 100644 index 0000000..25abeb6 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-dark@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark.png new file mode 100644 index 0000000..bb5607f Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png new file mode 100644 index 0000000..d6065db Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-disabled-dark@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-disabled.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-disabled.png new file mode 100644 index 0000000..5861d66 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-disabled.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-disabled@2.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-disabled@2.png new file mode 100644 index 0000000..52907bf Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider-disabled@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider.png new file mode 100644 index 0000000..29f1fca Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider@2.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider@2.png new file mode 100644 index 0000000..47b16ec Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-after-slider@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-dark.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-dark.png new file mode 100644 index 0000000..22b3bc9 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-dark.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-dark@2.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-dark@2.png new file mode 100644 index 0000000..818c7ed Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-dark@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark.png new file mode 100644 index 0000000..e5f083e Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png new file mode 100644 index 0000000..2e8b6c7 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-disabled-dark@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-disabled.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-disabled.png new file mode 100644 index 0000000..239ca9a Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-disabled.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-disabled@2.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-disabled@2.png new file mode 100644 index 0000000..adc1af7 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider-disabled@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider.png new file mode 100644 index 0000000..3a4aa7f Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider@2.png b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider@2.png new file mode 100644 index 0000000..9dd390f Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-horz-marks-before-slider@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-dark.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-dark.png new file mode 100644 index 0000000..3231d1b Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-dark.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-dark@2.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-dark@2.png new file mode 100644 index 0000000..78cff7e Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-dark@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark.png new file mode 100644 index 0000000..1bd736e Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png new file mode 100644 index 0000000..25f37ab Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-disabled-dark@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-disabled.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-disabled.png new file mode 100644 index 0000000..8e9a3e2 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-disabled.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-disabled@2.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-disabled@2.png new file mode 100644 index 0000000..47f06af Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider-disabled@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider.png new file mode 100644 index 0000000..fedff3d Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider@2.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider@2.png new file mode 100644 index 0000000..6215f7c Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-after-slider@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-dark.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-dark.png new file mode 100644 index 0000000..5679039 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-dark.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-dark@2.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-dark@2.png new file mode 100644 index 0000000..03926a9 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-dark@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark.png new file mode 100644 index 0000000..61283d7 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png new file mode 100644 index 0000000..690689c Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-disabled-dark@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-disabled.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-disabled.png new file mode 100644 index 0000000..040f9f6 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-disabled.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-disabled@2.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-disabled@2.png new file mode 100644 index 0000000..593ef55 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider-disabled@2.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider.png new file mode 100644 index 0000000..57825fd Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider.png differ diff --git a/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider@2.png b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider@2.png new file mode 100644 index 0000000..b828dae Binary files /dev/null and b/Cutefish/gtk-4.0/assets/scale-vert-marks-before-slider@2.png differ diff --git a/Cutefish/gtk-4.0/assets/selectionmode-checkbox-checked-dark.png b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-checked-dark.png new file mode 100644 index 0000000..8dbedf6 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-checked-dark.png differ diff --git a/Cutefish/gtk-4.0/assets/selectionmode-checkbox-checked-dark@2.png b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-checked-dark@2.png new file mode 100644 index 0000000..d4b23d5 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-checked-dark@2.png differ diff --git a/Cutefish/gtk-4.0/assets/selectionmode-checkbox-checked.png b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-checked.png new file mode 100644 index 0000000..a223d1f Binary files /dev/null and b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-checked.png differ diff --git a/Cutefish/gtk-4.0/assets/selectionmode-checkbox-checked@2.png b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-checked@2.png new file mode 100644 index 0000000..a7723f1 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-checked@2.png differ diff --git a/Cutefish/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark.png b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark.png new file mode 100644 index 0000000..f6b914e Binary files /dev/null and b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark.png differ diff --git a/Cutefish/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark@2.png b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark@2.png new file mode 100644 index 0000000..29ecf2b Binary files /dev/null and b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-unchecked-dark@2.png differ diff --git a/Cutefish/gtk-4.0/assets/selectionmode-checkbox-unchecked.png b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-unchecked.png new file mode 100644 index 0000000..40ff92e Binary files /dev/null and b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-unchecked.png differ diff --git a/Cutefish/gtk-4.0/assets/selectionmode-checkbox-unchecked@2.png b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-unchecked@2.png new file mode 100644 index 0000000..8e87ea7 Binary files /dev/null and b/Cutefish/gtk-4.0/assets/selectionmode-checkbox-unchecked@2.png differ diff --git a/Cutefish/gtk-4.0/gtk-dark.css b/Cutefish/gtk-4.0/gtk-dark.css new file mode 100644 index 0000000..89cfeca --- /dev/null +++ b/Cutefish/gtk-4.0/gtk-dark.css @@ -0,0 +1,4645 @@ +/*************** + * Base States * + ***************/ +.background { + background-color: #2C2C2C; + color: white; +} + +dnd { + color: white; +} + +.normal-icons { + -gtk-icon-size: 16px; +} + +.large-icons { + -gtk-icon-size: 32px; +} + +spinner:disabled, +arrow:disabled, +scrollbar:disabled, +check:disabled, +radio:disabled, +treeview.expander:disabled { + -gtk-icon-filter: opacity(0.5); +} + +iconview, .view { + color: white; +} + +iconview:disabled, .view:disabled { + color: rgba(255, 255, 255, 0.5); +} + +iconview:selected, .view:selected { + color: white; +} + +textview text { + background-color: #2C2C2C; +} + +textview border { + background-color: #242424; + color: rgba(255, 255, 255, 0.7); +} + +iconview:hover, iconview:selected { + border-radius: 3px; +} + +rubberband, .content-view rubberband, .content-view columnview.view > rubberband, +.content-view treeview.view > rubberband, .content-view .rubberband, columnview.view > rubberband, .content-view columnview.view > .rubberband, +treeview.view > rubberband, +.content-view treeview.view > .rubberband, gridview > rubberband, flowbox > rubberband { + border: 1px solid #5b9bf8; + background-color: rgba(91, 155, 248, 0.3); +} + +flowbox > flowboxchild { + padding: 4px; + border-radius: 6px; +} + +.content-view .tile:selected { + background-color: transparent; +} + +gridview > child { + padding: 3px; +} + +gridview > child:selected { + outline-color: alpha(currentColor, 0.06); +} + +gridview > child box { + border-spacing: 8px; + margin: 12px; +} + +coverflow cover { + color: white; + background-color: #2C2C2C; + border: 1px solid black; +} + +label.separator { + color: rgba(255, 255, 255, 0.7); +} + +label:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; +} + +label.osd { + border-radius: 6px; + background-color: rgba(25, 25, 25, 0.9); + color: white; +} + +.dim-label { + color: rgba(255, 255, 255, 0.7); +} + +window.assistant .sidebar { + padding: 4px 0; +} + +window.assistant .sidebar label { + min-height: 36px; + padding: 0 12px; + color: rgba(255, 255, 255, 0.5); + font-weight: 500; +} + +window.assistant .sidebar label.highlight { + color: white; +} + +.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: white; + background-color: #2C2C2C; + background-clip: padding-box; + border-radius: 6px; + border: none; +} + +.osd { + padding: 6px; + margin: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12); +} + +.osd.circular { + border-radius: 9999px; +} + +/********************* + * 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; +} + +.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 { + font-weight: 400; + font-size: 9pt; +} + +.caption-heading { + font-weight: 700; + font-size: 9pt; +} + +/**************** + * Text Entries * + ****************/ +spinbutton.vertical, spinbutton:not(.vertical), +entry { + min-height: 36px; + padding: 0 8px; + border-spacing: 6px; + border-radius: 6px; + caret-color: currentColor; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.vertical:focus-within, spinbutton:focus-within:not(.vertical), +entry:focus-within { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +spinbutton.vertical:drop(active), spinbutton:drop(active):not(.vertical), +entry:drop(active) { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +spinbutton.vertical:disabled, spinbutton:disabled:not(.vertical), +entry:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.flat.vertical, spinbutton.flat:not(.vertical), +entry.flat { + min-height: 0; + padding: 2px; + border-radius: 0; + background-color: transparent; +} + +spinbutton.vertical image, spinbutton:not(.vertical) image, +entry image { + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical image:hover, spinbutton:not(.vertical) image:hover, spinbutton.vertical image:active, spinbutton:not(.vertical) image:active, +entry image:hover, +entry image:active { + color: white; +} + +spinbutton.vertical image:disabled, spinbutton:not(.vertical) image:disabled, +entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical image.left, spinbutton:not(.vertical) image.left, +entry image.left { + margin-left: 2px; + margin-right: 6px; +} + +spinbutton.vertical image.right, spinbutton:not(.vertical) image.right, +entry image.right { + margin-left: 6px; + margin-right: 2px; +} + +spinbutton.vertical undershoot.left, spinbutton:not(.vertical) undershoot.left, +entry undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.vertical undershoot.right, spinbutton:not(.vertical) undershoot.right, +entry undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.error.vertical, spinbutton.error:not(.vertical), +entry.error { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.error.vertical:focus-within, spinbutton.error:focus-within:not(.vertical), +entry.error:focus-within { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #F28B82; +} + +spinbutton.error.vertical:disabled, spinbutton.error:disabled:not(.vertical), +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.warning.vertical, spinbutton.warning:not(.vertical), +entry.warning { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +spinbutton.warning.vertical:focus-within, spinbutton.warning:focus-within:not(.vertical), +entry.warning:focus-within { + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px #FDD633; +} + +spinbutton.warning.vertical:disabled, spinbutton.warning:disabled:not(.vertical), +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical > progress, spinbutton:not(.vertical) > progress, +spinbutton.vertical progress > trough > progress, +spinbutton:not(.vertical) progress > trough > progress, +entry > progress, +entry progress > trough > progress { + margin: 2px -8px; + border-bottom: 2px solid #5b9bf8; + background-color: transparent; +} + +treeview entry.flat, treeview entry { + background-color: #2C2C2C; +} + +treeview entry.flat, treeview entry.flat:focus-within, treeview entry, treeview entry:focus-within { + border-image: none; + box-shadow: none; +} + +.entry-tag { + margin: 2px; + border-radius: 9999px; + box-shadow: none; + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +.entry-tag:hover { + background-image: image(alpha(currentColor, 0.08)); +} + +:dir(ltr) .entry-tag { + margin-left: 4px; + margin-right: 0; + padding-left: 12px; + padding-right: 8px; +} + +:dir(rtl) .entry-tag { + margin-left: 0; + margin-right: 4px; + padding-left: 8px; + padding-right: 12px; +} + +.entry-tag.button { + box-shadow: none; + background-color: transparent; +} + +.entry-tag.button:not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +editablelabel > stack > text { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: radial-gradient(farthest-side, #5b9bf8 0%, rgba(91, 155, 248, 0) 0%); + } + to { + background-image: radial-gradient(farthest-side, #5b9bf8 95%, rgba(91, 155, 248, 0)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button, popover.background.touch-selection button, popover.background.magnifier button, headerbar.selection-mode button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +infobar.warning > revealer > box button:focus, popover.background.touch-selection button:focus, popover.background.magnifier button:focus, headerbar.selection-mode button:focus:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:hover, popover.background.touch-selection button:hover, popover.background.magnifier button:hover, headerbar.selection-mode button:hover:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:active, popover.background.touch-selection button:active, popover.background.magnifier button:active, headerbar.selection-mode button:active:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:checked, popover.background.touch-selection button:checked, popover.background.magnifier button:checked, headerbar.selection-mode button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +infobar.warning > revealer > box button:disabled, popover.background.touch-selection button:disabled, popover.background.magnifier button:disabled, headerbar.selection-mode button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +infobar.warning > revealer > box button:checked:disabled, popover.background.touch-selection button:checked:disabled, popover.background.magnifier button:checked:disabled, headerbar.selection-mode button:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:not(.suggested-action):not(.destructive-action), button { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +actionbar > revealer > box .linked > button:focus:not(.suggested-action):not(.destructive-action), button:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +actionbar > revealer > box .linked > button:hover:not(.suggested-action):not(.destructive-action), button:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +actionbar > revealer > box .linked > button:active:not(.suggested-action):not(.destructive-action), button:active { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + +actionbar > revealer > box .linked > button:disabled:not(.suggested-action):not(.destructive-action), button:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:checked:not(.suggested-action):not(.destructive-action), button:checked { + background-color: #5b9bf8; + color: white; +} + +actionbar > revealer > box .linked > button:checked:hover:not(.suggested-action):not(.destructive-action), button:checked:hover { + box-shadow: inset 0 0 0 9999px transparent; +} + +actionbar > revealer > box .linked > button:checked:disabled:not(.suggested-action):not(.destructive-action), button:checked:disabled { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.1); + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button { + min-height: 24px; + min-width: 16px; + padding: 6px 10px; + border-radius: 6px; + font-weight: 500; +} + +button:drop(active) { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placessidebar .navigation-sidebar > row button.sidebar-button, calendar > header > button, columnview.view > header > button button.circular, +treeview.view > header > button button.circular, row.activatable button.circular, scrollbar button, notebook > header > tabs > arrow, spinbutton.vertical > button, spinbutton:not(.vertical) > button, modelbutton.flat, filechooser #pathbarbox > stack > box > button, window.dialog.message .dialog-action-area > button, .app-notification button, actionbar > revealer > box button:not(.suggested-action):not(.destructive-action), popover.background.menu button, +popover.background button.model, headerbar button:not(.suggested-action):not(.destructive-action), .toolbar button, +toolbar button, dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child), button.flat { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: transparent; + color: rgba(255, 255, 255, 0.7); +} + +placessidebar .navigation-sidebar > row button.sidebar-button:focus, calendar > header > button:focus, columnview.view > header > button button.circular:focus, +treeview.view > header > button button.circular:focus, row.activatable button.circular:focus, scrollbar button:focus, notebook > header > tabs > arrow:focus, spinbutton.vertical > button:focus, spinbutton:not(.vertical) > button:focus, modelbutton.flat:focus, filechooser #pathbarbox > stack > box > button:focus, window.dialog.message .dialog-action-area > button:focus, .app-notification button:focus, actionbar > revealer > box button:focus:not(.suggested-action):not(.destructive-action), popover.background.menu button:focus, +popover.background button.model:focus, headerbar button:focus:not(.suggested-action):not(.destructive-action), .toolbar button:focus, +toolbar button:focus, dropdown > .linked:not(.vertical) > button:focus:not(:only-child), +combobox > .linked:not(.vertical) > button:focus:not(:only-child), button.flat:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: white; +} + +placessidebar .navigation-sidebar > row button.sidebar-button:hover, calendar > header > button:hover, columnview.view > header > button button.circular:hover, +treeview.view > header > button button.circular:hover, row.activatable button.circular:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, spinbutton.vertical > button:hover, spinbutton:not(.vertical) > button:hover, modelbutton.flat:hover, filechooser #pathbarbox > stack > box > button:hover, window.dialog.message .dialog-action-area > button:hover, .app-notification button:hover, actionbar > revealer > box button:hover:not(.suggested-action):not(.destructive-action), popover.background.menu button:hover, +popover.background button.model:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), .toolbar button:hover, +toolbar button:hover, dropdown > .linked:not(.vertical) > button:hover:not(:only-child), +combobox > .linked:not(.vertical) > button:hover:not(:only-child), button.flat:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: white; +} + +placessidebar .navigation-sidebar > row button.sidebar-button:active, calendar > header > button:active, columnview.view > header > button button.circular:active, +treeview.view > header > button button.circular:active, row.activatable button.circular:active, scrollbar button:active, notebook > header > tabs > arrow:active, spinbutton.vertical > button:active, spinbutton:not(.vertical) > button:active, modelbutton.flat:active, filechooser #pathbarbox > stack > box > button:active, window.dialog.message .dialog-action-area > button:active, .app-notification button:active, actionbar > revealer > box button:active:not(.suggested-action):not(.destructive-action), popover.background.menu button:active, +popover.background button.model:active, headerbar button:active:not(.suggested-action):not(.destructive-action), .toolbar button:active, +toolbar button:active, dropdown > .linked:not(.vertical) > button:active:not(:only-child), +combobox > .linked:not(.vertical) > button:active:not(:only-child), button.flat:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); + color: white; +} + +placessidebar .navigation-sidebar > row button.sidebar-button:disabled, calendar > header > button:disabled, columnview.view > header > button button.circular:disabled, +treeview.view > header > button button.circular:disabled, row.activatable button.circular:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, spinbutton.vertical > button:disabled, spinbutton:not(.vertical) > button:disabled, modelbutton.flat:disabled, filechooser #pathbarbox > stack > box > button:disabled, window.dialog.message .dialog-action-area > button:disabled, .app-notification button:disabled, actionbar > revealer > box button:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:disabled, +popover.background button.model:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:disabled, +toolbar button:disabled, dropdown > .linked:not(.vertical) > button:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:disabled:not(:only-child), button.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +filechooser #pathbarbox > stack > box > button:checked, window.dialog.message .dialog-action-area > button:checked, .app-notification button:checked, actionbar > revealer > box button:checked:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked, +popover.background button.model:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), .toolbar button:checked, +toolbar button:checked, dropdown > .linked:not(.vertical) > button:checked:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:not(:only-child), button.flat:checked, button.flat:checked:hover { + background-color: alpha(currentColor, 0.1); + color: white; +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, window.dialog.message .dialog-action-area > button:checked:disabled, .app-notification button:checked:disabled, actionbar > revealer > box button:checked:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked:disabled, +popover.background button.model:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:checked:disabled, +toolbar button:checked:disabled, dropdown > .linked:not(.vertical) > button:checked:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(255, 255, 255, 0.5); +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.text-button.flat { + min-width: 48px; + padding-left: 8px; + padding-right: 8px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child) { + margin: 0 4px; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + border-radius: 6px; +} + +.linked:not(.vertical) > button.flat:focus, .linked.vertical > button.flat:focus { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +button.osd { + padding: 12px 16px; +} + +button.osd.image-button { + padding: 12px; +} + +button.osd:disabled { + opacity: 0; +} + +button.suggested-action { + background-color: #5b9bf8; + color: white; + box-shadow: none; +} + +button.suggested-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(91, 155, 248, 0.2), 0 4px 3px 0 rgba(91, 155, 248, 0.14), 0 1px 6px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:checked { + background-color: #8cb9fa; +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(91, 155, 248, 0.3), 0 2px 3px -1px rgba(91, 155, 248, 0.24), 0 2px 5px 0 rgba(91, 155, 248, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(91, 155, 248, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #5b9bf8; +} + +button.suggested-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.suggested-action.flat:checked { + background-color: rgba(91, 155, 248, 0.3); +} + +button.destructive-action { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); + box-shadow: none; +} + +button.destructive-action:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(242, 139, 130, 0.2), 0 4px 3px 0 rgba(242, 139, 130, 0.14), 0 1px 6px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:checked { + background-color: rgba(182, 105, 98, 0.961); +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(242, 139, 130, 0.3), 0 2px 3px -1px rgba(242, 139, 130, 0.24), 0 2px 5px 0 rgba(242, 139, 130, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(242, 139, 130, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #F28B82; +} + +button.destructive-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(255, 255, 255, 0.3); +} + +button.destructive-action.flat:checked { + background-color: rgba(242, 139, 130, 0.3); +} + +stackswitcher > button > label { + margin: 0 -6px; + padding: 0 6px; +} + +stackswitcher > button > image { + margin: -3px -6px; + padding: 3px 6px; +} + +stackswitcher > button.needs-attention:checked > label, +stackswitcher > button.needs-attention:checked > image { + animation: none; + background-image: none; +} + +button.font > box, button.file > box { + border-spacing: 6px; +} + +button.font > box > box > label, button.file > box > box > label { + font-weight: bold; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action), filechooser #pathbarbox > stack > box > button, button.close, button.circular { + border-radius: 9999px; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, button.close label, button.circular label { + padding: 0; +} + +placessidebar .navigation-sidebar > row button.sidebar-button, notebook > header tab button.flat, popover.menu box.circular-buttons button.circular.image-button.model, spinbutton.vertical > button, spinbutton:not(.vertical) > button { + min-height: 24px; + min-width: 24px; + padding: 0; + border-radius: 9999px; +} + +stacksidebar row.needs-attention > label, stackswitcher > button.needs-attention > label, +stackswitcher > button.needs-attention > image { + animation: needs-attention 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-repeat: no-repeat; + background-position: right 3px; + background-size: 6px 6px; +} + +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; +} + +.linked:not(.vertical) > spinbutton.vertical, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry, .linked:not(.vertical) > button, .linked:not(.vertical) > button.image-button { + border-radius: 0; +} + +.linked:not(.vertical) > spinbutton.vertical:first-child, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child, .linked:not(.vertical) > button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.linked:not(.vertical) > spinbutton.vertical:last-child, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child, .linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > spinbutton.vertical:only-child, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child, .linked:not(.vertical) > button:only-child { + border-radius: 6px; +} + +.linked.vertical > spinbutton.vertical, .linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry, .linked.vertical > button, .linked.vertical > button.image-button { + border-radius: 0; +} + +.linked.vertical > spinbutton.vertical:first-child, .linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child, .linked.vertical > button:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > spinbutton.vertical:last-child, .linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child, .linked.vertical > button:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > spinbutton.vertical:only-child, .linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child, .linked.vertical > button:only-child { + border-radius: 6px; +} + +/* menu buttons */ +modelbutton.flat { + min-height: 28px; + padding: 0 9px; + border-radius: 6px; + color: white; +} + +modelbutton.flat arrow.left { + -gtk-icon-source: -gtk-icontheme("go-previous-symbolic"); +} + +modelbutton.flat arrow.right { + -gtk-icon-source: -gtk-icontheme("go-next-symbolic"); +} + +button.color { + min-height: 24px; + min-width: 24px; + padding: 6px; +} + + +list > row button.image-button:not(.flat) { + background-color: transparent; + box-shadow: none; + border: none; +} + + +list > row button.image-button:not(.flat):hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + + +list > row button.image-button:not(.flat):active, +list > row button.image-button:not(.flat):checked { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + + +list > row button.image-button:not(.flat).suggested-action { + background-color: #5b9bf8; + color: white; +} + + +list > row button.image-button:not(.flat).destructive-action { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); +} + +/********* + * Links * + *********/ +link { + color: #2196F3; +} + +link:visited { + color: #CE93D8; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #2196F3; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #CE93D8; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton:not(.vertical) { + padding: 0; + border-spacing: 0; +} + +spinbutton:not(.vertical) > text { + min-width: 32px; + margin: 0; + padding-left: 12px; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +spinbutton:not(.vertical) > button { + border: solid 6px transparent; +} + +spinbutton:not(.vertical) > button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton:not(.vertical) > button.up:dir(ltr), spinbutton:not(.vertical) > button.down:dir(rtl) { + margin-left: -3px; +} + +spinbutton:not(.vertical) > button.up:dir(rtl), spinbutton:not(.vertical) > button.down:dir(ltr) { + margin-right: -3px; +} + +spinbutton.vertical { + padding: 0; +} + +spinbutton.vertical:disabled { + color: rgba(255, 255, 255, 0.5); +} + +spinbutton.vertical > text { + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical > button { + padding: 0; + border: solid 6px transparent; +} + +spinbutton.vertical > button:focus:not(:hover):not(:active) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(255, 255, 255, 0.7); +} + +spinbutton.vertical > button.up { + margin: 0 3px; +} + +spinbutton.vertical > button.down { + margin: 0 3px; +} + +treeview spinbutton:not(.vertical), row spinbutton:not(.vertical) { + min-height: 0; + border-style: none; + border-radius: 0; +} + +treeview spinbutton:not(.vertical) > text, row 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 button.combo cellview:dir(ltr), +combobox button.combo cellview:dir(ltr) { + margin-left: -2px; +} + +dropdown button.combo cellview:dir(rtl), +combobox button.combo cellview:dir(rtl) { + margin-right: -2px; +} + +dropdown popover, +combobox popover { + margin-top: 4px; + padding: 0; +} + +dropdown popover listview, +combobox popover listview { + margin: 6px 0; +} + +dropdown popover listview > row, +combobox popover listview > row { + padding: 6px; +} + +dropdown popover listview > row:selected, +combobox popover listview > row:selected { + color: white; + background-color: alpha(currentColor, 0.06); +} + +dropdown popover .dropdown-searchbar, +combobox popover .dropdown-searchbar { + padding: 6px; +} + +dropdown.linked button:nth-child(2):dir(ltr), +combobox.linked button:nth-child(2):dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +dropdown.linked button:nth-child(2):dir(rtl), +combobox.linked button:nth-child(2):dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child), +combobox > .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child):first-child, +combobox > .linked:not(.vertical) > entry:not(:only-child):first-child { + margin-right: -36px; + padding-right: 36px; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child):last-child, +combobox > .linked:not(.vertical) > entry:not(:only-child):last-child { + margin-left: -36px; + padding-left: 36px; +} + +dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child) { + min-height: 16px; + min-width: 16px; + margin: 6px; + padding: 4px; + border-radius: 6px; +} + +.linked:not(.vertical) > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.linked:not(.vertical) > combobox:not(:last-child) > box > button.combo { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.linked.vertical > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.linked.vertical > combobox:not(:last-child) > box > button.combo { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +button.combo:only-child { + border-radius: 6px; + font-weight: normal; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: white; +} + +button.combo:only-child:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: white; +} + +button.combo:only-child:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: white; +} + +button.combo:only-child:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); + color: white; +} + +button.combo:only-child:checked { + background-color: alpha(currentColor, 0.1); + color: white; +} + +button.combo:only-child:disabled { + box-shadow: none; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +/************ + * Toolbars * + ************/ +.toolbar, +toolbar { + padding: 3px 6px; + background-color: #2C2C2C; + border-spacing: 6px; +} + +.osd .toolbar, .osd toolbar { + background-color: transparent; +} + +.app-notification, .toolbar.osd, +toolbar.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +.app-notification:backdrop, .toolbar.osd:backdrop, +toolbar.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +.left.app-notification, .right.app-notification, .top.app-notification, .bottom.app-notification, .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; +} + +.bottom.app-notification, .toolbar.osd.bottom, +toolbar.osd.bottom { + box-shadow: none; + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.4)); +} + +.toolbar.horizontal > separator, +toolbar.horizontal > separator { + margin: 2px; +} + +.toolbar.vertical > separator, +toolbar.vertical > separator { + margin: 2px; +} + +.toolbar:not(.inline-toolbar):not(.osd) scale, +.toolbar:not(.inline-toolbar):not(.osd) entry, +.toolbar:not(.inline-toolbar):not(.osd) spinbutton, +.toolbar:not(.inline-toolbar):not(.osd) button, +toolbar:not(.inline-toolbar):not(.osd) scale, +toolbar:not(.inline-toolbar):not(.osd) entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton, +toolbar:not(.inline-toolbar):not(.osd) button { + margin: 2px; +} + +.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child) { + margin-left: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child) { + margin-right: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +.toolbar:not(.inline-toolbar):not(.osd) spinbutton button, +toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton button { + margin: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) switch, +toolbar:not(.inline-toolbar):not(.osd) switch { + margin: 8px 2px; +} + +.toolbar button { + margin: 1px; + border-radius: 3px; +} + +searchbar > revealer > box { + padding: 6px; + border-spacing: 6px; + border-style: solid; + border-width: 0 0 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + border: none; +} + +headerbar .linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + border-radius: 6px; +} + +headerbar button:focus:not(.suggested-action):not(.destructive-action), headerbar button:hover:not(.suggested-action):not(.destructive-action), headerbar button:active:not(.suggested-action):not(.destructive-action), headerbar button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action) { + background-color: transparent; + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:focus:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:hover:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:backdrop:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar entry { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +headerbar entry:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +headerbar entry image { + color: rgba(255, 255, 255, 0.7); +} + +headerbar entry image:hover, headerbar entry image:active { + color: white; +} + +headerbar entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); + background-color: #242424; + color: white; + min-height: 48px; + padding: 0 6px; +} + +headerbar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +headerbar:backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +headerbar .title { + padding: 0 12px; + font-weight: bold; +} + +headerbar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +headerbar .subtitle, +headerbar .dim-label { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +headerbar .subtitle:backdrop, +headerbar .dim-label:backdrop { + color: rgba(255, 255, 255, 0.5); +} + +headerbar .titlebar { + background-color: transparent; + box-shadow: none; +} + +headerbar headerbar + separator { + background-color: rgba(255, 255, 255, 0.12); +} + +box.vertical headerbar { + background-color: #242424; +} + +headerbar > windowhandle > box { + padding: 0 3px; +} + +headerbar > windowhandle > box, +headerbar > windowhandle > box > box.start, +headerbar > windowhandle > box > box.end { + border-spacing: 6px; +} + +headerbar entry, +headerbar spinbutton, +headerbar button, +headerbar stackswitcher { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar menubutton.popup { + margin-top: 0; + margin-bottom: 0; +} + +headerbar separator:not(.sidebar) { + margin-top: 12px; + margin-bottom: 12px; + background-color: rgba(255, 255, 255, 0.12); +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar spinbutton button { + margin-top: 0; + margin-bottom: 0; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +headerbar button.suggested-action:disabled, headerbar button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +headerbar.selection-mode { + transition: background-color 0.1ms 0ms, color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #5b9bf8; + color: white; +} + +headerbar.selection-mode:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +headerbar.selection-mode .subtitle:link { + color: white; +} + +headerbar.selection-mode .selection-menu { + padding-left: 16px; + padding-right: 16px; +} + +headerbar.selection-mode .selection-menu .arrow { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +headerbar .selection-mode { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #5b9bf8; +} + +headerbar.default-decoration { + min-height: 24px; + padding: 6px; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); +} + +headerbar.default-decoration windowcontrols button, +headerbar.default-decoration windowcontrols menubutton { + min-width: 16px; + min-height: 16px; + margin: 0; + padding: 0; +} + +headerbar.default-decoration windowcontrols menubutton button { + min-height: 20px; + min-width: 20px; + margin: 0; + padding: 4px; +} + +.solid-csd headerbar:dir(rtl), .solid-csd headerbar:dir(ltr) { + border-radius: 0; + box-shadow: none; +} + +window.devel headerbar.titlebar { + background: #242424 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, linear-gradient(to right, transparent 65%, rgba(91, 155, 248, 0.1)), linear-gradient(to top, #2c2c2c 3px, #313131); +} + +window.devel headerbar.titlebar:backdrop { + background: #242424 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, image(#242424); + /* background-color would flash */ +} + +viewswitcher { + margin: 0; +} + +viewswitcher.wide { + border-spacing: 3px; +} + +viewswitcher.narrow button.toggle { + border-radius: 0; + margin: 0; +} + +viewswitcher.narrow button.toggle:focus-within, viewswitcher.narrow button.toggle:focus { + box-shadow: none; +} + +viewswitcher button.toggle { + font-weight: bold; + padding: 0; +} + +viewswitcher button.toggle > stack > box.narrow { + font-size: 0.75rem; + padding-top: 6px; + padding-bottom: 4px; + border-spacing: 4px; +} + +viewswitcher button.toggle > stack > box.narrow > stack > label { + padding-left: 6px; + padding-right: 6px; +} + +viewswitcher button.toggle > stack > box.wide { + padding: 2px 12px; + border-spacing: 6px; +} + +viewswitcherbar actionbar > revealer > box { + padding: 0; +} + +viewswitchertitle viewswitcher { + margin-left: 12px; + margin-right: 12px; +} + +indicatorbin > indicator, indicatorbin > mask { + min-width: 6px; + min-height: 6px; + border-radius: 9999px; +} + +indicatorbin > indicator { + margin: 1px; + background-color: alpha(currentColor, 0.4); +} + +indicatorbin > indicator > label { + font-size: 0.6rem; + font-weight: bold; + padding: 1px 4px; + color: white; +} + +indicatorbin > mask { + padding: 1px; + background: black; +} + +indicatorbin.needs-attention > indicator { + background-color: #5b9bf8; +} + +indicatorbin.needs-attention > indicator > label { + color: white; +} + +/************ + * Pathbars * + ************/ + +pathbar > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 6px; + background-color: alpha(currentColor, 0.08); +} + + +pathbar > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +pathbar > button:checked { + background-color: alpha(currentColor, 0.16); + color: white; +} + + +pathbar > button label:not(:only-child):first-child { + margin-left: 0; +} + + +pathbar > button label:not(:only-child):last-child { + margin-right: 0; +} + + +pathbar > button.text-button { + min-width: 0; +} + + +pathbar > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +/************** + * Tree Views * + **************/ +columnview.view, +treeview.view { + border-left-color: #4b4b4b; + border-top-color: #4b4b4b; +} + +columnview.view:hover, columnview.view:selected, +treeview.view:hover, +treeview.view:selected { + border-radius: 0; + box-shadow: none; +} + +columnview.view.separator, +treeview.view.separator { + min-height: 5px; + color: rgba(255, 255, 255, 0.12); +} + +columnview.view:drop(active), +treeview.view:drop(active) { + box-shadow: none; +} + +columnview.view:drop(active).after, +treeview.view:drop(active).after { + border-top-style: none; +} + +columnview.view:drop(active).before, +treeview.view:drop(active).before { + border-bottom-style: none; +} + +columnview.view > dndtarget:drop(active), +treeview.view > dndtarget:drop(active) { + border-style: solid none; + border-width: 1px; + border-color: alpha(currentColor, 0.06); +} + +columnview.view > dndtarget:drop(active).after, +treeview.view > dndtarget:drop(active).after { + border-top-style: none; +} + +columnview.view > dndtarget:drop(active).before, +treeview.view > dndtarget:drop(active).before { + border-bottom-style: none; +} + +columnview.view.expander, +treeview.view.expander { + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); + color: rgba(255, 255, 255, 0.7); +} + +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: white; +} + +columnview.view.expander:selected, +treeview.view.expander:selected { + color: white; +} + +columnview.view.expander:selected:hover, +treeview.view.expander:selected:hover { + color: white; +} + +columnview.view.expander:checked, +treeview.view.expander:checked { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +columnview.view.expander:disabled, +treeview.view.expander:disabled { + color: rgba(255, 255, 255, 0.3); +} + +columnview.view.progressbar, +treeview.view.progressbar { + border-bottom: 6px solid #5b9bf8; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +columnview.view.progressbar:selected:hover, +treeview.view.progressbar:selected:hover { + box-shadow: none; +} + +columnview.view.trough, +treeview.view.trough { + border-bottom: 6px solid rgba(255, 255, 255, 0.12); + box-shadow: none; + background-color: transparent; + background-image: none; +} + +columnview.view.trough:selected:hover, +treeview.view.trough:selected:hover { + box-shadow: none; +} + +columnview.view > header > button, +treeview.view > header > button { + padding: 2px 6px; + border-style: none solid solid none; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + background-clip: border-box; +} + +columnview.view > header > button:not(:focus):not(:hover):not(:active), +treeview.view > header > button:not(:focus):not(:hover):not(:active) { + color: rgba(255, 255, 255, 0.7); +} + +columnview.view > header > button, columnview.view > header > button:disabled, +treeview.view > header > button, +treeview.view > header > button:disabled { + background-color: #2C2C2C; +} + +columnview.view > header > button:last-child, +treeview.view > header > button:last-child { + border-right-style: none; +} + +columnview.view button.dnd, +columnview.view header.button.dnd, +treeview.view button.dnd, +treeview.view header.button.dnd { + padding: 2px 6px; + border-style: none solid solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + border-radius: 0; + box-shadow: none; + background-color: #2C2C2C; + background-clip: border-box; + color: #5b9bf8; +} + +columnview.view acceleditor > label, +treeview.view acceleditor > label { + background-color: #5b9bf8; +} + +/********* + * Menus * + *********/ +menubar { + padding: 0; + background-color: #242424; + color: white; +} + +menubar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.csd menubar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > item { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + padding: 4px 8px; + color: rgba(255, 255, 255, 0.7); +} + +menubar > item:selected { + transition: none; + background-color: alpha(currentColor, 0.1); + color: white; +} + +menubar > item:disabled { + color: rgba(255, 255, 255, 0.3); +} + +menubar > item label:disabled { + color: inherit; +} + +menubar > item popover.menu popover.menu { + margin-left: 9px; +} + +menubar > item popover.menu.background popover.menu.background > contents { + margin: 0; + border-radius: 12px; +} + +/********************** + * Popover Base Menus * + **********************/ +popover.menu box.inline-buttons { + padding: 0 6px; +} + +popover.menu box.inline-buttons button.image-button.model { + min-height: 28px; + min-width: 28px; + padding: 0; + border: none; + outline: none; + transition: none; +} + +popover.menu box.inline-buttons button.image-button.model:selected { + background: image(alpha(currentColor, 0.06)); +} + +popover.menu box.circular-buttons { + padding: 6px; +} + +popover.menu box.circular-buttons button.circular.image-button.model { + padding: 6px; +} + +popover.menu box.circular-buttons button.circular.image-button.model:focus { + background-color: alpha(currentColor, 0.06); +} + +popover.menu.background separator { + margin: 6px 0; +} + +popover.menu arrow.left, +popover.menu radio.left, +popover.menu check.left { + margin-left: 0; + margin-right: 0; +} + +popover.menu arrow.right, +popover.menu radio.right, +popover.menu check.right { + margin-left: 0; + margin-right: 0; +} + +popover.menu modelbutton { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 22px; + min-width: 56px; + padding: 3px 9px; + color: white; + font: initial; + text-shadow: none; + box-shadow: none; + background: none; +} + +popover.menu modelbutton:hover { + transition: none; + background-color: alpha(currentColor, 0.08); +} + +popover.menu modelbutton:disabled { + color: rgba(255, 255, 255, 0.5); +} + +popover.menu label.title { + font-weight: bold; + padding: 4px 26px; +} + +/************ + * Popovers * + ************/ +popover.background { + font: initial; +} + +popover.background, popover.background:backdrop { + background-color: transparent; +} + +popover.background > arrow, +popover.background > contents { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + background-color: #3C3C3C; + border-radius: 12px; + border: 1px solid rgba(255, 255, 255, 0.1); + background-clip: border-box; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.75), 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05); +} + +popover.background > arrow:backdrop, +popover.background > contents:backdrop { + box-shadow: 0 3px 2px -2px rgba(0, 0, 0, 0.05), 0 2px 3px -1px rgba(0, 0, 0, 0.06), 0 1px 4px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +popover.background > contents > list, +popover.background > contents > .view, +popover.background > contents > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover.background > contents separator { + background-color: rgba(255, 255, 255, 0.12); + margin: 3px 0; +} + +popover.background > contents list separator { + margin: 0; +} + +popover.background .view:not(:selected), +popover.background toolbar { + background-color: #3C3C3C; +} + +popover.background .linked > button:not(.radio) { + background-color: transparent; + box-shadow: none; + border-radius: 6px; +} + +s +popover.background .linked > button:not(.radio):first-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):last-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):only-child { + border-radius: 6px; +} + +popover.background.menu button, +popover.background button.model { + min-height: 32px; + padding: 0 8px; + border-radius: 6px; +} + +.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: none; + box-shadow: none; +} + +magnifier { + background-color: #2C2C2C; +} + +/************* + * Notebooks * + *************/ +tabbar tab, notebook > header tab { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + min-height: 24px; + min-width: 24px; + padding: 3px 12px; + border: none; + outline: none; + background-clip: padding-box; + color: rgba(255, 255, 255, 0.7); + font-weight: 500; + border-radius: 6px; + background-image: none; + background-color: transparent; +} + +tabbar tab:hover, notebook > header tab:hover { + background-color: rgba(255, 255, 255, 0.04); + background-image: none; + color: white; +} + +tabbar tab:disabled, notebook > header tab:disabled { + color: rgba(255, 255, 255, 0.3); +} + +tabbar tab:checked, notebook > header tab:checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); + background-image: none; +} + +tabbar tab:checked:disabled, notebook > header tab:checked:disabled { + color: rgba(255, 255, 255, 0.5); +} + +frame > paned > notebook > header, notebook.frame > header { + background-color: rgba(255, 255, 255, 0.04); +} + +notebook, notebook.frame { + background-color: #2C2C2C; + border-radius: 12px; +} + +notebook.frame frame > border { + border: none; + border-radius: 6px; +} + +notebook.frame frame > list row.activatable { + border-radius: 6px; +} + +notebook > header { + border: none; + background-color: rgba(255, 255, 255, 0.04); + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +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 { + padding-left: 4px; + padding-right: 4px; +} + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { + margin-left: 0; + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { + margin-right: 0; + -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 { + padding-top: 4px; + padding-bottom: 4px; +} + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { + margin-top: 0; + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { + margin-bottom: 0; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +notebook > header > tabs > arrow { + min-height: 16px; + min-width: 16px; + border-radius: 6px; +} + +notebook > header tab > box { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header tab > box:drop(active) { + background-color: rgba(255, 255, 255, 0.12); + color: white; +} + +notebook > header tab button.flat:last-child { + margin-left: 6px; + margin-right: -6px; +} + +notebook > header tab button.flat:first-child { + margin-left: -6px; + margin-right: 6px; +} + +notebook > header tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child { + margin-left: 0; +} + +notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child { + margin-right: 0; +} + +notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child { + margin-top: 0; +} + +notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child { + margin-bottom: 0; +} + +notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header > menubutton > button.image-button { + padding: 3px; + min-width: 24px; + min-height: 24px; + margin-left: 3px; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +tabbar .box { + min-height: 36px; + border-bottom: none; + background: none; +} + +tabbar scrolledwindow.pinned undershoot { + border: 0 solid rgba(255, 255, 255, 0.12); +} + +tabbar scrolledwindow.pinned:dir(rtl) undershoot.left { + border-left-width: 1px; +} + +tabbar scrolledwindow.pinned:dir(ltr) undershoot.right { + border-right-width: 1px; +} + +tabbar scrolledwindow.pinned tabbox > background:dir(ltr) { + box-shadow: inset -1px 0 rgba(255, 255, 255, 0.12); +} + +tabbar scrolledwindow.pinned tabbox > background:dir(rtl) { + box-shadow: inset 1px 0 rgba(255, 255, 255, 0.12); +} + +tabbar undershoot { + transition: background 150ms ease-in-out; +} + +tabbar undershoot.left { + background: linear-gradient(to right, #2C2C2C, rgba(0, 0, 0, 0) 20px); +} + +tabbar undershoot.right { + background: linear-gradient(to left, #2C2C2C, rgba(0, 0, 0, 0) 20px); +} + +tabbar .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar tabbox { + background-color: rgba(255, 255, 255, 0.04); + background-image: none; + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +tabbar tabbox > background { + background: none; +} + +tabbar tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#5b9bf8, 0.4) 10%, alpha(#5b9bf8, 0) 30%); +} + +tabbar tab.needs-attention:hover { + background-image: image(alpha(currentColor, 0.03)), radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#5b9bf8, 0.4) 10%, alpha(#5b9bf8, 0) 30%); +} + +tabbar .start-action, +tabbar .end-action { + background-color: rgba(255, 255, 255, 0.04); + background-clip: padding-box; + border-color: rgba(255, 255, 255, 0.12); + border-style: solid; + transition: background 150ms ease-in-out; +} + +tabbar .start-action button, +tabbar .end-action button { + border: none; + border-radius: 0; +} + +tabbar .start-action:dir(ltr), +tabbar .end-action:dir(rtl) { + border-right-width: 1px; +} + +tabbar .start-action:dir(rtl), +tabbar .end-action:dir(ltr) { + border-left-width: 1px; +} + +tabbar:not(.inline) scrolledwindow.pinned undershoot { + border-color: rgba(255, 255, 255, 0.12); +} + +tabbar:not(.inline) undershoot.left { + background: linear-gradient(to right, #242424, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) undershoot.right { + background: linear-gradient(to left, #242424, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#5b9bf8, 0.5), alpha(#5b9bf8, 0.3) 1px, alpha(#5b9bf8, 0) 20px); +} + +tabbar:not(.inline) tabbox > background { + background-color: #242424; +} + +tabbar:not(.inline) .start-action, +tabbar:not(.inline) .end-action { + background-color: alpha(#242424, 0.6); + border-color: rgba(255, 255, 255, 0.12); +} + +tabbar:not(.inline):backdrop .box { + background-color: #2C2C2C; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +dnd tab { + min-height: 24px; + background-color: #242424; + color: white; + box-shadow: 0 1px 5px 1px rgba(0, 0, 0, 0.09), 0 2px 14px 3px rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.05); + outline: 1px solid rgba(0, 0, 0, 0.75); + outline-offset: -1px; + margin: 24px; +} + +dnd tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#5b9bf8, 0.4) 10%, alpha(#5b9bf8, 0) 30%); +} + +tabbar tab, +dnd tab { + padding: 6px; +} + +tabbar tab button.image-button, +dnd tab button.image-button { + padding: 0; + margin: 0; + min-width: 24px; + min-height: 24px; + border-radius: 9999px; +} + +tabview:drop(active), +tabbox:drop(active) { + box-shadow: none; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #2C2C2C; + box-shadow: none; + outline: none; +} + +scrollbar.top { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.bottom { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.left { + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar.right { + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +scrollbar > range > trough > slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 8px; + min-height: 8px; + border: 4px solid transparent; + border-radius: 9999px; + background-clip: padding-box; + background-color: rgba(255, 255, 255, 0.5); + box-shadow: none; + outline: none; +} + +scrollbar > range > trough > slider:hover { + background-color: rgba(255, 255, 255, 0.7); +} + +scrollbar > range > trough > slider:active { + background-color: white; +} + +scrollbar > range > trough > slider:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar > range.fine-tune > trough > slider { + min-width: 4px; + min-height: 4px; +} + +scrollbar > range.fine-tune.horizontal > trough > slider { + margin: 2px 0; +} + +scrollbar > range.fine-tune.vertical > trough > slider { + margin: 0 2px; +} + +scrollbar.overlay-indicator:not(.fine-tune) > range > trough > slider { + transition-property: background-color, min-height, min-width; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { + border-color: transparent; + background-color: transparent; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) > range > trough > slider { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(44, 44, 44, 0.3); + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: padding-box; + -gtk-icon-source: none; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button:disabled { + background-color: rgba(255, 255, 255, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal > range > trough > slider { + min-width: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { + min-width: 8px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical > range > trough > slider { + min-height: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { + min-height: 8px; +} + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { + background-color: rgba(60, 60, 60, 0.9); +} + +scrollbar.horizontal > range > trough > slider { + min-width: 24px; +} + +scrollbar.vertical > range > trough > slider { + min-height: 24px; +} + +scrollbar button { + min-width: 16px; + min-height: 16px; + padding: 0; + border-radius: 0; +} + +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"); +} + +/********** + * Switch * + **********/ +switch { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + margin: 6px 0; + padding: 0; + border: none; + border-radius: 9999px; + background-color: rgba(255, 255, 255, 0.5); + background-clip: border-box; + font-size: 0; + color: transparent; +} + +switch:checked { + background-color: #5b9bf8; +} + +switch:disabled { + opacity: 0.5; +} + +switch image { + margin: -8px; +} + +switch > slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 20px; + min-height: 20px; + margin: 1px; + border-radius: 9999px; + outline: none; + box-shadow: none; + background-color: white; + border: none; +} + +switch:focus slider, switch:hover slider, switch:focus:hover slider { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); +} + +/************************* + * Check and Radio items * + *************************/ +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + min-height: 40px; + min-width: 40px; + margin: 0; + padding: 0; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +.view.content-view.check:not(list):hover, .view.content-view.check:not(list):active, +.content-view .tile check:not(list):hover, +.content-view .tile check:not(list):active { + box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.12); +} + +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-unchecked-dark.png"), url("assets/selectionmode-checkbox-unchecked-dark@2.png")); +} + +.view.content-view.check:not(list):checked, +.content-view .tile check:not(list):checked { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-checked-dark.png"), url("assets/selectionmode-checkbox-checked-dark@2.png")); +} + +checkbutton, +radiobutton { + outline: none; + border-spacing: 3px; +} + +check, +radio { + min-height: 20px; + min-width: 20px; + margin: 3px; + padding: 0; + border-radius: 9999px; + color: transparent; + background-color: rgba(255, 255, 255, 0.12); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +check:hover, +radio:hover { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.04); + background-color: rgba(255, 255, 255, 0.15); +} + +check:active, +radio:active { + box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12); + background-color: rgba(255, 255, 255, 0.2); +} + +check:disabled, +radio:disabled { + background-color: rgba(255, 255, 255, 0.04); +} + +check:checked, check:indeterminate, +radio:checked, +radio:indeterminate { + color: white; + background-color: #5b9bf8; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.15); + background-color: #8cb9fa; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(91, 155, 248, 0.2); + background-color: #5b9bf8; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(255, 255, 255, 0.7); + background-color: rgba(91, 155, 248, 0.35); +} + +popover modelbutton.flat check, popover modelbutton.flat check:focus, popover modelbutton.flat check:hover, popover modelbutton.flat check:focus:hover, popover modelbutton.flat check:active, popover modelbutton.flat check:disabled, popover modelbutton.flat radio, popover modelbutton.flat radio:focus, popover modelbutton.flat radio:hover, popover modelbutton.flat radio:focus:hover, popover modelbutton.flat radio:active, popover modelbutton.flat radio:disabled { + transition: none; + box-shadow: none; + background-image: none; +} + +popover modelbutton.flat check.left:dir(rtl), popover modelbutton.flat radio.left:dir(rtl) { + margin-left: -3px; + margin-right: 6px; +} + +popover modelbutton.flat check.right:dir(ltr), popover modelbutton.flat radio.right:dir(ltr) { + margin-left: 6px; + margin-right: -3px; +} + +popover.menu check, popover.menu radio { + transition: none; + margin: 0; + padding: 0; +} + +popover.menu check:dir(ltr), popover.menu radio:dir(ltr) { + margin-right: 6px; + margin-left: -3px; +} + +popover.menu check:dir(rtl), popover.menu radio:dir(rtl) { + margin-left: 6px; + margin-right: -3px; +} + +popover.menu check, popover.menu check:hover, popover.menu check:disabled, popover.menu check:checked:hover, popover.menu check:indeterminate:hover, popover.menu radio, popover.menu radio:hover, popover.menu radio:disabled, popover.menu radio:checked:hover, popover.menu radio:indeterminate:hover { + box-shadow: none; +} + + +check { + -gtk-icon-size: 20px; +} + + +check:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-checked-symbolic@2.svg"))); +} + + +check:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic@2.svg"))); +} + + +radio { + -gtk-icon-size: 20px; +} + + +radio:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-checked-symbolic@2.svg"))); +} + + +radio:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-mixed-symbolic@2.svg"))); +} + + +popover.menu check { + min-height: 16px; + min-width: 16px; + -gtk-icon-size: 16px; +} + + +popover.menu check:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic@2.svg"))); +} + + +popover.menu check:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic@2.svg"))); +} + + +popover.menu radio { + min-height: 16px; + min-width: 16px; + -gtk-icon-size: 16px; +} + + +popover.menu radio:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-checked-symbolic@2.svg"))); +} + + +popover.menu radio:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic@2.svg"))); +} + +check:not(:checked):active { + -gtk-icon-transform: rotate(90deg); +} + +treeview.view radio, treeview.view check, +columnview.view radio, +columnview.view check { + padding: 0; + margin: 0; + transition: none; +} + +treeview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), treeview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate), +columnview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), +columnview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate) { + background-color: rgba(255, 255, 255, 0.12); +} + +treeview.view radio, treeview.view radio:hover, treeview.view radio:disabled, treeview.view radio:checked:hover, treeview.view radio:indeterminate:hover, treeview.view check, treeview.view check:hover, treeview.view check:disabled, treeview.view check:checked:hover, treeview.view check:indeterminate:hover, +columnview.view radio, +columnview.view radio:hover, +columnview.view radio:disabled, +columnview.view radio:checked:hover, +columnview.view radio:indeterminate:hover, +columnview.view check, +columnview.view check:hover, +columnview.view check:disabled, +columnview.view check:checked:hover, +columnview.view check:indeterminate:hover { + box-shadow: none; +} + +treeview.view:hover check, treeview.view:hover radio, treeview.view:selected check, treeview.view:selected radio, treeview.view:focus check, treeview.view:focus radio, treeview.view:focus-within check, treeview.view:focus-within radio, +columnview.view:hover check, +columnview.view:hover radio, +columnview.view:selected check, +columnview.view:selected radio, +columnview.view:focus check, +columnview.view:focus radio, +columnview.view:focus-within check, +columnview.view:focus-within radio { + box-shadow: none; + background-color: transparent; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale slider { + min-height: 18px; + min-width: 18px; + margin: -8px; +} + +scale.fine-tune.horizontal { + min-height: 4px; + padding-top: 16px; + padding-bottom: 16px; +} + +scale.fine-tune.vertical { + min-width: 4px; + padding-left: 16px; + padding-right: 16px; +} + +scale.fine-tune slider { + margin: -7px; +} + +scale trough { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + background-color: rgba(255, 255, 255, 0.3); +} + +scale trough:disabled { + background-color: rgba(255, 255, 255, 0.12); +} + +scale highlight { + transition: background-image 0ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#5b9bf8); +} + +scale highlight:disabled { + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.3)); +} + +scale fill { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.3); +} + +scale fill:disabled { + background-color: transparent; +} + +scale slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #5b9bf8; + background-color: #2C2C2C; + box-shadow: inset 0 0 0 2px #5b9bf8; +} + +scale slider:hover { + box-shadow: inset 0 0 0 2px #5b9bf8, 0 0 0 8px rgba(255, 255, 255, 0.12); +} + +scale slider:active { + box-shadow: inset 0 0 0 4px #5b9bf8, 0 0 0 8px rgba(255, 255, 255, 0.12); +} + +scale slider:disabled { + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.3); +} + +scale marks, +scale value { + color: rgba(255, 255, 255, 0.7); +} + +scale indicator { + background-color: rgba(255, 255, 255, 0.3); + color: transparent; +} + +scale.horizontal > marks.top { + margin-bottom: 7px; + margin-top: -15px; +} + +scale.horizontal.fine-tune > marks.top { + margin-bottom: 6px; + margin-top: -14px; +} + +scale.horizontal > marks.bottom { + margin-top: 7px; + margin-bottom: -15px; +} + +scale.horizontal.fine-tune > marks.bottom { + margin-top: 6px; + margin-bottom: -14px; +} + +scale.vertical > marks.top { + margin-right: 7px; + margin-left: -15px; +} + +scale.vertical.fine-tune > marks.top { + margin-right: 6px; + margin-left: -14px; +} + +scale.vertical > marks.bottom { + margin-left: 7px; + margin-right: -15px; +} + +scale.vertical.fine-tune > marks.bottom { + margin-left: 6px; + margin-right: -14px; +} + +scale.horizontal indicator { + min-height: 8px; + min-width: 1px; +} + +scale.vertical indicator { + min-height: 1px; + min-width: 8px; +} + +scale.horizontal.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-before:not(.marks-after) slider, scale.horizontal.marks-before:not(.marks-after) slider:hover, scale.horizontal.marks-before:not(.marks-after) slider:active, scale.horizontal.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")); +} + +scale.horizontal.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-disabled-dark.png"), url("assets/scale-horz-marks-before-slider-disabled-dark@2.png")); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-dark.png"), url("assets/scale-horz-marks-before-slider-dark@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-after:not(.marks-before) slider, scale.horizontal.marks-after:not(.marks-before) slider:hover, scale.horizontal.marks-after:not(.marks-before) slider:active, scale.horizontal.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-disabled-dark.png"), url("assets/scale-horz-marks-after-slider-disabled-dark@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-dark.png"), url("assets/scale-horz-marks-after-slider-dark@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-before:not(.marks-after) slider, scale.vertical.marks-before:not(.marks-after) slider:hover, scale.vertical.marks-before:not(.marks-after) slider:active, scale.vertical.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-disabled-dark.png"), url("assets/scale-vert-marks-before-slider-disabled-dark@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-dark.png"), url("assets/scale-vert-marks-before-slider-dark@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-after:not(.marks-before) slider, scale.vertical.marks-after:not(.marks-before) slider:hover, scale.vertical.marks-after:not(.marks-before) slider:active, scale.vertical.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-disabled-dark.png"), url("assets/scale-vert-marks-after-slider-disabled-dark@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-dark.png"), url("assets/scale-vert-marks-after-slider-dark@2.png")); +} + +scale.color { + min-height: 0; + min-width: 0; +} + +scale.color.horizontal { + padding: 0 0 12px 0; +} + +scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl) { + margin-bottom: -13.5px; + margin-top: 11.5px; +} + +scale.color.vertical:dir(ltr) { + padding: 0 0 0 12px; +} + +scale.color.vertical:dir(ltr) slider { + margin-left: -13.5px; + margin-right: 11.5px; +} + +scale.color.vertical:dir(rtl) { + padding: 0 12px 0 0; +} + +scale.color.vertical:dir(rtl) slider { + margin-right: -13.5px; + margin-left: 11.5px; +} + +/***************** + * Progress bars * + *****************/ +progressbar { + color: rgba(255, 255, 255, 0.7); + font-size: smaller; +} + +progressbar.horizontal trough, +progressbar.horizontal progress { + min-height: 6px; +} + +progressbar.vertical trough, +progressbar.vertical progress { + min-width: 6px; +} + +progressbar trough { + border-radius: 6px; + background-color: rgba(255, 255, 255, 0.12); +} + +progressbar progress { + border-radius: 6px; + background-color: #5b9bf8; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #5b9bf8; +} + +progressbar trough.empty progress { + all: unset; +} + +/************* + * Level Bar * + *************/ +levelbar.horizontal block { + min-height: 6px; +} + +levelbar.horizontal.discrete block { + min-width: 36px; +} + +levelbar.horizontal.discrete block:not(:last-child) { + margin-right: 2px; +} + +levelbar.vertical block { + min-width: 6px; +} + +levelbar.vertical.discrete block { + min-height: 36px; +} + +levelbar.vertical.discrete block:not(:last-child) { + margin-bottom: 2px; +} + +levelbar trough { + border-radius: 6px; +} + +levelbar block.low { + background-color: #FDD633; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #5b9bf8; +} + +levelbar block.full { + background-color: #81C995; +} + +levelbar block.empty { + background-color: rgba(255, 255, 255, 0.12); +} + +/**************** + * Print dialog * +*****************/ +window.dialog.print drawing { + color: white; + background: none; + border: none; + padding: 0; +} + +window.dialog.print drawing paper { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + color: white; +} + +window.dialog.print .dialog-action-box { + margin: 12px; +} + +/********** + * Frames * + **********/ +frame, +.frame { + border: 1px solid rgba(255, 255, 255, 0.12); +} + +frame > list, +.frame > list { + border: none; +} + +frame.view, +.frame.view { + border-radius: 6px; +} + +frame.flat, +.frame.flat { + border-style: none; +} + +frame { + border-radius: 6px; +} + +frame > label { + margin: 4px; +} + +frame.flat > border, statusbar frame > border { + border: none; +} + +actionbar > revealer > box { + padding: 6px; + border-spacing: 6px; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; + background-clip: border-box; + border: none; +} + +.background.csd box.vertical > actionbar > revealer > box { + border-radius: 0 0 14px 14px; +} + +statusbar { + padding: 6px 18px; +} + +scrolledwindow viewport.frame { + border: none; +} + +stack scrolledwindow.frame viewport.frame list { + border: none; +} + +overshoot.top { + background-image: radial-gradient(farthest-side at top, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at top, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 100% 3%, 100% 50%; + background-repeat: no-repeat; + background-position: top; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.bottom { + background-image: radial-gradient(farthest-side at bottom, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at bottom, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 100% 3%, 100% 50%; + background-repeat: no-repeat; + background-position: bottom; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.left { + background-image: radial-gradient(farthest-side at left, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at left, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 3% 100%, 50% 100%; + background-repeat: no-repeat; + background-position: left; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.right { + background-image: radial-gradient(farthest-side at right, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at right, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 3% 100%, 50% 100%; + background-repeat: no-repeat; + background-position: right; + background-color: transparent; + border: none; + box-shadow: none; +} + +undershoot.top { + background-color: transparent; + background-image: linear-gradient(to left, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-top: 1px; + background-size: 12px 1px; + background-repeat: repeat-x; + background-origin: content-box; + background-position: left top; + margin: 0 4px; +} + +undershoot.bottom { + background-color: transparent; + background-image: linear-gradient(to left, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-bottom: 1px; + background-size: 12px 1px; + background-repeat: repeat-x; + background-origin: content-box; + background-position: left bottom; + margin: 0 4px; +} + +undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(255, 255, 255, 0.3) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +junction { + border-style: solid none none solid; + border-width: 1px; + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +junction:dir(rtl) { + border-style: solid solid none none; +} + +separator { + min-width: 1px; + min-height: 1px; + background-color: rgba(255, 255, 255, 0.12); +} + +stacksidebar + separator.vertical, +stacksidebar separator.horizontal, button.font separator, button.file separator { + min-width: 0; + min-height: 0; + background-color: transparent; +} + +/********* + * Lists * + *********/ +listview.boxed-list, +list.boxed-list, listview.content:not(.conversation-listbox), +list.content:not(.conversation-listbox) { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(255, 255, 255, 0.12); +} + +listview.boxed-list > row.expander list > row, +list.boxed-list > row.expander list > row, listview.boxed-list > row, +list.boxed-list > row, listview.content:not(.conversation-listbox) > row, +list.content:not(.conversation-listbox) > row { + border-radius: 0; +} + +listview.boxed-list > row.expander list > row:first-child, +list.boxed-list > row.expander list > row:first-child, listview.boxed-list > row:first-child, +list.boxed-list > row:first-child, listview.content:not(.conversation-listbox) > row:first-child, +list.content:not(.conversation-listbox) > row:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +listview.boxed-list > row.expander list > row:last-child, +list.boxed-list > row.expander list > row:last-child, listview.boxed-list > row:last-child, +list.boxed-list > row:last-child, listview.content:not(.conversation-listbox) > row:last-child, +list.content:not(.conversation-listbox) > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +listview.boxed-list > row.expander list > row:only-child, +list.boxed-list > row.expander list > row:only-child, listview.boxed-list > row:only-child, +list.boxed-list > row:only-child, listview.content:not(.conversation-listbox) > row:only-child, +list.content:not(.conversation-listbox) > row:only-child { + border-radius: 6px; +} + +listview.boxed-list > row.expander list > row:focus, +list.boxed-list > row.expander list > row:focus, listview.boxed-list > row:focus, +list.boxed-list > row:focus, listview.content:not(.conversation-listbox) > row:focus, +list.content:not(.conversation-listbox) > row:focus { + box-shadow: inset 0 0 0 1000px alpha(currentColor, 0.08); +} + +listview, +list { + border-color: rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +listview row, +list row { + padding: 6px; +} + +listview > row.expander, +list > row.expander { + padding: 0px; +} + +listview > row.expander .row-header, +list > row.expander .row-header { + padding: 2px; +} + +listview.boxed-list > row.expander list, +list.boxed-list > row.expander list { + background-color: transparent; + box-shadow: none; + border: none; +} + +list.frame { + border-radius: 6px; +} + +listview.view { + color: white; + background-color: transparent; +} + +popover.menu listview.view { + padding: 0; +} + +popover.menu listview.view > row { + margin-left: 0; + margin-right: 0; +} + +row { + color: rgba(255, 255, 255, 0.7); +} + +columnview.view > header > button, +treeview.view > header > button, row.activatable { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; +} + +columnview.view > header > button:focus, +treeview.view > header > button:focus, row.activatable:focus { + color: white; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +columnview.view > header > button:hover, +treeview.view > header > button:hover, row.activatable:hover { + color: white; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +columnview.view > header > button.has-open-popup, +treeview.view > header > button.has-open-popup, columnview.view > header > button:active, +treeview.view > header > button:active, row.activatable.has-open-popup, row.activatable:active { + color: white; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + +row:selected { + color: inherit; +} + +row:selected image, +row:selected label { + color: white; +} + +row:selected button image, +row:selected button label { + color: inherit; +} + +row:selected:disabled image, +row:selected:disabled label { + color: rgba(255, 255, 255, 0.5); +} + +treeexpander { + border-spacing: 6px; +} + +columnview row:not(:selected) cell editablelabel:not(.editing):focus-within { + outline: 2px solid alpha(currentColor, 0.06); +} + +columnview row:not(:selected) cell editablelabel.editing:focus-within { + outline: 2px solid #5b9bf8; +} + +columnview row:not(:selected) cell editablelabel.editing text selection { + color: white; + background-color: #5b9bf8; +} + +.rich-list { + /* rich lists usually containing other widgets than just labels/text */ +} + +.rich-list > row { + padding: 9px 12px; + min-height: 32px; + /* should be tall even when only containing a label */ +} + +.rich-list > row > box { + border-spacing: 12px; +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 8px; + border-spacing: 9px; + padding: 9px; + border: none; +} + +.app-notification button.text-button:not(:disabled) { + color: #5b9bf8; +} + +.app-notification.frame, +.app-notification border { + border-style: none; +} + +/************* + * Expanders * + *************/ +expander { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 16px; + min-height: 16px; + color: rgba(255, 255, 255, 0.7); + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); +} + +expander:dir(rtl) { + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); +} + +expander:hover, expander:active { + color: white; +} + +expander:disabled { + color: rgba(255, 255, 255, 0.3); +} + +expander-widget > box > title { + border-radius: 6px; +} + +expander-widget > box > title:hover > expander { + color: rgba(255, 255, 255, 0.7); +} + +.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 { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + border-radius: 6px; + color: white; +} + +calendar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +calendar:selected { + border-radius: 6px; +} + +calendar > header { + padding: 3px; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +calendar > header > button { + min-height: 24px; +} + +calendar > grid { + margin: 3px; +} + +calendar > grid > label { + border-radius: 9999px; + margin: 0; +} + +calendar > grid > label.today:selected { + box-shadow: none; +} + +calendar > grid > label:focus { + outline-style: none; +} + +calendar > grid > label.day-number { + padding: 9px; +} + +calendar > grid > label.day-number.other-month { + color: alpha(currentColor, 0.3); +} + +/*********** + * Dialogs * + ***********/ +window.dialog.message.background { + background-color: #3C3C3C; +} + +window.dialog.message box.dialog-vbox.vertical { + border-spacing: 10px; +} + +window.dialog.message .titlebar { + min-height: 24px; + border-style: none; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; + color: white; +} + +window.dialog.message .titlebar:backdrop { + background-color: #3C3C3C; + color: rgba(255, 255, 255, 0.7); +} + +window.dialog.message .dialog-action-area { + margin-top: -6px; +} + +window.dialog.message .dialog-action-area > button, window.dialog.message .dialog-action-area > button:first-child, window.dialog.message .dialog-action-area > button:last-child { + border-radius: 9999px; +} + +window.dialog.message .dialog-action-area > button:not(:last-child) { + margin-right: 6px; +} + +window.dialog.message .dialog-action-area > button:not(:disabled) { + color: #5b9bf8; +} + +window.dialog.message .dialog-action-area > button.destructive-action:not(:disabled) { + color: #F28B82; +} + +.csd filechooser { + background-color: #2C2C2C; + border-radius: 0 0 14px 14px; +} + +filechooser .dialog-action-box { + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +filechooser #pathbarbox { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + background-color: #2C2C2C; +} + +filechooser stack.view { + background-color: transparent; +} + +filechooser stack.view scrolledwindow { + background-color: transparent; + border-radius: 0 0 14px 0; +} + +filechooser stack.view scrolledwindow list { + background-color: transparent; +} + +filechooser stack.view > placesview { + background-color: transparent; +} + +filechooser stack.view > placesview > actionbar, filechooser stack.view > placesview > actionbar > revealer > box { + background-color: transparent; +} + +filechooser stack.view frame > border { + border: none; +} + +.csd filechooser placessidebar { + background: none; + border-bottom-left-radius: 14px; +} + +filechooser actionbar, filechooser actionbar > revealer > box { + background-color: transparent; +} + +filechooserbutton > button > box { + border-spacing: 6px; +} + +filechooserbutton:drop(active) { + box-shadow: none; + border-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; + background-color: #242424; +} + +.sidebar:not(separator):dir(ltr), .sidebar:not(separator).left, .sidebar:not(separator).left:dir(rtl) { + border-right: 1px solid rgba(255, 255, 255, 0.12); + border-left-style: none; +} + +.sidebar:not(separator):dir(rtl), .sidebar:not(separator).right { + border-left: 1px solid rgba(255, 255, 255, 0.12); + 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 { + padding: 6px; + background-color: #242424; +} + +stacksidebar row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +stacksidebar row:selected { + background-color: alpha(currentColor, 0.06); + color: white; + font-weight: 500; +} + +stacksidebar row + row { + margin-top: 4px; +} + +stacksidebar row > label { + padding-left: 6px; + padding-right: 6px; + color: inherit; +} + +separator.sidebar { + background-color: rgba(255, 255, 255, 0.12); + border-right: none; +} + +separator.sidebar.selection-mode, .selection-mode separator.sidebar { + background-color: rgba(255, 255, 255, 0.15); +} + +/********************** + * Navigation Sidebar * + **********************/ +.navigation-sidebar { + padding: 6px; + border-right: none; +} + +.navigation-sidebar > row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +.navigation-sidebar > row:hover, .navigation-sidebar > row:focus-visible:focus-within { + background-color: alpha(currentColor, 0.08); +} + +.navigation-sidebar > row:selected { + background-color: alpha(currentColor, 0.06); + color: white; +} + +.navigation-sidebar > row:selected:hover { + background-color: alpha(currentColor, 0.16); +} + +.navigation-sidebar > row:selected:focus-visible:focus-within { + outline: none; + background-color: alpha(currentColor, 0.08); +} + +.navigation-sidebar > row:selected:focus-visible:focus-within:hover { + background-color: alpha(currentColor, 0.16); +} + +.navigation-sidebar > row:disabled { + color: rgba(255, 255, 255, 0.5); +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +row image.sidebar-icon:disabled { + color: rgba(255, 255, 255, 0.3); +} + +placessidebar > viewport.frame { + border-style: none; +} + +placessidebar list { + padding: 1px 0 4px; +} + +placessidebar .navigation-sidebar > row { + min-height: 32px; + margin: -1px 4px -1px 0; + padding: 0; + border-radius: 0 9999px 9999px 0; +} + +placessidebar .navigation-sidebar > row > revealer { + padding: 0 8px 0 16px; +} + +placessidebar .navigation-sidebar > row:selected { + background-color: alpha(currentColor, 0.06); + color: white; + font-weight: 500; +} + +placessidebar .navigation-sidebar > row:disabled { + color: rgba(255, 255, 255, 0.5); +} + +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 { + color: inherit; +} + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar .navigation-sidebar > row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row { + color: #5b9bf8; +} + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row image.sidebar-icon { + color: #5b9bf8; +} + +placessidebar .navigation-sidebar > row:drop(active) { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placesview .server-list-button > image { + transition: 200ms cubic-bezier(0, 0, 0.2, 1); + -gtk-icon-transform: rotate(0turn); +} + +placesview .server-list-button:checked > image { + transition: 200ms cubic-bezier(0, 0, 0.2, 1); + -gtk-icon-transform: rotate(-0.5turn); +} + +placesview > actionbar > revealer > box > label { + 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(rgba(255, 255, 255, 0.12)); + background-size: 1px 1px; + background-clip: content-box; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #2C2C2C; + background-image: image(rgba(255, 255, 255, 0.12)), image(rgba(255, 255, 255, 0.12)); + 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; + border-radius: 6px; +} + +video image.osd { + min-width: 64px; + min-height: 64px; + border-radius: 9999px; + border: none; +} + +/************** + * GtkInfoBar * + **************/ +infobar { + border: none; + margin-bottom: 0; +} + +infobar > revealer > box { + padding: 6px; + border-spacing: 12px; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #2C2C2C; +} + +infobar.info > revealer > box button, infobar.info > revealer > box button.text-button:not(:disabled), infobar.info:hover > revealer > box button, infobar.info:hover > revealer > box button.text-button:not(:disabled), infobar.info:backdrop > revealer > box button, infobar.info:backdrop > revealer > box button.text-button:not(:disabled) { + color: #5b9bf8; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #5b9bf8; + color: white; +} + +infobar.action > revealer > box button, infobar.action > revealer > box button:hover, infobar.action > revealer > box button:focus, infobar.action > revealer > box button:active, infobar.action > revealer > box button:checked, infobar.action > revealer > box button.text-button:not(:disabled), infobar.action:backdrop > revealer > box button, infobar.action:backdrop > revealer > box button:hover, infobar.action:backdrop > revealer > box button:focus, infobar.action:backdrop > revealer > box button:active, infobar.action:backdrop > revealer > box button:checked, infobar.action:backdrop > revealer > box button.text-button:not(:disabled), infobar.question > revealer > box button, infobar.question > revealer > box button:hover, infobar.question > revealer > box button:focus, infobar.question > revealer > box button:active, infobar.question > revealer > box button:checked, infobar.question > revealer > box button.text-button:not(:disabled), infobar.question:backdrop > revealer > box button, infobar.question:backdrop > revealer > box button:hover, infobar.question:backdrop > revealer > box button:focus, infobar.question:backdrop > revealer > box button:active, infobar.question:backdrop > revealer > box button:checked, infobar.question:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: white; +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #438cf7; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #FDD633; + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box button, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked, infobar.warning > revealer > box button.text-button:not(:disabled), infobar.warning:backdrop > revealer > box button, infobar.warning:backdrop > revealer > box button:hover, infobar.warning:backdrop > revealer > box button:focus, infobar.warning:backdrop > revealer > box button:active, infobar.warning:backdrop > revealer > box button:checked, infobar.warning:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box *:link, infobar.warning:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning:hover > revealer > box { + background-color: #fdd11a; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #F28B82; + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box button, infobar.error > revealer > box button:hover, infobar.error > revealer > box button:focus, infobar.error > revealer > box button:active, infobar.error > revealer > box button:checked, infobar.error > revealer > box button.text-button:not(:disabled), infobar.error:backdrop > revealer > box button, infobar.error:backdrop > revealer > box button:hover, infobar.error:backdrop > revealer > box button:focus, infobar.error:backdrop > revealer > box button:active, infobar.error:backdrop > revealer > box button:checked, infobar.error:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.error:hover > revealer > box { + background-color: #f0766b; +} + +/************ + * Tooltips * + ************/ +tooltip { + padding: 6px 12px; + box-shadow: none; + border: none; +} + +tooltip.background { + background-color: rgba(25, 25, 25, 0.9); + color: white; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12); + border-radius: 3px; + margin: 2px 6px 8px 6px; + border: none; +} + +tooltip > box { + border-spacing: 6px; +} + +/***************** + * Color Chooser * + *****************/ +colorswatch.top { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.top overlay { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.bottom { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.bottom overlay { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.left, colorswatch:first-child:not(.top) { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.left overlay, colorswatch:first-child:not(.top) overlay { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.right, colorswatch:last-child:not(.bottom) { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.dark { + color: white; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorchooser colorswatch:hover { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: 0 0 0 2px #5b9bf8; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; + color: white; +} + +colorswatch#add-color-button:only-child { + border-radius: 6px; +} + +colorswatch#add-color-button overlay { + background-color: rgba(255, 255, 255, 0.04); +} + +colorswatch#add-color-button overlay:hover { + background-color: rgba(255, 255, 255, 0.12); + box-shadow: none; +} + +colorswatch#add-color-button overlay:active { + background-color: rgba(255, 255, 255, 0.3); +} + +colorswatch:disabled { + opacity: 0.5; +} + +colorswatch:disabled overlay { + box-shadow: none; +} + +colorswatch#editor-color-sample { + border-radius: 6px; +} + +colorswatch#editor-color-sample overlay { + border-radius: 6px; +} + +colorswatch#editor-color-sample overlay:hover { + box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -0.6px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #3C3C3C; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +/******** + * Misc * + ********/ +.content-view { + background-color: #2C2C2C; +} + +/********************** + * Window Decorations * + **********************/ +window.csd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 14px; + outline-color: rgba(255, 255, 255, 0.1); + outline-offset: -1px; + outline-style: solid; + outline-width: 1px; + box-shadow: 0 8px 6px -5px rgba(0, 0, 0, 0.2), 0 16px 15px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; +} + +window.csd:backdrop { + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.75), 0 0 36px transparent; +} + +window.csd.popup { + border-radius: 12px; +} + +window.csd.dialog.message { + border-radius: 14px; +} + +.solid-csd window.csd { + margin: 0; + padding: 2px; + border-radius: 0; + background-color: #242424; + border: 1px solid #4b4b4b; +} + +.solid-csd window.csd:backdrop { + background-color: #2C2C2C; +} + +window.csd.maximized, window.csd.fullscreen, window.csd.tiled, window.csd.tiled-top, window.csd.tiled-right, window.csd.tiled-bottom, window.csd.tiled-left { + border-radius: 0; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action) { + min-height: 36px; + min-width: 36px; + padding: 0; + margin: 0 4px; +} + +windowcontrols button.minimize:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:not(.suggested-action):not(.destructive-action), windowcontrols button.close:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + background-color: "transparent"; +} + +windowcontrols button.minimize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.maximize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.close:not(.suggested-action):not(.destructive-action) image { + padding: 0; +} + +windowcontrols button.minimize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.close:hover:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.15); +} + +windowcontrols button.minimize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.close:active:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.2); +} + +windowcontrols button.minimize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.close:backdrop:not(.suggested-action):not(.destructive-action) { + opacity: 0.65; +} + +windowcontrols { + border-spacing: 6px; +} + +windowcontrols:not(.empty).start:dir(ltr), windowcontrols:not(.empty).end:dir(rtl) { + margin-right: 4px; + margin-left: 4px; +} + +windowcontrols:not(.empty).start:dir(rtl), windowcontrols:not(.empty).end:dir(ltr) { + margin-left: 4px; + margin-right: 4px; +} + +.view:selected, iconview:selected, gridview > child:selected, modelbutton.flat:selected, columnview.view:selected, +treeview.view:selected, row:selected, calendar:selected, calendar > grid > label.day-number:selected { + background-color: alpha(currentColor, 0.06); +} + +flowbox > flowboxchild:selected, calendar > grid > label.today { + color: #5b9bf8; + background-color: rgba(91, 155, 248, 0.2); +} + +textview text selection:focus, textview text selection, label > selection, +entry > text > selection, spinbutton:not(.vertical) > text > selection, spinbutton.vertical > text > selection, calendar > grid > label.today:selected { + color: white; + background-color: #5b9bf8; +} + +.monospace { + font-family: monospace; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #5b9bf8; + -gtk-icon-source: -gtk-recolor(url("assets/scalable/cursor-handle-symbolic.svg")); +} + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { + padding-top: 6px; +} + +shortcuts-section { + margin: 20px; +} + +.shortcuts-search-results { + margin: 20px; + border-spacing: 24px; +} + +shortcut { + border-spacing: 6px; +} + +shortcut > .keycap { + min-width: 12px; + min-height: 26px; + margin-top: 2px; + padding-bottom: 2px; + padding-left: 8px; + padding-right: 8px; + border: solid 1px rgba(255, 255, 255, 0.12); + border-radius: 7px; + box-shadow: inset 0 -2px rgba(255, 255, 255, 0.12); + background-color: #3C3C3C; + color: white; + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #5b9bf8; +} + +stackswitcher { + min-height: 0; + padding: 3px; + margin: 6px 0; + border-radius: 9px; + background-color: rgba(255, 255, 255, 0.04); + border: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + margin: 0 0; + background-color: transparent; + border-radius: 6px; + padding: 3px 10px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 100px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):focus:not(:hover):not(:checked) { + box-shadow: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.15); + color: white; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +stackswitcher button.text-button { + min-width: 100px; +} + +stackswitcher button.circular, +stackswitcher button.text-button.circular { + min-width: 36px; + min-height: 36px; + padding: 0; +} + +/************* + * App Icons * + *************/ +.lowres-icon { + -gtk-icon-shadow: none; +} + +.icon-dropshadow { + -gtk-icon-shadow: none; +} + +/********* + * Emoji * + *********/ +popover.emoji-picker { + padding: 0; +} + +popover.emoji-picker > contents { + padding: 0; +} + +.emoji-searchbar { + padding: 6px; + border-spacing: 6px; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + background: none; +} + +.emoji-searchbar entry text { + background: none; + box-shadow: none; +} + +.emoji-toolbar { + padding: 0; + border-spacing: 3px; + border-top: 1px solid rgba(255, 255, 255, 0.12); + background: none; +} + +button.emoji-section { + margin: 0; + padding: 6px; + border-radius: 6px; +} + +button.emoji-section:checked { + color: #5b9bf8; +} + +popover.emoji-picker emoji { + font-size: x-large; + padding: 6px; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; +} + +popover.emoji-picker emoji:focus, popover.emoji-picker emoji:hover { + background: alpha(currentColor, 0.08); +} + +emoji-completion-row { + min-height: 28px; + padding: 0 12px; +} + +emoji-completion-row > box { + border-spacing: 6px; + padding: 2px 6px; +} + +emoji-completion-row:focus, emoji-completion-row:hover, +emoji-completion-row emoji:hover, emoji-completion-row emoji:focus { + background-color: alpha(currentColor, 0.08); + color: white; +} + +popover.entry-completion > contents { + padding: 0; +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color white; +/* +text color for entries, views and content in general */ +@define-color theme_text_color white; +/* +widget base background color */ +@define-color theme_bg_color #2C2C2C; +/* +text widgets and the like base background color */ +@define-color theme_base_color #2C2C2C; +/* +base background color of selections */ +@define-color theme_selected_bg_color #5b9bf8; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color white; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #2C2C2C; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color rgba(255, 255, 255, 0.5); +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #242424; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color white; +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color white; +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #2C2C2C; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #2C2C2C; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #5b9bf8; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color white; +/* +insensitive color on backdrop windows */ +@define-color unfocused_insensitive_color rgba(255, 255, 255, 0.5); +/* +widgets main borders color */ +@define-color borders rgba(255, 255, 255, 0.12); +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders rgba(255, 255, 255, 0.12); +/* +these are pretty self explicative */ +@define-color warning_color #FDD633; +@define-color error_color #F28B82; +@define-color success_color #81C995; +/* +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 white; +@define-color wm_unfocused_title rgba(255, 255, 255, 0.7); +@define-color wm_highlight rgba(255, 255, 255, 0.1); +@define-color wm_bg #242424; +@define-color wm_unfocused_bg #2C2C2C; +/* +FIXME this is really an API */ +@define-color content_view_bg #2C2C2C; +@define-color placeholder_text_color silver; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #2C2C2C; +@define-color budgie_tasklist_indicator_color white; +@define-color budgie_tasklist_indicator_color_active white; +@define-color budgie_tasklist_indicator_color_active_window #999999; +@define-color budgie_tasklist_indicator_color_attention #FDD633; +@define-color STRAWBERRY_100 #FF9262; +@define-color STRAWBERRY_300 #FF793E; +@define-color STRAWBERRY_500 #F15D22; +@define-color STRAWBERRY_700 #CF3B00; +@define-color STRAWBERRY_900 #AC1800; +@define-color ORANGE_100 #FFDB91; +@define-color ORANGE_300 #FFCA40; +@define-color ORANGE_500 #FAA41A; +@define-color ORANGE_700 #DE8800; +@define-color ORANGE_900 #C26C00; +@define-color BANANA_100 #FFFFA8; +@define-color BANANA_300 #FFFA7D; +@define-color BANANA_500 #FFCE51; +@define-color BANANA_700 #D1A023; +@define-color BANANA_900 #A27100; +@define-color LIME_100 #A2F3BE; +@define-color LIME_300 #8ADBA6; +@define-color LIME_500 #73C48F; +@define-color LIME_700 #479863; +@define-color LIME_900 #1C6D38; +@define-color BLUEBERRY_100 #94A6FF; +@define-color BLUEBERRY_300 #6A7CE0; +@define-color BLUEBERRY_500 #3F51B5; +@define-color BLUEBERRY_700 #213397; +@define-color BLUEBERRY_900 #031579; +@define-color GRAPE_100 #D25DE6; +@define-color GRAPE_300 #B84ACB; +@define-color GRAPE_500 #9C27B0; +@define-color GRAPE_700 #830E97; +@define-color GRAPE_900 #6A007E; +@define-color COCOA_100 #9F9792; +@define-color COCOA_300 #7B736E; +@define-color COCOA_500 #574F4A; +@define-color COCOA_700 #463E39; +@define-color COCOA_900 #342C27; +@define-color SILVER_100 #EEE; +@define-color SILVER_300 #CCC; +@define-color SILVER_500 #AAA; +@define-color SILVER_700 #888; +@define-color SILVER_900 #666; +@define-color SLATE_100 #888; +@define-color SLATE_300 #666; +@define-color SLATE_500 #444; +@define-color SLATE_700 #222; +@define-color SLATE_900 #111; +@define-color BLACK_100 #474341; +@define-color BLACK_300 #403C3A; +@define-color BLACK_500 #393634; +@define-color BLACK_700 #33302F; +@define-color BLACK_900 #2B2928; diff --git a/Cutefish/gtk-4.0/gtk.css b/Cutefish/gtk-4.0/gtk.css new file mode 100644 index 0000000..ac64851 --- /dev/null +++ b/Cutefish/gtk-4.0/gtk.css @@ -0,0 +1,4662 @@ +/*************** + * Base States * + ***************/ +.background { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +dnd { + color: rgba(0, 0, 0, 0.87); +} + +.normal-icons { + -gtk-icon-size: 16px; +} + +.large-icons { + -gtk-icon-size: 32px; +} + +spinner:disabled, +arrow:disabled, +scrollbar:disabled, +check:disabled, +radio:disabled, +treeview.expander:disabled { + -gtk-icon-filter: opacity(0.5); +} + +iconview, .view { + color: rgba(0, 0, 0, 0.87); +} + +iconview:disabled, .view:disabled { + color: rgba(0, 0, 0, 0.38); +} + +iconview:selected, .view:selected { + color: rgba(0, 0, 0, 0.87); +} + +textview text { + background-color: #FFFFFF; +} + +textview border { + background-color: #FAFAFA; + color: rgba(0, 0, 0, 0.6); +} + +iconview:hover, iconview:selected { + border-radius: 3px; +} + +rubberband, .content-view rubberband, .content-view columnview.view > rubberband, +.content-view treeview.view > rubberband, .content-view .rubberband, columnview.view > rubberband, .content-view columnview.view > .rubberband, +treeview.view > rubberband, +.content-view treeview.view > .rubberband, gridview > rubberband, flowbox > rubberband { + border: 1px solid #3c84f7; + background-color: rgba(60, 132, 247, 0.3); +} + +flowbox > flowboxchild { + padding: 4px; + border-radius: 6px; +} + +.content-view .tile:selected { + background-color: transparent; +} + +gridview > child { + padding: 3px; +} + +gridview > child:selected { + outline-color: alpha(currentColor, 0.06); +} + +gridview > child box { + border-spacing: 8px; + margin: 12px; +} + +coverflow cover { + color: rgba(0, 0, 0, 0.87); + background-color: #FFFFFF; + border: 1px solid black; +} + +label.separator { + color: rgba(0, 0, 0, 0.6); +} + +label:disabled { + color: rgba(0, 0, 0, 0.38); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; +} + +label.osd { + border-radius: 6px; + background-color: rgba(52, 52, 52, 0.9); + color: white; +} + +.dim-label { + color: rgba(0, 0, 0, 0.6); +} + +window.assistant .sidebar { + padding: 4px 0; +} + +window.assistant .sidebar label { + min-height: 36px; + padding: 0 12px; + color: rgba(0, 0, 0, 0.38); + font-weight: 500; +} + +window.assistant .sidebar label.highlight { + color: rgba(0, 0, 0, 0.87); +} + +.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: rgba(0, 0, 0, 0.87); + background-color: #FFFFFF; + background-clip: padding-box; + border-radius: 6px; + border: none; +} + +.osd { + padding: 6px; + margin: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12); +} + +.osd.circular { + border-radius: 9999px; +} + +/********************* + * 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; +} + +.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 { + font-weight: 400; + font-size: 9pt; +} + +.caption-heading { + font-weight: 700; + font-size: 9pt; +} + +/**************** + * Text Entries * + ****************/ +spinbutton.vertical, spinbutton:not(.vertical), +entry { + min-height: 36px; + padding: 0 8px; + border-spacing: 6px; + border-radius: 6px; + caret-color: currentColor; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.vertical:focus-within, spinbutton:focus-within:not(.vertical), +entry:focus-within { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #3c84f7; +} + +spinbutton.vertical:drop(active), spinbutton:drop(active):not(.vertical), +entry:drop(active) { + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); +} + +spinbutton.vertical:disabled, spinbutton:disabled:not(.vertical), +entry:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.flat.vertical, spinbutton.flat:not(.vertical), +entry.flat { + min-height: 0; + padding: 2px; + border-radius: 0; + background-color: transparent; +} + +spinbutton.vertical image, spinbutton:not(.vertical) image, +entry image { + color: rgba(0, 0, 0, 0.6); +} + +spinbutton.vertical image:hover, spinbutton:not(.vertical) image:hover, spinbutton.vertical image:active, spinbutton:not(.vertical) image:active, +entry image:hover, +entry image:active { + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.vertical image:disabled, spinbutton:not(.vertical) image:disabled, +entry image:disabled { + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.vertical image.left, spinbutton:not(.vertical) image.left, +entry image.left { + margin-left: 2px; + margin-right: 6px; +} + +spinbutton.vertical image.right, spinbutton:not(.vertical) image.right, +entry image.right { + margin-left: 6px; + margin-right: 2px; +} + +spinbutton.vertical undershoot.left, spinbutton:not(.vertical) undershoot.left, +entry undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.vertical undershoot.right, spinbutton:not(.vertical) undershoot.right, +entry undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +spinbutton.error.vertical, spinbutton.error:not(.vertical), +entry.error { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.error.vertical:focus-within, spinbutton.error:focus-within:not(.vertical), +entry.error:focus-within { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #D93025; +} + +spinbutton.error.vertical:disabled, spinbutton.error:disabled:not(.vertical), +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.warning.vertical, spinbutton.warning:not(.vertical), +entry.warning { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +spinbutton.warning.vertical:focus-within, spinbutton.warning:focus-within:not(.vertical), +entry.warning:focus-within { + background-color: rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 0 2px #F4B400; +} + +spinbutton.warning.vertical:disabled, spinbutton.warning:disabled:not(.vertical), +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.vertical > progress, spinbutton:not(.vertical) > progress, +spinbutton.vertical progress > trough > progress, +spinbutton:not(.vertical) progress > trough > progress, +entry > progress, +entry progress > trough > progress { + margin: 2px -8px; + border-bottom: 2px solid #3c84f7; + background-color: transparent; +} + +treeview entry.flat, treeview entry { + background-color: #FFFFFF; +} + +treeview entry.flat, treeview entry.flat:focus-within, treeview entry, treeview entry:focus-within { + border-image: none; + box-shadow: none; +} + +.entry-tag { + margin: 2px; + border-radius: 9999px; + box-shadow: none; + background-color: rgba(0, 0, 0, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +.entry-tag:hover { + background-image: image(alpha(currentColor, 0.08)); +} + +:dir(ltr) .entry-tag { + margin-left: 4px; + margin-right: 0; + padding-left: 12px; + padding-right: 8px; +} + +:dir(rtl) .entry-tag { + margin-left: 0; + margin-right: 4px; + padding-left: 8px; + padding-right: 12px; +} + +.entry-tag.button { + box-shadow: none; + background-color: transparent; +} + +.entry-tag.button:not(:hover):not(:active) { + color: rgba(0, 0, 0, 0.6); +} + +editablelabel > stack > text { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: radial-gradient(farthest-side, #3c84f7 0%, rgba(60, 132, 247, 0) 0%); + } + to { + background-image: radial-gradient(farthest-side, #3c84f7 95%, rgba(60, 132, 247, 0)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button, popover.background.touch-selection button, popover.background.magnifier button, headerbar.selection-mode button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +infobar.warning > revealer > box button:focus, popover.background.touch-selection button:focus, popover.background.magnifier button:focus, headerbar.selection-mode button:focus:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:hover, popover.background.touch-selection button:hover, popover.background.magnifier button:hover, headerbar.selection-mode button:hover:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:active, popover.background.touch-selection button:active, popover.background.magnifier button:active, headerbar.selection-mode button:active:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:checked, popover.background.touch-selection button:checked, popover.background.magnifier button:checked, headerbar.selection-mode button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +infobar.warning > revealer > box button:disabled, popover.background.touch-selection button:disabled, popover.background.magnifier button:disabled, headerbar.selection-mode button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +infobar.warning > revealer > box button:checked:disabled, popover.background.touch-selection button:checked:disabled, popover.background.magnifier button:checked:disabled, headerbar.selection-mode button:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +actionbar > revealer > box .linked > button:not(.suggested-action):not(.destructive-action), button { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +actionbar > revealer > box .linked > button:focus:not(.suggested-action):not(.destructive-action), button:focus { + box-shadow: 0 0 0 2px rgba(60, 132, 247, 0.35); +} + +actionbar > revealer > box .linked > button:hover:not(.suggested-action):not(.destructive-action), button:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +actionbar > revealer > box .linked > button:active:not(.suggested-action):not(.destructive-action), button:active { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + +actionbar > revealer > box .linked > button:disabled:not(.suggested-action):not(.destructive-action), button:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +actionbar > revealer > box .linked > button:checked:not(.suggested-action):not(.destructive-action), button:checked { + background-color: #3c84f7; + color: white; +} + +actionbar > revealer > box .linked > button:checked:hover:not(.suggested-action):not(.destructive-action), button:checked:hover { + box-shadow: inset 0 0 0 9999px transparent; +} + +actionbar > revealer > box .linked > button:checked:disabled:not(.suggested-action):not(.destructive-action), button:checked:disabled { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.1); + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +button { + min-height: 24px; + min-width: 16px; + padding: 6px 10px; + border-radius: 6px; + font-weight: 500; +} + +button:drop(active) { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placessidebar .navigation-sidebar > row button.sidebar-button, calendar > header > button, columnview.view > header > button button.circular, +treeview.view > header > button button.circular, row.activatable button.circular, scrollbar button, notebook > header > tabs > arrow, spinbutton.vertical > button, spinbutton:not(.vertical) > button, modelbutton.flat, filechooser #pathbarbox > stack > box > button, window.dialog.message .dialog-action-area > button, .app-notification button, actionbar > revealer > box button:not(.suggested-action):not(.destructive-action), popover.background.menu button, +popover.background button.model, headerbar button:not(.suggested-action):not(.destructive-action), .toolbar button, +toolbar button, dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child), button.flat { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; + background-color: transparent; + color: rgba(0, 0, 0, 0.6); +} + +placessidebar .navigation-sidebar > row button.sidebar-button:focus, calendar > header > button:focus, columnview.view > header > button button.circular:focus, +treeview.view > header > button button.circular:focus, row.activatable button.circular:focus, scrollbar button:focus, notebook > header > tabs > arrow:focus, spinbutton.vertical > button:focus, spinbutton:not(.vertical) > button:focus, modelbutton.flat:focus, filechooser #pathbarbox > stack > box > button:focus, window.dialog.message .dialog-action-area > button:focus, .app-notification button:focus, actionbar > revealer > box button:focus:not(.suggested-action):not(.destructive-action), popover.background.menu button:focus, +popover.background button.model:focus, headerbar button:focus:not(.suggested-action):not(.destructive-action), .toolbar button:focus, +toolbar button:focus, dropdown > .linked:not(.vertical) > button:focus:not(:only-child), +combobox > .linked:not(.vertical) > button:focus:not(:only-child), button.flat:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +placessidebar .navigation-sidebar > row button.sidebar-button:hover, calendar > header > button:hover, columnview.view > header > button button.circular:hover, +treeview.view > header > button button.circular:hover, row.activatable button.circular:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, spinbutton.vertical > button:hover, spinbutton:not(.vertical) > button:hover, modelbutton.flat:hover, filechooser #pathbarbox > stack > box > button:hover, window.dialog.message .dialog-action-area > button:hover, .app-notification button:hover, actionbar > revealer > box button:hover:not(.suggested-action):not(.destructive-action), popover.background.menu button:hover, +popover.background button.model:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), .toolbar button:hover, +toolbar button:hover, dropdown > .linked:not(.vertical) > button:hover:not(:only-child), +combobox > .linked:not(.vertical) > button:hover:not(:only-child), button.flat:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +placessidebar .navigation-sidebar > row button.sidebar-button:active, calendar > header > button:active, columnview.view > header > button button.circular:active, +treeview.view > header > button button.circular:active, row.activatable button.circular:active, scrollbar button:active, notebook > header > tabs > arrow:active, spinbutton.vertical > button:active, spinbutton:not(.vertical) > button:active, modelbutton.flat:active, filechooser #pathbarbox > stack > box > button:active, window.dialog.message .dialog-action-area > button:active, .app-notification button:active, actionbar > revealer > box button:active:not(.suggested-action):not(.destructive-action), popover.background.menu button:active, +popover.background button.model:active, headerbar button:active:not(.suggested-action):not(.destructive-action), .toolbar button:active, +toolbar button:active, dropdown > .linked:not(.vertical) > button:active:not(:only-child), +combobox > .linked:not(.vertical) > button:active:not(:only-child), button.flat:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +placessidebar .navigation-sidebar > row button.sidebar-button:disabled, calendar > header > button:disabled, columnview.view > header > button button.circular:disabled, +treeview.view > header > button button.circular:disabled, row.activatable button.circular:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, spinbutton.vertical > button:disabled, spinbutton:not(.vertical) > button:disabled, modelbutton.flat:disabled, filechooser #pathbarbox > stack > box > button:disabled, window.dialog.message .dialog-action-area > button:disabled, .app-notification button:disabled, actionbar > revealer > box button:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:disabled, +popover.background button.model:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:disabled, +toolbar button:disabled, dropdown > .linked:not(.vertical) > button:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:disabled:not(:only-child), button.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(0, 0, 0, 0.26); +} + +filechooser #pathbarbox > stack > box > button:checked, window.dialog.message .dialog-action-area > button:checked, .app-notification button:checked, actionbar > revealer > box button:checked:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked, +popover.background button.model:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), .toolbar button:checked, +toolbar button:checked, dropdown > .linked:not(.vertical) > button:checked:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:not(:only-child), button.flat:checked, button.flat:checked:hover { + background-color: alpha(currentColor, 0.1); + color: rgba(0, 0, 0, 0.87); +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, window.dialog.message .dialog-action-area > button:checked:disabled, .app-notification button:checked:disabled, actionbar > revealer > box button:checked:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked:disabled, +popover.background button.model:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:checked:disabled, +toolbar button:checked:disabled, dropdown > .linked:not(.vertical) > button:checked:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(0, 0, 0, 0.38); +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.text-button.flat { + min-width: 48px; + padding-left: 8px; + padding-right: 8px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child) { + margin: 0 4px; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + border-radius: 6px; +} + +.linked:not(.vertical) > button.flat:focus, .linked.vertical > button.flat:focus { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +button.osd { + padding: 12px 16px; +} + +button.osd.image-button { + padding: 12px; +} + +button.osd:disabled { + opacity: 0; +} + +button.suggested-action { + background-color: #3c84f7; + color: white; + box-shadow: none; +} + +button.suggested-action:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(60, 132, 247, 0.2), 0 4px 3px 0 rgba(60, 132, 247, 0.14), 0 1px 6px 0 rgba(60, 132, 247, 0.12); +} + +button.suggested-action:checked { + background-color: #77a9f9; +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(60, 132, 247, 0.3), 0 2px 3px -1px rgba(60, 132, 247, 0.24), 0 2px 5px 0 rgba(60, 132, 247, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(60, 132, 247, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #3c84f7; +} + +button.suggested-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(0, 0, 0, 0.26); +} + +button.suggested-action.flat:checked { + background-color: rgba(60, 132, 247, 0.3); +} + +button.destructive-action { + background-color: #D93025; + color: white; + box-shadow: none; +} + +button.destructive-action:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(217, 48, 37, 0.2), 0 4px 3px 0 rgba(217, 48, 37, 0.14), 0 1px 6px 0 rgba(217, 48, 37, 0.12); +} + +button.destructive-action:checked { + background-color: #e46e66; +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(217, 48, 37, 0.3), 0 2px 3px -1px rgba(217, 48, 37, 0.24), 0 2px 5px 0 rgba(217, 48, 37, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(217, 48, 37, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #D93025; +} + +button.destructive-action.flat:disabled { + box-shadow: none; + background-color: transparent; + color: rgba(0, 0, 0, 0.26); +} + +button.destructive-action.flat:checked { + background-color: rgba(217, 48, 37, 0.3); +} + +stackswitcher > button > label { + margin: 0 -6px; + padding: 0 6px; +} + +stackswitcher > button > image { + margin: -3px -6px; + padding: 3px 6px; +} + +stackswitcher > button.needs-attention:checked > label, +stackswitcher > button.needs-attention:checked > image { + animation: none; + background-image: none; +} + +button.font > box, button.file > box { + border-spacing: 6px; +} + +button.font > box > box > label, button.file > box > box > label { + font-weight: bold; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action), filechooser #pathbarbox > stack > box > button, button.close, button.circular { + border-radius: 9999px; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, button.close label, button.circular label { + padding: 0; +} + +placessidebar .navigation-sidebar > row button.sidebar-button, notebook > header tab button.flat, popover.menu box.circular-buttons button.circular.image-button.model, spinbutton.vertical > button, spinbutton:not(.vertical) > button { + min-height: 24px; + min-width: 24px; + padding: 0; + border-radius: 9999px; +} + +stacksidebar row.needs-attention > label, stackswitcher > button.needs-attention > label, +stackswitcher > button.needs-attention > image { + animation: needs-attention 0ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-repeat: no-repeat; + background-position: right 3px; + background-size: 6px 6px; +} + +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; +} + +.linked:not(.vertical) > spinbutton.vertical, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry, .linked:not(.vertical) > button, .linked:not(.vertical) > button.image-button { + border-radius: 0; +} + +.linked:not(.vertical) > spinbutton.vertical:first-child, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child, .linked:not(.vertical) > button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.linked:not(.vertical) > spinbutton.vertical:last-child, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child, .linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > spinbutton.vertical:only-child, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child, .linked:not(.vertical) > button:only-child { + border-radius: 6px; +} + +.linked.vertical > spinbutton.vertical, .linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry, .linked.vertical > button, .linked.vertical > button.image-button { + border-radius: 0; +} + +.linked.vertical > spinbutton.vertical:first-child, .linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child, .linked.vertical > button:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > spinbutton.vertical:last-child, .linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child, .linked.vertical > button:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > spinbutton.vertical:only-child, .linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child, .linked.vertical > button:only-child { + border-radius: 6px; +} + +/* menu buttons */ +modelbutton.flat { + min-height: 28px; + padding: 0 9px; + border-radius: 6px; + color: rgba(0, 0, 0, 0.87); +} + +modelbutton.flat arrow.left { + -gtk-icon-source: -gtk-icontheme("go-previous-symbolic"); +} + +modelbutton.flat arrow.right { + -gtk-icon-source: -gtk-icontheme("go-next-symbolic"); +} + +button.color { + min-height: 24px; + min-width: 24px; + padding: 6px; +} + + +list > row button.image-button:not(.flat) { + background-color: transparent; + box-shadow: none; + border: none; +} + + +list > row button.image-button:not(.flat):hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + + +list > row button.image-button:not(.flat):active, +list > row button.image-button:not(.flat):checked { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + + +list > row button.image-button:not(.flat).suggested-action { + background-color: #3c84f7; + color: white; +} + + +list > row button.image-button:not(.flat).destructive-action { + background-color: #D93025; + color: white; +} + +/********* + * Links * + *********/ +link { + color: #2196F3; +} + +link:visited { + color: #9C27B0; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #2196F3; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #9C27B0; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton:not(.vertical) { + padding: 0; + border-spacing: 0; +} + +spinbutton:not(.vertical) > text { + min-width: 32px; + margin: 0; + padding-left: 12px; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; +} + +spinbutton:not(.vertical) > button { + border: solid 6px transparent; +} + +spinbutton:not(.vertical) > button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(0, 0, 0, 0.6); +} + +spinbutton:not(.vertical) > button.up:dir(ltr), spinbutton:not(.vertical) > button.down:dir(rtl) { + margin-left: -3px; +} + +spinbutton:not(.vertical) > button.up:dir(rtl), spinbutton:not(.vertical) > button.down:dir(ltr) { + margin-right: -3px; +} + +spinbutton.vertical { + padding: 0; +} + +spinbutton.vertical:disabled { + color: rgba(0, 0, 0, 0.38); +} + +spinbutton.vertical > text { + margin: 0; + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical > button { + padding: 0; + border: solid 6px transparent; +} + +spinbutton.vertical > button:focus:not(:hover):not(:active) { + box-shadow: inset 0 0 0 9999px transparent; + color: rgba(0, 0, 0, 0.6); +} + +spinbutton.vertical > button.up { + margin: 0 3px; +} + +spinbutton.vertical > button.down { + margin: 0 3px; +} + +treeview spinbutton:not(.vertical), row spinbutton:not(.vertical) { + min-height: 0; + border-style: none; + border-radius: 0; +} + +treeview spinbutton:not(.vertical) > text, row 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 button.combo cellview:dir(ltr), +combobox button.combo cellview:dir(ltr) { + margin-left: -2px; +} + +dropdown button.combo cellview:dir(rtl), +combobox button.combo cellview:dir(rtl) { + margin-right: -2px; +} + +dropdown popover, +combobox popover { + margin-top: 4px; + padding: 0; +} + +dropdown popover listview, +combobox popover listview { + margin: 6px 0; +} + +dropdown popover listview > row, +combobox popover listview > row { + padding: 6px; +} + +dropdown popover listview > row:selected, +combobox popover listview > row:selected { + color: rgba(0, 0, 0, 0.87); + background-color: alpha(currentColor, 0.06); +} + +dropdown popover .dropdown-searchbar, +combobox popover .dropdown-searchbar { + padding: 6px; +} + +dropdown.linked button:nth-child(2):dir(ltr), +combobox.linked button:nth-child(2):dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +dropdown.linked button:nth-child(2):dir(rtl), +combobox.linked button:nth-child(2):dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child), +combobox > .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child):first-child, +combobox > .linked:not(.vertical) > entry:not(:only-child):first-child { + margin-right: -36px; + padding-right: 36px; +} + +dropdown > .linked:not(.vertical) > entry:not(:only-child):last-child, +combobox > .linked:not(.vertical) > entry:not(:only-child):last-child { + margin-left: -36px; + padding-left: 36px; +} + +dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child) { + min-height: 16px; + min-width: 16px; + margin: 6px; + padding: 4px; + border-radius: 6px; +} + +.linked:not(.vertical) > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.linked:not(.vertical) > combobox:not(:last-child) > box > button.combo { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.linked.vertical > combobox:not(:first-child) > box > button.combo { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.linked.vertical > combobox:not(:last-child) > box > button.combo { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +button.combo:only-child { + border-radius: 6px; + font-weight: normal; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.87); +} + +button.combo:only-child:focus { + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +button.combo:only-child:hover { + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +button.combo:only-child:active { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +button.combo:only-child:checked { + background-color: alpha(currentColor, 0.1); + color: rgba(0, 0, 0, 0.87); +} + +button.combo:only-child:disabled { + box-shadow: none; + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.38); +} + +/************ + * Toolbars * + ************/ +.toolbar, +toolbar { + padding: 3px 6px; + background-color: #FFFFFF; + border-spacing: 6px; +} + +.osd .toolbar, .osd toolbar { + background-color: transparent; +} + +.app-notification, .toolbar.osd, +toolbar.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); + background-color: #FFFFFF; +} + +.app-notification:backdrop, .toolbar.osd:backdrop, +toolbar.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); +} + +.left.app-notification, .right.app-notification, .top.app-notification, .bottom.app-notification, .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; +} + +.bottom.app-notification, .toolbar.osd.bottom, +toolbar.osd.bottom { + box-shadow: none; + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.4)); +} + +.toolbar.horizontal > separator, +toolbar.horizontal > separator { + margin: 2px; +} + +.toolbar.vertical > separator, +toolbar.vertical > separator { + margin: 2px; +} + +.toolbar:not(.inline-toolbar):not(.osd) scale, +.toolbar:not(.inline-toolbar):not(.osd) entry, +.toolbar:not(.inline-toolbar):not(.osd) spinbutton, +.toolbar:not(.inline-toolbar):not(.osd) button, +toolbar:not(.inline-toolbar):not(.osd) scale, +toolbar:not(.inline-toolbar):not(.osd) entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton, +toolbar:not(.inline-toolbar):not(.osd) button { + margin: 2px; +} + +.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child) { + margin-left: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child), +toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child) { + margin-right: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +.toolbar:not(.inline-toolbar):not(.osd) spinbutton button, +toolbar:not(.inline-toolbar):not(.osd) spinbutton entry, +toolbar:not(.inline-toolbar):not(.osd) spinbutton button { + margin: 0; +} + +.toolbar:not(.inline-toolbar):not(.osd) switch, +toolbar:not(.inline-toolbar):not(.osd) switch { + margin: 8px 2px; +} + +.toolbar button { + margin: 1px; + border-radius: 3px; +} + +searchbar > revealer > box { + padding: 6px; + border-spacing: 6px; + border-style: solid; + border-width: 0 0 1px; + border-color: rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + background-clip: border-box; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + border: none; +} + +headerbar .linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + border-radius: 6px; +} + +headerbar button:focus:not(.suggested-action):not(.destructive-action), headerbar button:hover:not(.suggested-action):not(.destructive-action), headerbar button:active:not(.suggested-action):not(.destructive-action), headerbar button:checked:not(.suggested-action):not(.destructive-action) { + color: white; +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action) { + background-color: transparent; + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +headerbar button:backdrop:focus:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:hover:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar button:backdrop:checked:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); +} + +headerbar button:backdrop:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.3); +} + +headerbar entry { + background-color: rgba(255, 255, 255, 0.04); + color: white; +} + +headerbar entry:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +headerbar entry image { + color: rgba(255, 255, 255, 0.7); +} + +headerbar entry image:hover, headerbar entry image:active { + color: white; +} + +headerbar entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(0, 0, 0, 0.12); + background-color: #242424; + color: white; + min-height: 48px; + padding: 0 6px; +} + +headerbar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +headerbar:backdrop:disabled { + color: rgba(255, 255, 255, 0.3); +} + +headerbar .title { + padding: 0 12px; + font-weight: bold; +} + +headerbar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +headerbar .subtitle, +headerbar .dim-label { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +headerbar .subtitle:backdrop, +headerbar .dim-label:backdrop { + color: rgba(255, 255, 255, 0.5); +} + +headerbar .titlebar { + background-color: transparent; + box-shadow: none; +} + +headerbar headerbar + separator { + background-color: rgba(255, 255, 255, 0.12); +} + +box.vertical headerbar { + background-color: #242424; +} + +headerbar > windowhandle > box { + padding: 0 3px; +} + +headerbar > windowhandle > box, +headerbar > windowhandle > box > box.start, +headerbar > windowhandle > box > box.end { + border-spacing: 6px; +} + +headerbar entry, +headerbar spinbutton, +headerbar button, +headerbar stackswitcher { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar menubutton.popup { + margin-top: 0; + margin-bottom: 0; +} + +headerbar separator:not(.sidebar) { + margin-top: 12px; + margin-bottom: 12px; + background-color: rgba(255, 255, 255, 0.12); +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar spinbutton button { + margin-top: 0; + margin-bottom: 0; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +headerbar button.suggested-action:disabled, headerbar button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +headerbar stackswitcher { + background-color: rgba(255, 255, 255, 0.04); +} + +headerbar stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + background-color: rgba(255, 255, 255, 0.15); + color: white; +} + +headerbar.selection-mode { + transition: background-color 0.1ms 0ms, color 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #3c84f7; + color: white; +} + +headerbar.selection-mode:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +headerbar.selection-mode .subtitle:link { + color: white; +} + +headerbar.selection-mode .selection-menu { + padding-left: 16px; + padding-right: 16px; +} + +headerbar.selection-mode .selection-menu .arrow { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +headerbar .selection-mode { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.2); + background-color: #3c84f7; +} + +headerbar.default-decoration { + min-height: 24px; + padding: 6px; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); +} + +headerbar.default-decoration windowcontrols button, +headerbar.default-decoration windowcontrols menubutton { + min-width: 16px; + min-height: 16px; + margin: 0; + padding: 0; +} + +headerbar.default-decoration windowcontrols menubutton button { + min-height: 20px; + min-width: 20px; + margin: 0; + padding: 4px; +} + +.solid-csd headerbar:dir(rtl), .solid-csd headerbar:dir(ltr) { + border-radius: 0; + box-shadow: none; +} + +window.devel headerbar.titlebar { + background: #242424 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, linear-gradient(to right, transparent 65%, rgba(60, 132, 247, 0.2)), linear-gradient(to top, #1c1c1c, #242424 3px, #333333); +} + +window.devel headerbar.titlebar:backdrop { + background: #242424 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, image(#242424); + /* background-color would flash */ +} + +viewswitcher { + margin: 0; +} + +viewswitcher.wide { + border-spacing: 3px; +} + +viewswitcher.narrow button.toggle { + border-radius: 0; + margin: 0; +} + +viewswitcher.narrow button.toggle:focus-within, viewswitcher.narrow button.toggle:focus { + box-shadow: none; +} + +viewswitcher button.toggle { + font-weight: bold; + padding: 0; +} + +viewswitcher button.toggle > stack > box.narrow { + font-size: 0.75rem; + padding-top: 6px; + padding-bottom: 4px; + border-spacing: 4px; +} + +viewswitcher button.toggle > stack > box.narrow > stack > label { + padding-left: 6px; + padding-right: 6px; +} + +viewswitcher button.toggle > stack > box.wide { + padding: 2px 12px; + border-spacing: 6px; +} + +viewswitcherbar actionbar > revealer > box { + padding: 0; +} + +viewswitchertitle viewswitcher { + margin-left: 12px; + margin-right: 12px; +} + +indicatorbin > indicator, indicatorbin > mask { + min-width: 6px; + min-height: 6px; + border-radius: 9999px; +} + +indicatorbin > indicator { + margin: 1px; + background-color: alpha(currentColor, 0.4); +} + +indicatorbin > indicator > label { + font-size: 0.6rem; + font-weight: bold; + padding: 1px 4px; + color: white; +} + +indicatorbin > mask { + padding: 1px; + background: black; +} + +indicatorbin.needs-attention > indicator { + background-color: #3c84f7; +} + +indicatorbin.needs-attention > indicator > label { + color: white; +} + +/************ + * Pathbars * + ************/ + +pathbar > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 6px; + background-color: alpha(currentColor, 0.08); +} + + +pathbar > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +pathbar > button:checked { + background-color: alpha(currentColor, 0.16); + color: rgba(0, 0, 0, 0.87); +} + + +pathbar > button label:not(:only-child):first-child { + margin-left: 0; +} + + +pathbar > button label:not(:only-child):last-child { + margin-right: 0; +} + + +pathbar > button.text-button { + min-width: 0; +} + + +pathbar > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +/************** + * Tree Views * + **************/ +columnview.view, +treeview.view { + border-left-color: #e0e0e0; + border-top-color: #e0e0e0; +} + +columnview.view:hover, columnview.view:selected, +treeview.view:hover, +treeview.view:selected { + border-radius: 0; + box-shadow: none; +} + +columnview.view.separator, +treeview.view.separator { + min-height: 5px; + color: rgba(0, 0, 0, 0.12); +} + +columnview.view:drop(active), +treeview.view:drop(active) { + box-shadow: none; +} + +columnview.view:drop(active).after, +treeview.view:drop(active).after { + border-top-style: none; +} + +columnview.view:drop(active).before, +treeview.view:drop(active).before { + border-bottom-style: none; +} + +columnview.view > dndtarget:drop(active), +treeview.view > dndtarget:drop(active) { + border-style: solid none; + border-width: 1px; + border-color: alpha(currentColor, 0.06); +} + +columnview.view > dndtarget:drop(active).after, +treeview.view > dndtarget:drop(active).after { + border-top-style: none; +} + +columnview.view > dndtarget:drop(active).before, +treeview.view > dndtarget:drop(active).before { + border-bottom-style: none; +} + +columnview.view.expander, +treeview.view.expander { + min-width: 16px; + min-height: 16px; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); + color: rgba(0, 0, 0, 0.6); +} + +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: rgba(0, 0, 0, 0.87); +} + +columnview.view.expander:selected, +treeview.view.expander:selected { + color: rgba(0, 0, 0, 0.87); +} + +columnview.view.expander:selected:hover, +treeview.view.expander:selected:hover { + color: rgba(0, 0, 0, 0.87); +} + +columnview.view.expander:checked, +treeview.view.expander:checked { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +columnview.view.expander:disabled, +treeview.view.expander:disabled { + color: rgba(0, 0, 0, 0.26); +} + +columnview.view.progressbar, +treeview.view.progressbar { + border-bottom: 6px solid #3c84f7; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +columnview.view.progressbar:selected:hover, +treeview.view.progressbar:selected:hover { + box-shadow: none; +} + +columnview.view.trough, +treeview.view.trough { + border-bottom: 6px solid rgba(0, 0, 0, 0.12); + box-shadow: none; + background-color: transparent; + background-image: none; +} + +columnview.view.trough:selected:hover, +treeview.view.trough:selected:hover { + box-shadow: none; +} + +columnview.view > header > button, +treeview.view > header > button { + padding: 2px 6px; + border-style: none solid solid none; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.12); + border-radius: 0; + background-clip: border-box; +} + +columnview.view > header > button:not(:focus):not(:hover):not(:active), +treeview.view > header > button:not(:focus):not(:hover):not(:active) { + color: rgba(0, 0, 0, 0.6); +} + +columnview.view > header > button, columnview.view > header > button:disabled, +treeview.view > header > button, +treeview.view > header > button:disabled { + background-color: #FFFFFF; +} + +columnview.view > header > button:last-child, +treeview.view > header > button:last-child { + border-right-style: none; +} + +columnview.view button.dnd, +columnview.view header.button.dnd, +treeview.view button.dnd, +treeview.view header.button.dnd { + padding: 2px 6px; + border-style: none solid solid; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.12); + border-radius: 0; + box-shadow: none; + background-color: #FFFFFF; + background-clip: border-box; + color: #3c84f7; +} + +columnview.view acceleditor > label, +treeview.view acceleditor > label { + background-color: #3c84f7; +} + +/********* + * Menus * + *********/ +menubar { + padding: 0; + background-color: #242424; + color: white; +} + +menubar:backdrop { + background-color: #2C2C2C; + color: rgba(255, 255, 255, 0.7); +} + +.csd menubar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > item { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 20px; + padding: 4px 8px; + color: rgba(255, 255, 255, 0.7); +} + +menubar > item:selected { + transition: none; + background-color: alpha(currentColor, 0.1); + color: white; +} + +menubar > item:disabled { + color: rgba(255, 255, 255, 0.3); +} + +menubar > item label:disabled { + color: inherit; +} + +menubar > item popover.menu popover.menu { + margin-left: 9px; +} + +menubar > item popover.menu.background popover.menu.background > contents { + margin: 0; + border-radius: 12px; +} + +/********************** + * Popover Base Menus * + **********************/ +popover.menu box.inline-buttons { + padding: 0 6px; +} + +popover.menu box.inline-buttons button.image-button.model { + min-height: 28px; + min-width: 28px; + padding: 0; + border: none; + outline: none; + transition: none; +} + +popover.menu box.inline-buttons button.image-button.model:selected { + background: image(alpha(currentColor, 0.06)); +} + +popover.menu box.circular-buttons { + padding: 6px; +} + +popover.menu box.circular-buttons button.circular.image-button.model { + padding: 6px; +} + +popover.menu box.circular-buttons button.circular.image-button.model:focus { + background-color: alpha(currentColor, 0.06); +} + +popover.menu.background separator { + margin: 6px 0; +} + +popover.menu arrow.left, +popover.menu radio.left, +popover.menu check.left { + margin-left: 0; + margin-right: 0; +} + +popover.menu arrow.right, +popover.menu radio.right, +popover.menu check.right { + margin-left: 0; + margin-right: 0; +} + +popover.menu modelbutton { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 22px; + min-width: 56px; + padding: 3px 9px; + color: rgba(0, 0, 0, 0.87); + font: initial; + text-shadow: none; + box-shadow: none; + background: none; +} + +popover.menu modelbutton:hover { + transition: none; + background-color: alpha(currentColor, 0.08); +} + +popover.menu modelbutton:disabled { + color: rgba(0, 0, 0, 0.38); +} + +popover.menu label.title { + font-weight: bold; + padding: 4px 26px; +} + +/************ + * Popovers * + ************/ +popover.background { + font: initial; +} + +popover.background, popover.background:backdrop { + background-color: transparent; +} + +popover.background > arrow, +popover.background > contents { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + padding: 6px; + background-color: #FFFFFF; + border-radius: 12px; + border: 1px solid rgba(255, 255, 255, 0.15); + background-clip: border-box; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.12), 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05); +} + +popover.background > arrow:backdrop, +popover.background > contents:backdrop { + box-shadow: 0 3px 2px -2px rgba(0, 0, 0, 0.05), 0 2px 3px -1px rgba(0, 0, 0, 0.06), 0 1px 4px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.12); +} + +popover.background > arrow { + border: 1px solid rgba(0, 0, 0, 0.12); +} + +popover.background > contents { + border: none; +} + +popover.background > contents > list, +popover.background > contents > .view, +popover.background > contents > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover.background > contents separator { + background-color: rgba(0, 0, 0, 0.12); + margin: 3px 0; +} + +popover.background > contents list separator { + margin: 0; +} + +popover.background .view:not(:selected), +popover.background toolbar { + background-color: #FFFFFF; +} + +popover.background .linked > button:not(.radio) { + background-color: transparent; + box-shadow: none; + border-radius: 6px; +} + +s +popover.background .linked > button:not(.radio):first-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):last-child { + border-radius: 6px; +} + +popover.background .linked > button:not(.radio):only-child { + border-radius: 6px; +} + +popover.background.menu button, +popover.background button.model { + min-height: 32px; + padding: 0 8px; + border-radius: 6px; +} + +.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: none; + box-shadow: none; +} + +magnifier { + background-color: #FFFFFF; +} + +/************* + * Notebooks * + *************/ +tabbar tab, notebook > header tab { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + min-height: 24px; + min-width: 24px; + padding: 3px 12px; + border: none; + outline: none; + background-clip: padding-box; + color: rgba(0, 0, 0, 0.6); + font-weight: 500; + border-radius: 6px; + background-image: none; + background-color: transparent; +} + +tabbar tab:hover, notebook > header tab:hover { + background-color: rgba(0, 0, 0, 0.04); + background-image: none; + color: rgba(0, 0, 0, 0.87); +} + +tabbar tab:disabled, notebook > header tab:disabled { + color: rgba(0, 0, 0, 0.26); +} + +tabbar tab:checked, notebook > header tab:checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: white; + color: rgba(0, 0, 0, 0.87); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); + background-image: none; +} + +tabbar tab:checked:disabled, notebook > header tab:checked:disabled { + color: rgba(0, 0, 0, 0.38); +} + +frame > paned > notebook > header, notebook.frame > header { + background-color: rgba(0, 0, 0, 0.04); +} + +notebook, notebook.frame { + background-color: #FFFFFF; + border-radius: 12px; +} + +notebook.frame frame > border { + border: none; + border-radius: 6px; +} + +notebook.frame frame > list row.activatable { + border-radius: 6px; +} + +notebook > header { + border: none; + background-color: rgba(0, 0, 0, 0.04); + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +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 { + padding-left: 4px; + padding-right: 4px; +} + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { + margin-left: 0; + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { + margin-right: 0; + -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 { + padding-top: 4px; + padding-bottom: 4px; +} + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { + margin-top: 0; + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { + margin-bottom: 0; + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +notebook > header > tabs > arrow { + min-height: 16px; + min-width: 16px; + border-radius: 6px; +} + +notebook > header tab > box { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header tab > box:drop(active) { + background-color: rgba(0, 0, 0, 0.12); + color: rgba(0, 0, 0, 0.87); +} + +notebook > header tab button.flat:last-child { + margin-left: 6px; + margin-right: -6px; +} + +notebook > header tab button.flat:first-child { + margin-left: -6px; + margin-right: 6px; +} + +notebook > header tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child { + margin-left: 0; +} + +notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child { + margin-right: 0; +} + +notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child { + margin-top: 0; +} + +notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child { + margin-bottom: 0; +} + +notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page { + border-style: solid; +} + +notebook > header > menubutton > button.image-button { + padding: 3px; + min-width: 24px; + min-height: 24px; + margin-left: 3px; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +tabbar .box { + min-height: 36px; + border-bottom: none; + background: none; +} + +tabbar scrolledwindow.pinned undershoot { + border: 0 solid rgba(0, 0, 0, 0.12); +} + +tabbar scrolledwindow.pinned:dir(rtl) undershoot.left { + border-left-width: 1px; +} + +tabbar scrolledwindow.pinned:dir(ltr) undershoot.right { + border-right-width: 1px; +} + +tabbar scrolledwindow.pinned tabbox > background:dir(ltr) { + box-shadow: inset -1px 0 rgba(0, 0, 0, 0.12); +} + +tabbar scrolledwindow.pinned tabbox > background:dir(rtl) { + box-shadow: inset 1px 0 rgba(0, 0, 0, 0.12); +} + +tabbar undershoot { + transition: background 150ms ease-in-out; +} + +tabbar undershoot.left { + background: linear-gradient(to right, #FFFFFF, rgba(0, 0, 0, 0) 20px); +} + +tabbar undershoot.right { + background: linear-gradient(to left, #FFFFFF, rgba(0, 0, 0, 0) 20px); +} + +tabbar .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#3c84f7, 0.5), alpha(#3c84f7, 0.3) 1px, alpha(#3c84f7, 0) 20px); +} + +tabbar .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#3c84f7, 0.5), alpha(#3c84f7, 0.3) 1px, alpha(#3c84f7, 0) 20px); +} + +tabbar tabbox { + background-color: rgba(0, 0, 0, 0.04); + background-image: none; + padding: 3px; + margin: 3px; + border-radius: 9px; +} + +tabbar tabbox > background { + background: none; +} + +tabbar tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#3c84f7, 0.4) 10%, alpha(#3c84f7, 0) 30%); +} + +tabbar tab.needs-attention:hover { + background-image: image(alpha(currentColor, 0.03)), radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#3c84f7, 0.4) 10%, alpha(#3c84f7, 0) 30%); +} + +tabbar .start-action, +tabbar .end-action { + background-color: rgba(0, 0, 0, 0.04); + background-clip: padding-box; + border-color: rgba(0, 0, 0, 0.12); + border-style: solid; + transition: background 150ms ease-in-out; +} + +tabbar .start-action button, +tabbar .end-action button { + border: none; + border-radius: 0; +} + +tabbar .start-action:dir(ltr), +tabbar .end-action:dir(rtl) { + border-right-width: 1px; +} + +tabbar .start-action:dir(rtl), +tabbar .end-action:dir(ltr) { + border-left-width: 1px; +} + +tabbar:not(.inline) scrolledwindow.pinned undershoot { + border-color: rgba(0, 0, 0, 0.12); +} + +tabbar:not(.inline) undershoot.left { + background: linear-gradient(to right, #242424, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) undershoot.right { + background: linear-gradient(to left, #242424, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#3c84f7, 0.5), alpha(#3c84f7, 0.3) 1px, alpha(#3c84f7, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#3c84f7, 0.5), alpha(#3c84f7, 0.3) 1px, alpha(#3c84f7, 0) 20px); +} + +tabbar:not(.inline) tabbox > background { + background-color: #242424; +} + +tabbar:not(.inline) .start-action, +tabbar:not(.inline) .end-action { + background-color: alpha(#242424, 0.6); + border-color: rgba(0, 0, 0, 0.12); +} + +tabbar:not(.inline):backdrop .box { + background-color: #2C2C2C; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); +} + +dnd tab { + min-height: 24px; + background-color: #242424; + color: white; + box-shadow: 0 1px 5px 1px rgba(0, 0, 0, 0.09), 0 2px 14px 3px rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.05); + outline: 1px solid rgba(0, 0, 0, 0.12); + outline-offset: -1px; + margin: 24px; +} + +dnd tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#3c84f7, 0.4) 10%, alpha(#3c84f7, 0) 30%); +} + +tabbar tab, +dnd tab { + padding: 6px; +} + +tabbar tab button.image-button, +dnd tab button.image-button { + padding: 0; + margin: 0; + min-width: 24px; + min-height: 24px; + border-radius: 9999px; +} + +tabview:drop(active), +tabbox:drop(active) { + box-shadow: none; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: #FFFFFF; + box-shadow: none; + outline: none; +} + +scrollbar.top { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar.bottom { + border-top: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar.left { + border-right: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar.right { + border-left: 1px solid rgba(0, 0, 0, 0.12); +} + +scrollbar > range > trough > slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 8px; + min-height: 8px; + border: 4px solid transparent; + border-radius: 9999px; + background-clip: padding-box; + background-color: rgba(0, 0, 0, 0.38); + box-shadow: none; + outline: none; +} + +scrollbar > range > trough > slider:hover { + background-color: rgba(0, 0, 0, 0.6); +} + +scrollbar > range > trough > slider:active { + background-color: rgba(0, 0, 0, 0.87); +} + +scrollbar > range > trough > slider:disabled { + background-color: rgba(0, 0, 0, 0.26); +} + +scrollbar > range.fine-tune > trough > slider { + min-width: 4px; + min-height: 4px; +} + +scrollbar > range.fine-tune.horizontal > trough > slider { + margin: 2px 0; +} + +scrollbar > range.fine-tune.vertical > trough > slider { + margin: 0 2px; +} + +scrollbar.overlay-indicator:not(.fine-tune) > range > trough > slider { + transition-property: background-color, min-height, min-width; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) { + border-color: transparent; + background-color: transparent; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) > range > trough > slider { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(255, 255, 255, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(255, 255, 255, 0.3); + border-radius: 9999px; + background-color: rgba(0, 0, 0, 0.38); + background-clip: padding-box; + -gtk-icon-source: none; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button:disabled { + background-color: rgba(0, 0, 0, 0.26); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal > range > trough > slider { + min-width: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { + min-width: 8px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical > range > trough > slider { + min-height: 24px; +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { + min-height: 8px; +} + +scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { + background-color: rgba(255, 255, 255, 0.9); +} + +scrollbar.horizontal > range > trough > slider { + min-width: 24px; +} + +scrollbar.vertical > range > trough > slider { + min-height: 24px; +} + +scrollbar button { + min-width: 16px; + min-height: 16px; + padding: 0; + border-radius: 0; +} + +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"); +} + +/********** + * Switch * + **********/ +switch { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + margin: 6px 0; + padding: 0; + border: none; + border-radius: 9999px; + background-color: rgba(0, 0, 0, 0.38); + background-clip: border-box; + font-size: 0; + color: transparent; +} + +switch:checked { + background-color: #3c84f7; +} + +switch:disabled { + opacity: 0.5; +} + +switch image { + margin: -8px; +} + +switch > slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 20px; + min-height: 20px; + margin: 1px; + border-radius: 9999px; + outline: none; + box-shadow: none; + background-color: white; + border: none; +} + +switch:focus slider, switch:hover slider, switch:focus:hover slider { + box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.12); +} + +/************************* + * Check and Radio items * + *************************/ +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + min-height: 40px; + min-width: 40px; + margin: 0; + padding: 0; + box-shadow: none; + background-color: transparent; + background-image: none; +} + +.view.content-view.check:not(list):hover, .view.content-view.check:not(list):active, +.content-view .tile check:not(list):hover, +.content-view .tile check:not(list):active { + box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.12); +} + +.view.content-view.check:not(list), +.content-view .tile check:not(list) { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-unchecked.png"), url("assets/selectionmode-checkbox-unchecked@2.png")); +} + +.view.content-view.check:not(list):checked, +.content-view .tile check:not(list):checked { + -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-checked.png"), url("assets/selectionmode-checkbox-checked@2.png")); +} + +checkbutton, +radiobutton { + outline: none; + border-spacing: 3px; +} + +check, +radio { + min-height: 20px; + min-width: 20px; + margin: 3px; + padding: 0; + border-radius: 9999px; + color: transparent; + background-color: rgba(0, 0, 0, 0.12); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); +} + +check:hover, +radio:hover { + box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.04); + background-color: rgba(0, 0, 0, 0.15); +} + +check:active, +radio:active { + box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.12); + background-color: rgba(0, 0, 0, 0.2); +} + +check:disabled, +radio:disabled { + background-color: rgba(0, 0, 0, 0.04); +} + +check:checked, check:indeterminate, +radio:checked, +radio:indeterminate { + color: white; + background-color: #3c84f7; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(60, 132, 247, 0.15); + background-color: #6da3f9; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(60, 132, 247, 0.2); + background-color: #3c84f7; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(255, 255, 255, 0.7); + background-color: rgba(60, 132, 247, 0.35); +} + +popover modelbutton.flat check, popover modelbutton.flat check:focus, popover modelbutton.flat check:hover, popover modelbutton.flat check:focus:hover, popover modelbutton.flat check:active, popover modelbutton.flat check:disabled, popover modelbutton.flat radio, popover modelbutton.flat radio:focus, popover modelbutton.flat radio:hover, popover modelbutton.flat radio:focus:hover, popover modelbutton.flat radio:active, popover modelbutton.flat radio:disabled { + transition: none; + box-shadow: none; + background-image: none; +} + +popover modelbutton.flat check.left:dir(rtl), popover modelbutton.flat radio.left:dir(rtl) { + margin-left: -3px; + margin-right: 6px; +} + +popover modelbutton.flat check.right:dir(ltr), popover modelbutton.flat radio.right:dir(ltr) { + margin-left: 6px; + margin-right: -3px; +} + +popover.menu check, popover.menu radio { + transition: none; + margin: 0; + padding: 0; +} + +popover.menu check:dir(ltr), popover.menu radio:dir(ltr) { + margin-right: 6px; + margin-left: -3px; +} + +popover.menu check:dir(rtl), popover.menu radio:dir(rtl) { + margin-left: 6px; + margin-right: -3px; +} + +popover.menu check, popover.menu check:hover, popover.menu check:disabled, popover.menu check:checked:hover, popover.menu check:indeterminate:hover, popover.menu radio, popover.menu radio:hover, popover.menu radio:disabled, popover.menu radio:checked:hover, popover.menu radio:indeterminate:hover { + box-shadow: none; +} + + +check { + -gtk-icon-size: 20px; +} + + +check:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-checked-symbolic@2.svg"))); +} + + +check:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic@2.svg"))); +} + + +radio { + -gtk-icon-size: 20px; +} + + +radio:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-checked-symbolic@2.svg"))); +} + + +radio:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-mixed-symbolic@2.svg"))); +} + + +popover.menu check { + min-height: 16px; + min-width: 16px; + -gtk-icon-size: 16px; +} + + +popover.menu check:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic@2.svg"))); +} + + +popover.menu check:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic@2.svg"))); +} + + +popover.menu radio { + min-height: 16px; + min-width: 16px; + -gtk-icon-size: 16px; +} + + +popover.menu radio:checked { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-checked-symbolic@2.svg"))); +} + + +popover.menu radio:indeterminate { + -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic@2.svg"))); +} + +check:not(:checked):active { + -gtk-icon-transform: rotate(90deg); +} + +treeview.view radio, treeview.view check, +columnview.view radio, +columnview.view check { + padding: 0; + margin: 0; + transition: none; +} + +treeview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), treeview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate), +columnview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), +columnview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate) { + background-color: rgba(0, 0, 0, 0.12); +} + +treeview.view radio, treeview.view radio:hover, treeview.view radio:disabled, treeview.view radio:checked:hover, treeview.view radio:indeterminate:hover, treeview.view check, treeview.view check:hover, treeview.view check:disabled, treeview.view check:checked:hover, treeview.view check:indeterminate:hover, +columnview.view radio, +columnview.view radio:hover, +columnview.view radio:disabled, +columnview.view radio:checked:hover, +columnview.view radio:indeterminate:hover, +columnview.view check, +columnview.view check:hover, +columnview.view check:disabled, +columnview.view check:checked:hover, +columnview.view check:indeterminate:hover { + box-shadow: none; +} + +treeview.view:hover check, treeview.view:hover radio, treeview.view:selected check, treeview.view:selected radio, treeview.view:focus check, treeview.view:focus radio, treeview.view:focus-within check, treeview.view:focus-within radio, +columnview.view:hover check, +columnview.view:hover radio, +columnview.view:selected check, +columnview.view:selected radio, +columnview.view:focus check, +columnview.view:focus radio, +columnview.view:focus-within check, +columnview.view:focus-within radio { + box-shadow: none; + background-color: transparent; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale slider { + min-height: 18px; + min-width: 18px; + margin: -8px; +} + +scale.fine-tune.horizontal { + min-height: 4px; + padding-top: 16px; + padding-bottom: 16px; +} + +scale.fine-tune.vertical { + min-width: 4px; + padding-left: 16px; + padding-right: 16px; +} + +scale.fine-tune slider { + margin: -7px; +} + +scale trough { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + background-color: rgba(0, 0, 0, 0.26); +} + +scale trough:disabled { + background-color: rgba(0, 0, 0, 0.12); +} + +scale highlight { + transition: background-image 0ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#3c84f7); +} + +scale highlight:disabled { + background-color: #FFFFFF; + background-image: image(rgba(0, 0, 0, 0.26)); +} + +scale fill { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(0, 0, 0, 0.26); +} + +scale fill:disabled { + background-color: transparent; +} + +scale slider { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #3c84f7; + background-color: #FFFFFF; + box-shadow: inset 0 0 0 2px #3c84f7; +} + +scale slider:hover { + box-shadow: inset 0 0 0 2px #3c84f7, 0 0 0 8px rgba(0, 0, 0, 0.12); +} + +scale slider:active { + box-shadow: inset 0 0 0 4px #3c84f7, 0 0 0 8px rgba(0, 0, 0, 0.12); +} + +scale slider:disabled { + box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.26); +} + +scale marks, +scale value { + color: rgba(0, 0, 0, 0.6); +} + +scale indicator { + background-color: rgba(0, 0, 0, 0.26); + color: transparent; +} + +scale.horizontal > marks.top { + margin-bottom: 7px; + margin-top: -15px; +} + +scale.horizontal.fine-tune > marks.top { + margin-bottom: 6px; + margin-top: -14px; +} + +scale.horizontal > marks.bottom { + margin-top: 7px; + margin-bottom: -15px; +} + +scale.horizontal.fine-tune > marks.bottom { + margin-top: 6px; + margin-bottom: -14px; +} + +scale.vertical > marks.top { + margin-right: 7px; + margin-left: -15px; +} + +scale.vertical.fine-tune > marks.top { + margin-right: 6px; + margin-left: -14px; +} + +scale.vertical > marks.bottom { + margin-left: 7px; + margin-right: -15px; +} + +scale.vertical.fine-tune > marks.bottom { + margin-left: 6px; + margin-right: -14px; +} + +scale.horizontal indicator { + min-height: 8px; + min-width: 1px; +} + +scale.vertical indicator { + min-height: 1px; + min-width: 8px; +} + +scale.horizontal.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-before:not(.marks-after) slider, scale.horizontal.marks-before:not(.marks-after) slider:hover, scale.horizontal.marks-before:not(.marks-after) slider:active, scale.horizontal.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider.png"), url("assets/scale-horz-marks-before-slider@2.png")); +} + +scale.horizontal.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-disabled.png"), url("assets/scale-horz-marks-before-slider-disabled@2.png")); +} + +scale.horizontal.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider.png"), url("assets/scale-horz-marks-before-slider@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.horizontal.marks-after:not(.marks-before) slider, scale.horizontal.marks-after:not(.marks-before) slider:hover, scale.horizontal.marks-after:not(.marks-before) slider:active, scale.horizontal.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider.png"), url("assets/scale-horz-marks-after-slider@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-disabled.png"), url("assets/scale-horz-marks-after-slider-disabled@2.png")); +} + +scale.horizontal.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider.png"), url("assets/scale-horz-marks-after-slider@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-before:not(.marks-after) slider, scale.vertical.marks-before:not(.marks-after) slider:hover, scale.vertical.marks-before:not(.marks-after) slider:active, scale.vertical.marks-before:not(.marks-after) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider.png"), url("assets/scale-vert-marks-before-slider@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-disabled.png"), url("assets/scale-vert-marks-before-slider-disabled@2.png")); +} + +scale.vertical.marks-before:not(.marks-after) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider.png"), url("assets/scale-vert-marks-before-slider@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider { + transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1); + min-height: 32px; + min-width: 32px; + margin: -15px; + border-radius: 50%; + background-size: auto, 1000% 1000%; + background-repeat: no-repeat; + background-position: center center; + background-color: transparent; +} + +scale.vertical.marks-after:not(.marks-before) slider, scale.vertical.marks-after:not(.marks-before) slider:hover, scale.vertical.marks-after:not(.marks-before) slider:active, scale.vertical.marks-after:not(.marks-before) slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) slider { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider.png"), url("assets/scale-vert-marks-after-slider@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider:disabled { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-disabled.png"), url("assets/scale-vert-marks-after-slider-disabled@2.png")); +} + +scale.vertical.marks-after:not(.marks-before) slider:active { + background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider.png"), url("assets/scale-vert-marks-after-slider@2.png")); +} + +scale.color { + min-height: 0; + min-width: 0; +} + +scale.color.horizontal { + padding: 0 0 12px 0; +} + +scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl) { + margin-bottom: -13.5px; + margin-top: 11.5px; +} + +scale.color.vertical:dir(ltr) { + padding: 0 0 0 12px; +} + +scale.color.vertical:dir(ltr) slider { + margin-left: -13.5px; + margin-right: 11.5px; +} + +scale.color.vertical:dir(rtl) { + padding: 0 12px 0 0; +} + +scale.color.vertical:dir(rtl) slider { + margin-right: -13.5px; + margin-left: 11.5px; +} + +/***************** + * Progress bars * + *****************/ +progressbar { + color: rgba(0, 0, 0, 0.6); + font-size: smaller; +} + +progressbar.horizontal trough, +progressbar.horizontal progress { + min-height: 6px; +} + +progressbar.vertical trough, +progressbar.vertical progress { + min-width: 6px; +} + +progressbar trough { + border-radius: 6px; + background-color: rgba(0, 0, 0, 0.12); +} + +progressbar progress { + border-radius: 6px; + background-color: #3c84f7; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #3c84f7; +} + +progressbar trough.empty progress { + all: unset; +} + +/************* + * Level Bar * + *************/ +levelbar.horizontal block { + min-height: 6px; +} + +levelbar.horizontal.discrete block { + min-width: 36px; +} + +levelbar.horizontal.discrete block:not(:last-child) { + margin-right: 2px; +} + +levelbar.vertical block { + min-width: 6px; +} + +levelbar.vertical.discrete block { + min-height: 36px; +} + +levelbar.vertical.discrete block:not(:last-child) { + margin-bottom: 2px; +} + +levelbar trough { + border-radius: 6px; +} + +levelbar block.low { + background-color: #F4B400; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #3c84f7; +} + +levelbar block.full { + background-color: #0F9D58; +} + +levelbar block.empty { + background-color: rgba(0, 0, 0, 0.12); +} + +/**************** + * Print dialog * +*****************/ +window.dialog.print drawing { + color: rgba(0, 0, 0, 0.87); + background: none; + border: none; + padding: 0; +} + +window.dialog.print drawing paper { + padding: 0; + border: 1px solid rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +window.dialog.print .dialog-action-box { + margin: 12px; +} + +/********** + * Frames * + **********/ +frame, +.frame { + border: 1px solid rgba(0, 0, 0, 0.12); +} + +frame > list, +.frame > list { + border: none; +} + +frame.view, +.frame.view { + border-radius: 6px; +} + +frame.flat, +.frame.flat { + border-style: none; +} + +frame { + border-radius: 6px; +} + +frame > label { + margin: 4px; +} + +frame.flat > border, statusbar frame > border { + border: none; +} + +actionbar > revealer > box { + padding: 6px; + border-spacing: 6px; + box-shadow: inset 0 1px rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + background-clip: border-box; + border: none; +} + +.background.csd box.vertical > actionbar > revealer > box { + border-radius: 0 0 14px 14px; +} + +statusbar { + padding: 6px 18px; +} + +scrolledwindow viewport.frame { + border: none; +} + +stack scrolledwindow.frame viewport.frame list { + border: none; +} + +overshoot.top { + background-image: radial-gradient(farthest-side at top, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at top, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 100% 3%, 100% 50%; + background-repeat: no-repeat; + background-position: top; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.bottom { + background-image: radial-gradient(farthest-side at bottom, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at bottom, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 100% 3%, 100% 50%; + background-repeat: no-repeat; + background-position: bottom; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.left { + background-image: radial-gradient(farthest-side at left, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at left, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 3% 100%, 50% 100%; + background-repeat: no-repeat; + background-position: left; + background-color: transparent; + border: none; + box-shadow: none; +} + +overshoot.right { + background-image: radial-gradient(farthest-side at right, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at right, alpha(currentColor, 0.05), alpha(currentColor, 0)); + background-size: 3% 100%, 50% 100%; + background-repeat: no-repeat; + background-position: right; + background-color: transparent; + border: none; + box-shadow: none; +} + +undershoot.top { + background-color: transparent; + background-image: linear-gradient(to left, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-top: 1px; + background-size: 12px 1px; + background-repeat: repeat-x; + background-origin: content-box; + background-position: left top; + margin: 0 4px; +} + +undershoot.bottom { + background-color: transparent; + background-image: linear-gradient(to left, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-bottom: 1px; + background-size: 12px 1px; + background-repeat: repeat-x; + background-origin: content-box; + background-position: left bottom; + margin: 0 4px; +} + +undershoot.left { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-left: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: left top; + margin: 0 4px; + margin: 4px 0; +} + +undershoot.right { + background-color: transparent; + background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%); + padding-right: 1px; + background-size: 1px 12px; + background-repeat: repeat-y; + background-origin: content-box; + background-position: right top; + margin: 0 4px; + margin: 4px 0; +} + +junction { + border-style: solid none none solid; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; +} + +junction:dir(rtl) { + border-style: solid solid none none; +} + +separator { + min-width: 1px; + min-height: 1px; + background-color: rgba(0, 0, 0, 0.12); +} + +stacksidebar + separator.vertical, +stacksidebar separator.horizontal, button.font separator, button.file separator { + min-width: 0; + min-height: 0; + background-color: transparent; +} + +/********* + * Lists * + *********/ +listview.boxed-list, +list.boxed-list, listview.content:not(.conversation-listbox), +list.content:not(.conversation-listbox) { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(0, 0, 0, 0.12); +} + +listview.boxed-list > row.expander list > row, +list.boxed-list > row.expander list > row, listview.boxed-list > row, +list.boxed-list > row, listview.content:not(.conversation-listbox) > row, +list.content:not(.conversation-listbox) > row { + border-radius: 0; +} + +listview.boxed-list > row.expander list > row:first-child, +list.boxed-list > row.expander list > row:first-child, listview.boxed-list > row:first-child, +list.boxed-list > row:first-child, listview.content:not(.conversation-listbox) > row:first-child, +list.content:not(.conversation-listbox) > row:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +listview.boxed-list > row.expander list > row:last-child, +list.boxed-list > row.expander list > row:last-child, listview.boxed-list > row:last-child, +list.boxed-list > row:last-child, listview.content:not(.conversation-listbox) > row:last-child, +list.content:not(.conversation-listbox) > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +listview.boxed-list > row.expander list > row:only-child, +list.boxed-list > row.expander list > row:only-child, listview.boxed-list > row:only-child, +list.boxed-list > row:only-child, listview.content:not(.conversation-listbox) > row:only-child, +list.content:not(.conversation-listbox) > row:only-child { + border-radius: 6px; +} + +listview.boxed-list > row.expander list > row:focus, +list.boxed-list > row.expander list > row:focus, listview.boxed-list > row:focus, +list.boxed-list > row:focus, listview.content:not(.conversation-listbox) > row:focus, +list.content:not(.conversation-listbox) > row:focus { + box-shadow: inset 0 0 0 1000px alpha(currentColor, 0.08); +} + +listview, +list { + border-color: rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; +} + +listview row, +list row { + padding: 6px; +} + +listview > row.expander, +list > row.expander { + padding: 0px; +} + +listview > row.expander .row-header, +list > row.expander .row-header { + padding: 2px; +} + +listview.boxed-list > row.expander list, +list.boxed-list > row.expander list { + background-color: transparent; + box-shadow: none; + border: none; +} + +list.frame { + border-radius: 6px; +} + +listview.view { + color: rgba(0, 0, 0, 0.87); + background-color: transparent; +} + +popover.menu listview.view { + padding: 0; +} + +popover.menu listview.view > row { + margin-left: 0; + margin-right: 0; +} + +row { + color: rgba(0, 0, 0, 0.6); +} + +columnview.view > header > button, +treeview.view > header > button, row.activatable { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + outline: none; + box-shadow: inset 0 0 0 9999px transparent; +} + +columnview.view > header > button:focus, +treeview.view > header > button:focus, row.activatable:focus { + color: rgba(0, 0, 0, 0.87); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +columnview.view > header > button:hover, +treeview.view > header > button:hover, row.activatable:hover { + color: rgba(0, 0, 0, 0.87); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +columnview.view > header > button.has-open-popup, +treeview.view > header > button.has-open-popup, columnview.view > header > button:active, +treeview.view > header > button:active, row.activatable.has-open-popup, row.activatable:active { + color: rgba(0, 0, 0, 0.87); + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12); +} + +row:selected { + color: inherit; +} + +row:selected image, +row:selected label { + color: rgba(0, 0, 0, 0.87); +} + +row:selected button image, +row:selected button label { + color: inherit; +} + +row:selected:disabled image, +row:selected:disabled label { + color: rgba(0, 0, 0, 0.38); +} + +treeexpander { + border-spacing: 6px; +} + +columnview row:not(:selected) cell editablelabel:not(.editing):focus-within { + outline: 2px solid alpha(currentColor, 0.06); +} + +columnview row:not(:selected) cell editablelabel.editing:focus-within { + outline: 2px solid #3c84f7; +} + +columnview row:not(:selected) cell editablelabel.editing text selection { + color: white; + background-color: #3c84f7; +} + +.rich-list { + /* rich lists usually containing other widgets than just labels/text */ +} + +.rich-list > row { + padding: 9px 12px; + min-height: 32px; + /* should be tall even when only containing a label */ +} + +.rich-list > row > box { + border-spacing: 12px; +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 8px; + border-spacing: 9px; + padding: 9px; + border: none; +} + +.app-notification button.text-button:not(:disabled) { + color: #3c84f7; +} + +.app-notification.frame, +.app-notification border { + border-style: none; +} + +/************* + * Expanders * + *************/ +expander { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + min-width: 16px; + min-height: 16px; + color: rgba(0, 0, 0, 0.6); + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); +} + +expander:dir(rtl) { + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); +} + +expander:hover, expander:active { + color: rgba(0, 0, 0, 0.87); +} + +expander:disabled { + color: rgba(0, 0, 0, 0.26); +} + +expander-widget > box > title { + border-radius: 6px; +} + +expander-widget > box > title:hover > expander { + color: rgba(0, 0, 0, 0.6); +} + +.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 { + padding: 0; + border: 1px solid rgba(0, 0, 0, 0.12); + border-radius: 6px; + color: rgba(0, 0, 0, 0.87); +} + +calendar:disabled { + color: rgba(0, 0, 0, 0.38); +} + +calendar:selected { + border-radius: 6px; +} + +calendar > header { + padding: 3px; + border-bottom: 1px solid rgba(0, 0, 0, 0.12); +} + +calendar > header > button { + min-height: 24px; +} + +calendar > grid { + margin: 3px; +} + +calendar > grid > label { + border-radius: 9999px; + margin: 0; +} + +calendar > grid > label.today:selected { + box-shadow: none; +} + +calendar > grid > label:focus { + outline-style: none; +} + +calendar > grid > label.day-number { + padding: 9px; +} + +calendar > grid > label.day-number.other-month { + color: alpha(currentColor, 0.3); +} + +/*********** + * Dialogs * + ***********/ +window.dialog.message.background { + background-color: #FFFFFF; +} + +window.dialog.message box.dialog-vbox.vertical { + border-spacing: 10px; +} + +window.dialog.message .titlebar { + min-height: 24px; + border-style: none; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.15); + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); +} + +window.dialog.message .titlebar:backdrop { + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.6); +} + +window.dialog.message .dialog-action-area { + margin-top: -6px; +} + +window.dialog.message .dialog-action-area > button, window.dialog.message .dialog-action-area > button:first-child, window.dialog.message .dialog-action-area > button:last-child { + border-radius: 9999px; +} + +window.dialog.message .dialog-action-area > button:not(:last-child) { + margin-right: 6px; +} + +window.dialog.message .dialog-action-area > button:not(:disabled) { + color: #3c84f7; +} + +window.dialog.message .dialog-action-area > button.destructive-action:not(:disabled) { + color: #D93025; +} + +.csd filechooser { + background-color: #FFFFFF; + border-radius: 0 0 14px 14px; +} + +filechooser .dialog-action-box { + border-top: 1px solid rgba(0, 0, 0, 0.12); +} + +filechooser #pathbarbox { + border-bottom: 1px solid rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; +} + +filechooser stack.view { + background-color: transparent; +} + +filechooser stack.view scrolledwindow { + background-color: transparent; + border-radius: 0 0 14px 0; +} + +filechooser stack.view scrolledwindow list { + background-color: transparent; +} + +filechooser stack.view > placesview { + background-color: transparent; +} + +filechooser stack.view > placesview > actionbar, filechooser stack.view > placesview > actionbar > revealer > box { + background-color: transparent; +} + +filechooser stack.view frame > border { + border: none; +} + +.csd filechooser placessidebar { + background: none; + border-bottom-left-radius: 14px; +} + +filechooser actionbar, filechooser actionbar > revealer > box { + background-color: transparent; +} + +filechooserbutton > button > box { + border-spacing: 6px; +} + +filechooserbutton:drop(active) { + box-shadow: none; + border-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; + background-color: #FAFAFA; +} + +.sidebar:not(separator):dir(ltr), .sidebar:not(separator).left, .sidebar:not(separator).left:dir(rtl) { + border-right: 1px solid rgba(0, 0, 0, 0.12); + border-left-style: none; +} + +.sidebar:not(separator):dir(rtl), .sidebar:not(separator).right { + border-left: 1px solid rgba(0, 0, 0, 0.12); + 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 { + padding: 6px; + background-color: #FAFAFA; +} + +stacksidebar row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +stacksidebar row:selected { + background-color: alpha(currentColor, 0.06); + color: rgba(0, 0, 0, 0.87); + font-weight: 500; +} + +stacksidebar row + row { + margin-top: 4px; +} + +stacksidebar row > label { + padding-left: 6px; + padding-right: 6px; + color: inherit; +} + +separator.sidebar { + background-color: rgba(0, 0, 0, 0.12); + border-right: none; +} + +separator.sidebar.selection-mode, .selection-mode separator.sidebar { + background-color: rgba(255, 255, 255, 0.15); +} + +/********************** + * Navigation Sidebar * + **********************/ +.navigation-sidebar { + padding: 6px; + border-right: none; +} + +.navigation-sidebar > row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +.navigation-sidebar > row:hover, .navigation-sidebar > row:focus-visible:focus-within { + background-color: alpha(currentColor, 0.08); +} + +.navigation-sidebar > row:selected { + background-color: alpha(currentColor, 0.06); + color: rgba(0, 0, 0, 0.87); +} + +.navigation-sidebar > row:selected:hover { + background-color: alpha(currentColor, 0.16); +} + +.navigation-sidebar > row:selected:focus-visible:focus-within { + outline: none; + background-color: alpha(currentColor, 0.08); +} + +.navigation-sidebar > row:selected:focus-visible:focus-within:hover { + background-color: alpha(currentColor, 0.16); +} + +.navigation-sidebar > row:disabled { + color: rgba(0, 0, 0, 0.38); +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 0ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(0, 0, 0, 0.6); +} + +row image.sidebar-icon:disabled { + color: rgba(0, 0, 0, 0.26); +} + +placessidebar > viewport.frame { + border-style: none; +} + +placessidebar list { + padding: 1px 0 4px; +} + +placessidebar .navigation-sidebar > row { + min-height: 32px; + margin: -1px 4px -1px 0; + padding: 0; + border-radius: 0 9999px 9999px 0; +} + +placessidebar .navigation-sidebar > row > revealer { + padding: 0 8px 0 16px; +} + +placessidebar .navigation-sidebar > row:selected { + background-color: alpha(currentColor, 0.06); + color: rgba(0, 0, 0, 0.87); + font-weight: 500; +} + +placessidebar .navigation-sidebar > row:disabled { + color: rgba(0, 0, 0, 0.38); +} + +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 { + color: inherit; +} + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar .navigation-sidebar > row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row { + color: #3c84f7; +} + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row image.sidebar-icon { + color: #3c84f7; +} + +placessidebar .navigation-sidebar > row:drop(active) { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms; + box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08); +} + +placesview .server-list-button > image { + transition: 200ms cubic-bezier(0, 0, 0.2, 1); + -gtk-icon-transform: rotate(0turn); +} + +placesview .server-list-button:checked > image { + transition: 200ms cubic-bezier(0, 0, 0.2, 1); + -gtk-icon-transform: rotate(-0.5turn); +} + +placesview > actionbar > revealer > box > label { + 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(rgba(0, 0, 0, 0.12)); + background-size: 1px 1px; + background-clip: content-box; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #FFFFFF; + background-image: image(rgba(0, 0, 0, 0.12)), image(rgba(0, 0, 0, 0.12)); + 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; + border-radius: 6px; +} + +video image.osd { + min-width: 64px; + min-height: 64px; + border-radius: 9999px; + border: none; +} + +/************** + * GtkInfoBar * + **************/ +infobar { + border: none; + margin-bottom: 0; +} + +infobar > revealer > box { + padding: 6px; + border-spacing: 12px; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #FFFFFF; +} + +infobar.info > revealer > box button, infobar.info > revealer > box button.text-button:not(:disabled), infobar.info:hover > revealer > box button, infobar.info:hover > revealer > box button.text-button:not(:disabled), infobar.info:backdrop > revealer > box button, infobar.info:backdrop > revealer > box button.text-button:not(:disabled) { + color: #3c84f7; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #3c84f7; + color: white; +} + +infobar.action > revealer > box button, infobar.action > revealer > box button:hover, infobar.action > revealer > box button:focus, infobar.action > revealer > box button:active, infobar.action > revealer > box button:checked, infobar.action > revealer > box button.text-button:not(:disabled), infobar.action:backdrop > revealer > box button, infobar.action:backdrop > revealer > box button:hover, infobar.action:backdrop > revealer > box button:focus, infobar.action:backdrop > revealer > box button:active, infobar.action:backdrop > revealer > box button:checked, infobar.action:backdrop > revealer > box button.text-button:not(:disabled), infobar.question > revealer > box button, infobar.question > revealer > box button:hover, infobar.question > revealer > box button:focus, infobar.question > revealer > box button:active, infobar.question > revealer > box button:checked, infobar.question > revealer > box button.text-button:not(:disabled), infobar.question:backdrop > revealer > box button, infobar.question:backdrop > revealer > box button:hover, infobar.question:backdrop > revealer > box button:focus, infobar.question:backdrop > revealer > box button:active, infobar.question:backdrop > revealer > box button:checked, infobar.question:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: white; +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #5493f8; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #F4B400; + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box button, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked, infobar.warning > revealer > box button.text-button:not(:disabled), infobar.warning:backdrop > revealer > box button, infobar.warning:backdrop > revealer > box button:hover, infobar.warning:backdrop > revealer > box button:focus, infobar.warning:backdrop > revealer > box button:active, infobar.warning:backdrop > revealer > box button:checked, infobar.warning:backdrop > revealer > box button.text-button:not(:disabled) { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning > revealer > box *:link, infobar.warning:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.warning:hover > revealer > box { + background-color: #ffc00f; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #D93025; + color: white; +} + +infobar.error > revealer > box button, infobar.error > revealer > box button:hover, infobar.error > revealer > box button:focus, infobar.error > revealer > box button:active, infobar.error > revealer > box button:checked, infobar.error > revealer > box button.text-button:not(:disabled), infobar.error:backdrop > revealer > box button, infobar.error:backdrop > revealer > box button:hover, infobar.error:backdrop > revealer > box button:focus, infobar.error:backdrop > revealer > box button:active, infobar.error:backdrop > revealer > box button:checked, infobar.error:backdrop > revealer > box button.text-button:not(:disabled) { + color: white; +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: white; +} + +infobar.error:hover > revealer > box { + background-color: #dd443a; +} + +/************ + * Tooltips * + ************/ +tooltip { + padding: 6px 12px; + box-shadow: none; + border: none; +} + +tooltip.background { + background-color: rgba(52, 52, 52, 0.9); + color: white; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12); + border-radius: 3px; + margin: 2px 6px 8px 6px; + border: none; +} + +tooltip > box { + border-spacing: 6px; +} + +/***************** + * Color Chooser * + *****************/ +colorswatch.top { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.top overlay { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +colorswatch.bottom { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.bottom overlay { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.left, colorswatch:first-child:not(.top) { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.left overlay, colorswatch:first-child:not(.top) overlay { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +colorswatch.right, colorswatch:last-child:not(.bottom) { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +colorswatch.dark { + color: white; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorchooser colorswatch:hover { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: 0 0 0 2px #3c84f7; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; + color: rgba(0, 0, 0, 0.87); +} + +colorswatch#add-color-button:only-child { + border-radius: 6px; +} + +colorswatch#add-color-button overlay { + background-color: rgba(0, 0, 0, 0.04); +} + +colorswatch#add-color-button overlay:hover { + background-color: rgba(0, 0, 0, 0.12); + box-shadow: none; +} + +colorswatch#add-color-button overlay:active { + background-color: rgba(0, 0, 0, 0.26); +} + +colorswatch:disabled { + opacity: 0.5; +} + +colorswatch:disabled overlay { + box-shadow: none; +} + +colorswatch#editor-color-sample { + border-radius: 6px; +} + +colorswatch#editor-color-sample overlay { + border-radius: 6px; +} + +colorswatch#editor-color-sample overlay:hover { + box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -0.6px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); + background-color: #FFFFFF; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15); +} + +/******** + * Misc * + ********/ +.content-view { + background-color: #FFFFFF; +} + +/********************** + * Window Decorations * + **********************/ +window.csd { + transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 14px; + outline-color: rgba(255, 255, 255, 0.15); + outline-offset: -1px; + outline-style: solid; + outline-width: 1px; + box-shadow: 0 8px 6px -5px rgba(0, 0, 0, 0.2), 0 16px 15px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.12), 0 0 36px transparent; +} + +window.csd:backdrop { + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.12), 0 0 36px transparent; +} + +window.csd.popup { + border-radius: 12px; +} + +window.csd.dialog.message { + border-radius: 14px; +} + +.solid-csd window.csd { + margin: 0; + padding: 2px; + border-radius: 0; + background-color: #242424; + border: 1px solid #e0e0e0; +} + +.solid-csd window.csd:backdrop { + background-color: #2C2C2C; +} + +window.csd.maximized, window.csd.fullscreen, window.csd.tiled, window.csd.tiled-top, window.csd.tiled-right, window.csd.tiled-bottom, window.csd.tiled-left { + border-radius: 0; +} + +windowcontrols button:not(.suggested-action):not(.destructive-action) { + min-height: 36px; + min-width: 36px; + padding: 0; + margin: 0 4px; +} + +windowcontrols button.minimize:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:not(.suggested-action):not(.destructive-action), windowcontrols button.close:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + background-color: "transparent"; +} + +windowcontrols button.minimize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.maximize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.close:not(.suggested-action):not(.destructive-action) image { + padding: 0; +} + +windowcontrols button.minimize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.close:hover:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.15); +} + +windowcontrols button.minimize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.close:active:not(.suggested-action):not(.destructive-action) { + color: white; + background-color: alpha(currentColor, 0.2); +} + +windowcontrols button.minimize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.close:backdrop:not(.suggested-action):not(.destructive-action) { + opacity: 0.65; +} + +windowcontrols { + border-spacing: 6px; +} + +windowcontrols:not(.empty).start:dir(ltr), windowcontrols:not(.empty).end:dir(rtl) { + margin-right: 4px; + margin-left: 4px; +} + +windowcontrols:not(.empty).start:dir(rtl), windowcontrols:not(.empty).end:dir(ltr) { + margin-left: 4px; + margin-right: 4px; +} + +.view:selected, iconview:selected, gridview > child:selected, modelbutton.flat:selected, columnview.view:selected, +treeview.view:selected, row:selected, calendar:selected, calendar > grid > label.day-number:selected { + background-color: alpha(currentColor, 0.06); +} + +flowbox > flowboxchild:selected, calendar > grid > label.today { + color: #3c84f7; + background-color: rgba(60, 132, 247, 0.2); +} + +textview text selection:focus, textview text selection, label > selection, +entry > text > selection, spinbutton:not(.vertical) > text > selection, spinbutton.vertical > text > selection, calendar > grid > label.today:selected { + color: white; + background-color: #3c84f7; +} + +.monospace { + font-family: monospace; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #3c84f7; + -gtk-icon-source: -gtk-recolor(url("assets/scalable/cursor-handle-symbolic.svg")); +} + +cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) { + padding-top: 6px; +} + +shortcuts-section { + margin: 20px; +} + +.shortcuts-search-results { + margin: 20px; + border-spacing: 24px; +} + +shortcut { + border-spacing: 6px; +} + +shortcut > .keycap { + min-width: 12px; + min-height: 26px; + margin-top: 2px; + padding-bottom: 2px; + padding-left: 8px; + padding-right: 8px; + border: solid 1px rgba(0, 0, 0, 0.12); + border-radius: 7px; + box-shadow: inset 0 -2px rgba(0, 0, 0, 0.12); + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.87); + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #3c84f7; +} + +stackswitcher { + min-height: 0; + padding: 3px; + margin: 6px 0; + border-radius: 9px; + background-color: rgba(0, 0, 0, 0.04); + border: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) { + margin: 0 0; + background-color: transparent; + border-radius: 6px; + padding: 3px 10px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action).text-button { + min-width: 100px; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):focus:not(:hover):not(:checked) { + box-shadow: none; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + background-color: white; + color: rgba(0, 0, 0, 0.87); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06); +} + +stackswitcher button.text-button { + min-width: 100px; +} + +stackswitcher button.circular, +stackswitcher button.text-button.circular { + min-width: 36px; + min-height: 36px; + padding: 0; +} + +/************* + * App Icons * + *************/ +.lowres-icon { + -gtk-icon-shadow: none; +} + +.icon-dropshadow { + -gtk-icon-shadow: none; +} + +/********* + * Emoji * + *********/ +popover.emoji-picker { + padding: 0; +} + +popover.emoji-picker > contents { + padding: 0; +} + +.emoji-searchbar { + padding: 6px; + border-spacing: 6px; + border-bottom: 1px solid rgba(0, 0, 0, 0.12); + background: none; +} + +.emoji-searchbar entry text { + background: none; + box-shadow: none; +} + +.emoji-toolbar { + padding: 0; + border-spacing: 3px; + border-top: 1px solid rgba(0, 0, 0, 0.12); + background: none; +} + +button.emoji-section { + margin: 0; + padding: 6px; + border-radius: 6px; +} + +button.emoji-section:checked { + color: #3c84f7; +} + +popover.emoji-picker emoji { + font-size: x-large; + padding: 6px; + transition: all 0ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 6px; +} + +popover.emoji-picker emoji:focus, popover.emoji-picker emoji:hover { + background: alpha(currentColor, 0.08); +} + +emoji-completion-row { + min-height: 28px; + padding: 0 12px; +} + +emoji-completion-row > box { + border-spacing: 6px; + padding: 2px 6px; +} + +emoji-completion-row:focus, emoji-completion-row:hover, +emoji-completion-row emoji:hover, emoji-completion-row emoji:focus { + background-color: alpha(currentColor, 0.08); + color: rgba(0, 0, 0, 0.87); +} + +popover.entry-completion > contents { + padding: 0; +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color rgba(0, 0, 0, 0.87); +/* +text color for entries, views and content in general */ +@define-color theme_text_color rgba(0, 0, 0, 0.87); +/* +widget base background color */ +@define-color theme_bg_color #FFFFFF; +/* +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 #3c84f7; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color white; +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #FFFFFF; +/* +text foreground color of insensitive widgets */ +@define-color insensitive_fg_color rgba(0, 0, 0, 0.38); +/* +insensitive text widgets and the like base background color */ +@define-color insensitive_base_color #FAFAFA; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color rgba(0, 0, 0, 0.87); +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color rgba(0, 0, 0, 0.87); +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #FFFFFF; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #FFFFFF; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #3c84f7; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color white; +/* +insensitive color on backdrop windows */ +@define-color unfocused_insensitive_color rgba(0, 0, 0, 0.38); +/* +widgets main borders color */ +@define-color borders rgba(0, 0, 0, 0.12); +/* +widgets main borders color on backdrop windows */ +@define-color unfocused_borders rgba(0, 0, 0, 0.12); +/* +these are pretty self explicative */ +@define-color warning_color #F4B400; +@define-color error_color #D93025; +@define-color success_color #0F9D58; +/* +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 white; +@define-color wm_unfocused_title rgba(255, 255, 255, 0.7); +@define-color wm_highlight rgba(255, 255, 255, 0.1); +@define-color wm_bg #242424; +@define-color wm_unfocused_bg #2C2C2C; +/* +FIXME this is really an API */ +@define-color content_view_bg #FFFFFF; +@define-color placeholder_text_color #666666; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #FFFFFF; +@define-color budgie_tasklist_indicator_color white; +@define-color budgie_tasklist_indicator_color_active white; +@define-color budgie_tasklist_indicator_color_active_window #999999; +@define-color budgie_tasklist_indicator_color_attention #F4B400; +@define-color STRAWBERRY_100 #FF9262; +@define-color STRAWBERRY_300 #FF793E; +@define-color STRAWBERRY_500 #F15D22; +@define-color STRAWBERRY_700 #CF3B00; +@define-color STRAWBERRY_900 #AC1800; +@define-color ORANGE_100 #FFDB91; +@define-color ORANGE_300 #FFCA40; +@define-color ORANGE_500 #FAA41A; +@define-color ORANGE_700 #DE8800; +@define-color ORANGE_900 #C26C00; +@define-color BANANA_100 #FFFFA8; +@define-color BANANA_300 #FFFA7D; +@define-color BANANA_500 #FFCE51; +@define-color BANANA_700 #D1A023; +@define-color BANANA_900 #A27100; +@define-color LIME_100 #A2F3BE; +@define-color LIME_300 #8ADBA6; +@define-color LIME_500 #73C48F; +@define-color LIME_700 #479863; +@define-color LIME_900 #1C6D38; +@define-color BLUEBERRY_100 #94A6FF; +@define-color BLUEBERRY_300 #6A7CE0; +@define-color BLUEBERRY_500 #3F51B5; +@define-color BLUEBERRY_700 #213397; +@define-color BLUEBERRY_900 #031579; +@define-color GRAPE_100 #D25DE6; +@define-color GRAPE_300 #B84ACB; +@define-color GRAPE_500 #9C27B0; +@define-color GRAPE_700 #830E97; +@define-color GRAPE_900 #6A007E; +@define-color COCOA_100 #9F9792; +@define-color COCOA_300 #7B736E; +@define-color COCOA_500 #574F4A; +@define-color COCOA_700 #463E39; +@define-color COCOA_900 #342C27; +@define-color SILVER_100 #EEE; +@define-color SILVER_300 #CCC; +@define-color SILVER_500 #AAA; +@define-color SILVER_700 #888; +@define-color SILVER_900 #666; +@define-color SLATE_100 #888; +@define-color SLATE_300 #666; +@define-color SLATE_500 #444; +@define-color SLATE_700 #222; +@define-color SLATE_900 #111; +@define-color BLACK_100 #474341; +@define-color BLACK_300 #403C3A; +@define-color BLACK_500 #393634; +@define-color BLACK_700 #33302F; +@define-color BLACK_900 #2B2928; diff --git a/Cutefish/gtk-4.0/thumbnail.png b/Cutefish/gtk-4.0/thumbnail.png new file mode 100644 index 0000000..cce29c2 Binary files /dev/null and b/Cutefish/gtk-4.0/thumbnail.png differ diff --git a/Cutefish/index.theme b/Cutefish/index.theme new file mode 100644 index 0000000..e960c84 --- /dev/null +++ b/Cutefish/index.theme @@ -0,0 +1,5 @@ +[Desktop Entry] +Type=X-GNOME-Metatheme +Name=Cutefish +Comment=CutefishOS Gtk Theme +Encoding=UTF-8 diff --git a/README.md b/README.md index 6477b25..21acdb8 100644 --- a/README.md +++ b/README.md @@ -1 +1,5 @@ -# gtk-themes \ No newline at end of file +# Gtk Themes + +## License + +This project has been licensed by GPLv3. diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..962a989 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,5 @@ +cutefish-gtk-themes (0.6) UNRELEASED; urgency=low + + * Initial release + + -- CutefishOS Sun, 21 Nov 2021 13:52:29 +0800 \ No newline at end of file diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..f11c82a --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +9 \ No newline at end of file diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..6e2fcab --- /dev/null +++ b/debian/control @@ -0,0 +1,13 @@ +Source: cutefish-gtk-themes +Section: gnome +Priority: optional +Maintainer: CutefishOS +Build-Depends: +Standards-Version: 3.9.6 +Homepage: https://cutefishos.com +Vcs-Git: https://github.com/cutefishos + +Package: cutefish-gtk-themes +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: CutefishOS GTK Themes \ No newline at end of file diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..0442430 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,18 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: Colloid-gtk-theme +Source: cutefish-gtk-themes + +Files: * +Copyright: 2021 vinceliuice +License: GPLv3 + 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 + 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 . \ No newline at end of file diff --git a/debian/install b/debian/install new file mode 100644 index 0000000..be5affd --- /dev/null +++ b/debian/install @@ -0,0 +1,3 @@ +Cutefish /usr/share/themes +Cutefish-dark /usr/share/themes +Cutefish-light /usr/share/themes \ No newline at end of file diff --git a/debian/rules b/debian/rules new file mode 100644 index 0000000..c750465 --- /dev/null +++ b/debian/rules @@ -0,0 +1,24 @@ +#!/usr/bin/make -f +# See debhelper(7) (uncomment to enable) +# output every command that modifies files on the build system. +#export DH_VERBOSE = 1 + + +# see FEATURE AREAS in dpkg-buildflags(1) +#export DEB_BUILD_MAINT_OPTIONS = hardening=+all + +# see ENVIRONMENT in dpkg-buildflags(1) +# package maintainers to append CFLAGS +#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic +# package maintainers to append LDFLAGS +#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed + + +%: + dh $@ + + +# dh_make generated override targets +# This is example for Cmake (See https://bugs.debian.org/641051 ) +#override_dh_auto_configure: +# dh_auto_configure -- # -DCMAKE_LIBRARY_PATH=$(DEB_HOST_MULTIARCH) \ No newline at end of file diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt)