diff options
116 files changed, 18913 insertions, 575 deletions
@@ -7,11 +7,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1692787545, - "narHash": "sha256-07MW3+hYXARr2oJHnvHJ+Af3UizRYQOfquemYSOa5Aw=", + "lastModified": 1698259861, + "narHash": "sha256-NaqlGTqSVOkJPs7m6wb2IBk5gCsOhP/r6t94oB3zlpE=", "owner": "nix-community", "repo": "emacs-overlay", - "rev": "05a1511966eeb5218d55f921146abff21aad1684", + "rev": "5bf36bac3904c4138ffc2eb85523d2ffb60ef010", "type": "github" }, "original": { @@ -20,16 +20,34 @@ "type": "github" } }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1696343447, + "narHash": "sha256-B2xAZKLkkeRFG5XcHHSXXcP7To9Xzr59KXeZiRf4vdQ=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "c9afaba3dfa4085dbd2ccb38dfade5141e33d9d4", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, "flake-utils": { "inputs": { "systems": "systems" }, "locked": { - "lastModified": 1689068808, - "narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=", + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", "owner": "numtide", "repo": "flake-utils", - "rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", "type": "github" }, "original": { @@ -45,30 +63,115 @@ ] }, "locked": { - "lastModified": 1692099905, - "narHash": "sha256-/pSusGhmIdSdAaywQRFA5dVbfdIzlWQTecM+E46+cJ0=", + "lastModified": 1698250431, + "narHash": "sha256-qs2gTeH4wpnWPO6Oi6sOhp2IhG0i0DzcnrJxIY3/CP8=", "owner": "nix-community", "repo": "home-manager", - "rev": "2a6679aa9cc3872c29ba2a57fe1b71b3e3c5649f", + "rev": "09587fbbc6a669f7725613e044c2577dc5d43ab5", "type": "github" }, "original": { "owner": "nix-community", - "ref": "release-23.05", "repo": "home-manager", "type": "github" } }, + "hyprland": { + "inputs": { + "hyprland-protocols": "hyprland-protocols", + "nixpkgs": [ + "nixpkgs" + ], + "systems": "systems_2", + "wlroots": "wlroots", + "xdph": "xdph" + }, + "locked": { + "lastModified": 1698269894, + "narHash": "sha256-fnBONvZkJROUyMKBR5w+YeIwhRQnC5kXRQi4hyEWct0=", + "owner": "hyprwm", + "repo": "Hyprland", + "rev": "b0b88a63b6d17b759a85c28cab29c5986fa6e3ff", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "Hyprland", + "type": "github" + } + }, + "hyprland-protocols": { + "inputs": { + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1691753796, + "narHash": "sha256-zOEwiWoXk3j3+EoF3ySUJmberFewWlagvewDRuWYAso=", + "owner": "hyprwm", + "repo": "hyprland-protocols", + "rev": "0c2ce70625cb30aef199cb388f99e19a61a6ce03", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprland-protocols", + "type": "github" + } + }, + "nix-gaming": { + "inputs": { + "flake-parts": "flake-parts", + "nixpkgs": "nixpkgs_2" + }, + "locked": { + "lastModified": 1698109854, + "narHash": "sha256-Vg+LytTlOpgO0dWZoS/CsYCNQllG0p0I+XLWrkRrU8E=", + "owner": "fufexan", + "repo": "nix-gaming", + "rev": "5e8f1c9ae134b459475705a2eb9b81e6dc667e43", + "type": "github" + }, + "original": { + "owner": "fufexan", + "repo": "nix-gaming", + "type": "github" + } + }, "nixpkgs": { "locked": { - "lastModified": 1692638711, - "narHash": "sha256-J0LgSFgJVGCC1+j5R2QndadWI1oumusg6hCtYAzLID4=", + "lastModified": 1697723726, + "narHash": "sha256-SaTWPkI8a5xSHX/rrKzUe+/uVNy6zCGMXgoeMb7T9rg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "7c9cc5a6e5d38010801741ac830a3f8fd667a7a0", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-lib": { + "locked": { + "dir": "lib", + "lastModified": 1696019113, + "narHash": "sha256-X3+DKYWJm93DRSdC5M6K5hLqzSya9BjibtBsuARoPco=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "91a22f76cd1716f9d0149e8a5c68424bb691de15", + "rev": "f5892ddac112a1e9b3612c39af1b72987ee5783a", "type": "github" }, "original": { + "dir": "lib", "owner": "NixOS", "ref": "nixos-unstable", "repo": "nixpkgs", @@ -77,11 +180,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1692698134, - "narHash": "sha256-YtMmZWR/dlTypOcwiZfZTMPr3tj9fwr05QTStfSyDSg=", + "lastModified": 1697957990, + "narHash": "sha256-LlyEQ4z1immaiZV+MQMUXM3KpNoRY/xZVm8mmN5j3yg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a16f7eb56e88c8985fcc6eb81dabd6cade4e425a", + "rev": "b3ddf9649fdac7db15aeea95cb3114c13594d265", "type": "github" }, "original": { @@ -93,39 +196,43 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1692638711, - "narHash": "sha256-J0LgSFgJVGCC1+j5R2QndadWI1oumusg6hCtYAzLID4=", + "lastModified": 1697886341, + "narHash": "sha256-AdE67xPty9M9wn36nPVp6aDntIdigrs7UbyaGv1VAaM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "91a22f76cd1716f9d0149e8a5c68424bb691de15", + "rev": "44881e03af1c730cbb1d72a4d41274a2c957813a", "type": "github" }, "original": { - "id": "nixpkgs", - "ref": "nixos-unstable", - "type": "indirect" + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" } }, - "nur": { + "nixpkgs_3": { "locked": { - "lastModified": 1692104222, - "narHash": "sha256-l83U8kOwBz4TzTjvcP4SK/dwpMtQFIMHF2Hm0/gwQ8E=", - "path": "/nix/store/fk5a7zfpx2k5h71ypvaczjg7ccx24a3r-source", - "rev": "0fe703eb360c0b8ddf11d5019097f4d83f1bccd1", - "type": "path" + "lastModified": 1698134075, + "narHash": "sha256-foCD+nuKzfh49bIoiCBur4+Fx1nozo+4C/6k8BYk4sg=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "8efd5d1e283604f75a808a20e6cde0ef313d07d4", + "type": "github" }, "original": { - "id": "nur", - "type": "indirect" + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" } }, "nurpkgs": { "locked": { - "lastModified": 1692809195, - "narHash": "sha256-eGYPC2xz2rB6lCsE3lcCeskVo0cePyTNDExviZZU11E=", + "lastModified": 1698270365, + "narHash": "sha256-vky/kilk/iTqWrohUtfYHw2R4QkEFGO3M+EiW2OhALg=", "owner": "nix-community", "repo": "NUR", - "rev": "1c9ad8e64530d2e3d3315055e13640153a354318", + "rev": "2c93895fe54162b5799006d185037573d4cda2df", "type": "github" }, "original": { @@ -138,8 +245,9 @@ "inputs": { "emacs-overlay": "emacs-overlay", "home-manager": "home-manager", - "nixpkgs": "nixpkgs_2", - "nur": "nur", + "hyprland": "hyprland", + "nix-gaming": "nix-gaming", + "nixpkgs": "nixpkgs_3", "nurpkgs": "nurpkgs" } }, @@ -157,6 +265,69 @@ "repo": "default", "type": "github" } + }, + "systems_2": { + "locked": { + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "owner": "nix-systems", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default-linux", + "type": "github" + } + }, + "wlroots": { + "flake": false, + "locked": { + "host": "gitlab.freedesktop.org", + "lastModified": 1697909146, + "narHash": "sha256-jU0I6FoCKnj4zIBL4daosFWh81U1fM719Z6cae8PxSY=", + "owner": "wlroots", + "repo": "wlroots", + "rev": "47bf87ade2bd32395615a385ebde1fefbcdf79a2", + "type": "gitlab" + }, + "original": { + "host": "gitlab.freedesktop.org", + "owner": "wlroots", + "repo": "wlroots", + "rev": "47bf87ade2bd32395615a385ebde1fefbcdf79a2", + "type": "gitlab" + } + }, + "xdph": { + "inputs": { + "hyprland-protocols": [ + "hyprland", + "hyprland-protocols" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1697981233, + "narHash": "sha256-y8q4XUwx+gVK7i2eLjfR32lVo7TYvEslyzrmzYEaPZU=", + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "rev": "22e7a65ff9633e1dedfa5317fdffc49f68de2ff2", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "type": "github" + } } }, "root": "root", @@ -3,14 +3,14 @@ inputs = { # Nixpkgs - nixpkgs.url = "nixpkgs/nixos-unstable"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; # You can access packages and modules from different nixpkgs revs # at the same time. Here's an working example: # Also see the 'unstable-packages' overlay at 'overlays/default.nix'. # Home manager home-manager = { - url = "github:nix-community/home-manager/release-23.05"; + url = "github:nix-community/home-manager/"; inputs.nixpkgs.follows = "nixpkgs"; }; @@ -19,10 +19,16 @@ inputs.nixpkgs.follows = "nixpkgs"; }; + hyprland = { + url = github:hyprwm/Hyprland; + inputs.nixpkgs.follows = "nixpkgs"; + }; + nix-gaming.url = "github:fufexan/nix-gaming"; + emacs-overlay.url = "github:nix-community/emacs-overlay"; }; - outputs = { self, nixpkgs, home-manager, nur, ... }@inputs: + outputs = { self, nixpkgs, home-manager, nurpkgs, hyprland, ... }@inputs: let inherit (self) outputs; forAllSystems = nixpkgs.lib.genAttrs [ @@ -46,7 +52,7 @@ ); # Your custom packages and modifications, exported as overlays - overlays = import ./overlays { inherit inputs; }; + overlays = import ./overlays { inherit inputs outputs; }; # Reusable nixos modules you might want to export # These are usually stuff you would upstream into nixpkgs nixosModules = import ./modules/nixos; @@ -62,7 +68,7 @@ modules = [ # > Our main nixos configuration file < ./nixos/configuration.nix - nur.nixosModules.nur + nurpkgs.nixosModules.nur ]; }; }; diff --git a/home-manager/home.nix b/home-manager/home.nix index 4bbf9ce..f83d8a8 100644 --- a/home-manager/home.nix +++ b/home-manager/home.nix @@ -5,69 +5,65 @@ let homeDirectory = "/home/${username}"; configHome = "${homeDirectory}/.config"; sysPkgs = with pkgs; [ - ripgrep fd tldr - unzip wget htop jq bat - rustup - python3Full - silver-searcher + python311 fzf wineWowPackages.full wineWowPackages.fonts winetricks - pamixer nix-prefetch-scripts libtool + bluetuith + steam-run ]; yeahGamingPkgs = with pkgs; [ + vulkan-tools vkd3d - nvtop-nvidia dxvk lutris - steam mangohud gamemode + opentabletdriver + bottles ]; defaultPkgs = with pkgs; [ firefox - minicava - droidcam source-code-pro - pokemon-colorscripts-mac + pokemon-colorscripts kitty - libreoffice telegram-desktop - feh - betterlockscreen xdragon - obsidian - xclip - vkdt transmission-gtk rubik - obsidian osu-lazer - spotify figma-linux easyeffects - darktable + # darktable + obs-studio ]; - pythonPkgs = with pkgs.python311Packages; [ - python-lsp-server - pyls-flake8 - python-lsp-black + nonListImports = [ + inputs.hyprland.homeManagerModules.default + ./themes ]; + imports = builtins.concatMap import [ + ./programs + ./services + ./wm + ] ++ nonListImports; + in { + inherit imports; + home = { inherit username homeDirectory; stateVersion = "23.05"; - packages = defaultPkgs ++ pythonPkgs ++ yeahGamingPkgs ++ sysPkgs; + packages = defaultPkgs ++ yeahGamingPkgs ++ sysPkgs; }; xdg = { @@ -77,9 +73,4 @@ in programs.home-manager.enable = true; - imports = builtins.concatMap import [ - ./programs - ./services - ./wm - ]; } diff --git a/home-manager/programs/default.nix b/home-manager/programs/default.nix index f819054..4725825 100644 --- a/home-manager/programs/default.nix +++ b/home-manager/programs/default.nix @@ -1,15 +1,5 @@ let more = { pkgs, ... }: { - programs = { - kitty = { - enable = true; - font.name = "Source Code Pro"; - font.size = 11.3; - theme = "Rosé Pine Moon"; - shellIntegration.enableFishIntegration = true; - extraConfig = "cursor_shape underline"; - }; - }; }; in [ @@ -18,5 +8,6 @@ in ./rofi ./emacs ./ranger - more + ./waybar + ./kitty ] diff --git a/home-manager/programs/emacs/config.org b/home-manager/programs/emacs/config.org index f9938ce..a21da11 100644 --- a/home-manager/programs/emacs/config.org +++ b/home-manager/programs/emacs/config.org @@ -1,4 +1,4 @@ -#+TITLE: spl3g's Emacs config +#+Title: spl3g's Emacs config #+AUTHOR: spl3g #+STARTUP: showeverything #+PROPERTY: header-args :tangle init.el @@ -11,6 +11,7 @@ - [[#meow-mode][Meow mode]] - [[#general-keybindings][General keybindings]] - [[#gui-tweaks][GUI tweaks]] + - [[#disable-gui-shit][Disable gui shit]] - [[#fonts][Fonts]] - [[#display-line-numbers][Display line numbers]] - [[#theme][Theme]] @@ -18,28 +19,46 @@ - [[#modeline][Modeline]] - [[#smooth-scroll][Smooth scroll]] - [[#dashboard][Dashboard]] - - [[#popper][Popper]] + - [[#disable-ring-bell][Disable ring-bell]] + - [[#indent-guide][Indent guide]] + - [[#misc][Misc]] - [[#org-mode][Org mode]] - [[#enabling-toc][Enabling toc]] - [[#org-bullets][Org bullets]] - [[#auto-tangle][Auto-tangle]] + - [[#org-download][Org-download]] + - [[#direnv][Direnv]] - [[#better-ux][Better UX]] - [[#vertico][Vertico]] - [[#consult][Consult]] - [[#treemacs][Treemacs]] + - [[#pairs][Pairs]] + - [[#debugging][Debugging]] + - [[#move-lines][Move lines]] + - [[#truncate-lines][Truncate lines]] +- [[#eat-terminal][EAT terminal]] + - [[#eat][Eat]] - [[#lsp][LSP]] - [[#languages][Languages]] - - [[#corfu--cape][Corfu + cape]] + - [[#corfu][Corfu]] - [[#flycheck][Flycheck]] + - [[#tree-sitter][Tree-sitter]] + - [[#snippets][Snippets]] +- [[#additional-apps][Additional apps]] + - [[#telegram-lol][Telegram lol]] + - [[#magit][Magit]] + - [[#exwm][EXWM]] +- [[#dired][Dired]] + - [[#bindings][Bindings]] + - [[#icons-1][Icons]] * Progs to load first ** use-package -every package is installed by nix and configured by use-package #+begin_src emacs-lisp (require 'use-package) (eval-and-compile (setq use-package-always-ensure t - use-package-expand-minimally t)) + use-package-expand-minimally t)) #+end_src ** Meow mode #+begin_src emacs-lisp @@ -131,8 +150,7 @@ every package is installed by nix and configured by use-package '("z" . meow-pop-selection) '("'" . repeat) '("<escape>" . ignore))) - (setq meow-use-cursor-position-hack t - meow-use-enhanced-selection-effect t) + (setq meow-use-enhanced-selection-effect t) (meow-setup) (meow-global-mode 1)) #+end_src @@ -155,40 +173,52 @@ every package is installed by nix and configured by use-package "," '(consult-buffer :wk "Switch to buffer") "." '(find-file :wk "Find file") ;; Splits - "w" '(:ignore t :wk "Evil splits") + "w" '(:ignore t :wk "Splits") "wv" '(split-window-right :wk "Split vertical") "ws" '(split-window-below :wk "Split") "ww" '(other-window :wk "Cycle throug windows") "wc" '(delete-window :wk "Close window") "wd" '(delete-window :wk "Close window") + "wl" '(evil-window-right :wk "") + "wj" '(evil-window-down :wk "") + "wk" '(evil-window-up :wk "") + "wh" '(evil-window-left :wk "") + "wo" '(delete-other-windows :wk "") ;; Files "f" '(:ignore t :wk "Files") "fr" '(consult-recent-file :wk "Resent files") - "fc" '((lambda () (interactive) (find-file "~/.config/emacs/init.el")) :wk "Edit emacs config") + "fc" '((lambda () (interactive) (find-file "~/.nixfiles/home-manager/programs/emacs/config.org")) :wk "Edit emacs config") "fu" '(sudo-edit-find-file :wk "Sudo find file") "fU" '(sudo-edit :wk "Sudo edit file") - ;; Quiting - "q" '(:ignore t :wk "Quiting") - "qq" '(:ignore t :wk "Quit TBD") - "qr" '(:ignore t :wk "Restart TBD") - "qe" '(eval-buffer :wk "Eval buffer") - "r" '(reload-init-file :wk "Reload config") - "l" '(lsp-keymap-prefix :wk "LSP"))) + "l" '(lsp-keymap-prefix :wk "LSP") + ;; Opening.. things + "o" '(:ignore t) + "ot" '(eat-toggle :wk "Eat terminal"))) #+end_src + * GUI tweaks +** Disable gui shit +#+begin_src emacs-lisp + (defun spl3g/disable-scroll-bars (frame) + (modify-frame-parameters frame + '((vertical-scroll-bars . nil) + (horizontal-scroll-bars . nil)))) + (add-hook 'after-make-frame-functions 'spl3g/disable-scroll-bars) +#+end_src ** Fonts #+begin_src emacs-lisp + (setq default-frame-alist '((font . "Source Code Pro"))) (set-face-attribute 'default nil :font "Source Code Pro" - :height 113 + :height 110 :weight 'medium) (set-face-attribute 'fixed-pitch nil :font "Source Code Pro" - :height 113 + :height 110 :weight 'medium) (set-face-attribute 'variable-pitch nil :font "Rubik" - :height 113 + :height 110 :weight 'medium) (set-face-attribute 'font-lock-comment-face nil :slant 'italic) @@ -197,8 +227,8 @@ every package is installed by nix and configured by use-package #+end_src ** Display line numbers #+begin_src emacs-lisp -(global-display-line-numbers-mode 1) -(global-visual-line-mode t) +(add-hook 'prog-mode-hook 'display-line-numbers-mode) +(add-hook 'prog-mode-hook 'visual-line-mode) #+end_src ** Theme @@ -221,11 +251,13 @@ every package is installed by nix and configured by use-package ** Modeline #+begin_src emacs-lisp - (use-package mood-line - :init - (mood-line-mode) + (use-package doom-modeline + :init (doom-modeline-mode 1) :config - (setq mood-line-glyph-alist mood-line-glyphs-unicode)) + (setq doom-modeline-height 35 ;; sets modeline height + doom-modeline-bar-width 5 ;; sets right bar width + doom-modeline-persp-name t ;; adds perspective name to modeline + doom-modeline-persp-icon t)) ;; adds folder icon next to persp name #+end_src ** Smooth scroll @@ -243,27 +275,27 @@ every package is installed by nix and configured by use-package (setq initial-buffer-choice (lambda () (get-buffer-create "*dashboard*"))) (setq dashboard-banner-logo-title "Yep, it's emacs, not vim") (setq dashboard-startup-banner 'logo) - (setq dashboard-center-content t)) + (setq dashboard-center-content t) + (add-to-list 'dashboard-item-generators '(config . dashboard-open-config)) + (setq dashboard-items '((recents . 5) + (agenda . 5)))) #+end_src -** Popper +** Disable ring-bell #+begin_src emacs-lisp - (use-package popper - :ensure t ; or :straight t - :bind (("C-`" . popper-toggle-latest) - ("M-`" . popper-cycle) - ("C-M-`" . popper-toggle-type)) - :init - (setq popper-reference-buffers - '("\\*Messages\\*" - "Output\\*$" - "\\*Async Shell Command\\*" - help-mode - "^\\*vterm.*\\*$" vterm-mode - compilation-mode)) - (popper-mode +1) - (popper-echo-mode +1)) + (setq ring-bell-function 'ignore) +#+end_src +** Indent guide +#+begin_src emacs-lisp + (use-package indent-guide + :hook (prog-mode . indent-guide-mode)) +#+end_src +** Misc +#+begin_src emacs-lisp + (setq window-resize-pixelwise t) + (setq frame-resize-pixelwise t) + (save-place-mode t) + (defalias 'yes-or-no #'y-or-n-p) #+end_src - * Org mode #+begin_src emacs-lisp (add-hook 'org-mode-hook 'org-indent-mode) @@ -272,61 +304,75 @@ every package is installed by nix and configured by use-package ** Enabling toc #+begin_src emacs-lisp - (use-package toc-org) - (add-hook 'org-mode-hook 'toc-org-mode) + (use-package toc-org + :init (add-hook 'org-mode-hook 'toc-org-enable)) #+end_src ** Org bullets #+begin_src emacs-lisp - (use-package org-bullets) - (add-hook 'org-mode-hook 'org-bullets-mode) + (use-package org-bullets + :init (add-hook 'org-mode-hook (lambda () (org-bullets-mode 1)))) #+end_src ** Auto-tangle #+begin_src emacs-lisp - (use-package org-auto-tangle) - (add-hook 'org-mode-hook 'org-auto-tangle-mode) + (use-package org-auto-tangle + :init (add-hook 'org-mode-hook 'org-auto-tangle-mode)) +#+end_src +** Org-download +#+begin_src emacs-lisp + (use-package org-download + :hook (dired-mode-hook . org-download-enable)) +#+end_src +** Direnv +#+begin_src emacs-lisp + (use-package direnv + :config + (direnv-mode)) #+end_src * Better UX ** Vertico #+begin_src emacs-lisp - (use-package vertico + (use-package vertico + :init + (vertico-mode) + :bind (:map vertico-map + ("M-j" . vertico-next) + ("M-k" . vertico-previous)) + :config + (savehist-mode 1)) + (use-package emacs :init - (vertico-mode) - :config - (savehist-mode 1)) - (use-package emacs - :init - ;; Add prompt indicator to `completing-read-multiple'. - ;; We display [CRM<separator>], e.g., [CRM,] if the separator is a comma. - (defun crm-indicator (args) - (cons (format "[CRM%s] %s" - (replace-regexp-in-string - "\\`\\[.*?]\\*\\|\\[.*?]\\*\\'" "" - crm-separator) - (car args)) - (cdr args))) - (advice-add #'completing-read-multiple :filter-args #'crm-indicator) - - ;; Do not allow the cursor in the minibuffer prompt - (setq minibuffer-prompt-properties - '(read-only t cursor-intangible t face minibuffer-prompt)) - (add-hook 'minibuffer-setup-hook #'cursor-intangible-mode) - - ;; Emacs 28: Hide commands in M-x which do not work in the current mode. - ;; Vertico commands are hidden in normal buffers. - ;; (setq read-extended-command-predicate - ;; #'command-completion-default-include-p) - - ;; Enable recursive minibuffers - (setq enable-recursive-minibuffers t)) + ;; Add prompt indicator to `completing-read-multiple'. + ;; We display [CRM<separator>], e.g., [CRM,] if the separator is a comma. + (defun crm-indicator (args) + (cons (format "[CRM%s] %s" + (replace-regexp-in-string + "\\`\\[.*?]\\*\\|\\[.*?]\\*\\'" "" + crm-separator) + (car args)) + (cdr args))) + (advice-add #'completing-read-multiple :filter-args #'crm-indicator) + + ;; Do not allow the cursor in the minibuffer prompt + (setq minibuffer-prompt-properties + '(read-only t cursor-intangible t face minibuffer-prompt)) + (add-hook 'minibuffer-setup-hook #'cursor-intangible-mode) + + ;; Emacs 28: Hide commands in M-x which do not work in the current mode. + ;; Vertico commands are hidden in normal buffers. + ;; (setq read-extended-command-predicate + ;; #'command-completion-default-include-p) + + ;; Enable recursive minibuffers + (setq enable-recursive-minibuffers t)) #+end_src *** Ordeless #+begin_src emacs-lisp (use-package orderless :init (setq completion-styles '(orderless basic) - completion-category-defaults nil - completion-category-overrides '((file (styles partial-completion))))) + completion-category-defaults nil + completion-category-overrides '((file (styles partial-completion))))) #+end_src *** Marginalia #+begin_src emacs-lisp @@ -468,57 +514,156 @@ every package is installed by nix and configured by use-package #+begin_src emacs-lisp (use-package treemacs-all-the-icons) #+end_src +** Pairs +#+begin_src emacs-lisp + (use-package smartparens + :init (smartparens-global-mode) + :hook (prog-mode-hook . turn-on-smartparens-strict-mode) + :config + ;; Snitched from doom + (let ((unless-list '(sp-point-before-word-p + sp-point-after-word-p + sp-point-before-same-p))) + (sp-pair "'" nil :unless unless-list) + (sp-pair "\"" nil :unless unless-list)) + (dolist (brace '("(" "{" "[")) + (sp-pair brace nil + :post-handlers '(("||\n[i]" "RET") ("| " "SPC")) + :unless '(sp-point-before-word-p sp-point-before-same-p))) + (sp-local-pair sp-lisp-modes "(" ")" :unless '(:rem sp-point-before-same-p)) + (sp-local-pair sp-lisp-modes "(" ")" :unless '(:rem sp-point-before-same-p)) + + ;; Major-mode specific fixes + (sp-local-pair 'ruby-mode "{" "}" + :pre-handlers '(:rem sp-ruby-pre-handler) + :post-handlers '(:rem sp-ruby-post-handler)) + + ;; Don't eagerly escape Swift style string interpolation + (sp-local-pair 'swift-mode "\\(" ")" :when '(sp-in-string-p)) + + ;; Don't do square-bracket space-expansion where it doesn't make sense to + (sp-local-pair '(emacs-lisp-mode org-mode markdown-mode gfm-mode) + "[" nil :post-handlers '(:rem ("| " "SPC"))) + + ;; Reasonable default pairs for HTML-style comments + (sp-local-pair (append sp--html-modes '(markdown-mode gfm-mode)) + "<!--" "-->" + :unless '(sp-point-before-word-p sp-point-before-same-p) + :actions '(insert) :post-handlers '(("| " "SPC"))) + ;; Expand C-style comment blocks. + (defun +default-open-doc-comments-block (&rest _ignored) + (save-excursion + (newline) + (indent-according-to-mode))) + (sp-local-pair + '(js2-mode typescript-mode rjsx-mode rust-mode c-mode c++-mode objc-mode + csharp-mode java-mode php-mode css-mode scss-mode less-css-mode + stylus-mode scala-mode) + "/*" "*/" + :actions '(insert) + :post-handlers '(("| " "SPC") + (" | " "*") + ("|[i]\n[i]" "RET")))) + ;; (use-package parinfer-rust-mode + ;; :hook (lisp-mode-hook . parinfer-rust-mode)) + ;; (electric-pair-mode 1) +#+end_src +** Debugging +#+begin_src emacs-lisp + (use-package dap-mode + :config + (require 'dap-python) + (setq dap-python-debugger 'debugpy)) +#+end_src +** Move lines +#+begin_src emacs-lisp + (use-package move-text + :bind (("C-M-k" . move-text-up) + ("C-M-j" . move-text-down))) +#+end_src +** Truncate lines +#+begin_src emacs-lisp + (set-default 'truncate-lines t) +#+end_src +* EAT terminal +** Eat +#+begin_src emacs-lisp + (use-package eat + :custom + (eat-semi-char-non-bound-keys + '(seq-difference eat-semi-char-non-bound-keys '([C-left] [C-right])))) +#+end_src +*** Eat-toggle +#+begin_src emacs-lisp + (defun eat-toggle() + "Open eat terminal as a popup." + (interactive) + (if (eq major-mode 'eat-mode) + (delete-window) + (let ((buff (get-buffer-create eat-buffer-name))) + (cl-assert (and buff (buffer-live-p buff))) + (funcall #'pop-to-buffer buff) + (with-current-buffer buff + (setq-local split-width-threshold nil) + (setq-local window-min-height 2) + (unless (derived-mode-p 'eat-mode) + (eat)))))) +#+end_src * LSP #+begin_src emacs-lisp (use-package lsp-mode + :custom + (lsp-completion-provider :none) + + :init + (defun my/orderless-dispatch-flex-first (_pattern index _total) + (and (eq index 0) 'orderless-flex)) + + (defun my/lsp-mode-setup-completion () + (setf (alist-get 'styles (alist-get 'lsp-capf completion-category-defaults)) + '(orderless))) + + (add-hook 'orderless-style-dispatchers #'my/orderless-dispatch-flex-first nil 'local) + (add-to-list 'completion-at-point-functions (cape-capf-buster #'lsp-completion-at-point)) + :hook - (python-mode . lsp) - (rust-mode . lsp) - (lsp-mode . lsp-enable-which-key-integration) - (sh-mode . lsp) - :commands lsp) + (lsp-completion-mode . my/lsp-mode-setup-completion)) #+end_src ** Languages *** Python #+begin_src emacs-lisp (use-package lsp-pyright - :ensure t) + :hook (python-mode . (lambda () + (require 'lsp-pyright) + (lsp)))) + (use-package py-autopep8 + :hook (python-mode . py-autopep8-mode)) #+end_src *** Rust #+begin_src emacs-lisp - (use-package rustic - :ensure - :bind (:map rustic-mode-map - ("M-j" . lsp-ui-imenu) - ("M-?" . lsp-find-references) - ("C-c C-c l" . flycheck-list-errors) - ("C-c C-c a" . lsp-execute-code-action) - ("C-c C-c r" . lsp-rename) - ("C-c C-c q" . lsp-workspace-restart) - ("C-c C-c Q" . lsp-workspace-shutdown) - ("C-c C-c s" . lsp-rust-analyzer-status)) - :config - ;; uncomment for less flashiness - ;; (setq lsp-eldoc-hook nil) - ;; (setq lsp-enable-symbol-highlighting nil) - ;; (setq lsp-signature-auto-activate nil) - - ;; comment to disable rustfmt on save - (setq rustic-format-on-save t) - (add-hook 'rustic-mode-hook 'rk/rustic-mode-hook)) - (use-package flycheck-rust - :config - (with eval-after-load 'rust-mode - (add-hook 'flycheck-mode-hook #'flycheck-rust-setup))) - - (defun rk/rustic-mode-hook () - ;; so that run C-c C-c C-r works without having to confirm, but don't try to - ;; save rust buffers that are not file visiting. Once - ;; https://github.com/brotzeit/rustic/issues/253 has been resolved this should - ;; no longer be necessary. - (when buffer-file-name - (setq-local buffer-save-without-query t)) - (add-hook 'before-save-hook 'lsp-format-buffer nil t)) + (use-package rustic + :ensure + :bind (:map rustic-mode-map + ("M-j" . lsp-ui-imenu) + ("M-?" . lsp-find-references) + ("C-c C-c l" . flycheck-list-errors) + ("C-c C-c a" . lsp-execute-code-action) + ("C-c C-c r" . lsp-rename) + ("C-c C-c q" . lsp-workspace-restart) + ("C-c C-c Q" . lsp-workspace-shutdown) + ("C-c C-c s" . lsp-rust-analyzer-status)) + :config + ;; uncomment for less flashiness + ;; (setq lsp-eldoc-hook nil) + ;; (setq lsp-enable-symbol-highlighting nil) + ;; (setq lsp-signature-auto-activate nil) + + ;; comment to disable rustfmt on save + (setq rustic-format-on-save t)) + (use-package flycheck-rust + :config + (with-eval-after-load 'rust-mode + (add-hook 'flycheck-mode-hook #'flycheck-rust-setup))) #+end_src *** Fish #+begin_src emacs-lisp @@ -528,44 +673,139 @@ every package is installed by nix and configured by use-package *** Nix #+begin_src emacs-lisp (use-package nix-mode - :mode "(.nix)$") + :mode ("\\.nix\\'" "\\.nix.in\\'")) + (use-package nix-drv-mode + :ensure nix-mode + :mode "\\.drv\\'") + (use-package nix-shell + :ensure nix-mode + :commands (nix-shell-unpack nix-shell-configure nix-shell-build)) + (use-package nix-repl + :ensure nix-mode + :commands (nix-repl)) #+end_src -** Corfu + cape +*** Yuck #+begin_src emacs-lisp - (use-package corfu - :custom - (corfu-cycle t) - (corfu-auto t) - (corfu-preselect 'prompt) - :bind - (:map corfu-map - ("TAB" . corfu-next) - ([tab] . corfu-next) - ("S-TAB" . corfu-previous) - ([backtab] . corfu-previous)) - :init - (global-corfu-mode)) + (use-package yuck-mode) #+end_src +*** Web #+begin_src emacs-lisp - (use-package cape - :init - (add-to-list 'completion-at-point-functions #'cape-file)) + (use-package web-mode + :config + (add-to-list 'auto-mode-alist '("\\.phtml\\'" . web-mode)) + (add-to-list 'auto-mode-alist '("\\.tpl\\.php\\'" . web-mode)) + (add-to-list 'auto-mode-alist '("\\.[agj]sp\\'" . web-mode)) + (add-to-list 'auto-mode-alist '("\\.as[cp]x\\'" . web-mode)) + (add-to-list 'auto-mode-alist '("\\.erb\\'" . web-mode)) + (add-to-list 'auto-mode-alist '("\\.mustache\\'" . web-mode)) + (add-to-list 'auto-mode-alist '("\\.djhtml\\'" . web-mode))) #+end_src +*** JavaScript #+begin_src emacs-lisp + (use-package js2-mode) +#+end_src +** Corfu +#+begin_src emacs-lisp + (use-package corfu + :custom + (corfu-cycle t) + (corfu-preselect 'prompt) + (corfu-auto t) + :bind + (:map corfu-map + ("TAB" . corfu-next) + ([tab] . corfu-next) + ("S-TAB" . corfu-previous) + ([backtab] . corfu-previous)) + + :init + (global-corfu-mode)) (use-package emacs :init (setq completion-cycle-threshold 3) + + (setq read-extended-command-predicate + #'command-completion-default-include-p) + (setq tab-always-indent 'complete)) #+end_src +*** Cape +#+begin_src emacs-lisp + (use-package cape + ;; Bind dedicated completion commands + :bind (("C-c p p" . completion-at-point) ;; capf + ("C-c p t" . complete-tag) ;; etags + ("C-c p d" . cape-dabbrev) ;; or dabbrev-completion + ("C-c p h" . cape-history) + ("C-c p f" . cape-file) + ("C-c p k" . cape-keyword) + ("C-c p s" . cape-elisp-symbol) + ("C-c p e" . cape-elisp-block) + ("C-c p a" . cape-abbrev) + ("C-c p l" . cape-line) + ("C-c p w" . cape-dict) + ("C-c p :" . cape-emoji)) + :init + (add-to-list 'completion-at-point-functions #'cape-dabbrev) + (add-to-list 'completion-at-point-functions #'cape-file) + (add-to-list 'completion-at-point-functions #'cape-elisp-block) + ) +#+end_src + ** Flycheck #+begin_src emacs-lisp - (use-package flycheck - :init (global-flycheck-mode)) + (use-package flycheck + :init (global-flycheck-mode)) #+end_src -*** Flycheck inline errors +** Tree-sitter #+begin_src emacs-lisp - (use-package flycheck-inline - :config - (with-eval-after-load 'flycheck - (add-hook 'flycheck-mode-hook #'flycheck-inline-mode))) + (use-package tree-sitter + :init + (global-tree-sitter-mode) + :config + (add-hook 'tree-sitter-mode-hook 'tree-sitter-hl-mode)) +#+end_src +*** Additional langs +#+begin_src emacs-lisp + (use-package tree-sitter-langs) #+end_src +** Snippets +#+begin_src emacs-lisp + (use-package yasnippet + :init (yas-global-mode)) + (use-package yasnippet-snippets) +#+end_src +* Additional apps +** Telegram lol +#+begin_src emacs-lisp + ;; (add-to-list 'load-path "~/telega.el") + ;; (require 'telega) +#+end_src +** Magit +#+begin_src emacs-lisp + (use-package magit) +#+end_src +** EXWM +#+begin_src emacs-lisp + ;; (use-package exwm) + ;; (require 'exwm) + ;; (require 'exwm-config) + ;; (exwm-config-example) +#+end_src +* Dired +** Bindings +#+begin_src emacs-lisp + (use-package dired + :ensure nil + :custom ((dired-listing-switches "-agho --group-directories-first")) + :bind (:map dired-mode-map + ("h" . 'dired-up-directory) + ("l" . 'dired-find-file) + ("v" . 'meow-visit))) +#+end_src +** Icons +#+begin_src emacs-lisp + (use-package all-the-icons-dired + :init (add-hook 'dired-mode-hook 'all-the-icons-dired-mode)) +#+end_src + diff --git a/home-manager/programs/emacs/default.nix b/home-manager/programs/emacs/default.nix index 829c2c6..f094a28 100644 --- a/home-manager/programs/emacs/default.nix +++ b/home-manager/programs/emacs/default.nix @@ -4,23 +4,61 @@ let tree-sitter gcc cmake + nodePackages_latest.bash-language-server gnumake + tdlib + emacs-all-the-icons-fonts + libappindicator + libwebp + tgs2png + pkg-config + ffmpeg_6-full + rustc + cargo + rust-analyzer + nodejs_20 ]; + pythonPkgs = with pkgs.python311Packages; [ + flake8 + python-lsp-server + autopep8 + matplotlib + ]; + pkgsUsePackage = with pkgs; [ (pkgs.emacsWithPackagesFromUsePackage { - inherit (service) package; + package = pkgs.emacs29; config = ./init.el; alwaysEnsure = true; extraEmacsPackages = epkgs: [ epkgs.use-package + (epkgs.melpaBuild rec { + pname = "codeium"; + version = "1.2.102"; + + src = fetchFromGitHub { + owner = "Exafunction"; + repo = "codeium.el"; + rev = "1.2.102"; + sha256 = "0slc13d9nxkn12fw640n1l721qvhnjp7yy3yc7av4c58nl9yv40z"; + }; + + commit = "915837df0f41397028f4ad34f43722c61efd298d"; + + recipe = writeText "recipe" '' + (codeium + :repo "${src.owner}/${src.repo}" + :fetcher github) + ''; + }) ]; }) ]; in { - home.packages = pkgsForEmacs ++ pkgsUsePackage; + home.packages = pkgsForEmacs ++ pkgsUsePackage ++ pythonPkgs; xdg.configFile = { - "emacs/init.el".text = builtins.readFile ./init.el; + # "emacs/init.el".text = builtins.readFile ./init.el; "emacs/early-init.el".text = builtins.readFile ./early-init.el; }; } diff --git a/home-manager/programs/emacs/default.nix~ b/home-manager/programs/emacs/default.nix~ deleted file mode 100644 index fe1f7bc..0000000 --- a/home-manager/programs/emacs/default.nix~ +++ /dev/null @@ -1,14 +0,0 @@ -{ pkgs, ... }: -let - settings = { - client.enable = true; - package = pkgs.emacs-gtk; - extraConfig = builtins.readFile ./init.el; - }; -in -{ - services.emacs = { - enable = true; - inherit (settings) client package extraConfig; - }; -} diff --git a/home-manager/programs/emacs/init.el b/home-manager/programs/emacs/init.el index 12f43a2..0e376e2 100644 --- a/home-manager/programs/emacs/init.el +++ b/home-manager/programs/emacs/init.el @@ -1,7 +1,7 @@ (require 'use-package) (eval-and-compile (setq use-package-always-ensure t - use-package-expand-minimally t)) + use-package-expand-minimally t)) (use-package meow :config @@ -91,8 +91,7 @@ '("z" . meow-pop-selection) '("'" . repeat) '("<escape>" . ignore))) - (setq meow-use-cursor-position-hack t - meow-use-enhanced-selection-effect t) + (setq meow-use-enhanced-selection-effect t) (meow-setup) (meow-global-mode 1)) @@ -113,45 +112,54 @@ "," '(consult-buffer :wk "Switch to buffer") "." '(find-file :wk "Find file") ;; Splits - "w" '(:ignore t :wk "Evil splits") + "w" '(:ignore t :wk "Splits") "wv" '(split-window-right :wk "Split vertical") "ws" '(split-window-below :wk "Split") "ww" '(other-window :wk "Cycle throug windows") "wc" '(delete-window :wk "Close window") "wd" '(delete-window :wk "Close window") + "wl" '(evil-window-right :wk "") + "wj" '(evil-window-down :wk "") + "wk" '(evil-window-up :wk "") + "wh" '(evil-window-left :wk "") + "wo" '(delete-other-windows :wk "") ;; Files "f" '(:ignore t :wk "Files") "fr" '(consult-recent-file :wk "Resent files") - "fc" '((lambda () (interactive) (find-file "~/.config/emacs/init.el")) :wk "Edit emacs config") + "fc" '((lambda () (interactive) (find-file "~/.nixfiles/home-manager/programs/emacs/config.org")) :wk "Edit emacs config") "fu" '(sudo-edit-find-file :wk "Sudo find file") "fU" '(sudo-edit :wk "Sudo edit file") - ;; Quiting - "q" '(:ignore t :wk "Quiting") - "qq" '(:ignore t :wk "Quit TBD") - "qr" '(:ignore t :wk "Restart TBD") - "qe" '(eval-buffer :wk "Eval buffer") - "r" '(reload-init-file :wk "Reload config") - "l" '(lsp-keymap-prefix :wk "LSP"))) - + "l" '(lsp-keymap-prefix :wk "LSP") + ;; Opening.. things + "o" '(:ignore t) + "ot" '(eat-toggle :wk "Eat terminal"))) + +(defun spl3g/disable-scroll-bars (frame) + (modify-frame-parameters frame + '((vertical-scroll-bars . nil) + (horizontal-scroll-bars . nil)))) +(add-hook 'after-make-frame-functions 'spl3g/disable-scroll-bars) + +(setq default-frame-alist '((font . "Source Code Pro"))) (set-face-attribute 'default nil :font "Source Code Pro" - :height 113 + :height 110 :weight 'medium) (set-face-attribute 'fixed-pitch nil :font "Source Code Pro" - :height 113 + :height 110 :weight 'medium) (set-face-attribute 'variable-pitch nil :font "Rubik" - :height 113 + :height 110 :weight 'medium) (set-face-attribute 'font-lock-comment-face nil :slant 'italic) (set-face-attribute 'font-lock-keyword-face nil :weight 'bold) -(global-display-line-numbers-mode 1) -(global-visual-line-mode t) +(add-hook 'prog-mode-hook 'display-line-numbers-mode) +(add-hook 'prog-mode-hook 'visual-line-mode) (use-package autothemer) (use-package catppuccin-theme @@ -165,11 +173,13 @@ :ensure t :if (display-graphic-p)) -(use-package mood-line - :init - (mood-line-mode) +(use-package doom-modeline + :init (doom-modeline-mode 1) :config - (setq mood-line-glyph-alist mood-line-glyphs-unicode)) + (setq doom-modeline-height 35 ;; sets modeline height + doom-modeline-bar-width 5 ;; sets right bar width + doom-modeline-persp-name t ;; adds perspective name to modeline + doom-modeline-persp-icon t)) ;; adds folder icon next to persp name (use-package good-scroll :init (good-scroll-mode)) @@ -181,42 +191,49 @@ (setq initial-buffer-choice (lambda () (get-buffer-create "*dashboard*"))) (setq dashboard-banner-logo-title "Yep, it's emacs, not vim") (setq dashboard-startup-banner 'logo) - (setq dashboard-center-content t)) + (setq dashboard-center-content t) + (add-to-list 'dashboard-item-generators '(config . dashboard-open-config)) + (setq dashboard-items '((recents . 5) + (agenda . 5)))) -(use-package popper - :ensure t ; or :straight t - :bind (("C-`" . popper-toggle-latest) - ("M-`" . popper-cycle) - ("C-M-`" . popper-toggle-type)) - :init - (setq popper-reference-buffers - '("\\*Messages\\*" - "Output\\*$" - "\\*Async Shell Command\\*" - help-mode - "^\\*vterm.*\\*$" vterm-mode - compilation-mode)) - (popper-mode +1) - (popper-echo-mode +1)) +(setq ring-bell-function 'ignore) + +(use-package indent-guide + :hook (prog-mode . indent-guide-mode)) + +(setq window-resize-pixelwise t) +(setq frame-resize-pixelwise t) +(save-place-mode t) +(defalias 'yes-or-no #'y-or-n-p) (add-hook 'org-mode-hook 'org-indent-mode) (require 'org-tempo) -(use-package toc-org) -(add-hook 'org-mode-hook 'toc-org-mode) +(use-package toc-org + :init (add-hook 'org-mode-hook 'toc-org-enable)) -(use-package org-bullets) -(add-hook 'org-mode-hook 'org-bullets-mode) +(use-package org-bullets + :init (add-hook 'org-mode-hook (lambda () (org-bullets-mode 1)))) -(use-package org-auto-tangle) -(add-hook 'org-mode-hook 'org-auto-tangle-mode) +(use-package org-auto-tangle + :init (add-hook 'org-mode-hook 'org-auto-tangle-mode)) + +(use-package org-download + :hook (dired-mode-hook . org-download-enable)) + +(use-package direnv + :config + (direnv-mode)) (use-package vertico :init (vertico-mode) + :bind (:map vertico-map + ("M-j" . vertico-next) + ("M-k" . vertico-previous)) :config (savehist-mode 1)) -(use-package emacs +(use-package emacs :init ;; Add prompt indicator to `completing-read-multiple'. ;; We display [CRM<separator>], e.g., [CRM,] if the separator is a comma. @@ -245,8 +262,8 @@ (use-package orderless :init (setq completion-styles '(orderless basic) - completion-category-defaults nil - completion-category-overrides '((file (styles partial-completion))))) + completion-category-defaults nil + completion-category-overrides '((file (styles partial-completion))))) (use-package marginalia :bind (:map minibuffer-local-map @@ -378,16 +395,112 @@ (use-package treemacs-all-the-icons) +(use-package smartparens + :init (smartparens-global-mode) + :hook (prog-mode-hook . turn-on-smartparens-strict-mode) + :config + ;; Snitched from doom + (let ((unless-list '(sp-point-before-word-p + sp-point-after-word-p + sp-point-before-same-p))) + (sp-pair "'" nil :unless unless-list) + (sp-pair "\"" nil :unless unless-list)) + (dolist (brace '("(" "{" "[")) + (sp-pair brace nil + :post-handlers '(("||\n[i]" "RET") ("| " "SPC")) + :unless '(sp-point-before-word-p sp-point-before-same-p))) + (sp-local-pair sp-lisp-modes "(" ")" :unless '(:rem sp-point-before-same-p)) + (sp-local-pair sp-lisp-modes "(" ")" :unless '(:rem sp-point-before-same-p)) + + ;; Major-mode specific fixes + (sp-local-pair 'ruby-mode "{" "}" + :pre-handlers '(:rem sp-ruby-pre-handler) + :post-handlers '(:rem sp-ruby-post-handler)) + + ;; Don't eagerly escape Swift style string interpolation + (sp-local-pair 'swift-mode "\\(" ")" :when '(sp-in-string-p)) + + ;; Don't do square-bracket space-expansion where it doesn't make sense to + (sp-local-pair '(emacs-lisp-mode org-mode markdown-mode gfm-mode) + "[" nil :post-handlers '(:rem ("| " "SPC"))) + + ;; Reasonable default pairs for HTML-style comments + (sp-local-pair (append sp--html-modes '(markdown-mode gfm-mode)) + "<!--" "-->" + :unless '(sp-point-before-word-p sp-point-before-same-p) + :actions '(insert) :post-handlers '(("| " "SPC"))) + ;; Expand C-style comment blocks. + (defun +default-open-doc-comments-block (&rest _ignored) + (save-excursion + (newline) + (indent-according-to-mode))) + (sp-local-pair + '(js2-mode typescript-mode rjsx-mode rust-mode c-mode c++-mode objc-mode + csharp-mode java-mode php-mode css-mode scss-mode less-css-mode + stylus-mode scala-mode) + "/*" "*/" + :actions '(insert) + :post-handlers '(("| " "SPC") + (" | " "*") + ("|[i]\n[i]" "RET")))) +;; (use-package parinfer-rust-mode +;; :hook (lisp-mode-hook . parinfer-rust-mode)) +;; (electric-pair-mode 1) + +(use-package dap-mode + :config + (require 'dap-python) + (setq dap-python-debugger 'debugpy)) + +(use-package move-text + :bind (("C-M-k" . move-text-up) + ("C-M-j" . move-text-down))) + +(set-default 'truncate-lines t) + +(use-package eat + :custom + (eat-semi-char-non-bound-keys + '(seq-difference eat-semi-char-non-bound-keys '([C-left] [C-right])))) + +(defun eat-toggle() + "Open eat terminal as a popup." + (interactive) + (if (eq major-mode 'eat-mode) + (delete-window) + (let ((buff (get-buffer-create eat-buffer-name))) + (cl-assert (and buff (buffer-live-p buff))) + (funcall #'pop-to-buffer buff) + (with-current-buffer buff + (setq-local split-width-threshold nil) + (setq-local window-min-height 2) + (unless (derived-mode-p 'eat-mode) + (eat)))))) + (use-package lsp-mode + :custom + (lsp-completion-provider :none) + + :init + (defun my/orderless-dispatch-flex-first (_pattern index _total) + (and (eq index 0) 'orderless-flex)) + + (defun my/lsp-mode-setup-completion () + (setf (alist-get 'styles (alist-get 'lsp-capf completion-category-defaults)) + '(orderless))) + + (add-hook 'orderless-style-dispatchers #'my/orderless-dispatch-flex-first nil 'local) + (add-to-list 'completion-at-point-functions (cape-capf-buster #'lsp-completion-at-point)) + :hook - (python-mode . lsp) - (rust-mode . lsp) - (lsp-mode . lsp-enable-which-key-integration) - (sh-mode . lsp) - :commands lsp) + (lsp-completion-mode . my/lsp-mode-setup-completion)) (use-package lsp-pyright -:ensure t) + :hook (python-mode . (lambda () + (require 'lsp-pyright) + (lsp)))) +(use-package py-autopep8 + :hook (python-mode . py-autopep8-mode)) (use-package rustic :ensure @@ -407,55 +520,116 @@ ;; (setq lsp-signature-auto-activate nil) ;; comment to disable rustfmt on save - (setq rustic-format-on-save t) - (add-hook 'rustic-mode-hook 'rk/rustic-mode-hook)) + (setq rustic-format-on-save t)) (use-package flycheck-rust :config - (with eval-after-load 'rust-mode + (with-eval-after-load 'rust-mode (add-hook 'flycheck-mode-hook #'flycheck-rust-setup))) -(defun rk/rustic-mode-hook () - ;; so that run C-c C-c C-r works without having to confirm, but don't try to - ;; save rust buffers that are not file visiting. Once - ;; https://github.com/brotzeit/rustic/issues/253 has been resolved this should - ;; no longer be necessary. - (when buffer-file-name - (setq-local buffer-save-without-query t)) - (add-hook 'before-save-hook 'lsp-format-buffer nil t)) - (use-package fish-mode :mode "(.fish)$") (use-package nix-mode - :mode "(.nix)$") + :mode ("\\.nix\\'" "\\.nix.in\\'")) +(use-package nix-drv-mode + :ensure nix-mode + :mode "\\.drv\\'") +(use-package nix-shell + :ensure nix-mode + :commands (nix-shell-unpack nix-shell-configure nix-shell-build)) +(use-package nix-repl + :ensure nix-mode + :commands (nix-repl)) + +(use-package yuck-mode) + +(use-package web-mode + :config + (add-to-list 'auto-mode-alist '("\\.phtml\\'" . web-mode)) + (add-to-list 'auto-mode-alist '("\\.tpl\\.php\\'" . web-mode)) + (add-to-list 'auto-mode-alist '("\\.[agj]sp\\'" . web-mode)) + (add-to-list 'auto-mode-alist '("\\.as[cp]x\\'" . web-mode)) + (add-to-list 'auto-mode-alist '("\\.erb\\'" . web-mode)) + (add-to-list 'auto-mode-alist '("\\.mustache\\'" . web-mode)) + (add-to-list 'auto-mode-alist '("\\.djhtml\\'" . web-mode))) + +(use-package js2-mode) (use-package corfu -:custom -(corfu-cycle t) -(corfu-auto t) -(corfu-preselect 'prompt) -:bind -(:map corfu-map - ("TAB" . corfu-next) - ([tab] . corfu-next) - ("S-TAB" . corfu-previous) - ([backtab] . corfu-previous)) -:init -(global-corfu-mode)) + :custom + (corfu-cycle t) + (corfu-preselect 'prompt) + (corfu-auto t) + :bind + (:map corfu-map + ("TAB" . corfu-next) + ([tab] . corfu-next) + ("S-TAB" . corfu-previous) + ([backtab] . corfu-previous)) -(use-package cape :init - (add-to-list 'completion-at-point-functions #'cape-file)) - + (global-corfu-mode)) (use-package emacs :init (setq completion-cycle-threshold 3) + + (setq read-extended-command-predicate + #'command-completion-default-include-p) + (setq tab-always-indent 'complete)) +(use-package cape + ;; Bind dedicated completion commands + :bind (("C-c p p" . completion-at-point) ;; capf + ("C-c p t" . complete-tag) ;; etags + ("C-c p d" . cape-dabbrev) ;; or dabbrev-completion + ("C-c p h" . cape-history) + ("C-c p f" . cape-file) + ("C-c p k" . cape-keyword) + ("C-c p s" . cape-elisp-symbol) + ("C-c p e" . cape-elisp-block) + ("C-c p a" . cape-abbrev) + ("C-c p l" . cape-line) + ("C-c p w" . cape-dict) + ("C-c p :" . cape-emoji)) + :init + (add-to-list 'completion-at-point-functions #'cape-dabbrev) + (add-to-list 'completion-at-point-functions #'cape-file) + (add-to-list 'completion-at-point-functions #'cape-elisp-block) + ) + (use-package flycheck :init (global-flycheck-mode)) -(use-package flycheck-inline +(use-package tree-sitter + :init + (global-tree-sitter-mode) :config - (with-eval-after-load 'flycheck - (add-hook 'flycheck-mode-hook #'flycheck-inline-mode))) + (add-hook 'tree-sitter-mode-hook 'tree-sitter-hl-mode)) + +(use-package tree-sitter-langs) + +(use-package yasnippet + :init (yas-global-mode)) +(use-package yasnippet-snippets) + +;; (add-to-list 'load-path "~/telega.el") +;; (require 'telega) + +(use-package magit) + +;; (use-package exwm) +;; (require 'exwm) +;; (require 'exwm-config) +;; (exwm-config-example) + +(use-package dired + :ensure nil + :custom ((dired-listing-switches "-agho --group-directories-first")) + :bind (:map dired-mode-map + ("h" . 'dired-up-directory) + ("l" . 'dired-find-file) + ("v" . 'meow-visit))) + +(use-package all-the-icons-dired + :init (add-hook 'dired-mode-hook 'all-the-icons-dired-mode)) diff --git a/home-manager/programs/firefox/default.nix b/home-manager/programs/firefox/default.nix index 92d8e29..1414d2b 100644 --- a/home-manager/programs/firefox/default.nix +++ b/home-manager/programs/firefox/default.nix @@ -10,10 +10,17 @@ let switchyomega sponsorblock return-youtube-dislikes + firefox-color + tampermonkey + duckduckgo-privacy-essentials ]; userConfig = builtins.readFile ./user.js; configOverrides = '' - + user_pref("browser.search.suggest.enabled", true); + user_pref("mousewheel.default.delta_multiplier_y", 75); + user_pref("network.captive-portal-service.enabled", true); + user_pref("captivedetect.canonicalURL", "http://detectportal.firefox.com/canonical.html"); + user_pref("network.connectivity-service.enabled", true); ''; extraConfig = userConfig + configOverrides; engines = { @@ -76,17 +83,26 @@ let definedAliases = [ "!as" ]; }; }; + force = true; in { programs.firefox = { enable = true; + profiles.nothing = { + isDefault = false; + id = 1; + }; profiles.Betterfox = { isDefault = true; inherit extensions extraConfig; search = { - inherit engines; + inherit engines force; default = "Brave"; }; }; }; + home.file."chrome" = { + source = ./userChrome.css; + target = ".mozilla/firefox/Betterfox/chrome/userChrome.css"; + }; } diff --git a/home-manager/programs/firefox/user.js b/home-manager/programs/firefox/user.js index dac2158..cbf15bb 100644 --- a/home-manager/programs/firefox/user.js +++ b/home-manager/programs/firefox/user.js @@ -248,6 +248,9 @@ user_pref("cookiebanners.service.mode.privateBrowsing", 2); ****************************************************************************/ // visit https://github.com/yokoffing/Betterfox/blob/master/Smoothfox.js // Enter your scrolling prefs below this line: +user_pref("apz.overscroll.enabled", true); +user_pref("general.smoothScroll", true); +user_pref("mousewheel.default.delta_multiplier_y", 275); /**************************************************************************** * START: MY OVERRIDES * diff --git a/home-manager/programs/firefox/userChrome.css b/home-manager/programs/firefox/userChrome.css new file mode 100644 index 0000000..0229657 --- /dev/null +++ b/home-manager/programs/firefox/userChrome.css @@ -0,0 +1,95 @@ +:root[tabsintitlebar]{ --uc-toolbar-height: 40px; } +:root[tabsintitlebar][uidensity="compact"]{ --uc-toolbar-height: 32px } + +#TabsToolbar{ visibility: collapse !important } + +:root[sizemode="fullscreen"] #TabsToolbar > :is(#window-controls,.titlebar-buttonbox-container){ + visibility: visible !important; + z-index: 2; +} + +:root:not([inFullscreen]) #nav-bar{ + margin-top: calc(0px - var(--uc-toolbar-height,0px)); +} + +:root[tabsintitlebar] #toolbar-menubar[autohide="true"]{ + min-height: unset !important; + height: var(--uc-toolbar-height,0px) !important; + position: relative; +} + +#toolbar-menubar[autohide="false"]{ + margin-bottom: var(--uc-toolbar-height,0px) +} + +:root[tabsintitlebar] #toolbar-menubar[autohide="true"] #main-menubar{ + flex-grow: 1; + align-items: stretch; + background-color: var(--toolbar-bgcolor,--toolbar-non-lwt-bgcolor); + background-clip: padding-box; + border-right: 30px solid transparent; + border-image: linear-gradient(to left, transparent, var(--toolbar-bgcolor,--toolbar-non-lwt-bgcolor) 30px) 20 / 30px +} + +hbox.titlebar-buttonbox-container:nth-child(3) > hbox:nth-child(1) > toolbarbutton:nth-child(4) { + display: none; +} + +hbox.titlebar-buttonbox-container:nth-child(6) > hbox:nth-child(1) > toolbarbutton:nth-child(4) { + display: none; +} + +#toolbar-menubar:not([inactive]){ z-index: 2 } +#toolbar-menubar[autohide="true"][inactive] > #menubar-items { + opacity: 0; + pointer-events: none; + margin-left: var(--uc-window-drag-space-pre,0px) +} + +#appcontent +> #tabbrowser-tabbox +> #tabbrowser-tabpanels +> .deck-selected +> .browserContainer +> .browserStack +> browser { + border-radius: 10px; + margin: 10px; +} + +.browserStack { + background: var(-lwt-accent-color); +} + +.browserContainer { + background-color: var(--lwt-accent-color); + background-position: right top, var(--lwt-background-alignment); +} + +#sidebar-button { + margin-left: 10px; +} + +#sidebar-box { + min-width: 250px; + max-width: 250px; + min-height: unset; + max-height: unset; + border-right: none; +} + +#sidebar-splitter { + display: none; +} + +#PersonalToolbar { + display: none; +} + +#navigator-toolbox { + border-bottom: none !important; +} + +#sidebar-header { + display: none; +} diff --git a/home-manager/programs/fish/default.nix b/home-manager/programs/fish/default.nix index f63fbc4..5a495e9 100644 --- a/home-manager/programs/fish/default.nix +++ b/home-manager/programs/fish/default.nix @@ -11,12 +11,34 @@ let plugins = nixPlugins ++ customPlugins; interactiveShellInit = '' set fish_greeting - pokemon-colorscripts -r | awk "NR>1 {print}" + pokemon-colorscripts -r --no-title ''; + loginShellInit = '' + Hyprland + ''; + functions = { + ranger_func = '' + ranger $argv + set -l quit_cd_wd_file "$HOME/.ranger_quit_cd_wd" + if test -s "$quit_cd_wd_file" + cd "$(cat $quit_cd_wd_file)" + true > "$quit_cd_wd_file" + end + ''; + }; + shellAliases = { + rn = "ranger_func"; + ls = "ls --hyperlink=auto --color=auto"; + }; + in { + programs.direnv = { + enable = true; + }; + programs.fish = { enable = true; - inherit plugins interactiveShellInit; + inherit plugins interactiveShellInit loginShellInit functions shellAliases; }; } diff --git a/home-manager/programs/kitty/default.nix b/home-manager/programs/kitty/default.nix new file mode 100644 index 0000000..07bc2e8 --- /dev/null +++ b/home-manager/programs/kitty/default.nix @@ -0,0 +1,11 @@ +{ pkgs, ... }: +{ + programs.kitty = { + enable = true; + font.name = "Source Code Pro"; + font.size = 11.3; + theme = "Catppuccin-Mocha"; + shellIntegration.enableFishIntegration = true; + extraConfig = "cursor_shape underline"; + }; +} diff --git a/home-manager/programs/kitty/default.nix~ b/home-manager/programs/kitty/default.nix~ new file mode 100644 index 0000000..e4e62ca --- /dev/null +++ b/home-manager/programs/kitty/default.nix~ @@ -0,0 +1,10 @@ + programs = { + kitty = { + enable = true; + font.name = "Source Code Pro"; + font.size = 11.3; + theme = "Catppuccin-Mocha"; + shellIntegration.enableFishIntegration = true; + extraConfig = "cursor_shape underline"; + }; + }; diff --git a/home-manager/programs/ranger/default.nix b/home-manager/programs/ranger/default.nix index b77b924..4dbced5 100644 --- a/home-manager/programs/ranger/default.nix +++ b/home-manager/programs/ranger/default.nix @@ -1,6 +1,6 @@ { pkgs, ... }: { - home.packages = [ pkgs.ranger ]; + home.packages = with pkgs; [ ranger wl-clipboard ]; xdg.configFile = { "ranger/rc.conf".text = builtins.readFile ./rc.conf; "ranger/rifle.conf".text = builtins.readFile ./rifle.conf; diff --git a/home-manager/programs/rofi/default.nix b/home-manager/programs/rofi/default.nix index 8d417ba..45e734d 100644 --- a/home-manager/programs/rofi/default.nix +++ b/home-manager/programs/rofi/default.nix @@ -9,6 +9,7 @@ let ]; in { + home.packages = with pkgs; [ rbw rofi-rbw pinentry ]; programs.rofi = { enable = true; inherit theme cycle plugins; diff --git a/home-manager/programs/waybar/config.jsonc b/home-manager/programs/waybar/config.jsonc new file mode 100644 index 0000000..84aeafd --- /dev/null +++ b/home-manager/programs/waybar/config.jsonc @@ -0,0 +1,94 @@ +{ + "layer": "top", // Waybar at top layer + "height": 40, // Waybar height (to be removed for auto height) + "spacing": 8, // Gaps between modules (4px) + "margin-top": 20, + "margin-left": 20, + "margin-right": 20, + "margin-down": 5, + "modules-left": ["hyprland/workspaces"], + "modules-center": ["clock"], + "modules-right": ["network", "memory", "backlight", "pulseaudio", "hyprland/language", "tray", "battery"], + + "hyprland/workspaces": { + "format": "{icon}", + "on-click": "activate", + "all-outputs": false, + "format-icons": { + "1": "α", + "2": "β", + "3": "γ", + "4": "δ", + "5": "ε", + "urgent": "λ", + "focused": "σ", + "default": "ω"} + }, + "hyprland/language": { + "format": "{} <span font-family='Material Design Icons' rise='-1000' size='medium'></span>", + "format-ru": "ru", + "format-en": "en" + }, + "tray": { + "spacing": 10 + }, + "clock": { + // "timezone": "America/New_York", + "format": "{:%H:%M }", + "tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>", + "format-alt": "{:%d %h %Y }", + "on-click": "killall calcure || alacritty -t calcure -e calcure;sudo ydotool click 0xc1" + }, + "memory": { + "format": "{}% ", + "on-click": "killall btop || alacritty -t btop -e btop;sudo ydotool click 0xc1" + }, + "backlight": { + // "device": "acpi_video1", + "format": "{percent}% {icon}", + "format-icons": ["", "", ""] + }, + "battery": { + "states": { + // "good": 95, + "warning": 30, + "critical": 15 + }, + "format": "{capacity}% {icon}", + "format-charging": "{capacity}% ", + "format-plugged": "{capacity}% ", + "format-alt": "{icon}", + // "format-good": "", // An empty format will hide the module + // "format-full": "", + "format-icons": ["", "", "", "", "", "", "", "", "", ""], + }, + "network": { + // "interface": "wlp2*", // (Optional) To force the use of this interface + "format-wifi": "{essid} ({signalStrength}%) ", + "format-ethernet": "{ipaddr}/{cidr} ", + "tooltip-format": "{ifname} via {gwaddr} ", + "format-linked": "{ifname} (No IP) ", + "format-disconnected": "", + "on-click": "killall connman-gtk || connman-gtk;sudo ydotool click 0xc1" + }, + "pulseaudio": { + // "scroll-step": 1, // %, can be a float + "format": "{volume}% {icon} {format_source}", + "format-bluetooth": "{volume}% <span font-family='Material Design Icons' rise='-2000' font-size='x-large'></span> {format_source}", + "format-bluetooth-muted": " {format_source}", + "format-muted": " {format_source}", + "format-source": "{volume}% ", + "format-source-muted": "", + "format-icons": { + "headphone": "", + "hands-free": "", + "headset": "", + "phone": "", + "portable": "", + "car": "", + "muted-icon": "", + "default": ["", "", ""] + }, + "on-click": "killall bluetuith || alacritty -t blue -e bluetuith; sudo ydotool click 0xc1" + }, +} diff --git a/home-manager/programs/waybar/default.nix b/home-manager/programs/waybar/default.nix new file mode 100644 index 0000000..8618718 --- /dev/null +++ b/home-manager/programs/waybar/default.nix @@ -0,0 +1,19 @@ +{ pkgs, ... }: +let + systemd.enable = true; + package = pkgs.waybar.override { + swaySupport = false; + mpdSupport = false; + }; + +in +{ + programs.waybar = { + enable = true; + inherit systemd package; + }; + xdg.configFile = { + "waybar/config".text = builtins.readFile ./config.jsonc; + "waybar/style.css".text = builtins.readFile ./style.css; + }; +} diff --git a/home-manager/programs/waybar/style.css b/home-manager/programs/waybar/style.css new file mode 100644 index 0000000..02aba83 --- /dev/null +++ b/home-manager/programs/waybar/style.css @@ -0,0 +1,26 @@ +* { + font-family: Material Design Icons, Rubik Medium; + font-size: 14px; + color: #6e6a86; +} + +window#waybar { + border-radius: 10px; + background: #1f1d2e; + border: 3px solid #363a4f; +} + +#battery { + margin-right: 6px; +} + +#workspaces button label { + font-size: 15px; + transition: all 100ms ease-out; +} + +#workspaces button.active label { + font-weight: bolder; + color: #908caa; + transition: all 100ms ease-out; +} diff --git a/home-manager/services/default.nix b/home-manager/services/default.nix index 6c40af4..71ac5f3 100644 --- a/home-manager/services/default.nix +++ b/home-manager/services/default.nix @@ -2,23 +2,20 @@ let more = { pkgs, ... }: { services = { clipmenu.enable = true; - emacs = { - enable = true; - defaultEditor = true; - }; - polybar = { - enable = true; - package = pkgs.polybar.override { - pulseSupport = true; - }; - script = "polybar example &"; - }; + # polybar = { + # enable = true; + # package = pkgs.polybar.override { + # pulseSupport = true; + # }; + # script = "polybar example &"; + # }; }; }; in [ ./picom - ./sxhkd - ./dunst + # ./sxhkd + # ./dunst + ./mako more ] diff --git a/home-manager/services/dunst/default.nix b/home-manager/services/dunst/default.nix index 1ed03f4..d192d0f 100644 --- a/home-manager/services/dunst/default.nix +++ b/home-manager/services/dunst/default.nix @@ -17,7 +17,7 @@ in { home.packages = [ pkgs.libnotify ]; services.dunst = { - enable = true; + enable = false; inherit settings; }; } diff --git a/home-manager/services/mako/default.nix b/home-manager/services/mako/default.nix new file mode 100644 index 0000000..bddb020 --- /dev/null +++ b/home-manager/services/mako/default.nix @@ -0,0 +1,23 @@ +let + anchor = "bottom-right"; + backgroundColor = "#1f1d2e"; + borderColor = "#e0def4"; + textColor = "#e0def4"; + defaultTimeout = 5000; + borderSize = 3; + borderRadius = 7; + font = "Rubik 11"; +in +{ + services.mako = { + enable = true; + inherit anchor + backgroundColor + borderColor + textColor + defaultTimeout + borderRadius + font + borderSize; + }; +} diff --git a/home-manager/themes/Catppuccin/assets/scalable/checkbox-checked-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/checkbox-checked-symbolic.svg new file mode 100644 index 0000000..7b89e88 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="20" + height="20" + version="1.1" + viewBox="0 0 20 20" + id="svg4" + sodipodi:docname="checkbox-checked-symbolic.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:snap-global="false" + inkscape:zoom="14.916666" + inkscape:cx="7.9776538" + inkscape:cy="5.1620113" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4"> + <inkscape:grid + type="xygrid" + id="grid825" /> + </sodipodi:namedview> + <path + id="path2" + d="m 16.091797,6.5468751 c 0.127806,-3.5e-6 0.255581,0.04855 0.353515,0.1464844 0.195869,0.1958684 0.195869,0.5111627 0,0.7070308 L 9.3730471,14.472656 c -0.02449,0.02449 -0.05035,0.04611 -0.07815,0.06443 -0.02772,0.01839 -0.05585,0.03268 -0.08593,0.04492 -0.03009,0.01224 -0.06226,0.02122 -0.09376,0.02734 -0.03149,0.0061 -0.06375,0.0098 -0.09571,0.0098 -0.03195,0 -0.06226,-0.0036 -0.09375,-0.0098 -0.03149,-0.0061 -0.06367,-0.0151 -0.09375,-0.02734 -0.03009,-0.01224 -0.05818,-0.02656 -0.08593,-0.04492 -0.01389,-0.0092 -0.02786,-0.02051 -0.04101,-0.03125 -0.01312,-0.01071 -0.02679,-0.02099 -0.03903,-0.03323 l -4.18665,-4.188623 c -0.1958683,-0.195869 -0.1958687,-0.511162 5e-7,-0.707032 0.1958681,-0.195867 0.5111624,-0.195868 0.7070307,1e-6 l 3.8331198,3.835099 6.7187499,-6.7187499 c 0.09793,-0.097934 0.225707,-0.1464831 0.353516,-0.146484 z" + sodipodi:nodetypes="cscscscscsccccsccccc" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/checkbox-checked-symbolic@2.svg b/home-manager/themes/Catppuccin/assets/scalable/checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..17e3c4a --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="40" + height="40" + version="1.1" + viewBox="0 0 40 40" + id="svg4" + sodipodi:docname="checkbox-checked-symbolic@2.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:snap-global="false" + inkscape:zoom="7.458333" + inkscape:cx="-8.9832406" + inkscape:cy="11.061453" + inkscape:window-width="1920" + inkscape:window-height="1011" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4"> + <inkscape:grid + type="xygrid" + id="grid825" /> + </sodipodi:namedview> + <path + id="path2" + d="m 32.183594,13.09375 c 0.255612,-7e-6 0.511162,0.0971 0.70703,0.292969 0.391738,0.391737 0.391738,1.022325 0,1.414062 l -14.14453,14.144531 c -0.04898,0.04898 -0.1007,0.09222 -0.1563,0.12886 -0.05544,0.03678 -0.1117,0.06536 -0.17186,0.08984 -0.06018,0.02448 -0.12452,0.04244 -0.18752,0.05468 -0.06298,0.0122 -0.1275,0.0196 -0.19142,0.0196 -0.0639,0 -0.12452,-0.0072 -0.1875,-0.0196 -0.06298,-0.0122 -0.12734,-0.0302 -0.1875,-0.05468 -0.06018,-0.02448 -0.11636,-0.05312 -0.17186,-0.08984 -0.02778,-0.0184 -0.05572,-0.04102 -0.08202,-0.0625 -0.02624,-0.02142 -0.05358,-0.04198 -0.07806,-0.06646 L 8.9587542,20.567966 c -0.3917366,-0.391738 -0.3917374,-1.022324 1e-6,-1.414064 0.3917362,-0.391734 1.0223248,-0.391736 1.4140618,2e-6 l 7.666239,7.670198 13.4375,-13.4375 c 0.19586,-0.195868 0.451414,-0.292966 0.707032,-0.292968 z" + sodipodi:nodetypes="cscscscscsccccsccccc" + style="stroke-width:2" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/checkbox-mixed-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..b4808a6 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/checkbox-mixed-symbolic.svg @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="20" + height="20" + version="1.1" + viewBox="0 0 20 20" + id="svg4" + sodipodi:docname="checkbox-mixed-symbolic.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="10.547676" + inkscape:cx="0.094807614" + inkscape:cy="19.340753" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4" + width="20px"> + <inkscape:grid + type="xygrid" + id="grid825" /> + </sodipodi:namedview> + <path + id="path2" + d="m 5.5,10 h 9 c 0.277,0 0.5,0.223 0.5,0.5 0,0.277 -0.223,0.5 -0.5,0.5 h -9 C 5.223,11 5,10.777 5,10.5 5,10.223 5.223,10 5.5,10 Z" + sodipodi:nodetypes="sssssss" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/checkbox-mixed-symbolic@2.svg b/home-manager/themes/Catppuccin/assets/scalable/checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..3ea0541 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/checkbox-mixed-symbolic@2.svg @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="40" + height="40" + version="1.1" + viewBox="0 0 40 40" + id="svg4" + sodipodi:docname="checkbox-mixed-symbolic@2.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="10.547676" + inkscape:cx="0" + inkscape:cy="19.29335" + inkscape:window-width="1920" + inkscape:window-height="1011" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4" + width="20px"> + <inkscape:grid + type="xygrid" + id="grid825" /> + </sodipodi:namedview> + <path + id="path2" + d="m 11,20 h 18 c 0.554,0 1,0.446 1,1 0,0.554 -0.446,1 -1,1 H 11 c -0.554,0 -1,-0.446 -1,-1 0,-0.554 0.446,-1 1,-1 z" + sodipodi:nodetypes="sssssss" + style="stroke-width:2" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/close-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/close-symbolic.svg new file mode 100644 index 0000000..06201c3 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/close-symbolic.svg @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="16" + height="16" + viewBox="0 0 16 16" + version="1.1" + inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)" + sodipodi:docname="close.svg" + id="svg824" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs5" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#424242" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="11.5625" + inkscape:cx="7.3513514" + inkscape:cy="13.837838" + inkscape:window-width="1440" + inkscape:window-height="742" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg824" /> + <path + d="m 4.464745,3.96488 c -0.12775,0 -0.2555,0.0486 -0.35339,0.14649 -0.19578,0.19586 -0.19578,0.51116 0,0.70703 L 7.292955,8 l -3.1816,3.1816 c -0.19578,0.19586 -0.19578,0.51116 0,0.70703 0.19578,0.19586 0.51118,0.19586 0.70704,0 l 3.18161,-3.1816 3.1816,3.1816 c 0.19578,0.19586 0.51114,0.19586 0.70704,0 0.19578,-0.19586 0.19578,-0.51116 0,-0.70703 L 8.707045,8 l 3.1816,-3.1816 c 0.19578,-0.19586 0.19578,-0.51116 0,-0.70703 -0.19578,-0.19586 -0.51117,-0.19586 -0.70704,0 l -3.1816,3.1816 -3.18161,-3.1816 C 4.720495,4.01347 4.592755,3.96488 4.465005,3.96488 Z" + id="path2928" + style="fill:#ffffff" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/close-symbolic@2.svg b/home-manager/themes/Catppuccin/assets/scalable/close-symbolic@2.svg new file mode 100644 index 0000000..a26e6ff --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/close-symbolic@2.svg @@ -0,0 +1,3 @@ +<svg width="32" height="32" version="1.1" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"> + <path d="m8.9295 7.9298c-0.2555 0-0.511 0.0972-0.70678 0.29298-0.39156 0.39172-0.39156 1.0223 0 1.4141l6.3632 6.3632-6.3632 6.3632c-0.39156 0.39172-0.39156 1.0223 0 1.4141 0.39156 0.39172 1.0224 0.39172 1.4141 0l6.3632-6.3632 6.3632 6.3632c0.39156 0.39172 1.0223 0.39172 1.4141 0 0.39156-0.39172 0.39156-1.0223 0-1.4141l-6.3632-6.3632 6.3632-6.3632c0.39156-0.39172 0.39156-1.0223 0-1.4141-0.39156-0.39172-1.0223-0.39172-1.4141 0l-6.3632 6.3632-6.3632-6.3632c-0.1958-0.1958-0.45128-0.29298-0.70678-0.29298z" fill="#ffffff" stroke-width="2"/> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/cursor-handle-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/cursor-handle-symbolic.svg new file mode 100644 index 0000000..e2a252b --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/cursor-handle-symbolic.svg @@ -0,0 +1,3 @@ +<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24"> + <path d="M0 0h12A12 12 0 1 1 0 12z"/> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/maximize-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/maximize-symbolic.svg new file mode 100644 index 0000000..39316eb --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/maximize-symbolic.svg @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="16" + height="16" + viewBox="0 0 16 16" + version="1.1" + inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)" + sodipodi:docname="maximize.svg" + id="svg825" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs5" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#424242" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="23.125" + inkscape:cx="11.243243" + inkscape:cy="11.978378" + inkscape:window-width="1440" + inkscape:window-height="742" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg825" /> + <path + d="M 6,4 C 4.892,4 4,4.892 4,6 v 4 c 0,1.108 0.89201,2 2,2 h 4 c 1.10801,0 2,-0.892 2,-2 V 6 C 12,4.892 11.10799,4 10,4 Z m 0,1 h 4 c 0.554,0 1,0.44602 1,1 v 4 c 0,0.55398 -0.44602,1 -1,1 H 6 C 5.44603,11 5.00001,10.55398 5.00001,10 V 6 C 5.00001,5.44602 5.44604,5 6,5 Z" + id="path2930" + style="fill:#ffffff" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/maximize-symbolic@2.svg b/home-manager/themes/Catppuccin/assets/scalable/maximize-symbolic@2.svg new file mode 100644 index 0000000..8095f75 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/maximize-symbolic@2.svg @@ -0,0 +1,3 @@ +<svg width="32" height="32" version="1.1" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"> + <path d="m12 8c-2.216 0-4 1.784-4 4v8c0 2.216 1.784 4 4 4h8c2.216 0 4-1.784 4-4v-8c0-2.216-1.784-4-4-4zm0 2h8c1.108 0 2 0.89204 2 2v8c0 1.108-0.89204 2-2 2h-8c-1.1079 0-2-0.89204-2-2v-8c0-1.108 0.89206-2 2-2z" fill="#ffffff" stroke-width="2"/> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/minimize-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/minimize-symbolic.svg new file mode 100644 index 0000000..f3683b9 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/minimize-symbolic.svg @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="16" + height="16" + viewBox="0 0 16 16" + version="1.1" + id="svg4" + inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)" + sodipodi:docname="minimize.svg" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs5" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#424242" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="23.125" + inkscape:cx="5.7513514" + inkscape:cy="9.8162162" + inkscape:window-width="1440" + inkscape:window-height="742" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4" /> + <rect + x="4" + y="8" + width="8" + height="1" + rx="0.5" + ry="0.5" + id="rect2932" + style="fill:#ffffff" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/minimize-symbolic@2.svg b/home-manager/themes/Catppuccin/assets/scalable/minimize-symbolic@2.svg new file mode 100644 index 0000000..741534b --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/minimize-symbolic@2.svg @@ -0,0 +1,3 @@ +<svg width="32" height="32" version="1.1" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"> + <rect x="8" y="15" width="16" height="2" rx="1" ry="1" fill="#ffffff" stroke-width="2"/> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/radio-checked-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/radio-checked-symbolic.svg new file mode 100644 index 0000000..67beb46 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/radio-checked-symbolic.svg @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="20" + height="20" + version="1.1" + viewBox="0 0 20 20" + id="svg4" + sodipodi:docname="radio-checked-symbolic.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="29.833333" + inkscape:cx="9.6201118" + inkscape:cy="12" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4"> + <inkscape:grid + type="xygrid" + id="grid825" /> + </sodipodi:namedview> + <path + id="path2" + d="m 10,8 c 1.104569,0 2,0.895431 2,2 0,1.104569 -0.895431,2 -2,2 C 8.895431,12 8,11.104569 8,10 8,8.895431 8.895431,8 10,8 Z" + sodipodi:nodetypes="sssss" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/radio-checked-symbolic@2.svg b/home-manager/themes/Catppuccin/assets/scalable/radio-checked-symbolic@2.svg new file mode 100644 index 0000000..bf51d9e --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/radio-checked-symbolic@2.svg @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="40" + height="40" + version="1.1" + viewBox="0 0 40 40" + id="svg4" + sodipodi:docname="radio-checked-symbolic@2.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="3.7291666" + inkscape:cx="-8.3128492" + inkscape:cy="25.877095" + inkscape:window-width="1920" + inkscape:window-height="1011" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4"> + <inkscape:grid + type="xygrid" + id="grid825" /> + </sodipodi:namedview> + <path + id="path2" + d="m 20,16 c 2.209138,0 4,1.790862 4,4 0,2.209138 -1.790862,4 -4,4 -2.209138,0 -4,-1.790862 -4,-4 0,-2.209138 1.790862,-4 4,-4 z" + sodipodi:nodetypes="sssss" + style="stroke-width:2" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/radio-mixed-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/radio-mixed-symbolic.svg new file mode 100644 index 0000000..b4808a6 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/radio-mixed-symbolic.svg @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="20" + height="20" + version="1.1" + viewBox="0 0 20 20" + id="svg4" + sodipodi:docname="checkbox-mixed-symbolic.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="10.547676" + inkscape:cx="0.094807614" + inkscape:cy="19.340753" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4" + width="20px"> + <inkscape:grid + type="xygrid" + id="grid825" /> + </sodipodi:namedview> + <path + id="path2" + d="m 5.5,10 h 9 c 0.277,0 0.5,0.223 0.5,0.5 0,0.277 -0.223,0.5 -0.5,0.5 h -9 C 5.223,11 5,10.777 5,10.5 5,10.223 5.223,10 5.5,10 Z" + sodipodi:nodetypes="sssssss" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/radio-mixed-symbolic@2.svg b/home-manager/themes/Catppuccin/assets/scalable/radio-mixed-symbolic@2.svg new file mode 100644 index 0000000..3ea0541 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/radio-mixed-symbolic@2.svg @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="40" + height="40" + version="1.1" + viewBox="0 0 40 40" + id="svg4" + sodipodi:docname="checkbox-mixed-symbolic@2.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="10.547676" + inkscape:cx="0" + inkscape:cy="19.29335" + inkscape:window-width="1920" + inkscape:window-height="1011" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4" + width="20px"> + <inkscape:grid + type="xygrid" + id="grid825" /> + </sodipodi:namedview> + <path + id="path2" + d="m 11,20 h 18 c 0.554,0 1,0.446 1,1 0,0.554 -0.446,1 -1,1 H 11 c -0.554,0 -1,-0.446 -1,-1 0,-0.554 0.446,-1 1,-1 z" + sodipodi:nodetypes="sssssss" + style="stroke-width:2" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/scale-horz-marks-after-slider-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/scale-horz-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..de0d789 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/scale-horz-marks-after-slider-symbolic.svg @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="24" + height="24" + version="1.1" + viewBox="0 0 24 24" + id="svg17" + sodipodi:docname="scale-horz-marks-after-slider-symbolic.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <sodipodi:namedview + id="namedview19" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="29.833333" + inkscape:cx="12" + inkscape:cy="12" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg17" /> + <defs + id="defs6"> + <linearGradient + id="color-primary-dark"> + <stop + stop-color="#1A73E8" + offset="1" + id="stop2" /> + </linearGradient> + <linearGradient + id="a" + x1="-3.5527e-15" + x2="24" + gradientUnits="userSpaceOnUse" + xlink:href="#color-primary-dark" /> + </defs> + <path + d="m 12,20.485281 -4.2426407,-4.24264 a 6,6 0 1 1 8.4852817,0 z" + fill="#000000" + id="path10" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/scale-horz-marks-before-slider-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/scale-horz-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..7f0235f --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/scale-horz-marks-before-slider-symbolic.svg @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="24" + height="24" + version="1.1" + viewBox="0 0 24 24" + id="svg12" + sodipodi:docname="scale-horz-marks-before-slider-symbolic.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <sodipodi:namedview + id="namedview14" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="14.916667" + inkscape:cx="3.2178771" + inkscape:cy="15.821229" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg12" /> + <defs + id="defs5"> + <linearGradient + id="a" + x2="24" + gradientUnits="userSpaceOnUse"> + <stop + stop-color="#1A73E8" + offset="1" + id="stop2" /> + </linearGradient> + </defs> + <path + d="m 12,3.5147186 4.242641,4.2426407 a 6,6 0 1 1 -8.4852817,0 z" + id="path9" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/scale-slider-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/scale-slider-symbolic.svg new file mode 100644 index 0000000..4b00bc1 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/scale-slider-symbolic.svg @@ -0,0 +1,11 @@ +<svg width="24" height="24" version="1.1" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <defs> + <linearGradient id="a" x2="24" gradientUnits="userSpaceOnUse"> + <stop stop-color="#1A73E8" offset="1"/> + </linearGradient> + </defs> + <g id="scale-slider"> + <rect width="24" height="24" fill="none"/> + <circle cx="12" cy="12" r="6"/> + </g> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/scale-vert-marks-after-slider-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/scale-vert-marks-after-slider-symbolic.svg new file mode 100644 index 0000000..37d9c04 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/scale-vert-marks-after-slider-symbolic.svg @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="24" + height="24" + version="1.1" + viewBox="0 0 24 24" + id="svg17" + sodipodi:docname="scale-vert-marks-after-slider-symbolic.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <sodipodi:namedview + id="namedview19" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="29.833333" + inkscape:cx="12" + inkscape:cy="12" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg17" /> + <defs + id="defs6"> + <linearGradient + id="color-primary-dark"> + <stop + stop-color="#1A73E8" + offset="1" + id="stop2" /> + </linearGradient> + <linearGradient + id="a" + x2="24" + gradientUnits="userSpaceOnUse" + xlink:href="#color-primary-dark" /> + </defs> + <path + d="m 20.485281,12 -4.24264,4.242641 a 6,6 0 1 1 0,-8.4852817 z" + fill="#000000" + id="path10" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/scale-vert-marks-before-slider-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/scale-vert-marks-before-slider-symbolic.svg new file mode 100644 index 0000000..1bc5cb6 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/scale-vert-marks-before-slider-symbolic.svg @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="24" + height="24" + version="1.1" + viewBox="0 0 24 24" + id="svg17" + sodipodi:docname="scale-vert-marks-before-slider-symbolic.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <sodipodi:namedview + id="namedview19" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="29.833333" + inkscape:cx="12" + inkscape:cy="12" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg17" /> + <defs + id="defs6"> + <linearGradient + id="color-primary-dark"> + <stop + stop-color="#1A73E8" + offset="1" + id="stop2" /> + </linearGradient> + <linearGradient + id="a" + x1="-2.6324e-15" + x2="24" + y1="-3.5527e-15" + y2="-3.5527e-15" + gradientUnits="userSpaceOnUse" + xlink:href="#color-primary-dark" /> + </defs> + <path + d="M 3.5147186,12 7.7573593,7.7573593 a 6,6 0 1 1 0,8.4852817 z" + fill="#000000" + id="path10" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/small-checkbox-checked-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/small-checkbox-checked-symbolic.svg new file mode 100644 index 0000000..4759e32 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/small-checkbox-checked-symbolic.svg @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="16" + height="16" + version="1.1" + viewBox="0 0 16 16" + id="svg4" + sodipodi:docname="small-checkbox-checked-symbolic.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:snap-global="false" + inkscape:zoom="15.821514" + inkscape:cx="10.176017" + inkscape:cy="9.0383259" + inkscape:window-width="1486" + inkscape:window-height="974" + inkscape:window-x="128" + inkscape:window-y="69" + inkscape:window-maximized="0" + inkscape:current-layer="svg4"> + <inkscape:grid + type="xygrid" + id="grid1068" /> + </sodipodi:namedview> + <path + id="path2" + d="m 11.943359,5.4550781 c 0.12781,0 0.255582,0.04855 0.353516,0.1464844 0.195869,0.1958686 0.195869,0.5111627 0,0.7070313 L 7.3457031,11.257812 c -0.1958686,0.19587 -0.5111626,0.19587 -0.7070312,0 L 3.8105469,8.4296875 c -0.1958686,-0.1958686 -0.1958686,-0.5111627 0,-0.7070313 0.1958686,-0.1958685 0.5111626,-0.1958685 0.7070312,0 L 6.9921875,10.197266 11.587891,5.6015625 c 0.09793,-0.097934 0.227659,-0.1464844 0.355468,-0.1464844 z" + sodipodi:nodetypes="sscccsssccs" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/small-checkbox-checked-symbolic@2.svg b/home-manager/themes/Catppuccin/assets/scalable/small-checkbox-checked-symbolic@2.svg new file mode 100644 index 0000000..a44f5c9 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/small-checkbox-checked-symbolic@2.svg @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="32" + height="32" + version="1.1" + viewBox="0 0 32 32" + id="svg4" + sodipodi:docname="small-checkbox-checked-symbolic@2.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:snap-global="false" + inkscape:zoom="7.910757" + inkscape:cx="17.191781" + inkscape:cy="29.074335" + inkscape:window-width="1486" + inkscape:window-height="974" + inkscape:window-x="128" + inkscape:window-y="69" + inkscape:window-maximized="0" + inkscape:current-layer="svg4"> + <inkscape:grid + type="xygrid" + id="grid1068" /> + </sodipodi:namedview> + <path + id="path2" + d="m 23.886718,10.910156 c 0.25562,0 0.511164,0.0971 0.707032,0.292969 0.391738,0.391737 0.391738,1.022325 0,1.414063 l -9.902344,9.898436 c -0.391737,0.39174 -1.022325,0.39174 -1.414062,0 L 7.6210938,16.859375 c -0.3917372,-0.391737 -0.3917372,-1.022325 0,-1.414063 0.3917372,-0.391737 1.0223252,-0.391737 1.4140624,0 l 4.9492188,4.94922 9.191407,-9.191407 c 0.19586,-0.195868 0.455318,-0.292969 0.710936,-0.292969 z" + sodipodi:nodetypes="sscccsssccs" + style="stroke-width:2" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/small-checkbox-mixed-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/small-checkbox-mixed-symbolic.svg new file mode 100644 index 0000000..d621934 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/small-checkbox-mixed-symbolic.svg @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="16" + height="16" + version="1.1" + viewBox="0 0 16 16" + id="svg4" + sodipodi:docname="small-checkbox-mixed-symbolic.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="22.375" + inkscape:cx="7.150838" + inkscape:cy="13.810056" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4"> + <inkscape:grid + type="xygrid" + id="grid967" /> + </sodipodi:namedview> + <path + id="path2" + d="m 4.5,8 h 7 C 11.777,8 12,8.223 12,8.5 12,8.777 11.777,9 11.5,9 h -7 C 4.223,9 4,8.777 4,8.5 4,8.223 4.223,8 4.5,8 Z" + sodipodi:nodetypes="sssssss" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/small-checkbox-mixed-symbolic@2.svg b/home-manager/themes/Catppuccin/assets/scalable/small-checkbox-mixed-symbolic@2.svg new file mode 100644 index 0000000..91c7006 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/small-checkbox-mixed-symbolic@2.svg @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="32" + height="32" + version="1.1" + viewBox="0 0 32 32" + id="svg4" + sodipodi:docname="small-checkbox-mixed-symbolic@2.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="11.1875" + inkscape:cx="5.5418994" + inkscape:cy="19.843575" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4"> + <inkscape:grid + type="xygrid" + id="grid967" /> + </sodipodi:namedview> + <path + id="path2" + d="m 9,16 h 14 c 0.554,0 1,0.446 1,1 0,0.554 -0.446,1 -1,1 H 9 C 8.446,18 8,17.554 8,17 8,16.446 8.446,16 9,16 Z" + sodipodi:nodetypes="sssssss" + style="stroke-width:2" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/small-radio-checked-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/small-radio-checked-symbolic.svg new file mode 100644 index 0000000..f2c9cf9 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/small-radio-checked-symbolic.svg @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="16" + height="16" + version="1.1" + viewBox="0 0 16 16" + id="svg4" + sodipodi:docname="small-radio-checked-symbolic.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="22.375" + inkscape:cx="8.5363128" + inkscape:cy="11.486034" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4" /> + <path + id="path2" + d="m 8,6 c 1.1045695,0 2,0.8954305 2,2 0,1.1045695 -0.8954305,2 -2,2 C 6.8954305,10 6,9.1045695 6,8 6,6.8954305 6.8954305,6 8,6 Z" + sodipodi:nodetypes="sssss" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/small-radio-checked-symbolic@2.svg b/home-manager/themes/Catppuccin/assets/scalable/small-radio-checked-symbolic@2.svg new file mode 100644 index 0000000..a06db4c --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/small-radio-checked-symbolic@2.svg @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="32" + height="32" + version="1.1" + viewBox="0 0 32 32" + id="svg4" + sodipodi:docname="small-radio-checked-symbolic@2.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="22.375" + inkscape:cx="8.5363128" + inkscape:cy="11.486034" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4" /> + <path + id="path2" + d="m 16,12 c 2.209139,0 4,1.790861 4,4 0,2.209139 -1.790861,4 -4,4 -2.209139,0 -4,-1.790861 -4,-4 0,-2.209139 1.790861,-4 4,-4 z" + sodipodi:nodetypes="sssss" + style="stroke-width:2" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/small-radio-mixed-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/small-radio-mixed-symbolic.svg new file mode 100644 index 0000000..d621934 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/small-radio-mixed-symbolic.svg @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="16" + height="16" + version="1.1" + viewBox="0 0 16 16" + id="svg4" + sodipodi:docname="small-checkbox-mixed-symbolic.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="22.375" + inkscape:cx="7.150838" + inkscape:cy="13.810056" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4"> + <inkscape:grid + type="xygrid" + id="grid967" /> + </sodipodi:namedview> + <path + id="path2" + d="m 4.5,8 h 7 C 11.777,8 12,8.223 12,8.5 12,8.777 11.777,9 11.5,9 h -7 C 4.223,9 4,8.777 4,8.5 4,8.223 4.223,8 4.5,8 Z" + sodipodi:nodetypes="sssssss" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/small-radio-mixed-symbolic@2.svg b/home-manager/themes/Catppuccin/assets/scalable/small-radio-mixed-symbolic@2.svg new file mode 100644 index 0000000..91c7006 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/small-radio-mixed-symbolic@2.svg @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="32" + height="32" + version="1.1" + viewBox="0 0 32 32" + id="svg4" + sodipodi:docname="small-checkbox-mixed-symbolic@2.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs8" /> + <sodipodi:namedview + id="namedview6" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + showgrid="false" + inkscape:zoom="11.1875" + inkscape:cx="5.5418994" + inkscape:cy="19.843575" + inkscape:window-width="1920" + inkscape:window-height="1012" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:current-layer="svg4"> + <inkscape:grid + type="xygrid" + id="grid967" /> + </sodipodi:namedview> + <path + id="path2" + d="m 9,16 h 14 c 0.554,0 1,0.446 1,1 0,0.554 -0.446,1 -1,1 H 9 C 8.446,18 8,17.554 8,17 8,16.446 8.446,16 9,16 Z" + sodipodi:nodetypes="sssssss" + style="stroke-width:2" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/unmaximize-symbolic.svg b/home-manager/themes/Catppuccin/assets/scalable/unmaximize-symbolic.svg new file mode 100644 index 0000000..492d47a --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/unmaximize-symbolic.svg @@ -0,0 +1,46 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="16" + height="16" + viewBox="0 0 16 16" + version="1.1" + sodipodi:docname="unmaximize.svg" + inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)" + id="svg831" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs6" /> + <sodipodi:namedview + pagecolor="#424242" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="1440" + inkscape:window-height="742" + id="namedview6" + showgrid="true" + inkscape:zoom="29.580633" + inkscape:cx="2.095966" + inkscape:cy="10.006547" + inkscape:window-x="0" + inkscape:window-y="32" + inkscape:window-maximized="1" + inkscape:pagecheckerboard="0" + inkscape:current-layer="svg831" /> + <path + d="M 6,6 C 4.892,6 4,6.892 4,8 v 2 c 0,1.108 0.892,2 2,2 h 2 c 1.108,0 2,-0.892 2,-2 V 8 C 10,6.892 9.108,6 8,6 Z m 0,1 h 2 c 0.554,0 1,0.446 1,1 v 2 c 0,0.554 -0.446,1 -1,1 H 6 C 5.446,11 5,10.554 5,10 V 8 C 5,7.446 5.446,7 6,7 Z" + id="path2896" + style="fill:#ffffff" /> + <path + d="M 8,4 C 6.892,4 6,4.892 6,6 H 7 C 7,5.446 7.446,5 8,5 h 2 c 0.554,0 1,0.446 1,1 v 2 c 0,0.554 -0.446,1 -1,1 v 1 c 1.108,0 2,-0.892 2,-2 V 6 C 12,4.892 11.108,4 10,4 Z" + opacity="0.35" + id="path2898" + style="fill:#ffffff" /> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scalable/unmaximize-symbolic@2.svg b/home-manager/themes/Catppuccin/assets/scalable/unmaximize-symbolic@2.svg new file mode 100644 index 0000000..85f4f3a --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scalable/unmaximize-symbolic@2.svg @@ -0,0 +1,4 @@ +<svg width="32" height="32" version="1.1" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"> + <path d="m12 12c-2.216 0-4 1.784-4 4v4c0 2.216 1.784 4 4 4h4c2.216 0 4-1.784 4-4v-4c0-2.216-1.784-4-4-4zm0 2h4c1.108 0 2 0.892 2 2v4c0 1.108-0.892 2-2 2h-4c-1.108 0-2-0.892-2-2v-4c0-1.108 0.892-2 2-2z" fill="#ffffff" stroke-width="2"/> + <path d="m16 8c-2.216 0-4 1.784-4 4h2c0-1.108 0.892-2 2-2h4c1.108 0 2 0.892 2 2v4c0 1.108-0.892 2-2 2v2c2.216 0 4-1.784 4-4v-4c0-2.216-1.784-4-4-4z" fill="#ffffff" opacity=".35" stroke-width="2"/> +</svg> diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-dark.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-dark.png Binary files differnew file mode 100644 index 0000000..b2b92ef --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-dark.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-dark@2.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-dark@2.png Binary files differnew file mode 100644 index 0000000..0e39be3 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-dark@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-disabled-dark.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-disabled-dark.png Binary files differnew file mode 100644 index 0000000..391164d --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-disabled-dark.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-disabled-dark@2.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-disabled-dark@2.png Binary files differnew file mode 100644 index 0000000..0e141b4 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-disabled-dark@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-disabled.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-disabled.png Binary files differnew file mode 100644 index 0000000..8ec0d53 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-disabled.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-disabled@2.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-disabled@2.png Binary files differnew file mode 100644 index 0000000..532ac30 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider-disabled@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider.png Binary files differnew file mode 100644 index 0000000..cb00cb8 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider@2.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider@2.png Binary files differnew file mode 100644 index 0000000..54f5b08 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-after-slider@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-dark.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-dark.png Binary files differnew file mode 100644 index 0000000..015821d --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-dark.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-dark@2.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-dark@2.png Binary files differnew file mode 100644 index 0000000..cf7c20f --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-dark@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-disabled-dark.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-disabled-dark.png Binary files differnew file mode 100644 index 0000000..735e3e8 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-disabled-dark.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-disabled-dark@2.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-disabled-dark@2.png Binary files differnew file mode 100644 index 0000000..35b0aec --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-disabled-dark@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-disabled.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-disabled.png Binary files differnew file mode 100644 index 0000000..04785e3 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-disabled.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-disabled@2.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-disabled@2.png Binary files differnew file mode 100644 index 0000000..936a8c4 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider-disabled@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider.png Binary files differnew file mode 100644 index 0000000..1fe2485 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider.png diff --git a/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider@2.png b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider@2.png Binary files differnew file mode 100644 index 0000000..a96a0a7 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-horz-marks-before-slider@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-dark.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-dark.png Binary files differnew file mode 100644 index 0000000..d3debe8 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-dark.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-dark@2.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-dark@2.png Binary files differnew file mode 100644 index 0000000..6caf95e --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-dark@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-disabled-dark.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-disabled-dark.png Binary files differnew file mode 100644 index 0000000..4532913 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-disabled-dark.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-disabled-dark@2.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-disabled-dark@2.png Binary files differnew file mode 100644 index 0000000..d6042e6 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-disabled-dark@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-disabled.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-disabled.png Binary files differnew file mode 100644 index 0000000..70eed02 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-disabled.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-disabled@2.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-disabled@2.png Binary files differnew file mode 100644 index 0000000..885d156 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider-disabled@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider.png Binary files differnew file mode 100644 index 0000000..a3cc4c0 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider@2.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider@2.png Binary files differnew file mode 100644 index 0000000..957eba3 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-after-slider@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-dark.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-dark.png Binary files differnew file mode 100644 index 0000000..2f21b00 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-dark.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-dark@2.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-dark@2.png Binary files differnew file mode 100644 index 0000000..1d228e7 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-dark@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-disabled-dark.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-disabled-dark.png Binary files differnew file mode 100644 index 0000000..eb5123d --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-disabled-dark.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-disabled-dark@2.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-disabled-dark@2.png Binary files differnew file mode 100644 index 0000000..e6c0698 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-disabled-dark@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-disabled.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-disabled.png Binary files differnew file mode 100644 index 0000000..7e3487d --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-disabled.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-disabled@2.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-disabled@2.png Binary files differnew file mode 100644 index 0000000..ab5af6f --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider-disabled@2.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider.png Binary files differnew file mode 100644 index 0000000..8578df7 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider.png diff --git a/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider@2.png b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider@2.png Binary files differnew file mode 100644 index 0000000..e2f8b24 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/scale-vert-marks-before-slider@2.png diff --git a/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-checked-dark.png b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-checked-dark.png Binary files differnew file mode 100644 index 0000000..c93dabf --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-checked-dark.png diff --git a/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-checked-dark@2.png b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-checked-dark@2.png Binary files differnew file mode 100644 index 0000000..d796ce8 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-checked-dark@2.png diff --git a/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-checked.png b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-checked.png Binary files differnew file mode 100644 index 0000000..0546a5e --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-checked.png diff --git a/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-checked@2.png b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-checked@2.png Binary files differnew file mode 100644 index 0000000..92dde69 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-checked@2.png diff --git a/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-unchecked-dark.png b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-unchecked-dark.png Binary files differnew file mode 100644 index 0000000..f6b914e --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-unchecked-dark.png diff --git a/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-unchecked-dark@2.png b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-unchecked-dark@2.png Binary files differnew file mode 100644 index 0000000..29ecf2b --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-unchecked-dark@2.png diff --git a/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-unchecked.png b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-unchecked.png Binary files differnew file mode 100644 index 0000000..40ff92e --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-unchecked.png diff --git a/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-unchecked@2.png b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-unchecked@2.png Binary files differnew file mode 100644 index 0000000..8e87ea7 --- /dev/null +++ b/home-manager/themes/Catppuccin/assets/selectionmode-checkbox-unchecked@2.png diff --git a/home-manager/themes/Catppuccin/gtk-dark.css b/home-manager/themes/Catppuccin/gtk-dark.css new file mode 100644 index 0000000..c933a2f --- /dev/null +++ b/home-manager/themes/Catppuccin/gtk-dark.css @@ -0,0 +1,8024 @@ +@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, #eebebe 0%, transparent 0%); + } + to { + background-image: radial-gradient(circle, #eebebe 100%, transparent 100%); + } +} + +/*************** + * Base States * + ***************/ +.background { + background-color: #303446; + color: #FFFFFF; +} + +#desktopwindow.background { + background-color: transparent; +} + +dnd { + color: #FFFFFF; +} + +.normal-icons { + -gtk-icon-size: 16px; +} + +.large-icons { + -gtk-icon-size: 32px; +} + +.aboutdialog .large-icons { + -gtk-icon-size: 128px; +} + +spinner:disabled, +arrow:disabled, +scrollbar:disabled, +check:disabled, +radio:disabled, +treeview.expander:disabled { + -gtk-icon-filter: opacity(0.5); +} + +iconview, .view { + background-color: #303446; + color: #FFFFFF; +} + +iconview:disabled, .view:disabled { + color: rgba(255, 255, 255, 0.5); +} + +iconview:selected, .view:selected { + color: #FFFFFF; +} + +textview text { + background-color: #303446; +} + +textview border { + background-color: #232634; + 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 #eebebe; + background-color: rgba(238, 190, 190, 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: #FFFFFF; + background-color: #303446; + border: 1px solid black; +} + +label.separator { + color: rgba(255, 255, 255, 0.7); +} + +label:disabled { + opacity: 1; + color: rgba(255, 255, 255, 0.5); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; + opacity: 1; +} + +label.osd { + border-radius: 6px; + background-color: rgba(29, 31, 43, 0.9); + color: #FFFFFF; +} + +.dim-label, row.expander image.expander-row-arrow, row label.subtitle { + color: rgba(255, 255, 255, 0.7); + opacity: 1; +} + +.accent { + color: #eebebe; +} + +.success { + color: #66BB6A; +} + +.warning { + color: #FBC02D; +} + +.error { + color: #F44336; +} + +.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; +} + +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: #FFFFFF; +} + +.osd .scale-popup > arrow, +.osd .scale-popup > contents, .osd popover > arrow, +.osd popover > contents, popover.touch-selection > arrow, +popover.touch-selection > contents, popover.magnifier > arrow, +popover.magnifier > contents, .osd { + color: #FFFFFF; + background-color: #303446; + background-clip: padding-box; + border-radius: 6px; + border: none; + box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15), 0 3px 3px 0 rgba(0, 0, 0, 0.18), 0 3px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +.osd { + padding: 6px; + margin: 6px; +} + +.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; +} + +/**************** + * Text Entries * + ****************/ + +entry headerbar popover.background entry, +headerbar popover.background entry entry, +entry { + min-height: 36px; + padding: 0 8px; + border-spacing: 6px; + border-radius: 6px; + caret-color: currentColor; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.7); + outline: 0 solid transparent; + outline-offset: 2px; +} + + +entry headerbar popover.background entry:focus-within, +headerbar popover.background entry entry:focus-within, +entry:focus-within { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px transparent; + color: #FFFFFF; + outline: 2px solid #eebebe; + outline-offset: -2px; +} + + +entry headerbar popover.background entry:drop(active), +headerbar popover.background entry entry:drop(active), +entry headerbar popover.background entry:hover:not(:focus-within), +headerbar popover.background entry entry:hover:not(:focus-within), +entry:drop(active), +entry:hover:not(:focus-within) { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; + outline-offset: 2px; +} + + +entry headerbar popover.background entry:disabled, +headerbar popover.background entry entry:disabled, +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); + outline: none; +} + + +entry headerbar popover.background entry.flat:focus-within, +headerbar popover.background entry entry.flat:focus-within, +entry headerbar popover.background entry.flat:disabled, +headerbar popover.background entry entry.flat:disabled, +entry headerbar popover.background entry.flat:hover, +headerbar popover.background entry entry.flat:hover, +entry headerbar popover.background entry.flat, +headerbar popover.background entry entry.flat, +entry.flat:focus-within, +entry.flat:disabled, +entry.flat:hover, +entry.flat { + min-height: 0; + padding: 2px; + background-color: transparent; + box-shadow: none; + border-radius: 0; + outline: none; +} + + +entry headerbar popover.background entry image, +headerbar popover.background entry entry image, +entry image { + color: rgba(255, 255, 255, 0.7); +} + + +entry headerbar popover.background entry image:hover, +headerbar popover.background entry entry image:hover, +entry headerbar popover.background entry image:active, +headerbar popover.background entry entry image:active, +entry image:hover, +entry image:active { + color: #FFFFFF; +} + + +entry headerbar popover.background entry image:disabled, +headerbar popover.background entry entry image:disabled, +entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + + +entry headerbar popover.background entry image.left, +headerbar popover.background entry entry image.left, +entry image.left { + margin: 0 6px 0 2px; +} + + +entry headerbar popover.background entry image.right, +headerbar popover.background entry entry image.right, +entry image.right { + margin: 0 2px 0 6px; +} + + +entry headerbar popover.background entry undershoot.left > undershoot.left, +headerbar popover.background entry entry undershoot.left > undershoot.left, +entry undershoot.left > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + + +entry headerbar popover.background entry undershoot.right > undershoot.right, +headerbar popover.background entry entry undershoot.right > undershoot.right, +entry undershoot.right > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + + +entry headerbar popover.background entry.error, +headerbar popover.background entry entry.error, +entry.error { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(244, 67, 54, 0.1); + color: rgba(244, 67, 54, 0.75); + outline: 0 solid transparent; + outline-offset: 2px; + outline: none; +} + + +entry headerbar popover.background entry.error:focus-within, +headerbar popover.background entry entry.error:focus-within, +entry.error:focus-within { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(244, 67, 54, 0.1); + box-shadow: inset 0 0 0 2px transparent; + color: #F44336; + outline: 2px solid #F44336; + outline-offset: -2px; + outline: none; +} + + +entry headerbar popover.background entry.error:drop(active), +headerbar popover.background entry entry.error:drop(active), +entry headerbar popover.background entry.error:hover:not(:focus-within), +headerbar popover.background entry entry.error:hover:not(:focus-within), +entry.error:drop(active), +entry.error:hover:not(:focus-within) { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: #F44336; + outline: 0 solid transparent; + outline-offset: 2px; + outline: none; +} + + +entry headerbar popover.background entry.error:disabled, +headerbar popover.background entry entry.error:disabled, +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(244, 67, 54, 0.1); + color: rgba(244, 67, 54, 0.35); + outline: none; + outline: none; +} + + +entry headerbar popover.background entry.error > text > selection, +headerbar popover.background entry entry.error > text > selection, +entry.error > text > selection { + background-color: rgba(244, 67, 54, 0.25); + color: #F44336; +} + + +entry headerbar popover.background entry.error image, +headerbar popover.background entry entry.error image, +entry.error image { + color: rgba(244, 67, 54, 0.75); +} + + +entry headerbar popover.background entry.error image:hover, +headerbar popover.background entry entry.error image:hover, +entry headerbar popover.background entry.error image:active, +headerbar popover.background entry entry.error image:active, +entry.error image:hover, +entry.error image:active { + color: #F44336; +} + + +entry headerbar popover.background entry.error image:disabled, +headerbar popover.background entry entry.error image:disabled, +entry.error image:disabled { + color: rgba(244, 67, 54, 0.35); +} + + +entry headerbar popover.background entry.warning, +headerbar popover.background entry entry.warning, +entry.warning { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(251, 192, 45, 0.1); + color: rgba(251, 192, 45, 0.75); + outline: 0 solid transparent; + outline-offset: 2px; + outline: none; +} + + +entry headerbar popover.background entry.warning:focus-within, +headerbar popover.background entry entry.warning:focus-within, +entry.warning:focus-within { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(251, 192, 45, 0.1); + box-shadow: inset 0 0 0 2px transparent; + color: #FBC02D; + outline: 2px solid #FBC02D; + outline-offset: -2px; + outline: none; +} + + +entry headerbar popover.background entry.warning:drop(active), +headerbar popover.background entry entry.warning:drop(active), +entry headerbar popover.background entry.warning:hover:not(:focus-within), +headerbar popover.background entry entry.warning:hover:not(:focus-within), +entry.warning:drop(active), +entry.warning:hover:not(:focus-within) { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: #FBC02D; + outline: 0 solid transparent; + outline-offset: 2px; + outline: none; +} + + +entry headerbar popover.background entry.warning:disabled, +headerbar popover.background entry entry.warning:disabled, +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(251, 192, 45, 0.1); + color: rgba(251, 192, 45, 0.35); + outline: none; + outline: none; +} + + +entry headerbar popover.background entry.warning > text > selection, +headerbar popover.background entry entry.warning > text > selection, +entry.warning > text > selection { + background-color: rgba(251, 192, 45, 0.25); + color: #FBC02D; +} + + +entry headerbar popover.background entry.warning image, +headerbar popover.background entry entry.warning image, +entry.warning image { + color: rgba(251, 192, 45, 0.75); +} + + +entry headerbar popover.background entry.warning image:hover, +headerbar popover.background entry entry.warning image:hover, +entry headerbar popover.background entry.warning image:active, +headerbar popover.background entry entry.warning image:active, +entry.warning image:hover, +entry.warning image:active { + color: #FBC02D; +} + + +entry headerbar popover.background entry.warning image:disabled, +headerbar popover.background entry entry.warning image:disabled, +entry.warning image:disabled { + color: rgba(251, 192, 45, 0.35); +} + + +entry headerbar popover.background entry.success, +headerbar popover.background entry entry.success, +entry.success { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(102, 187, 106, 0.1); + color: rgba(102, 187, 106, 0.75); + outline: 0 solid transparent; + outline-offset: 2px; + outline: none; +} + + +entry headerbar popover.background entry.success:focus-within, +headerbar popover.background entry entry.success:focus-within, +entry.success:focus-within { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(102, 187, 106, 0.1); + box-shadow: inset 0 0 0 2px transparent; + color: #66BB6A; + outline: 2px solid #66BB6A; + outline-offset: -2px; + outline: none; +} + + +entry headerbar popover.background entry.success:drop(active), +headerbar popover.background entry entry.success:drop(active), +entry headerbar popover.background entry.success:hover:not(:focus-within), +headerbar popover.background entry entry.success:hover:not(:focus-within), +entry.success:drop(active), +entry.success:hover:not(:focus-within) { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: #66BB6A; + outline: 0 solid transparent; + outline-offset: 2px; + outline: none; +} + + +entry headerbar popover.background entry.success:disabled, +headerbar popover.background entry entry.success:disabled, +entry.success:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(102, 187, 106, 0.1); + color: rgba(102, 187, 106, 0.35); + outline: none; + outline: none; +} + + +entry headerbar popover.background entry.success > text > selection, +headerbar popover.background entry entry.success > text > selection, +entry.success > text > selection { + background-color: rgba(102, 187, 106, 0.25); + color: #66BB6A; +} + + +entry headerbar popover.background entry.success image, +headerbar popover.background entry entry.success image, +entry.success image { + color: rgba(102, 187, 106, 0.75); +} + + +entry headerbar popover.background entry.success image:hover, +headerbar popover.background entry entry.success image:hover, +entry headerbar popover.background entry.success image:active, +headerbar popover.background entry entry.success image:active, +entry.success image:hover, +entry.success image:active { + color: #66BB6A; +} + + +entry headerbar popover.background entry.success image:disabled, +headerbar popover.background entry entry.success image:disabled, +entry.success image:disabled { + color: rgba(102, 187, 106, 0.35); +} + + +entry > progress, +entry progress > trough > progress { + margin: 0 -4px; + border-bottom: 2px solid #eebebe; + background-color: transparent; +} + + +entry button.image-button { + min-height: 24px; + min-width: 24px; + padding: 0; +} + +treeview entry.flat, treeview entry { + background-color: #303446; +} + +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: #FFFFFF; +} + +.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 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.7); + outline: 0 solid transparent; + outline-offset: 2px; +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: radial-gradient(farthest-side, #eebebe 0%, rgba(238, 190, 190, 0) 0%); + } + to { + background-image: radial-gradient(farthest-side, #eebebe 95%, rgba(238, 190, 190, 0)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button, popover.touch-selection button, popover.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.touch-selection button:focus, popover.magnifier button:focus, headerbar.selection-mode button:focus:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:hover, popover.touch-selection button:hover, popover.magnifier button:hover, headerbar.selection-mode button:hover:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:active, popover.touch-selection button:active, popover.magnifier button:active, headerbar.selection-mode button:active:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:checked, popover.touch-selection button:checked, popover.magnifier button:checked, headerbar.selection-mode button:checked:not(.suggested-action):not(.destructive-action) { + color: #FFFFFF; +} + +infobar.warning > revealer > box button:disabled, popover.touch-selection button:disabled, popover.magnifier button:disabled, headerbar.selection-mode button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.32); +} + +infobar.warning > revealer > box button:checked:disabled, popover.touch-selection button:checked:disabled, popover.magnifier button:checked:disabled, headerbar.selection-mode button:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +headerbar popover.background button:not(.suggested-action):not(.destructive-action):not(.flat), button { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1); + 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%; + outline: 0 solid transparent; + outline-offset: 2px; + color: #FFFFFF; +} + +headerbar popover.background button:focus:not(.suggested-action):not(.destructive-action):not(.flat), button:focus { + outline: 2px solid rgba(238, 190, 190, 0.35); + outline-offset: 0; +} + +headerbar popover.background button:hover:not(.suggested-action):not(.destructive-action):not(.flat), button:hover { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; + -gtk-icon-filter: brightness(1.2); +} + +headerbar popover.background button.keyboard-activating:not(.suggested-action):not(.destructive-action):not(.flat), button.keyboard-activating, headerbar popover.background button:active:not(.suggested-action):not(.destructive-action):not(.flat), button:active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +headerbar popover.background button:disabled:not(.suggested-action):not(.destructive-action):not(.flat), button:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); + outline-color: transparent; +} + +headerbar popover.background button:checked:not(.suggested-action):not(.destructive-action):not(.flat), button:checked { + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); +} + +headerbar popover.background button:checked:hover:not(.suggested-action):not(.destructive-action):not(.flat), button:checked:hover { + outline-color: transparent; + background-color: #f3d2d2; + color: rgba(0, 0, 0, 0.87); +} + +headerbar popover.background button:checked:disabled:not(.suggested-action):not(.destructive-action):not(.flat), button:checked:disabled { + outline-color: transparent; + background-color: rgba(238, 190, 190, 0.35); + color: rgba(0, 0, 0, 0.38); +} + +placessidebar row button.sidebar-button, calendar > header > button, scrollbar button, notebook > header > tabs > arrow, popover modelbutton, spinbutton > button, splitbutton.flat > button, +splitbutton.flat > menubutton > button { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1); + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + background-color: transparent; + outline: 0 solid transparent; + outline-offset: 2px; + color: rgba(255, 255, 255, 0.7); +} + +placessidebar row button.sidebar-button:focus:not(:hover):not(:active), calendar > header > button:focus:not(:hover):not(:active), scrollbar button:focus:not(:hover):not(:active), notebook > header > tabs > arrow:focus:not(:hover):not(:active), popover modelbutton:focus:not(:hover):not(:active), spinbutton > button:focus:not(:hover):not(:active), splitbutton.flat > button:focus:not(:hover):not(:active), +splitbutton.flat > menubutton > button:focus:not(:hover):not(:active) { + color: #FFFFFF; + outline: 2px solid rgba(255, 255, 255, 0.04); + outline-offset: -2px; +} + +placessidebar row button.sidebar-button:hover, calendar > header > button:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, popover modelbutton:hover, spinbutton > button:hover, splitbutton.flat > button:hover, +splitbutton.flat > menubutton > button:hover { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; +} + +placessidebar row button.sidebar-button:active, calendar > header > button:active, scrollbar button:active, notebook > header > tabs > arrow:active, popover modelbutton:active, spinbutton > button:active, splitbutton.flat > button:active, +splitbutton.flat > menubutton > button:active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; +} + +placessidebar row button.sidebar-button:disabled, calendar > header > button:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, popover modelbutton:disabled, spinbutton > button:disabled, splitbutton.flat > button:disabled, +splitbutton.flat > menubutton > button:disabled { + color: rgba(255, 255, 255, 0.32); + background-color: transparent; +} + +filechooser #pathbarbox > stack > box > button, window.messagedialog .response-area > box > button, window.dialog.message .dialog-action-area > button, .app-notification button, headerbar button:not(.suggested-action):not(.destructive-action), .toolbar button, dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child), splitbutton.suggested-action > button, splitbutton.suggested-action > menubutton > button, splitbutton.destructive-action > button, splitbutton.destructive-action > menubutton > button, splitbutton.opaque > button, splitbutton.opaque > menubutton > button, menubutton.suggested-action > button, menubutton.destructive-action > button, menubutton.opaque > button, menubutton.flat > button, button.flat { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1); + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + background-color: transparent; + outline: 0 solid transparent; + outline-offset: 2px; + color: rgba(255, 255, 255, 0.7); +} + +filechooser #pathbarbox > stack > box > button:focus:not(:hover):not(:active), window.messagedialog .response-area > box > button:focus:not(:hover):not(:active), window.dialog.message .dialog-action-area > button:focus:not(:hover):not(:active), .app-notification button:focus:not(:hover):not(:active), headerbar button:focus:not(:hover):not(:active):not(.suggested-action):not(.destructive-action), .toolbar button:focus:not(:hover):not(:active), dropdown > .linked:not(.vertical) > button:focus:not(:hover):not(:active):not(:only-child), +combobox > .linked:not(.vertical) > button:focus:not(:hover):not(:active):not(:only-child), splitbutton.suggested-action > button:focus:not(:hover):not(:active), splitbutton.suggested-action > menubutton > button:focus:not(:hover):not(:active), splitbutton.destructive-action > button:focus:not(:hover):not(:active), splitbutton.destructive-action > menubutton > button:focus:not(:hover):not(:active), splitbutton.opaque > button:focus:not(:hover):not(:active), splitbutton.opaque > menubutton > button:focus:not(:hover):not(:active), menubutton.suggested-action > button:focus:not(:hover):not(:active), menubutton.destructive-action > button:focus:not(:hover):not(:active), menubutton.opaque > button:focus:not(:hover):not(:active), menubutton.flat > button:focus:not(:hover):not(:active), button.flat:focus:not(:hover):not(:active) { + color: #FFFFFF; + outline: 2px solid rgba(255, 255, 255, 0.04); + outline-offset: -2px; +} + +filechooser #pathbarbox > stack > box > button:hover, window.messagedialog .response-area > box > button:hover, window.dialog.message .dialog-action-area > button:hover, .app-notification button:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), .toolbar button:hover, dropdown > .linked:not(.vertical) > button:hover:not(:only-child), +combobox > .linked:not(.vertical) > button:hover:not(:only-child), splitbutton.suggested-action > button:hover, splitbutton.suggested-action > menubutton > button:hover, splitbutton.destructive-action > button:hover, splitbutton.destructive-action > menubutton > button:hover, splitbutton.opaque > button:hover, splitbutton.opaque > menubutton > button:hover, menubutton.suggested-action > button:hover, menubutton.destructive-action > button:hover, menubutton.opaque > button:hover, menubutton.flat > button:hover, button.flat:hover { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; +} + +filechooser #pathbarbox > stack > box > button:active, window.messagedialog .response-area > box > button:active, window.dialog.message .dialog-action-area > button:active, .app-notification button:active, headerbar button:active:not(.suggested-action):not(.destructive-action), .toolbar button:active, dropdown > .linked:not(.vertical) > button:active:not(:only-child), +combobox > .linked:not(.vertical) > button:active:not(:only-child), splitbutton.suggested-action > button:active, splitbutton.suggested-action > menubutton > button:active, splitbutton.destructive-action > button:active, splitbutton.destructive-action > menubutton > button:active, splitbutton.opaque > button:active, splitbutton.opaque > menubutton > button:active, menubutton.suggested-action > button:active, menubutton.destructive-action > button:active, menubutton.opaque > button:active, menubutton.flat > button:active, button.flat:active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; +} + +filechooser #pathbarbox > stack > box > button:disabled, window.messagedialog .response-area > box > button:disabled, window.dialog.message .dialog-action-area > button:disabled, .app-notification button:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:disabled, dropdown > .linked:not(.vertical) > button:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:disabled:not(:only-child), splitbutton.suggested-action > button:disabled, splitbutton.suggested-action > menubutton > button:disabled, splitbutton.destructive-action > button:disabled, splitbutton.destructive-action > menubutton > button:disabled, splitbutton.opaque > button:disabled, splitbutton.opaque > menubutton > button:disabled, menubutton.suggested-action > button:disabled, menubutton.destructive-action > button:disabled, menubutton.opaque > button:disabled, menubutton.flat > button:disabled, button.flat:disabled { + color: rgba(255, 255, 255, 0.32); + background-color: transparent; +} + +filechooser #pathbarbox > stack > box > button:checked, window.messagedialog .response-area > box > button:checked, window.dialog.message .dialog-action-area > button:checked, .app-notification button:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), .toolbar button:checked, dropdown > .linked:not(.vertical) > button:checked:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:not(:only-child), splitbutton.suggested-action > button:checked, splitbutton.suggested-action > menubutton > button:checked, splitbutton.destructive-action > button:checked, splitbutton.destructive-action > menubutton > button:checked, splitbutton.opaque > button:checked, splitbutton.opaque > menubutton > button:checked, menubutton.suggested-action > button:checked, menubutton.destructive-action > button:checked, menubutton.opaque > button:checked, menubutton.flat > button:checked, button.flat:checked { + background-color: alpha(currentColor, 0.1); + color: #FFFFFF; +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, window.messagedialog .response-area > box > button:checked:disabled, window.dialog.message .dialog-action-area > button:checked:disabled, .app-notification button:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:checked:disabled, dropdown > .linked:not(.vertical) > button:checked:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), splitbutton.suggested-action > button:checked:disabled, splitbutton.suggested-action > menubutton > button:checked:disabled, splitbutton.destructive-action > button:checked:disabled, splitbutton.destructive-action > menubutton > button:checked:disabled, splitbutton.opaque > button:checked:disabled, splitbutton.opaque > menubutton > button:checked:disabled, menubutton.suggested-action > button:checked:disabled, menubutton.destructive-action > button:checked:disabled, menubutton.opaque > button:checked:disabled, menubutton.flat > button:checked:disabled, button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(255, 255, 255, 0.5); +} + +button.opaque { + box-shadow: none; +} + +.osd button.opaque:focus:focus-visible { + outline-color: rgba(255, 255, 255, 0.15); +} + +button.opaque:hover { + background-image: image(alpha(currentColor, 0.1)); +} + +button.keyboard-activating.opaque, button.opaque:active { + background-image: image(rgba(0, 0, 0, 0.2)); +} + +button.opaque:checked { + background-image: image(rgba(0, 0, 0, 0.15)); +} + +button.opaque:checked:hover { + background-image: image(rgba(0, 0, 0, 0.05)); +} + +button.opaque:checked.keyboard-activating, button.opaque:checked:active { + background-image: image(rgba(0, 0, 0, 0.3)); +} + +.nautilus-window .floating-bar button, placessidebar row button.sidebar-button, notebook > header > tabs > tab button.flat, popover.menu box.circular-buttons button.circular.image-button.model, spinbutton > 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) { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +button separator { + margin: 4px 1px; +} + +button.opaque { + background-color: #595d6b; + color: #FFFFFF; +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button, button.image-text-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button > box, +button.text-button.image-button > box > box, button.image-text-button > box, +button.image-text-button > box > box { + border-spacing: 4px; +} + +button.text-button.image-button > box > label, +button.text-button.image-button > box > box > label, button.image-text-button > box > label, +button.image-text-button > box > box > label { + padding-left: 2px; + padding-right: 2px; +} + +button.text-button.image-button label:first-child, button.image-text-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child, button.image-text-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child, button.image-text-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child, button.image-text-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child), button.image-text-button image:not(:only-child) { + margin: 0 4px; +} + +button.arrow-button { + padding-left: 9px; + padding-right: 9px; +} + +button.arrow-button > box { + border-spacing: 4px; +} + +button.arrow-button.text-button { + padding-left: 16px; + padding-right: 16px; +} + +button.arrow-button.text-button > box { + border-spacing: 6px; +} + +menubutton.pill > button, button.pill { + padding: 9px 30px; + border-radius: 9999px; +} + +button.card { + background-color: rgba(255, 255, 255, 0.04); + background-clip: padding-box; + font-weight: inherit; + border: 1px solid rgba(255, 255, 255, 0.12); + background-clip: border-box; +} + +button.card:hover { + background-image: none; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +button.card.keyboard-activating, button.card:active { + background-image: none; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +button.card:checked { + background-image: none; + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); + border-color: #eebebe; +} + +button.card:checked:hover { + background-image: none; + outline-color: transparent; + background-color: #f3d2d2; + color: rgba(0, 0, 0, 0.87); +} + +button.card:checked:disabled { + outline-color: transparent; + background-color: rgba(238, 190, 190, 0.35); + color: rgba(0, 0, 0, 0.38); +} + +button.card:checked.keyboard-activating, button.card:checked:active { + background-image: none; +} + +button.card:checked.has-open-popup { + background-image: none; +} + +button.card:drop(active) { + color: #FF7043; + box-shadow: inset 0 0 0 1px #FF7043; +} + +.linked:not(.vertical) > button:focus, .linked.vertical > button:focus { + box-shadow: none; + outline: none; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + background-color: alpha(currentColor, 0.05); +} + +.linked:not(.vertical) > button.flat:focus, .linked.vertical > button.flat:focus { + box-shadow: none; + outline: none; +} + +.linked:not(.vertical) > menubutton > button { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +button.osd { + min-width: 24px; + min-width: 24px; + padding: 6px; + box-shadow: none; + background-color: rgba(0, 0, 0, 0.35); + color: white; +} + +button.osd > image { + padding: 0; +} + +button.osd.remove-button { + padding: 0; +} + +button.osd:focus { + outline-color: transparent; +} + +button.osd:hover { + background-color: rgba(0, 0, 0, 0.45); + color: white; +} + +button.osd:active { + background-color: rgba(0, 0, 0, 0.65); + color: white; +} + +button.osd:disabled { + background-color: rgba(0, 0, 0, 0.15); + color: rgba(255, 255, 255, 0.35); +} + +button.suggested-action { + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); + box-shadow: none; +} + +button.suggested-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); + outline-color: transparent; +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(238, 190, 190, 0.2), 0 4px 3px 0 rgba(238, 190, 190, 0.14), 0 1px 6px 0 rgba(238, 190, 190, 0.12); +} + +button.suggested-action:checked { + background-color: rgba(179, 143, 143, 0.961); +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(238, 190, 190, 0.3), 0 2px 3px -1px rgba(238, 190, 190, 0.24), 0 2px 5px 0 rgba(238, 190, 190, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(238, 190, 190, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #eebebe; +} + +button.suggested-action.flat:disabled { + color: rgba(255, 255, 255, 0.32); + background-color: transparent; +} + +button.suggested-action.flat:checked { + background-color: rgba(238, 190, 190, 0.3); +} + +button.destructive-action { + background-color: #F44336; + color: #FFFFFF; + box-shadow: none; +} + +button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); + outline-color: transparent; +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(244, 67, 54, 0.2), 0 4px 3px 0 rgba(244, 67, 54, 0.14), 0 1px 6px 0 rgba(244, 67, 54, 0.12); +} + +button.destructive-action:checked { + background-color: #f77b72; +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(244, 67, 54, 0.3), 0 2px 3px -1px rgba(244, 67, 54, 0.24), 0 2px 5px 0 rgba(244, 67, 54, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(244, 67, 54, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #F44336; +} + +button.destructive-action.flat:disabled { + color: rgba(255, 255, 255, 0.32); + background-color: transparent; +} + +button.destructive-action.flat:checked { + background-color: rgba(244, 67, 54, 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, menubutton.circular > button, button.close, button.circular { + border-radius: 9999px; +} + +windowcontrols > button:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, menubutton.circular > button label, button.close label, button.circular label { + padding: 0; +} + +menubutton.osd { + background: none; + color: inherit; +} + +menubutton.suggested-action { + background-color: #eebebe; + color: white; +} + +menubutton.destructive-action { + background-color: #F44336; + color: white; +} + +menubutton.opaque { + background-color: #595d6b; + color: #FFFFFF; +} + +menubutton.suggested-action, menubutton.destructive-action, menubutton.opaque { + border-radius: 6px; +} + +menubutton.suggested-action.circular, menubutton.suggested-action.pill, menubutton.destructive-action.circular, menubutton.destructive-action.pill, menubutton.opaque.circular, menubutton.opaque.pill { + border-radius: 9999px; +} + +menubutton.suggested-action > button, menubutton.suggested-action > button:checked, menubutton.destructive-action > button, menubutton.destructive-action > button:checked, menubutton.opaque > button, menubutton.opaque > button:checked { + background-color: transparent; + color: inherit; +} + +menubutton.image-button > button { + min-width: 24px; + padding-left: 6px; + padding-right: 6px; +} + +menubutton arrow { + min-height: 16px; + min-width: 16px; +} + +menubutton arrow.none { + -gtk-icon-source: -gtk-icontheme("open-menu-symbolic"); +} + +menubutton arrow.down { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +menubutton arrow.up { + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +menubutton arrow.left { + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +menubutton arrow.right { + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); +} + +splitbutton { + border-radius: 6px; +} + +splitbutton, splitbutton > separator { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); + transition-property: background; +} + +splitbutton > separator { + margin-top: 6px; + margin-bottom: 6px; + background: none; +} + +splitbutton > menubutton > button { + padding: 6px 10px; +} + +splitbutton.image-button > button { + min-width: 24px; + padding-left: 6px; + padding-right: 6px; +} + +splitbutton.text-button.image-button > button, splitbutton.image-text-button > button { + padding-left: 9px; + padding-right: 9px; +} + +splitbutton.text-button.image-button > button > box, splitbutton.image-text-button > button > box { + border-spacing: 6px; +} + +splitbutton > button:dir(ltr), +splitbutton > menubutton > button:dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + margin-right: -1px; +} + +splitbutton > button:dir(rtl), +splitbutton > menubutton > button:dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + margin-left: -1px; +} + +splitbutton.flat > separator { + background: rgba(255, 255, 255, 0.12); +} + +splitbutton.flat:hover, splitbutton.flat:active, splitbutton.flat:checked { + background: alpha(currentColor, 0.07); +} + +splitbutton.flat:hover > separator, splitbutton.flat:active > separator, splitbutton.flat:checked > separator { + background: none; +} + +splitbutton.flat:focus-within:focus-visible > separator { + background: none; +} + +splitbutton.flat > button, +splitbutton.flat > menubutton > button { + border-radius: 6px; +} + +splitbutton.suggested-action { + background-color: #eebebe; + color: white; +} + +splitbutton.destructive-action { + background-color: #F44336; + color: white; +} + +splitbutton.opaque { + background-color: #595d6b; + color: #FFFFFF; +} + +splitbutton.suggested-action > button, splitbutton.suggested-action > button:checked, splitbutton.suggested-action > menubutton > button, splitbutton.suggested-action > menubutton > button:checked, splitbutton.destructive-action > button, splitbutton.destructive-action > button:checked, splitbutton.destructive-action > menubutton > button, splitbutton.destructive-action > menubutton > button:checked, splitbutton.opaque > button, splitbutton.opaque > button:checked, splitbutton.opaque > menubutton > button, splitbutton.opaque > menubutton > button:checked { + color: inherit; + background-color: transparent; +} + +splitbutton.suggested-action > menubutton > button:dir(ltr), splitbutton.destructive-action > menubutton > button:dir(ltr), splitbutton.opaque > menubutton > button:dir(ltr) { + box-shadow: inset 1px 0 rgba(255, 255, 255, 0.12); +} + +splitbutton.suggested-action > menubutton > button:dir(rtl), splitbutton.destructive-action > menubutton > button:dir(rtl), splitbutton.opaque > menubutton > button:dir(rtl) { + box-shadow: inset -1px 0 rgba(255, 255, 255, 0.12); +} + +splitbutton > menubutton > button > arrow.none { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +buttoncontent { + border-spacing: 6px; +} + +buttoncontent > label { + font-weight: bold; +} + +buttoncontent > label:dir(ltr) { + padding-right: 2px; +} + +buttoncontent > label:dir(rtl) { + padding-left: 2px; +} + +.arrow-button > box > buttoncontent > label:dir(ltr), splitbutton > button > buttoncontent > label:dir(ltr) { + padding-right: 0; +} + +.arrow-button > box > buttoncontent > label:dir(rtl), splitbutton > button > buttoncontent > label:dir(rtl) { + padding-left: 0; +} + +stacksidebar row.needs-attention > label, stackswitcher > button.needs-attention > label, +stackswitcher > button.needs-attention > image { + animation: needs-attention 225ms 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) > entry, .linked:not(.vertical) > button, .linked:not(.vertical) > button.image-button { + border-radius: 0; +} + +.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) > entry:last-child, .linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > entry:only-child, .linked:not(.vertical) > button:only-child { + border-radius: 6px; +} + +.linked.vertical > entry, .linked.vertical > button, .linked.vertical > button.image-button { + border-radius: 0; +} + +.linked.vertical > entry:first-child, .linked.vertical > button:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > entry:last-child, .linked.vertical > button:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > entry:only-child, .linked.vertical > button:only-child { + border-radius: 6px; +} + +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 { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + + +list > row button.image-button:not(.flat):active, +list > row button.image-button:not(.flat):checked { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + + +list > row button.image-button:not(.flat).suggested-action { + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); +} + + +list > row button.image-button:not(.flat).destructive-action { + background-color: #F44336; + color: #FFFFFF; +} + +/********* + * Links * + *********/ +link { + color: #3c84f7; +} + +link:visited { + color: #BA68C8; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #3c84f7; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #BA68C8; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton { + border-radius: 6px; + padding: 0; + border-spacing: 0; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.7); + outline: 0 solid transparent; + outline-offset: 2px; +} + +spinbutton:focus-within { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px transparent; + color: #FFFFFF; + outline: 2px solid #eebebe; + outline-offset: -2px; +} + +spinbutton:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); + outline: none; +} + +spinbutton > text { + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + margin: 0; +} + +spinbutton > button { + border: none; +} + +spinbutton > button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: none; +} + +spinbutton:not(.vertical) > text { + min-width: 32px; + padding-left: 12px; +} + +spinbutton:not(.vertical) > button { + padding: 0; + margin: 6px; +} + +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; +} + +cell.activatable spinbutton:not(.vertical) { + margin: 3px 0; +} + +cell.activatable spinbutton:not(.vertical) > button { + margin: 0; + padding: 0; + min-height: 24px; + border-radius: 0; +} + +cell.activatable spinbutton:not(.vertical) > button:last-child { + border-radius: 0 6px 6px 0; +} + +cell.activatable spinbutton:not(.vertical) > button.up:dir(ltr), cell.activatable spinbutton:not(.vertical) > button.down:dir(rtl) { + margin-left: 0; +} + +cell.activatable spinbutton:not(.vertical) > button.up:dir(rtl), cell.activatable spinbutton:not(.vertical) > button.down:dir(ltr) { + margin-right: 0; +} + +spinbutton.vertical > text { + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical > button { + padding: 0; + margin: 6px 9px; +} + +/************** + * ComboBoxes * + **************/ +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: 0; +} + +dropdown popover listview > row, +combobox popover listview > row { + padding: 6px; +} + +dropdown popover listview > row:selected, +combobox popover listview > row:selected { + color: #FFFFFF; + 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 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.7); + outline: 0 solid transparent; + outline-offset: 2px; +} + +button.combo:only-child:focus { + color: #FFFFFF; + outline: 2px solid rgba(255, 255, 255, 0.04); + outline-offset: -2px; +} + +button.combo:only-child:hover { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; +} + +button.combo:only-child:active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; +} + +button.combo:only-child:checked { + background-color: alpha(currentColor, 0.1); + color: #FFFFFF; +} + +button.combo:only-child:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); + outline-color: transparent; +} + +/************ + * Toolbars * + ************/ +.toolbar { + padding: 6px; + background-color: #303446; + border-spacing: 6px; +} + +.osd .toolbar { + background-color: transparent; +} + +.app-notification, .toolbar.osd { + transition: box-shadow 200ms ease-out; + padding: 6px; + border-radius: 12px; + box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15), 0 3px 3px 0 rgba(0, 0, 0, 0.18), 0 3px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #414559; + color: #FFFFFF; +} + +.app-notification:backdrop, .toolbar.osd:backdrop { + box-shadow: 0 4px 3px -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 entry, +.toolbar spinbutton, +.toolbar splitbutton, +.toolbar separator:not(.sidebar), +.toolbar button, +.toolbar menubutton, +.toolbar scalebutton { + margin-top: 0; + margin-bottom: 0; +} + +.toolbar menubutton > button, +.toolbar splitbutton > button, +.toolbar splitbutton > menubutton, +.toolbar scalebutton > button { + margin-top: 0; + margin-bottom: 0; +} + +.toolbar switch { + margin-top: 4px; + margin-bottom: 4px; +} + +.toolbar spinbutton entry, +.toolbar spinbutton button { + margin: 0; +} + +.toolbar popover.menu separator:not(.sidebar) { + margin-top: 6px; + margin-bottom: 6px; +} + +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: #303446; + background-clip: border-box; + box-shadow: none; +} + +searchbar > revealer > box entry, searchbar > revealer > box button, searchbar > revealer > box menubutton { + margin: 0; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + border: none; +} + +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: #FFFFFF; +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.32); +} + +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.32); +} + +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.32); +} + +headerbar entry { + background-color: rgba(255, 255, 255, 0.04); + color: #FFFFFF; +} + +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: #FFFFFF; +} + +headerbar entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1), color 75ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); + background-color: #232634; + color: #FFFFFF; + min-height: 48px; + padding: 0; + margin: 0; +} + +headerbar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar:backdrop { + background-color: #303446; + color: rgba(255, 255, 255, 0.7); +} + +headerbar:backdrop:disabled { + color: rgba(255, 255, 255, 0.32); +} + +headerbar.flat, headerbar.flat:backdrop { + background: none; + box-shadow: none; + transition: none; +} + +headerbar .title { + padding: 0 12px; + font-weight: bold; +} + +headerbar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +headerbar .subtitle, +headerbar .dim-label, +headerbar row.expander image.expander-row-arrow, +row.expander headerbar image.expander-row-arrow, +headerbar row label.subtitle, +row headerbar label.subtitle { + transition: color 75ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +headerbar .subtitle:backdrop, +headerbar .dim-label:backdrop, +headerbar row.expander image.expander-row-arrow:backdrop, +row.expander headerbar image.expander-row-arrow:backdrop, +headerbar row label.subtitle:backdrop, +row headerbar label.subtitle: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); +} + +headerbar > windowhandle > box { + padding: 0 6px; +} + +headerbar > windowhandle > box, +headerbar > windowhandle > box > box.start, +headerbar > windowhandle > box > box.end { + border-spacing: 6px; +} + +headerbar entry, +headerbar spinbutton, +headerbar button, +headerbar menubutton, +headerbar stackswitcher, +headerbar separator:not(.sidebar) { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar menubutton > button, +headerbar spinbutton > button, +headerbar splitbutton > button, +headerbar splitbutton > menubutton, +headerbar .linked > menubutton, +headerbar entry > menubutton { + margin-top: 0; + margin-bottom: 0; +} + +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); + opacity: 1; +} + +headerbar .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar popover.background button.suggested-action:disabled, +headerbar popover.background button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +headerbar popover.background entry, +headerbar popover.background spinbutton, +headerbar popover.background button, +headerbar popover.background menubutton, +headerbar popover.background stackswitcher { + margin-top: 0; + margin-bottom: 0; +} + +headerbar separator:not(.sidebar) { + background-color: rgba(255, 255, 255, 0.12); +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar.selection-mode { + transition: background-color 0.1ms 225ms, color 75ms cubic-bezier(0, 0, 0.2, 1); + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); +} + +headerbar.selection-mode:backdrop { + color: rgba(0, 0, 0, 0.6); +} + +headerbar.selection-mode .subtitle:link { + color: rgba(0, 0, 0, 0.87); +} + +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.default-decoration { + min-height: 36px; + padding: 0; + margin: 0; + box-shadow: none; + border: none; + outline: none; + background-image: image(#232634); +} + +headerbar.default-decoration:backdrop { + background-image: image(#303446); +} + +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 { + background: #232634 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, linear-gradient(to right, transparent 65%, rgba(238, 190, 190, 0.1)), linear-gradient(to top, #292d3d 3px, #2d3143); +} + +window.devel headerbar:backdrop { + background: #232634 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, image(#232634); + /* background-color would flash */ +} + +/************ + * Pathbars * + ************/ + +pathbar > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 6px; + background-color: alpha(currentColor, 0.08); + border: none; + box-shadow: none; +} + + +pathbar > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +pathbar > button:checked { + background-color: alpha(currentColor, 0.1); + color: #FFFFFF; +} + + +pathbar > button:checked:hover { + background-color: alpha(currentColor, 0.16); + color: #FFFFFF; +} + + +pathbar > button label, +pathbar > button image { + margin-left: 3px; + margin-right: 3px; +} + + +pathbar > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +.pathbar { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.7); + border: none; + border-radius: 6px; + padding: 2px; +} + +headerbar .pathbar { + margin-top: 6px; + margin-bottom: 6px; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.7); +} + +.pathbar > button { + margin-top: 0; + margin-bottom: 0; + min-height: 20px; + border-radius: 4px; + border: none; + box-shadow: none; +} + +.pathbar > button:last-child { + background-color: alpha(currentColor, 0.1); + color: #FFFFFF; +} + +/************** + * Tree Views * + **************/ +columnview.view, +treeview.view { + border-left-color: #494c5c; + border-top-color: #494c5c; +} + +columnview.view:hover, columnview.view:selected, +treeview.view:hover, +treeview.view:selected { + border-radius: 0; +} + +columnview.view:focus, +treeview.view:focus { + box-shadow: none; + outline: 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-end-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: #FFFFFF; +} + +columnview.view.expander:selected, +treeview.view.expander:selected { + color: #FFFFFF; +} + +columnview.view.expander:selected:hover, +treeview.view.expander:selected:hover { + color: #FFFFFF; +} + +columnview.view.expander:checked, +treeview.view.expander:checked { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +columnview.view.expander:disabled, +treeview.view.expander:disabled { + color: rgba(255, 255, 255, 0.32); +} + +columnview.view.progressbar, +treeview.view.progressbar { + border-bottom: 6px solid #eebebe; + 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: #303446; +} + +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: #303446; + background-clip: border-box; + color: #eebebe; +} + +columnview.view acceleditor > label, +treeview.view acceleditor > label { + background-color: #eebebe; +} + +stack.view treeview.view { + min-height: 36px; +} + +/********* + * Menus * + *********/ +menubar { + padding: 0; + background-color: #232634; + color: #FFFFFF; +} + +menubar:backdrop { + background-color: #303446; + color: rgba(255, 255, 255, 0.7); +} + +.csd menubar { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > item { + transition: all 75ms 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: #FFFFFF; +} + +menubar > item:disabled { + color: rgba(255, 255, 255, 0.32); +} + +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 { + color: #FFFFFF; + 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 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 label.title { + font-weight: bold; + padding: 4px 26px; +} + +/************ + * Popovers * + ************/ +popover.background { + font: initial; +} + +popover.background, popover.background:backdrop { + background-color: transparent; +} + +popover > arrow, +popover > contents { + transition: box-shadow 200ms ease-out; + padding: 6px; + background-color: #414559; + border-radius: 12px; + color: #FFFFFF; + 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 > contents > list, +popover > contents > .view, +popover > contents > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover > contents separator { + background-color: rgba(255, 255, 255, 0.12); + margin: 3px 0; +} + +popover > contents list separator { + margin: 0; +} + +popover > contents list > row { + border-radius: 6px; +} + +popover > contents stack > box { + padding: 0; +} + +popover > contents > box > button { + margin: 0; +} + +popover .view:not(:selected), +popover toolbar { + background-color: #414559; +} + +popover.menu button, +popover button.model { + min-height: 32px; + padding: 0 8px; +} + +popover modelbutton { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1); + min-height: 22px; + min-width: 56px; + padding: 3px 9px; + color: #FFFFFF; + font: initial; + border-radius: 6px; +} + +popover modelbutton:focus:not(:hover) { + transition: none; + box-shadow: none; + outline: none; +} + +popover modelbutton:disabled { + color: rgba(255, 255, 255, 0.5); +} + +popover modelbutton accelerator { + color: rgba(255, 255, 255, 0.5); + margin-left: 30px; +} + +popover modelbutton accelerator:disabled { + color: rgba(255, 255, 255, 0.12); +} + +popover modelbutton arrow.left { + -gtk-icon-source: -gtk-icontheme("go-previous-symbolic"); +} + +popover modelbutton arrow.right { + -gtk-icon-source: -gtk-icontheme("go-next-symbolic"); +} + +.osd popover, popover.touch-selection, popover.magnifier { + background-color: transparent; +} + +magnifier { + background-color: #303446; +} + +/************* + * Notebooks * + *************/ +tabbar tab, tabbar tabbox > tabboxchild > tab, notebook > header > tabs > tab { + min-height: 24px; + min-width: 24px; + padding: 3px 6px; + border: none; + background-clip: padding-box; + font-weight: 500; + border-radius: 6px; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1); + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + background-color: transparent; + outline: 0 solid transparent; + outline-offset: 2px; + color: rgba(255, 255, 255, 0.7); +} + +tabbar tab:hover:not(:checked):not(:selected), notebook > header > tabs > tab:hover:not(:checked):not(:selected) { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + box-shadow: none; +} + +tabbar tab:disabled, notebook > header > tabs > tab:disabled { + color: rgba(255, 255, 255, 0.32); + background-color: transparent; +} + +tabbar tab:active, notebook > header > tabs > tab:active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + box-shadow: none; +} + +tabbar tab:checked:not(:active), notebook > header > tabs > tab:checked:not(:active), tabbar tab:selected:not(:active), notebook > header > tabs > tab:selected:not(:active) { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, background-color 0ms; + background-color: rgba(255, 255, 255, 0.15); + color: #FFFFFF; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); +} + +tabbar tab:checked:not(:active):disabled, notebook > header > tabs > tab:checked:not(:active):disabled, tabbar tab:selected:not(:active):disabled, notebook > header > tabs > tab:selected:not(:active):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: #303446; + 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); + 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 > tabs > tab { + margin: 3px; +} + +notebook > header > tabs > tab > box { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header > tabs > tab > box:drop(active) { + background-color: rgba(255, 255, 255, 0.12); + color: #FFFFFF; +} + +notebook > header > tabs > tab button.flat:last-child { + margin-left: 6px; + margin-right: -3px; +} + +notebook > header > tabs > tab button.flat:first-child { + margin-left: -3px; + margin-right: 6px; +} + +notebook > header > tabs > tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top > tabs, notebook > header.bottom > tabs { + padding-left: 0; + padding-right: 0; +} + +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:not(:last-child), notebook > header.bottom > tabs > tab:not(: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, notebook > header.right > tabs { + padding-top: 0; + padding-bottom: 0; +} + +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:not(:last-child), notebook > header.right > tabs > tab:not(: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: 0 3px; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +tabbar > revealer > box { + box-shadow: none; +} + +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, #303446, rgba(0, 0, 0, 0) 20px); +} + +tabbar undershoot.right { + background: linear-gradient(to left, #303446, rgba(0, 0, 0, 0) 20px); +} + +tabbar .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#eebebe, 0.5), alpha(#eebebe, 0.3) 1px, alpha(#eebebe, 0) 20px); +} + +tabbar .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#eebebe, 0.5), alpha(#eebebe, 0.3) 1px, alpha(#eebebe, 0) 20px); +} + +tabbar tabbox { + background-color: rgba(255, 255, 255, 0.04); + background-image: none; + padding: 0; + margin: 0; + border-radius: 0; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +tabbar tabbox > background { + background: none; +} + +tabbar tabbox > separator { + margin: 9px 0; + min-width: 1px; + transition: opacity 150ms ease-in-out; +} + +tabbar tabbox > separator.hidden { + opacity: 0; +} + +tabbar tabbox > tabboxchild { + margin: 0 -3px; + padding: 0; +} + +tabbar tabbox > tabboxchild > tab { + margin: 3px; +} + +tabbar tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#eebebe, 0.4) 10%, alpha(#eebebe, 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(#eebebe, 0.4) 10%, alpha(#eebebe, 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, #232634, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) undershoot.right { + background: linear-gradient(to left, #232634, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#eebebe, 0.5), alpha(#eebebe, 0.3) 1px, alpha(#eebebe, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#eebebe, 0.5), alpha(#eebebe, 0.3) 1px, alpha(#eebebe, 0) 20px); +} + +tabbar:not(.inline) tabbox > background { + background-color: #232634; +} + +tabbar:not(.inline) .start-action, +tabbar:not(.inline) .end-action { + background-color: alpha(#232634, 0.6); + border-color: rgba(255, 255, 255, 0.12); +} + +tabbar:not(.inline):backdrop .box { + background-color: #303446; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); +} + +dnd tab { + min-height: 24px; + background-color: #232634; + color: #FFFFFF; + 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(#eebebe, 0.4) 10%, alpha(#eebebe, 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; +} + +tabbar tab button.image-button.tab-close-button, +dnd tab button.image-button.tab-close-button { + margin-right: -3px; +} + +tabview:drop(active), +tabbox:drop(active) { + box-shadow: none; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); + background-color: #303446; + 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 { + border: none; + background: none; + padding: 0; + outline: none; +} + +scrollbar > range > trough > slider { + transition: background-color 75ms 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: #FFFFFF; +} + +scrollbar > range > trough > slider:disabled { + background-color: rgba(255, 255, 255, 0.32); +} + +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(48, 52, 70, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(48, 52, 70, 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.32); +} + +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(65, 69, 89, 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 75ms 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: #eebebe; +} + +switch:disabled { + opacity: 0.5; +} + +switch image { + margin: -8px; +} + +switch > slider { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); + min-width: 18px; + min-height: 18px; + margin: 3px; + border-radius: 9999px; + outline: none; + box-shadow: 0 3px 3px -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); + 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; + border: none; + color: transparent; + background-color: rgba(255, 255, 255, 0.12); + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), box-shadow 150ms 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: rgba(0, 0, 0, 0.87); + background-color: #eebebe; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(238, 190, 190, 0.15); + background-color: #f9e6e6; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(238, 190, 190, 0.2); + background-color: #eebebe; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(0, 0, 0, 0.6); + background-color: rgba(238, 190, 190, 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, 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, +columnview.view:hover check, +columnview.view:hover radio, +columnview.view:selected check, +columnview.view:selected radio, +columnview.view:focus check, +columnview.view:focus radio { + box-shadow: none; +} + +treeview.view:hover check:checked, treeview.view:hover radio:checked, treeview.view:selected check:checked, treeview.view:selected radio:checked, treeview.view:focus check:checked, treeview.view:focus radio:checked, +columnview.view:hover check:checked, +columnview.view:hover radio:checked, +columnview.view:selected check:checked, +columnview.view:selected radio:checked, +columnview.view:focus check:checked, +columnview.view:focus radio:checked { + color: rgba(0, 0, 0, 0.87); + background-color: #eebebe; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale > trough { + transition: background-color 75ms 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 > trough > highlight { + transition: background-image 75ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#eebebe); +} + +scale > trough > highlight:disabled { + background-color: #303446; + background-image: image(rgba(255, 255, 255, 0.32)); +} + +scale > trough > fill { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.3); +} + +scale > trough > fill:disabled { + background-color: transparent; +} + +scale > trough > slider { + min-height: 18px; + min-width: 18px; + margin: -8px; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #eebebe; + background-color: #303446; + box-shadow: inset 0 0 0 2px #eebebe; +} + +scale > trough > slider:hover { + box-shadow: inset 0 0 0 2px #eebebe, 0 0 0 8px rgba(255, 255, 255, 0.12); +} + +scale > trough > slider:active { + box-shadow: inset 0 0 0 4px #eebebe, 0 0 0 8px rgba(255, 255, 255, 0.12); +} + +scale > trough > slider:disabled { + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.32); +} + +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 > trough > slider { + margin: -7px; +} + +scale > marks, +scale > value { + color: rgba(255, 255, 255, 0.7); +} + +scale indicator { + background-color: rgba(255, 255, 255, 0.3); + color: transparent; +} + +scale.marks-before:not(.marks-after) > trough > slider, scale.marks-after:not(.marks-before) > trough > slider { + transform: rotate(0); +} + +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) > trough > slider { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms 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) > trough > slider, scale.horizontal.marks-before:not(.marks-after) > trough > slider:hover, scale.horizontal.marks-before:not(.marks-after) > trough > slider:active, scale.horizontal.marks-before:not(.marks-after) > trough > slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) > trough > slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) > trough > slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) > trough > slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) > trough > slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) > trough > 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) > trough > 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) > trough > 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) > trough > slider { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms 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) > trough > slider, scale.horizontal.marks-after:not(.marks-before) > trough > slider:hover, scale.horizontal.marks-after:not(.marks-before) > trough > slider:active, scale.horizontal.marks-after:not(.marks-before) > trough > slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) > trough > slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) > trough > slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) > trough > slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) > trough > slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) > trough > 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) > trough > 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) > trough > 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) > trough > slider { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms 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) > trough > slider, scale.vertical.marks-before:not(.marks-after) > trough > slider:hover, scale.vertical.marks-before:not(.marks-after) > trough > slider:active, scale.vertical.marks-before:not(.marks-after) > trough > slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) > trough > slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) > trough > slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) > trough > slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) > trough > slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) > trough > 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) > trough > 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) > trough > 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) > trough > slider { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms 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) > trough > slider, scale.vertical.marks-after:not(.marks-before) > trough > slider:hover, scale.vertical.marks-after:not(.marks-before) > trough > slider:active, scale.vertical.marks-after:not(.marks-before) > trough > slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) > trough > slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) > trough > slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) > trough > slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) > trough > slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) > trough > 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) > trough > 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) > trough > 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 > trough > slider:dir(ltr), scale.color.horizontal > trough > 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) > trough > 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: #eebebe; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; + box-shadow: none; + margin: 0; + padding: 0; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #eebebe; +} + +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: #FBC02D; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #eebebe; +} + +levelbar block.full { + background-color: #66BB6A; +} + +levelbar block.empty { + background-color: rgba(255, 255, 255, 0.12); +} + +/**************** + * Print dialog * +*****************/ +window.dialog.print drawing { + color: #FFFFFF; + background: none; + border: none; + padding: 0; +} + +window.dialog.print drawing paper { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + background-color: #303446; + color: #FFFFFF; +} + +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: #303446; + background-clip: border-box; + border: none; +} + +actionbar > revealer > box button, actionbar > revealer > box entry, +actionbar > revealer > box menubutton, actionbar > revealer > box menubutton > button, +actionbar > revealer > box splitbutton, actionbar > revealer > box splitbutton > button, +actionbar > revealer > box spinbutton { + margin: 0; +} + +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; +} + +scrolledwindow.undershoot-top > undershoot.top { + box-shadow: none; + background: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +scrolledwindow.undershoot-bottom > undershoot.bottom { + box-shadow: none; + background: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +scrolledwindow > junction { + border: none; + background-color: #303446; +} + +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, separator.spacer { + min-width: 0; + min-height: 0; + background-color: transparent; + background-image: none; +} + +/********* + * Lists * + *********/ +list.content, +list.boxed-list { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(255, 255, 255, 0.12); +} + +listview, +list { + border-color: rgba(255, 255, 255, 0.12); + background-color: #303446; + background-clip: padding-box; +} + +listview > row, +list > row { + padding: 6px; + background-clip: padding-box; +} + +listview > row.expander, +list > row.expander { + padding: 0px; +} + +listview > row.expander .row-header, +list > row.expander .row-header { + padding: 2px; +} + +listview.horizontal row.separator:not(:last-child), listview.separators.horizontal > row:not(.separator):not(:last-child), +list.horizontal row.separator:not(:last-child), +list.separators.horizontal > row:not(.separator):not(:last-child) { + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +listview:not(.horizontal) row.separator:not(:last-child), listview.separators:not(.horizontal) > row:not(.separator):not(:last-child), +list:not(.horizontal) row.separator:not(:last-child), +list.separators:not(.horizontal) > row:not(.separator):not(:last-child) { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +list.frame { + border-radius: 6px; +} + +listview.view { + color: #FFFFFF; + background-color: transparent; +} + +popover.menu listview.view { + padding: 0; + border-radius: 6px; +} + +popover.menu listview.view > row { + margin-left: 0; + margin-right: 0; + border-radius: 6px; +} + +row { + color: rgba(255, 255, 255, 0.7); + background-clip: padding-box; +} + +row label.subtitle { + font-size: smaller; +} + +row > box.header { + margin-left: 12px; + margin-right: 12px; + min-height: 48px; +} + +row > box.header > .icon:disabled { + filter: opacity(0.35); +} + +row > box.header > box.title { + margin-top: 6px; + margin-bottom: 6px; + border-spacing: 3px; +} + +.nautilus-window .nautilus-grid-view child.activatable, columnview.view > header > button, +treeview.view > header > button, row.activatable { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms cubic-bezier(0, 0, 0.2, 1), font-weight 0; + outline: none; + box-shadow: none; + background-color: transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + outline: none; +} + +.nautilus-window .nautilus-grid-view child.activatable:focus, columnview.view > header > button:focus, +treeview.view > header > button:focus, row.activatable:focus { + color: #FFFFFF; + background-color: transparent; + box-shadow: none; + outline: none; +} + +.nautilus-window .nautilus-grid-view child.activatable:hover, columnview.view > header > button:hover, +treeview.view > header > button:hover, .nautilus-window .nautilus-grid-view child.has-open-popup.activatable, columnview.view > header > button.has-open-popup, +treeview.view > header > button.has-open-popup, row.activatable:hover, row.activatable.has-open-popup { + color: #FFFFFF; + background-color: alpha(currentColor, 0.05); + box-shadow: none; +} + +.nautilus-window .nautilus-grid-view child.activatable:active, columnview.view > header > button:active, +treeview.view > header > button:active, row.activatable:active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, font-weight 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.05) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.05); + color: #FFFFFF; + box-shadow: none; +} + +.nautilus-window .nautilus-grid-view child.activatable:selected, columnview.view > header > button:selected, +treeview.view > header > button:selected, row.activatable:selected { + background-color: alpha(currentColor, 0.06); +} + +.nautilus-window .nautilus-grid-view child.activatable:selected:hover, columnview.view > header > button:selected:hover, +treeview.view > header > button:selected:hover, row.activatable:selected:hover { + background-color: alpha(currentColor, 0.08); +} + +button row.activatable:focus, button row.activatable:hover, button row.activatable:active { + box-shadow: none; + background: none; +} + +button:checked row.activatable { + color: rgba(0, 0, 0, 0.87); +} + +row:selected { + background-color: alpha(currentColor, 0.06); + color: inherit; + box-shadow: none; +} + +row:selected:hover { + background-color: alpha(currentColor, 0.08); +} + +row:selected:focus, row:selected:focus-visible:focus-within { + outline: none; + background-color: alpha(currentColor, 0.08); +} + +row:selected:focus:hover, row:selected:focus-visible:focus-within:hover { + background-color: alpha(currentColor, 0.16); +} + +row:selected image, +row:selected label { + color: #FFFFFF; +} + +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); +} + +.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:last-child { + border-bottom: none; +} + +.rich-list > row > box { + border-spacing: 12px; +} + +row label.subtitle { + font-size: smaller; +} + +row > box.header { + margin-left: 12px; + margin-right: 12px; + border-spacing: 6px; + min-height: 50px; +} + +row > box.header > .icon:disabled { + filter: opacity(0.45); +} + +row > box.header > box.title { + margin-top: 6px; + margin-bottom: 6px; + border-spacing: 3px; + padding: 0; +} + +row > box.header > box.title, +row > box.header > box.title > .title, +row > box.header > box.title > .subtitle { + padding: 0; + font-weight: inherit; +} + +row > box.header > .prefixes, +row > box.header > .suffixes { + border-spacing: 6px; +} + +row > box.header > .icon:dir(ltr), +row > box.header > .prefixes:dir(ltr) { + margin-right: 6px; +} + +row > box.header > .icon:dir(rtl), +row > box.header > .prefixes:dir(rtl) { + margin-left: 6px; +} + +row.entry:not(:selected).activatable.focused:hover, row.entry:not(:selected).activatable.focused:active { + background-color: transparent; +} + +row.entry .edit-icon, row.entry .indicator { + min-width: 24px; + min-height: 24px; + padding: 5px; +} + +row.entry .edit-icon:disabled { + opacity: 0.5; +} + +row.entry .indicator { + opacity: 0.65; +} + +row.entry.monospace { + font-family: inherit; +} + +row.entry.monospace text { + font-family: monospace; +} + +row.entry.error text > selection:focus-within { + background-color: alpha(#F44336, 0.2); +} + +row.entry.error text > cursor-handle > contents { + background-color: currentColor; +} + +row.entry.warning text > selection:focus-within { + background-color: alpha(#FBC02D, 0.2); +} + +row.entry.warning text > cursor-handle > contents { + background-color: currentColor; +} + +row.entry.success text > selection:focus-within { + background-color: alpha(#66BB6A, 0.2); +} + +row.entry.success text > cursor-handle > contents { + background-color: currentColor; +} + +row.combo image.dropdown-arrow:disabled { + filter: opacity(0.45); +} + +row.combo listview.inline { + background: none; + border: none; + box-shadow: none; + color: inherit; +} + +row.combo listview.inline, row.combo listview.inline:disabled { + background: none; + color: inherit; +} + +row.combo popover > contents { + min-width: 120px; +} + +list.content > row, list.content > row.expander row.header, +list.boxed-list > row, +list.boxed-list > row.expander row.header, row.expander list.nested > row { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +list.content > row:not(:selected).activatable:hover, list.content > row.expander row.header:not(:selected).activatable:hover, +list.boxed-list > row:not(:selected).activatable:hover, +list.boxed-list > row.expander row.header:not(:selected).activatable:hover, row.expander list.nested > row:not(:selected).activatable:hover { + background-color: alpha(currentColor, 0.08); +} + +list.content > row:not(:selected).activatable:active, list.content > row.expander row.header:not(:selected).activatable:active, +list.boxed-list > row:not(:selected).activatable:active, +list.boxed-list > row.expander row.header:not(:selected).activatable:active, row.expander list.nested > row:not(:selected).activatable:active { + background-color: alpha(currentColor, 0.12); +} + +list.content > row:not(:selected).activatable.has-open-popup, list.content > row.expander row.header:not(:selected).activatable.has-open-popup, +list.boxed-list > row:not(:selected).activatable.has-open-popup, +list.boxed-list > row.expander row.header:not(:selected).activatable.has-open-popup, row.expander list.nested > row:not(:selected).activatable.has-open-popup { + background-color: alpha(currentColor, 0.03); +} + +row.expander { + background: none; + padding: 0px; +} + +row.expander > box > list { + background: none; + color: inherit; +} + +row.expander list.nested { + color: inherit; +} + +row.expander image.expander-row-arrow { + transition: -gtk-icon-transform 200ms cubic-bezier(0, 0, 0.2, 1); +} + +row.expander image.expander-row-arrow:dir(ltr) { + margin-left: 6px; +} + +row.expander image.expander-row-arrow:dir(rtl) { + margin-right: 6px; +} + +row.expander image.expander-row-arrow:dir(ltr) { + -gtk-icon-transform: rotate(0.5turn); +} + +row.expander image.expander-row-arrow:dir(rtl) { + -gtk-icon-transform: rotate(-0.5turn); +} + +row.expander image.expander-row-arrow:disabled { + filter: opacity(0.45); +} + +row.expander:checked image.expander-row-arrow { + -gtk-icon-transform: rotate(0turn); + opacity: 1; +} + +row.expander:checked image.expander-row-arrow:not(:disabled) { + color: #eebebe; +} + +.osd row.expander:checked image.expander-row-arrow:not(:disabled) { + color: inherit; +} + +list.content > row.expander, +list.boxed-list > row.expander { + border: none; +} + +list.content > row:first-child, list.content > row:first-child.expander row.header, +list.boxed-list > row:first-child, +list.boxed-list > row:first-child.expander row.header { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +list.content > row:last-child, list.content > row:last-child.expander:not(:checked), list.content > row:last-child.expander:not(:checked) row.header, list.content > row:last-child.expander:checked list.nested, list.content > row:last-child.expander:checked list.nested > row:last-child, +list.boxed-list > row:last-child, +list.boxed-list > row:last-child.expander:not(:checked), +list.boxed-list > row:last-child.expander:not(:checked) row.header, +list.boxed-list > row:last-child.expander:checked list.nested, +list.boxed-list > row:last-child.expander:checked list.nested > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; + border-bottom-width: 0; +} + +columnview > listview > row { + padding: 0; +} + +columnview > listview > row > cell { + padding: 8px 6px; +} + +columnview > listview > row > cell:not(:first-child) { + border-left: 1px solid transparent; +} + +columnview.column-separators > listview > row > cell { + border-left-color: rgba(255, 255, 255, 0.12); +} + +columnview.data-table > listview > row > cell { + padding-top: 2px; + padding-bottom: 2px; +} + +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 #eebebe; +} + +columnview row:not(:selected) cell editablelabel.editing text selection { + color: rgba(0, 0, 0, 0.87); + background-color: #eebebe; +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 6px; + border-spacing: 0; + padding: 0; + border: none; + background-image: none; +} + +.app-notification button.text-button:not(:disabled) { + color: #eebebe; +} + +.app-notification > box > label { + margin-left: 9px; +} + +.app-notification.frame, +.app-notification border { + border: none; +} + +/************* + * Expanders * + *************/ +expander { + transition: all 75ms 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: #FFFFFF; +} + +expander:checked { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +expander:disabled { + color: rgba(255, 255, 255, 0.32); +} + +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: #FFFFFF; +} + +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: 6px; + margin: 0; +} + +calendar > grid > label.today:selected { + box-shadow: none; +} + +calendar > grid > label:focus { + outline-style: none; +} + +calendar > grid > label.day-number { + padding: 6px; +} + +calendar > grid > label.day-number.other-month { + color: alpha(currentColor, 0.3); +} + +/*********** + * Dialogs * + ***********/ +window.messagedialog .response-area > box > button, window.dialog.message .dialog-action-area > button { + border-radius: 0; + min-height: 28px; + padding: 6px 12px; + margin: 0; + border: none; +} + +window.messagedialog .response-area > box > button:first-child, window.dialog.message .dialog-action-area > button:first-child { + border-radius: 0 0 0 12px; +} + +window.messagedialog .response-area > box > button:last-child, window.dialog.message .dialog-action-area > button:last-child { + border-radius: 0 0 12px 0; +} + +window.messagedialog .response-area > box > button:only-child, window.dialog.message .dialog-action-area > button:only-child { + border-radius: 0 0 12px 12px; +} + +window.dialog.message.background { + background-color: #414559; +} + +window.dialog.message box.dialog-vbox.vertical { + margin-top: 6px; + border-spacing: 24px; +} + +window.dialog.message box.dialog-vbox.vertical > box.vertical { + margin-bottom: 6px; +} + +window.dialog.message box.dialog-vbox.vertical > box > box > box > label.title { + font-weight: 800; + font-size: 15pt; +} + +window.dialog.message .titlebar { + min-height: 24px; + border-style: none; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #414559; + color: #FFFFFF; +} + +window.dialog.message .titlebar:backdrop { + background-color: #414559; + color: rgba(255, 255, 255, 0.7); +} + +window.dialog.message .dialog-action-area { + border-top: 1px solid rgba(255, 255, 255, 0.12); + margin: 0; + border-spacing: 0; +} + +window.dialog.message .dialog-action-area > button { + border: none; +} + +window.dialog.message .dialog-action-area > button:not(:last-child) { + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +window.dialog.message .dialog-action-area > button.suggested-action:not(:disabled) { + color: #eebebe; +} + +window.dialog.message .dialog-action-area > button.destructive-action:not(:disabled) { + color: #F44336; +} + +window.aboutdialog.background.csd scrolledwindow.frame, window.aboutdialog.background.csd scrolledwindow.frame > viewport.view, window.aboutdialog.background.csd scrolledwindow.frame > textview.view, window.aboutdialog.background.csd scrolledwindow.frame > textview.view > text { + border-radius: 6px; +} + +/******************** + * AdwMessageDialog * + ********************/ +window.messagedialog { + background-color: #414559; + color: #FFFFFF; +} + +window.messagedialog .message-area { + padding: 24px 30px; + border-spacing: 10px; +} + +window.messagedialog .response-area > box > button.suggested { + color: #eebebe; +} + +window.messagedialog .response-area > box > button.destructive { + color: #F44336; +} + +window.messagedialog.csd:not(.solid-csd) { + border-radius: 12px; +} + +window.messagedialog.csd:not(.solid-csd) .response-area > box.horizontal > button { + margin: 0; +} + +window.messagedialog.csd:not(.solid-csd) .response-area > box.horizontal > button:first-child { + margin-left: 0; +} + +window.messagedialog.csd:not(.solid-csd) .response-area > box.horizontal > button:last-child { + margin-right: 0; +} + +window.messagedialog.csd:not(.solid-csd) .response-area > box.vertical > button { + margin-top: 0; + margin-bottom: 0; +} + +window.messagedialog.csd:not(.solid-csd) .response-area > box.vertical > button:last-child { + border-bottom-left-radius: 12px; + border-bottom-right-radius: 12px; + margin-bottom: 0; +} + +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: #303446; +} + +filechooser stack.view frame > border { + border: none; +} + +filechooserbutton > button > box { + border-spacing: 6px; +} + +filechooserbutton:drop(active) { + box-shadow: none; + border-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; + background-color: #232634; +} + +.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; + color: inherit; +} + +paned .sidebar.left, paned .sidebar.right, paned .sidebar.left:dir(rtl), paned .sidebar:dir(rtl), paned .sidebar:dir(ltr), paned .sidebar { + border-style: none; +} + +leaflet.unfolded > box > stacksidebar.sidebar { + border: none; +} + +stacksidebar list { + padding: 6px; + background-color: #232634; +} + +stacksidebar row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +stacksidebar row:selected { + 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.12); +} + +/********************** + * Navigation Sidebar * + **********************/ +.navigation-sidebar { + padding: 4.5px 0; + border-right: none; +} + +.navigation-sidebar, .navigation-sidebar.view, .navigation-sidebar.view:disabled { + background-color: transparent; + color: inherit; +} + +.navigation-sidebar.background, .navigation-sidebar.background:disabled { + background-color: #232634; + color: rgba(255, 255, 255, 0.7); +} + +.navigation-sidebar > separator { + margin: 4.5px 0; +} + +.navigation-sidebar > row { + min-height: 24px; + padding: 6px; + border-radius: 6px; + margin: 1.5px 6px; +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 75ms 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.32); +} + +placessidebar > viewport.frame { + border-style: none; +} + +placessidebar list > separator { + margin: 3px 0; +} + +placessidebar row:selected { + font-weight: 500; +} + +placessidebar row image.sidebar-icon:dir(ltr) { + padding-right: 8px; +} + +placessidebar row image.sidebar-icon:dir(rtl) { + padding-left: 8px; +} + +placessidebar row label.sidebar-label { + color: inherit; +} + +placessidebar row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar row.sidebar-new-bookmark-row { + color: #eebebe; +} + +placessidebar row.sidebar-new-bookmark-row image.sidebar-icon { + color: #eebebe; +} + +placessidebar row:drop(active) { + background-color: 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(#494c5c); + background-size: 1px 1px; + background-clip: content-box; + box-shadow: none; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #303446; + background-image: image(#494c5c), image(#494c5c); + 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 > revealer > box { + padding: 6px; + border-spacing: 12px; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + box-shadow: none; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #303446; + color: #FFFFFF; +} + +infobar.info > revealer > box button.text-button:not(:disabled):not(.suggested-action):not(.destructive-action), infobar.info:hover > revealer > box button.text-button:not(:disabled):not(.suggested-action):not(.destructive-action), infobar.info:backdrop > revealer > box button.text-button:not(:disabled):not(.suggested-action):not(.destructive-action) { + color: #eebebe; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); +} + +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: rgba(0, 0, 0, 0.87); +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #e9aaaa; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #FBC02D; + 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: #fbb814; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #F44336; + color: #FFFFFF; +} + +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: #FFFFFF; +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: #FFFFFF; +} + +infobar.error:hover > revealer > box { + background-color: #f32c1e; +} + +/************ + * Tooltips * + ************/ +tooltip { + padding: 6px 12px; + box-shadow: none; + border: none; +} + +tooltip.background { + background-color: rgba(29, 31, 43, 0.9); + color: #FFFFFF; + 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); + border-radius: 6px; + margin: 2px 6px 8px 6px; +} + +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: #FFFFFF; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorchooser colorswatch:hover { + transition: box-shadow 200ms ease-out; + box-shadow: 0 0 0 2px #eebebe; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; + color: #FFFFFF; +} + +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 3px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -1px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 200ms ease-out; + border-radius: 6px; + box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15), 0 3px 3px 0 rgba(0, 0, 0, 0.18), 0 3px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #414559; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 4px 3px -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: #303446; +} + +/********************** + * Window Decorations * + **********************/ +window { + border: none; +} + +window.csd { + border-radius: 12px; + outline-offset: -1px; + outline: 1px solid rgba(255, 255, 255, 0.1); + margin: 0; + transition: none; + box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2), 0 15px 16px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 36px transparent, 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +window.csd:backdrop { + transition: box-shadow 200ms ease-out; + box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15), 0 3px 3px 0 rgba(0, 0, 0, 0.18), 0 3px 6px 0 rgba(0, 0, 0, 0.12), 0 0 36px transparent, 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +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; + transition: none; +} + +window.csd.maximized, window.csd.fullscreen { + box-shadow: none; + outline: none; +} + +window.solid-csd { + margin: 0; + padding: 2px; + border-radius: 0; + background-color: #232634; + border: 1px solid #494c5c; +} + +window.solid-csd:backdrop { + background-color: #303446; +} + +window.ssd { + box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.12); +} + +windowcontrols > button:not(.suggested-action):not(.destructive-action) { + min-height: 16px; + min-width: 16px; + padding: 10px 0; + margin-left: 4px; + margin-right: 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: transparent; + background: none; +} + +windowcontrols > button.minimize:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.minimize:active:not(.suggested-action):not(.destructive-action), windowcontrols > button.maximize:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.maximize:active:not(.suggested-action):not(.destructive-action), windowcontrols > button.close:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.close:active:not(.suggested-action):not(.destructive-action) { + box-shadow: none; +} + +windowcontrols > button.minimize:active:not(.suggested-action):not(.destructive-action) > image, windowcontrols > button.maximize:active:not(.suggested-action):not(.destructive-action) > image, windowcontrols > button.close:active:not(.suggested-action):not(.destructive-action) > image { + box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.25); +} + +windowcontrols > button.minimize:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.minimize:active:not(.suggested-action):not(.destructive-action), windowcontrols > button.maximize:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.maximize:active:not(.suggested-action):not(.destructive-action), windowcontrols > button.close:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.close:active:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.5); +} + +windowcontrols > button.minimize:backdrop:not(.suggested-action):not(.destructive-action) > image, windowcontrols > button.maximize:backdrop:not(.suggested-action):not(.destructive-action) > image, windowcontrols > button.close:backdrop:not(.suggested-action):not(.destructive-action) > image { + background-color: rgba(255, 255, 255, 0.3); +} + +windowcontrols > button.minimize:backdrop:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.minimize:backdrop:active:not(.suggested-action):not(.destructive-action), windowcontrols > button.maximize:backdrop:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.maximize:backdrop:active:not(.suggested-action):not(.destructive-action), windowcontrols > button.close:backdrop:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.close:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +windowcontrols > button.minimize:not(.suggested-action):not(.destructive-action) > image { + background-color: #e5c890; +} + +windowcontrols > button.minimize:active:not(.suggested-action):not(.destructive-action) > image { + background-color: #ecd6ac; +} + +windowcontrols > button.maximize:not(.suggested-action):not(.destructive-action) > image { + background-color: #a6d189; +} + +windowcontrols > button.maximize:active:not(.suggested-action):not(.destructive-action) > image { + background-color: #bcdda7; +} + +windowcontrols > button.close:not(.suggested-action):not(.destructive-action) > image { + background-color: #e78284; +} + +windowcontrols > button.close:active:not(.suggested-action):not(.destructive-action) > image { + background-color: #eda1a3; +} + +windowcontrols { + border-spacing: 6px; +} + +windowcontrols:not(.empty).start:dir(ltr), windowcontrols:not(.empty).end:dir(rtl) { + margin-right: 6px; + margin-left: 6px; +} + +windowcontrols:not(.empty).start:dir(rtl), windowcontrols:not(.empty).end:dir(ltr) { + margin-left: 6px; + margin-right: 6px; +} + +windowcontrols > button:not(.suggested-action):not(.destructive-action) > image { + border-radius: 100%; + padding: 0; +} + +.view:selected, iconview:selected, gridview > child:selected, columnview.view:selected, +treeview.view:selected, calendar:selected, calendar > grid > label.day-number:selected { + background-color: alpha(currentColor, 0.06); +} + +flowbox > flowboxchild:selected, calendar > grid > label.today { + color: #eebebe; + background-color: rgba(238, 190, 190, 0.2); +} + +textview text selection:focus, textview text selection, label > selection, +entry > text > selection, spinbutton > text > selection, +entry headerbar popover.background entry > text > selection, +headerbar popover.background entry entry > text > selection, calendar > grid > label.today:selected { + color: rgba(0, 0, 0, 0.87); + background-color: #eebebe; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #eebebe; + -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: #414559; + color: #FFFFFF; + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #eebebe; +} + +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):hover { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, background-color 0ms; + background-color: rgba(255, 255, 255, 0.15); + color: #FFFFFF; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); +} + +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: 0 1px 2px rgba(0, 0, 0, 0.1); +} + +.icon-dropshadow { + -gtk-icon-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 1px 6px rgba(0, 0, 0, 0.1); +} + +/********* + * 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: #eebebe; +} + +popover.emoji-picker emoji { + font-size: x-large; + padding: 6px; + transition: all 75ms 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: #FFFFFF; +} + +popover.entry-completion > contents { + padding: 0; +} + +.nautilus-window placesview label { + color: rgba(255, 255, 255, 0.7); +} + +.nautilus-window .floating-bar { + min-height: 32px; + padding: 0; + margin: 6px; + border-style: none; + border-radius: 6px; + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); + box-shadow: 0 3px 3px -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); +} + +.nautilus-window .floating-bar button { + margin: 4px; + color: rgba(0, 0, 0, 0.87); +} + +#NautilusQueryEditor > menubutton > button.image-button { + min-width: 24px; + min-height: 24px; +} + +#NautilusQueryEditor > text, #NautilusQueryEditor > box, #NautilusQueryEditor > menubutton > button.image-button { + margin: 6px 0; +} + +#NautilusQueryEditorTag { + background-color: rgba(255, 255, 255, 0.12); +} + +#NautilusQueryEditorTag > button.image-button { + margin: 0; + padding: 0; +} + +#NautilusPathBar { + background-color: rgba(255, 255, 255, 0.04); + border-radius: 6px; + margin: 6px 0; +} + +#NautilusPathButton { + margin: 0 3px; + border-radius: 6px; +} + +#NautilusPathButton.current-dir { + color: #FFFFFF; +} + +#NautilusPathButton.current-dir:hover, #NautilusPathButton.current-dir:active { + background: none; + box-shadow: none; +} + +#NautilusPathButton:first-child { + margin-left: 0; +} + +#NautilusViewCell clamp box { + margin: 0; + border-spacing: 0; +} + +window.dialog > box > stack > box > box > notebook.frame { + border-width: 0 0 0 1px; + border-radius: 0; +} + +.display-container.card { + border-radius: 0; + box-shadow: none; + border-width: 0 0 1px 0; +} + +.display-container .history-view { + background-color: #303446; +} + +.display-container #displayitem { + padding: 0 12px 8px 0; + font-size: 1.4em; + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +.math-buttons button { + font-size: 1.1em; + padding: 2px 6px; +} + +.math-buttons button.text-button { + padding-left: 16px; + padding-right: 16px; +} + +leaflet button.number-button { + background-color: rgba(255, 255, 255, 0.1); +} + +leaflet button.number-button:hover { + background-color: rgba(255, 255, 255, 0.2); +} + +leaflet button.number-button:active { + background-color: rgba(255, 255, 255, 0.3); +} + +label.primary-label, label.month-name, label.secondary-label { + font-size: 16pt; + font-weight: bold; + padding: 12px; +} + +label.primary-label, label.month-name { + color: #eebebe; +} + +label.secondary-label { + color: rgba(255, 255, 255, 0.5); +} + +calendar-view { + font-size: 10pt; +} + +calendar-view:selected { + color: #eebebe; + font-weight: bold; +} + +calendar-view.header, +label.header { + font-size: 10pt; + font-weight: bold; + color: rgba(255, 255, 255, 0.5); +} + +calendar-view.current, +weekgrid.current { + background-color: alpha(#eebebe, 0.3); +} + +popover.events { + background-color: #303446; + padding: 0; +} + +popover.events box { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +popover.events list { + background-color: #303446; + border-radius: 6px; +} + +popover.events scrolledwindow { + border-width: 0; +} + +popover.events button { + border-radius: 6px; + border-top-left-radius: 0; + border-top-right-radius: 0; + border-style: solid none none; + box-shadow: none; +} + +event { + margin: 1px; + font-size: 0.9rem; +} + +event widget.content { + margin: 4px; +} + +event.timed, event:not(.slanted):not(.slanted-start):not(.slanted-end) { + border-radius: 6px; +} + +event.timed widget.edge { + border-radius: 3px; + min-width: 5px; +} + +event.slanted-start, event.slanted-end:dir(rtl) { + padding-left: 16px; + border-radius: 0 3px 3px 0; +} + +event.slanted-end, event.slanted-start:dir(rtl) { + padding-right: 16px; + border-radius: 3px 0 0 3px; +} + +event:not(.timed).color-dark { + color: white; + outline-color: rgba(0, 0, 0, 0.3); +} + +event.timed, event:not(.timed).color-light { + color: alpha(black, 0.75); + outline-color: rgba(255, 255, 255, 0.5); +} + +popover.event-popover, +popover.event-popover > contents { + padding: 0; +} + +.search-viewport { + background-color: #303446; +} + +.calendar-list { + background-color: transparent; +} + +.calendar-list > list { + border-radius: 4px; +} + +.calendar-color-image { + -gtk-icon-filter: none; +} + +image.calendar-color-image, +button:active:not(:backdrop) .calendar-color-image, +button:checked:not(:backdrop) .calendar-color-image, +.calendars-list .calendar-color-image:not(:backdrop):not(:disabled), +.calendar-list .calendar-color-image:not(:backdrop):not(:disabled), +.sources-button:not(:backdrop):not(:disabled) .calendar-color-image { + -gtk-icon-shadow: 0 1px alpha(black, 0.1); +} + +datechooser navigator { + margin-right: 6px; + margin-left: 6px; + margin-bottom: 6px; +} + +datechooser navigator label { + font-weight: bold; +} + +datechooser navigator button.toggle, datechooser navigator button.image-button { + min-height: 36px; + min-width: 36px; + padding: 0; +} + +datechooser .weeknum, datechooser .weekday { + color: rgba(255, 255, 255, 0.5); + font-size: smaller; +} + +datechooser button.day { + font-size: 10pt; + font-weight: normal; + margin: 3px; + padding: 0; + min-height: 36px; + min-width: 36px; + transition: none; +} + +datechooser button.day dot { + background-color: #FFFFFF; + border-radius: 50%; + min-height: 3px; + min-width: 3px; +} + +datechooser button.day:selected, datechooser button.day.today:selected { + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); + font-weight: bold; +} + +datechooser button.day:selected dot, datechooser button.day.today:selected dot { + background-color: rgba(0, 0, 0, 0.87); +} + +datechooser button.day.today { + color: #eebebe; +} + +datechooser button.day.today dot { + background-color: #eebebe; +} + +datechooser button.day.other-month:not(:hover), datechooser button.day.other-month:backdrop { + color: alpha(currentColor, 0.1); +} + +datechooser button.day.other-month:not(:hover) dot, datechooser button.day.other-month:backdrop dot { + background-color: alpha(currentColor, 0.1); +} + +datechooser button.day.other-month:hover:not(:backdrop) { + color: rgba(255, 255, 255, 0.5); +} + +datechooser button.day.other-month:hover:not(:backdrop) dot { + background-color: rgba(255, 255, 255, 0.5); +} + +.week-header { + padding: 0; +} + +.week-header > box:first-child { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +.week-header .week-number { + font-size: 16pt; + font-weight: bold; + padding: 12px 12px 18px 12px; + color: rgba(255, 255, 255, 0.3); +} + +.week-header.week-temperature { + font-size: 10pt; + font-weight: bold; + color: rgba(255, 255, 255, 0.5); +} + +.week-header.lines { + color: rgba(255, 255, 255, 0.12); +} + +weekhourbar > label { + font-size: 10pt; + padding: 4px 6px; +} + +.week-view .lines { + color: rgba(255, 255, 255, 0.12); +} + +weekgrid > widget.now-strip { + background-color: alpha(#eebebe, 0.8); + margin: 0 0 0 1px; + min-height: 3px; +} + +weekgrid:selected, weekgrid.dnd, +.week-header:selected, +.week-header.dnd { + background-color: alpha(#eebebe, 0.25); +} + +monthcell { + border: solid 1px rgba(255, 255, 255, 0.12); + border-width: 1px 0 0 1px; + background-color: transparent; + transition: background-color 200ms; +} + +monthcell:hover:not(.out-of-month):not(.today) { + background-color: #232634; + transition: background-color 200ms; + color: #FFFFFF; +} + +monthcell:selected { + background-color: alpha(#eebebe, 0.1); +} + +monthcell:selected:hover { + background-color: alpha(#eebebe, 0.2); +} + +monthcell:selected label.day-label { + font-weight: bold; +} + +monthcell:nth-child(7n + 1) { + border-left-width: 0; +} + +monthcell.today { + background-color: alpha(#eebebe, 0.2); +} + +monthcell.today:hover { + background-color: alpha(#eebebe, 0.3); + color: #eebebe; +} + +monthcell.today:selected { + background-color: alpha(#eebebe, 0.25); +} + +monthcell.today:selected:hover { + background-color: alpha(#eebebe, 0.35); +} + +monthcell label { + color: #FFFFFF; + font-size: 0.9rem; +} + +monthcell label.day-label { + font-size: 1rem; +} + +monthcell.out-of-month { + background-color: rgba(255, 255, 255, 0.04); +} + +monthcell.out-of-month label { + color: rgba(255, 255, 255, 0.7); +} + +monthcell button { + padding: 0 6px; + border-radius: 0; + border-bottom: none; + border-right: none; +} + +monthpopover > box { + margin: 0; + padding: 0; + background-color: transparent; +} + +.notes-section box > textview { + border-radius: 6px; + padding: 6px; +} + +.notes-section box > textview > text { + background: none; +} + +agenda-view list > row { + padding: 2px 12px; +} + +agenda-view list > label { + padding: 6px 12px; +} + +agenda-view > scrolledwindow > viewport > list.background { + background-color: transparent; +} + +label.no-events { + font-style: italic; +} + +searchbutton > popover > arrow { + background: none; + border: none; +} + +datechooser { + padding: 6px; +} + +datechooser .current-week { + background: alpha(#232634, 0.7); + color: #FFFFFF; + border-radius: 6px; +} + +menubutton.sources-button { + margin-top: 0; + margin-bottom: 0; + border-radius: 0; + border-top-style: none; + border-bottom-style: none; +} + +menubutton.sources-button:hover:not(:backdrop) { + background-image: none; + text-shadow: none; +} + +menubutton.sources-button > button { + border-radius: 0; +} + +menubutton.sources-button > button .title { + font-size: 10pt; + font-weight: normal; + padding: 0 6px; +} + +menubutton.sources-button > button .subtitle { + font-size: 8pt; + padding: 0 6px; +} + +menubutton.sources-button > button .calendar-color-image { + -gtk-icon-size: 12px; +} + +menubutton stack > box { + border-spacing: 6px; +} + +.topbar headerbar menubutton.sources-button > button { + border-radius: 0 0 6px 6px; +} + +.contacts-contact-list list.navigation-sidebar { + background: none; +} + +.details-page { + margin: 24px 0px; +} + +.installed-overlay-box { + font-size: smaller; + background-color: #eebebe; + border-radius: 0; + color: rgba(0, 0, 0, 0.87); + text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2); +} + +screenshot-carousel box.frame { + border-width: 1px 0; + border-radius: 0; +} + +screenshot-carousel button, +.featured-carousel button { + margin: 12px; +} + +.screenshot-image-main .image1, +.screenshot-image-main .image2 { + margin-top: 6px; + margin-bottom: 12px; + margin-left: 6px; + margin-right: 6px; +} + +.app-tile-label { + font-size: 105%; +} + +.review-textbox { + padding: 6px; +} + +.origin-rounded-box { + background-color: rgba(255, 255, 255, 0.12); + border-radius: 9999px; + padding: 4px; +} + +.origin-beta { + color: #FBC02D; +} + +.origin-button > button { + padding: 3px 9px; +} + +.card flowboxchild.card { + border: none; + box-shadow: none; + padding: 0; + background: none; +} + +button.card.category-tile { + padding: 21px; + border: none; + border-radius: 6px; + min-width: 140px; + font-weight: 900; + font-size: larger; + box-shadow: 0 3px 3px -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); +} + +button.card.category-tile.category-tile-iconless { + padding: 9px 15px; + min-width: 130px; + font-size: 105%; + font-weight: normal; + box-shadow: none; +} + +button.card.category-tile.category-create { + background: linear-gradient(180deg, #ce8cd7 0%, #2861c6 100%); + color: white; +} + +button.card.category-tile.category-create:hover { + background: linear-gradient(180deg, shade(#ce8cd7, 1.07) 0%, shade(#2861c6, 1.1) 100%); + color: white; +} + +button.card.category-tile.category-create:active { + background: linear-gradient(180deg, shade(#ce8cd7, 0.95) 0%, shade(#2861c6, 0.95) 100%); + color: white; +} + +button.card.category-tile.category-develop { + background: #5e5c64; + color: white; +} + +button.card.category-tile.category-develop:hover { + background: shade(#5e5c64, 1.2); + color: white; +} + +button.card.category-tile.category-develop:active { + background-color: shade(#5e5c64, 0.95); + color: white; +} + +button.card.category-tile.category-learn { + background: linear-gradient(180deg, #2ec27e 30%, #27a66c 100%); + color: white; +} + +button.card.category-tile.category-learn:hover { + background: linear-gradient(180deg, shade(#2ec27e, 1.06) 30%, shade(#27a66c, 1.06) 100%); + color: white; +} + +button.card.category-tile.category-learn:active { + background: linear-gradient(180deg, shade(#2ec27e, 0.95) 30%, shade(#27a66c, 0.95) 100%); + color: white; +} + +button.card.category-tile.category-play { + background: linear-gradient(75deg, #f9e2a7 0%, #eb5ec3 50%, #6d53e0 100%); + color: #393484; +} + +button.card.category-tile.category-play:hover { + background: linear-gradient(75deg, shade(#f9e2a7, 1.07) 0%, shade(#eb5ec3, 1.07) 50%, shade(#6d53e0, 1.07) 100%); + color: #393484; +} + +button.card.category-tile.category-play:active { + background: linear-gradient(75deg, shade(#f9e2a7, 0.97) 0%, shade(#eb5ec3, 0.95) 50%, shade(#6d53e0, 1.07) 100%); + color: #393484; +} + +button.card.category-tile.category-socialize { + background: linear-gradient(90deg, #ef4e9b 0%, #f77466 100%); + color: rgba(255, 255, 255, 0.7); +} + +button.card.category-tile.category-socialize:hover { + background: linear-gradient(90deg, shade(#ef4e9b, 1.08) 0%, shade(#f77466, 1.08) 100%); +} + +button.card.category-tile.category-socialize:active { + background: linear-gradient(90deg, shade(#ef4e9b, 0.95) 0%, shade(#f77466, 0.95) 100%); +} + +button.card.category-tile.category-work { + padding: 1px; + /* FIXME: work around https://gitlab.gnome.org/GNOME/gtk/-/issues/4324 */ + color: #1c71d8; + background-color: #fdf8d7; + background-image: linear-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.12) 1px, transparent 1px); + background-size: 10px 10px, 10px 10px; + background-position: -1px -4px, center -1px; +} + +button.card.category-tile.category-work:hover { + color: #1c71d8; + background-color: #fefcef; + background-image: linear-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.12) 1px, transparent 1px); +} + +button.card.category-tile.category-work:active { + color: #1c71d8; + background-color: #fcf4bf; + background-image: linear-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.12) 1px, transparent 1px); +} + +clamp.medium .category-tile:not(.category-tile-iconless), +clamp.large .category-tile:not(.category-tile-iconless) { + font-size: larger; +} + +.featured-tile { + padding: 0; + box-shadow: none; + color: #FFFFFF; +} + +.featured-tile label.title-1 { + margin-top: 6px; + margin-bottom: 6px; +} + +.featured-tile.narrow label.title-1 { + font-size: 16pt; +} + +.application-details-infobar, .application-details-infobar.info { + background-color: rgba(255, 255, 255, 0.04); + color: #FFFFFF; + border: 1px solid rgba(255, 255, 255, 0.12); +} + +.application-details-infobar.warning { + background-color: #FBC02D; + color: rgba(0, 0, 0, 0.87); + border: 1px solid rgba(0, 0, 0, 0.12); +} + +@keyframes install-progress-unknown-move { + 0% { + background-position: 0%; + } + 50% { + background-position: 100%; + } + 100% { + background-position: 0%; + } +} + +.application-details-description .button { + padding-left: 24px; + padding-right: 24px; +} + +.install-progress { + background-image: linear-gradient(to top, #eebebe 2px, alpha(#eebebe, 0) 2px); + background-repeat: no-repeat; + background-position: 0 bottom; + background-size: 0; + transition: none; +} + +.install-progress:dir(rtl) { + background-position: 100% bottom; +} + +.review-row > * { + margin: 12px; +} + +.review-row button { + font-size: smaller; +} + +.review-row .vote-buttons button { + margin-right: -1px; +} + +.review-row .vote-buttons button:not(:first-child) { + border-image: linear-gradient(to top, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.12)) 0 0 0 1/5px 0 5px 1px; +} + +.review-row .vote-buttons button:hover, +.review-row .vote-buttons button:active, +.review-row .vote-buttons button:hover + button, +.review-row .vote-buttons button:active + button { + border-image: none; +} + +review-bar { + color: rgba(255, 255, 255, 0.5); + background-image: none; + background-color: rgba(255, 255, 255, 0.3); +} + +.review-histogram star-image { + color: rgba(255, 255, 255, 0.5); +} + +.version-arrow-label { + font-size: x-small; +} + +.overview-more-button { + font-size: smaller; + padding: 0 16px; +} + +.app-row-origin-text { + font-size: smaller; +} + +.app-listbox-header { + padding: 6px; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +.image-list { + background-color: transparent; +} + +box.star { + background-color: transparent; + background-image: none; +} + +button.star { + outline-offset: 0; + background-color: transparent; + background-image: none; + border-image: none; + border-radius: 0; + border-width: 0; + padding: 0; + box-shadow: none; + outline-offset: -1px; +} + +star-image { + color: #FFD600; +} + +.dimmer-label { + opacity: 0.25; +} + +.update-failed-details { + font-family: Monospace; + font-size: smaller; + padding: 16px; +} + +.upgrade-banner { + padding: 0px; + border-radius: 6px; + border: none; +} + +.upgrade-banner-background { + background: linear-gradient(to bottom, #66BB6A, #5b9bf8); + color: white; +} + +.upgrade-buttons #button_upgrades_install { + padding-left: 16px; + padding-right: 16px; +} + +scrolledwindow.list-page > viewport > clamp > box { + margin: 24px 12px; + border-spacing: 24px; +} + +.update-preferences preferencesgroup > box > box { + margin-top: 18px; +} + +.section > label:not(:first-child) { + margin-top: 6px; +} + +.section > box:not(:first-child) { + margin-top: 12px; +} + +clamp.status-page { + margin: 36px 12px; +} + +clamp.status-page .iconbox { + min-height: 128px; + min-width: 128px; +} + +clamp.status-page .icon { + color: rgba(255, 255, 255, 0.5); + min-height: 32px; + min-width: 32px; +} + +clamp.status-page .icon:not(:last-child) { + margin-bottom: 36px; +} + +clamp.status-page .title:not(:last-child) { + margin-bottom: 12px; +} + +app-context-bar .context-tile { + border: 1px solid rgba(255, 255, 255, 0.12); + background-color: transparent; + border-radius: 0; + padding: 24px 12px 21px 12px; + outline-offset: 5px; + transition-property: outline, outline-offset, background-image; + border-bottom: none; + border-right: none; +} + +app-context-bar .context-tile:hover { + background-image: none; + background-color: alpha(currentColor, 0.08); +} + +app-context-bar .context-tile.keyboard-activating, app-context-bar .context-tile:active { + background-color: alpha(currentColor, 0.12); +} + +app-context-bar .context-tile:focus:focus-visible { + outline-offset: -1px; +} + +app-context-bar.horizontal box:first-child .context-tile:first-child, app-context-bar.vertical .context-tile:first-child { + border-left: none; +} + +app-context-bar.horizontal .context-tile, app-context-bar.vertical box:first-child .context-tile { + border-top: none; +} + +app-context-bar > box:not(:first-child) > button.flat { + border-radius: 0; +} + +app-context-bar > box:not(:first-child) > button.flat:last-child { + border-radius: 0 6px 6px 0; +} + +app-context-bar > box:first-child > button.flat { + border-radius: 0; +} + +app-context-bar > box:first-child > button.flat:first-child { + border-radius: 6px 0 0 6px; +} + +app-context-bar > box > button.flat { + border-left-color: rgba(255, 255, 255, 0.12); +} + +carousel.card { + border: none; + background-color: rgba(255, 255, 255, 0.04); +} + +.context-tile-lozenge { + min-height: 28px; + min-width: 28px; + padding: 6px; + font-size: 18px; + font-weight: bold; + border-radius: 9999px; +} + +.context-tile-lozenge.large { + font-size: 24px; + padding: 16px; + min-width: 24px; + /* 60px minus the left and right padding */ + min-height: 24px; + /* 60px minus the top and bottom padding */ +} + +.context-tile-lozenge.wide-image image { + margin-top: -28px; + margin-bottom: -28px; +} + +.context-tile-lozenge image { + -gtk-icon-style: symbolic; +} + +.context-tile-lozenge.grey { + color: #FFFFFF; + background-color: rgba(255, 255, 255, 0.12); +} + +.context-tile-lozenge.green, .context-tile-lozenge.details-rating-0 { + color: #419345; + background-color: rgba(102, 187, 106, 0.15); +} + +.context-tile-lozenge.blue, .context-tile-lozenge.details-rating-5 { + color: #5b9bf8; + background-color: rgba(91, 155, 248, 0.15); +} + +.context-tile-lozenge.yellow, .context-tile-lozenge.details-rating-12 { + color: #d79b04; + background-color: rgba(251, 192, 45, 0.15); +} + +.context-tile-lozenge.details-rating-15 { + color: #FF8A65; + background-color: rgba(255, 138, 101, 0.15); +} + +.context-tile-lozenge.red, .context-tile-lozenge.details-rating-18 { + color: #d2190b; + background-color: rgba(244, 67, 54, 0.15); +} + +.eol-red { + font-weight: bold; + color: #F44336; +} + +window.narrow .app-title { + font-size: 16pt; +} + +window.narrow .app-developer { + font-size: small; +} + +.install-progress-label { + font-size: smaller; + font-feature-settings: "tnum"; +} + +scrolledwindow.fake-adw-status-page > viewport > box { + margin: 36px 12px; +} + +scrolledwindow.fake-adw-status-page > viewport > box > clamp:not(:last-child) > box { + margin-bottom: 36px; +} + +scrolledwindow.fake-adw-status-page > viewport > box > clamp > box > .icon:not(:last-child) { + margin-bottom: 36px; +} + +scrolledwindow.fake-adw-status-page > viewport > box > clamp > box > .title:not(:last-child) { + margin-bottom: 12px; +} + +statuspage.icon-dropshadow image.icon { + -gtk-icon-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 -1px rgba(0, 0, 0, 0.05), 1px 0 rgba(0, 0, 0, 0.1), 0 1px rgba(0, 0, 0, 0.3), -1px 0 rgba(0, 0, 0, 0.1); +} + +window.info scrollbar.vertical { + margin-top: 48px; + background: none; + box-shadow: none; +} + +window.info scrollbar.vertical trough { + margin-top: 0; +} + +row.app > box.header { + margin-left: 12px; + margin-right: 12px; +} + +row.app > box.header { + border-spacing: 12px; +} + +row.app > box.header > image { + margin-top: 12px; + margin-bottom: 12px; +} + +row.app label.warning { + color: #F44336; +} + +@keyframes pre-delay { + from { + opacity: 0; + } + to { + opacity: 0; + } +} + +@keyframes fade-in { + from { + filter: opacity(0%); + } +} + +/* Give a fade-in animation to spinners. */ +spinner.fade-in:checked { + animation: pre-delay 0.5s linear 1, fade-in 1s linear 1, spin 1s linear infinite; + animation-delay: 0s, 0.5s, 0.5s; +} + +window > contents > leaflet > box > stack.background { + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, transparent 48px, #303446 48px, #303446); +} + +@define-color weather_temp_chart_fill_color rgba(251, 192, 45, 0.5); +@define-color weather_temp_chart_stroke_color #f0ad05; +@define-color weather_thermometer_warm_color #FBC02D; +@define-color weather_thermometer_cold_color #5b9bf8; +#places-label { + font-weight: bold; +} + +#temperature-label { + font-size: 32pt; + font-weight: 900; + margin-left: 9px; +} + +#conditions-grid *:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +.content-view.cell { + font-weight: bold; +} + +#locationEntry { + margin: 6px; +} + +.weather-popover { + margin-top: 6px; +} + +.forecast-card { + transition: border-radius 100ms ease-out; + border-radius: 6px; +} + +.forecast-card separator { + background-color: rgba(255, 255, 255, 0.12); +} + +#daily-forecast-box > separator:last-child { + background-color: transparent; + min-width: 0; +} + +#conditions-grid, +#attributionGrid { + margin-left: 18px; + margin-right: 18px; +} + +#weather-page .small .forecast-card { + margin-left: 0; + margin-right: 0; + border-radius: 0; + border-width: 1px 0; +} + +.forecast-temperature-label { + font-weight: bold; + color: #ae7b03; +} + +WeatherThermometer { + margin-bottom: 12px; +} + +WeatherThermometer > label.high { + font-weight: bold; + color: #FBC02D; +} + +WeatherThermometer > label.low { + font-weight: bold; + color: #5b9bf8; +} + +.forecast-button { + margin: 0 12px; +} + +.forecast-graphic { + margin: 18px; +} + +button.osd.circular { + border-radius: 9999px; + min-width: 24px; + min-height: 24px; +} + +button.osd.circular > image { + padding: 0; +} + +scrolledwindow.inline list, +scrolledwindow.inline listview { + background: none; + color: inherit; +} + +scrolledwindow.inline undershoot.top { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.12); +} + +.search-view { + background-color: #3c84f7; + color: #FFFFFF; +} + +.search-view menubutton button:focus:focus-visible { + outline-color: rgba(255, 255, 255, 0.3); +} + +image.circular { + min-width: 36px; + min-height: 36px; + padding: 0; + border-radius: 9999px; +} + +.large-button { + padding: 6px; +} + +.alarm-time { + font-size: 2.5em; + font-weight: 300; +} + +.clocks-ampm-toggle-button, +.clocks-secondary-standalone-label { + font-size: 18pt; +} + +.clocks-standalone-label, +.clocks-ringing-label { + font-size: 6em; + font-weight: 300; +} + +.clocks-ringing-title { + font-size: 1.5em; + font-weight: bold; +} + +.clocks-alarm-setup-time { + font-size: 32pt; +} + +.clocks-timer-label, +.clocks-spinbutton { + font-size: 48pt; +} + +.timer-panel .timer-header { + font-size: 20pt; + font-weight: 300; +} + +.timer-countdown { + font-size: 40pt; + font-weight: 300; +} + +/* Stopwatch Panel */ +.lap-time { + font-weight: bold; +} + +.stopped-stopwatch label, +.running-stopwatch label, +.paused-stopwatch label { + font-size: 70px; + font-weight: lighter; +} + +.stopped-stopwatch .seconds-label { + font-weight: 300; +} + +.running-stopwatch .seconds-label, +.running-stopwatch .miliseconds-label { + color: #eebebe; +} + +.stopped-stopwatch .miliseconds-label, +.running-stopwatch .miliseconds-label, +.paused-stopwatch .miliseconds-label { + font-size: 50px; +} + +.running-stopwatch .seconds-label, +.paused-stopwatch .seconds-label { + font-weight: 300; +} + +.clock-location { + font-weight: bolder; +} + +.hidden { + opacity: 0; +} + +.clock-time { + font-size: 2em; + padding: 0.2em 0.5em; + border-radius: 1em; +} + +.none .clock-time { + background: alpha(currentColor, 0.2); +} + +.night .clock-time { + color: #3c84f7; + background-color: alpha(#5b9bf8, 0.25); +} + +.naut .clock-time, +.astro .clock-time { + color: #FF7043; + background-color: alpha(#FF8A65, 0.25); +} + +.civil .clock-time, +.day .clock-time { + color: #FFD600; + background: alpha(#FBC02D, 0.25); +} + +headerbar splitbutton notification button { + margin: 0; + min-height: 24px; + min-width: 24px; + padding: 0; +} + +popover.background.global-search > arrow, popover.background.global-search > contents { + padding: 0; +} + +panelframeswitcher { + padding: 3px; +} + +.frameheader.header { + min-height: 24px; + background-color: #232634; +} + +.frameheader.header > button { + border: none; + margin: 0; + padding: 3px; +} + +.frameheader.header tabbar.inline > revealer > box { + min-height: 24px; +} + +.frameheader.header tabbar.inline > revealer > box .start-action { + padding: 0; + border: none; +} + +.frameheader.header tabbar.inline > revealer > box .end-action { + padding: 0; + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +.frameheader.header tabbar.inline > revealer > box tabbox { + border: none; + background: none; +} + +panelstatusbar > menubutton > button, +panelstatusbar > paneltogglebutton button { + border-radius: 0; +} + +.style-variant { + padding: 0 12px; +} + +.style-variant button.toggle { + padding: 0; +} + +.style-variant button.toggle, .style-variant button.toggle:hover, .style-variant button.toggle:focus, .style-variant button.toggle:active, .style-variant button.toggle:checked { + background: none; + outline: none; + border: none; + box-shadow: none; +} + +.style-variant button.toggle > stylevariantpreview > .wallpaper { + border-radius: 6px; + outline-color: transparent; + outline-width: 3px; + outline-offset: 3px; + outline-style: solid; + box-shadow: none; +} + +.style-variant button.toggle:hover > stylevariantpreview > .wallpaper { + outline-color: rgba(255, 255, 255, 0.04); +} + +.style-variant button.toggle:active > stylevariantpreview > .wallpaper { + outline-color: rgba(255, 255, 255, 0.3); +} + +.style-variant button.toggle:checked > stylevariantpreview > .wallpaper { + outline-color: #eebebe; +} + +playlistview scrollbar.overlay-indicator.dragging, playlistview scrollbar.overlay-indicator.hovering { + background-color: transparent; +} + +playlistview queuerow picture.cover, +playlistview queuerow image.card { + border: none; +} + +window.dialog > .dialog-vbox > box > scrolledwindow > viewport > widget > list.boxed-list { + border: none; + border-radius: 0; +} + +window.dialog > .dialog-vbox > box > scrolledwindow > viewport > widget > list.boxed-list > row:first-child, window.dialog > .dialog-vbox > box > scrolledwindow > viewport > widget > list.boxed-list > row:last-child { + border-radius: 0; +} + +avatar { + border-radius: 9999px; + font-weight: bold; +} + +avatar.color1 { + background-image: linear-gradient(#83b6ec, #337fdc); + color: #cfe1f5; +} + +avatar.color2 { + background-image: linear-gradient(#7ad9f1, #0f9ac8); + color: #caeaf2; +} + +avatar.color3 { + background-image: linear-gradient(#8de6b1, #29ae74); + color: #cef8d8; +} + +avatar.color4 { + background-image: linear-gradient(#b5e98a, #6ab85b); + color: #e6f9d7; +} + +avatar.color5 { + background-image: linear-gradient(#f8e359, #d29d09); + color: #f9f4e1; +} + +avatar.color6 { + background-image: linear-gradient(#ffcb62, #d68400); + color: #ffead1; +} + +avatar.color7 { + background-image: linear-gradient(#ffa95a, #ed5b00); + color: #ffe5c5; +} + +avatar.color8 { + background-image: linear-gradient(#f78773, #e62d42); + color: #f8d2ce; +} + +avatar.color9 { + background-image: linear-gradient(#e973ab, #e33b6a); + color: #fac7de; +} + +avatar.color10 { + background-image: linear-gradient(#cb78d4, #9945b5); + color: #e7c2e8; +} + +avatar.color11 { + background-image: linear-gradient(#9e91e8, #7a59ca); + color: #d5d2f5; +} + +avatar.color12 { + background-image: linear-gradient(#e3cf9c, #b08952); + color: #f2eade; +} + +avatar.color13 { + background-image: linear-gradient(#be916d, #785336); + color: #e5d6ca; +} + +avatar.color14 { + background-image: linear-gradient(#c0bfbc, #6e6d71); + color: #d8d7d3; +} + +avatar.contrasted { + color: white; +} + +avatar.image { + background: none; +} + +.card { + border-radius: 6px; + border: 1px solid rgba(255, 255, 255, 0.12); + background-clip: border-box; + color: rgba(255, 255, 255, 0.7); + box-shadow: none; + outline: none; + background-color: #303446; + color: #FFFFFF; +} + +.card.activatable { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); +} + +.card.activatable:hover { + background-image: none; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +.card.activatable:active { + background-image: none; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +toast { + margin: 12px; + margin-bottom: 24px; + border-radius: 9999px; + border-spacing: 6px; + padding: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.1), 0 4px 6px 0 rgba(0, 0, 0, 0.12), 0 1px 10px 0 rgba(0, 0, 0, 0.1), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #303446; + color: #FFFFFF; + border: none; +} + +toast:dir(ltr) { + padding-left: 12px; +} + +toast:dir(rtl) { + padding-right: 12px; +} + +toast > label { + margin: 0 6px; +} + +viewswitcher { + margin: 0; + border-spacing: 3px; +} + +viewswitcher.wide { + margin-top: 6px; + margin-bottom: 6px; +} + +viewswitcher.wide button.toggle { + margin: 0; +} + +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 { + margin-top: 0; + margin-bottom: 0; +} + +viewswitchertitle viewswitcher { + margin-left: 12px; + margin-right: 12px; +} + +viewswitchertitle viewswitcher.narrow { + margin-top: 0; + margin-bottom: 0; +} + +viewswitchertitle viewswitcher.narrow button.toggle > stack > box.narrow { + padding-top: 0; + padding-bottom: 0; + border-spacing: 0; +} + +viewswitchertitle viewswitcher.wide { + margin-top: 6px; + margin-bottom: 6px; +} + +viewswitchertitle windowtitle { + margin-top: 0; + margin-bottom: 0; +} + +.top-bar headerbar viewswitchertitle viewswitcher.narrow button.toggle { + border-radius: 0 0 6px 6px; +} + +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: #eebebe; +} + +indicatorbin.needs-attention > indicator > label { + color: rgba(0, 0, 0, 0.87); +} + +preferencespage > scrolledwindow > viewport > clamp > box { + margin: 24px 12px; + border-spacing: 24px; +} + +preferencesgroup > box, preferencesgroup > box .labels { + border-spacing: 6px; +} + +preferencesgroup > box > box.header:not(.single-line) { + margin-bottom: 6px; +} + +preferencesgroup > box > box.single-line { + min-height: 34px; +} + +preferencesgroup > box button.background-preview-button.toggle { + padding: 0; + background: none; + box-shadow: none; + outline-color: transparent; + outline-width: 3px; + outline-offset: 3px; + outline-style: solid; +} + +preferencesgroup > box button.background-preview-button.toggle, preferencesgroup > box button.background-preview-button.toggle > background-preview { + border-radius: 6px; +} + +preferencesgroup > box button.background-preview-button.toggle:hover { + outline-color: rgba(255, 255, 255, 0.04); +} + +preferencesgroup > box button.background-preview-button.toggle:active { + outline-color: rgba(255, 255, 255, 0.3); +} + +preferencesgroup > box button.background-preview-button.toggle:checked { + outline-color: #eebebe; +} + +preferencesgroup > box .cutout-button { + background-color: #232634; +} + +window.about .main-page > viewport > clamp > box { + margin: 12px; + border-spacing: 6px; +} + +window.about .main-page > viewport > clamp > box > box { + margin-top: 18px; + border-spacing: 18px; + margin-bottom: 6px; +} + +window.about .main-page .app-version { + padding: 3px 18px; + color: #eebebe; + border-radius: 6px; + margin-top: 3px; +} + +window.about .subpage > viewport > clamp > box { + margin: 18px 12px; + border-spacing: 18px; +} + +window.about .subpage > clamp > textview { + background: none; + color: inherit; +} + +statuspage > scrolledwindow > viewport > box { + margin: 36px 12px; + border-spacing: 36px; +} + +statuspage > scrolledwindow > viewport > box > clamp > box { + border-spacing: 12px; +} + +statuspage > scrolledwindow > viewport > box > clamp > box > .icon { + -gtk-icon-size: 128px; + color: alpha(currentColor, 0.55); +} + +statuspage > scrolledwindow > viewport > box > clamp > box > .icon:disabled { + opacity: 0.35; +} + +statuspage > scrolledwindow > viewport > box > clamp > box > .icon:not(:last-child) { + margin-bottom: 24px; +} + +statuspage.compact > scrolledwindow > viewport > box { + margin: 24px 12px; + border-spacing: 24px; +} + +statuspage.compact > scrolledwindow > viewport > box > clamp > box > .icon { + -gtk-icon-size: 96px; +} + +statuspage.compact > scrolledwindow > viewport > box > clamp > box > .icon:not(:last-child) { + margin-bottom: 12px; +} + +statuspage.compact > scrolledwindow > viewport > box > clamp > box > .title { + font-size: 18pt; +} + +flap > dimming, +leaflet > dimming, +navigation-view > dimming, +overlay-split-view > dimming { + background: none; +} + +flap > border, +leaflet > border, +navigation-view > border, +overlay-split-view > border { + background: none; +} + +flap > shadow, +leaflet > shadow, +navigation-view > shadow, +overlay-split-view > shadow { + min-width: 56px; + min-height: 56px; +} + +flap > shadow.left, +leaflet > shadow.left, +navigation-view > shadow.left, +overlay-split-view > shadow.left { + background-image: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +flap > shadow.right, +leaflet > shadow.right, +navigation-view > shadow.right, +overlay-split-view > shadow.right { + background-image: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +flap > shadow.up, +leaflet > shadow.up, +navigation-view > shadow.up, +overlay-split-view > shadow.up { + background-image: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +flap > shadow.down, +leaflet > shadow.down, +navigation-view > shadow.down, +overlay-split-view > shadow.down { + background-image: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +.unfolded stacksidebar.sidebar { + border: none; +} + +.sidebar-pane { + background-color: #232634; + color: #FFFFFF; +} + +.sidebar-pane:backdrop { + background-color: #303446; + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1); +} + +.sidebar-pane .navigation-sidebar, +.sidebar-pane headerbar, +.sidebar-pane searchbar > revealer > box { + background-color: transparent; + box-shadow: none; + border: none; +} + +.sidebar-pane toolbarview.undershoot-top scrolledwindow > undershoot.top { + box-shadow: none; + background: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom { + box-shadow: none; + background: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane scrolledwindow.undershoot-top > undershoot.top { + box-shadow: none; + background: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane scrolledwindow.undershoot-bottom > undershoot.bottom { + box-shadow: none; + background: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane flap > dimming, +.sidebar-pane leaflet > dimming, +.sidebar-pane navigation-view > dimming, +.sidebar-pane overlay-split-view > dimming { + background: none; +} + +.sidebar-pane flap > border, +.sidebar-pane leaflet > border, +.sidebar-pane navigation-view > border, +.sidebar-pane overlay-split-view > border { + background: none; +} + +.sidebar-pane flap > shadow, +.sidebar-pane leaflet > shadow, +.sidebar-pane navigation-view > shadow, +.sidebar-pane overlay-split-view > shadow { + min-width: 56px; + min-height: 56px; +} + +.sidebar-pane flap > shadow.left, +.sidebar-pane leaflet > shadow.left, +.sidebar-pane navigation-view > shadow.left, +.sidebar-pane overlay-split-view > shadow.left { + background-image: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +.sidebar-pane flap > shadow.right, +.sidebar-pane leaflet > shadow.right, +.sidebar-pane navigation-view > shadow.right, +.sidebar-pane overlay-split-view > shadow.right { + background-image: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +.sidebar-pane flap > shadow.up, +.sidebar-pane leaflet > shadow.up, +.sidebar-pane navigation-view > shadow.up, +.sidebar-pane overlay-split-view > shadow.up { + background-image: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +.sidebar-pane flap > shadow.down, +.sidebar-pane leaflet > shadow.down, +.sidebar-pane navigation-view > shadow.down, +.sidebar-pane overlay-split-view > shadow.down { + background-image: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +.sidebar-pane banner > revealer > widget { + background-color: gtkmix(#eebebe, #232634, 30%); + color: #FFFFFF; +} + +.sidebar-pane banner > revealer > widget:backdrop { + background-color: gtkmix(#eebebe, #232634, 30%); +} + +.sidebar-pane:dir(ltr), .sidebar-pane.end:dir(rtl) { + border-top-left-radius: 12px; +} + +.sidebar-pane:dir(ltr), .sidebar-pane:dir(ltr) banner > revealer > widget, .sidebar-pane.end:dir(rtl), .sidebar-pane.end:dir(rtl) banner > revealer > widget { + box-shadow: none; + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +.sidebar-pane:dir(rtl), .sidebar-pane.end:dir(ltr) { + border-top-right-radius: 12px; +} + +.sidebar-pane:dir(rtl), .sidebar-pane:dir(rtl) banner > revealer > widget, .sidebar-pane.end:dir(ltr), .sidebar-pane.end:dir(ltr) banner > revealer > widget { + box-shadow: none; + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +window.maxmized .sidebar-pane:dir(ltr), window.maxmized .sidebar-pane.end:dir(rtl) { + border-top-left-radius: 0; +} + +window.maxmized .sidebar-pane:dir(rtl), window.maxmized .sidebar-pane.end:dir(rtl) { + border-top-right-radius: 0; +} + +/* Middle pane in three-pane setups */ +.content-pane .sidebar-pane, +.sidebar-pane .content-pane { + background-color: #303446; + color: #FFFFFF; +} + +.content-pane .sidebar-pane:backdrop, +.sidebar-pane .content-pane:backdrop { + background-color: #303446; + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1); +} + +.content-pane .sidebar-pane toolbarview.undershoot-top scrolledwindow > undershoot.top, +.sidebar-pane .content-pane toolbarview.undershoot-top scrolledwindow > undershoot.top { + box-shadow: none; + background: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom, +.sidebar-pane .content-pane toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom { + box-shadow: none; + background: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane scrolledwindow.undershoot-top > undershoot.top, +.sidebar-pane .content-pane scrolledwindow.undershoot-top > undershoot.top { + box-shadow: none; + background: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane scrolledwindow.undershoot-bottom > undershoot.bottom, +.sidebar-pane .content-pane scrolledwindow.undershoot-bottom > undershoot.bottom { + box-shadow: none; + background: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane scrolledwindow.undershoot-start:dir(ltr) > undershoot.left, +.sidebar-pane .content-pane scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane scrolledwindow.undershoot-start:dir(rtl) > undershoot.right, +.sidebar-pane .content-pane scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane scrolledwindow.undershoot-end:dir(ltr) > undershoot.right, +.sidebar-pane .content-pane scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane scrolledwindow.undershoot-end:dir(rtl) > undershoot.left, +.sidebar-pane .content-pane scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane flap > dimming, +.content-pane .sidebar-pane leaflet > dimming, +.content-pane .sidebar-pane navigation-view > dimming, +.content-pane .sidebar-pane overlay-split-view > dimming, +.sidebar-pane .content-pane flap > dimming, +.sidebar-pane .content-pane leaflet > dimming, +.sidebar-pane .content-pane navigation-view > dimming, +.sidebar-pane .content-pane overlay-split-view > dimming { + background: none; +} + +.content-pane .sidebar-pane flap > border, +.content-pane .sidebar-pane leaflet > border, +.content-pane .sidebar-pane navigation-view > border, +.content-pane .sidebar-pane overlay-split-view > border, +.sidebar-pane .content-pane flap > border, +.sidebar-pane .content-pane leaflet > border, +.sidebar-pane .content-pane navigation-view > border, +.sidebar-pane .content-pane overlay-split-view > border { + background: none; +} + +.content-pane .sidebar-pane flap > shadow, +.content-pane .sidebar-pane leaflet > shadow, +.content-pane .sidebar-pane navigation-view > shadow, +.content-pane .sidebar-pane overlay-split-view > shadow, +.sidebar-pane .content-pane flap > shadow, +.sidebar-pane .content-pane leaflet > shadow, +.sidebar-pane .content-pane navigation-view > shadow, +.sidebar-pane .content-pane overlay-split-view > shadow { + min-width: 56px; + min-height: 56px; +} + +.content-pane .sidebar-pane flap > shadow.left, +.content-pane .sidebar-pane leaflet > shadow.left, +.content-pane .sidebar-pane navigation-view > shadow.left, +.content-pane .sidebar-pane overlay-split-view > shadow.left, +.sidebar-pane .content-pane flap > shadow.left, +.sidebar-pane .content-pane leaflet > shadow.left, +.sidebar-pane .content-pane navigation-view > shadow.left, +.sidebar-pane .content-pane overlay-split-view > shadow.left { + background-image: linear-gradient(to right, alpha(rgba(255, 255, 255, 0.12), 0.7), alpha(rgba(255, 255, 255, 0.12), 0.14) 40px, alpha(rgba(255, 255, 255, 0.12), 0) 56px), linear-gradient(to right, alpha(rgba(255, 255, 255, 0.12), 0.4), alpha(rgba(255, 255, 255, 0.12), 0.14) 7px, alpha(rgba(255, 255, 255, 0.12), 0) 24px); +} + +.content-pane .sidebar-pane flap > shadow.right, +.content-pane .sidebar-pane leaflet > shadow.right, +.content-pane .sidebar-pane navigation-view > shadow.right, +.content-pane .sidebar-pane overlay-split-view > shadow.right, +.sidebar-pane .content-pane flap > shadow.right, +.sidebar-pane .content-pane leaflet > shadow.right, +.sidebar-pane .content-pane navigation-view > shadow.right, +.sidebar-pane .content-pane overlay-split-view > shadow.right { + background-image: linear-gradient(to left, alpha(rgba(255, 255, 255, 0.12), 0.7), alpha(rgba(255, 255, 255, 0.12), 0.14) 40px, alpha(rgba(255, 255, 255, 0.12), 0) 56px), linear-gradient(to left, alpha(rgba(255, 255, 255, 0.12), 0.4), alpha(rgba(255, 255, 255, 0.12), 0.14) 7px, alpha(rgba(255, 255, 255, 0.12), 0) 24px); +} + +.content-pane .sidebar-pane flap > shadow.up, +.content-pane .sidebar-pane leaflet > shadow.up, +.content-pane .sidebar-pane navigation-view > shadow.up, +.content-pane .sidebar-pane overlay-split-view > shadow.up, +.sidebar-pane .content-pane flap > shadow.up, +.sidebar-pane .content-pane leaflet > shadow.up, +.sidebar-pane .content-pane navigation-view > shadow.up, +.sidebar-pane .content-pane overlay-split-view > shadow.up { + background-image: linear-gradient(to bottom, alpha(rgba(255, 255, 255, 0.12), 0.7), alpha(rgba(255, 255, 255, 0.12), 0.14) 40px, alpha(rgba(255, 255, 255, 0.12), 0) 56px), linear-gradient(to bottom, alpha(rgba(255, 255, 255, 0.12), 0.4), alpha(rgba(255, 255, 255, 0.12), 0.14) 7px, alpha(rgba(255, 255, 255, 0.12), 0) 24px); +} + +.content-pane .sidebar-pane flap > shadow.down, +.content-pane .sidebar-pane leaflet > shadow.down, +.content-pane .sidebar-pane navigation-view > shadow.down, +.content-pane .sidebar-pane overlay-split-view > shadow.down, +.sidebar-pane .content-pane flap > shadow.down, +.sidebar-pane .content-pane leaflet > shadow.down, +.sidebar-pane .content-pane navigation-view > shadow.down, +.sidebar-pane .content-pane overlay-split-view > shadow.down { + background-image: linear-gradient(to top, alpha(rgba(255, 255, 255, 0.12), 0.7), alpha(rgba(255, 255, 255, 0.12), 0.14) 40px, alpha(rgba(255, 255, 255, 0.12), 0) 56px), linear-gradient(to top, alpha(rgba(255, 255, 255, 0.12), 0.4), alpha(rgba(255, 255, 255, 0.12), 0.14) 7px, alpha(rgba(255, 255, 255, 0.12), 0) 24px); +} + +.content-pane .sidebar-pane banner > revealer > widget, +.sidebar-pane .content-pane banner > revealer > widget { + background-color: gtkmix(#eebebe, #303446, 30%); + color: #FFFFFF; +} + +.content-pane .sidebar-pane banner > revealer > widget:backdrop, +.sidebar-pane .content-pane banner > revealer > widget:backdrop { + background-color: gtkmix(#eebebe, #303446, 30%); +} + +.content-pane .sidebar-pane:dir(ltr), .content-pane .sidebar-pane.end:dir(rtl), +.sidebar-pane .content-pane:dir(ltr), +.sidebar-pane .content-pane.end:dir(rtl) { + border-top-left-radius: 12px; +} + +.content-pane .sidebar-pane:dir(ltr), .content-pane .sidebar-pane:dir(ltr) banner > revealer > widget, .content-pane .sidebar-pane.end:dir(rtl), .content-pane .sidebar-pane.end:dir(rtl) banner > revealer > widget, +.sidebar-pane .content-pane:dir(ltr), +.sidebar-pane .content-pane:dir(ltr) banner > revealer > widget, +.sidebar-pane .content-pane.end:dir(rtl), +.sidebar-pane .content-pane.end:dir(rtl) banner > revealer > widget { + box-shadow: none; + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +.content-pane .sidebar-pane:dir(rtl), .content-pane .sidebar-pane.end:dir(ltr), +.sidebar-pane .content-pane:dir(rtl), +.sidebar-pane .content-pane.end:dir(ltr) { + border-top-right-radius: 12px; +} + +.content-pane .sidebar-pane:dir(rtl), .content-pane .sidebar-pane:dir(rtl) banner > revealer > widget, .content-pane .sidebar-pane.end:dir(ltr), .content-pane .sidebar-pane.end:dir(ltr) banner > revealer > widget, +.sidebar-pane .content-pane:dir(rtl), +.sidebar-pane .content-pane:dir(rtl) banner > revealer > widget, +.sidebar-pane .content-pane.end:dir(ltr), +.sidebar-pane .content-pane.end:dir(ltr) banner > revealer > widget { + box-shadow: none; + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +window.maxmized .content-pane .sidebar-pane:dir(ltr), window.maxmized .content-pane .sidebar-pane.end:dir(rtl), window.maxmized .sidebar-pane .content-pane:dir(ltr), window.maxmized .sidebar-pane .content-pane.end:dir(rtl) { + border-top-left-radius: 0; +} + +window.maxmized .content-pane .sidebar-pane:dir(rtl), window.maxmized .content-pane .sidebar-pane.end:dir(rtl), window.maxmized .sidebar-pane .content-pane:dir(rtl), window.maxmized .sidebar-pane .content-pane.end:dir(rtl) { + border-top-right-radius: 0; +} + +.sidebar-pane .sidebar-pane { + background-color: transparent; + color: inherit; +} + +.top-bar headerbar, .top-bar headerbar:backdrop { + background-color: transparent; + box-shadow: none; +} + +.top-bar .collapse-spacing { + padding: 0; +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color #FFFFFF; +/* +text color for entries, views and content in general */ +@define-color theme_text_color #FFFFFF; +/* +widget base background color */ +@define-color theme_bg_color #303446; +/* +text widgets and the like base background color */ +@define-color theme_base_color #303446; +/* +base background color of selections */ +@define-color theme_selected_bg_color #eebebe; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color rgba(0, 0, 0, 0.87); +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #303446; +/* +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 #232634; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color #FFFFFF; +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color #FFFFFF; +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #303446; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #303446; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #eebebe; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color rgba(0, 0, 0, 0.87); +/* +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 #FBC02D; +@define-color error_color #F44336; +@define-color success_color #66BB6A; +/* +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 #FFFFFF; +@define-color wm_unfocused_title rgba(255, 255, 255, 0.7); +@define-color wm_highlight rgba(255, 255, 255, 0.1); +@define-color wm_border #0a0a0e; +@define-color wm_bg #232634; +@define-color wm_unfocused_bg #303446; +@define-color wm_button_icon white; +@define-color wm_button_close_hover_bg #e78284; +@define-color wm_button_close_active_bg #dd4f51; +@define-color wm_button_max_hover_bg #a6d189; +@define-color wm_button_max_active_bg #85c05d; +@define-color wm_button_min_hover_bg #e5c890; +@define-color wm_button_min_active_bg #d9af5e; +/* +FIXME this is really an API */ +@define-color content_view_bg #303446; +@define-color placeholder_text_color #c1c2c8; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #303446; +@define-color budgie_tasklist_indicator_color rgba(255, 255, 255, 0.3); +@define-color budgie_tasklist_indicator_color_active #eebebe; +@define-color budgie_tasklist_indicator_color_active_window #91787f; +@define-color budgie_tasklist_indicator_color_attention #FBC02D; +@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; +@define-color blue_1 #99c1f1; +@define-color blue_2 #62a0ea; +@define-color blue_3 #3584e4; +@define-color blue_4 #1c71d8; +@define-color blue_5 #1a5fb4; +@define-color green_1 #8ff0a4; +@define-color green_2 #57e389; +@define-color green_3 #33d17a; +@define-color green_4 #2ec27e; +@define-color green_5 #26a269; +@define-color yellow_1 #f9f06b; +@define-color yellow_2 #f8e45c; +@define-color yellow_3 #f6d32d; +@define-color yellow_4 #f5c211; +@define-color yellow_5 #e5a50a; +@define-color orange_1 #ffbe6f; +@define-color orange_2 #ffa348; +@define-color orange_3 #ff7800; +@define-color orange_4 #e66100; +@define-color orange_5 #c64600; +@define-color red_1 #f66151; +@define-color red_2 #ed333b; +@define-color red_3 #e01b24; +@define-color red_4 #c01c28; +@define-color red_5 #a51d2d; +@define-color purple_1 #dc8add; +@define-color purple_2 #c061cb; +@define-color purple_3 #9141ac; +@define-color purple_4 #813d9c; +@define-color purple_5 #613583; +@define-color brown_1 #cdab8f; +@define-color brown_2 #b5835a; +@define-color brown_3 #986a44; +@define-color brown_4 #865e3c; +@define-color brown_5 #63452c; +@define-color light_1 #ffffff; +@define-color light_2 #f6f5f4; +@define-color light_3 #deddda; +@define-color light_4 #c0bfbc; +@define-color light_5 #9a9996; +@define-color dark_1 #77767b; +@define-color dark_2 #5e5c64; +@define-color dark_3 #3d3846; +@define-color dark_4 #241f31; +@define-color dark_5 #000000; +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +@define-color accent_bg_color #eebebe; +@define-color accent_fg_color rgba(0, 0, 0, 0.87); +@define-color accent_color #eebebe; +@define-color destructive_bg_color #F44336; +@define-color destructive_fg_color #FFFFFF; +@define-color destructive_color #F44336; +@define-color success_bg_color #66BB6A; +@define-color success_fg_color #FFFFFF; +@define-color success_color #66BB6A; +@define-color warning_bg_color #FBC02D; +@define-color warning_fg_color rgba(0, 0, 0, 0.87); +@define-color warning_color #FBC02D; +@define-color error_bg_color #F44336; +@define-color error_fg_color #FFFFFF; +@define-color error_color #F44336; +@define-color window_bg_color #303446; +@define-color window_fg_color #FFFFFF; +@define-color view_bg_color #303446; +@define-color view_fg_color #FFFFFF; +@define-color headerbar_bg_color #232634; +@define-color headerbar_fg_color #FFFFFF; +@define-color headerbar_border_color rgba(255, 255, 255, 0.12); +@define-color headerbar_backdrop_color #303446; +@define-color headerbar_shade_color rgba(255, 255, 255, 0.12); +@define-color card_bg_color #303446; +@define-color card_fg_color #FFFFFF; +@define-color card_shade_color rgba(255, 255, 255, 0.12); +@define-color dialog_bg_color #232634; +@define-color dialog_fg_color #FFFFFF; +@define-color popover_bg_color #303446; +@define-color popover_fg_color #FFFFFF; +@define-color shade_color rgba(255, 255, 255, 0.12); +@define-color scrollbar_outline_color rgba(255, 255, 255, 0.12); diff --git a/home-manager/themes/Catppuccin/gtk.css b/home-manager/themes/Catppuccin/gtk.css new file mode 100644 index 0000000..c933a2f --- /dev/null +++ b/home-manager/themes/Catppuccin/gtk.css @@ -0,0 +1,8024 @@ +@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, #eebebe 0%, transparent 0%); + } + to { + background-image: radial-gradient(circle, #eebebe 100%, transparent 100%); + } +} + +/*************** + * Base States * + ***************/ +.background { + background-color: #303446; + color: #FFFFFF; +} + +#desktopwindow.background { + background-color: transparent; +} + +dnd { + color: #FFFFFF; +} + +.normal-icons { + -gtk-icon-size: 16px; +} + +.large-icons { + -gtk-icon-size: 32px; +} + +.aboutdialog .large-icons { + -gtk-icon-size: 128px; +} + +spinner:disabled, +arrow:disabled, +scrollbar:disabled, +check:disabled, +radio:disabled, +treeview.expander:disabled { + -gtk-icon-filter: opacity(0.5); +} + +iconview, .view { + background-color: #303446; + color: #FFFFFF; +} + +iconview:disabled, .view:disabled { + color: rgba(255, 255, 255, 0.5); +} + +iconview:selected, .view:selected { + color: #FFFFFF; +} + +textview text { + background-color: #303446; +} + +textview border { + background-color: #232634; + 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 #eebebe; + background-color: rgba(238, 190, 190, 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: #FFFFFF; + background-color: #303446; + border: 1px solid black; +} + +label.separator { + color: rgba(255, 255, 255, 0.7); +} + +label:disabled { + opacity: 1; + color: rgba(255, 255, 255, 0.5); +} + +headerbar label:disabled, tab label:disabled, button label:disabled { + color: inherit; + opacity: 1; +} + +label.osd { + border-radius: 6px; + background-color: rgba(29, 31, 43, 0.9); + color: #FFFFFF; +} + +.dim-label, row.expander image.expander-row-arrow, row label.subtitle { + color: rgba(255, 255, 255, 0.7); + opacity: 1; +} + +.accent { + color: #eebebe; +} + +.success { + color: #66BB6A; +} + +.warning { + color: #FBC02D; +} + +.error { + color: #F44336; +} + +.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; +} + +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: #FFFFFF; +} + +.osd .scale-popup > arrow, +.osd .scale-popup > contents, .osd popover > arrow, +.osd popover > contents, popover.touch-selection > arrow, +popover.touch-selection > contents, popover.magnifier > arrow, +popover.magnifier > contents, .osd { + color: #FFFFFF; + background-color: #303446; + background-clip: padding-box; + border-radius: 6px; + border: none; + box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15), 0 3px 3px 0 rgba(0, 0, 0, 0.18), 0 3px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); +} + +.osd { + padding: 6px; + margin: 6px; +} + +.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; +} + +/**************** + * Text Entries * + ****************/ + +entry headerbar popover.background entry, +headerbar popover.background entry entry, +entry { + min-height: 36px; + padding: 0 8px; + border-spacing: 6px; + border-radius: 6px; + caret-color: currentColor; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.7); + outline: 0 solid transparent; + outline-offset: 2px; +} + + +entry headerbar popover.background entry:focus-within, +headerbar popover.background entry entry:focus-within, +entry:focus-within { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px transparent; + color: #FFFFFF; + outline: 2px solid #eebebe; + outline-offset: -2px; +} + + +entry headerbar popover.background entry:drop(active), +headerbar popover.background entry entry:drop(active), +entry headerbar popover.background entry:hover:not(:focus-within), +headerbar popover.background entry entry:hover:not(:focus-within), +entry:drop(active), +entry:hover:not(:focus-within) { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; + outline-offset: 2px; +} + + +entry headerbar popover.background entry:disabled, +headerbar popover.background entry entry:disabled, +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); + outline: none; +} + + +entry headerbar popover.background entry.flat:focus-within, +headerbar popover.background entry entry.flat:focus-within, +entry headerbar popover.background entry.flat:disabled, +headerbar popover.background entry entry.flat:disabled, +entry headerbar popover.background entry.flat:hover, +headerbar popover.background entry entry.flat:hover, +entry headerbar popover.background entry.flat, +headerbar popover.background entry entry.flat, +entry.flat:focus-within, +entry.flat:disabled, +entry.flat:hover, +entry.flat { + min-height: 0; + padding: 2px; + background-color: transparent; + box-shadow: none; + border-radius: 0; + outline: none; +} + + +entry headerbar popover.background entry image, +headerbar popover.background entry entry image, +entry image { + color: rgba(255, 255, 255, 0.7); +} + + +entry headerbar popover.background entry image:hover, +headerbar popover.background entry entry image:hover, +entry headerbar popover.background entry image:active, +headerbar popover.background entry entry image:active, +entry image:hover, +entry image:active { + color: #FFFFFF; +} + + +entry headerbar popover.background entry image:disabled, +headerbar popover.background entry entry image:disabled, +entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + + +entry headerbar popover.background entry image.left, +headerbar popover.background entry entry image.left, +entry image.left { + margin: 0 6px 0 2px; +} + + +entry headerbar popover.background entry image.right, +headerbar popover.background entry entry image.right, +entry image.right { + margin: 0 2px 0 6px; +} + + +entry headerbar popover.background entry undershoot.left > undershoot.left, +headerbar popover.background entry entry undershoot.left > undershoot.left, +entry undershoot.left > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + + +entry headerbar popover.background entry undershoot.right > undershoot.right, +headerbar popover.background entry entry undershoot.right > undershoot.right, +entry undershoot.right > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + + +entry headerbar popover.background entry.error, +headerbar popover.background entry entry.error, +entry.error { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(244, 67, 54, 0.1); + color: rgba(244, 67, 54, 0.75); + outline: 0 solid transparent; + outline-offset: 2px; + outline: none; +} + + +entry headerbar popover.background entry.error:focus-within, +headerbar popover.background entry entry.error:focus-within, +entry.error:focus-within { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(244, 67, 54, 0.1); + box-shadow: inset 0 0 0 2px transparent; + color: #F44336; + outline: 2px solid #F44336; + outline-offset: -2px; + outline: none; +} + + +entry headerbar popover.background entry.error:drop(active), +headerbar popover.background entry entry.error:drop(active), +entry headerbar popover.background entry.error:hover:not(:focus-within), +headerbar popover.background entry entry.error:hover:not(:focus-within), +entry.error:drop(active), +entry.error:hover:not(:focus-within) { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: #F44336; + outline: 0 solid transparent; + outline-offset: 2px; + outline: none; +} + + +entry headerbar popover.background entry.error:disabled, +headerbar popover.background entry entry.error:disabled, +entry.error:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(244, 67, 54, 0.1); + color: rgba(244, 67, 54, 0.35); + outline: none; + outline: none; +} + + +entry headerbar popover.background entry.error > text > selection, +headerbar popover.background entry entry.error > text > selection, +entry.error > text > selection { + background-color: rgba(244, 67, 54, 0.25); + color: #F44336; +} + + +entry headerbar popover.background entry.error image, +headerbar popover.background entry entry.error image, +entry.error image { + color: rgba(244, 67, 54, 0.75); +} + + +entry headerbar popover.background entry.error image:hover, +headerbar popover.background entry entry.error image:hover, +entry headerbar popover.background entry.error image:active, +headerbar popover.background entry entry.error image:active, +entry.error image:hover, +entry.error image:active { + color: #F44336; +} + + +entry headerbar popover.background entry.error image:disabled, +headerbar popover.background entry entry.error image:disabled, +entry.error image:disabled { + color: rgba(244, 67, 54, 0.35); +} + + +entry headerbar popover.background entry.warning, +headerbar popover.background entry entry.warning, +entry.warning { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(251, 192, 45, 0.1); + color: rgba(251, 192, 45, 0.75); + outline: 0 solid transparent; + outline-offset: 2px; + outline: none; +} + + +entry headerbar popover.background entry.warning:focus-within, +headerbar popover.background entry entry.warning:focus-within, +entry.warning:focus-within { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(251, 192, 45, 0.1); + box-shadow: inset 0 0 0 2px transparent; + color: #FBC02D; + outline: 2px solid #FBC02D; + outline-offset: -2px; + outline: none; +} + + +entry headerbar popover.background entry.warning:drop(active), +headerbar popover.background entry entry.warning:drop(active), +entry headerbar popover.background entry.warning:hover:not(:focus-within), +headerbar popover.background entry entry.warning:hover:not(:focus-within), +entry.warning:drop(active), +entry.warning:hover:not(:focus-within) { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: #FBC02D; + outline: 0 solid transparent; + outline-offset: 2px; + outline: none; +} + + +entry headerbar popover.background entry.warning:disabled, +headerbar popover.background entry entry.warning:disabled, +entry.warning:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(251, 192, 45, 0.1); + color: rgba(251, 192, 45, 0.35); + outline: none; + outline: none; +} + + +entry headerbar popover.background entry.warning > text > selection, +headerbar popover.background entry entry.warning > text > selection, +entry.warning > text > selection { + background-color: rgba(251, 192, 45, 0.25); + color: #FBC02D; +} + + +entry headerbar popover.background entry.warning image, +headerbar popover.background entry entry.warning image, +entry.warning image { + color: rgba(251, 192, 45, 0.75); +} + + +entry headerbar popover.background entry.warning image:hover, +headerbar popover.background entry entry.warning image:hover, +entry headerbar popover.background entry.warning image:active, +headerbar popover.background entry entry.warning image:active, +entry.warning image:hover, +entry.warning image:active { + color: #FBC02D; +} + + +entry headerbar popover.background entry.warning image:disabled, +headerbar popover.background entry entry.warning image:disabled, +entry.warning image:disabled { + color: rgba(251, 192, 45, 0.35); +} + + +entry headerbar popover.background entry.success, +headerbar popover.background entry entry.success, +entry.success { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(102, 187, 106, 0.1); + color: rgba(102, 187, 106, 0.75); + outline: 0 solid transparent; + outline-offset: 2px; + outline: none; +} + + +entry headerbar popover.background entry.success:focus-within, +headerbar popover.background entry entry.success:focus-within, +entry.success:focus-within { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(102, 187, 106, 0.1); + box-shadow: inset 0 0 0 2px transparent; + color: #66BB6A; + outline: 2px solid #66BB6A; + outline-offset: -2px; + outline: none; +} + + +entry headerbar popover.background entry.success:drop(active), +headerbar popover.background entry entry.success:drop(active), +entry headerbar popover.background entry.success:hover:not(:focus-within), +headerbar popover.background entry entry.success:hover:not(:focus-within), +entry.success:drop(active), +entry.success:hover:not(:focus-within) { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: alpha(currentColor, 0.08); + box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08); + color: #66BB6A; + outline: 0 solid transparent; + outline-offset: 2px; + outline: none; +} + + +entry headerbar popover.background entry.success:disabled, +headerbar popover.background entry entry.success:disabled, +entry.success:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(102, 187, 106, 0.1); + color: rgba(102, 187, 106, 0.35); + outline: none; + outline: none; +} + + +entry headerbar popover.background entry.success > text > selection, +headerbar popover.background entry entry.success > text > selection, +entry.success > text > selection { + background-color: rgba(102, 187, 106, 0.25); + color: #66BB6A; +} + + +entry headerbar popover.background entry.success image, +headerbar popover.background entry entry.success image, +entry.success image { + color: rgba(102, 187, 106, 0.75); +} + + +entry headerbar popover.background entry.success image:hover, +headerbar popover.background entry entry.success image:hover, +entry headerbar popover.background entry.success image:active, +headerbar popover.background entry entry.success image:active, +entry.success image:hover, +entry.success image:active { + color: #66BB6A; +} + + +entry headerbar popover.background entry.success image:disabled, +headerbar popover.background entry entry.success image:disabled, +entry.success image:disabled { + color: rgba(102, 187, 106, 0.35); +} + + +entry > progress, +entry progress > trough > progress { + margin: 0 -4px; + border-bottom: 2px solid #eebebe; + background-color: transparent; +} + + +entry button.image-button { + min-height: 24px; + min-width: 24px; + padding: 0; +} + +treeview entry.flat, treeview entry { + background-color: #303446; +} + +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: #FFFFFF; +} + +.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 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.7); + outline: 0 solid transparent; + outline-offset: 2px; +} + +/*********** + * Buttons * + ***********/ +@keyframes needs-attention { + from { + background-image: radial-gradient(farthest-side, #eebebe 0%, rgba(238, 190, 190, 0) 0%); + } + to { + background-image: radial-gradient(farthest-side, #eebebe 95%, rgba(238, 190, 190, 0)); + } +} + +infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button, popover.touch-selection button, popover.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.touch-selection button:focus, popover.magnifier button:focus, headerbar.selection-mode button:focus:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:hover, popover.touch-selection button:hover, popover.magnifier button:hover, headerbar.selection-mode button:hover:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:active, popover.touch-selection button:active, popover.magnifier button:active, headerbar.selection-mode button:active:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:checked, popover.touch-selection button:checked, popover.magnifier button:checked, headerbar.selection-mode button:checked:not(.suggested-action):not(.destructive-action) { + color: #FFFFFF; +} + +infobar.warning > revealer > box button:disabled, popover.touch-selection button:disabled, popover.magnifier button:disabled, headerbar.selection-mode button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.32); +} + +infobar.warning > revealer > box button:checked:disabled, popover.touch-selection button:checked:disabled, popover.magnifier button:checked:disabled, headerbar.selection-mode button:checked:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +headerbar popover.background button:not(.suggested-action):not(.destructive-action):not(.flat), button { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1); + 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%; + outline: 0 solid transparent; + outline-offset: 2px; + color: #FFFFFF; +} + +headerbar popover.background button:focus:not(.suggested-action):not(.destructive-action):not(.flat), button:focus { + outline: 2px solid rgba(238, 190, 190, 0.35); + outline-offset: 0; +} + +headerbar popover.background button:hover:not(.suggested-action):not(.destructive-action):not(.flat), button:hover { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; + -gtk-icon-filter: brightness(1.2); +} + +headerbar popover.background button.keyboard-activating:not(.suggested-action):not(.destructive-action):not(.flat), button.keyboard-activating, headerbar popover.background button:active:not(.suggested-action):not(.destructive-action):not(.flat), button:active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +headerbar popover.background button:disabled:not(.suggested-action):not(.destructive-action):not(.flat), button:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); + outline-color: transparent; +} + +headerbar popover.background button:checked:not(.suggested-action):not(.destructive-action):not(.flat), button:checked { + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); +} + +headerbar popover.background button:checked:hover:not(.suggested-action):not(.destructive-action):not(.flat), button:checked:hover { + outline-color: transparent; + background-color: #f3d2d2; + color: rgba(0, 0, 0, 0.87); +} + +headerbar popover.background button:checked:disabled:not(.suggested-action):not(.destructive-action):not(.flat), button:checked:disabled { + outline-color: transparent; + background-color: rgba(238, 190, 190, 0.35); + color: rgba(0, 0, 0, 0.38); +} + +placessidebar row button.sidebar-button, calendar > header > button, scrollbar button, notebook > header > tabs > arrow, popover modelbutton, spinbutton > button, splitbutton.flat > button, +splitbutton.flat > menubutton > button { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1); + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + background-color: transparent; + outline: 0 solid transparent; + outline-offset: 2px; + color: rgba(255, 255, 255, 0.7); +} + +placessidebar row button.sidebar-button:focus:not(:hover):not(:active), calendar > header > button:focus:not(:hover):not(:active), scrollbar button:focus:not(:hover):not(:active), notebook > header > tabs > arrow:focus:not(:hover):not(:active), popover modelbutton:focus:not(:hover):not(:active), spinbutton > button:focus:not(:hover):not(:active), splitbutton.flat > button:focus:not(:hover):not(:active), +splitbutton.flat > menubutton > button:focus:not(:hover):not(:active) { + color: #FFFFFF; + outline: 2px solid rgba(255, 255, 255, 0.04); + outline-offset: -2px; +} + +placessidebar row button.sidebar-button:hover, calendar > header > button:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, popover modelbutton:hover, spinbutton > button:hover, splitbutton.flat > button:hover, +splitbutton.flat > menubutton > button:hover { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; +} + +placessidebar row button.sidebar-button:active, calendar > header > button:active, scrollbar button:active, notebook > header > tabs > arrow:active, popover modelbutton:active, spinbutton > button:active, splitbutton.flat > button:active, +splitbutton.flat > menubutton > button:active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; +} + +placessidebar row button.sidebar-button:disabled, calendar > header > button:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, popover modelbutton:disabled, spinbutton > button:disabled, splitbutton.flat > button:disabled, +splitbutton.flat > menubutton > button:disabled { + color: rgba(255, 255, 255, 0.32); + background-color: transparent; +} + +filechooser #pathbarbox > stack > box > button, window.messagedialog .response-area > box > button, window.dialog.message .dialog-action-area > button, .app-notification button, headerbar button:not(.suggested-action):not(.destructive-action), .toolbar button, dropdown > .linked:not(.vertical) > button:not(:only-child), +combobox > .linked:not(.vertical) > button:not(:only-child), splitbutton.suggested-action > button, splitbutton.suggested-action > menubutton > button, splitbutton.destructive-action > button, splitbutton.destructive-action > menubutton > button, splitbutton.opaque > button, splitbutton.opaque > menubutton > button, menubutton.suggested-action > button, menubutton.destructive-action > button, menubutton.opaque > button, menubutton.flat > button, button.flat { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1); + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + background-color: transparent; + outline: 0 solid transparent; + outline-offset: 2px; + color: rgba(255, 255, 255, 0.7); +} + +filechooser #pathbarbox > stack > box > button:focus:not(:hover):not(:active), window.messagedialog .response-area > box > button:focus:not(:hover):not(:active), window.dialog.message .dialog-action-area > button:focus:not(:hover):not(:active), .app-notification button:focus:not(:hover):not(:active), headerbar button:focus:not(:hover):not(:active):not(.suggested-action):not(.destructive-action), .toolbar button:focus:not(:hover):not(:active), dropdown > .linked:not(.vertical) > button:focus:not(:hover):not(:active):not(:only-child), +combobox > .linked:not(.vertical) > button:focus:not(:hover):not(:active):not(:only-child), splitbutton.suggested-action > button:focus:not(:hover):not(:active), splitbutton.suggested-action > menubutton > button:focus:not(:hover):not(:active), splitbutton.destructive-action > button:focus:not(:hover):not(:active), splitbutton.destructive-action > menubutton > button:focus:not(:hover):not(:active), splitbutton.opaque > button:focus:not(:hover):not(:active), splitbutton.opaque > menubutton > button:focus:not(:hover):not(:active), menubutton.suggested-action > button:focus:not(:hover):not(:active), menubutton.destructive-action > button:focus:not(:hover):not(:active), menubutton.opaque > button:focus:not(:hover):not(:active), menubutton.flat > button:focus:not(:hover):not(:active), button.flat:focus:not(:hover):not(:active) { + color: #FFFFFF; + outline: 2px solid rgba(255, 255, 255, 0.04); + outline-offset: -2px; +} + +filechooser #pathbarbox > stack > box > button:hover, window.messagedialog .response-area > box > button:hover, window.dialog.message .dialog-action-area > button:hover, .app-notification button:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), .toolbar button:hover, dropdown > .linked:not(.vertical) > button:hover:not(:only-child), +combobox > .linked:not(.vertical) > button:hover:not(:only-child), splitbutton.suggested-action > button:hover, splitbutton.suggested-action > menubutton > button:hover, splitbutton.destructive-action > button:hover, splitbutton.destructive-action > menubutton > button:hover, splitbutton.opaque > button:hover, splitbutton.opaque > menubutton > button:hover, menubutton.suggested-action > button:hover, menubutton.destructive-action > button:hover, menubutton.opaque > button:hover, menubutton.flat > button:hover, button.flat:hover { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; +} + +filechooser #pathbarbox > stack > box > button:active, window.messagedialog .response-area > box > button:active, window.dialog.message .dialog-action-area > button:active, .app-notification button:active, headerbar button:active:not(.suggested-action):not(.destructive-action), .toolbar button:active, dropdown > .linked:not(.vertical) > button:active:not(:only-child), +combobox > .linked:not(.vertical) > button:active:not(:only-child), splitbutton.suggested-action > button:active, splitbutton.suggested-action > menubutton > button:active, splitbutton.destructive-action > button:active, splitbutton.destructive-action > menubutton > button:active, splitbutton.opaque > button:active, splitbutton.opaque > menubutton > button:active, menubutton.suggested-action > button:active, menubutton.destructive-action > button:active, menubutton.opaque > button:active, menubutton.flat > button:active, button.flat:active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; +} + +filechooser #pathbarbox > stack > box > button:disabled, window.messagedialog .response-area > box > button:disabled, window.dialog.message .dialog-action-area > button:disabled, .app-notification button:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:disabled, dropdown > .linked:not(.vertical) > button:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:disabled:not(:only-child), splitbutton.suggested-action > button:disabled, splitbutton.suggested-action > menubutton > button:disabled, splitbutton.destructive-action > button:disabled, splitbutton.destructive-action > menubutton > button:disabled, splitbutton.opaque > button:disabled, splitbutton.opaque > menubutton > button:disabled, menubutton.suggested-action > button:disabled, menubutton.destructive-action > button:disabled, menubutton.opaque > button:disabled, menubutton.flat > button:disabled, button.flat:disabled { + color: rgba(255, 255, 255, 0.32); + background-color: transparent; +} + +filechooser #pathbarbox > stack > box > button:checked, window.messagedialog .response-area > box > button:checked, window.dialog.message .dialog-action-area > button:checked, .app-notification button:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), .toolbar button:checked, dropdown > .linked:not(.vertical) > button:checked:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:not(:only-child), splitbutton.suggested-action > button:checked, splitbutton.suggested-action > menubutton > button:checked, splitbutton.destructive-action > button:checked, splitbutton.destructive-action > menubutton > button:checked, splitbutton.opaque > button:checked, splitbutton.opaque > menubutton > button:checked, menubutton.suggested-action > button:checked, menubutton.destructive-action > button:checked, menubutton.opaque > button:checked, menubutton.flat > button:checked, button.flat:checked { + background-color: alpha(currentColor, 0.1); + color: #FFFFFF; +} + +filechooser #pathbarbox > stack > box > button:checked:disabled, window.messagedialog .response-area > box > button:checked:disabled, window.dialog.message .dialog-action-area > button:checked:disabled, .app-notification button:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:checked:disabled, dropdown > .linked:not(.vertical) > button:checked:disabled:not(:only-child), +combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), splitbutton.suggested-action > button:checked:disabled, splitbutton.suggested-action > menubutton > button:checked:disabled, splitbutton.destructive-action > button:checked:disabled, splitbutton.destructive-action > menubutton > button:checked:disabled, splitbutton.opaque > button:checked:disabled, splitbutton.opaque > menubutton > button:checked:disabled, menubutton.suggested-action > button:checked:disabled, menubutton.destructive-action > button:checked:disabled, menubutton.opaque > button:checked:disabled, menubutton.flat > button:checked:disabled, button.flat:checked:disabled { + background-color: alpha(currentColor, 0.1); + color: rgba(255, 255, 255, 0.5); +} + +button.opaque { + box-shadow: none; +} + +.osd button.opaque:focus:focus-visible { + outline-color: rgba(255, 255, 255, 0.15); +} + +button.opaque:hover { + background-image: image(alpha(currentColor, 0.1)); +} + +button.keyboard-activating.opaque, button.opaque:active { + background-image: image(rgba(0, 0, 0, 0.2)); +} + +button.opaque:checked { + background-image: image(rgba(0, 0, 0, 0.15)); +} + +button.opaque:checked:hover { + background-image: image(rgba(0, 0, 0, 0.05)); +} + +button.opaque:checked.keyboard-activating, button.opaque:checked:active { + background-image: image(rgba(0, 0, 0, 0.3)); +} + +.nautilus-window .floating-bar button, placessidebar row button.sidebar-button, notebook > header > tabs > tab button.flat, popover.menu box.circular-buttons button.circular.image-button.model, spinbutton > 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) { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +button separator { + margin: 4px 1px; +} + +button.opaque { + background-color: #595d6b; + color: #FFFFFF; +} + +button.text-button { + min-width: 32px; + padding-left: 16px; + padding-right: 16px; +} + +button.image-button { + min-width: 24px; + padding: 6px; +} + +button.text-button.image-button, button.image-text-button { + min-width: 24px; + padding: 6px; + border-radius: 6px; +} + +button.text-button.image-button > box, +button.text-button.image-button > box > box, button.image-text-button > box, +button.image-text-button > box > box { + border-spacing: 4px; +} + +button.text-button.image-button > box > label, +button.text-button.image-button > box > box > label, button.image-text-button > box > label, +button.image-text-button > box > box > label { + padding-left: 2px; + padding-right: 2px; +} + +button.text-button.image-button label:first-child, button.image-text-button label:first-child { + margin-left: 10px; +} + +button.text-button.image-button label:last-child, button.image-text-button label:last-child { + margin-right: 10px; +} + +button.text-button.image-button.flat label:first-child, button.image-text-button.flat label:first-child { + margin-left: 6px; +} + +button.text-button.image-button.flat label:last-child, button.image-text-button.flat label:last-child { + margin-right: 6px; +} + +button.text-button.image-button image:not(:only-child), button.image-text-button image:not(:only-child) { + margin: 0 4px; +} + +button.arrow-button { + padding-left: 9px; + padding-right: 9px; +} + +button.arrow-button > box { + border-spacing: 4px; +} + +button.arrow-button.text-button { + padding-left: 16px; + padding-right: 16px; +} + +button.arrow-button.text-button > box { + border-spacing: 6px; +} + +menubutton.pill > button, button.pill { + padding: 9px 30px; + border-radius: 9999px; +} + +button.card { + background-color: rgba(255, 255, 255, 0.04); + background-clip: padding-box; + font-weight: inherit; + border: 1px solid rgba(255, 255, 255, 0.12); + background-clip: border-box; +} + +button.card:hover { + background-image: none; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +button.card.keyboard-activating, button.card:active { + background-image: none; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +button.card:checked { + background-image: none; + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); + border-color: #eebebe; +} + +button.card:checked:hover { + background-image: none; + outline-color: transparent; + background-color: #f3d2d2; + color: rgba(0, 0, 0, 0.87); +} + +button.card:checked:disabled { + outline-color: transparent; + background-color: rgba(238, 190, 190, 0.35); + color: rgba(0, 0, 0, 0.38); +} + +button.card:checked.keyboard-activating, button.card:checked:active { + background-image: none; +} + +button.card:checked.has-open-popup { + background-image: none; +} + +button.card:drop(active) { + color: #FF7043; + box-shadow: inset 0 0 0 1px #FF7043; +} + +.linked:not(.vertical) > button:focus, .linked.vertical > button:focus { + box-shadow: none; + outline: none; +} + +.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) { + background-color: alpha(currentColor, 0.05); +} + +.linked:not(.vertical) > button.flat:focus, .linked.vertical > button.flat:focus { + box-shadow: none; + outline: none; +} + +.linked:not(.vertical) > menubutton > button { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +button.osd { + min-width: 24px; + min-width: 24px; + padding: 6px; + box-shadow: none; + background-color: rgba(0, 0, 0, 0.35); + color: white; +} + +button.osd > image { + padding: 0; +} + +button.osd.remove-button { + padding: 0; +} + +button.osd:focus { + outline-color: transparent; +} + +button.osd:hover { + background-color: rgba(0, 0, 0, 0.45); + color: white; +} + +button.osd:active { + background-color: rgba(0, 0, 0, 0.65); + color: white; +} + +button.osd:disabled { + background-color: rgba(0, 0, 0, 0.15); + color: rgba(255, 255, 255, 0.35); +} + +button.suggested-action { + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); + box-shadow: none; +} + +button.suggested-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); + outline-color: transparent; +} + +button.suggested-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(238, 190, 190, 0.2), 0 4px 3px 0 rgba(238, 190, 190, 0.14), 0 1px 6px 0 rgba(238, 190, 190, 0.12); +} + +button.suggested-action:checked { + background-color: rgba(179, 143, 143, 0.961); +} + +button.suggested-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(238, 190, 190, 0.3), 0 2px 3px -1px rgba(238, 190, 190, 0.24), 0 2px 5px 0 rgba(238, 190, 190, 0.12); +} + +button.suggested-action:focus { + box-shadow: 0 0 0 2px rgba(238, 190, 190, 0.35); +} + +button.suggested-action.flat { + background-color: transparent; + color: #eebebe; +} + +button.suggested-action.flat:disabled { + color: rgba(255, 255, 255, 0.32); + background-color: transparent; +} + +button.suggested-action.flat:checked { + background-color: rgba(238, 190, 190, 0.3); +} + +button.destructive-action { + background-color: #F44336; + color: #FFFFFF; + box-shadow: none; +} + +button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); + outline-color: transparent; +} + +button.destructive-action:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(244, 67, 54, 0.2), 0 4px 3px 0 rgba(244, 67, 54, 0.14), 0 1px 6px 0 rgba(244, 67, 54, 0.12); +} + +button.destructive-action:checked { + background-color: #f77b72; +} + +button.destructive-action:checked:hover { + box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(244, 67, 54, 0.3), 0 2px 3px -1px rgba(244, 67, 54, 0.24), 0 2px 5px 0 rgba(244, 67, 54, 0.12); +} + +button.destructive-action:focus { + box-shadow: 0 0 0 2px rgba(244, 67, 54, 0.35); +} + +button.destructive-action.flat { + background-color: transparent; + color: #F44336; +} + +button.destructive-action.flat:disabled { + color: rgba(255, 255, 255, 0.32); + background-color: transparent; +} + +button.destructive-action.flat:checked { + background-color: rgba(244, 67, 54, 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, menubutton.circular > button, button.close, button.circular { + border-radius: 9999px; +} + +windowcontrols > button:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, menubutton.circular > button label, button.close label, button.circular label { + padding: 0; +} + +menubutton.osd { + background: none; + color: inherit; +} + +menubutton.suggested-action { + background-color: #eebebe; + color: white; +} + +menubutton.destructive-action { + background-color: #F44336; + color: white; +} + +menubutton.opaque { + background-color: #595d6b; + color: #FFFFFF; +} + +menubutton.suggested-action, menubutton.destructive-action, menubutton.opaque { + border-radius: 6px; +} + +menubutton.suggested-action.circular, menubutton.suggested-action.pill, menubutton.destructive-action.circular, menubutton.destructive-action.pill, menubutton.opaque.circular, menubutton.opaque.pill { + border-radius: 9999px; +} + +menubutton.suggested-action > button, menubutton.suggested-action > button:checked, menubutton.destructive-action > button, menubutton.destructive-action > button:checked, menubutton.opaque > button, menubutton.opaque > button:checked { + background-color: transparent; + color: inherit; +} + +menubutton.image-button > button { + min-width: 24px; + padding-left: 6px; + padding-right: 6px; +} + +menubutton arrow { + min-height: 16px; + min-width: 16px; +} + +menubutton arrow.none { + -gtk-icon-source: -gtk-icontheme("open-menu-symbolic"); +} + +menubutton arrow.down { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +menubutton arrow.up { + -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); +} + +menubutton arrow.left { + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + +menubutton arrow.right { + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); +} + +splitbutton { + border-radius: 6px; +} + +splitbutton, splitbutton > separator { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); + transition-property: background; +} + +splitbutton > separator { + margin-top: 6px; + margin-bottom: 6px; + background: none; +} + +splitbutton > menubutton > button { + padding: 6px 10px; +} + +splitbutton.image-button > button { + min-width: 24px; + padding-left: 6px; + padding-right: 6px; +} + +splitbutton.text-button.image-button > button, splitbutton.image-text-button > button { + padding-left: 9px; + padding-right: 9px; +} + +splitbutton.text-button.image-button > button > box, splitbutton.image-text-button > button > box { + border-spacing: 6px; +} + +splitbutton > button:dir(ltr), +splitbutton > menubutton > button:dir(rtl) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + margin-right: -1px; +} + +splitbutton > button:dir(rtl), +splitbutton > menubutton > button:dir(ltr) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + margin-left: -1px; +} + +splitbutton.flat > separator { + background: rgba(255, 255, 255, 0.12); +} + +splitbutton.flat:hover, splitbutton.flat:active, splitbutton.flat:checked { + background: alpha(currentColor, 0.07); +} + +splitbutton.flat:hover > separator, splitbutton.flat:active > separator, splitbutton.flat:checked > separator { + background: none; +} + +splitbutton.flat:focus-within:focus-visible > separator { + background: none; +} + +splitbutton.flat > button, +splitbutton.flat > menubutton > button { + border-radius: 6px; +} + +splitbutton.suggested-action { + background-color: #eebebe; + color: white; +} + +splitbutton.destructive-action { + background-color: #F44336; + color: white; +} + +splitbutton.opaque { + background-color: #595d6b; + color: #FFFFFF; +} + +splitbutton.suggested-action > button, splitbutton.suggested-action > button:checked, splitbutton.suggested-action > menubutton > button, splitbutton.suggested-action > menubutton > button:checked, splitbutton.destructive-action > button, splitbutton.destructive-action > button:checked, splitbutton.destructive-action > menubutton > button, splitbutton.destructive-action > menubutton > button:checked, splitbutton.opaque > button, splitbutton.opaque > button:checked, splitbutton.opaque > menubutton > button, splitbutton.opaque > menubutton > button:checked { + color: inherit; + background-color: transparent; +} + +splitbutton.suggested-action > menubutton > button:dir(ltr), splitbutton.destructive-action > menubutton > button:dir(ltr), splitbutton.opaque > menubutton > button:dir(ltr) { + box-shadow: inset 1px 0 rgba(255, 255, 255, 0.12); +} + +splitbutton.suggested-action > menubutton > button:dir(rtl), splitbutton.destructive-action > menubutton > button:dir(rtl), splitbutton.opaque > menubutton > button:dir(rtl) { + box-shadow: inset -1px 0 rgba(255, 255, 255, 0.12); +} + +splitbutton > menubutton > button > arrow.none { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +buttoncontent { + border-spacing: 6px; +} + +buttoncontent > label { + font-weight: bold; +} + +buttoncontent > label:dir(ltr) { + padding-right: 2px; +} + +buttoncontent > label:dir(rtl) { + padding-left: 2px; +} + +.arrow-button > box > buttoncontent > label:dir(ltr), splitbutton > button > buttoncontent > label:dir(ltr) { + padding-right: 0; +} + +.arrow-button > box > buttoncontent > label:dir(rtl), splitbutton > button > buttoncontent > label:dir(rtl) { + padding-left: 0; +} + +stacksidebar row.needs-attention > label, stackswitcher > button.needs-attention > label, +stackswitcher > button.needs-attention > image { + animation: needs-attention 225ms 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) > entry, .linked:not(.vertical) > button, .linked:not(.vertical) > button.image-button { + border-radius: 0; +} + +.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) > entry:last-child, .linked:not(.vertical) > button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked:not(.vertical) > entry:only-child, .linked:not(.vertical) > button:only-child { + border-radius: 6px; +} + +.linked.vertical > entry, .linked.vertical > button, .linked.vertical > button.image-button { + border-radius: 0; +} + +.linked.vertical > entry:first-child, .linked.vertical > button:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +.linked.vertical > entry:last-child, .linked.vertical > button:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.linked.vertical > entry:only-child, .linked.vertical > button:only-child { + border-radius: 6px; +} + +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 { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + + +list > row button.image-button:not(.flat):active, +list > row button.image-button:not(.flat):checked { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + + +list > row button.image-button:not(.flat).suggested-action { + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); +} + + +list > row button.image-button:not(.flat).destructive-action { + background-color: #F44336; + color: #FFFFFF; +} + +/********* + * Links * + *********/ +link { + color: #3c84f7; +} + +link:visited { + color: #BA68C8; +} + +button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active { + color: #3c84f7; +} + +button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active { + color: #BA68C8; +} + +button.link > label { + text-decoration-line: underline; +} + +/***************** + * GtkSpinButton * + *****************/ +spinbutton { + border-radius: 6px; + padding: 0; + border-spacing: 0; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.7); + outline: 0 solid transparent; + outline-offset: 2px; +} + +spinbutton:focus-within { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.08); + box-shadow: inset 0 0 0 2px transparent; + color: #FFFFFF; + outline: 2px solid #eebebe; + outline-offset: -2px; +} + +spinbutton:disabled { + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.5); + outline: none; +} + +spinbutton > text { + border-image: none; + border-radius: 0; + box-shadow: none; + background-color: transparent; + margin: 0; +} + +spinbutton > button { + border: none; +} + +spinbutton > button:focus:not(:hover):not(:active):not(:disabled) { + box-shadow: none; +} + +spinbutton:not(.vertical) > text { + min-width: 32px; + padding-left: 12px; +} + +spinbutton:not(.vertical) > button { + padding: 0; + margin: 6px; +} + +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; +} + +cell.activatable spinbutton:not(.vertical) { + margin: 3px 0; +} + +cell.activatable spinbutton:not(.vertical) > button { + margin: 0; + padding: 0; + min-height: 24px; + border-radius: 0; +} + +cell.activatable spinbutton:not(.vertical) > button:last-child { + border-radius: 0 6px 6px 0; +} + +cell.activatable spinbutton:not(.vertical) > button.up:dir(ltr), cell.activatable spinbutton:not(.vertical) > button.down:dir(rtl) { + margin-left: 0; +} + +cell.activatable spinbutton:not(.vertical) > button.up:dir(rtl), cell.activatable spinbutton:not(.vertical) > button.down:dir(ltr) { + margin-right: 0; +} + +spinbutton.vertical > text { + min-height: 36px; + min-width: 42px; + padding: 0; +} + +spinbutton.vertical > button { + padding: 0; + margin: 6px 9px; +} + +/************** + * ComboBoxes * + **************/ +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: 0; +} + +dropdown popover listview > row, +combobox popover listview > row { + padding: 6px; +} + +dropdown popover listview > row:selected, +combobox popover listview > row:selected { + color: #FFFFFF; + 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 75ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1), box-shadow 300ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 0 0 2px transparent; + background-color: rgba(255, 255, 255, 0.08); + color: rgba(255, 255, 255, 0.7); + outline: 0 solid transparent; + outline-offset: 2px; +} + +button.combo:only-child:focus { + color: #FFFFFF; + outline: 2px solid rgba(255, 255, 255, 0.04); + outline-offset: -2px; +} + +button.combo:only-child:hover { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; +} + +button.combo:only-child:active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; +} + +button.combo:only-child:checked { + background-color: alpha(currentColor, 0.1); + color: #FFFFFF; +} + +button.combo:only-child:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); + outline-color: transparent; +} + +/************ + * Toolbars * + ************/ +.toolbar { + padding: 6px; + background-color: #303446; + border-spacing: 6px; +} + +.osd .toolbar { + background-color: transparent; +} + +.app-notification, .toolbar.osd { + transition: box-shadow 200ms ease-out; + padding: 6px; + border-radius: 12px; + box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15), 0 3px 3px 0 rgba(0, 0, 0, 0.18), 0 3px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #414559; + color: #FFFFFF; +} + +.app-notification:backdrop, .toolbar.osd:backdrop { + box-shadow: 0 4px 3px -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 entry, +.toolbar spinbutton, +.toolbar splitbutton, +.toolbar separator:not(.sidebar), +.toolbar button, +.toolbar menubutton, +.toolbar scalebutton { + margin-top: 0; + margin-bottom: 0; +} + +.toolbar menubutton > button, +.toolbar splitbutton > button, +.toolbar splitbutton > menubutton, +.toolbar scalebutton > button { + margin-top: 0; + margin-bottom: 0; +} + +.toolbar switch { + margin-top: 4px; + margin-bottom: 4px; +} + +.toolbar spinbutton entry, +.toolbar spinbutton button { + margin: 0; +} + +.toolbar popover.menu separator:not(.sidebar) { + margin-top: 6px; + margin-bottom: 6px; +} + +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: #303446; + background-clip: border-box; + box-shadow: none; +} + +searchbar > revealer > box entry, searchbar > revealer > box button, searchbar > revealer > box menubutton { + margin: 0; +} + +/*************** + * Header bars * + ***************/ +headerbar button:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.7); + border: none; +} + +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: #FFFFFF; +} + +headerbar button:disabled:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.32); +} + +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.32); +} + +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.32); +} + +headerbar entry { + background-color: rgba(255, 255, 255, 0.04); + color: #FFFFFF; +} + +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: #FFFFFF; +} + +headerbar entry image:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1), color 75ms cubic-bezier(0, 0, 0.2, 1); + box-shadow: inset 0 -1px rgba(255, 255, 255, 0.12); + background-color: #232634; + color: #FFFFFF; + min-height: 48px; + padding: 0; + margin: 0; +} + +headerbar:disabled { + color: rgba(255, 255, 255, 0.5); +} + +headerbar:backdrop { + background-color: #303446; + color: rgba(255, 255, 255, 0.7); +} + +headerbar:backdrop:disabled { + color: rgba(255, 255, 255, 0.32); +} + +headerbar.flat, headerbar.flat:backdrop { + background: none; + box-shadow: none; + transition: none; +} + +headerbar .title { + padding: 0 12px; + font-weight: bold; +} + +headerbar .subtitle { + padding: 0 12px; + font-size: smaller; +} + +headerbar .subtitle, +headerbar .dim-label, +headerbar row.expander image.expander-row-arrow, +row.expander headerbar image.expander-row-arrow, +headerbar row label.subtitle, +row headerbar label.subtitle { + transition: color 75ms cubic-bezier(0, 0, 0.2, 1); + color: rgba(255, 255, 255, 0.7); +} + +headerbar .subtitle:backdrop, +headerbar .dim-label:backdrop, +headerbar row.expander image.expander-row-arrow:backdrop, +row.expander headerbar image.expander-row-arrow:backdrop, +headerbar row label.subtitle:backdrop, +row headerbar label.subtitle: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); +} + +headerbar > windowhandle > box { + padding: 0 6px; +} + +headerbar > windowhandle > box, +headerbar > windowhandle > box > box.start, +headerbar > windowhandle > box > box.end { + border-spacing: 6px; +} + +headerbar entry, +headerbar spinbutton, +headerbar button, +headerbar menubutton, +headerbar stackswitcher, +headerbar separator:not(.sidebar) { + margin-top: 6px; + margin-bottom: 6px; +} + +headerbar menubutton > button, +headerbar spinbutton > button, +headerbar splitbutton > button, +headerbar splitbutton > menubutton, +headerbar .linked > menubutton, +headerbar entry > menubutton { + margin-top: 0; + margin-bottom: 0; +} + +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); + opacity: 1; +} + +headerbar .linked:not(.vertical) > entry:not(:only-child) { + border-radius: 6px; +} + +headerbar .entry-tag { + margin-top: 5px; + margin-bottom: 5px; +} + +headerbar popover.background button.suggested-action:disabled, +headerbar popover.background button.destructive-action:disabled { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.5); +} + +headerbar popover.background entry, +headerbar popover.background spinbutton, +headerbar popover.background button, +headerbar popover.background menubutton, +headerbar popover.background stackswitcher { + margin-top: 0; + margin-bottom: 0; +} + +headerbar separator:not(.sidebar) { + background-color: rgba(255, 255, 255, 0.12); +} + +headerbar switch { + margin-top: 12px; + margin-bottom: 12px; +} + +headerbar.selection-mode { + transition: background-color 0.1ms 225ms, color 75ms cubic-bezier(0, 0, 0.2, 1); + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); +} + +headerbar.selection-mode:backdrop { + color: rgba(0, 0, 0, 0.6); +} + +headerbar.selection-mode .subtitle:link { + color: rgba(0, 0, 0, 0.87); +} + +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.default-decoration { + min-height: 36px; + padding: 0; + margin: 0; + box-shadow: none; + border: none; + outline: none; + background-image: image(#232634); +} + +headerbar.default-decoration:backdrop { + background-image: image(#303446); +} + +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 { + background: #232634 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, linear-gradient(to right, transparent 65%, rgba(238, 190, 190, 0.1)), linear-gradient(to top, #292d3d 3px, #2d3143); +} + +window.devel headerbar:backdrop { + background: #232634 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, image(#232634); + /* background-color would flash */ +} + +/************ + * Pathbars * + ************/ + +pathbar > button { + padding-left: 6px; + padding-right: 6px; + border-radius: 6px; + background-color: alpha(currentColor, 0.08); + border: none; + box-shadow: none; +} + + +pathbar > button:disabled { + background-color: alpha(currentColor, 0.05); +} + + +pathbar > button:checked { + background-color: alpha(currentColor, 0.1); + color: #FFFFFF; +} + + +pathbar > button:checked:hover { + background-color: alpha(currentColor, 0.16); + color: #FFFFFF; +} + + +pathbar > button label, +pathbar > button image { + margin-left: 3px; + margin-right: 3px; +} + + +pathbar > button.slider-button { + padding-left: 4px; + padding-right: 4px; +} + +.pathbar { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.7); + border: none; + border-radius: 6px; + padding: 2px; +} + +headerbar .pathbar { + margin-top: 6px; + margin-bottom: 6px; + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.7); +} + +.pathbar > button { + margin-top: 0; + margin-bottom: 0; + min-height: 20px; + border-radius: 4px; + border: none; + box-shadow: none; +} + +.pathbar > button:last-child { + background-color: alpha(currentColor, 0.1); + color: #FFFFFF; +} + +/************** + * Tree Views * + **************/ +columnview.view, +treeview.view { + border-left-color: #494c5c; + border-top-color: #494c5c; +} + +columnview.view:hover, columnview.view:selected, +treeview.view:hover, +treeview.view:selected { + border-radius: 0; +} + +columnview.view:focus, +treeview.view:focus { + box-shadow: none; + outline: 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-end-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: #FFFFFF; +} + +columnview.view.expander:selected, +treeview.view.expander:selected { + color: #FFFFFF; +} + +columnview.view.expander:selected:hover, +treeview.view.expander:selected:hover { + color: #FFFFFF; +} + +columnview.view.expander:checked, +treeview.view.expander:checked { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +columnview.view.expander:disabled, +treeview.view.expander:disabled { + color: rgba(255, 255, 255, 0.32); +} + +columnview.view.progressbar, +treeview.view.progressbar { + border-bottom: 6px solid #eebebe; + 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: #303446; +} + +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: #303446; + background-clip: border-box; + color: #eebebe; +} + +columnview.view acceleditor > label, +treeview.view acceleditor > label { + background-color: #eebebe; +} + +stack.view treeview.view { + min-height: 36px; +} + +/********* + * Menus * + *********/ +menubar { + padding: 0; + background-color: #232634; + color: #FFFFFF; +} + +menubar:backdrop { + background-color: #303446; + color: rgba(255, 255, 255, 0.7); +} + +.csd menubar { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); +} + +menubar > item { + transition: all 75ms 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: #FFFFFF; +} + +menubar > item:disabled { + color: rgba(255, 255, 255, 0.32); +} + +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 { + color: #FFFFFF; + 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 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 label.title { + font-weight: bold; + padding: 4px 26px; +} + +/************ + * Popovers * + ************/ +popover.background { + font: initial; +} + +popover.background, popover.background:backdrop { + background-color: transparent; +} + +popover > arrow, +popover > contents { + transition: box-shadow 200ms ease-out; + padding: 6px; + background-color: #414559; + border-radius: 12px; + color: #FFFFFF; + 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 > contents > list, +popover > contents > .view, +popover > contents > toolbar { + border-style: none; + box-shadow: none; + background-color: transparent; +} + +popover > contents separator { + background-color: rgba(255, 255, 255, 0.12); + margin: 3px 0; +} + +popover > contents list separator { + margin: 0; +} + +popover > contents list > row { + border-radius: 6px; +} + +popover > contents stack > box { + padding: 0; +} + +popover > contents > box > button { + margin: 0; +} + +popover .view:not(:selected), +popover toolbar { + background-color: #414559; +} + +popover.menu button, +popover button.model { + min-height: 32px; + padding: 0 8px; +} + +popover modelbutton { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1); + min-height: 22px; + min-width: 56px; + padding: 3px 9px; + color: #FFFFFF; + font: initial; + border-radius: 6px; +} + +popover modelbutton:focus:not(:hover) { + transition: none; + box-shadow: none; + outline: none; +} + +popover modelbutton:disabled { + color: rgba(255, 255, 255, 0.5); +} + +popover modelbutton accelerator { + color: rgba(255, 255, 255, 0.5); + margin-left: 30px; +} + +popover modelbutton accelerator:disabled { + color: rgba(255, 255, 255, 0.12); +} + +popover modelbutton arrow.left { + -gtk-icon-source: -gtk-icontheme("go-previous-symbolic"); +} + +popover modelbutton arrow.right { + -gtk-icon-source: -gtk-icontheme("go-next-symbolic"); +} + +.osd popover, popover.touch-selection, popover.magnifier { + background-color: transparent; +} + +magnifier { + background-color: #303446; +} + +/************* + * Notebooks * + *************/ +tabbar tab, tabbar tabbox > tabboxchild > tab, notebook > header > tabs > tab { + min-height: 24px; + min-width: 24px; + padding: 3px 6px; + border: none; + background-clip: padding-box; + font-weight: 500; + border-radius: 6px; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms cubic-bezier(0, 0, 0.2, 1), outline 300ms cubic-bezier(0, 0, 0.2, 1); + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + background-color: transparent; + outline: 0 solid transparent; + outline-offset: 2px; + color: rgba(255, 255, 255, 0.7); +} + +tabbar tab:hover:not(:checked):not(:selected), notebook > header > tabs > tab:hover:not(:checked):not(:selected) { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + box-shadow: none; +} + +tabbar tab:disabled, notebook > header > tabs > tab:disabled { + color: rgba(255, 255, 255, 0.32); + background-color: transparent; +} + +tabbar tab:active, notebook > header > tabs > tab:active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + box-shadow: none; +} + +tabbar tab:checked:not(:active), notebook > header > tabs > tab:checked:not(:active), tabbar tab:selected:not(:active), notebook > header > tabs > tab:selected:not(:active) { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, background-color 0ms; + background-color: rgba(255, 255, 255, 0.15); + color: #FFFFFF; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); +} + +tabbar tab:checked:not(:active):disabled, notebook > header > tabs > tab:checked:not(:active):disabled, tabbar tab:selected:not(:active):disabled, notebook > header > tabs > tab:selected:not(:active):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: #303446; + 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); + 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 > tabs > tab { + margin: 3px; +} + +notebook > header > tabs > tab > box { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1); + margin: -6px -12px; + padding: 6px 12px; +} + +notebook > header > tabs > tab > box:drop(active) { + background-color: rgba(255, 255, 255, 0.12); + color: #FFFFFF; +} + +notebook > header > tabs > tab button.flat:last-child { + margin-left: 6px; + margin-right: -3px; +} + +notebook > header > tabs > tab button.flat:first-child { + margin-left: -3px; + margin-right: 6px; +} + +notebook > header > tabs > tab button.close-button { + min-width: 24px; + min-height: 24px; +} + +notebook > header.top > tabs, notebook > header.bottom > tabs { + padding-left: 0; + padding-right: 0; +} + +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:not(:last-child), notebook > header.bottom > tabs > tab:not(: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, notebook > header.right > tabs { + padding-top: 0; + padding-bottom: 0; +} + +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:not(:last-child), notebook > header.right > tabs > tab:not(: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: 0 3px; +} + +notebook > stack:not(:only-child) { + background-color: transparent; + border-radius: 6px; +} + +tabbar > revealer > box { + box-shadow: none; +} + +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, #303446, rgba(0, 0, 0, 0) 20px); +} + +tabbar undershoot.right { + background: linear-gradient(to left, #303446, rgba(0, 0, 0, 0) 20px); +} + +tabbar .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#eebebe, 0.5), alpha(#eebebe, 0.3) 1px, alpha(#eebebe, 0) 20px); +} + +tabbar .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#eebebe, 0.5), alpha(#eebebe, 0.3) 1px, alpha(#eebebe, 0) 20px); +} + +tabbar tabbox { + background-color: rgba(255, 255, 255, 0.04); + background-image: none; + padding: 0; + margin: 0; + border-radius: 0; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +tabbar tabbox > background { + background: none; +} + +tabbar tabbox > separator { + margin: 9px 0; + min-width: 1px; + transition: opacity 150ms ease-in-out; +} + +tabbar tabbox > separator.hidden { + opacity: 0; +} + +tabbar tabbox > tabboxchild { + margin: 0 -3px; + padding: 0; +} + +tabbar tabbox > tabboxchild > tab { + margin: 3px; +} + +tabbar tab.needs-attention { + background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#eebebe, 0.4) 10%, alpha(#eebebe, 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(#eebebe, 0.4) 10%, alpha(#eebebe, 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, #232634, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) undershoot.right { + background: linear-gradient(to left, #232634, rgba(0, 0, 0, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-left undershoot.left { + background: linear-gradient(to right, alpha(#eebebe, 0.5), alpha(#eebebe, 0.3) 1px, alpha(#eebebe, 0) 20px); +} + +tabbar:not(.inline) .needs-attention-right undershoot.right { + background: linear-gradient(to left, alpha(#eebebe, 0.5), alpha(#eebebe, 0.3) 1px, alpha(#eebebe, 0) 20px); +} + +tabbar:not(.inline) tabbox > background { + background-color: #232634; +} + +tabbar:not(.inline) .start-action, +tabbar:not(.inline) .end-action { + background-color: alpha(#232634, 0.6); + border-color: rgba(255, 255, 255, 0.12); +} + +tabbar:not(.inline):backdrop .box { + background-color: #303446; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); +} + +dnd tab { + min-height: 24px; + background-color: #232634; + color: #FFFFFF; + 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(#eebebe, 0.4) 10%, alpha(#eebebe, 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; +} + +tabbar tab button.image-button.tab-close-button, +dnd tab button.image-button.tab-close-button { + margin-right: -3px; +} + +tabview:drop(active), +tabbox:drop(active) { + box-shadow: none; +} + +/************** + * Scrollbars * + **************/ +scrollbar { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); + background-color: #303446; + 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 { + border: none; + background: none; + padding: 0; + outline: none; +} + +scrollbar > range > trough > slider { + transition: background-color 75ms 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: #FFFFFF; +} + +scrollbar > range > trough > slider:disabled { + background-color: rgba(255, 255, 255, 0.32); +} + +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(48, 52, 70, 0.3); +} + +scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { + min-width: 4px; + min-height: 4px; + margin: 3px; + border: 1px solid rgba(48, 52, 70, 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.32); +} + +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(65, 69, 89, 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 75ms 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: #eebebe; +} + +switch:disabled { + opacity: 0.5; +} + +switch image { + margin: -8px; +} + +switch > slider { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); + min-width: 18px; + min-height: 18px; + margin: 3px; + border-radius: 9999px; + outline: none; + box-shadow: 0 3px 3px -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); + 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; + border: none; + color: transparent; + background-color: rgba(255, 255, 255, 0.12); + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), box-shadow 150ms 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: rgba(0, 0, 0, 0.87); + background-color: #eebebe; +} + +check:checked:hover, check:indeterminate:hover, +radio:checked:hover, +radio:indeterminate:hover { + box-shadow: 0 0 0 6px rgba(238, 190, 190, 0.15); + background-color: #f9e6e6; +} + +check:checked:active, check:indeterminate:active, +radio:checked:active, +radio:indeterminate:active { + box-shadow: 0 0 0 6px rgba(238, 190, 190, 0.2); + background-color: #eebebe; +} + +check:checked:disabled, check:indeterminate:disabled, +radio:checked:disabled, +radio:indeterminate:disabled { + color: rgba(0, 0, 0, 0.6); + background-color: rgba(238, 190, 190, 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, 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, +columnview.view:hover check, +columnview.view:hover radio, +columnview.view:selected check, +columnview.view:selected radio, +columnview.view:focus check, +columnview.view:focus radio { + box-shadow: none; +} + +treeview.view:hover check:checked, treeview.view:hover radio:checked, treeview.view:selected check:checked, treeview.view:selected radio:checked, treeview.view:focus check:checked, treeview.view:focus radio:checked, +columnview.view:hover check:checked, +columnview.view:hover radio:checked, +columnview.view:selected check:checked, +columnview.view:selected radio:checked, +columnview.view:focus check:checked, +columnview.view:focus radio:checked { + color: rgba(0, 0, 0, 0.87); + background-color: #eebebe; +} + +/************ + * GtkScale * + ************/ +scale { + min-height: 2px; + min-width: 2px; +} + +scale.horizontal { + padding: 17px 12px; +} + +scale.vertical { + padding: 12px 17px; +} + +scale > trough { + transition: background-color 75ms 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 > trough > highlight { + transition: background-image 75ms cubic-bezier(0, 0, 0.2, 1); + background-image: image(#eebebe); +} + +scale > trough > highlight:disabled { + background-color: #303446; + background-image: image(rgba(255, 255, 255, 0.32)); +} + +scale > trough > fill { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1); + background-color: rgba(255, 255, 255, 0.3); +} + +scale > trough > fill:disabled { + background-color: transparent; +} + +scale > trough > slider { + min-height: 18px; + min-width: 18px; + margin: -8px; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); + border-radius: 9999px; + color: #eebebe; + background-color: #303446; + box-shadow: inset 0 0 0 2px #eebebe; +} + +scale > trough > slider:hover { + box-shadow: inset 0 0 0 2px #eebebe, 0 0 0 8px rgba(255, 255, 255, 0.12); +} + +scale > trough > slider:active { + box-shadow: inset 0 0 0 4px #eebebe, 0 0 0 8px rgba(255, 255, 255, 0.12); +} + +scale > trough > slider:disabled { + box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.32); +} + +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 > trough > slider { + margin: -7px; +} + +scale > marks, +scale > value { + color: rgba(255, 255, 255, 0.7); +} + +scale indicator { + background-color: rgba(255, 255, 255, 0.3); + color: transparent; +} + +scale.marks-before:not(.marks-after) > trough > slider, scale.marks-after:not(.marks-before) > trough > slider { + transform: rotate(0); +} + +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) > trough > slider { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms 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) > trough > slider, scale.horizontal.marks-before:not(.marks-after) > trough > slider:hover, scale.horizontal.marks-before:not(.marks-after) > trough > slider:active, scale.horizontal.marks-before:not(.marks-after) > trough > slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-before:not(.marks-after) > trough > slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) > trough > slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) > trough > slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-before:not(.marks-after) > trough > slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-before:not(.marks-after) > trough > 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) > trough > 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) > trough > 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) > trough > slider { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms 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) > trough > slider, scale.horizontal.marks-after:not(.marks-before) > trough > slider:hover, scale.horizontal.marks-after:not(.marks-before) > trough > slider:active, scale.horizontal.marks-after:not(.marks-before) > trough > slider:disabled { + box-shadow: none; +} + +scale.horizontal.marks-after:not(.marks-before) > trough > slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) > trough > slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) > trough > slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.horizontal.marks-after:not(.marks-before) > trough > slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.horizontal.marks-after:not(.marks-before) > trough > 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) > trough > 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) > trough > 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) > trough > slider { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms 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) > trough > slider, scale.vertical.marks-before:not(.marks-after) > trough > slider:hover, scale.vertical.marks-before:not(.marks-after) > trough > slider:active, scale.vertical.marks-before:not(.marks-after) > trough > slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-before:not(.marks-after) > trough > slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) > trough > slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) > trough > slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-before:not(.marks-after) > trough > slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-before:not(.marks-after) > trough > 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) > trough > 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) > trough > 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) > trough > slider { + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms 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) > trough > slider, scale.vertical.marks-after:not(.marks-before) > trough > slider:hover, scale.vertical.marks-after:not(.marks-before) > trough > slider:active, scale.vertical.marks-after:not(.marks-before) > trough > slider:disabled { + box-shadow: none; +} + +scale.vertical.marks-after:not(.marks-before) > trough > slider:focus { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) > trough > slider:hover { + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) > trough > slider:focus:hover { + background-color: alpha(currentColor, 0.16); +} + +scale.vertical.marks-after:not(.marks-before) > trough > slider:active { + background-size: auto, 0% 0%; + background-color: alpha(currentColor, 0.08); +} + +scale.vertical.marks-after:not(.marks-before) > trough > 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) > trough > 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) > trough > 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 > trough > slider:dir(ltr), scale.color.horizontal > trough > 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) > trough > 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: #eebebe; +} + +progressbar.osd { + min-width: 6px; + min-height: 6px; + background-color: transparent; + box-shadow: none; + margin: 0; + padding: 0; +} + +progressbar.osd trough { + background-color: transparent; +} + +progressbar.osd progress { + background-color: #eebebe; +} + +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: #FBC02D; +} + +levelbar block.high, levelbar block:not(.empty) { + background-color: #eebebe; +} + +levelbar block.full { + background-color: #66BB6A; +} + +levelbar block.empty { + background-color: rgba(255, 255, 255, 0.12); +} + +/**************** + * Print dialog * +*****************/ +window.dialog.print drawing { + color: #FFFFFF; + background: none; + border: none; + padding: 0; +} + +window.dialog.print drawing paper { + padding: 0; + border: 1px solid rgba(255, 255, 255, 0.12); + background-color: #303446; + color: #FFFFFF; +} + +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: #303446; + background-clip: border-box; + border: none; +} + +actionbar > revealer > box button, actionbar > revealer > box entry, +actionbar > revealer > box menubutton, actionbar > revealer > box menubutton > button, +actionbar > revealer > box splitbutton, actionbar > revealer > box splitbutton > button, +actionbar > revealer > box spinbutton { + margin: 0; +} + +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; +} + +scrolledwindow.undershoot-top > undershoot.top { + box-shadow: none; + background: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +scrolledwindow.undershoot-bottom > undershoot.bottom { + box-shadow: none; + background: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +scrolledwindow > junction { + border: none; + background-color: #303446; +} + +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, separator.spacer { + min-width: 0; + min-height: 0; + background-color: transparent; + background-image: none; +} + +/********* + * Lists * + *********/ +list.content, +list.boxed-list { + border-radius: 7px; + box-shadow: none; + border: 1px solid rgba(255, 255, 255, 0.12); +} + +listview, +list { + border-color: rgba(255, 255, 255, 0.12); + background-color: #303446; + background-clip: padding-box; +} + +listview > row, +list > row { + padding: 6px; + background-clip: padding-box; +} + +listview > row.expander, +list > row.expander { + padding: 0px; +} + +listview > row.expander .row-header, +list > row.expander .row-header { + padding: 2px; +} + +listview.horizontal row.separator:not(:last-child), listview.separators.horizontal > row:not(.separator):not(:last-child), +list.horizontal row.separator:not(:last-child), +list.separators.horizontal > row:not(.separator):not(:last-child) { + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +listview:not(.horizontal) row.separator:not(:last-child), listview.separators:not(.horizontal) > row:not(.separator):not(:last-child), +list:not(.horizontal) row.separator:not(:last-child), +list.separators:not(.horizontal) > row:not(.separator):not(:last-child) { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +list.frame { + border-radius: 6px; +} + +listview.view { + color: #FFFFFF; + background-color: transparent; +} + +popover.menu listview.view { + padding: 0; + border-radius: 6px; +} + +popover.menu listview.view > row { + margin-left: 0; + margin-right: 0; + border-radius: 6px; +} + +row { + color: rgba(255, 255, 255, 0.7); + background-clip: padding-box; +} + +row label.subtitle { + font-size: smaller; +} + +row > box.header { + margin-left: 12px; + margin-right: 12px; + min-height: 48px; +} + +row > box.header > .icon:disabled { + filter: opacity(0.35); +} + +row > box.header > box.title { + margin-top: 6px; + margin-bottom: 6px; + border-spacing: 3px; +} + +.nautilus-window .nautilus-grid-view child.activatable, columnview.view > header > button, +treeview.view > header > button, row.activatable { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 300ms cubic-bezier(0, 0, 0.2, 1), background-image 1200ms cubic-bezier(0, 0, 0.2, 1), font-weight 0; + outline: none; + box-shadow: none; + background-color: transparent; + background-image: radial-gradient(circle, transparent 10%, transparent 0%); + background-repeat: no-repeat; + background-position: center; + background-size: 1000% 1000%; + outline: none; +} + +.nautilus-window .nautilus-grid-view child.activatable:focus, columnview.view > header > button:focus, +treeview.view > header > button:focus, row.activatable:focus { + color: #FFFFFF; + background-color: transparent; + box-shadow: none; + outline: none; +} + +.nautilus-window .nautilus-grid-view child.activatable:hover, columnview.view > header > button:hover, +treeview.view > header > button:hover, .nautilus-window .nautilus-grid-view child.has-open-popup.activatable, columnview.view > header > button.has-open-popup, +treeview.view > header > button.has-open-popup, row.activatable:hover, row.activatable.has-open-popup { + color: #FFFFFF; + background-color: alpha(currentColor, 0.05); + box-shadow: none; +} + +.nautilus-window .nautilus-grid-view child.activatable:active, columnview.view > header > button:active, +treeview.view > header > button:active, row.activatable:active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, font-weight 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.05) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.05); + color: #FFFFFF; + box-shadow: none; +} + +.nautilus-window .nautilus-grid-view child.activatable:selected, columnview.view > header > button:selected, +treeview.view > header > button:selected, row.activatable:selected { + background-color: alpha(currentColor, 0.06); +} + +.nautilus-window .nautilus-grid-view child.activatable:selected:hover, columnview.view > header > button:selected:hover, +treeview.view > header > button:selected:hover, row.activatable:selected:hover { + background-color: alpha(currentColor, 0.08); +} + +button row.activatable:focus, button row.activatable:hover, button row.activatable:active { + box-shadow: none; + background: none; +} + +button:checked row.activatable { + color: rgba(0, 0, 0, 0.87); +} + +row:selected { + background-color: alpha(currentColor, 0.06); + color: inherit; + box-shadow: none; +} + +row:selected:hover { + background-color: alpha(currentColor, 0.08); +} + +row:selected:focus, row:selected:focus-visible:focus-within { + outline: none; + background-color: alpha(currentColor, 0.08); +} + +row:selected:focus:hover, row:selected:focus-visible:focus-within:hover { + background-color: alpha(currentColor, 0.16); +} + +row:selected image, +row:selected label { + color: #FFFFFF; +} + +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); +} + +.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:last-child { + border-bottom: none; +} + +.rich-list > row > box { + border-spacing: 12px; +} + +row label.subtitle { + font-size: smaller; +} + +row > box.header { + margin-left: 12px; + margin-right: 12px; + border-spacing: 6px; + min-height: 50px; +} + +row > box.header > .icon:disabled { + filter: opacity(0.45); +} + +row > box.header > box.title { + margin-top: 6px; + margin-bottom: 6px; + border-spacing: 3px; + padding: 0; +} + +row > box.header > box.title, +row > box.header > box.title > .title, +row > box.header > box.title > .subtitle { + padding: 0; + font-weight: inherit; +} + +row > box.header > .prefixes, +row > box.header > .suffixes { + border-spacing: 6px; +} + +row > box.header > .icon:dir(ltr), +row > box.header > .prefixes:dir(ltr) { + margin-right: 6px; +} + +row > box.header > .icon:dir(rtl), +row > box.header > .prefixes:dir(rtl) { + margin-left: 6px; +} + +row.entry:not(:selected).activatable.focused:hover, row.entry:not(:selected).activatable.focused:active { + background-color: transparent; +} + +row.entry .edit-icon, row.entry .indicator { + min-width: 24px; + min-height: 24px; + padding: 5px; +} + +row.entry .edit-icon:disabled { + opacity: 0.5; +} + +row.entry .indicator { + opacity: 0.65; +} + +row.entry.monospace { + font-family: inherit; +} + +row.entry.monospace text { + font-family: monospace; +} + +row.entry.error text > selection:focus-within { + background-color: alpha(#F44336, 0.2); +} + +row.entry.error text > cursor-handle > contents { + background-color: currentColor; +} + +row.entry.warning text > selection:focus-within { + background-color: alpha(#FBC02D, 0.2); +} + +row.entry.warning text > cursor-handle > contents { + background-color: currentColor; +} + +row.entry.success text > selection:focus-within { + background-color: alpha(#66BB6A, 0.2); +} + +row.entry.success text > cursor-handle > contents { + background-color: currentColor; +} + +row.combo image.dropdown-arrow:disabled { + filter: opacity(0.45); +} + +row.combo listview.inline { + background: none; + border: none; + box-shadow: none; + color: inherit; +} + +row.combo listview.inline, row.combo listview.inline:disabled { + background: none; + color: inherit; +} + +row.combo popover > contents { + min-width: 120px; +} + +list.content > row, list.content > row.expander row.header, +list.boxed-list > row, +list.boxed-list > row.expander row.header, row.expander list.nested > row { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +list.content > row:not(:selected).activatable:hover, list.content > row.expander row.header:not(:selected).activatable:hover, +list.boxed-list > row:not(:selected).activatable:hover, +list.boxed-list > row.expander row.header:not(:selected).activatable:hover, row.expander list.nested > row:not(:selected).activatable:hover { + background-color: alpha(currentColor, 0.08); +} + +list.content > row:not(:selected).activatable:active, list.content > row.expander row.header:not(:selected).activatable:active, +list.boxed-list > row:not(:selected).activatable:active, +list.boxed-list > row.expander row.header:not(:selected).activatable:active, row.expander list.nested > row:not(:selected).activatable:active { + background-color: alpha(currentColor, 0.12); +} + +list.content > row:not(:selected).activatable.has-open-popup, list.content > row.expander row.header:not(:selected).activatable.has-open-popup, +list.boxed-list > row:not(:selected).activatable.has-open-popup, +list.boxed-list > row.expander row.header:not(:selected).activatable.has-open-popup, row.expander list.nested > row:not(:selected).activatable.has-open-popup { + background-color: alpha(currentColor, 0.03); +} + +row.expander { + background: none; + padding: 0px; +} + +row.expander > box > list { + background: none; + color: inherit; +} + +row.expander list.nested { + color: inherit; +} + +row.expander image.expander-row-arrow { + transition: -gtk-icon-transform 200ms cubic-bezier(0, 0, 0.2, 1); +} + +row.expander image.expander-row-arrow:dir(ltr) { + margin-left: 6px; +} + +row.expander image.expander-row-arrow:dir(rtl) { + margin-right: 6px; +} + +row.expander image.expander-row-arrow:dir(ltr) { + -gtk-icon-transform: rotate(0.5turn); +} + +row.expander image.expander-row-arrow:dir(rtl) { + -gtk-icon-transform: rotate(-0.5turn); +} + +row.expander image.expander-row-arrow:disabled { + filter: opacity(0.45); +} + +row.expander:checked image.expander-row-arrow { + -gtk-icon-transform: rotate(0turn); + opacity: 1; +} + +row.expander:checked image.expander-row-arrow:not(:disabled) { + color: #eebebe; +} + +.osd row.expander:checked image.expander-row-arrow:not(:disabled) { + color: inherit; +} + +list.content > row.expander, +list.boxed-list > row.expander { + border: none; +} + +list.content > row:first-child, list.content > row:first-child.expander row.header, +list.boxed-list > row:first-child, +list.boxed-list > row:first-child.expander row.header { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +list.content > row:last-child, list.content > row:last-child.expander:not(:checked), list.content > row:last-child.expander:not(:checked) row.header, list.content > row:last-child.expander:checked list.nested, list.content > row:last-child.expander:checked list.nested > row:last-child, +list.boxed-list > row:last-child, +list.boxed-list > row:last-child.expander:not(:checked), +list.boxed-list > row:last-child.expander:not(:checked) row.header, +list.boxed-list > row:last-child.expander:checked list.nested, +list.boxed-list > row:last-child.expander:checked list.nested > row:last-child { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; + border-bottom-width: 0; +} + +columnview > listview > row { + padding: 0; +} + +columnview > listview > row > cell { + padding: 8px 6px; +} + +columnview > listview > row > cell:not(:first-child) { + border-left: 1px solid transparent; +} + +columnview.column-separators > listview > row > cell { + border-left-color: rgba(255, 255, 255, 0.12); +} + +columnview.data-table > listview > row > cell { + padding-top: 2px; + padding-bottom: 2px; +} + +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 #eebebe; +} + +columnview row:not(:selected) cell editablelabel.editing text selection { + color: rgba(0, 0, 0, 0.87); + background-color: #eebebe; +} + +/********************* + * App Notifications * + *********************/ +.app-notification { + margin: 6px; + border-spacing: 0; + padding: 0; + border: none; + background-image: none; +} + +.app-notification button.text-button:not(:disabled) { + color: #eebebe; +} + +.app-notification > box > label { + margin-left: 9px; +} + +.app-notification.frame, +.app-notification border { + border: none; +} + +/************* + * Expanders * + *************/ +expander { + transition: all 75ms 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: #FFFFFF; +} + +expander:checked { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +expander:disabled { + color: rgba(255, 255, 255, 0.32); +} + +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: #FFFFFF; +} + +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: 6px; + margin: 0; +} + +calendar > grid > label.today:selected { + box-shadow: none; +} + +calendar > grid > label:focus { + outline-style: none; +} + +calendar > grid > label.day-number { + padding: 6px; +} + +calendar > grid > label.day-number.other-month { + color: alpha(currentColor, 0.3); +} + +/*********** + * Dialogs * + ***********/ +window.messagedialog .response-area > box > button, window.dialog.message .dialog-action-area > button { + border-radius: 0; + min-height: 28px; + padding: 6px 12px; + margin: 0; + border: none; +} + +window.messagedialog .response-area > box > button:first-child, window.dialog.message .dialog-action-area > button:first-child { + border-radius: 0 0 0 12px; +} + +window.messagedialog .response-area > box > button:last-child, window.dialog.message .dialog-action-area > button:last-child { + border-radius: 0 0 12px 0; +} + +window.messagedialog .response-area > box > button:only-child, window.dialog.message .dialog-action-area > button:only-child { + border-radius: 0 0 12px 12px; +} + +window.dialog.message.background { + background-color: #414559; +} + +window.dialog.message box.dialog-vbox.vertical { + margin-top: 6px; + border-spacing: 24px; +} + +window.dialog.message box.dialog-vbox.vertical > box.vertical { + margin-bottom: 6px; +} + +window.dialog.message box.dialog-vbox.vertical > box > box > box > label.title { + font-weight: 800; + font-size: 15pt; +} + +window.dialog.message .titlebar { + min-height: 24px; + border-style: none; + box-shadow: inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #414559; + color: #FFFFFF; +} + +window.dialog.message .titlebar:backdrop { + background-color: #414559; + color: rgba(255, 255, 255, 0.7); +} + +window.dialog.message .dialog-action-area { + border-top: 1px solid rgba(255, 255, 255, 0.12); + margin: 0; + border-spacing: 0; +} + +window.dialog.message .dialog-action-area > button { + border: none; +} + +window.dialog.message .dialog-action-area > button:not(:last-child) { + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +window.dialog.message .dialog-action-area > button.suggested-action:not(:disabled) { + color: #eebebe; +} + +window.dialog.message .dialog-action-area > button.destructive-action:not(:disabled) { + color: #F44336; +} + +window.aboutdialog.background.csd scrolledwindow.frame, window.aboutdialog.background.csd scrolledwindow.frame > viewport.view, window.aboutdialog.background.csd scrolledwindow.frame > textview.view, window.aboutdialog.background.csd scrolledwindow.frame > textview.view > text { + border-radius: 6px; +} + +/******************** + * AdwMessageDialog * + ********************/ +window.messagedialog { + background-color: #414559; + color: #FFFFFF; +} + +window.messagedialog .message-area { + padding: 24px 30px; + border-spacing: 10px; +} + +window.messagedialog .response-area > box > button.suggested { + color: #eebebe; +} + +window.messagedialog .response-area > box > button.destructive { + color: #F44336; +} + +window.messagedialog.csd:not(.solid-csd) { + border-radius: 12px; +} + +window.messagedialog.csd:not(.solid-csd) .response-area > box.horizontal > button { + margin: 0; +} + +window.messagedialog.csd:not(.solid-csd) .response-area > box.horizontal > button:first-child { + margin-left: 0; +} + +window.messagedialog.csd:not(.solid-csd) .response-area > box.horizontal > button:last-child { + margin-right: 0; +} + +window.messagedialog.csd:not(.solid-csd) .response-area > box.vertical > button { + margin-top: 0; + margin-bottom: 0; +} + +window.messagedialog.csd:not(.solid-csd) .response-area > box.vertical > button:last-child { + border-bottom-left-radius: 12px; + border-bottom-right-radius: 12px; + margin-bottom: 0; +} + +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: #303446; +} + +filechooser stack.view frame > border { + border: none; +} + +filechooserbutton > button > box { + border-spacing: 6px; +} + +filechooserbutton:drop(active) { + box-shadow: none; + border-color: transparent; +} + +/*********** + * Sidebar * + ***********/ +.sidebar { + border-style: none; + background-color: #232634; +} + +.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; + color: inherit; +} + +paned .sidebar.left, paned .sidebar.right, paned .sidebar.left:dir(rtl), paned .sidebar:dir(rtl), paned .sidebar:dir(ltr), paned .sidebar { + border-style: none; +} + +leaflet.unfolded > box > stacksidebar.sidebar { + border: none; +} + +stacksidebar list { + padding: 6px; + background-color: #232634; +} + +stacksidebar row { + min-height: 24px; + padding: 6px; + border-radius: 6px; +} + +stacksidebar row:selected { + 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.12); +} + +/********************** + * Navigation Sidebar * + **********************/ +.navigation-sidebar { + padding: 4.5px 0; + border-right: none; +} + +.navigation-sidebar, .navigation-sidebar.view, .navigation-sidebar.view:disabled { + background-color: transparent; + color: inherit; +} + +.navigation-sidebar.background, .navigation-sidebar.background:disabled { + background-color: #232634; + color: rgba(255, 255, 255, 0.7); +} + +.navigation-sidebar > separator { + margin: 4.5px 0; +} + +.navigation-sidebar > row { + min-height: 24px; + padding: 6px; + border-radius: 6px; + margin: 1.5px 6px; +} + +/**************** + * File chooser * + ****************/ +row image.sidebar-icon { + transition: color 75ms 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.32); +} + +placessidebar > viewport.frame { + border-style: none; +} + +placessidebar list > separator { + margin: 3px 0; +} + +placessidebar row:selected { + font-weight: 500; +} + +placessidebar row image.sidebar-icon:dir(ltr) { + padding-right: 8px; +} + +placessidebar row image.sidebar-icon:dir(rtl) { + padding-left: 8px; +} + +placessidebar row label.sidebar-label { + color: inherit; +} + +placessidebar row label.sidebar-label:dir(ltr) { + padding-right: 2px; +} + +placessidebar row label.sidebar-label:dir(rtl) { + padding-left: 2px; +} + +placessidebar row.sidebar-placeholder-row { + background-color: alpha(currentColor, 0.08); +} + +placessidebar row.sidebar-new-bookmark-row { + color: #eebebe; +} + +placessidebar row.sidebar-new-bookmark-row image.sidebar-icon { + color: #eebebe; +} + +placessidebar row:drop(active) { + background-color: 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(#494c5c); + background-size: 1px 1px; + background-clip: content-box; + box-shadow: none; +} + +paned > separator.wide { + min-width: 6px; + min-height: 6px; + background-color: #303446; + background-image: image(#494c5c), image(#494c5c); + 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 > revealer > box { + padding: 6px; + border-spacing: 12px; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); + box-shadow: none; +} + +infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box { + background-color: #303446; + color: #FFFFFF; +} + +infobar.info > revealer > box button.text-button:not(:disabled):not(.suggested-action):not(.destructive-action), infobar.info:hover > revealer > box button.text-button:not(:disabled):not(.suggested-action):not(.destructive-action), infobar.info:backdrop > revealer > box button.text-button:not(:disabled):not(.suggested-action):not(.destructive-action) { + color: #eebebe; +} + +infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box { + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); +} + +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: rgba(0, 0, 0, 0.87); +} + +infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link { + color: rgba(0, 0, 0, 0.87); +} + +infobar.action:hover > revealer > box, infobar.question:hover > revealer > box { + background-color: #e9aaaa; +} + +infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box { + background-color: #FBC02D; + 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: #fbb814; +} + +infobar.error > revealer > box, infobar.error:backdrop > revealer > box { + background-color: #F44336; + color: #FFFFFF; +} + +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: #FFFFFF; +} + +infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link { + color: #FFFFFF; +} + +infobar.error:hover > revealer > box { + background-color: #f32c1e; +} + +/************ + * Tooltips * + ************/ +tooltip { + padding: 6px 12px; + box-shadow: none; + border: none; +} + +tooltip.background { + background-color: rgba(29, 31, 43, 0.9); + color: #FFFFFF; + 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); + border-radius: 6px; + margin: 2px 6px 8px 6px; +} + +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: #FFFFFF; +} + +colorswatch.light { + color: rgba(0, 0, 0, 0.87); +} + +colorchooser colorswatch:hover { + transition: box-shadow 200ms ease-out; + box-shadow: 0 0 0 2px #eebebe; +} + +colorswatch#add-color-button { + border-radius: 6px 0 0 6px; + color: #FFFFFF; +} + +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 3px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -1px rgba(0, 0, 0, 0.17); +} + +colorchooser .popover.osd { + transition: box-shadow 200ms ease-out; + border-radius: 6px; + box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15), 0 3px 3px 0 rgba(0, 0, 0, 0.18), 0 3px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #414559; +} + +colorchooser .popover.osd:backdrop { + box-shadow: 0 4px 3px -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: #303446; +} + +/********************** + * Window Decorations * + **********************/ +window { + border: none; +} + +window.csd { + border-radius: 12px; + outline-offset: -1px; + outline: 1px solid rgba(255, 255, 255, 0.1); + margin: 0; + transition: none; + box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2), 0 15px 16px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 36px transparent, 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +window.csd:backdrop { + transition: box-shadow 200ms ease-out; + box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15), 0 3px 3px 0 rgba(0, 0, 0, 0.18), 0 3px 6px 0 rgba(0, 0, 0, 0.12), 0 0 36px transparent, 0 0 0 1px rgba(0, 0, 0, 0.75); +} + +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; + transition: none; +} + +window.csd.maximized, window.csd.fullscreen { + box-shadow: none; + outline: none; +} + +window.solid-csd { + margin: 0; + padding: 2px; + border-radius: 0; + background-color: #232634; + border: 1px solid #494c5c; +} + +window.solid-csd:backdrop { + background-color: #303446; +} + +window.ssd { + box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.12); +} + +windowcontrols > button:not(.suggested-action):not(.destructive-action) { + min-height: 16px; + min-width: 16px; + padding: 10px 0; + margin-left: 4px; + margin-right: 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: transparent; + background: none; +} + +windowcontrols > button.minimize:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.minimize:active:not(.suggested-action):not(.destructive-action), windowcontrols > button.maximize:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.maximize:active:not(.suggested-action):not(.destructive-action), windowcontrols > button.close:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.close:active:not(.suggested-action):not(.destructive-action) { + box-shadow: none; +} + +windowcontrols > button.minimize:active:not(.suggested-action):not(.destructive-action) > image, windowcontrols > button.maximize:active:not(.suggested-action):not(.destructive-action) > image, windowcontrols > button.close:active:not(.suggested-action):not(.destructive-action) > image { + box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.25); +} + +windowcontrols > button.minimize:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.minimize:active:not(.suggested-action):not(.destructive-action), windowcontrols > button.maximize:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.maximize:active:not(.suggested-action):not(.destructive-action), windowcontrols > button.close:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.close:active:not(.suggested-action):not(.destructive-action) { + color: rgba(0, 0, 0, 0.5); +} + +windowcontrols > button.minimize:backdrop:not(.suggested-action):not(.destructive-action) > image, windowcontrols > button.maximize:backdrop:not(.suggested-action):not(.destructive-action) > image, windowcontrols > button.close:backdrop:not(.suggested-action):not(.destructive-action) > image { + background-color: rgba(255, 255, 255, 0.3); +} + +windowcontrols > button.minimize:backdrop:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.minimize:backdrop:active:not(.suggested-action):not(.destructive-action), windowcontrols > button.maximize:backdrop:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.maximize:backdrop:active:not(.suggested-action):not(.destructive-action), windowcontrols > button.close:backdrop:hover:not(.suggested-action):not(.destructive-action), windowcontrols > button.close:backdrop:active:not(.suggested-action):not(.destructive-action) { + color: rgba(255, 255, 255, 0.5); +} + +windowcontrols > button.minimize:not(.suggested-action):not(.destructive-action) > image { + background-color: #e5c890; +} + +windowcontrols > button.minimize:active:not(.suggested-action):not(.destructive-action) > image { + background-color: #ecd6ac; +} + +windowcontrols > button.maximize:not(.suggested-action):not(.destructive-action) > image { + background-color: #a6d189; +} + +windowcontrols > button.maximize:active:not(.suggested-action):not(.destructive-action) > image { + background-color: #bcdda7; +} + +windowcontrols > button.close:not(.suggested-action):not(.destructive-action) > image { + background-color: #e78284; +} + +windowcontrols > button.close:active:not(.suggested-action):not(.destructive-action) > image { + background-color: #eda1a3; +} + +windowcontrols { + border-spacing: 6px; +} + +windowcontrols:not(.empty).start:dir(ltr), windowcontrols:not(.empty).end:dir(rtl) { + margin-right: 6px; + margin-left: 6px; +} + +windowcontrols:not(.empty).start:dir(rtl), windowcontrols:not(.empty).end:dir(ltr) { + margin-left: 6px; + margin-right: 6px; +} + +windowcontrols > button:not(.suggested-action):not(.destructive-action) > image { + border-radius: 100%; + padding: 0; +} + +.view:selected, iconview:selected, gridview > child:selected, columnview.view:selected, +treeview.view:selected, calendar:selected, calendar > grid > label.day-number:selected { + background-color: alpha(currentColor, 0.06); +} + +flowbox > flowboxchild:selected, calendar > grid > label.today { + color: #eebebe; + background-color: rgba(238, 190, 190, 0.2); +} + +textview text selection:focus, textview text selection, label > selection, +entry > text > selection, spinbutton > text > selection, +entry headerbar popover.background entry > text > selection, +headerbar popover.background entry entry > text > selection, calendar > grid > label.today:selected { + color: rgba(0, 0, 0, 0.87); + background-color: #eebebe; +} + +/********************** + * Touch Copy & Paste * + **********************/ +cursor-handle { + color: #eebebe; + -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: #414559; + color: #FFFFFF; + font-size: smaller; +} + +:not(decoration):not(window):drop(active) { + caret-color: #eebebe; +} + +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):hover { + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):active { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), border-image 225ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, background-color 0ms; + background-color: rgba(255, 255, 255, 0.15); + color: #FFFFFF; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); +} + +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: 0 1px 2px rgba(0, 0, 0, 0.1); +} + +.icon-dropshadow { + -gtk-icon-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 1px 6px rgba(0, 0, 0, 0.1); +} + +/********* + * 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: #eebebe; +} + +popover.emoji-picker emoji { + font-size: x-large; + padding: 6px; + transition: all 75ms 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: #FFFFFF; +} + +popover.entry-completion > contents { + padding: 0; +} + +.nautilus-window placesview label { + color: rgba(255, 255, 255, 0.7); +} + +.nautilus-window .floating-bar { + min-height: 32px; + padding: 0; + margin: 6px; + border-style: none; + border-radius: 6px; + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); + box-shadow: 0 3px 3px -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); +} + +.nautilus-window .floating-bar button { + margin: 4px; + color: rgba(0, 0, 0, 0.87); +} + +#NautilusQueryEditor > menubutton > button.image-button { + min-width: 24px; + min-height: 24px; +} + +#NautilusQueryEditor > text, #NautilusQueryEditor > box, #NautilusQueryEditor > menubutton > button.image-button { + margin: 6px 0; +} + +#NautilusQueryEditorTag { + background-color: rgba(255, 255, 255, 0.12); +} + +#NautilusQueryEditorTag > button.image-button { + margin: 0; + padding: 0; +} + +#NautilusPathBar { + background-color: rgba(255, 255, 255, 0.04); + border-radius: 6px; + margin: 6px 0; +} + +#NautilusPathButton { + margin: 0 3px; + border-radius: 6px; +} + +#NautilusPathButton.current-dir { + color: #FFFFFF; +} + +#NautilusPathButton.current-dir:hover, #NautilusPathButton.current-dir:active { + background: none; + box-shadow: none; +} + +#NautilusPathButton:first-child { + margin-left: 0; +} + +#NautilusViewCell clamp box { + margin: 0; + border-spacing: 0; +} + +window.dialog > box > stack > box > box > notebook.frame { + border-width: 0 0 0 1px; + border-radius: 0; +} + +.display-container.card { + border-radius: 0; + box-shadow: none; + border-width: 0 0 1px 0; +} + +.display-container .history-view { + background-color: #303446; +} + +.display-container #displayitem { + padding: 0 12px 8px 0; + font-size: 1.4em; + border-top: 1px solid rgba(255, 255, 255, 0.12); +} + +.math-buttons button { + font-size: 1.1em; + padding: 2px 6px; +} + +.math-buttons button.text-button { + padding-left: 16px; + padding-right: 16px; +} + +leaflet button.number-button { + background-color: rgba(255, 255, 255, 0.1); +} + +leaflet button.number-button:hover { + background-color: rgba(255, 255, 255, 0.2); +} + +leaflet button.number-button:active { + background-color: rgba(255, 255, 255, 0.3); +} + +label.primary-label, label.month-name, label.secondary-label { + font-size: 16pt; + font-weight: bold; + padding: 12px; +} + +label.primary-label, label.month-name { + color: #eebebe; +} + +label.secondary-label { + color: rgba(255, 255, 255, 0.5); +} + +calendar-view { + font-size: 10pt; +} + +calendar-view:selected { + color: #eebebe; + font-weight: bold; +} + +calendar-view.header, +label.header { + font-size: 10pt; + font-weight: bold; + color: rgba(255, 255, 255, 0.5); +} + +calendar-view.current, +weekgrid.current { + background-color: alpha(#eebebe, 0.3); +} + +popover.events { + background-color: #303446; + padding: 0; +} + +popover.events box { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} + +popover.events list { + background-color: #303446; + border-radius: 6px; +} + +popover.events scrolledwindow { + border-width: 0; +} + +popover.events button { + border-radius: 6px; + border-top-left-radius: 0; + border-top-right-radius: 0; + border-style: solid none none; + box-shadow: none; +} + +event { + margin: 1px; + font-size: 0.9rem; +} + +event widget.content { + margin: 4px; +} + +event.timed, event:not(.slanted):not(.slanted-start):not(.slanted-end) { + border-radius: 6px; +} + +event.timed widget.edge { + border-radius: 3px; + min-width: 5px; +} + +event.slanted-start, event.slanted-end:dir(rtl) { + padding-left: 16px; + border-radius: 0 3px 3px 0; +} + +event.slanted-end, event.slanted-start:dir(rtl) { + padding-right: 16px; + border-radius: 3px 0 0 3px; +} + +event:not(.timed).color-dark { + color: white; + outline-color: rgba(0, 0, 0, 0.3); +} + +event.timed, event:not(.timed).color-light { + color: alpha(black, 0.75); + outline-color: rgba(255, 255, 255, 0.5); +} + +popover.event-popover, +popover.event-popover > contents { + padding: 0; +} + +.search-viewport { + background-color: #303446; +} + +.calendar-list { + background-color: transparent; +} + +.calendar-list > list { + border-radius: 4px; +} + +.calendar-color-image { + -gtk-icon-filter: none; +} + +image.calendar-color-image, +button:active:not(:backdrop) .calendar-color-image, +button:checked:not(:backdrop) .calendar-color-image, +.calendars-list .calendar-color-image:not(:backdrop):not(:disabled), +.calendar-list .calendar-color-image:not(:backdrop):not(:disabled), +.sources-button:not(:backdrop):not(:disabled) .calendar-color-image { + -gtk-icon-shadow: 0 1px alpha(black, 0.1); +} + +datechooser navigator { + margin-right: 6px; + margin-left: 6px; + margin-bottom: 6px; +} + +datechooser navigator label { + font-weight: bold; +} + +datechooser navigator button.toggle, datechooser navigator button.image-button { + min-height: 36px; + min-width: 36px; + padding: 0; +} + +datechooser .weeknum, datechooser .weekday { + color: rgba(255, 255, 255, 0.5); + font-size: smaller; +} + +datechooser button.day { + font-size: 10pt; + font-weight: normal; + margin: 3px; + padding: 0; + min-height: 36px; + min-width: 36px; + transition: none; +} + +datechooser button.day dot { + background-color: #FFFFFF; + border-radius: 50%; + min-height: 3px; + min-width: 3px; +} + +datechooser button.day:selected, datechooser button.day.today:selected { + background-color: #eebebe; + color: rgba(0, 0, 0, 0.87); + font-weight: bold; +} + +datechooser button.day:selected dot, datechooser button.day.today:selected dot { + background-color: rgba(0, 0, 0, 0.87); +} + +datechooser button.day.today { + color: #eebebe; +} + +datechooser button.day.today dot { + background-color: #eebebe; +} + +datechooser button.day.other-month:not(:hover), datechooser button.day.other-month:backdrop { + color: alpha(currentColor, 0.1); +} + +datechooser button.day.other-month:not(:hover) dot, datechooser button.day.other-month:backdrop dot { + background-color: alpha(currentColor, 0.1); +} + +datechooser button.day.other-month:hover:not(:backdrop) { + color: rgba(255, 255, 255, 0.5); +} + +datechooser button.day.other-month:hover:not(:backdrop) dot { + background-color: rgba(255, 255, 255, 0.5); +} + +.week-header { + padding: 0; +} + +.week-header > box:first-child { + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +.week-header .week-number { + font-size: 16pt; + font-weight: bold; + padding: 12px 12px 18px 12px; + color: rgba(255, 255, 255, 0.3); +} + +.week-header.week-temperature { + font-size: 10pt; + font-weight: bold; + color: rgba(255, 255, 255, 0.5); +} + +.week-header.lines { + color: rgba(255, 255, 255, 0.12); +} + +weekhourbar > label { + font-size: 10pt; + padding: 4px 6px; +} + +.week-view .lines { + color: rgba(255, 255, 255, 0.12); +} + +weekgrid > widget.now-strip { + background-color: alpha(#eebebe, 0.8); + margin: 0 0 0 1px; + min-height: 3px; +} + +weekgrid:selected, weekgrid.dnd, +.week-header:selected, +.week-header.dnd { + background-color: alpha(#eebebe, 0.25); +} + +monthcell { + border: solid 1px rgba(255, 255, 255, 0.12); + border-width: 1px 0 0 1px; + background-color: transparent; + transition: background-color 200ms; +} + +monthcell:hover:not(.out-of-month):not(.today) { + background-color: #232634; + transition: background-color 200ms; + color: #FFFFFF; +} + +monthcell:selected { + background-color: alpha(#eebebe, 0.1); +} + +monthcell:selected:hover { + background-color: alpha(#eebebe, 0.2); +} + +monthcell:selected label.day-label { + font-weight: bold; +} + +monthcell:nth-child(7n + 1) { + border-left-width: 0; +} + +monthcell.today { + background-color: alpha(#eebebe, 0.2); +} + +monthcell.today:hover { + background-color: alpha(#eebebe, 0.3); + color: #eebebe; +} + +monthcell.today:selected { + background-color: alpha(#eebebe, 0.25); +} + +monthcell.today:selected:hover { + background-color: alpha(#eebebe, 0.35); +} + +monthcell label { + color: #FFFFFF; + font-size: 0.9rem; +} + +monthcell label.day-label { + font-size: 1rem; +} + +monthcell.out-of-month { + background-color: rgba(255, 255, 255, 0.04); +} + +monthcell.out-of-month label { + color: rgba(255, 255, 255, 0.7); +} + +monthcell button { + padding: 0 6px; + border-radius: 0; + border-bottom: none; + border-right: none; +} + +monthpopover > box { + margin: 0; + padding: 0; + background-color: transparent; +} + +.notes-section box > textview { + border-radius: 6px; + padding: 6px; +} + +.notes-section box > textview > text { + background: none; +} + +agenda-view list > row { + padding: 2px 12px; +} + +agenda-view list > label { + padding: 6px 12px; +} + +agenda-view > scrolledwindow > viewport > list.background { + background-color: transparent; +} + +label.no-events { + font-style: italic; +} + +searchbutton > popover > arrow { + background: none; + border: none; +} + +datechooser { + padding: 6px; +} + +datechooser .current-week { + background: alpha(#232634, 0.7); + color: #FFFFFF; + border-radius: 6px; +} + +menubutton.sources-button { + margin-top: 0; + margin-bottom: 0; + border-radius: 0; + border-top-style: none; + border-bottom-style: none; +} + +menubutton.sources-button:hover:not(:backdrop) { + background-image: none; + text-shadow: none; +} + +menubutton.sources-button > button { + border-radius: 0; +} + +menubutton.sources-button > button .title { + font-size: 10pt; + font-weight: normal; + padding: 0 6px; +} + +menubutton.sources-button > button .subtitle { + font-size: 8pt; + padding: 0 6px; +} + +menubutton.sources-button > button .calendar-color-image { + -gtk-icon-size: 12px; +} + +menubutton stack > box { + border-spacing: 6px; +} + +.topbar headerbar menubutton.sources-button > button { + border-radius: 0 0 6px 6px; +} + +.contacts-contact-list list.navigation-sidebar { + background: none; +} + +.details-page { + margin: 24px 0px; +} + +.installed-overlay-box { + font-size: smaller; + background-color: #eebebe; + border-radius: 0; + color: rgba(0, 0, 0, 0.87); + text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2); +} + +screenshot-carousel box.frame { + border-width: 1px 0; + border-radius: 0; +} + +screenshot-carousel button, +.featured-carousel button { + margin: 12px; +} + +.screenshot-image-main .image1, +.screenshot-image-main .image2 { + margin-top: 6px; + margin-bottom: 12px; + margin-left: 6px; + margin-right: 6px; +} + +.app-tile-label { + font-size: 105%; +} + +.review-textbox { + padding: 6px; +} + +.origin-rounded-box { + background-color: rgba(255, 255, 255, 0.12); + border-radius: 9999px; + padding: 4px; +} + +.origin-beta { + color: #FBC02D; +} + +.origin-button > button { + padding: 3px 9px; +} + +.card flowboxchild.card { + border: none; + box-shadow: none; + padding: 0; + background: none; +} + +button.card.category-tile { + padding: 21px; + border: none; + border-radius: 6px; + min-width: 140px; + font-weight: 900; + font-size: larger; + box-shadow: 0 3px 3px -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); +} + +button.card.category-tile.category-tile-iconless { + padding: 9px 15px; + min-width: 130px; + font-size: 105%; + font-weight: normal; + box-shadow: none; +} + +button.card.category-tile.category-create { + background: linear-gradient(180deg, #ce8cd7 0%, #2861c6 100%); + color: white; +} + +button.card.category-tile.category-create:hover { + background: linear-gradient(180deg, shade(#ce8cd7, 1.07) 0%, shade(#2861c6, 1.1) 100%); + color: white; +} + +button.card.category-tile.category-create:active { + background: linear-gradient(180deg, shade(#ce8cd7, 0.95) 0%, shade(#2861c6, 0.95) 100%); + color: white; +} + +button.card.category-tile.category-develop { + background: #5e5c64; + color: white; +} + +button.card.category-tile.category-develop:hover { + background: shade(#5e5c64, 1.2); + color: white; +} + +button.card.category-tile.category-develop:active { + background-color: shade(#5e5c64, 0.95); + color: white; +} + +button.card.category-tile.category-learn { + background: linear-gradient(180deg, #2ec27e 30%, #27a66c 100%); + color: white; +} + +button.card.category-tile.category-learn:hover { + background: linear-gradient(180deg, shade(#2ec27e, 1.06) 30%, shade(#27a66c, 1.06) 100%); + color: white; +} + +button.card.category-tile.category-learn:active { + background: linear-gradient(180deg, shade(#2ec27e, 0.95) 30%, shade(#27a66c, 0.95) 100%); + color: white; +} + +button.card.category-tile.category-play { + background: linear-gradient(75deg, #f9e2a7 0%, #eb5ec3 50%, #6d53e0 100%); + color: #393484; +} + +button.card.category-tile.category-play:hover { + background: linear-gradient(75deg, shade(#f9e2a7, 1.07) 0%, shade(#eb5ec3, 1.07) 50%, shade(#6d53e0, 1.07) 100%); + color: #393484; +} + +button.card.category-tile.category-play:active { + background: linear-gradient(75deg, shade(#f9e2a7, 0.97) 0%, shade(#eb5ec3, 0.95) 50%, shade(#6d53e0, 1.07) 100%); + color: #393484; +} + +button.card.category-tile.category-socialize { + background: linear-gradient(90deg, #ef4e9b 0%, #f77466 100%); + color: rgba(255, 255, 255, 0.7); +} + +button.card.category-tile.category-socialize:hover { + background: linear-gradient(90deg, shade(#ef4e9b, 1.08) 0%, shade(#f77466, 1.08) 100%); +} + +button.card.category-tile.category-socialize:active { + background: linear-gradient(90deg, shade(#ef4e9b, 0.95) 0%, shade(#f77466, 0.95) 100%); +} + +button.card.category-tile.category-work { + padding: 1px; + /* FIXME: work around https://gitlab.gnome.org/GNOME/gtk/-/issues/4324 */ + color: #1c71d8; + background-color: #fdf8d7; + background-image: linear-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.12) 1px, transparent 1px); + background-size: 10px 10px, 10px 10px; + background-position: -1px -4px, center -1px; +} + +button.card.category-tile.category-work:hover { + color: #1c71d8; + background-color: #fefcef; + background-image: linear-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.12) 1px, transparent 1px); +} + +button.card.category-tile.category-work:active { + color: #1c71d8; + background-color: #fcf4bf; + background-image: linear-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.12) 1px, transparent 1px); +} + +clamp.medium .category-tile:not(.category-tile-iconless), +clamp.large .category-tile:not(.category-tile-iconless) { + font-size: larger; +} + +.featured-tile { + padding: 0; + box-shadow: none; + color: #FFFFFF; +} + +.featured-tile label.title-1 { + margin-top: 6px; + margin-bottom: 6px; +} + +.featured-tile.narrow label.title-1 { + font-size: 16pt; +} + +.application-details-infobar, .application-details-infobar.info { + background-color: rgba(255, 255, 255, 0.04); + color: #FFFFFF; + border: 1px solid rgba(255, 255, 255, 0.12); +} + +.application-details-infobar.warning { + background-color: #FBC02D; + color: rgba(0, 0, 0, 0.87); + border: 1px solid rgba(0, 0, 0, 0.12); +} + +@keyframes install-progress-unknown-move { + 0% { + background-position: 0%; + } + 50% { + background-position: 100%; + } + 100% { + background-position: 0%; + } +} + +.application-details-description .button { + padding-left: 24px; + padding-right: 24px; +} + +.install-progress { + background-image: linear-gradient(to top, #eebebe 2px, alpha(#eebebe, 0) 2px); + background-repeat: no-repeat; + background-position: 0 bottom; + background-size: 0; + transition: none; +} + +.install-progress:dir(rtl) { + background-position: 100% bottom; +} + +.review-row > * { + margin: 12px; +} + +.review-row button { + font-size: smaller; +} + +.review-row .vote-buttons button { + margin-right: -1px; +} + +.review-row .vote-buttons button:not(:first-child) { + border-image: linear-gradient(to top, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.12)) 0 0 0 1/5px 0 5px 1px; +} + +.review-row .vote-buttons button:hover, +.review-row .vote-buttons button:active, +.review-row .vote-buttons button:hover + button, +.review-row .vote-buttons button:active + button { + border-image: none; +} + +review-bar { + color: rgba(255, 255, 255, 0.5); + background-image: none; + background-color: rgba(255, 255, 255, 0.3); +} + +.review-histogram star-image { + color: rgba(255, 255, 255, 0.5); +} + +.version-arrow-label { + font-size: x-small; +} + +.overview-more-button { + font-size: smaller; + padding: 0 16px; +} + +.app-row-origin-text { + font-size: smaller; +} + +.app-listbox-header { + padding: 6px; + border-bottom: 1px solid rgba(255, 255, 255, 0.12); +} + +.image-list { + background-color: transparent; +} + +box.star { + background-color: transparent; + background-image: none; +} + +button.star { + outline-offset: 0; + background-color: transparent; + background-image: none; + border-image: none; + border-radius: 0; + border-width: 0; + padding: 0; + box-shadow: none; + outline-offset: -1px; +} + +star-image { + color: #FFD600; +} + +.dimmer-label { + opacity: 0.25; +} + +.update-failed-details { + font-family: Monospace; + font-size: smaller; + padding: 16px; +} + +.upgrade-banner { + padding: 0px; + border-radius: 6px; + border: none; +} + +.upgrade-banner-background { + background: linear-gradient(to bottom, #66BB6A, #5b9bf8); + color: white; +} + +.upgrade-buttons #button_upgrades_install { + padding-left: 16px; + padding-right: 16px; +} + +scrolledwindow.list-page > viewport > clamp > box { + margin: 24px 12px; + border-spacing: 24px; +} + +.update-preferences preferencesgroup > box > box { + margin-top: 18px; +} + +.section > label:not(:first-child) { + margin-top: 6px; +} + +.section > box:not(:first-child) { + margin-top: 12px; +} + +clamp.status-page { + margin: 36px 12px; +} + +clamp.status-page .iconbox { + min-height: 128px; + min-width: 128px; +} + +clamp.status-page .icon { + color: rgba(255, 255, 255, 0.5); + min-height: 32px; + min-width: 32px; +} + +clamp.status-page .icon:not(:last-child) { + margin-bottom: 36px; +} + +clamp.status-page .title:not(:last-child) { + margin-bottom: 12px; +} + +app-context-bar .context-tile { + border: 1px solid rgba(255, 255, 255, 0.12); + background-color: transparent; + border-radius: 0; + padding: 24px 12px 21px 12px; + outline-offset: 5px; + transition-property: outline, outline-offset, background-image; + border-bottom: none; + border-right: none; +} + +app-context-bar .context-tile:hover { + background-image: none; + background-color: alpha(currentColor, 0.08); +} + +app-context-bar .context-tile.keyboard-activating, app-context-bar .context-tile:active { + background-color: alpha(currentColor, 0.12); +} + +app-context-bar .context-tile:focus:focus-visible { + outline-offset: -1px; +} + +app-context-bar.horizontal box:first-child .context-tile:first-child, app-context-bar.vertical .context-tile:first-child { + border-left: none; +} + +app-context-bar.horizontal .context-tile, app-context-bar.vertical box:first-child .context-tile { + border-top: none; +} + +app-context-bar > box:not(:first-child) > button.flat { + border-radius: 0; +} + +app-context-bar > box:not(:first-child) > button.flat:last-child { + border-radius: 0 6px 6px 0; +} + +app-context-bar > box:first-child > button.flat { + border-radius: 0; +} + +app-context-bar > box:first-child > button.flat:first-child { + border-radius: 6px 0 0 6px; +} + +app-context-bar > box > button.flat { + border-left-color: rgba(255, 255, 255, 0.12); +} + +carousel.card { + border: none; + background-color: rgba(255, 255, 255, 0.04); +} + +.context-tile-lozenge { + min-height: 28px; + min-width: 28px; + padding: 6px; + font-size: 18px; + font-weight: bold; + border-radius: 9999px; +} + +.context-tile-lozenge.large { + font-size: 24px; + padding: 16px; + min-width: 24px; + /* 60px minus the left and right padding */ + min-height: 24px; + /* 60px minus the top and bottom padding */ +} + +.context-tile-lozenge.wide-image image { + margin-top: -28px; + margin-bottom: -28px; +} + +.context-tile-lozenge image { + -gtk-icon-style: symbolic; +} + +.context-tile-lozenge.grey { + color: #FFFFFF; + background-color: rgba(255, 255, 255, 0.12); +} + +.context-tile-lozenge.green, .context-tile-lozenge.details-rating-0 { + color: #419345; + background-color: rgba(102, 187, 106, 0.15); +} + +.context-tile-lozenge.blue, .context-tile-lozenge.details-rating-5 { + color: #5b9bf8; + background-color: rgba(91, 155, 248, 0.15); +} + +.context-tile-lozenge.yellow, .context-tile-lozenge.details-rating-12 { + color: #d79b04; + background-color: rgba(251, 192, 45, 0.15); +} + +.context-tile-lozenge.details-rating-15 { + color: #FF8A65; + background-color: rgba(255, 138, 101, 0.15); +} + +.context-tile-lozenge.red, .context-tile-lozenge.details-rating-18 { + color: #d2190b; + background-color: rgba(244, 67, 54, 0.15); +} + +.eol-red { + font-weight: bold; + color: #F44336; +} + +window.narrow .app-title { + font-size: 16pt; +} + +window.narrow .app-developer { + font-size: small; +} + +.install-progress-label { + font-size: smaller; + font-feature-settings: "tnum"; +} + +scrolledwindow.fake-adw-status-page > viewport > box { + margin: 36px 12px; +} + +scrolledwindow.fake-adw-status-page > viewport > box > clamp:not(:last-child) > box { + margin-bottom: 36px; +} + +scrolledwindow.fake-adw-status-page > viewport > box > clamp > box > .icon:not(:last-child) { + margin-bottom: 36px; +} + +scrolledwindow.fake-adw-status-page > viewport > box > clamp > box > .title:not(:last-child) { + margin-bottom: 12px; +} + +statuspage.icon-dropshadow image.icon { + -gtk-icon-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 -1px rgba(0, 0, 0, 0.05), 1px 0 rgba(0, 0, 0, 0.1), 0 1px rgba(0, 0, 0, 0.3), -1px 0 rgba(0, 0, 0, 0.1); +} + +window.info scrollbar.vertical { + margin-top: 48px; + background: none; + box-shadow: none; +} + +window.info scrollbar.vertical trough { + margin-top: 0; +} + +row.app > box.header { + margin-left: 12px; + margin-right: 12px; +} + +row.app > box.header { + border-spacing: 12px; +} + +row.app > box.header > image { + margin-top: 12px; + margin-bottom: 12px; +} + +row.app label.warning { + color: #F44336; +} + +@keyframes pre-delay { + from { + opacity: 0; + } + to { + opacity: 0; + } +} + +@keyframes fade-in { + from { + filter: opacity(0%); + } +} + +/* Give a fade-in animation to spinners. */ +spinner.fade-in:checked { + animation: pre-delay 0.5s linear 1, fade-in 1s linear 1, spin 1s linear infinite; + animation-delay: 0s, 0.5s, 0.5s; +} + +window > contents > leaflet > box > stack.background { + background-color: transparent; + background-image: linear-gradient(to bottom, transparent, transparent 48px, #303446 48px, #303446); +} + +@define-color weather_temp_chart_fill_color rgba(251, 192, 45, 0.5); +@define-color weather_temp_chart_stroke_color #f0ad05; +@define-color weather_thermometer_warm_color #FBC02D; +@define-color weather_thermometer_cold_color #5b9bf8; +#places-label { + font-weight: bold; +} + +#temperature-label { + font-size: 32pt; + font-weight: 900; + margin-left: 9px; +} + +#conditions-grid *:backdrop { + color: rgba(255, 255, 255, 0.7); +} + +.content-view.cell { + font-weight: bold; +} + +#locationEntry { + margin: 6px; +} + +.weather-popover { + margin-top: 6px; +} + +.forecast-card { + transition: border-radius 100ms ease-out; + border-radius: 6px; +} + +.forecast-card separator { + background-color: rgba(255, 255, 255, 0.12); +} + +#daily-forecast-box > separator:last-child { + background-color: transparent; + min-width: 0; +} + +#conditions-grid, +#attributionGrid { + margin-left: 18px; + margin-right: 18px; +} + +#weather-page .small .forecast-card { + margin-left: 0; + margin-right: 0; + border-radius: 0; + border-width: 1px 0; +} + +.forecast-temperature-label { + font-weight: bold; + color: #ae7b03; +} + +WeatherThermometer { + margin-bottom: 12px; +} + +WeatherThermometer > label.high { + font-weight: bold; + color: #FBC02D; +} + +WeatherThermometer > label.low { + font-weight: bold; + color: #5b9bf8; +} + +.forecast-button { + margin: 0 12px; +} + +.forecast-graphic { + margin: 18px; +} + +button.osd.circular { + border-radius: 9999px; + min-width: 24px; + min-height: 24px; +} + +button.osd.circular > image { + padding: 0; +} + +scrolledwindow.inline list, +scrolledwindow.inline listview { + background: none; + color: inherit; +} + +scrolledwindow.inline undershoot.top { + box-shadow: inset 0 1px rgba(255, 255, 255, 0.12); +} + +.search-view { + background-color: #3c84f7; + color: #FFFFFF; +} + +.search-view menubutton button:focus:focus-visible { + outline-color: rgba(255, 255, 255, 0.3); +} + +image.circular { + min-width: 36px; + min-height: 36px; + padding: 0; + border-radius: 9999px; +} + +.large-button { + padding: 6px; +} + +.alarm-time { + font-size: 2.5em; + font-weight: 300; +} + +.clocks-ampm-toggle-button, +.clocks-secondary-standalone-label { + font-size: 18pt; +} + +.clocks-standalone-label, +.clocks-ringing-label { + font-size: 6em; + font-weight: 300; +} + +.clocks-ringing-title { + font-size: 1.5em; + font-weight: bold; +} + +.clocks-alarm-setup-time { + font-size: 32pt; +} + +.clocks-timer-label, +.clocks-spinbutton { + font-size: 48pt; +} + +.timer-panel .timer-header { + font-size: 20pt; + font-weight: 300; +} + +.timer-countdown { + font-size: 40pt; + font-weight: 300; +} + +/* Stopwatch Panel */ +.lap-time { + font-weight: bold; +} + +.stopped-stopwatch label, +.running-stopwatch label, +.paused-stopwatch label { + font-size: 70px; + font-weight: lighter; +} + +.stopped-stopwatch .seconds-label { + font-weight: 300; +} + +.running-stopwatch .seconds-label, +.running-stopwatch .miliseconds-label { + color: #eebebe; +} + +.stopped-stopwatch .miliseconds-label, +.running-stopwatch .miliseconds-label, +.paused-stopwatch .miliseconds-label { + font-size: 50px; +} + +.running-stopwatch .seconds-label, +.paused-stopwatch .seconds-label { + font-weight: 300; +} + +.clock-location { + font-weight: bolder; +} + +.hidden { + opacity: 0; +} + +.clock-time { + font-size: 2em; + padding: 0.2em 0.5em; + border-radius: 1em; +} + +.none .clock-time { + background: alpha(currentColor, 0.2); +} + +.night .clock-time { + color: #3c84f7; + background-color: alpha(#5b9bf8, 0.25); +} + +.naut .clock-time, +.astro .clock-time { + color: #FF7043; + background-color: alpha(#FF8A65, 0.25); +} + +.civil .clock-time, +.day .clock-time { + color: #FFD600; + background: alpha(#FBC02D, 0.25); +} + +headerbar splitbutton notification button { + margin: 0; + min-height: 24px; + min-width: 24px; + padding: 0; +} + +popover.background.global-search > arrow, popover.background.global-search > contents { + padding: 0; +} + +panelframeswitcher { + padding: 3px; +} + +.frameheader.header { + min-height: 24px; + background-color: #232634; +} + +.frameheader.header > button { + border: none; + margin: 0; + padding: 3px; +} + +.frameheader.header tabbar.inline > revealer > box { + min-height: 24px; +} + +.frameheader.header tabbar.inline > revealer > box .start-action { + padding: 0; + border: none; +} + +.frameheader.header tabbar.inline > revealer > box .end-action { + padding: 0; + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +.frameheader.header tabbar.inline > revealer > box tabbox { + border: none; + background: none; +} + +panelstatusbar > menubutton > button, +panelstatusbar > paneltogglebutton button { + border-radius: 0; +} + +.style-variant { + padding: 0 12px; +} + +.style-variant button.toggle { + padding: 0; +} + +.style-variant button.toggle, .style-variant button.toggle:hover, .style-variant button.toggle:focus, .style-variant button.toggle:active, .style-variant button.toggle:checked { + background: none; + outline: none; + border: none; + box-shadow: none; +} + +.style-variant button.toggle > stylevariantpreview > .wallpaper { + border-radius: 6px; + outline-color: transparent; + outline-width: 3px; + outline-offset: 3px; + outline-style: solid; + box-shadow: none; +} + +.style-variant button.toggle:hover > stylevariantpreview > .wallpaper { + outline-color: rgba(255, 255, 255, 0.04); +} + +.style-variant button.toggle:active > stylevariantpreview > .wallpaper { + outline-color: rgba(255, 255, 255, 0.3); +} + +.style-variant button.toggle:checked > stylevariantpreview > .wallpaper { + outline-color: #eebebe; +} + +playlistview scrollbar.overlay-indicator.dragging, playlistview scrollbar.overlay-indicator.hovering { + background-color: transparent; +} + +playlistview queuerow picture.cover, +playlistview queuerow image.card { + border: none; +} + +window.dialog > .dialog-vbox > box > scrolledwindow > viewport > widget > list.boxed-list { + border: none; + border-radius: 0; +} + +window.dialog > .dialog-vbox > box > scrolledwindow > viewport > widget > list.boxed-list > row:first-child, window.dialog > .dialog-vbox > box > scrolledwindow > viewport > widget > list.boxed-list > row:last-child { + border-radius: 0; +} + +avatar { + border-radius: 9999px; + font-weight: bold; +} + +avatar.color1 { + background-image: linear-gradient(#83b6ec, #337fdc); + color: #cfe1f5; +} + +avatar.color2 { + background-image: linear-gradient(#7ad9f1, #0f9ac8); + color: #caeaf2; +} + +avatar.color3 { + background-image: linear-gradient(#8de6b1, #29ae74); + color: #cef8d8; +} + +avatar.color4 { + background-image: linear-gradient(#b5e98a, #6ab85b); + color: #e6f9d7; +} + +avatar.color5 { + background-image: linear-gradient(#f8e359, #d29d09); + color: #f9f4e1; +} + +avatar.color6 { + background-image: linear-gradient(#ffcb62, #d68400); + color: #ffead1; +} + +avatar.color7 { + background-image: linear-gradient(#ffa95a, #ed5b00); + color: #ffe5c5; +} + +avatar.color8 { + background-image: linear-gradient(#f78773, #e62d42); + color: #f8d2ce; +} + +avatar.color9 { + background-image: linear-gradient(#e973ab, #e33b6a); + color: #fac7de; +} + +avatar.color10 { + background-image: linear-gradient(#cb78d4, #9945b5); + color: #e7c2e8; +} + +avatar.color11 { + background-image: linear-gradient(#9e91e8, #7a59ca); + color: #d5d2f5; +} + +avatar.color12 { + background-image: linear-gradient(#e3cf9c, #b08952); + color: #f2eade; +} + +avatar.color13 { + background-image: linear-gradient(#be916d, #785336); + color: #e5d6ca; +} + +avatar.color14 { + background-image: linear-gradient(#c0bfbc, #6e6d71); + color: #d8d7d3; +} + +avatar.contrasted { + color: white; +} + +avatar.image { + background: none; +} + +.card { + border-radius: 6px; + border: 1px solid rgba(255, 255, 255, 0.12); + background-clip: border-box; + color: rgba(255, 255, 255, 0.7); + box-shadow: none; + outline: none; + background-color: #303446; + color: #FFFFFF; +} + +.card.activatable { + transition: all 75ms cubic-bezier(0, 0, 0.2, 1); +} + +.card.activatable:hover { + background-image: none; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +.card.activatable:active { + background-image: none; + transition: all 75ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms, border 0ms; + animation: ripple 225ms cubic-bezier(0, 0, 0.2, 1) forwards; + background-image: radial-gradient(circle, alpha(currentColor, 0.08) 10%, transparent 0%); + background-size: 0% 0%; + background-color: alpha(currentColor, 0.08); + color: #FFFFFF; + outline: 0 solid transparent; +} + +toast { + margin: 12px; + margin-bottom: 24px; + border-radius: 9999px; + border-spacing: 6px; + padding: 6px; + box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.1), 0 4px 6px 0 rgba(0, 0, 0, 0.12), 0 1px 10px 0 rgba(0, 0, 0, 0.1), inset 0 1px rgba(255, 255, 255, 0.1); + background-color: #303446; + color: #FFFFFF; + border: none; +} + +toast:dir(ltr) { + padding-left: 12px; +} + +toast:dir(rtl) { + padding-right: 12px; +} + +toast > label { + margin: 0 6px; +} + +viewswitcher { + margin: 0; + border-spacing: 3px; +} + +viewswitcher.wide { + margin-top: 6px; + margin-bottom: 6px; +} + +viewswitcher.wide button.toggle { + margin: 0; +} + +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 { + margin-top: 0; + margin-bottom: 0; +} + +viewswitchertitle viewswitcher { + margin-left: 12px; + margin-right: 12px; +} + +viewswitchertitle viewswitcher.narrow { + margin-top: 0; + margin-bottom: 0; +} + +viewswitchertitle viewswitcher.narrow button.toggle > stack > box.narrow { + padding-top: 0; + padding-bottom: 0; + border-spacing: 0; +} + +viewswitchertitle viewswitcher.wide { + margin-top: 6px; + margin-bottom: 6px; +} + +viewswitchertitle windowtitle { + margin-top: 0; + margin-bottom: 0; +} + +.top-bar headerbar viewswitchertitle viewswitcher.narrow button.toggle { + border-radius: 0 0 6px 6px; +} + +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: #eebebe; +} + +indicatorbin.needs-attention > indicator > label { + color: rgba(0, 0, 0, 0.87); +} + +preferencespage > scrolledwindow > viewport > clamp > box { + margin: 24px 12px; + border-spacing: 24px; +} + +preferencesgroup > box, preferencesgroup > box .labels { + border-spacing: 6px; +} + +preferencesgroup > box > box.header:not(.single-line) { + margin-bottom: 6px; +} + +preferencesgroup > box > box.single-line { + min-height: 34px; +} + +preferencesgroup > box button.background-preview-button.toggle { + padding: 0; + background: none; + box-shadow: none; + outline-color: transparent; + outline-width: 3px; + outline-offset: 3px; + outline-style: solid; +} + +preferencesgroup > box button.background-preview-button.toggle, preferencesgroup > box button.background-preview-button.toggle > background-preview { + border-radius: 6px; +} + +preferencesgroup > box button.background-preview-button.toggle:hover { + outline-color: rgba(255, 255, 255, 0.04); +} + +preferencesgroup > box button.background-preview-button.toggle:active { + outline-color: rgba(255, 255, 255, 0.3); +} + +preferencesgroup > box button.background-preview-button.toggle:checked { + outline-color: #eebebe; +} + +preferencesgroup > box .cutout-button { + background-color: #232634; +} + +window.about .main-page > viewport > clamp > box { + margin: 12px; + border-spacing: 6px; +} + +window.about .main-page > viewport > clamp > box > box { + margin-top: 18px; + border-spacing: 18px; + margin-bottom: 6px; +} + +window.about .main-page .app-version { + padding: 3px 18px; + color: #eebebe; + border-radius: 6px; + margin-top: 3px; +} + +window.about .subpage > viewport > clamp > box { + margin: 18px 12px; + border-spacing: 18px; +} + +window.about .subpage > clamp > textview { + background: none; + color: inherit; +} + +statuspage > scrolledwindow > viewport > box { + margin: 36px 12px; + border-spacing: 36px; +} + +statuspage > scrolledwindow > viewport > box > clamp > box { + border-spacing: 12px; +} + +statuspage > scrolledwindow > viewport > box > clamp > box > .icon { + -gtk-icon-size: 128px; + color: alpha(currentColor, 0.55); +} + +statuspage > scrolledwindow > viewport > box > clamp > box > .icon:disabled { + opacity: 0.35; +} + +statuspage > scrolledwindow > viewport > box > clamp > box > .icon:not(:last-child) { + margin-bottom: 24px; +} + +statuspage.compact > scrolledwindow > viewport > box { + margin: 24px 12px; + border-spacing: 24px; +} + +statuspage.compact > scrolledwindow > viewport > box > clamp > box > .icon { + -gtk-icon-size: 96px; +} + +statuspage.compact > scrolledwindow > viewport > box > clamp > box > .icon:not(:last-child) { + margin-bottom: 12px; +} + +statuspage.compact > scrolledwindow > viewport > box > clamp > box > .title { + font-size: 18pt; +} + +flap > dimming, +leaflet > dimming, +navigation-view > dimming, +overlay-split-view > dimming { + background: none; +} + +flap > border, +leaflet > border, +navigation-view > border, +overlay-split-view > border { + background: none; +} + +flap > shadow, +leaflet > shadow, +navigation-view > shadow, +overlay-split-view > shadow { + min-width: 56px; + min-height: 56px; +} + +flap > shadow.left, +leaflet > shadow.left, +navigation-view > shadow.left, +overlay-split-view > shadow.left { + background-image: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +flap > shadow.right, +leaflet > shadow.right, +navigation-view > shadow.right, +overlay-split-view > shadow.right { + background-image: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +flap > shadow.up, +leaflet > shadow.up, +navigation-view > shadow.up, +overlay-split-view > shadow.up { + background-image: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +flap > shadow.down, +leaflet > shadow.down, +navigation-view > shadow.down, +overlay-split-view > shadow.down { + background-image: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +.unfolded stacksidebar.sidebar { + border: none; +} + +.sidebar-pane { + background-color: #232634; + color: #FFFFFF; +} + +.sidebar-pane:backdrop { + background-color: #303446; + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1); +} + +.sidebar-pane .navigation-sidebar, +.sidebar-pane headerbar, +.sidebar-pane searchbar > revealer > box { + background-color: transparent; + box-shadow: none; + border: none; +} + +.sidebar-pane toolbarview.undershoot-top scrolledwindow > undershoot.top { + box-shadow: none; + background: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom { + box-shadow: none; + background: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane scrolledwindow.undershoot-top > undershoot.top { + box-shadow: none; + background: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane scrolledwindow.undershoot-bottom > undershoot.bottom { + box-shadow: none; + background: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.sidebar-pane flap > dimming, +.sidebar-pane leaflet > dimming, +.sidebar-pane navigation-view > dimming, +.sidebar-pane overlay-split-view > dimming { + background: none; +} + +.sidebar-pane flap > border, +.sidebar-pane leaflet > border, +.sidebar-pane navigation-view > border, +.sidebar-pane overlay-split-view > border { + background: none; +} + +.sidebar-pane flap > shadow, +.sidebar-pane leaflet > shadow, +.sidebar-pane navigation-view > shadow, +.sidebar-pane overlay-split-view > shadow { + min-width: 56px; + min-height: 56px; +} + +.sidebar-pane flap > shadow.left, +.sidebar-pane leaflet > shadow.left, +.sidebar-pane navigation-view > shadow.left, +.sidebar-pane overlay-split-view > shadow.left { + background-image: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +.sidebar-pane flap > shadow.right, +.sidebar-pane leaflet > shadow.right, +.sidebar-pane navigation-view > shadow.right, +.sidebar-pane overlay-split-view > shadow.right { + background-image: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +.sidebar-pane flap > shadow.up, +.sidebar-pane leaflet > shadow.up, +.sidebar-pane navigation-view > shadow.up, +.sidebar-pane overlay-split-view > shadow.up { + background-image: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +.sidebar-pane flap > shadow.down, +.sidebar-pane leaflet > shadow.down, +.sidebar-pane navigation-view > shadow.down, +.sidebar-pane overlay-split-view > shadow.down { + background-image: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.7), alpha(rgba(0, 0, 0, 0.2), 0.14) 40px, alpha(rgba(0, 0, 0, 0.2), 0) 56px), linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.4), alpha(rgba(0, 0, 0, 0.2), 0.14) 7px, alpha(rgba(0, 0, 0, 0.2), 0) 24px); +} + +.sidebar-pane banner > revealer > widget { + background-color: gtkmix(#eebebe, #232634, 30%); + color: #FFFFFF; +} + +.sidebar-pane banner > revealer > widget:backdrop { + background-color: gtkmix(#eebebe, #232634, 30%); +} + +.sidebar-pane:dir(ltr), .sidebar-pane.end:dir(rtl) { + border-top-left-radius: 12px; +} + +.sidebar-pane:dir(ltr), .sidebar-pane:dir(ltr) banner > revealer > widget, .sidebar-pane.end:dir(rtl), .sidebar-pane.end:dir(rtl) banner > revealer > widget { + box-shadow: none; + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +.sidebar-pane:dir(rtl), .sidebar-pane.end:dir(ltr) { + border-top-right-radius: 12px; +} + +.sidebar-pane:dir(rtl), .sidebar-pane:dir(rtl) banner > revealer > widget, .sidebar-pane.end:dir(ltr), .sidebar-pane.end:dir(ltr) banner > revealer > widget { + box-shadow: none; + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +window.maxmized .sidebar-pane:dir(ltr), window.maxmized .sidebar-pane.end:dir(rtl) { + border-top-left-radius: 0; +} + +window.maxmized .sidebar-pane:dir(rtl), window.maxmized .sidebar-pane.end:dir(rtl) { + border-top-right-radius: 0; +} + +/* Middle pane in three-pane setups */ +.content-pane .sidebar-pane, +.sidebar-pane .content-pane { + background-color: #303446; + color: #FFFFFF; +} + +.content-pane .sidebar-pane:backdrop, +.sidebar-pane .content-pane:backdrop { + background-color: #303446; + transition: background-color 75ms cubic-bezier(0, 0, 0.2, 1); +} + +.content-pane .sidebar-pane toolbarview.undershoot-top scrolledwindow > undershoot.top, +.sidebar-pane .content-pane toolbarview.undershoot-top scrolledwindow > undershoot.top { + box-shadow: none; + background: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom, +.sidebar-pane .content-pane toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom { + box-shadow: none; + background: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane scrolledwindow.undershoot-top > undershoot.top, +.sidebar-pane .content-pane scrolledwindow.undershoot-top > undershoot.top { + box-shadow: none; + background: linear-gradient(to bottom, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane scrolledwindow.undershoot-bottom > undershoot.bottom, +.sidebar-pane .content-pane scrolledwindow.undershoot-bottom > undershoot.bottom { + box-shadow: none; + background: linear-gradient(to top, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane scrolledwindow.undershoot-start:dir(ltr) > undershoot.left, +.sidebar-pane .content-pane scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane scrolledwindow.undershoot-start:dir(rtl) > undershoot.right, +.sidebar-pane .content-pane scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane scrolledwindow.undershoot-end:dir(ltr) > undershoot.right, +.sidebar-pane .content-pane scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { + box-shadow: none; + background: linear-gradient(to left, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane scrolledwindow.undershoot-end:dir(rtl) > undershoot.left, +.sidebar-pane .content-pane scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { + box-shadow: none; + background: linear-gradient(to right, alpha(rgba(0, 0, 0, 0.2), 0.75), transparent 4px); +} + +.content-pane .sidebar-pane flap > dimming, +.content-pane .sidebar-pane leaflet > dimming, +.content-pane .sidebar-pane navigation-view > dimming, +.content-pane .sidebar-pane overlay-split-view > dimming, +.sidebar-pane .content-pane flap > dimming, +.sidebar-pane .content-pane leaflet > dimming, +.sidebar-pane .content-pane navigation-view > dimming, +.sidebar-pane .content-pane overlay-split-view > dimming { + background: none; +} + +.content-pane .sidebar-pane flap > border, +.content-pane .sidebar-pane leaflet > border, +.content-pane .sidebar-pane navigation-view > border, +.content-pane .sidebar-pane overlay-split-view > border, +.sidebar-pane .content-pane flap > border, +.sidebar-pane .content-pane leaflet > border, +.sidebar-pane .content-pane navigation-view > border, +.sidebar-pane .content-pane overlay-split-view > border { + background: none; +} + +.content-pane .sidebar-pane flap > shadow, +.content-pane .sidebar-pane leaflet > shadow, +.content-pane .sidebar-pane navigation-view > shadow, +.content-pane .sidebar-pane overlay-split-view > shadow, +.sidebar-pane .content-pane flap > shadow, +.sidebar-pane .content-pane leaflet > shadow, +.sidebar-pane .content-pane navigation-view > shadow, +.sidebar-pane .content-pane overlay-split-view > shadow { + min-width: 56px; + min-height: 56px; +} + +.content-pane .sidebar-pane flap > shadow.left, +.content-pane .sidebar-pane leaflet > shadow.left, +.content-pane .sidebar-pane navigation-view > shadow.left, +.content-pane .sidebar-pane overlay-split-view > shadow.left, +.sidebar-pane .content-pane flap > shadow.left, +.sidebar-pane .content-pane leaflet > shadow.left, +.sidebar-pane .content-pane navigation-view > shadow.left, +.sidebar-pane .content-pane overlay-split-view > shadow.left { + background-image: linear-gradient(to right, alpha(rgba(255, 255, 255, 0.12), 0.7), alpha(rgba(255, 255, 255, 0.12), 0.14) 40px, alpha(rgba(255, 255, 255, 0.12), 0) 56px), linear-gradient(to right, alpha(rgba(255, 255, 255, 0.12), 0.4), alpha(rgba(255, 255, 255, 0.12), 0.14) 7px, alpha(rgba(255, 255, 255, 0.12), 0) 24px); +} + +.content-pane .sidebar-pane flap > shadow.right, +.content-pane .sidebar-pane leaflet > shadow.right, +.content-pane .sidebar-pane navigation-view > shadow.right, +.content-pane .sidebar-pane overlay-split-view > shadow.right, +.sidebar-pane .content-pane flap > shadow.right, +.sidebar-pane .content-pane leaflet > shadow.right, +.sidebar-pane .content-pane navigation-view > shadow.right, +.sidebar-pane .content-pane overlay-split-view > shadow.right { + background-image: linear-gradient(to left, alpha(rgba(255, 255, 255, 0.12), 0.7), alpha(rgba(255, 255, 255, 0.12), 0.14) 40px, alpha(rgba(255, 255, 255, 0.12), 0) 56px), linear-gradient(to left, alpha(rgba(255, 255, 255, 0.12), 0.4), alpha(rgba(255, 255, 255, 0.12), 0.14) 7px, alpha(rgba(255, 255, 255, 0.12), 0) 24px); +} + +.content-pane .sidebar-pane flap > shadow.up, +.content-pane .sidebar-pane leaflet > shadow.up, +.content-pane .sidebar-pane navigation-view > shadow.up, +.content-pane .sidebar-pane overlay-split-view > shadow.up, +.sidebar-pane .content-pane flap > shadow.up, +.sidebar-pane .content-pane leaflet > shadow.up, +.sidebar-pane .content-pane navigation-view > shadow.up, +.sidebar-pane .content-pane overlay-split-view > shadow.up { + background-image: linear-gradient(to bottom, alpha(rgba(255, 255, 255, 0.12), 0.7), alpha(rgba(255, 255, 255, 0.12), 0.14) 40px, alpha(rgba(255, 255, 255, 0.12), 0) 56px), linear-gradient(to bottom, alpha(rgba(255, 255, 255, 0.12), 0.4), alpha(rgba(255, 255, 255, 0.12), 0.14) 7px, alpha(rgba(255, 255, 255, 0.12), 0) 24px); +} + +.content-pane .sidebar-pane flap > shadow.down, +.content-pane .sidebar-pane leaflet > shadow.down, +.content-pane .sidebar-pane navigation-view > shadow.down, +.content-pane .sidebar-pane overlay-split-view > shadow.down, +.sidebar-pane .content-pane flap > shadow.down, +.sidebar-pane .content-pane leaflet > shadow.down, +.sidebar-pane .content-pane navigation-view > shadow.down, +.sidebar-pane .content-pane overlay-split-view > shadow.down { + background-image: linear-gradient(to top, alpha(rgba(255, 255, 255, 0.12), 0.7), alpha(rgba(255, 255, 255, 0.12), 0.14) 40px, alpha(rgba(255, 255, 255, 0.12), 0) 56px), linear-gradient(to top, alpha(rgba(255, 255, 255, 0.12), 0.4), alpha(rgba(255, 255, 255, 0.12), 0.14) 7px, alpha(rgba(255, 255, 255, 0.12), 0) 24px); +} + +.content-pane .sidebar-pane banner > revealer > widget, +.sidebar-pane .content-pane banner > revealer > widget { + background-color: gtkmix(#eebebe, #303446, 30%); + color: #FFFFFF; +} + +.content-pane .sidebar-pane banner > revealer > widget:backdrop, +.sidebar-pane .content-pane banner > revealer > widget:backdrop { + background-color: gtkmix(#eebebe, #303446, 30%); +} + +.content-pane .sidebar-pane:dir(ltr), .content-pane .sidebar-pane.end:dir(rtl), +.sidebar-pane .content-pane:dir(ltr), +.sidebar-pane .content-pane.end:dir(rtl) { + border-top-left-radius: 12px; +} + +.content-pane .sidebar-pane:dir(ltr), .content-pane .sidebar-pane:dir(ltr) banner > revealer > widget, .content-pane .sidebar-pane.end:dir(rtl), .content-pane .sidebar-pane.end:dir(rtl) banner > revealer > widget, +.sidebar-pane .content-pane:dir(ltr), +.sidebar-pane .content-pane:dir(ltr) banner > revealer > widget, +.sidebar-pane .content-pane.end:dir(rtl), +.sidebar-pane .content-pane.end:dir(rtl) banner > revealer > widget { + box-shadow: none; + border-right: 1px solid rgba(255, 255, 255, 0.12); +} + +.content-pane .sidebar-pane:dir(rtl), .content-pane .sidebar-pane.end:dir(ltr), +.sidebar-pane .content-pane:dir(rtl), +.sidebar-pane .content-pane.end:dir(ltr) { + border-top-right-radius: 12px; +} + +.content-pane .sidebar-pane:dir(rtl), .content-pane .sidebar-pane:dir(rtl) banner > revealer > widget, .content-pane .sidebar-pane.end:dir(ltr), .content-pane .sidebar-pane.end:dir(ltr) banner > revealer > widget, +.sidebar-pane .content-pane:dir(rtl), +.sidebar-pane .content-pane:dir(rtl) banner > revealer > widget, +.sidebar-pane .content-pane.end:dir(ltr), +.sidebar-pane .content-pane.end:dir(ltr) banner > revealer > widget { + box-shadow: none; + border-left: 1px solid rgba(255, 255, 255, 0.12); +} + +window.maxmized .content-pane .sidebar-pane:dir(ltr), window.maxmized .content-pane .sidebar-pane.end:dir(rtl), window.maxmized .sidebar-pane .content-pane:dir(ltr), window.maxmized .sidebar-pane .content-pane.end:dir(rtl) { + border-top-left-radius: 0; +} + +window.maxmized .content-pane .sidebar-pane:dir(rtl), window.maxmized .content-pane .sidebar-pane.end:dir(rtl), window.maxmized .sidebar-pane .content-pane:dir(rtl), window.maxmized .sidebar-pane .content-pane.end:dir(rtl) { + border-top-right-radius: 0; +} + +.sidebar-pane .sidebar-pane { + background-color: transparent; + color: inherit; +} + +.top-bar headerbar, .top-bar headerbar:backdrop { + background-color: transparent; + box-shadow: none; +} + +.top-bar .collapse-spacing { + padding: 0; +} + +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +/* +widget text/foreground color */ +@define-color theme_fg_color #FFFFFF; +/* +text color for entries, views and content in general */ +@define-color theme_text_color #FFFFFF; +/* +widget base background color */ +@define-color theme_bg_color #303446; +/* +text widgets and the like base background color */ +@define-color theme_base_color #303446; +/* +base background color of selections */ +@define-color theme_selected_bg_color #eebebe; +/* +text/foreground color of selections */ +@define-color theme_selected_fg_color rgba(0, 0, 0, 0.87); +/* +base background color of insensitive widgets */ +@define-color insensitive_bg_color #303446; +/* +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 #232634; +/* +widget text/foreground color on backdrop windows */ +@define-color theme_unfocused_fg_color #FFFFFF; +/* +text color for entries, views and content in general on backdrop windows */ +@define-color theme_unfocused_text_color #FFFFFF; +/* +widget base background color on backdrop windows */ +@define-color theme_unfocused_bg_color #303446; +/* +text widgets and the like base background color on backdrop windows */ +@define-color theme_unfocused_base_color #303446; +/* +base background color of selections on backdrop windows */ +@define-color theme_unfocused_selected_bg_color #eebebe; +/* +text/foreground color of selections on backdrop windows */ +@define-color theme_unfocused_selected_fg_color rgba(0, 0, 0, 0.87); +/* +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 #FBC02D; +@define-color error_color #F44336; +@define-color success_color #66BB6A; +/* +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 #FFFFFF; +@define-color wm_unfocused_title rgba(255, 255, 255, 0.7); +@define-color wm_highlight rgba(255, 255, 255, 0.1); +@define-color wm_border #0a0a0e; +@define-color wm_bg #232634; +@define-color wm_unfocused_bg #303446; +@define-color wm_button_icon white; +@define-color wm_button_close_hover_bg #e78284; +@define-color wm_button_close_active_bg #dd4f51; +@define-color wm_button_max_hover_bg #a6d189; +@define-color wm_button_max_active_bg #85c05d; +@define-color wm_button_min_hover_bg #e5c890; +@define-color wm_button_min_active_bg #d9af5e; +/* +FIXME this is really an API */ +@define-color content_view_bg #303446; +@define-color placeholder_text_color #c1c2c8; +/* Very contrasty background for text views (@theme_text_color foreground) */ +@define-color text_view_bg #303446; +@define-color budgie_tasklist_indicator_color rgba(255, 255, 255, 0.3); +@define-color budgie_tasklist_indicator_color_active #eebebe; +@define-color budgie_tasklist_indicator_color_active_window #91787f; +@define-color budgie_tasklist_indicator_color_attention #FBC02D; +@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; +@define-color blue_1 #99c1f1; +@define-color blue_2 #62a0ea; +@define-color blue_3 #3584e4; +@define-color blue_4 #1c71d8; +@define-color blue_5 #1a5fb4; +@define-color green_1 #8ff0a4; +@define-color green_2 #57e389; +@define-color green_3 #33d17a; +@define-color green_4 #2ec27e; +@define-color green_5 #26a269; +@define-color yellow_1 #f9f06b; +@define-color yellow_2 #f8e45c; +@define-color yellow_3 #f6d32d; +@define-color yellow_4 #f5c211; +@define-color yellow_5 #e5a50a; +@define-color orange_1 #ffbe6f; +@define-color orange_2 #ffa348; +@define-color orange_3 #ff7800; +@define-color orange_4 #e66100; +@define-color orange_5 #c64600; +@define-color red_1 #f66151; +@define-color red_2 #ed333b; +@define-color red_3 #e01b24; +@define-color red_4 #c01c28; +@define-color red_5 #a51d2d; +@define-color purple_1 #dc8add; +@define-color purple_2 #c061cb; +@define-color purple_3 #9141ac; +@define-color purple_4 #813d9c; +@define-color purple_5 #613583; +@define-color brown_1 #cdab8f; +@define-color brown_2 #b5835a; +@define-color brown_3 #986a44; +@define-color brown_4 #865e3c; +@define-color brown_5 #63452c; +@define-color light_1 #ffffff; +@define-color light_2 #f6f5f4; +@define-color light_3 #deddda; +@define-color light_4 #c0bfbc; +@define-color light_5 #9a9996; +@define-color dark_1 #77767b; +@define-color dark_2 #5e5c64; +@define-color dark_3 #3d3846; +@define-color dark_4 #241f31; +@define-color dark_5 #000000; +/* GTK NAMED COLORS + ---------------- + use responsibly! */ +@define-color accent_bg_color #eebebe; +@define-color accent_fg_color rgba(0, 0, 0, 0.87); +@define-color accent_color #eebebe; +@define-color destructive_bg_color #F44336; +@define-color destructive_fg_color #FFFFFF; +@define-color destructive_color #F44336; +@define-color success_bg_color #66BB6A; +@define-color success_fg_color #FFFFFF; +@define-color success_color #66BB6A; +@define-color warning_bg_color #FBC02D; +@define-color warning_fg_color rgba(0, 0, 0, 0.87); +@define-color warning_color #FBC02D; +@define-color error_bg_color #F44336; +@define-color error_fg_color #FFFFFF; +@define-color error_color #F44336; +@define-color window_bg_color #303446; +@define-color window_fg_color #FFFFFF; +@define-color view_bg_color #303446; +@define-color view_fg_color #FFFFFF; +@define-color headerbar_bg_color #232634; +@define-color headerbar_fg_color #FFFFFF; +@define-color headerbar_border_color rgba(255, 255, 255, 0.12); +@define-color headerbar_backdrop_color #303446; +@define-color headerbar_shade_color rgba(255, 255, 255, 0.12); +@define-color card_bg_color #303446; +@define-color card_fg_color #FFFFFF; +@define-color card_shade_color rgba(255, 255, 255, 0.12); +@define-color dialog_bg_color #232634; +@define-color dialog_fg_color #FFFFFF; +@define-color popover_bg_color #303446; +@define-color popover_fg_color #FFFFFF; +@define-color shade_color rgba(255, 255, 255, 0.12); +@define-color scrollbar_outline_color rgba(255, 255, 255, 0.12); diff --git a/home-manager/themes/default.nix b/home-manager/themes/default.nix new file mode 100644 index 0000000..68c9344 --- /dev/null +++ b/home-manager/themes/default.nix @@ -0,0 +1,35 @@ +{ pkgs, ... }: + +let + themePackage = pkgs.catppuccin-gtk.override { + accents = [ "flamingo" ]; + size = "compact"; + tweaks = [ "rimless" ]; + variant = "macchiato"; + }; + cursorPackage = pkgs.bibata-cursors; +in +{ + gtk = { + enable = true; + theme = { + package = themePackage; + name = "Catppuccin-Macchiato-Compact-Flamingo-Dark"; + }; + cursorTheme = { + package = cursorPackage; + name = "Bibata-Modern-Ice"; + }; + gtk4.extraCss = builtins.readFile ./Catppuccin/gtk.css; + }; + xdg.configFile = { + "gtk-4.0/assets" = { + source = ./Catppuccin/assets; + target = "gtk-4.0/assets"; + }; + "gtk-4.0/gtk-dark" = { + source = ./Catppuccin/gtk-dark.css; + target = "gtk-4.0/gtk-dark.css"; + }; + }; +} diff --git a/home-manager/wm/default.nix b/home-manager/wm/default.nix index c604b9a..105564d 100644 --- a/home-manager/wm/default.nix +++ b/home-manager/wm/default.nix @@ -1,3 +1,12 @@ +let + more = { pkgs, inputs, ... }: { + home.packages = with pkgs; [ + kile-wl + ]; + }; +in [ - ./bspwm + # ./bspwm + ./hyprland + more ] diff --git a/home-manager/wm/hyprland/cat.png b/home-manager/wm/hyprland/cat.png Binary files differnew file mode 100644 index 0000000..5657a78 --- /dev/null +++ b/home-manager/wm/hyprland/cat.png diff --git a/home-manager/wm/hyprland/default.nix b/home-manager/wm/hyprland/default.nix new file mode 100644 index 0000000..3079faa --- /dev/null +++ b/home-manager/wm/hyprland/default.nix @@ -0,0 +1,37 @@ +{ pkgs, config, ... }: +let + configFile = builtins.readFile ./hyprland.conf; + scripts = '' + $scripts=${./scripts} + ''; + overrides = '' + exec-once=swww init && swww img ${./cat.png} + ''; + extraConfig = scripts + configFile + overrides; + +in +{ + home.packages = with pkgs; [ + swww + eww-wayland + socat + inotify-tools + brightnessctl + alsa-utils + slurp + grim + cliphist + material-design-icons + font-awesome + wtype + webcord + xdg-desktop-portal-hyprland + swaylock + ]; + wayland.windowManager.hyprland = { + enable = true; + package = pkgs.hyprland; + recommendedEnvironment = true; + inherit extraConfig; + }; +} diff --git a/home-manager/wm/hyprland/hyprland.conf b/home-manager/wm/hyprland/hyprland.conf new file mode 100644 index 0000000..7e3af43 --- /dev/null +++ b/home-manager/wm/hyprland/hyprland.conf @@ -0,0 +1,211 @@ +# This is an example Hyprland config file. +# Syntax is the same as in Hypr, but settings might differ. +# +# Refer to the wiki for more information. + +# +# Please note not all available settings / options are set here. +# For a full list, see the wiki (basic and advanced configuring) +# + +monitor = eDP-1,preferred,auto,1 +monitor = ,highres,auto,1,mirror,eDP-1 + +input { + kb_file= + kb_layout = us,ru + kb_variant= + kb_model= + kb_options = grp:win_space_toggle + kb_rules= + + follow_mouse = 1 + + touchpad { + natural_scroll = yes + clickfinger_behavior = yes + scroll_factor = 0.8 + # disable_while_typing = no + } + + sensitivity = 0 # -1.0 - 1.0, 0 means no modification. +} + +general { + gaps_in = 5 + gaps_out = 20 + border_size = 3 + col.active_border = 0xFF6e6a86 + col.inactive_border = 0xFF363a4f + apply_sens_to_raw = 0 # whether to apply the sensitivity to raw input (e.g. used by games where you aim using your mouse) + layout = dwindle +} + +decoration { + rounding = 7 + drop_shadow = false + shadow_range = 5 + shadow_offset = [100, 100] +} + +animations { + enabled = 1 + bezier = overshot,0.13,0.99,0.29,1.1, + animation = fade,1,4,default + animation = workspaces,1,4,default,fade + animation = windows,1,4,overshot,popin 95% +} + +dwindle { + pseudotile = 0 # enable pseudotiling on dwindle +} + +gestures { + workspace_swipe = yes +} + +windowrulev2 = tile, class:^(Spotify)$ +windowrulev2 = float, title:^(calcure)$ +windowrulev2 = move 611 46, title:^(calcure)$ +windowrulev2 = size 702 360, title:^(calcure)$ +windowrulev2 = float, title:^(btop)$ +windowrulev2 = move 1180 46, title:^(btop)$ +windowrulev2 = size 724 460, title:^(btop)$ +windowrulev2 = float, title:^(blue)$ +windowrulev2 = move 1180 46, title:^(blue)$ +windowrulev2 = size 724 460, title:^(blue)$ +windowrulev2 = float, class:^(connman-gtk)$ +windowrulev2 = move 1262 46, class:^(connman-gtk)$ +windowrulev2 = size 650 401, class:^(connman-gtk)$ +windowrulev2 = float, title:^(Firrfox — Sharing Indicator)$ +windowrulev2 = nofullscreenrequest, title:^(Firefox — Sharing Indicator)$ +windowrulev2 = noborder, title:^(Firefox — Sharing Indicator)$ +windowrulev2 = rounding 0, title:^(Firefox — Sharing Indicator)$ +windowrulev2 = float, class:^(org.kde.polkit-kde-authentication-agent-1)$ +windowrulev2 = float, title:^(firefox)$, title:^(Picture-in-Picture)$ +windowrulev2 = pin, title:^(firefox)$, title:^(Picture-in-Picture)$ + +# some nice mouse binds +bindm = SUPER,mouse:272,movewindow +bindm = SUPER,mouse:273,resizewindow + +# Binds +bind = SUPER_SHIFT,Q,exec,$scripts/kill +bind = SUPER_SHIFT,E,exit, +bind = ,0x1008FF2A,exec,nwg-bar +bind = SUPER,V,togglefloating, +bind = SUPER_SHIFT,V,centerwindow +bind = SUPER,P,pseudo, +bind = SUPER,F,fullscreen,0 +bind = SUPER_SHIFT,F,fakefullscreen +bind = SUPER,M,fullscreen,1 +bind = SUPER,N,exec,killall -SIGUSR1 waybar +bind = SUPER_SHIFT,N,exec,killall -SIGUSR2 waybar + +# Lockscreen +bind = SUPER_SHIFT,P,exec,bash -c ~/Games/swaylock-blur.sh + +# Change colume +bind = ,0x1008FF11,exec,wpctl status | grep '*' -m 1 | awk '{print $3 - 0}' | xargs -I _ wpctl set-volume _ 5%- +bind = ,0x1008FF13,exec,wpctl status | grep '*' -m 1 | awk '{print $3 - 0}' | xargs -I _ wpctl set-volume _ 5%+ +bind = ,0x1008FF12,exec,wpctl status | grep '*' -m 1 | awk '{print $3 - 0}' | xargs -I _ wpctl set-mute _ toggle + +# Change brightness +bind = ,0x1008FF02,exec,brightnessctl s +5% +bind = ,0x1008FF03,exec,brightnessctl s 5%- + +# App binds +bind = SUPER,Q,exec,kitty +bind = SUPER,B,exec,firefox +bind = SUPER,R,exec,kitty fish $HOME/.config/hypr/scripts/rnew.fish +bind = SUPER_SHIFT,R,exec,nautilus +bind = SUPER,T,exec,telegram-desktop +bind = SUPER,E,exec,emacsclient -c -a "emacs" +bind = SUPER_CONTROL,E,exec,emacs + +# Rofi +bind = SUPER,D,exec,killall rofi || rofi -show-icons -show drun +bind = SUPER,C,exec,$scripts/rofi-modes + +# Screenshots +bind = ,Print,exec,$scripts/hshot -m +bind = CONTROL,Print,exec,$scripts/hshot -m -c +bind = SHIFT,Print,exec,$scripts/hshot -s +bind = CONTROL_SHIFT,Print,exec,$scripts/hshot -s -c +bind = ALT,Print,exec,$scripts/hshot -w +bind = ALT_CONTROL,Print,exec,$scripts/hshot -w -c + +# Cycle through windows +bind = SUPER,J,movefocus,d +bind = SUPER,K,movefocus,u +bind = SUPER,H,movefocus,l +bind = SUPER,L,movefocus,r + +# Resize windows +# bind = SUPER_CONTROL,K,resizeactive,0 -50 +# bind = SUPER_CONTROL,J,resizeactive,0 50 +# bind = SUPER_CONTROL,H,resizeactive,-50 0 +# bind = SUPER_CONTROL,L,resizeactive,50 0 +bind = SUPER_CONTROL,K,splitratio,0.5 +bind = SUPER_CONTROL,J,splitratio,-0.5 + + +# Move windows +bind = SUPER_SHIFT,J,movewindow,d +bind = SUPER_SHIFT,K,movewindow,u +bind = SUPER_SHIFT,H,movewindow,l +bind = SUPER_SHIFT,L,movewindow,r + +# Move through workspaces +bind = SUPER,1,workspace,1 +bind = SUPER,2,workspace,2 +bind = SUPER,3,workspace,3 +bind = SUPER,4,workspace,4 +bind = SUPER,5,workspace,5 +bind = SUPER,6,workspace,6 +bind = SUPER,7,workspace,7 +bind = SUPER,8,workspace,8 +bind = SUPER,9,workspace,9 +bind = SUPER,0,workspace,10 + +# Move app to workspace +bind = ALT,1,movetoworkspace,1 +bind = ALT,2,movetoworkspace,2 +bind = ALT,3,movetoworkspace,3 +bind = ALT,4,movetoworkspace,4 +bind = ALT,5,movetoworkspace,5 +bind = ALT,6,movetoworkspace,6 +bind = ALT,7,movetoworkspace,7 +bind = ALT,8,movetoworkspace,8 +bind = ALT,9,movetoworkspace,9 +bind = ALT,0,movetoworkspace,10 + +# Move app to workspace silent +bind = SUPER_SHIFT,1,movetoworkspacesilent,1 +bind = SUPER_SHIFT,2,movetoworkspacesilent,2 +bind = SUPER_SHIFT,3,movetoworkspacesilent,3 +bind = SUPER_SHIFT,4,movetoworkspacesilent,4 +bind = SUPER_SHIFT,5,movetoworkspacesilent,5 +bind = SUPER_SHIFT,6,movetoworkspacesilent,6 +bind = SUPER_SHIFT,7,movetoworkspacesilent,7 +bind = SUPER_SHIFT,8,movetoworkspacesilent,8 +bind = SUPER_SHIFT,9,movetoworkspacesilent,9 +bind = SUPER_SHIFT,0,movetoworkspacesilent,10 + +# Mouse binds +bind = SUPER,mouse_down,workspace,e+1 +bind = SUPER,mouse_up,workspace,e-1 +bind = SUPER,up,workspace,e+1 + +# Startup apps +exec-once = mako +exec-once = hyprctl setcursor Simp1e-Gruvbox-Light 10 +exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP +exec-once = /usr/lib/polkit-kde-authentication-agent-1 +exec-once = /home/jerpo/Games/battery-level.sh +exec-once = qv2ray +exec-once = emacs --daemon +exec-once = wl-paste --type text --watch cliphist store +exec-once = wl-paste --type image --watch cliphist store +exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP +exec-once = hyprctl setcursor Bibata-Modern-Ice 13
\ No newline at end of file diff --git a/home-manager/wm/hyprland/scripts/battery-level.sh b/home-manager/wm/hyprland/scripts/battery-level.sh new file mode 100755 index 0000000..cc2d5cd --- /dev/null +++ b/home-manager/wm/hyprland/scripts/battery-level.sh @@ -0,0 +1,22 @@ +#!/bin/sh +while true; do + # Check the battery level and charging status + battery_info=$(acpi -b) + + # Extract the battery level from the output of `acpi` + battery_level=$(echo $battery_info | grep -o "[0-9]*%" | sed "s/%//") + + # Check if the laptop is charging + if [[ $battery_info == *"Charging"* ]]; then + # If the laptop is charging, do nothing + : + else + # If the battery level is less than 15%, send a notification + if [ "$battery_level" -lt 15 ]; then + notify-send "Battery Low" "Battery level is at $battery_level%. Charge your laptop." + fi + fi + + # Sleep for 5 minutes before checking the battery level again + sleep 300 +done diff --git a/home-manager/wm/hyprland/scripts/hshot b/home-manager/wm/hyprland/scripts/hshot new file mode 100755 index 0000000..0d02b9c --- /dev/null +++ b/home-manager/wm/hyprland/scripts/hshot @@ -0,0 +1,45 @@ +#!/bin/sh + +declare -a cmd + +usage() { + echo -e "-m | monitor\n-s | slurp\n-w | active window\n-c | add copy" +} + +monitor() { + cmd=("grim -o \"\$(hyprctl -j monitors | jq -r '.[] | select(.focused) | .name')\"") +} + +slurp() { + cmd=("grim -g \"\$(slurp)\"") +} + +window() { + cmd=("grim -g \"\$(hyprctl activewindow -j | jq -j '\"\(.at | .[0]),\(.at | .[1]) \(.size | .[0])x\(.size | .[1])\"')\"") +} + +copy() { + if [[ -n ${cmd[0]} ]]; then + cmd+=("- | wl-copy") + else + usage + fi +} + +while getopts ":mswc" opt; do + case ${opt} in + m) monitor;; + s) slurp;; + w) window;; + c) copy;; + *) usage + exit 1;; + esac +done + +if [[ -z $1 ]]; then + usage + exit 1 +fi + +bash -c "${cmd[*]}" diff --git a/home-manager/wm/hyprland/scripts/kill b/home-manager/wm/hyprland/scripts/kill new file mode 100755 index 0000000..40ab4a9 --- /dev/null +++ b/home-manager/wm/hyprland/scripts/kill @@ -0,0 +1,7 @@ +#!/bin/sh + +if [[ $(hyprctl activewindow -j | jq -r '.class') =~ (kitty) ]]; then + kill $(hyprctl activewindow -j | jq '.pid') -s 9 +else + hyprctl dispatch killactive +fi diff --git a/home-manager/wm/hyprland/scripts/rnew.fish b/home-manager/wm/hyprland/scripts/rnew.fish new file mode 100755 index 0000000..743d7fd --- /dev/null +++ b/home-manager/wm/hyprland/scripts/rnew.fish @@ -0,0 +1,8 @@ +#!/usr/bin/env fish + +ranger $argv +set quit_cd_wd_file "$HOME/.ranger_quit_cd_wd" +if test -s "$quit_cd_wd_file" + kitty -d "$(cat $quit_cd_wd_file)" --detach + true >"$quit_cd_wd_file" +end diff --git a/home-manager/wm/hyprland/scripts/rofi-modes b/home-manager/wm/hyprland/scripts/rofi-modes new file mode 100755 index 0000000..1a5bd2e --- /dev/null +++ b/home-manager/wm/hyprland/scripts/rofi-modes @@ -0,0 +1,20 @@ +#!/bin/sh + +case $(echo -e "bitwarden\nclipboard\nemoji\ncalc" | rofi -dmenu) in + emoji) arg=emoji;; + calc) arg=calc;; + clipboard) cliphist list | rofi -dmenu -display-columns 2 | cliphist decode | wl-copy + exit;; + bitwarden) if [[ $XDG_BACKEND == "wayland" ]]; then + typer=wtype + clip=wl-copy + else + typer=xdotool + clip=xclip + fi + rofi-rbw --typer $typer --clip $clip + exit;; + *)exit;; +esac + +rofi -modi $arg -show $arg diff --git a/modules/home-manager/default.nix b/modules/home-manager/default.nix index e41f7d9..753ad58 100644 --- a/modules/home-manager/default.nix +++ b/modules/home-manager/default.nix @@ -1,6 +1,6 @@ # Add your reusable home-manager modules to this directory, on their own file (https://nixos.wiki/wiki/Module). # These should be stuff you would like to share with others, not your personal configurations. - +{ inputs, ... }: { # List your module files here # my-module = import ./my-module.nix; diff --git a/nixos/#hardware-configuration.nix# b/nixos/#hardware-configuration.nix# deleted file mode 100644 index 8d69197..0000000 --- a/nixos/#hardware-configuration.nix# +++ /dev/null @@ -1,90 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ata_piix" "usb_storage" "usbhid" "sd_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-intel" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/74a99a85-4705-4108-99ac-7e391f5a45d8"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/92C7-3768"; - fsType = "vfat"; - }; - - fileSystems."/home/jerpo/bigdrive" = - { device = "/dev/disk/by-uuid/15ed0e39-280c-42c7-a886-742f95866ded"; - fsType = "btrfs"; - options = [ - "user" - "auto" - "async" - "nofail" - "rw" - "dev" - "suid" - "exec" - ]; - }; - - swapDevices = - [ { device = "/dev/disk/by-uuid/2b0e2731-0821-4795-8f37-c60069c0a9b9"; } - ]; - - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking - # (the default) this is the recommended approach. When using systemd-networkd it's - # still possible to use this option, but it's recommended to use it in conjunction - # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.enp3s0.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; - # Nvidia drivers - # Make sure opengl is enabled - hardware.opengl = { - enable = true; - driSupport = true; - driSupport32Bit = true; - }; - - # NVIDIA drivers are unfree. - nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) [ - "nvidia-x11" - ]; - - # Tell Xorg to use the nvidia driver - services.xserver.videoDrivers = ["nvidia"]; - - hardware.nvidia = { - - # Modesetting is needed for most wayland compositors - modesetting.enable = true; - - # Use the open source version of the kernel module - # Only available on driver 515.43.04+ - open = false; - - # Enable the nvidia settings menu - nvidiaSettings = true; - - # Optionally, you may need to select the appropriate driver version for your specific GPU. - package = config.boot.kernelPackages.nvidiaPackages.stable; - }; - hardware.opentabletdriver = { - enable = true; - daemon.enable = true; - }; -} diff --git a/nixos/configuration.nix b/nixos/configuration.nix index e07e670..068db8b 100644 --- a/nixos/configuration.nix +++ b/nixos/configuration.nix @@ -47,11 +47,16 @@ experimental-features = "nix-command flakes"; # Deduplicate and optimize nix store auto-optimise-store = true; + # Enable cachix + substituters = [ "https://nix-gaming.cachix.org" ]; + trusted-public-keys = [ "nix-gaming.cachix.org-1:nbjlureqMbRAxR1gJ/f3hxemL9svXaZF/Ees8vCUUs4=" ]; + }; }; - + time.timeZone = "Europe/Moscow"; networking.hostName = "ltrr"; + networking.networkmanager.enable = true; boot.loader = { systemd-boot.enable = true; @@ -64,13 +69,17 @@ # dm displayManager = { - defaultSession = "none+bspwm"; - sddm = { - enable = true; - theme = "sugar-dark"; - }; + lightdm.enable = false; + # defaultSession = "none+bspwm"; + # sddm = { + # enable = true; + # theme = "sugar-dark"; + # }; }; + # libinput + libinput.enable = true; + # wm windowManager.bspwm.enable = true; @@ -79,41 +88,55 @@ xkbOptions = "grp:win_space_toggle"; }; - # Printing - printing.enable = true; - printing.drivers = [ pkgs.hplipWithPlugin ]; - avahi = { + acpid = { enable = true; - nssmdns = true; - openFirewall = true; + powerEventCommands = ""; + lidEventCommands = "firefox"; }; - pipewire = { + # Printing + # printing.enable = true; + # printing.drivers = [ pkgs.hplipWithPlugin ]; + # avahi = { + # enable = true; + # nssmdns = true; + # openFirewall = true; + # }; + }; + security.rtkit.enable = true; + services.pipewire = { enable = true; + audio.enable = true; + wireplumber.enable = true; alsa.enable = true; pulse.enable = true; jack.enable = true; }; - v2raya.enable = true; - }; + virtualisation.virtualbox.host.enable = true; + users.extraGroups.vboxusers.members = [ "jerpo" ]; environment.systemPackages = with pkgs; [ vim git - killall btrfs-progs ntfs3g - sddm-sugar-dark-theme + xorg.xinit + carapace ]; - services.udisks2 = { enable = true; mountOnMedia = true; }; - + + programs.dconf.enable = true; i18n.defaultLocale = "ru_RU.UTF-8"; + programs.adb.enable = true; + services.udev.packages = [ + pkgs.android-udev-rules + ]; + programs.fish.enable = true; users.users = { jerpo = { @@ -122,7 +145,7 @@ openssh.authorizedKeys.keys = [ # TODO: Add your SSH public key(s) here, if you plan on using SSH to connect ]; - extraGroups = [ "networkmanager" "wheel" ]; + extraGroups = [ "networkmanager" "wheel" "docker" "input" "adbusers" ]; }; }; @@ -133,6 +156,11 @@ users.jerpo = import ../home-manager/home.nix; }; + qt = { + platformTheme = "gtk"; + style = "gtk"; + }; + # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion system.stateVersion = "23.05"; } diff --git a/nixos/configuration.old.nix b/nixos/configuration.old.nix index 9f5bdb6..bb8a218 100644 --- a/nixos/configuration.old.nix +++ b/nixos/configuration.old.nix @@ -140,7 +140,6 @@ wineWowPackages.full wineWowPackages.fonts winetricks - nvtop-nvidia nix-prefetch-scripts xkb-switch pamixer @@ -149,7 +148,7 @@ v4l-utils ]; - services.v2raya.enable = true; + # services.v2raya.enable = true; # Some programs need SUID wrappers, can be configured further or are # started in user sessions. diff --git a/nixos/hardware-configuration.nix b/nixos/hardware-configuration.nix index e173cbd..93f86c1 100644 --- a/nixos/hardware-configuration.nix +++ b/nixos/hardware-configuration.nix @@ -8,38 +8,23 @@ [ (modulesPath + "/installer/scan/not-detected.nix") ]; - boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ata_piix" "usb_storage" "usbhid" "sd_mod" ]; + boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" "sdhci_pci" ]; boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-intel" "v4l2loopback" ]; + boot.kernelModules = [ "kvm-intel" ]; boot.extraModulePackages = [ ]; fileSystems."/" = - { device = "/dev/disk/by-uuid/74a99a85-4705-4108-99ac-7e391f5a45d8"; + { device = "/dev/disk/by-uuid/6a01c356-7ba4-4499-84be-d3f94af19c71"; fsType = "ext4"; }; fileSystems."/boot" = - { device = "/dev/disk/by-uuid/92C7-3768"; + { device = "/dev/disk/by-uuid/AFC7-387A"; fsType = "vfat"; }; - fileSystems."/home/jerpo/bigdrive" = - { device = "/dev/disk/by-uuid/15ed0e39-280c-42c7-a886-742f95866ded"; - fsType = "btrfs"; - options = [ - "user" - "auto" - "async" - "nofail" - "rw" - "dev" - "suid" - "exec" - ]; - }; - swapDevices = - [ { device = "/dev/disk/by-uuid/2b0e2731-0821-4795-8f37-c60069c0a9b9"; } + [ { device = "/dev/disk/by-uuid/c52d36a0-3755-4407-a15c-1b021a12f32b"; } ]; # Enables DHCP on each ethernet and wireless interface. In case of scripted networking @@ -47,44 +32,21 @@ # still possible to use this option, but it's recommended to use it in conjunction # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. networking.useDHCP = lib.mkDefault true; - # networking.interfaces.enp3s0.useDHCP = lib.mkDefault true; + # networking.interfaces.eno1.useDHCP = lib.mkDefault true; + # networking.interfaces.wlo1.useDHCP = lib.mkDefault true; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; - # Nvidia drivers - # Make sure opengl is enabled + hardware.bluetooth = { + enable = true; + powerOnBoot = true; + }; hardware.opengl = { enable = true; driSupport = true; driSupport32Bit = true; + extraPackages = with pkgs; [ intel-compute-runtime ]; }; - - # NVIDIA drivers are unfree. - nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) [ - "nvidia-x11" - ]; - - # Tell Xorg to use the nvidia driver - services.xserver.videoDrivers = ["nvidia"]; - - hardware.nvidia = { - - # Modesetting is needed for most wayland compositors - modesetting.enable = true; - - # Use the open source version of the kernel module - # Only available on driver 515.43.04+ - open = false; - - # Enable the nvidia settings menu - nvidiaSettings = true; - - # Optionally, you may need to select the appropriate driver version for your specific GPU. - package = config.boot.kernelPackages.nvidiaPackages.stable; - }; - hardware.opentabletdriver = { - enable = true; - daemon.enable = true; - }; + hardware.opentabletdriver.enable = true; } diff --git a/pkgs/default.nix b/pkgs/default.nix index 281bcf9..f5cedd6 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,4 +1,5 @@ { pkgs ? import <nixpkgs> { } }: { sddm-sugar-dark-theme = pkgs.libsForQt5.callPackage ./sddm-sugar-dark-theme { }; - minicava = pkgs.callPackage ./minicava { }; + tgs2png = pkgs.callPackage ./tgs2png { }; + pokemon-colorscripts = pkgs.callPackage ./pokemon-colorscripts { }; } diff --git a/pkgs/minicava/default.nix b/pkgs/minicava/default.nix deleted file mode 100644 index 800dab3..0000000 --- a/pkgs/minicava/default.nix +++ /dev/null @@ -1,41 +0,0 @@ -{ lib -, stdenv -, fetchFromGitHub -, makeWrapper -, cava -, gnused -}: - -with lib; - -stdenv.mkDerivation { - pname = "minicava"; - version = "0.1"; - src = fetchFromGitHub { - owner = "Misterio77"; - repo = "minicava"; - rev = "c24681fe7c91548e0fb4f55a1882b0145c48d097"; - sha256 = "sha256-t+NHZP2I7clDHrnCDdYMaLcua7inVKm2t3aYZ3uBAlk="; - }; - - dontBuild = true; - dontConfigure = true; - - nativeBuildInputs = [ makeWrapper ]; - - installPhase = '' - install -Dm 0755 minicava.sh $out/bin/minicava - wrapProgram $out/bin/minicava --set PATH \ - "${makeBinPath [ - cava - gnused - ]}" - ''; - - meta = { - description = "A miniature cava sound visualizer"; - homepage = "https://github.com/Misterio77/minicava"; - license = licenses.mit; - platforms = platforms.all; - }; -} diff --git a/pkgs/pokemon-colorscripts/#default.nix# b/pkgs/pokemon-colorscripts/#default.nix# deleted file mode 100644 index 4932153..0000000 --- a/pkgs/pokemon-colorscripts/#default.nix# +++ /dev/null @@ -1,21 +0,0 @@ -Подготовительный этап : зостерин 30% утром и вечером натощак на 10 дней -Программа на трематод : - -1. Этап дренаж на 14-16 дней , до конца флаконов -Лимфомиозот по 10 капель с водой 3 раза в день -Популюс по 10 капель с водой 3 раза в день -Хелидониум гомакорд по 10 капель с водой 3 раза в день -Можно все по 30 капель в литровую бутылку и пить по глоточку в течение дня - -2. Этап . Детокс с поддержкой органов на 35 дней (5 недель ) начинаем через 7 дней от начала первого этапа -Уколы -Солидаго композитум + Тонзилла композитум в один шприц подкожно - Вторник и Пятница (итого 10 уколов) -Плацента композитум + Пульсатилла композитум в один шприц - понедельник и четверг (итого 10 уколов) - -3. Этап - воздействие на трематоду на 21 день , начинаем через 14 дней от начала уколов -Viola odorata c3 (производитель Гута) 8 горошин утром -Описторхосан по 8 горошин 2 раза в день - -4. Этап - гвоздика по 2 капсуле 3 раза в день , перед едой . На 14 дней . Начинать с 1 капсулы , те может раздражать слизистую -5. Параллельно принимаем базу в виде Аргинина по 1000 мг (1 капсула ) перед едой с утра на 30 дней -6. Хлореллу в течение всего курса по 2 чайной ложке на стакан воды за 20 минут до еды !
\ No newline at end of file diff --git a/pkgs/pokemon-colorscripts/default.nix b/pkgs/pokemon-colorscripts/default.nix new file mode 100644 index 0000000..6fa8e28 --- /dev/null +++ b/pkgs/pokemon-colorscripts/default.nix @@ -0,0 +1,29 @@ +{ lib, stdenv, fetchFromGitLab, python3 }: + +stdenv.mkDerivation rec { + pname = "pokemon-colorscripts"; + version = "r108.3dc0b2e"; + src = fetchFromGitLab { + owner = "phoneybadger"; + repo = "${pname}"; + rev = "0483c85b93362637bdd0632056ff986c07f30868"; + sha256 = "1c5pi7y87ng6qa3k287fq66spdl3ynckvxf86srd9fy2h4ljlgdf"; + }; + buildInputs = [ python3 ]; + preInstall = '' + rm -rf "$out/usr/local/opt/${pname}" + mkdir -p "$out/usr/local/opt/${pname}/colorscripts/regular" + mkdir -p "$out/usr/local/opt/${pname}/colorscripts/shiny" + mkdir -p "$out/bin" + install -Dm644 colorscripts/small/regular/* -t "$out/usr/local/opt/${pname}/colorscripts/small/regular" + install -Dm644 colorscripts/small/shiny/* -t "$out/usr/local/opt/${pname}/colorscripts/small/shiny" + install -Dm644 colorscripts/large/regular/* -t "$out/usr/local/opt/${pname}/colorscripts/large/regular" + install -Dm644 colorscripts/large/shiny/* -t "$out/usr/local/opt/${pname}/colorscripts/large/shiny" + install -Dm644 pokemon.json "$out/usr/local/opt/${pname}/pokemon.json" + install -Dm755 pokemon-colorscripts.py "$out/usr/local/opt/${pname}/pokemon-colorscripts.py" + install -Dm644 LICENSE.txt "$out/usr/share/licenses/${pname}/LICENSE" + install -Dm644 README.md "$out/usr/share/doc/${pname}/README.md" + install -Dm644 pokemon-colorscripts.1 "$out/usr/local/man/man1/pokemon-colorscripts.1" + ln -sf $out/usr/local/opt/${pname}/pokemon-colorscripts.py $out/bin/pokemon-colorscripts +''; +} diff --git a/pkgs/sddm-sugar-dark-theme/default.nix b/pkgs/sddm-sugar-dark-theme/default.nix index 6d06ac1..2df1adc 100644 --- a/pkgs/sddm-sugar-dark-theme/default.nix +++ b/pkgs/sddm-sugar-dark-theme/default.nix @@ -15,6 +15,11 @@ stdenv.mkDerivation { qtquickcontrols2 qtgraphicaleffects ]; + BuildInputs = [ + qtsvg + qtquickcontrols2 + qtgraphicaleffects + ]; dontWrapQtApps = true; postInstall = '' mkdir -p $out/share/sddm/themes/sugar-dark diff --git a/pkgs/tgs2png/default.nix b/pkgs/tgs2png/default.nix new file mode 100644 index 0000000..c17f50c --- /dev/null +++ b/pkgs/tgs2png/default.nix @@ -0,0 +1,32 @@ +{ lib +, stdenv +, fetchFromGitHub +, rlottie +, libpng +, cmake +, pkg-config +}: + +stdenv.mkDerivation { + name = "tgs2png"; + src = fetchFromGitHub { + owner = "zevlg"; + repo = "tgs2png"; + rev = "25c15b7c2ca3b1a580a383d9d3cb13bf8531d04a"; + sha256 = "0camvzapkfvr9v0nkk96n26rdmw0g8wbpv41i5l03j6bzdgm4myl"; + }; + nativeBuildInputs = [ cmake pkg-config ]; + buildInputs = [ + rlottie + libpng + ]; + buildPhase = '' + cmake + make + ''; + installPhase = '' + mkdir -p $out/bin + cp tgs2png $out/bin + ''; +} + @@ -1 +0,0 @@ -/nix/store/jfrr436cbyi18zcvz4a6ay982lhypic5-minicava-0.1
\ No newline at end of file |
