/* EditorPreferencesDialog */
window.org-gnome-TextEditor.preferences textview.preview {
  line-height: 1.2;
}
window.org-gnome-TextEditor.preferences preferencesgroup flowboxchild {
  outline-offset: 2px;
  border-radius: 12px;
  padding: 0;
}

window.org-gnome-TextEditor.preferences preferencesgroup flowboxchild GtkSourceStyleSchemePreview {
  margin: 0;
}
window.org-gnome-TextEditor.preferences preferencesgroup flowboxchild GtkSourceStyleSchemePreview:not(.selected) {
  box-shadow: 0 0 0 1px alpha(black, 0.03),
              0 1px 3px 1px alpha(black, .07),
              0 2px 6px 2px alpha(black, .03);
}

/* EditorThemeSelector */
window.org-gnome-TextEditor themeselector {
  margin: 9px;
}
window.org-gnome-TextEditor themeselector checkbutton {
  padding: 0;
  min-height: 44px;
  min-width: 44px;
  padding: 1px;
  background-clip: content-box;
  border-radius: 9999px;
  box-shadow: inset 0 0 0 1px @borders;
}
window.org-gnome-TextEditor themeselector checkbutton.follow:checked,
window.org-gnome-TextEditor themeselector checkbutton.light:checked,
window.org-gnome-TextEditor themeselector checkbutton.dark:checked {
  box-shadow: inset 0 0 0 2px @theme_selected_bg_color;
}
window.org-gnome-TextEditor themeselector checkbutton.follow {
  background-image: linear-gradient(to bottom right, #fff 49.99%, #202020 50.01%);
}
window.org-gnome-TextEditor themeselector checkbutton.light {
  background-color: #fff;
}
window.org-gnome-TextEditor themeselector checkbutton.dark {
  background-color: #202020;
}
window.org-gnome-TextEditor themeselector checkbutton radio {
  -gtk-icon-source: none;
  border: none;
  background: none;
  box-shadow: none;
  min-width: 12px;
  min-height: 12px;
  transform: translate(27px, 14px);
  padding: 2px;
}
window.org-gnome-TextEditor checkbutton.theme-selector radio:checked {
  -gtk-icon-source: -gtk-icontheme("object-select-symbolic");
  background-color: @theme_selected_bg_color;
  color: @theme_selected_fg_color;
}


/* EditorOpenPopover */

window.org-gnome-TextEditor .open-popover contents {
  padding: 0;
}
window.org-gnome-TextEditor .open-popover list {
  margin-bottom: 3px;
  background: none;
  color: inherit;
}
window.org-gnome-TextEditor .open-popover list label.placeholder {
  min-height: 57px;
}
window.org-gnome-TextEditor .open-popover list row {
  border-radius: 6px;
  margin: 3px 6px;
}
window.org-gnome-TextEditor .open-popover list row:first-child {
  margin-top: 6px;
}
window.org-gnome-TextEditor .open-popover list row button {
  padding: 3px;
  margin: 0;
  min-height: 24px;
  min-width: 24px;
}


/* EditorSearchBar */

window.org-gnome-TextEditor page .searchbar {
  background-color: @popover_bg_color;
  background-clip: padding-box;
  color: @popover_fg_color;
  padding: 6px;
  border-style: solid;
  border-color: alpha(black, .14);
  border-left-width: 1px;
  border-right-width: 1px;
  border-bottom-width: 1px;
  border-bottom-left-radius: 9px;
  border-bottom-right-radius: 9px;
  margin: 0 10px 20px 10px;
  box-shadow: 0 1px 5px 1px alpha(black, .09),
              0 2px 14px 3px alpha(black, .05);
}
window.org-gnome-TextEditor page .searchbar button.flat.circular {
  min-width: 24px;
  min-height: 24px;
  margin: 0px;
  padding: 3px;
}

textview.GtkSourceMap slider {
  border-radius: 9px;
  margin: 0 3px 0 2px;
}

textview.GtkSourceMap {
  font-family: BuilderBlocks;
  font-size: 1.75pt;
  line-height: 5px;
  opacity: 0.75;
  /* on macOS this would need to be 1 0 2 0 likely due to how
   * CoreText is being used. It just looks off. Anyway, maybe
   * someday when we have media-query we can fix that.
   */
  margin: 0;
}
textview.GtkSourceMap:dir(ltr) {
  border-left: 1px solid @borders;
}
textview.GtkSourceMap:dir(rtl) {
  border-right: 1px solid @borders;
}

box.statusbar {
  font-family: monospace;
  min-width: 100px;
  padding: 3px 12px;
  border-top: 1px solid @borders;
}


window.org-gnome-TextEditor.language-dialog row:last-child {
  border-bottom: 1px solid transparent;
}
window.org-gnome-TextEditor.language-dialog label.placeholder {
  min-height: 55px; /* 50px min-height + 2 padding top/bottom + 1 border */
  margin-left: 12px;
  margin-right: 12px;
  padding-left: 2px;
  padding-right: 2px;
}


/* Tweak save-changes dialog to scroll but keep scrollbars near the
 * edge of the window rather than constrained by the message box padding.
 */
window.save-changes > windowhandle > box.vertical > box.message-area.vertical {
  padding-bottom: 0;
}
window.save-changes > windowhandle > box.vertical > box.message-area.vertical > preferencespage {
  margin-left: -30px;
  margin-right: -30px;
}
window.save-changes > windowhandle > box.vertical > box.message-area.vertical > preferencespage > scrolledwindow > viewport {
  padding-left: 30px;
  padding-right: 30px;
  padding-bottom: 10px;
}
