/***************
 * Base States *
 ***************/
.background {
  background-color: #FFFFFF;
  color: rgba(0, 0, 0, 0.87);
}

dnd {
  color: rgba(0, 0, 0, 0.87);
}

.normal-icons {
  -gtk-icon-size: 16px;
}

.large-icons {
  -gtk-icon-size: 32px;
}

spinner:disabled,
arrow:disabled,
scrollbar:disabled,
check:disabled,
radio:disabled,
treeview.expander:disabled {
  -gtk-icon-filter: opacity(0.5);
}

iconview, .view {
  color: rgba(0, 0, 0, 0.87);
}

iconview:disabled, .view:disabled {
  color: rgba(0, 0, 0, 0.38);
}

iconview:selected, .view:selected {
  color: rgba(0, 0, 0, 0.87);
}

textview text {
  background-color: #FFFFFF;
}

textview border {
  background-color: #FAFAFA;
  color: rgba(0, 0, 0, 0.6);
}

iconview:hover, iconview:selected {
  border-radius: 3px;
}

rubberband, .content-view rubberband, .content-view columnview.view > rubberband,
.content-view treeview.view > rubberband, .content-view .rubberband, columnview.view > rubberband, .content-view columnview.view > .rubberband,
treeview.view > rubberband,
.content-view treeview.view > .rubberband, gridview > rubberband, flowbox > rubberband {
  border: 1px solid #3c84f7;
  background-color: rgba(60, 132, 247, 0.3);
}

flowbox > flowboxchild {
  padding: 4px;
  border-radius: 6px;
}

.content-view .tile:selected {
  background-color: transparent;
}

gridview > child {
  padding: 3px;
}

gridview > child:selected {
  outline-color: alpha(currentColor, 0.06);
}

gridview > child box {
  border-spacing: 8px;
  margin: 12px;
}

coverflow cover {
  color: rgba(0, 0, 0, 0.87);
  background-color: #FFFFFF;
  border: 1px solid black;
}

label.separator {
  color: rgba(0, 0, 0, 0.6);
}

label:disabled {
  color: rgba(0, 0, 0, 0.38);
}

headerbar label:disabled, tab label:disabled, button label:disabled {
  color: inherit;
}

label.osd {
  border-radius: 6px;
  background-color: rgba(52, 52, 52, 0.9);
  color: white;
}

.dim-label {
  color: rgba(0, 0, 0, 0.6);
}

window.assistant .sidebar {
  padding: 4px 0;
}

window.assistant .sidebar label {
  min-height: 36px;
  padding: 0 12px;
  color: rgba(0, 0, 0, 0.38);
  font-weight: 500;
}

window.assistant .sidebar label.highlight {
  color: rgba(0, 0, 0, 0.87);
}

.osd popover.background > arrow,
.osd popover.background > contents, popover.background.touch-selection > arrow,
popover.background.touch-selection > contents, popover.background.magnifier > arrow,
popover.background.magnifier > contents, .osd {
  color: rgba(0, 0, 0, 0.87);
  background-color: #FFFFFF;
  background-clip: padding-box;
  border-radius: 6px;
  border: none;
}

.osd {
  padding: 6px;
  margin: 6px;
  box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12);
}

.osd.circular {
  border-radius: 9999px;
}

/*********************
 * Spinner Animation *
 *********************/
@keyframes spin {
  to {
    transform: rotate(1turn);
  }
}

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

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

spinner:checked:disabled {
  opacity: 0.5;
}

.large-title {
  font-weight: 300;
  font-size: 24pt;
}

.title-1 {
  font-weight: 800;
  font-size: 20pt;
}

.title-2 {
  font-weight: 800;
  font-size: 15pt;
}

.title-3 {
  font-weight: 700;
  font-size: 15pt;
}

.title-4 {
  font-weight: 700;
  font-size: 13pt;
}

.heading {
  font-weight: 700;
  font-size: 11pt;
}

.body {
  font-weight: 400;
  font-size: 11pt;
}

.caption {
  font-weight: 400;
  font-size: 9pt;
}

.caption-heading {
  font-weight: 700;
  font-size: 9pt;
}

/****************
 * Text Entries *
 ****************/
spinbutton.vertical, spinbutton:not(.vertical),
entry {
  min-height: 36px;
  padding: 0 8px;
  border-spacing: 6px;
  border-radius: 6px;
  caret-color: currentColor;
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: inset 0 0 0 2px transparent;
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.87);
}

spinbutton.vertical:focus-within, spinbutton:focus-within:not(.vertical),
entry:focus-within {
  background-color: rgba(0, 0, 0, 0.04);
  box-shadow: inset 0 0 0 2px #3c84f7;
}

spinbutton.vertical:drop(active), spinbutton:drop(active):not(.vertical),
entry:drop(active) {
  background-color: alpha(currentColor, 0.08);
  box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08);
}

spinbutton.vertical:disabled, spinbutton:disabled:not(.vertical),
entry:disabled {
  box-shadow: inset 0 0 0 2px transparent;
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.38);
}

spinbutton.flat.vertical, spinbutton.flat:not(.vertical),
entry.flat {
  min-height: 0;
  padding: 2px;
  border-radius: 0;
  background-color: transparent;
}

spinbutton.vertical image, spinbutton:not(.vertical) image,
entry image {
  color: rgba(0, 0, 0, 0.6);
}

spinbutton.vertical image:hover, spinbutton:not(.vertical) image:hover, spinbutton.vertical image:active, spinbutton:not(.vertical) image:active,
entry image:hover,
entry image:active {
  color: rgba(0, 0, 0, 0.87);
}

spinbutton.vertical image:disabled, spinbutton:not(.vertical) image:disabled,
entry image:disabled {
  color: rgba(0, 0, 0, 0.38);
}

spinbutton.vertical image.left, spinbutton:not(.vertical) image.left,
entry image.left {
  margin-left: 2px;
  margin-right: 6px;
}

spinbutton.vertical image.right, spinbutton:not(.vertical) image.right,
entry image.right {
  margin-left: 6px;
  margin-right: 2px;
}

spinbutton.vertical undershoot.left, spinbutton:not(.vertical) undershoot.left,
entry undershoot.left {
  background-color: transparent;
  background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%);
  padding-left: 1px;
  background-size: 1px 12px;
  background-repeat: repeat-y;
  background-origin: content-box;
  background-position: left top;
  margin: 0 4px;
  margin: 4px 0;
}

spinbutton.vertical undershoot.right, spinbutton:not(.vertical) undershoot.right,
entry undershoot.right {
  background-color: transparent;
  background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%);
  padding-right: 1px;
  background-size: 1px 12px;
  background-repeat: repeat-y;
  background-origin: content-box;
  background-position: right top;
  margin: 0 4px;
  margin: 4px 0;
}

spinbutton.error.vertical, spinbutton.error:not(.vertical),
entry.error {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: inset 0 0 0 2px transparent;
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.87);
}

spinbutton.error.vertical:focus-within, spinbutton.error:focus-within:not(.vertical),
entry.error:focus-within {
  background-color: rgba(0, 0, 0, 0.04);
  box-shadow: inset 0 0 0 2px #D93025;
}

spinbutton.error.vertical:disabled, spinbutton.error:disabled:not(.vertical),
entry.error:disabled {
  box-shadow: inset 0 0 0 2px transparent;
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.38);
}

spinbutton.warning.vertical, spinbutton.warning:not(.vertical),
entry.warning {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: inset 0 0 0 2px transparent;
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.87);
}

spinbutton.warning.vertical:focus-within, spinbutton.warning:focus-within:not(.vertical),
entry.warning:focus-within {
  background-color: rgba(0, 0, 0, 0.04);
  box-shadow: inset 0 0 0 2px #F4B400;
}

spinbutton.warning.vertical:disabled, spinbutton.warning:disabled:not(.vertical),
entry.warning:disabled {
  box-shadow: inset 0 0 0 2px transparent;
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.38);
}

spinbutton.vertical > progress, spinbutton:not(.vertical) > progress,
spinbutton.vertical progress > trough > progress,
spinbutton:not(.vertical) progress > trough > progress,
entry > progress,
entry progress > trough > progress {
  margin: 2px -8px;
  border-bottom: 2px solid #3c84f7;
  background-color: transparent;
}

treeview entry.flat, treeview entry {
  background-color: #FFFFFF;
}

treeview entry.flat, treeview entry.flat:focus-within, treeview entry, treeview entry:focus-within {
  border-image: none;
  box-shadow: none;
}

.entry-tag {
  margin: 2px;
  border-radius: 9999px;
  box-shadow: none;
  background-color: rgba(0, 0, 0, 0.12);
  color: rgba(0, 0, 0, 0.87);
}

.entry-tag:hover {
  background-image: image(alpha(currentColor, 0.08));
}

:dir(ltr) .entry-tag {
  margin-left: 4px;
  margin-right: 0;
  padding-left: 12px;
  padding-right: 8px;
}

:dir(rtl) .entry-tag {
  margin-left: 0;
  margin-right: 4px;
  padding-left: 8px;
  padding-right: 12px;
}

.entry-tag.button {
  box-shadow: none;
  background-color: transparent;
}

.entry-tag.button:not(:hover):not(:active) {
  color: rgba(0, 0, 0, 0.6);
}

editablelabel > stack > text {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: inset 0 0 0 2px transparent;
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.87);
}

/***********
 * Buttons *
 ***********/
@keyframes needs-attention {
  from {
    background-image: radial-gradient(farthest-side, #3c84f7 0%, rgba(60, 132, 247, 0) 0%);
  }
  to {
    background-image: radial-gradient(farthest-side, #3c84f7 95%, rgba(60, 132, 247, 0));
  }
}

infobar.warning > revealer > box button, infobar.warning:backdrop > revealer > box button, popover.background.touch-selection button, popover.background.magnifier button, headerbar.selection-mode button:not(.suggested-action):not(.destructive-action) {
  color: rgba(255, 255, 255, 0.7);
}

infobar.warning > revealer > box button:focus, popover.background.touch-selection button:focus, popover.background.magnifier button:focus, headerbar.selection-mode button:focus:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:hover, popover.background.touch-selection button:hover, popover.background.magnifier button:hover, headerbar.selection-mode button:hover:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:active, popover.background.touch-selection button:active, popover.background.magnifier button:active, headerbar.selection-mode button:active:not(.suggested-action):not(.destructive-action), infobar.warning > revealer > box button:checked, popover.background.touch-selection button:checked, popover.background.magnifier button:checked, headerbar.selection-mode button:checked:not(.suggested-action):not(.destructive-action) {
  color: white;
}

infobar.warning > revealer > box button:disabled, popover.background.touch-selection button:disabled, popover.background.magnifier button:disabled, headerbar.selection-mode button:disabled:not(.suggested-action):not(.destructive-action) {
  color: rgba(255, 255, 255, 0.3);
}

infobar.warning > revealer > box button:checked:disabled, popover.background.touch-selection button:checked:disabled, popover.background.magnifier button:checked:disabled, headerbar.selection-mode button:checked:disabled:not(.suggested-action):not(.destructive-action) {
  color: rgba(255, 255, 255, 0.5);
}

actionbar > revealer > box .linked > button:not(.suggested-action):not(.destructive-action), button {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1);
  outline: none;
  box-shadow: inset 0 0 0 9999px transparent;
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.87);
}

actionbar > revealer > box .linked > button:focus:not(.suggested-action):not(.destructive-action), button:focus {
  box-shadow: 0 0 0 2px rgba(60, 132, 247, 0.35);
}

actionbar > revealer > box .linked > button:hover:not(.suggested-action):not(.destructive-action), button:hover {
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08);
}

actionbar > revealer > box .linked > button:active:not(.suggested-action):not(.destructive-action), button:active {
  transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12);
}

actionbar > revealer > box .linked > button:disabled:not(.suggested-action):not(.destructive-action), button:disabled {
  box-shadow: none;
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.38);
}

actionbar > revealer > box .linked > button:checked:not(.suggested-action):not(.destructive-action), button:checked {
  background-color: #3c84f7;
  color: white;
}

actionbar > revealer > box .linked > button:checked:hover:not(.suggested-action):not(.destructive-action), button:checked:hover {
  box-shadow: inset 0 0 0 9999px transparent;
}

actionbar > revealer > box .linked > button:checked:disabled:not(.suggested-action):not(.destructive-action), button:checked:disabled {
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.1);
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.38);
}

button {
  min-height: 24px;
  min-width: 16px;
  padding: 6px 10px;
  border-radius: 6px;
  font-weight: 500;
}

button:drop(active) {
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08);
}

placessidebar .navigation-sidebar > row button.sidebar-button, calendar > header > button, columnview.view > header > button button.circular,
treeview.view > header > button button.circular, row.activatable button.circular, scrollbar button, notebook > header > tabs > arrow, spinbutton.vertical > button, spinbutton:not(.vertical) > button, modelbutton.flat, filechooser #pathbarbox > stack > box > button, window.dialog.message .dialog-action-area > button, .app-notification button, actionbar > revealer > box button:not(.suggested-action):not(.destructive-action), popover.background.menu button,
popover.background button.model, headerbar button:not(.suggested-action):not(.destructive-action), .toolbar button,
toolbar button, dropdown > .linked:not(.vertical) > button:not(:only-child),
combobox > .linked:not(.vertical) > button:not(:only-child), button.flat {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  outline: none;
  box-shadow: inset 0 0 0 9999px transparent;
  background-color: transparent;
  color: rgba(0, 0, 0, 0.6);
}

placessidebar .navigation-sidebar > row button.sidebar-button:focus, calendar > header > button:focus, columnview.view > header > button button.circular:focus,
treeview.view > header > button button.circular:focus, row.activatable button.circular:focus, scrollbar button:focus, notebook > header > tabs > arrow:focus, spinbutton.vertical > button:focus, spinbutton:not(.vertical) > button:focus, modelbutton.flat:focus, filechooser #pathbarbox > stack > box > button:focus, window.dialog.message .dialog-action-area > button:focus, .app-notification button:focus, actionbar > revealer > box button:focus:not(.suggested-action):not(.destructive-action), popover.background.menu button:focus,
popover.background button.model:focus, headerbar button:focus:not(.suggested-action):not(.destructive-action), .toolbar button:focus,
toolbar button:focus, dropdown > .linked:not(.vertical) > button:focus:not(:only-child),
combobox > .linked:not(.vertical) > button:focus:not(:only-child), button.flat:focus {
  box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08);
  color: rgba(0, 0, 0, 0.87);
}

placessidebar .navigation-sidebar > row button.sidebar-button:hover, calendar > header > button:hover, columnview.view > header > button button.circular:hover,
treeview.view > header > button button.circular:hover, row.activatable button.circular:hover, scrollbar button:hover, notebook > header > tabs > arrow:hover, spinbutton.vertical > button:hover, spinbutton:not(.vertical) > button:hover, modelbutton.flat:hover, filechooser #pathbarbox > stack > box > button:hover, window.dialog.message .dialog-action-area > button:hover, .app-notification button:hover, actionbar > revealer > box button:hover:not(.suggested-action):not(.destructive-action), popover.background.menu button:hover,
popover.background button.model:hover, headerbar button:hover:not(.suggested-action):not(.destructive-action), .toolbar button:hover,
toolbar button:hover, dropdown > .linked:not(.vertical) > button:hover:not(:only-child),
combobox > .linked:not(.vertical) > button:hover:not(:only-child), button.flat:hover {
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08);
  color: rgba(0, 0, 0, 0.87);
}

placessidebar .navigation-sidebar > row button.sidebar-button:active, calendar > header > button:active, columnview.view > header > button button.circular:active,
treeview.view > header > button button.circular:active, row.activatable button.circular:active, scrollbar button:active, notebook > header > tabs > arrow:active, spinbutton.vertical > button:active, spinbutton:not(.vertical) > button:active, modelbutton.flat:active, filechooser #pathbarbox > stack > box > button:active, window.dialog.message .dialog-action-area > button:active, .app-notification button:active, actionbar > revealer > box button:active:not(.suggested-action):not(.destructive-action), popover.background.menu button:active,
popover.background button.model:active, headerbar button:active:not(.suggested-action):not(.destructive-action), .toolbar button:active,
toolbar button:active, dropdown > .linked:not(.vertical) > button:active:not(:only-child),
combobox > .linked:not(.vertical) > button:active:not(:only-child), button.flat:active {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12);
  color: rgba(0, 0, 0, 0.87);
}

placessidebar .navigation-sidebar > row button.sidebar-button:disabled, calendar > header > button:disabled, columnview.view > header > button button.circular:disabled,
treeview.view > header > button button.circular:disabled, row.activatable button.circular:disabled, scrollbar button:disabled, notebook > header > tabs > arrow:disabled, spinbutton.vertical > button:disabled, spinbutton:not(.vertical) > button:disabled, modelbutton.flat:disabled, filechooser #pathbarbox > stack > box > button:disabled, window.dialog.message .dialog-action-area > button:disabled, .app-notification button:disabled, actionbar > revealer > box button:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:disabled,
popover.background button.model:disabled, headerbar button:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:disabled,
toolbar button:disabled, dropdown > .linked:not(.vertical) > button:disabled:not(:only-child),
combobox > .linked:not(.vertical) > button:disabled:not(:only-child), button.flat:disabled {
  box-shadow: none;
  background-color: transparent;
  color: rgba(0, 0, 0, 0.26);
}

filechooser #pathbarbox > stack > box > button:checked, window.dialog.message .dialog-action-area > button:checked, .app-notification button:checked, actionbar > revealer > box button:checked:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked,
popover.background button.model:checked, headerbar button:checked:not(.suggested-action):not(.destructive-action), .toolbar button:checked,
toolbar button:checked, dropdown > .linked:not(.vertical) > button:checked:not(:only-child),
combobox > .linked:not(.vertical) > button:checked:not(:only-child), button.flat:checked, button.flat:checked:hover {
  background-color: alpha(currentColor, 0.1);
  color: rgba(0, 0, 0, 0.87);
}

filechooser #pathbarbox > stack > box > button:checked:disabled, window.dialog.message .dialog-action-area > button:checked:disabled, .app-notification button:checked:disabled, actionbar > revealer > box button:checked:disabled:not(.suggested-action):not(.destructive-action), popover.background.menu button:checked:disabled,
popover.background button.model:checked:disabled, headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action), .toolbar button:checked:disabled,
toolbar button:checked:disabled, dropdown > .linked:not(.vertical) > button:checked:disabled:not(:only-child),
combobox > .linked:not(.vertical) > button:checked:disabled:not(:only-child), button.flat:checked:disabled {
  background-color: alpha(currentColor, 0.1);
  color: rgba(0, 0, 0, 0.38);
}

button.text-button {
  min-width: 32px;
  padding-left: 16px;
  padding-right: 16px;
}

button.text-button.flat {
  min-width: 48px;
  padding-left: 8px;
  padding-right: 8px;
}

button.image-button {
  min-width: 24px;
  padding: 6px;
}

button.text-button.image-button {
  min-width: 24px;
  padding: 6px;
  border-radius: 6px;
}

button.text-button.image-button label:first-child {
  margin-left: 10px;
}

button.text-button.image-button label:last-child {
  margin-right: 10px;
}

button.text-button.image-button.flat label:first-child {
  margin-left: 6px;
}

button.text-button.image-button.flat label:last-child {
  margin-right: 6px;
}

button.text-button.image-button image:not(:only-child) {
  margin: 0 4px;
}

.linked:not(.vertical) > button.flat:not(:only-child), .linked.vertical > button.flat:not(:only-child) {
  border-radius: 6px;
}

.linked:not(.vertical) > button.flat:focus, .linked.vertical > button.flat:focus {
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08);
}

button.osd {
  padding: 12px 16px;
}

button.osd.image-button {
  padding: 12px;
}

button.osd:disabled {
  opacity: 0;
}

button.suggested-action {
  background-color: #3c84f7;
  color: white;
  box-shadow: none;
}

button.suggested-action:disabled {
  box-shadow: none;
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.38);
}

button.suggested-action:hover {
  box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(60, 132, 247, 0.2), 0 4px 3px 0 rgba(60, 132, 247, 0.14), 0 1px 6px 0 rgba(60, 132, 247, 0.12);
}

button.suggested-action:checked {
  background-color: #77a9f9;
}

button.suggested-action:checked:hover {
  box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(60, 132, 247, 0.3), 0 2px 3px -1px rgba(60, 132, 247, 0.24), 0 2px 5px 0 rgba(60, 132, 247, 0.12);
}

button.suggested-action:focus {
  box-shadow: 0 0 0 2px rgba(60, 132, 247, 0.35);
}

button.suggested-action.flat {
  background-color: transparent;
  color: #3c84f7;
}

button.suggested-action.flat:disabled {
  box-shadow: none;
  background-color: transparent;
  color: rgba(0, 0, 0, 0.26);
}

button.suggested-action.flat:checked {
  background-color: rgba(60, 132, 247, 0.3);
}

button.destructive-action {
  background-color: #D93025;
  color: white;
  box-shadow: none;
}

button.destructive-action:disabled {
  box-shadow: none;
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.38);
}

button.destructive-action:hover {
  box-shadow: inset 0 0 0 9999px transparent, 0 2px 2.4px -1px rgba(217, 48, 37, 0.2), 0 4px 3px 0 rgba(217, 48, 37, 0.14), 0 1px 6px 0 rgba(217, 48, 37, 0.12);
}

button.destructive-action:checked {
  background-color: #e46e66;
}

button.destructive-action:checked:hover {
  box-shadow: inset 0 0 0 9999px transparent, 0 3px 3px -3px rgba(217, 48, 37, 0.3), 0 2px 3px -1px rgba(217, 48, 37, 0.24), 0 2px 5px 0 rgba(217, 48, 37, 0.12);
}

button.destructive-action:focus {
  box-shadow: 0 0 0 2px rgba(217, 48, 37, 0.35);
}

button.destructive-action.flat {
  background-color: transparent;
  color: #D93025;
}

button.destructive-action.flat:disabled {
  box-shadow: none;
  background-color: transparent;
  color: rgba(0, 0, 0, 0.26);
}

button.destructive-action.flat:checked {
  background-color: rgba(217, 48, 37, 0.3);
}

stackswitcher > button > label {
  margin: 0 -6px;
  padding: 0 6px;
}

stackswitcher > button > image {
  margin: -3px -6px;
  padding: 3px 6px;
}

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

button.font > box, button.file > box {
  border-spacing: 6px;
}

button.font > box > box > label, button.file > box > box > label {
  font-weight: bold;
}

windowcontrols button:not(.suggested-action):not(.destructive-action), filechooser #pathbarbox > stack > box > button, button.close, button.circular {
  border-radius: 9999px;
}

windowcontrols button:not(.suggested-action):not(.destructive-action) label, filechooser #pathbarbox > stack > box > button label, button.close label, button.circular label {
  padding: 0;
}

placessidebar .navigation-sidebar > row button.sidebar-button, notebook > header tab button.flat, popover.menu box.circular-buttons button.circular.image-button.model, spinbutton.vertical > button, spinbutton:not(.vertical) > button {
  min-height: 24px;
  min-width: 24px;
  padding: 0;
  border-radius: 9999px;
}

stacksidebar row.needs-attention > label, stackswitcher > button.needs-attention > label,
stackswitcher > button.needs-attention > image {
  animation: needs-attention 0ms cubic-bezier(0, 0, 0.2, 1) forwards;
  background-repeat: no-repeat;
  background-position: right 3px;
  background-size: 6px 6px;
}

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

.linked:not(.vertical) > spinbutton.vertical, .linked:not(.vertical) > spinbutton:not(.vertical), .linked:not(.vertical) > entry, .linked:not(.vertical) > button, .linked:not(.vertical) > button.image-button {
  border-radius: 0;
}

.linked:not(.vertical) > spinbutton.vertical:first-child, .linked:not(.vertical) > spinbutton:first-child:not(.vertical), .linked:not(.vertical) > entry:first-child, .linked:not(.vertical) > button:first-child {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}

.linked:not(.vertical) > spinbutton.vertical:last-child, .linked:not(.vertical) > spinbutton:last-child:not(.vertical), .linked:not(.vertical) > entry:last-child, .linked:not(.vertical) > button:last-child {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}

.linked:not(.vertical) > spinbutton.vertical:only-child, .linked:not(.vertical) > spinbutton:only-child:not(.vertical), .linked:not(.vertical) > entry:only-child, .linked:not(.vertical) > button:only-child {
  border-radius: 6px;
}

.linked.vertical > spinbutton.vertical, .linked.vertical > spinbutton:not(.vertical), .linked.vertical > entry, .linked.vertical > button, .linked.vertical > button.image-button {
  border-radius: 0;
}

.linked.vertical > spinbutton.vertical:first-child, .linked.vertical > spinbutton:first-child:not(.vertical), .linked.vertical > entry:first-child, .linked.vertical > button:first-child {
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}

.linked.vertical > spinbutton.vertical:last-child, .linked.vertical > spinbutton:last-child:not(.vertical), .linked.vertical > entry:last-child, .linked.vertical > button:last-child {
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
}

.linked.vertical > spinbutton.vertical:only-child, .linked.vertical > spinbutton:only-child:not(.vertical), .linked.vertical > entry:only-child, .linked.vertical > button:only-child {
  border-radius: 6px;
}

/* menu buttons */
modelbutton.flat {
  min-height: 28px;
  padding: 0 9px;
  border-radius: 6px;
  color: rgba(0, 0, 0, 0.87);
}

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

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

button.color {
  min-height: 24px;
  min-width: 24px;
  padding: 6px;
}


list > row button.image-button:not(.flat) {
  background-color: transparent;
  box-shadow: none;
  border: none;
}


list > row button.image-button:not(.flat):hover {
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08);
}


list > row button.image-button:not(.flat):active,
list > row button.image-button:not(.flat):checked {
  transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1), background-color 0ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12);
}


list > row button.image-button:not(.flat).suggested-action {
  background-color: #3c84f7;
  color: white;
}


list > row button.image-button:not(.flat).destructive-action {
  background-color: #D93025;
  color: white;
}

/*********
 * Links *
 *********/
link {
  color: #2196F3;
}

link:visited {
  color: #9C27B0;
}

button.link:link, button.link:link:focus, button.link:link:hover, button.link:link:active {
  color: #2196F3;
}

button.link:visited, button.link:visited:focus, button.link:visited:hover, button.link:visited:active {
  color: #9C27B0;
}

button.link > label {
  text-decoration-line: underline;
}

/*****************
 * GtkSpinButton *
 *****************/
spinbutton:not(.vertical) {
  padding: 0;
  border-spacing: 0;
}

spinbutton:not(.vertical) > text {
  min-width: 32px;
  margin: 0;
  padding-left: 12px;
  border-image: none;
  border-radius: 0;
  box-shadow: none;
  background-color: transparent;
}

spinbutton:not(.vertical) > button {
  border: solid 6px transparent;
}

spinbutton:not(.vertical) > button:focus:not(:hover):not(:active):not(:disabled) {
  box-shadow: inset 0 0 0 9999px transparent;
  color: rgba(0, 0, 0, 0.6);
}

spinbutton:not(.vertical) > button.up:dir(ltr), spinbutton:not(.vertical) > button.down:dir(rtl) {
  margin-left: -3px;
}

spinbutton:not(.vertical) > button.up:dir(rtl), spinbutton:not(.vertical) > button.down:dir(ltr) {
  margin-right: -3px;
}

spinbutton.vertical {
  padding: 0;
}

spinbutton.vertical:disabled {
  color: rgba(0, 0, 0, 0.38);
}

spinbutton.vertical > text {
  margin: 0;
  border-image: none;
  border-radius: 0;
  box-shadow: none;
  background-color: transparent;
  min-height: 36px;
  min-width: 42px;
  padding: 0;
}

spinbutton.vertical > button {
  padding: 0;
  border: solid 6px transparent;
}

spinbutton.vertical > button:focus:not(:hover):not(:active) {
  box-shadow: inset 0 0 0 9999px transparent;
  color: rgba(0, 0, 0, 0.6);
}

spinbutton.vertical > button.up {
  margin: 0 3px;
}

spinbutton.vertical > button.down {
  margin: 0 3px;
}

treeview spinbutton:not(.vertical), row spinbutton:not(.vertical) {
  min-height: 0;
  border-style: none;
  border-radius: 0;
}

treeview spinbutton:not(.vertical) > text, row spinbutton:not(.vertical) > text {
  min-height: 0;
  padding: 1px 2px;
}

/**************
 * ComboBoxes *
 **************/
dropdown > popover.menu.background > contents {
  padding: 0;
}

dropdown > button > box {
  border-spacing: 6px;
}

dropdown arrow,
combobox arrow {
  -gtk-icon-source: -gtk-icontheme("pan-down-symbolic");
  min-height: 16px;
  min-width: 16px;
}

dropdown > popover.menu > contents modelbutton,
combobox > popover.menu > contents modelbutton {
  padding-left: 9px;
  padding-right: 9px;
}

dropdown button.combo cellview:dir(ltr),
combobox button.combo cellview:dir(ltr) {
  margin-left: -2px;
}

dropdown button.combo cellview:dir(rtl),
combobox button.combo cellview:dir(rtl) {
  margin-right: -2px;
}

dropdown popover,
combobox popover {
  margin-top: 4px;
  padding: 0;
}

dropdown popover listview,
combobox popover listview {
  margin: 6px 0;
}

dropdown popover listview > row,
combobox popover listview > row {
  padding: 6px;
}

dropdown popover listview > row:selected,
combobox popover listview > row:selected {
  color: rgba(0, 0, 0, 0.87);
  background-color: alpha(currentColor, 0.06);
}

dropdown popover .dropdown-searchbar,
combobox popover .dropdown-searchbar {
  padding: 6px;
}

dropdown.linked button:nth-child(2):dir(ltr),
combobox.linked button:nth-child(2):dir(ltr) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

dropdown.linked button:nth-child(2):dir(rtl),
combobox.linked button:nth-child(2):dir(rtl) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

dropdown > .linked:not(.vertical) > entry:not(:only-child),
combobox > .linked:not(.vertical) > entry:not(:only-child) {
  border-radius: 6px;
}

dropdown > .linked:not(.vertical) > entry:not(:only-child):first-child,
combobox > .linked:not(.vertical) > entry:not(:only-child):first-child {
  margin-right: -36px;
  padding-right: 36px;
}

dropdown > .linked:not(.vertical) > entry:not(:only-child):last-child,
combobox > .linked:not(.vertical) > entry:not(:only-child):last-child {
  margin-left: -36px;
  padding-left: 36px;
}

dropdown > .linked:not(.vertical) > button:not(:only-child),
combobox > .linked:not(.vertical) > button:not(:only-child) {
  min-height: 16px;
  min-width: 16px;
  margin: 6px;
  padding: 4px;
  border-radius: 6px;
}

.linked:not(.vertical) > combobox:not(:first-child) > box > button.combo {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.linked:not(.vertical) > combobox:not(:last-child) > box > button.combo {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.linked.vertical > combobox:not(:first-child) > box > button.combo {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.linked.vertical > combobox:not(:last-child) > box > button.combo {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

button.combo:only-child {
  border-radius: 6px;
  font-weight: normal;
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: inset 0 0 0 2px transparent;
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.87);
}

button.combo:only-child:focus {
  box-shadow: inset 0 0 0 2px alpha(currentColor, 0.08);
  color: rgba(0, 0, 0, 0.87);
}

button.combo:only-child:hover {
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08);
  color: rgba(0, 0, 0, 0.87);
}

button.combo:only-child:active {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12);
  color: rgba(0, 0, 0, 0.87);
}

button.combo:only-child:checked {
  background-color: alpha(currentColor, 0.1);
  color: rgba(0, 0, 0, 0.87);
}

button.combo:only-child:disabled {
  box-shadow: none;
  background-color: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.38);
}

/************
 * Toolbars *
 ************/
.toolbar,
toolbar {
  padding: 3px 6px;
  background-color: #FFFFFF;
  border-spacing: 6px;
}

.osd .toolbar, .osd toolbar {
  background-color: transparent;
}

.app-notification, .toolbar.osd,
toolbar.osd {
  transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1);
  padding: 6px;
  border-radius: 6px;
  box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15);
  background-color: #FFFFFF;
}

.app-notification:backdrop, .toolbar.osd:backdrop,
toolbar.osd:backdrop {
  box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15);
}

.left.app-notification, .right.app-notification, .top.app-notification, .bottom.app-notification, .toolbar.osd.left, .toolbar.osd.right, .toolbar.osd.top, .toolbar.osd.bottom,
toolbar.osd.left,
toolbar.osd.right,
toolbar.osd.top,
toolbar.osd.bottom {
  border-radius: 0;
}

.bottom.app-notification, .toolbar.osd.bottom,
toolbar.osd.bottom {
  box-shadow: none;
  background-color: transparent;
  background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.4));
}

.toolbar.horizontal > separator,
toolbar.horizontal > separator {
  margin: 2px;
}

.toolbar.vertical > separator,
toolbar.vertical > separator {
  margin: 2px;
}

.toolbar:not(.inline-toolbar):not(.osd) scale,
.toolbar:not(.inline-toolbar):not(.osd) entry,
.toolbar:not(.inline-toolbar):not(.osd) spinbutton,
.toolbar:not(.inline-toolbar):not(.osd) button,
toolbar:not(.inline-toolbar):not(.osd) scale,
toolbar:not(.inline-toolbar):not(.osd) entry,
toolbar:not(.inline-toolbar):not(.osd) spinbutton,
toolbar:not(.inline-toolbar):not(.osd) button {
  margin: 2px;
}

.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child),
.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child),
.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child),
toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:first-child),
toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:first-child),
toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:first-child) {
  margin-left: 0;
}

.toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child),
.toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child),
.toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child),
toolbar:not(.inline-toolbar):not(.osd) .linked entry:not(:last-child),
toolbar:not(.inline-toolbar):not(.osd) .linked spinbutton:not(:last-child),
toolbar:not(.inline-toolbar):not(.osd) .linked button:not(:last-child) {
  margin-right: 0;
}

.toolbar:not(.inline-toolbar):not(.osd) spinbutton entry,
.toolbar:not(.inline-toolbar):not(.osd) spinbutton button,
toolbar:not(.inline-toolbar):not(.osd) spinbutton entry,
toolbar:not(.inline-toolbar):not(.osd) spinbutton button {
  margin: 0;
}

.toolbar:not(.inline-toolbar):not(.osd) switch,
toolbar:not(.inline-toolbar):not(.osd) switch {
  margin: 8px 2px;
}

.toolbar button {
  margin: 1px;
  border-radius: 3px;
}

searchbar > revealer > box {
  padding: 6px;
  border-spacing: 6px;
  border-style: solid;
  border-width: 0 0 1px;
  border-color: rgba(0, 0, 0, 0.12);
  background-color: #FFFFFF;
  background-clip: border-box;
}

/***************
 * Header bars *
 ***************/
headerbar button:not(.suggested-action):not(.destructive-action) {
  color: rgba(255, 255, 255, 0.7);
  border: none;
}

headerbar .linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) {
  border-radius: 6px;
}

headerbar button:focus:not(.suggested-action):not(.destructive-action), headerbar button:hover:not(.suggested-action):not(.destructive-action), headerbar button:active:not(.suggested-action):not(.destructive-action), headerbar button:checked:not(.suggested-action):not(.destructive-action) {
  color: white;
}

headerbar button:disabled:not(.suggested-action):not(.destructive-action) {
  color: rgba(255, 255, 255, 0.3);
}

headerbar button:checked:disabled:not(.suggested-action):not(.destructive-action) {
  background-color: transparent;
  color: rgba(255, 255, 255, 0.5);
}

headerbar button:backdrop:not(.suggested-action):not(.destructive-action) {
  color: rgba(255, 255, 255, 0.5);
}

headerbar button:backdrop:focus:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:hover:not(.suggested-action):not(.destructive-action), headerbar button:backdrop:active:not(.suggested-action):not(.destructive-action) {
  color: rgba(255, 255, 255, 0.7);
}

headerbar button:backdrop:disabled:not(.suggested-action):not(.destructive-action) {
  color: rgba(255, 255, 255, 0.3);
}

headerbar button:backdrop:checked:not(.suggested-action):not(.destructive-action) {
  color: rgba(255, 255, 255, 0.7);
}

headerbar button:backdrop:checked:disabled:not(.suggested-action):not(.destructive-action) {
  color: rgba(255, 255, 255, 0.3);
}

headerbar entry {
  background-color: rgba(255, 255, 255, 0.04);
  color: white;
}

headerbar entry:disabled {
  background-color: rgba(255, 255, 255, 0.04);
  color: rgba(255, 255, 255, 0.5);
}

headerbar entry image {
  color: rgba(255, 255, 255, 0.7);
}

headerbar entry image:hover, headerbar entry image:active {
  color: white;
}

headerbar entry image:disabled {
  color: rgba(255, 255, 255, 0.5);
}

headerbar {
  transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), color 0ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: inset 0 -1px rgba(0, 0, 0, 0.12);
  background-color: #242424;
  color: white;
  min-height: 48px;
  padding: 0 6px;
}

headerbar:disabled {
  color: rgba(255, 255, 255, 0.5);
}

headerbar:backdrop {
  background-color: #2C2C2C;
  color: rgba(255, 255, 255, 0.7);
}

headerbar:backdrop:disabled {
  color: rgba(255, 255, 255, 0.3);
}

headerbar .title {
  padding: 0 12px;
  font-weight: bold;
}

headerbar .subtitle {
  padding: 0 12px;
  font-size: smaller;
}

headerbar .subtitle,
headerbar .dim-label {
  transition: color 0ms cubic-bezier(0, 0, 0.2, 1);
  color: rgba(255, 255, 255, 0.7);
}

headerbar .subtitle:backdrop,
headerbar .dim-label:backdrop {
  color: rgba(255, 255, 255, 0.5);
}

headerbar .titlebar {
  background-color: transparent;
  box-shadow: none;
}

headerbar headerbar + separator {
  background-color: rgba(255, 255, 255, 0.12);
}

box.vertical headerbar {
  background-color: #242424;
}

headerbar > windowhandle > box {
  padding: 0 3px;
}

headerbar > windowhandle > box,
headerbar > windowhandle > box > box.start,
headerbar > windowhandle > box > box.end {
  border-spacing: 6px;
}

headerbar entry,
headerbar spinbutton,
headerbar button,
headerbar stackswitcher {
  margin-top: 6px;
  margin-bottom: 6px;
}

headerbar menubutton.popup {
  margin-top: 0;
  margin-bottom: 0;
}

headerbar separator:not(.sidebar) {
  margin-top: 12px;
  margin-bottom: 12px;
  background-color: rgba(255, 255, 255, 0.12);
}

headerbar switch {
  margin-top: 12px;
  margin-bottom: 12px;
}

headerbar spinbutton button {
  margin-top: 0;
  margin-bottom: 0;
}

headerbar .entry-tag {
  margin-top: 5px;
  margin-bottom: 5px;
}

headerbar .linked:not(.vertical) > entry:not(:only-child) {
  border-radius: 6px;
}

headerbar button.suggested-action:disabled, headerbar button.destructive-action:disabled {
  background-color: rgba(255, 255, 255, 0.04);
  color: rgba(255, 255, 255, 0.5);
}

headerbar stackswitcher {
  background-color: rgba(255, 255, 255, 0.04);
}

headerbar stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked {
  background-color: rgba(255, 255, 255, 0.15);
  color: white;
}

headerbar.selection-mode {
  transition: background-color 0.1ms 0ms, color 0ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.2);
  background-color: #3c84f7;
  color: white;
}

headerbar.selection-mode:backdrop {
  color: rgba(255, 255, 255, 0.7);
}

headerbar.selection-mode .subtitle:link {
  color: white;
}

headerbar.selection-mode .selection-menu {
  padding-left: 16px;
  padding-right: 16px;
}

headerbar.selection-mode .selection-menu .arrow {
  -gtk-icon-source: -gtk-icontheme("pan-down-symbolic");
}

headerbar .selection-mode {
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.2);
  background-color: #3c84f7;
}

headerbar.default-decoration {
  min-height: 24px;
  padding: 6px;
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.1);
}

headerbar.default-decoration windowcontrols button,
headerbar.default-decoration windowcontrols menubutton {
  min-width: 16px;
  min-height: 16px;
  margin: 0;
  padding: 0;
}

headerbar.default-decoration windowcontrols menubutton button {
  min-height: 20px;
  min-width: 20px;
  margin: 0;
  padding: 4px;
}

.solid-csd headerbar:dir(rtl), .solid-csd headerbar:dir(ltr) {
  border-radius: 0;
  box-shadow: none;
}

window.devel headerbar.titlebar {
  background: #242424 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, linear-gradient(to right, transparent 65%, rgba(60, 132, 247, 0.2)), linear-gradient(to top, #1c1c1c, #242424 3px, #333333);
}

window.devel headerbar.titlebar:backdrop {
  background: #242424 cross-fade(10% -gtk-icontheme("system-run-symbolic"), image(transparent)) 90% 0/256px 256px no-repeat, image(#242424);
  /* background-color would flash */
}

viewswitcher {
  margin: 0;
}

viewswitcher.wide {
  border-spacing: 3px;
}

viewswitcher.narrow button.toggle {
  border-radius: 0;
  margin: 0;
}

viewswitcher.narrow button.toggle:focus-within, viewswitcher.narrow button.toggle:focus {
  box-shadow: none;
}

viewswitcher button.toggle {
  font-weight: bold;
  padding: 0;
}

viewswitcher button.toggle > stack > box.narrow {
  font-size: 0.75rem;
  padding-top: 6px;
  padding-bottom: 4px;
  border-spacing: 4px;
}

viewswitcher button.toggle > stack > box.narrow > stack > label {
  padding-left: 6px;
  padding-right: 6px;
}

viewswitcher button.toggle > stack > box.wide {
  padding: 2px 12px;
  border-spacing: 6px;
}

viewswitcherbar actionbar > revealer > box {
  padding: 0;
}

viewswitchertitle viewswitcher {
  margin-left: 12px;
  margin-right: 12px;
}

indicatorbin > indicator, indicatorbin > mask {
  min-width: 6px;
  min-height: 6px;
  border-radius: 9999px;
}

indicatorbin > indicator {
  margin: 1px;
  background-color: alpha(currentColor, 0.4);
}

indicatorbin > indicator > label {
  font-size: 0.6rem;
  font-weight: bold;
  padding: 1px 4px;
  color: white;
}

indicatorbin > mask {
  padding: 1px;
  background: black;
}

indicatorbin.needs-attention > indicator {
  background-color: #3c84f7;
}

indicatorbin.needs-attention > indicator > label {
  color: white;
}

/************
 * Pathbars *
 ************/

pathbar > button {
  padding-left: 6px;
  padding-right: 6px;
  border-radius: 6px;
  background-color: alpha(currentColor, 0.08);
}


pathbar > button:disabled {
  background-color: alpha(currentColor, 0.05);
}


pathbar > button:checked {
  background-color: alpha(currentColor, 0.16);
  color: rgba(0, 0, 0, 0.87);
}


pathbar > button label:not(:only-child):first-child {
  margin-left: 0;
}


pathbar > button label:not(:only-child):last-child {
  margin-right: 0;
}


pathbar > button.text-button {
  min-width: 0;
}


pathbar > button.slider-button {
  padding-left: 4px;
  padding-right: 4px;
}

/**************
 * Tree Views *
 **************/
columnview.view,
treeview.view {
  border-left-color: #e0e0e0;
  border-top-color: #e0e0e0;
}

columnview.view:hover, columnview.view:selected,
treeview.view:hover,
treeview.view:selected {
  border-radius: 0;
  box-shadow: none;
}

columnview.view.separator,
treeview.view.separator {
  min-height: 5px;
  color: rgba(0, 0, 0, 0.12);
}

columnview.view:drop(active),
treeview.view:drop(active) {
  box-shadow: none;
}

columnview.view:drop(active).after,
treeview.view:drop(active).after {
  border-top-style: none;
}

columnview.view:drop(active).before,
treeview.view:drop(active).before {
  border-bottom-style: none;
}

columnview.view > dndtarget:drop(active),
treeview.view > dndtarget:drop(active) {
  border-style: solid none;
  border-width: 1px;
  border-color: alpha(currentColor, 0.06);
}

columnview.view > dndtarget:drop(active).after,
treeview.view > dndtarget:drop(active).after {
  border-top-style: none;
}

columnview.view > dndtarget:drop(active).before,
treeview.view > dndtarget:drop(active).before {
  border-bottom-style: none;
}

columnview.view.expander,
treeview.view.expander {
  min-width: 16px;
  min-height: 16px;
  -gtk-icon-source: -gtk-icontheme("pan-down-symbolic");
  color: rgba(0, 0, 0, 0.6);
}

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

columnview.view.expander:hover,
treeview.view.expander:hover {
  color: rgba(0, 0, 0, 0.87);
}

columnview.view.expander:selected,
treeview.view.expander:selected {
  color: rgba(0, 0, 0, 0.87);
}

columnview.view.expander:selected:hover,
treeview.view.expander:selected:hover {
  color: rgba(0, 0, 0, 0.87);
}

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

columnview.view.expander:disabled,
treeview.view.expander:disabled {
  color: rgba(0, 0, 0, 0.26);
}

columnview.view.progressbar,
treeview.view.progressbar {
  border-bottom: 6px solid #3c84f7;
  box-shadow: none;
  background-color: transparent;
  background-image: none;
}

columnview.view.progressbar:selected:hover,
treeview.view.progressbar:selected:hover {
  box-shadow: none;
}

columnview.view.trough,
treeview.view.trough {
  border-bottom: 6px solid rgba(0, 0, 0, 0.12);
  box-shadow: none;
  background-color: transparent;
  background-image: none;
}

columnview.view.trough:selected:hover,
treeview.view.trough:selected:hover {
  box-shadow: none;
}

columnview.view > header > button,
treeview.view > header > button {
  padding: 2px 6px;
  border-style: none solid solid none;
  border-width: 1px;
  border-color: rgba(0, 0, 0, 0.12);
  border-radius: 0;
  background-clip: border-box;
}

columnview.view > header > button:not(:focus):not(:hover):not(:active),
treeview.view > header > button:not(:focus):not(:hover):not(:active) {
  color: rgba(0, 0, 0, 0.6);
}

columnview.view > header > button, columnview.view > header > button:disabled,
treeview.view > header > button,
treeview.view > header > button:disabled {
  background-color: #FFFFFF;
}

columnview.view > header > button:last-child,
treeview.view > header > button:last-child {
  border-right-style: none;
}

columnview.view button.dnd,
columnview.view header.button.dnd,
treeview.view button.dnd,
treeview.view header.button.dnd {
  padding: 2px 6px;
  border-style: none solid solid;
  border-width: 1px;
  border-color: rgba(0, 0, 0, 0.12);
  border-radius: 0;
  box-shadow: none;
  background-color: #FFFFFF;
  background-clip: border-box;
  color: #3c84f7;
}

columnview.view acceleditor > label,
treeview.view acceleditor > label {
  background-color: #3c84f7;
}

/*********
 * Menus *
 *********/
menubar {
  padding: 0;
  background-color: #242424;
  color: white;
}

menubar:backdrop {
  background-color: #2C2C2C;
  color: rgba(255, 255, 255, 0.7);
}

.csd menubar {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
}

menubar > item {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  min-height: 20px;
  padding: 4px 8px;
  color: rgba(255, 255, 255, 0.7);
}

menubar > item:selected {
  transition: none;
  background-color: alpha(currentColor, 0.1);
  color: white;
}

menubar > item:disabled {
  color: rgba(255, 255, 255, 0.3);
}

menubar > item label:disabled {
  color: inherit;
}

menubar > item popover.menu popover.menu {
  margin-left: 9px;
}

menubar > item popover.menu.background popover.menu.background > contents {
  margin: 0;
  border-radius: 12px;
}

/**********************
 * Popover Base Menus *
 **********************/
popover.menu box.inline-buttons {
  padding: 0 6px;
}

popover.menu box.inline-buttons button.image-button.model {
  min-height: 28px;
  min-width: 28px;
  padding: 0;
  border: none;
  outline: none;
  transition: none;
}

popover.menu box.inline-buttons button.image-button.model:selected {
  background: image(alpha(currentColor, 0.06));
}

popover.menu box.circular-buttons {
  padding: 6px;
}

popover.menu box.circular-buttons button.circular.image-button.model {
  padding: 6px;
}

popover.menu box.circular-buttons button.circular.image-button.model:focus {
  background-color: alpha(currentColor, 0.06);
}

popover.menu.background separator {
  margin: 6px 0;
}

popover.menu arrow.left,
popover.menu radio.left,
popover.menu check.left {
  margin-left: 0;
  margin-right: 0;
}

popover.menu arrow.right,
popover.menu radio.right,
popover.menu check.right {
  margin-left: 0;
  margin-right: 0;
}

popover.menu modelbutton {
  transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1);
  min-height: 22px;
  min-width: 56px;
  padding: 3px 9px;
  color: rgba(0, 0, 0, 0.87);
  font: initial;
  text-shadow: none;
  box-shadow: none;
  background: none;
}

popover.menu modelbutton:hover {
  transition: none;
  background-color: alpha(currentColor, 0.08);
}

popover.menu modelbutton:disabled {
  color: rgba(0, 0, 0, 0.38);
}

popover.menu label.title {
  font-weight: bold;
  padding: 4px 26px;
}

/************
 * Popovers *
 ************/
popover.background {
  font: initial;
}

popover.background, popover.background:backdrop {
  background-color: transparent;
}

popover.background > arrow,
popover.background > contents {
  transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1);
  padding: 6px;
  background-color: #FFFFFF;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  background-clip: border-box;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.12), 0 2px 3px -1px rgba(0, 0, 0, 0.05), 0 4px 6px 0 rgba(0, 0, 0, 0.06), 0 1px 10px 0 rgba(0, 0, 0, 0.05);
}

popover.background > arrow:backdrop,
popover.background > contents:backdrop {
  box-shadow: 0 3px 2px -2px rgba(0, 0, 0, 0.05), 0 2px 3px -1px rgba(0, 0, 0, 0.06), 0 1px 4px 0 rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.12);
}

popover.background > arrow {
  border: 1px solid rgba(0, 0, 0, 0.12);
}

popover.background > contents {
  border: none;
}

popover.background > contents > list,
popover.background > contents > .view,
popover.background > contents > toolbar {
  border-style: none;
  box-shadow: none;
  background-color: transparent;
}

popover.background > contents separator {
  background-color: rgba(0, 0, 0, 0.12);
  margin: 3px 0;
}

popover.background > contents list separator {
  margin: 0;
}

popover.background .view:not(:selected),
popover.background toolbar {
  background-color: #FFFFFF;
}

popover.background .linked > button:not(.radio) {
  background-color: transparent;
  box-shadow: none;
  border-radius: 6px;
}

s
popover.background .linked > button:not(.radio):first-child {
  border-radius: 6px;
}

popover.background .linked > button:not(.radio):last-child {
  border-radius: 6px;
}

popover.background .linked > button:not(.radio):only-child {
  border-radius: 6px;
}

popover.background.menu button,
popover.background button.model {
  min-height: 32px;
  padding: 0 8px;
  border-radius: 6px;
}

.osd popover.background, popover.background.touch-selection, popover.background.magnifier {
  background-color: transparent;
}

.osd popover.background > arrow,
.osd popover.background > contents, popover.background.touch-selection > arrow,
popover.background.touch-selection > contents, popover.background.magnifier > arrow,
popover.background.magnifier > contents {
  border: none;
  box-shadow: none;
}

magnifier {
  background-color: #FFFFFF;
}

/*************
 * Notebooks *
 *************/
tabbar tab, notebook > header tab {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms, background-image 0ms;
  min-height: 24px;
  min-width: 24px;
  padding: 3px 12px;
  border: none;
  outline: none;
  background-clip: padding-box;
  color: rgba(0, 0, 0, 0.6);
  font-weight: 500;
  border-radius: 6px;
  background-image: none;
  background-color: transparent;
}

tabbar tab:hover, notebook > header tab:hover {
  background-color: rgba(0, 0, 0, 0.04);
  background-image: none;
  color: rgba(0, 0, 0, 0.87);
}

tabbar tab:disabled, notebook > header tab:disabled {
  color: rgba(0, 0, 0, 0.26);
}

tabbar tab:checked, notebook > header tab:checked {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  background-color: white;
  color: rgba(0, 0, 0, 0.87);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
  background-image: none;
}

tabbar tab:checked:disabled, notebook > header tab:checked:disabled {
  color: rgba(0, 0, 0, 0.38);
}

frame > paned > notebook > header, notebook.frame > header {
  background-color: rgba(0, 0, 0, 0.04);
}

notebook, notebook.frame {
  background-color: #FFFFFF;
  border-radius: 12px;
}

notebook.frame frame > border {
  border: none;
  border-radius: 6px;
}

notebook.frame frame > list row.activatable {
  border-radius: 6px;
}

notebook > header {
  border: none;
  background-color: rgba(0, 0, 0, 0.04);
  padding: 3px;
  margin: 3px;
  border-radius: 9px;
}

notebook > header.top > tabs > arrow {
  border-top-style: none;
}

notebook > header.bottom > tabs > arrow {
  border-bottom-style: none;
}

notebook > header.top > tabs > arrow, notebook > header.bottom > tabs > arrow {
  padding-left: 4px;
  padding-right: 4px;
}

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

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

notebook > header.left > tabs > arrow {
  border-left-style: none;
}

notebook > header.right > tabs > arrow {
  border-right-style: none;
}

notebook > header.left > tabs > arrow, notebook > header.right > tabs > arrow {
  padding-top: 4px;
  padding-bottom: 4px;
}

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

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

notebook > header > tabs > arrow {
  min-height: 16px;
  min-width: 16px;
  border-radius: 6px;
}

notebook > header tab > box {
  transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1);
  margin: -6px -12px;
  padding: 6px 12px;
}

notebook > header tab > box:drop(active) {
  background-color: rgba(0, 0, 0, 0.12);
  color: rgba(0, 0, 0, 0.87);
}

notebook > header tab button.flat:last-child {
  margin-left: 6px;
  margin-right: -6px;
}

notebook > header tab button.flat:first-child {
  margin-left: -6px;
  margin-right: 6px;
}

notebook > header tab button.close-button {
  min-width: 24px;
  min-height: 24px;
}

notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child {
  margin-left: 0;
}

notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child {
  margin-right: 0;
}

notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page {
  border-style: solid;
}

notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child {
  margin-top: 0;
}

notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child {
  margin-bottom: 0;
}

notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page {
  border-style: solid;
}

notebook > header > menubutton > button.image-button {
  padding: 3px;
  min-width: 24px;
  min-height: 24px;
  margin-left: 3px;
}

notebook > stack:not(:only-child) {
  background-color: transparent;
  border-radius: 6px;
}

tabbar .box {
  min-height: 36px;
  border-bottom: none;
  background: none;
}

tabbar scrolledwindow.pinned undershoot {
  border: 0 solid rgba(0, 0, 0, 0.12);
}

tabbar scrolledwindow.pinned:dir(rtl) undershoot.left {
  border-left-width: 1px;
}

tabbar scrolledwindow.pinned:dir(ltr) undershoot.right {
  border-right-width: 1px;
}

tabbar scrolledwindow.pinned tabbox > background:dir(ltr) {
  box-shadow: inset -1px 0 rgba(0, 0, 0, 0.12);
}

tabbar scrolledwindow.pinned tabbox > background:dir(rtl) {
  box-shadow: inset 1px 0 rgba(0, 0, 0, 0.12);
}

tabbar undershoot {
  transition: background 150ms ease-in-out;
}

tabbar undershoot.left {
  background: linear-gradient(to right, #FFFFFF, rgba(0, 0, 0, 0) 20px);
}

tabbar undershoot.right {
  background: linear-gradient(to left, #FFFFFF, rgba(0, 0, 0, 0) 20px);
}

tabbar .needs-attention-left undershoot.left {
  background: linear-gradient(to right, alpha(#3c84f7, 0.5), alpha(#3c84f7, 0.3) 1px, alpha(#3c84f7, 0) 20px);
}

tabbar .needs-attention-right undershoot.right {
  background: linear-gradient(to left, alpha(#3c84f7, 0.5), alpha(#3c84f7, 0.3) 1px, alpha(#3c84f7, 0) 20px);
}

tabbar tabbox {
  background-color: rgba(0, 0, 0, 0.04);
  background-image: none;
  padding: 3px;
  margin: 3px;
  border-radius: 9px;
}

tabbar tabbox > background {
  background: none;
}

tabbar tab.needs-attention {
  background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#3c84f7, 0.4) 10%, alpha(#3c84f7, 0) 30%);
}

tabbar tab.needs-attention:hover {
  background-image: image(alpha(currentColor, 0.03)), radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#3c84f7, 0.4) 10%, alpha(#3c84f7, 0) 30%);
}

tabbar .start-action,
tabbar .end-action {
  background-color: rgba(0, 0, 0, 0.04);
  background-clip: padding-box;
  border-color: rgba(0, 0, 0, 0.12);
  border-style: solid;
  transition: background 150ms ease-in-out;
}

tabbar .start-action button,
tabbar .end-action button {
  border: none;
  border-radius: 0;
}

tabbar .start-action:dir(ltr),
tabbar .end-action:dir(rtl) {
  border-right-width: 1px;
}

tabbar .start-action:dir(rtl),
tabbar .end-action:dir(ltr) {
  border-left-width: 1px;
}

tabbar:not(.inline) scrolledwindow.pinned undershoot {
  border-color: rgba(0, 0, 0, 0.12);
}

tabbar:not(.inline) undershoot.left {
  background: linear-gradient(to right, #242424, rgba(0, 0, 0, 0) 20px);
}

tabbar:not(.inline) undershoot.right {
  background: linear-gradient(to left, #242424, rgba(0, 0, 0, 0) 20px);
}

tabbar:not(.inline) .needs-attention-left undershoot.left {
  background: linear-gradient(to right, alpha(#3c84f7, 0.5), alpha(#3c84f7, 0.3) 1px, alpha(#3c84f7, 0) 20px);
}

tabbar:not(.inline) .needs-attention-right undershoot.right {
  background: linear-gradient(to left, alpha(#3c84f7, 0.5), alpha(#3c84f7, 0.3) 1px, alpha(#3c84f7, 0) 20px);
}

tabbar:not(.inline) tabbox > background {
  background-color: #242424;
}

tabbar:not(.inline) .start-action,
tabbar:not(.inline) .end-action {
  background-color: alpha(#242424, 0.6);
  border-color: rgba(0, 0, 0, 0.12);
}

tabbar:not(.inline):backdrop .box {
  background-color: #2C2C2C;
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
}

dnd tab {
  min-height: 24px;
  background-color: #242424;
  color: white;
  box-shadow: 0 1px 5px 1px rgba(0, 0, 0, 0.09), 0 2px 14px 3px rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.05);
  outline: 1px solid rgba(0, 0, 0, 0.12);
  outline-offset: -1px;
  margin: 24px;
}

dnd tab.needs-attention {
  background-image: radial-gradient(ellipse at bottom, rgba(255, 255, 255, 0.8), alpha(#3c84f7, 0.4) 10%, alpha(#3c84f7, 0) 30%);
}

tabbar tab,
dnd tab {
  padding: 6px;
}

tabbar tab button.image-button,
dnd tab button.image-button {
  padding: 0;
  margin: 0;
  min-width: 24px;
  min-height: 24px;
  border-radius: 9999px;
}

tabview:drop(active),
tabbox:drop(active) {
  box-shadow: none;
}

/**************
 * Scrollbars *
 **************/
scrollbar {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  background-color: #FFFFFF;
  box-shadow: none;
  outline: none;
}

scrollbar.top {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

scrollbar.bottom {
  border-top: 1px solid rgba(0, 0, 0, 0.12);
}

scrollbar.left {
  border-right: 1px solid rgba(0, 0, 0, 0.12);
}

scrollbar.right {
  border-left: 1px solid rgba(0, 0, 0, 0.12);
}

scrollbar > range > trough > slider {
  transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1);
  min-width: 8px;
  min-height: 8px;
  border: 4px solid transparent;
  border-radius: 9999px;
  background-clip: padding-box;
  background-color: rgba(0, 0, 0, 0.38);
  box-shadow: none;
  outline: none;
}

scrollbar > range > trough > slider:hover {
  background-color: rgba(0, 0, 0, 0.6);
}

scrollbar > range > trough > slider:active {
  background-color: rgba(0, 0, 0, 0.87);
}

scrollbar > range > trough > slider:disabled {
  background-color: rgba(0, 0, 0, 0.26);
}

scrollbar > range.fine-tune > trough > slider {
  min-width: 4px;
  min-height: 4px;
}

scrollbar > range.fine-tune.horizontal > trough > slider {
  margin: 2px 0;
}

scrollbar > range.fine-tune.vertical > trough > slider {
  margin: 0 2px;
}

scrollbar.overlay-indicator:not(.fine-tune) > range > trough > slider {
  transition-property: background-color, min-height, min-width;
}

scrollbar.overlay-indicator:not(.dragging):not(.hovering) {
  border-color: transparent;
  background-color: transparent;
}

scrollbar.overlay-indicator:not(.dragging):not(.hovering) > range > trough > slider {
  min-width: 4px;
  min-height: 4px;
  margin: 3px;
  border: 1px solid rgba(255, 255, 255, 0.3);
}

scrollbar.overlay-indicator:not(.dragging):not(.hovering) button {
  min-width: 4px;
  min-height: 4px;
  margin: 3px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 9999px;
  background-color: rgba(0, 0, 0, 0.38);
  background-clip: padding-box;
  -gtk-icon-source: none;
}

scrollbar.overlay-indicator:not(.dragging):not(.hovering) button:disabled {
  background-color: rgba(0, 0, 0, 0.26);
}

scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal > range > trough > slider {
  min-width: 24px;
}

scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button {
  min-width: 8px;
}

scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical > range > trough > slider {
  min-height: 24px;
}

scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button {
  min-height: 8px;
}

scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering {
  background-color: rgba(255, 255, 255, 0.9);
}

scrollbar.horizontal > range > trough > slider {
  min-width: 24px;
}

scrollbar.vertical > range > trough > slider {
  min-height: 24px;
}

scrollbar button {
  min-width: 16px;
  min-height: 16px;
  padding: 0;
  border-radius: 0;
}

scrollbar.vertical button.down {
  -gtk-icon-source: -gtk-icontheme("pan-down-symbolic");
}

scrollbar.vertical button.up {
  -gtk-icon-source: -gtk-icontheme("pan-up-symbolic");
}

scrollbar.horizontal button.down {
  -gtk-icon-source: -gtk-icontheme("pan-end-symbolic");
}

scrollbar.horizontal button.up {
  -gtk-icon-source: -gtk-icontheme("pan-start-symbolic");
}

/**********
 * Switch *
 **********/
switch {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  margin: 6px 0;
  padding: 0;
  border: none;
  border-radius: 9999px;
  background-color: rgba(0, 0, 0, 0.38);
  background-clip: border-box;
  font-size: 0;
  color: transparent;
}

switch:checked {
  background-color: #3c84f7;
}

switch:disabled {
  opacity: 0.5;
}

switch image {
  margin: -8px;
}

switch > slider {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  min-width: 20px;
  min-height: 20px;
  margin: 1px;
  border-radius: 9999px;
  outline: none;
  box-shadow: none;
  background-color: white;
  border: none;
}

switch:focus slider, switch:hover slider, switch:focus:hover slider {
  box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.12);
}

/*************************
 * Check and Radio items *
 *************************/
.view.content-view.check:not(list),
.content-view .tile check:not(list) {
  min-height: 40px;
  min-width: 40px;
  margin: 0;
  padding: 0;
  box-shadow: none;
  background-color: transparent;
  background-image: none;
}

.view.content-view.check:not(list):hover, .view.content-view.check:not(list):active,
.content-view .tile check:not(list):hover,
.content-view .tile check:not(list):active {
  box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.12);
}

.view.content-view.check:not(list),
.content-view .tile check:not(list) {
  -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-unchecked.png"), url("assets/selectionmode-checkbox-unchecked@2.png"));
}

.view.content-view.check:not(list):checked,
.content-view .tile check:not(list):checked {
  -gtk-icon-source: -gtk-scaled(url("assets/selectionmode-checkbox-checked.png"), url("assets/selectionmode-checkbox-checked@2.png"));
}

checkbutton,
radiobutton {
  outline: none;
  border-spacing: 3px;
}

check,
radio {
  min-height: 20px;
  min-width: 20px;
  margin: 3px;
  padding: 0;
  border-radius: 9999px;
  color: transparent;
  background-color: rgba(0, 0, 0, 0.12);
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms cubic-bezier(0, 0, 0.2, 1);
}

check:hover,
radio:hover {
  box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.04);
  background-color: rgba(0, 0, 0, 0.15);
}

check:active,
radio:active {
  box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.12);
  background-color: rgba(0, 0, 0, 0.2);
}

check:disabled,
radio:disabled {
  background-color: rgba(0, 0, 0, 0.04);
}

check:checked, check:indeterminate,
radio:checked,
radio:indeterminate {
  color: white;
  background-color: #3c84f7;
}

check:checked:hover, check:indeterminate:hover,
radio:checked:hover,
radio:indeterminate:hover {
  box-shadow: 0 0 0 6px rgba(60, 132, 247, 0.15);
  background-color: #6da3f9;
}

check:checked:active, check:indeterminate:active,
radio:checked:active,
radio:indeterminate:active {
  box-shadow: 0 0 0 6px rgba(60, 132, 247, 0.2);
  background-color: #3c84f7;
}

check:checked:disabled, check:indeterminate:disabled,
radio:checked:disabled,
radio:indeterminate:disabled {
  color: rgba(255, 255, 255, 0.7);
  background-color: rgba(60, 132, 247, 0.35);
}

popover modelbutton.flat check, popover modelbutton.flat check:focus, popover modelbutton.flat check:hover, popover modelbutton.flat check:focus:hover, popover modelbutton.flat check:active, popover modelbutton.flat check:disabled, popover modelbutton.flat radio, popover modelbutton.flat radio:focus, popover modelbutton.flat radio:hover, popover modelbutton.flat radio:focus:hover, popover modelbutton.flat radio:active, popover modelbutton.flat radio:disabled {
  transition: none;
  box-shadow: none;
  background-image: none;
}

popover modelbutton.flat check.left:dir(rtl), popover modelbutton.flat radio.left:dir(rtl) {
  margin-left: -3px;
  margin-right: 6px;
}

popover modelbutton.flat check.right:dir(ltr), popover modelbutton.flat radio.right:dir(ltr) {
  margin-left: 6px;
  margin-right: -3px;
}

popover.menu check, popover.menu radio {
  transition: none;
  margin: 0;
  padding: 0;
}

popover.menu check:dir(ltr), popover.menu radio:dir(ltr) {
  margin-right: 6px;
  margin-left: -3px;
}

popover.menu check:dir(rtl), popover.menu radio:dir(rtl) {
  margin-left: 6px;
  margin-right: -3px;
}

popover.menu check, popover.menu check:hover, popover.menu check:disabled, popover.menu check:checked:hover, popover.menu check:indeterminate:hover, popover.menu radio, popover.menu radio:hover, popover.menu radio:disabled, popover.menu radio:checked:hover, popover.menu radio:indeterminate:hover {
  box-shadow: none;
}


check {
  -gtk-icon-size: 20px;
}


check:checked {
  -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-checked-symbolic@2.svg")));
}


check:indeterminate {
  -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/checkbox-mixed-symbolic@2.svg")));
}


radio {
  -gtk-icon-size: 20px;
}


radio:checked {
  -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-checked-symbolic@2.svg")));
}


radio:indeterminate {
  -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/radio-mixed-symbolic@2.svg")));
}


popover.menu check {
  min-height: 16px;
  min-width: 16px;
  -gtk-icon-size: 16px;
}


popover.menu check:checked {
  -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-checked-symbolic@2.svg")));
}


popover.menu check:indeterminate {
  -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-checkbox-mixed-symbolic@2.svg")));
}


popover.menu radio {
  min-height: 16px;
  min-width: 16px;
  -gtk-icon-size: 16px;
}


popover.menu radio:checked {
  -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-checked-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-checked-symbolic@2.svg")));
}


popover.menu radio:indeterminate {
  -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic.svg")), -gtk-recolor(url("assets/scalable/small-radio-mixed-symbolic@2.svg")));
}

check:not(:checked):active {
  -gtk-icon-transform: rotate(90deg);
}

treeview.view radio, treeview.view check,
columnview.view radio,
columnview.view check {
  padding: 0;
  margin: 0;
  transition: none;
}

treeview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate), treeview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate),
columnview.view radio:not(:hover):not(:disabled):not(:checked):not(:indeterminate),
columnview.view check:not(:hover):not(:disabled):not(:checked):not(:indeterminate) {
  background-color: rgba(0, 0, 0, 0.12);
}

treeview.view radio, treeview.view radio:hover, treeview.view radio:disabled, treeview.view radio:checked:hover, treeview.view radio:indeterminate:hover, treeview.view check, treeview.view check:hover, treeview.view check:disabled, treeview.view check:checked:hover, treeview.view check:indeterminate:hover,
columnview.view radio,
columnview.view radio:hover,
columnview.view radio:disabled,
columnview.view radio:checked:hover,
columnview.view radio:indeterminate:hover,
columnview.view check,
columnview.view check:hover,
columnview.view check:disabled,
columnview.view check:checked:hover,
columnview.view check:indeterminate:hover {
  box-shadow: none;
}

treeview.view:hover check, treeview.view:hover radio, treeview.view:selected check, treeview.view:selected radio, treeview.view:focus check, treeview.view:focus radio, treeview.view:focus-within check, treeview.view:focus-within radio,
columnview.view:hover check,
columnview.view:hover radio,
columnview.view:selected check,
columnview.view:selected radio,
columnview.view:focus check,
columnview.view:focus radio,
columnview.view:focus-within check,
columnview.view:focus-within radio {
  box-shadow: none;
  background-color: transparent;
}

/************
 * GtkScale *
 ************/
scale {
  min-height: 2px;
  min-width: 2px;
}

scale.horizontal {
  padding: 17px 12px;
}

scale.vertical {
  padding: 12px 17px;
}

scale slider {
  min-height: 18px;
  min-width: 18px;
  margin: -8px;
}

scale.fine-tune.horizontal {
  min-height: 4px;
  padding-top: 16px;
  padding-bottom: 16px;
}

scale.fine-tune.vertical {
  min-width: 4px;
  padding-left: 16px;
  padding-right: 16px;
}

scale.fine-tune slider {
  margin: -7px;
}

scale trough {
  transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1);
  outline: none;
  background-color: rgba(0, 0, 0, 0.26);
}

scale trough:disabled {
  background-color: rgba(0, 0, 0, 0.12);
}

scale highlight {
  transition: background-image 0ms cubic-bezier(0, 0, 0.2, 1);
  background-image: image(#3c84f7);
}

scale highlight:disabled {
  background-color: #FFFFFF;
  background-image: image(rgba(0, 0, 0, 0.26));
}

scale fill {
  transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1);
  background-color: rgba(0, 0, 0, 0.26);
}

scale fill:disabled {
  background-color: transparent;
}

scale slider {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  border-radius: 9999px;
  color: #3c84f7;
  background-color: #FFFFFF;
  box-shadow: inset 0 0 0 2px #3c84f7;
}

scale slider:hover {
  box-shadow: inset 0 0 0 2px #3c84f7, 0 0 0 8px rgba(0, 0, 0, 0.12);
}

scale slider:active {
  box-shadow: inset 0 0 0 4px #3c84f7, 0 0 0 8px rgba(0, 0, 0, 0.12);
}

scale slider:disabled {
  box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.26);
}

scale marks,
scale value {
  color: rgba(0, 0, 0, 0.6);
}

scale indicator {
  background-color: rgba(0, 0, 0, 0.26);
  color: transparent;
}

scale.horizontal > marks.top {
  margin-bottom: 7px;
  margin-top: -15px;
}

scale.horizontal.fine-tune > marks.top {
  margin-bottom: 6px;
  margin-top: -14px;
}

scale.horizontal > marks.bottom {
  margin-top: 7px;
  margin-bottom: -15px;
}

scale.horizontal.fine-tune > marks.bottom {
  margin-top: 6px;
  margin-bottom: -14px;
}

scale.vertical > marks.top {
  margin-right: 7px;
  margin-left: -15px;
}

scale.vertical.fine-tune > marks.top {
  margin-right: 6px;
  margin-left: -14px;
}

scale.vertical > marks.bottom {
  margin-left: 7px;
  margin-right: -15px;
}

scale.vertical.fine-tune > marks.bottom {
  margin-left: 6px;
  margin-right: -14px;
}

scale.horizontal indicator {
  min-height: 8px;
  min-width: 1px;
}

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

scale.horizontal.marks-before:not(.marks-after) slider {
  transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1);
  min-height: 32px;
  min-width: 32px;
  margin: -15px;
  border-radius: 50%;
  background-size: auto, 1000% 1000%;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: transparent;
}

scale.horizontal.marks-before:not(.marks-after) slider, scale.horizontal.marks-before:not(.marks-after) slider:hover, scale.horizontal.marks-before:not(.marks-after) slider:active, scale.horizontal.marks-before:not(.marks-after) slider:disabled {
  box-shadow: none;
}

scale.horizontal.marks-before:not(.marks-after) slider:focus {
  background-color: alpha(currentColor, 0.08);
}

scale.horizontal.marks-before:not(.marks-after) slider:hover {
  background-color: alpha(currentColor, 0.08);
}

scale.horizontal.marks-before:not(.marks-after) slider:focus:hover {
  background-color: alpha(currentColor, 0.16);
}

scale.horizontal.marks-before:not(.marks-after) slider:active {
  background-size: auto, 0% 0%;
  background-color: alpha(currentColor, 0.08);
}

scale.horizontal.marks-before:not(.marks-after) slider {
  background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider.png"), url("assets/scale-horz-marks-before-slider@2.png"));
}

scale.horizontal.marks-before:not(.marks-after) slider:disabled {
  background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider-disabled.png"), url("assets/scale-horz-marks-before-slider-disabled@2.png"));
}

scale.horizontal.marks-before:not(.marks-after) slider:active {
  background-image: -gtk-scaled(url("assets/scale-horz-marks-before-slider.png"), url("assets/scale-horz-marks-before-slider@2.png"));
}

scale.horizontal.marks-after:not(.marks-before) slider {
  transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1);
  min-height: 32px;
  min-width: 32px;
  margin: -15px;
  border-radius: 50%;
  background-size: auto, 1000% 1000%;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: transparent;
}

scale.horizontal.marks-after:not(.marks-before) slider, scale.horizontal.marks-after:not(.marks-before) slider:hover, scale.horizontal.marks-after:not(.marks-before) slider:active, scale.horizontal.marks-after:not(.marks-before) slider:disabled {
  box-shadow: none;
}

scale.horizontal.marks-after:not(.marks-before) slider:focus {
  background-color: alpha(currentColor, 0.08);
}

scale.horizontal.marks-after:not(.marks-before) slider:hover {
  background-color: alpha(currentColor, 0.08);
}

scale.horizontal.marks-after:not(.marks-before) slider:focus:hover {
  background-color: alpha(currentColor, 0.16);
}

scale.horizontal.marks-after:not(.marks-before) slider:active {
  background-size: auto, 0% 0%;
  background-color: alpha(currentColor, 0.08);
}

scale.horizontal.marks-after:not(.marks-before) slider {
  background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider.png"), url("assets/scale-horz-marks-after-slider@2.png"));
}

scale.horizontal.marks-after:not(.marks-before) slider:disabled {
  background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider-disabled.png"), url("assets/scale-horz-marks-after-slider-disabled@2.png"));
}

scale.horizontal.marks-after:not(.marks-before) slider:active {
  background-image: -gtk-scaled(url("assets/scale-horz-marks-after-slider.png"), url("assets/scale-horz-marks-after-slider@2.png"));
}

scale.vertical.marks-before:not(.marks-after) slider {
  transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1);
  min-height: 32px;
  min-width: 32px;
  margin: -15px;
  border-radius: 50%;
  background-size: auto, 1000% 1000%;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: transparent;
}

scale.vertical.marks-before:not(.marks-after) slider, scale.vertical.marks-before:not(.marks-after) slider:hover, scale.vertical.marks-before:not(.marks-after) slider:active, scale.vertical.marks-before:not(.marks-after) slider:disabled {
  box-shadow: none;
}

scale.vertical.marks-before:not(.marks-after) slider:focus {
  background-color: alpha(currentColor, 0.08);
}

scale.vertical.marks-before:not(.marks-after) slider:hover {
  background-color: alpha(currentColor, 0.08);
}

scale.vertical.marks-before:not(.marks-after) slider:focus:hover {
  background-color: alpha(currentColor, 0.16);
}

scale.vertical.marks-before:not(.marks-after) slider:active {
  background-size: auto, 0% 0%;
  background-color: alpha(currentColor, 0.08);
}

scale.vertical.marks-before:not(.marks-after) slider {
  background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider.png"), url("assets/scale-vert-marks-before-slider@2.png"));
}

scale.vertical.marks-before:not(.marks-after) slider:disabled {
  background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider-disabled.png"), url("assets/scale-vert-marks-before-slider-disabled@2.png"));
}

scale.vertical.marks-before:not(.marks-after) slider:active {
  background-image: -gtk-scaled(url("assets/scale-vert-marks-before-slider.png"), url("assets/scale-vert-marks-before-slider@2.png"));
}

scale.vertical.marks-after:not(.marks-before) slider {
  transition: background-color 0ms cubic-bezier(0, 0, 0.2, 1), background-size 0ms cubic-bezier(0, 0, 0.2, 1), background-image 0ms cubic-bezier(0, 0, 0.2, 1);
  min-height: 32px;
  min-width: 32px;
  margin: -15px;
  border-radius: 50%;
  background-size: auto, 1000% 1000%;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: transparent;
}

scale.vertical.marks-after:not(.marks-before) slider, scale.vertical.marks-after:not(.marks-before) slider:hover, scale.vertical.marks-after:not(.marks-before) slider:active, scale.vertical.marks-after:not(.marks-before) slider:disabled {
  box-shadow: none;
}

scale.vertical.marks-after:not(.marks-before) slider:focus {
  background-color: alpha(currentColor, 0.08);
}

scale.vertical.marks-after:not(.marks-before) slider:hover {
  background-color: alpha(currentColor, 0.08);
}

scale.vertical.marks-after:not(.marks-before) slider:focus:hover {
  background-color: alpha(currentColor, 0.16);
}

scale.vertical.marks-after:not(.marks-before) slider:active {
  background-size: auto, 0% 0%;
  background-color: alpha(currentColor, 0.08);
}

scale.vertical.marks-after:not(.marks-before) slider {
  background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider.png"), url("assets/scale-vert-marks-after-slider@2.png"));
}

scale.vertical.marks-after:not(.marks-before) slider:disabled {
  background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider-disabled.png"), url("assets/scale-vert-marks-after-slider-disabled@2.png"));
}

scale.vertical.marks-after:not(.marks-before) slider:active {
  background-image: -gtk-scaled(url("assets/scale-vert-marks-after-slider.png"), url("assets/scale-vert-marks-after-slider@2.png"));
}

scale.color {
  min-height: 0;
  min-width: 0;
}

scale.color.horizontal {
  padding: 0 0 12px 0;
}

scale.color.horizontal slider:dir(ltr), scale.color.horizontal slider:dir(rtl) {
  margin-bottom: -13.5px;
  margin-top: 11.5px;
}

scale.color.vertical:dir(ltr) {
  padding: 0 0 0 12px;
}

scale.color.vertical:dir(ltr) slider {
  margin-left: -13.5px;
  margin-right: 11.5px;
}

scale.color.vertical:dir(rtl) {
  padding: 0 12px 0 0;
}

scale.color.vertical:dir(rtl) slider {
  margin-right: -13.5px;
  margin-left: 11.5px;
}

/*****************
 * Progress bars *
 *****************/
progressbar {
  color: rgba(0, 0, 0, 0.6);
  font-size: smaller;
}

progressbar.horizontal trough,
progressbar.horizontal progress {
  min-height: 6px;
}

progressbar.vertical trough,
progressbar.vertical progress {
  min-width: 6px;
}

progressbar trough {
  border-radius: 6px;
  background-color: rgba(0, 0, 0, 0.12);
}

progressbar progress {
  border-radius: 6px;
  background-color: #3c84f7;
}

progressbar.osd {
  min-width: 6px;
  min-height: 6px;
  background-color: transparent;
}

progressbar.osd trough {
  background-color: transparent;
}

progressbar.osd progress {
  background-color: #3c84f7;
}

progressbar trough.empty progress {
  all: unset;
}

/*************
 * Level Bar *
 *************/
levelbar.horizontal block {
  min-height: 6px;
}

levelbar.horizontal.discrete block {
  min-width: 36px;
}

levelbar.horizontal.discrete block:not(:last-child) {
  margin-right: 2px;
}

levelbar.vertical block {
  min-width: 6px;
}

levelbar.vertical.discrete block {
  min-height: 36px;
}

levelbar.vertical.discrete block:not(:last-child) {
  margin-bottom: 2px;
}

levelbar trough {
  border-radius: 6px;
}

levelbar block.low {
  background-color: #F4B400;
}

levelbar block.high, levelbar block:not(.empty) {
  background-color: #3c84f7;
}

levelbar block.full {
  background-color: #0F9D58;
}

levelbar block.empty {
  background-color: rgba(0, 0, 0, 0.12);
}

/****************
 * Print dialog *
*****************/
window.dialog.print drawing {
  color: rgba(0, 0, 0, 0.87);
  background: none;
  border: none;
  padding: 0;
}

window.dialog.print drawing paper {
  padding: 0;
  border: 1px solid rgba(0, 0, 0, 0.12);
  background-color: #FFFFFF;
  color: rgba(0, 0, 0, 0.87);
}

window.dialog.print .dialog-action-box {
  margin: 12px;
}

/**********
 * Frames *
 **********/
frame,
.frame {
  border: 1px solid rgba(0, 0, 0, 0.12);
}

frame > list,
.frame > list {
  border: none;
}

frame.view,
.frame.view {
  border-radius: 6px;
}

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

frame {
  border-radius: 6px;
}

frame > label {
  margin: 4px;
}

frame.flat > border, statusbar frame > border {
  border: none;
}

actionbar > revealer > box {
  padding: 6px;
  border-spacing: 6px;
  box-shadow: inset 0 1px rgba(0, 0, 0, 0.12);
  background-color: #FFFFFF;
  background-clip: border-box;
  border: none;
}

.background.csd box.vertical > actionbar > revealer > box {
  border-radius: 0 0 14px 14px;
}

statusbar {
  padding: 6px 18px;
}

scrolledwindow viewport.frame {
  border: none;
}

stack scrolledwindow.frame viewport.frame list {
  border: none;
}

overshoot.top {
  background-image: radial-gradient(farthest-side at top, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at top, alpha(currentColor, 0.05), alpha(currentColor, 0));
  background-size: 100% 3%, 100% 50%;
  background-repeat: no-repeat;
  background-position: top;
  background-color: transparent;
  border: none;
  box-shadow: none;
}

overshoot.bottom {
  background-image: radial-gradient(farthest-side at bottom, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at bottom, alpha(currentColor, 0.05), alpha(currentColor, 0));
  background-size: 100% 3%, 100% 50%;
  background-repeat: no-repeat;
  background-position: bottom;
  background-color: transparent;
  border: none;
  box-shadow: none;
}

overshoot.left {
  background-image: radial-gradient(farthest-side at left, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at left, alpha(currentColor, 0.05), alpha(currentColor, 0));
  background-size: 3% 100%, 50% 100%;
  background-repeat: no-repeat;
  background-position: left;
  background-color: transparent;
  border: none;
  box-shadow: none;
}

overshoot.right {
  background-image: radial-gradient(farthest-side at right, alpha(currentColor, 0.12) 85%, alpha(currentColor, 0)), radial-gradient(farthest-side at right, alpha(currentColor, 0.05), alpha(currentColor, 0));
  background-size: 3% 100%, 50% 100%;
  background-repeat: no-repeat;
  background-position: right;
  background-color: transparent;
  border: none;
  box-shadow: none;
}

undershoot.top {
  background-color: transparent;
  background-image: linear-gradient(to left, transparent 50%, rgba(0, 0, 0, 0.26) 50%);
  padding-top: 1px;
  background-size: 12px 1px;
  background-repeat: repeat-x;
  background-origin: content-box;
  background-position: left top;
  margin: 0 4px;
}

undershoot.bottom {
  background-color: transparent;
  background-image: linear-gradient(to left, transparent 50%, rgba(0, 0, 0, 0.26) 50%);
  padding-bottom: 1px;
  background-size: 12px 1px;
  background-repeat: repeat-x;
  background-origin: content-box;
  background-position: left bottom;
  margin: 0 4px;
}

undershoot.left {
  background-color: transparent;
  background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%);
  padding-left: 1px;
  background-size: 1px 12px;
  background-repeat: repeat-y;
  background-origin: content-box;
  background-position: left top;
  margin: 0 4px;
  margin: 4px 0;
}

undershoot.right {
  background-color: transparent;
  background-image: linear-gradient(to top, transparent 50%, rgba(0, 0, 0, 0.26) 50%);
  padding-right: 1px;
  background-size: 1px 12px;
  background-repeat: repeat-y;
  background-origin: content-box;
  background-position: right top;
  margin: 0 4px;
  margin: 4px 0;
}

junction {
  border-style: solid none none solid;
  border-width: 1px;
  border-color: rgba(0, 0, 0, 0.12);
  background-color: #FFFFFF;
}

junction:dir(rtl) {
  border-style: solid solid none none;
}

separator {
  min-width: 1px;
  min-height: 1px;
  background-color: rgba(0, 0, 0, 0.12);
}

stacksidebar + separator.vertical,
stacksidebar separator.horizontal, button.font separator, button.file separator {
  min-width: 0;
  min-height: 0;
  background-color: transparent;
}

/*********
 * Lists *
 *********/
listview.boxed-list,
list.boxed-list, listview.content:not(.conversation-listbox),
list.content:not(.conversation-listbox) {
  border-radius: 7px;
  box-shadow: none;
  border: 1px solid rgba(0, 0, 0, 0.12);
}

listview.boxed-list > row.expander list > row,
list.boxed-list > row.expander list > row, listview.boxed-list > row,
list.boxed-list > row, listview.content:not(.conversation-listbox) > row,
list.content:not(.conversation-listbox) > row {
  border-radius: 0;
}

listview.boxed-list > row.expander list > row:first-child,
list.boxed-list > row.expander list > row:first-child, listview.boxed-list > row:first-child,
list.boxed-list > row:first-child, listview.content:not(.conversation-listbox) > row:first-child,
list.content:not(.conversation-listbox) > row:first-child {
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}

listview.boxed-list > row.expander list > row:last-child,
list.boxed-list > row.expander list > row:last-child, listview.boxed-list > row:last-child,
list.boxed-list > row:last-child, listview.content:not(.conversation-listbox) > row:last-child,
list.content:not(.conversation-listbox) > row:last-child {
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
}

listview.boxed-list > row.expander list > row:only-child,
list.boxed-list > row.expander list > row:only-child, listview.boxed-list > row:only-child,
list.boxed-list > row:only-child, listview.content:not(.conversation-listbox) > row:only-child,
list.content:not(.conversation-listbox) > row:only-child {
  border-radius: 6px;
}

listview.boxed-list > row.expander list > row:focus,
list.boxed-list > row.expander list > row:focus, listview.boxed-list > row:focus,
list.boxed-list > row:focus, listview.content:not(.conversation-listbox) > row:focus,
list.content:not(.conversation-listbox) > row:focus {
  box-shadow: inset 0 0 0 1000px alpha(currentColor, 0.08);
}

listview,
list {
  border-color: rgba(0, 0, 0, 0.12);
  background-color: #FFFFFF;
}

listview row,
list row {
  padding: 6px;
}

listview > row.expander,
list > row.expander {
  padding: 0px;
}

listview > row.expander .row-header,
list > row.expander .row-header {
  padding: 2px;
}

listview.boxed-list > row.expander list,
list.boxed-list > row.expander list {
  background-color: transparent;
  box-shadow: none;
  border: none;
}

list.frame {
  border-radius: 6px;
}

listview.view {
  color: rgba(0, 0, 0, 0.87);
  background-color: transparent;
}

popover.menu listview.view {
  padding: 0;
}

popover.menu listview.view > row {
  margin-left: 0;
  margin-right: 0;
}

row {
  color: rgba(0, 0, 0, 0.6);
}

columnview.view > header > button,
treeview.view > header > button, row.activatable {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  outline: none;
  box-shadow: inset 0 0 0 9999px transparent;
}

columnview.view > header > button:focus,
treeview.view > header > button:focus, row.activatable:focus {
  color: rgba(0, 0, 0, 0.87);
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08);
}

columnview.view > header > button:hover,
treeview.view > header > button:hover, row.activatable:hover {
  color: rgba(0, 0, 0, 0.87);
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms;
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08);
}

columnview.view > header > button.has-open-popup,
treeview.view > header > button.has-open-popup, columnview.view > header > button:active,
treeview.view > header > button:active, row.activatable.has-open-popup, row.activatable:active {
  color: rgba(0, 0, 0, 0.87);
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.12);
}

row:selected {
  color: inherit;
}

row:selected image,
row:selected label {
  color: rgba(0, 0, 0, 0.87);
}

row:selected button image,
row:selected button label {
  color: inherit;
}

row:selected:disabled image,
row:selected:disabled label {
  color: rgba(0, 0, 0, 0.38);
}

treeexpander {
  border-spacing: 6px;
}

columnview row:not(:selected) cell editablelabel:not(.editing):focus-within {
  outline: 2px solid alpha(currentColor, 0.06);
}

columnview row:not(:selected) cell editablelabel.editing:focus-within {
  outline: 2px solid #3c84f7;
}

columnview row:not(:selected) cell editablelabel.editing text selection {
  color: white;
  background-color: #3c84f7;
}

.rich-list {
  /* rich lists usually containing other widgets than just labels/text */
}

.rich-list > row {
  padding: 9px 12px;
  min-height: 32px;
  /* should be tall even when only containing a label */
}

.rich-list > row > box {
  border-spacing: 12px;
}

/*********************
 * App Notifications *
 *********************/
.app-notification {
  margin: 8px;
  border-spacing: 9px;
  padding: 9px;
  border: none;
}

.app-notification button.text-button:not(:disabled) {
  color: #3c84f7;
}

.app-notification.frame,
.app-notification border {
  border-style: none;
}

/*************
 * Expanders *
 *************/
expander {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  min-width: 16px;
  min-height: 16px;
  color: rgba(0, 0, 0, 0.6);
  -gtk-icon-source: -gtk-icontheme("pan-end-symbolic");
}

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

expander:hover, expander:active {
  color: rgba(0, 0, 0, 0.87);
}

expander:disabled {
  color: rgba(0, 0, 0, 0.26);
}

expander-widget > box > title {
  border-radius: 6px;
}

expander-widget > box > title:hover > expander {
  color: rgba(0, 0, 0, 0.6);
}

.navigation-sidebar:not(decoration):not(window):drop(active):focus, .navigation-sidebar:not(decoration):not(window):drop(active),
placessidebar:not(decoration):not(window):drop(active):focus,
placessidebar:not(decoration):not(window):drop(active),
stackswitcher:not(decoration):not(window):drop(active):focus,
stackswitcher:not(decoration):not(window):drop(active),
expander-widget:not(decoration):not(window):drop(active):focus,
expander-widget:not(decoration):not(window):drop(active) {
  box-shadow: none;
}

/************
 * Calendar *
 ************/
calendar {
  padding: 0;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 6px;
  color: rgba(0, 0, 0, 0.87);
}

calendar:disabled {
  color: rgba(0, 0, 0, 0.38);
}

calendar:selected {
  border-radius: 6px;
}

calendar > header {
  padding: 3px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

calendar > header > button {
  min-height: 24px;
}

calendar > grid {
  margin: 3px;
}

calendar > grid > label {
  border-radius: 9999px;
  margin: 0;
}

calendar > grid > label.today:selected {
  box-shadow: none;
}

calendar > grid > label:focus {
  outline-style: none;
}

calendar > grid > label.day-number {
  padding: 9px;
}

calendar > grid > label.day-number.other-month {
  color: alpha(currentColor, 0.3);
}

/***********
 * Dialogs *
 ***********/
window.dialog.message.background {
  background-color: #FFFFFF;
}

window.dialog.message box.dialog-vbox.vertical {
  border-spacing: 10px;
}

window.dialog.message .titlebar {
  min-height: 24px;
  border-style: none;
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.15);
  background-color: #FFFFFF;
  color: rgba(0, 0, 0, 0.87);
}

window.dialog.message .titlebar:backdrop {
  background-color: #FFFFFF;
  color: rgba(0, 0, 0, 0.6);
}

window.dialog.message .dialog-action-area {
  margin-top: -6px;
}

window.dialog.message .dialog-action-area > button, window.dialog.message .dialog-action-area > button:first-child, window.dialog.message .dialog-action-area > button:last-child {
  border-radius: 9999px;
}

window.dialog.message .dialog-action-area > button:not(:last-child) {
  margin-right: 6px;
}

window.dialog.message .dialog-action-area > button:not(:disabled) {
  color: #3c84f7;
}

window.dialog.message .dialog-action-area > button.destructive-action:not(:disabled) {
  color: #D93025;
}

.csd filechooser {
  background-color: #FFFFFF;
  border-radius: 0 0 14px 14px;
}

filechooser .dialog-action-box {
  border-top: 1px solid rgba(0, 0, 0, 0.12);
}

filechooser #pathbarbox {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  background-color: #FFFFFF;
}

filechooser stack.view {
  background-color: transparent;
}

filechooser stack.view scrolledwindow {
  background-color: transparent;
  border-radius: 0 0 14px 0;
}

filechooser stack.view scrolledwindow list {
  background-color: transparent;
}

filechooser stack.view > placesview {
  background-color: transparent;
}

filechooser stack.view > placesview > actionbar, filechooser stack.view > placesview > actionbar > revealer > box {
  background-color: transparent;
}

filechooser stack.view frame > border {
  border: none;
}

.csd filechooser placessidebar {
  background: none;
  border-bottom-left-radius: 14px;
}

filechooser actionbar, filechooser actionbar > revealer > box {
  background-color: transparent;
}

filechooserbutton > button > box {
  border-spacing: 6px;
}

filechooserbutton:drop(active) {
  box-shadow: none;
  border-color: transparent;
}

/***********
 * Sidebar *
 ***********/
.sidebar {
  border-style: none;
  background-color: #FAFAFA;
}

.sidebar:not(separator):dir(ltr), .sidebar:not(separator).left, .sidebar:not(separator).left:dir(rtl) {
  border-right: 1px solid rgba(0, 0, 0, 0.12);
  border-left-style: none;
}

.sidebar:not(separator):dir(rtl), .sidebar:not(separator).right {
  border-left: 1px solid rgba(0, 0, 0, 0.12);
  border-right-style: none;
}

.sidebar listview.view,
.sidebar list {
  background-color: transparent;
}

paned .sidebar.left, paned .sidebar.right, paned .sidebar.left:dir(rtl), paned .sidebar:dir(rtl), paned .sidebar:dir(ltr), paned .sidebar {
  border-style: none;
}

stacksidebar list {
  padding: 6px;
  background-color: #FAFAFA;
}

stacksidebar row {
  min-height: 24px;
  padding: 6px;
  border-radius: 6px;
}

stacksidebar row:selected {
  background-color: alpha(currentColor, 0.06);
  color: rgba(0, 0, 0, 0.87);
  font-weight: 500;
}

stacksidebar row + row {
  margin-top: 4px;
}

stacksidebar row > label {
  padding-left: 6px;
  padding-right: 6px;
  color: inherit;
}

separator.sidebar {
  background-color: rgba(0, 0, 0, 0.12);
  border-right: none;
}

separator.sidebar.selection-mode, .selection-mode separator.sidebar {
  background-color: rgba(255, 255, 255, 0.15);
}

/**********************
 * Navigation Sidebar *
 **********************/
.navigation-sidebar {
  padding: 6px;
  border-right: none;
}

.navigation-sidebar > row {
  min-height: 24px;
  padding: 6px;
  border-radius: 6px;
}

.navigation-sidebar > row:hover, .navigation-sidebar > row:focus-visible:focus-within {
  background-color: alpha(currentColor, 0.08);
}

.navigation-sidebar > row:selected {
  background-color: alpha(currentColor, 0.06);
  color: rgba(0, 0, 0, 0.87);
}

.navigation-sidebar > row:selected:hover {
  background-color: alpha(currentColor, 0.16);
}

.navigation-sidebar > row:selected:focus-visible:focus-within {
  outline: none;
  background-color: alpha(currentColor, 0.08);
}

.navigation-sidebar > row:selected:focus-visible:focus-within:hover {
  background-color: alpha(currentColor, 0.16);
}

.navigation-sidebar > row:disabled {
  color: rgba(0, 0, 0, 0.38);
}

/****************
 * File chooser *
 ****************/
row image.sidebar-icon {
  transition: color 0ms cubic-bezier(0, 0, 0.2, 1);
  color: rgba(0, 0, 0, 0.6);
}

row image.sidebar-icon:disabled {
  color: rgba(0, 0, 0, 0.26);
}

placessidebar > viewport.frame {
  border-style: none;
}

placessidebar list {
  padding: 1px 0 4px;
}

placessidebar .navigation-sidebar > row {
  min-height: 32px;
  margin: -1px 4px -1px 0;
  padding: 0;
  border-radius: 0 9999px 9999px 0;
}

placessidebar .navigation-sidebar > row > revealer {
  padding: 0 8px 0 16px;
}

placessidebar .navigation-sidebar > row:selected {
  background-color: alpha(currentColor, 0.06);
  color: rgba(0, 0, 0, 0.87);
  font-weight: 500;
}

placessidebar .navigation-sidebar > row:disabled {
  color: rgba(0, 0, 0, 0.38);
}

placessidebar .navigation-sidebar > row image.sidebar-icon:dir(ltr) {
  padding-right: 8px;
}

placessidebar .navigation-sidebar > row image.sidebar-icon:dir(rtl) {
  padding-left: 8px;
}

placessidebar .navigation-sidebar > row label.sidebar-label {
  color: inherit;
}

placessidebar .navigation-sidebar > row label.sidebar-label:dir(ltr) {
  padding-right: 2px;
}

placessidebar .navigation-sidebar > row label.sidebar-label:dir(rtl) {
  padding-left: 2px;
}

placessidebar .navigation-sidebar > row.sidebar-placeholder-row {
  background-color: alpha(currentColor, 0.08);
}

placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row {
  color: #3c84f7;
}

placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row image.sidebar-icon {
  color: #3c84f7;
}

placessidebar .navigation-sidebar > row:drop(active) {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1), box-shadow 0ms;
  box-shadow: inset 0 0 0 9999px alpha(currentColor, 0.08);
}

placesview .server-list-button > image {
  transition: 200ms cubic-bezier(0, 0, 0.2, 1);
  -gtk-icon-transform: rotate(0turn);
}

placesview .server-list-button:checked > image {
  transition: 200ms cubic-bezier(0, 0, 0.2, 1);
  -gtk-icon-transform: rotate(-0.5turn);
}

placesview > actionbar > revealer > box > label {
  border-spacing: 6px;
}

/*********
 * Paned *
 *********/
paned > separator {
  min-width: 1px;
  min-height: 1px;
  -gtk-icon-source: none;
  border-style: none;
  background-color: transparent;
  background-image: image(rgba(0, 0, 0, 0.12));
  background-size: 1px 1px;
  background-clip: content-box;
}

paned > separator.wide {
  min-width: 6px;
  min-height: 6px;
  background-color: #FFFFFF;
  background-image: image(rgba(0, 0, 0, 0.12)), image(rgba(0, 0, 0, 0.12));
  background-size: 1px 1px, 1px 1px;
}

paned.horizontal > separator {
  background-repeat: repeat-y;
}

paned.horizontal > separator:dir(ltr) {
  margin: 0 -8px 0 0;
  padding: 0 8px 0 0;
  background-position: left;
}

paned.horizontal > separator:dir(rtl) {
  margin: 0 0 0 -8px;
  padding: 0 0 0 8px;
  background-position: right;
}

paned.horizontal > separator.wide {
  margin: 0;
  padding: 0;
  background-repeat: repeat-y, repeat-y;
  background-position: left, right;
}

paned.vertical > separator {
  margin: 0 0 -8px 0;
  padding: 0 0 8px 0;
  background-repeat: repeat-x;
  background-position: top;
}

paned.vertical > separator.wide {
  margin: 0;
  padding: 0;
  background-repeat: repeat-x, repeat-x;
  background-position: bottom, top;
}

/************
 * GtkVideo *
 ************/
video {
  background: black;
  border-radius: 6px;
}

video image.osd {
  min-width: 64px;
  min-height: 64px;
  border-radius: 9999px;
  border: none;
}

/**************
 * GtkInfoBar *
 **************/
infobar {
  border: none;
  margin-bottom: 0;
}

infobar > revealer > box {
  padding: 6px;
  border-spacing: 12px;
}

infobar.info > revealer > box, infobar.info:hover > revealer > box, infobar.info:backdrop > revealer > box {
  background-color: #FFFFFF;
}

infobar.info > revealer > box button, infobar.info > revealer > box button.text-button:not(:disabled), infobar.info:hover > revealer > box button, infobar.info:hover > revealer > box button.text-button:not(:disabled), infobar.info:backdrop > revealer > box button, infobar.info:backdrop > revealer > box button.text-button:not(:disabled) {
  color: #3c84f7;
}

infobar.action > revealer > box, infobar.action:backdrop > revealer > box, infobar.question > revealer > box, infobar.question:backdrop > revealer > box {
  background-color: #3c84f7;
  color: white;
}

infobar.action > revealer > box button, infobar.action > revealer > box button:hover, infobar.action > revealer > box button:focus, infobar.action > revealer > box button:active, infobar.action > revealer > box button:checked, infobar.action > revealer > box button.text-button:not(:disabled), infobar.action:backdrop > revealer > box button, infobar.action:backdrop > revealer > box button:hover, infobar.action:backdrop > revealer > box button:focus, infobar.action:backdrop > revealer > box button:active, infobar.action:backdrop > revealer > box button:checked, infobar.action:backdrop > revealer > box button.text-button:not(:disabled), infobar.question > revealer > box button, infobar.question > revealer > box button:hover, infobar.question > revealer > box button:focus, infobar.question > revealer > box button:active, infobar.question > revealer > box button:checked, infobar.question > revealer > box button.text-button:not(:disabled), infobar.question:backdrop > revealer > box button, infobar.question:backdrop > revealer > box button:hover, infobar.question:backdrop > revealer > box button:focus, infobar.question:backdrop > revealer > box button:active, infobar.question:backdrop > revealer > box button:checked, infobar.question:backdrop > revealer > box button.text-button:not(:disabled) {
  color: white;
}

infobar.action > revealer > box *:link, infobar.action:backdrop > revealer > box *:link, infobar.question > revealer > box *:link, infobar.question:backdrop > revealer > box *:link {
  color: white;
}

infobar.action:hover > revealer > box, infobar.question:hover > revealer > box {
  background-color: #5493f8;
}

infobar.warning > revealer > box, infobar.warning:backdrop > revealer > box {
  background-color: #F4B400;
  color: rgba(0, 0, 0, 0.87);
}

infobar.warning > revealer > box button, infobar.warning > revealer > box button:hover, infobar.warning > revealer > box button:focus, infobar.warning > revealer > box button:active, infobar.warning > revealer > box button:checked, infobar.warning > revealer > box button.text-button:not(:disabled), infobar.warning:backdrop > revealer > box button, infobar.warning:backdrop > revealer > box button:hover, infobar.warning:backdrop > revealer > box button:focus, infobar.warning:backdrop > revealer > box button:active, infobar.warning:backdrop > revealer > box button:checked, infobar.warning:backdrop > revealer > box button.text-button:not(:disabled) {
  color: rgba(0, 0, 0, 0.87);
}

infobar.warning > revealer > box *:link, infobar.warning:backdrop > revealer > box *:link {
  color: rgba(0, 0, 0, 0.87);
}

infobar.warning:hover > revealer > box {
  background-color: #ffc00f;
}

infobar.error > revealer > box, infobar.error:backdrop > revealer > box {
  background-color: #D93025;
  color: white;
}

infobar.error > revealer > box button, infobar.error > revealer > box button:hover, infobar.error > revealer > box button:focus, infobar.error > revealer > box button:active, infobar.error > revealer > box button:checked, infobar.error > revealer > box button.text-button:not(:disabled), infobar.error:backdrop > revealer > box button, infobar.error:backdrop > revealer > box button:hover, infobar.error:backdrop > revealer > box button:focus, infobar.error:backdrop > revealer > box button:active, infobar.error:backdrop > revealer > box button:checked, infobar.error:backdrop > revealer > box button.text-button:not(:disabled) {
  color: white;
}

infobar.error > revealer > box *:link, infobar.error:backdrop > revealer > box *:link {
  color: white;
}

infobar.error:hover > revealer > box {
  background-color: #dd443a;
}

/************
 * Tooltips *
 ************/
tooltip {
  padding: 6px 12px;
  box-shadow: none;
  border: none;
}

tooltip.background {
  background-color: rgba(52, 52, 52, 0.9);
  color: white;
  box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12);
  border-radius: 3px;
  margin: 2px 6px 8px 6px;
  border: none;
}

tooltip > box {
  border-spacing: 6px;
}

/*****************
 * Color Chooser *
 *****************/
colorswatch.top {
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}

colorswatch.top overlay {
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}

colorswatch.bottom {
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
}

colorswatch.bottom overlay {
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
}

colorswatch.left, colorswatch:first-child:not(.top) {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}

colorswatch.left overlay, colorswatch:first-child:not(.top) overlay {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}

colorswatch.right, colorswatch:last-child:not(.bottom) {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}

colorswatch.right overlay, colorswatch:last-child:not(.bottom) overlay {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}

colorswatch.dark {
  color: white;
}

colorswatch.light {
  color: rgba(0, 0, 0, 0.87);
}

colorchooser colorswatch:hover {
  transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1);
  box-shadow: 0 0 0 2px #3c84f7;
}

colorswatch#add-color-button {
  border-radius: 6px 0 0 6px;
  color: rgba(0, 0, 0, 0.87);
}

colorswatch#add-color-button:only-child {
  border-radius: 6px;
}

colorswatch#add-color-button overlay {
  background-color: rgba(0, 0, 0, 0.04);
}

colorswatch#add-color-button overlay:hover {
  background-color: rgba(0, 0, 0, 0.12);
  box-shadow: none;
}

colorswatch#add-color-button overlay:active {
  background-color: rgba(0, 0, 0, 0.26);
}

colorswatch:disabled {
  opacity: 0.5;
}

colorswatch:disabled overlay {
  box-shadow: none;
}

colorswatch#editor-color-sample {
  border-radius: 6px;
}

colorswatch#editor-color-sample overlay {
  border-radius: 6px;
}

colorswatch#editor-color-sample overlay:hover {
  box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 2px -0.6px rgba(0, 0, 0, 0.17);
}

colorchooser .popover.osd {
  transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1);
  border-radius: 6px;
  box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15);
  background-color: #FFFFFF;
}

colorchooser .popover.osd:backdrop {
  box-shadow: 0 3px 2px -3px rgba(0, 0, 0, 0.2), 0 2px 2px -1px rgba(0, 0, 0, 0.24), 0 1px 3px 0 rgba(0, 0, 0, 0.12), inset 0 1px rgba(255, 255, 255, 0.15);
}

/********
 * Misc *
 ********/
.content-view {
  background-color: #FFFFFF;
}

/**********************
 * Window Decorations *
 **********************/
window.csd {
  transition: box-shadow 0ms cubic-bezier(0, 0, 0.2, 1);
  border-radius: 14px;
  outline-color: rgba(255, 255, 255, 0.15);
  outline-offset: -1px;
  outline-style: solid;
  outline-width: 1px;
  box-shadow: 0 8px 6px -5px rgba(0, 0, 0, 0.2), 0 16px 15px 2px rgba(0, 0, 0, 0.14), 0 6px 18px 5px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.12), 0 0 36px transparent;
}

window.csd:backdrop {
  box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.15), 0 4px 3px 0 rgba(0, 0, 0, 0.18), 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.12), 0 0 36px transparent;
}

window.csd.popup {
  border-radius: 12px;
}

window.csd.dialog.message {
  border-radius: 14px;
}

.solid-csd window.csd {
  margin: 0;
  padding: 2px;
  border-radius: 0;
  background-color: #242424;
  border: 1px solid #e0e0e0;
}

.solid-csd window.csd:backdrop {
  background-color: #2C2C2C;
}

window.csd.maximized, window.csd.fullscreen, window.csd.tiled, window.csd.tiled-top, window.csd.tiled-right, window.csd.tiled-bottom, window.csd.tiled-left {
  border-radius: 0;
}

windowcontrols button:not(.suggested-action):not(.destructive-action) {
  min-height: 36px;
  min-width: 36px;
  padding: 0;
  margin: 0 4px;
}

windowcontrols button.minimize:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:not(.suggested-action):not(.destructive-action), windowcontrols button.close:not(.suggested-action):not(.destructive-action) {
  color: rgba(255, 255, 255, 0.7);
  background-color: "transparent";
}

windowcontrols button.minimize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.maximize:not(.suggested-action):not(.destructive-action) image, windowcontrols button.close:not(.suggested-action):not(.destructive-action) image {
  padding: 0;
}

windowcontrols button.minimize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:hover:not(.suggested-action):not(.destructive-action), windowcontrols button.close:hover:not(.suggested-action):not(.destructive-action) {
  color: white;
  background-color: alpha(currentColor, 0.15);
}

windowcontrols button.minimize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:active:not(.suggested-action):not(.destructive-action), windowcontrols button.close:active:not(.suggested-action):not(.destructive-action) {
  color: white;
  background-color: alpha(currentColor, 0.2);
}

windowcontrols button.minimize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.maximize:backdrop:not(.suggested-action):not(.destructive-action), windowcontrols button.close:backdrop:not(.suggested-action):not(.destructive-action) {
  opacity: 0.65;
}

windowcontrols {
  border-spacing: 6px;
}

windowcontrols:not(.empty).start:dir(ltr), windowcontrols:not(.empty).end:dir(rtl) {
  margin-right: 4px;
  margin-left: 4px;
}

windowcontrols:not(.empty).start:dir(rtl), windowcontrols:not(.empty).end:dir(ltr) {
  margin-left: 4px;
  margin-right: 4px;
}

.view:selected, iconview:selected, gridview > child:selected, modelbutton.flat:selected, columnview.view:selected,
treeview.view:selected, row:selected, calendar:selected, calendar > grid > label.day-number:selected {
  background-color: alpha(currentColor, 0.06);
}

flowbox > flowboxchild:selected, calendar > grid > label.today {
  color: #3c84f7;
  background-color: rgba(60, 132, 247, 0.2);
}

textview text selection:focus, textview text selection, label > selection,
entry > text > selection, spinbutton:not(.vertical) > text > selection, spinbutton.vertical > text > selection, calendar > grid > label.today:selected {
  color: white;
  background-color: #3c84f7;
}

.monospace {
  font-family: monospace;
}

/**********************
 * Touch Copy & Paste *
 **********************/
cursor-handle {
  color: #3c84f7;
  -gtk-icon-source: -gtk-recolor(url("assets/scalable/cursor-handle-symbolic.svg"));
}

cursor-handle.insertion-cursor:dir(ltr), cursor-handle.insertion-cursor:dir(rtl) {
  padding-top: 6px;
}

shortcuts-section {
  margin: 20px;
}

.shortcuts-search-results {
  margin: 20px;
  border-spacing: 24px;
}

shortcut {
  border-spacing: 6px;
}

shortcut > .keycap {
  min-width: 12px;
  min-height: 26px;
  margin-top: 2px;
  padding-bottom: 2px;
  padding-left: 8px;
  padding-right: 8px;
  border: solid 1px rgba(0, 0, 0, 0.12);
  border-radius: 7px;
  box-shadow: inset 0 -2px rgba(0, 0, 0, 0.12);
  background-color: #FFFFFF;
  color: rgba(0, 0, 0, 0.87);
  font-size: smaller;
}

:not(decoration):not(window):drop(active) {
  caret-color: #3c84f7;
}

stackswitcher {
  min-height: 0;
  padding: 3px;
  margin: 6px 0;
  border-radius: 9px;
  background-color: rgba(0, 0, 0, 0.04);
  border: none;
}

stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action) {
  margin: 0 0;
  background-color: transparent;
  border-radius: 6px;
  padding: 3px 10px;
}

stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action).text-button {
  min-width: 100px;
}

stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):focus:not(:hover):not(:checked) {
  box-shadow: none;
}

stackswitcher.linked:not(.vertical) > button:not(.suggested-action):not(.destructive-action):checked {
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  background-color: white;
  color: rgba(0, 0, 0, 0.87);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

stackswitcher button.text-button {
  min-width: 100px;
}

stackswitcher button.circular,
stackswitcher button.text-button.circular {
  min-width: 36px;
  min-height: 36px;
  padding: 0;
}

/*************
 * App Icons *
 *************/
.lowres-icon {
  -gtk-icon-shadow: none;
}

.icon-dropshadow {
  -gtk-icon-shadow: none;
}

/*********
 * Emoji *
 *********/
popover.emoji-picker {
  padding: 0;
}

popover.emoji-picker > contents {
  padding: 0;
}

.emoji-searchbar {
  padding: 6px;
  border-spacing: 6px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  background: none;
}

.emoji-searchbar entry text {
  background: none;
  box-shadow: none;
}

.emoji-toolbar {
  padding: 0;
  border-spacing: 3px;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
  background: none;
}

button.emoji-section {
  margin: 0;
  padding: 6px;
  border-radius: 6px;
}

button.emoji-section:checked {
  color: #3c84f7;
}

popover.emoji-picker emoji {
  font-size: x-large;
  padding: 6px;
  transition: all 0ms cubic-bezier(0, 0, 0.2, 1);
  border-radius: 6px;
}

popover.emoji-picker emoji:focus, popover.emoji-picker emoji:hover {
  background: alpha(currentColor, 0.08);
}

emoji-completion-row {
  min-height: 28px;
  padding: 0 12px;
}

emoji-completion-row > box {
  border-spacing: 6px;
  padding: 2px 6px;
}

emoji-completion-row:focus, emoji-completion-row:hover,
emoji-completion-row emoji:hover, emoji-completion-row emoji:focus {
  background-color: alpha(currentColor, 0.08);
  color: rgba(0, 0, 0, 0.87);
}

popover.entry-completion > contents {
  padding: 0;
}

/* GTK NAMED COLORS
   ----------------
   use responsibly! */
/*
widget text/foreground color */
@define-color theme_fg_color rgba(0, 0, 0, 0.87);
/*
text color for entries, views and content in general */
@define-color theme_text_color rgba(0, 0, 0, 0.87);
/*
widget base background color */
@define-color theme_bg_color #FFFFFF;
/*
text widgets and the like base background color */
@define-color theme_base_color #FFFFFF;
/*
base background color of selections */
@define-color theme_selected_bg_color #3c84f7;
/*
text/foreground color of selections */
@define-color theme_selected_fg_color white;
/*
base background color of insensitive widgets */
@define-color insensitive_bg_color #FFFFFF;
/*
text foreground color of insensitive widgets */
@define-color insensitive_fg_color rgba(0, 0, 0, 0.38);
/*
insensitive text widgets and the like base background color */
@define-color insensitive_base_color #FAFAFA;
/*
widget text/foreground color on backdrop windows */
@define-color theme_unfocused_fg_color rgba(0, 0, 0, 0.87);
/*
text color for entries, views and content in general on backdrop windows */
@define-color theme_unfocused_text_color rgba(0, 0, 0, 0.87);
/*
widget base background color on backdrop windows */
@define-color theme_unfocused_bg_color #FFFFFF;
/*
text widgets and the like base background color on backdrop windows */
@define-color theme_unfocused_base_color #FFFFFF;
/*
base background color of selections on backdrop windows */
@define-color theme_unfocused_selected_bg_color #3c84f7;
/*
text/foreground color of selections on backdrop windows */
@define-color theme_unfocused_selected_fg_color white;
/*
insensitive color on backdrop windows */
@define-color unfocused_insensitive_color rgba(0, 0, 0, 0.38);
/*
widgets main borders color */
@define-color borders rgba(0, 0, 0, 0.12);
/*
widgets main borders color on backdrop windows */
@define-color unfocused_borders rgba(0, 0, 0, 0.12);
/*
these are pretty self explicative */
@define-color warning_color #F4B400;
@define-color error_color #D93025;
@define-color success_color #0F9D58;
/*
these colors are exported for the window manager and shouldn't be used in applications,
read if you used those and something break with a version upgrade you're on your own... */
@define-color wm_title white;
@define-color wm_unfocused_title rgba(255, 255, 255, 0.7);
@define-color wm_highlight rgba(255, 255, 255, 0.1);
@define-color wm_bg #242424;
@define-color wm_unfocused_bg #2C2C2C;
/*
FIXME this is really an API */
@define-color content_view_bg #FFFFFF;
@define-color placeholder_text_color #666666;
/* Very contrasty background for text views (@theme_text_color foreground) */
@define-color text_view_bg #FFFFFF;
@define-color budgie_tasklist_indicator_color white;
@define-color budgie_tasklist_indicator_color_active white;
@define-color budgie_tasklist_indicator_color_active_window #999999;
@define-color budgie_tasklist_indicator_color_attention #F4B400;
@define-color STRAWBERRY_100 #FF9262;
@define-color STRAWBERRY_300 #FF793E;
@define-color STRAWBERRY_500 #F15D22;
@define-color STRAWBERRY_700 #CF3B00;
@define-color STRAWBERRY_900 #AC1800;
@define-color ORANGE_100 #FFDB91;
@define-color ORANGE_300 #FFCA40;
@define-color ORANGE_500 #FAA41A;
@define-color ORANGE_700 #DE8800;
@define-color ORANGE_900 #C26C00;
@define-color BANANA_100 #FFFFA8;
@define-color BANANA_300 #FFFA7D;
@define-color BANANA_500 #FFCE51;
@define-color BANANA_700 #D1A023;
@define-color BANANA_900 #A27100;
@define-color LIME_100 #A2F3BE;
@define-color LIME_300 #8ADBA6;
@define-color LIME_500 #73C48F;
@define-color LIME_700 #479863;
@define-color LIME_900 #1C6D38;
@define-color BLUEBERRY_100 #94A6FF;
@define-color BLUEBERRY_300 #6A7CE0;
@define-color BLUEBERRY_500 #3F51B5;
@define-color BLUEBERRY_700 #213397;
@define-color BLUEBERRY_900 #031579;
@define-color GRAPE_100 #D25DE6;
@define-color GRAPE_300 #B84ACB;
@define-color GRAPE_500 #9C27B0;
@define-color GRAPE_700 #830E97;
@define-color GRAPE_900 #6A007E;
@define-color COCOA_100 #9F9792;
@define-color COCOA_300 #7B736E;
@define-color COCOA_500 #574F4A;
@define-color COCOA_700 #463E39;
@define-color COCOA_900 #342C27;
@define-color SILVER_100 #EEE;
@define-color SILVER_300 #CCC;
@define-color SILVER_500 #AAA;
@define-color SILVER_700 #888;
@define-color SILVER_900 #666;
@define-color SLATE_100 #888;
@define-color SLATE_300 #666;
@define-color SLATE_500 #444;
@define-color SLATE_700 #222;
@define-color SLATE_900 #111;
@define-color BLACK_100 #474341;
@define-color BLACK_300 #403C3A;
@define-color BLACK_500 #393634;
@define-color BLACK_700 #33302F;
@define-color BLACK_900 #2B2928;
