/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

:root {
  --jp-private-settingeditor-debug-height: 28px;
  --jp-private-settingeditor-key-width: 150px;
  --jp-private-settingeditor-legend-height: 16px;
  --jp-private-settingeditor-row-height: 16px;
  --jp-private-settingeditor-toolbar-height: 28px;
  --jp-private-settingeditor-type-width: 75px;
}

#setting-editor {
  min-width: 360px;
  min-height: 240px;
  background-color: var(--jp-layout-color0);
  margin-top: -1px;
  outline: none;
  /* This is needed so that all font sizing of children done in ems is
   * relative to this base size */
  font-size: var(--jp-ui-font-size1);
}

#setting-editor > .p-Widget {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

#setting-editor .p-SplitPanel-handle {
  background-color: var(--jp-border-color2);
}

#setting-editor .jp-SettingEditorInstructions {
  text-align: center;
}

#setting-editor .jp-SettingEditorInstructions-icon {
  display: inline-block;
  background-size: 60px;
  width: 60px;
  height: 78px;
  margin-right: 5px;
}

#setting-editor .jp-SettingEditorInstructions-title {
  color: var(--jp-ui-font-color0);
  font-size: 32px;
  font-weight: 200;
  line-height: 78px;
  vertical-align: top;
}

#setting-editor .jp-SettingEditorInstructions-text {
  color: var(--jp-ui-font-color0);
  font-size: var(--jp-ui-font-size2);
}

#setting-editor .jp-PluginList {
  min-width: 175px;
  max-width: 275px;
}

#setting-editor .jp-PluginList ul {
  background-color: var(--jp-layout-color1);
  color: var(--jp-ui-font-color1);
  font-size: var(--jp-ui-font-size1);
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow-y: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

#setting-editor .jp-PluginList li {
  display: flex;
  flex-direction: row;
  border: 1px solid transparent;
  overflow: hidden;
  padding: 4px 0 4px 4px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#setting-editor .jp-PluginList li:hover {
  background-color: var(--jp-layout-color2);
  border: 1px solid var(--jp-border-color2);
}

#setting-editor .jp-PluginList li.jp-mod-selected {
  background-color: var(--jp-brand-color1);
  color: white;
  border: 1px solid var(--jp-brand-color1);
}

#setting-editor
  ul.jp-PluginList
  li.jp-mod-selected
  span.jp-PluginList-icon.jp-FileIcon {
  background-image: var(--jp-icon-file-selected);
}

#setting-editor .jp-PluginList-icon {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 3px;
  position: relative;
}

#setting-editor .jp-SettingsRawEditor .jp-Toolbar {
  color: var(--jp-ui-font-color0);
  font-size: var(--jp-ui-font-size1);
  height: var(--jp-private-settingeditor-toolbar-height);
  max-height: var(--jp-private-settingeditor-toolbar-height);
}

#setting-editor
  .jp-SettingsRawEditor
  .jp-Toolbar
  .jp-ToolbarButtonComponent-label {
  display: none;
}

#setting-editor .jp-SettingsRawEditor .jp-Toolbar-item {
  margin-top: 1px;
  align-items: center;
}

.jp-ToolbarButtonComponent-label
  #setting-editor
  .jp-SettingsRawEditor.jp-mod-error
  .jp-Toolbar-item.jp-BugIcon::after {
  color: red;
  content: '\25CF'; /* Unicode circle character (error dot) */
  font-size: 7px;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 4px;
  left: 6px;
}

#setting-editor .jp-SettingsRawEditor .jp-Inspector {
  border-top: 2px solid var(--jp-layout-color2);
  min-height: var(--jp-private-settingeditor-debug-height);
  max-height: var(--jp-private-settingeditor-debug-height);
}

#setting-editor
  .jp-SettingsRawEditor
  .jp-Inspector.jp-SettingsDebug
  .jp-RenderedHTMLCommon {
  padding: 2px 5px 2px 0;
  width: 100%;
}

#setting-editor
  .jp-SettingsRawEditor
  .jp-Inspector.jp-SettingsDebug
  .jp-RenderedHTMLCommon
  p {
  text-align: right;
}

#setting-editor .jp-SettingsTableEditor {
  border: 1px solid var(--jp-brand-color1);
  margin: 0;
  padding: 0;
}

#setting-editor .jp-SettingsTableEditor legend {
  color: var(--jp-brand-color1);
  font-size: 70%;
  font-weight: bold;
  margin-left: 15px;
  height: var(--jp-private-settingeditor-legend-height);
}

#setting-editor .jp-SettingsTableEditor-wrapper {
  position: absolute;
  top: var(--jp-private-settingeditor-legend-height);
  bottom: 0;
  overflow-y: auto;
}

#setting-editor .jp-SettingsTableEditor table {
  table-layout: fixed;
  color: var(--jp-ui-font-color1);
  font-size: var(--jp-ui-font-size1);
  padding: 2px;
  width: calc(100% - 4px);
  overflow: hidden;
}

#setting-editor .jp-SettingsTableEditor tr {
  color: var(--jp-ui-font-color2);
  height: var(--jp-private-settingeditor-row-height);
  overflow: hidden;
}

#setting-editor .jp-SettingsTableEditor th {
  background-color: var(--jp-layout-color3);
  border: 1px solid transparent;
  font-weight: bold;
  height: var(--jp-private-settingeditor-row-height);
}

#setting-editor .jp-SettingsTableEditor td {
  border: 1px solid transparent;
  height: var(--jp-private-settingeditor-row-height);
}

#setting-editor .jp-SettingsTableEditor th.jp-SettingsTableEditor-key {
  width: var(--jp-private-settingeditor-key-width);
}

#setting-editor .jp-SettingsTableEditor th.jp-SettingsTableEditor-type {
  width: var(--jp-private-settingeditor-type-width);
}

#setting-editor .jp-SettingsTableEditor td.jp-SettingsTableEditor-key {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

#setting-editor .jp-SettingsTableEditor td.jp-SettingsTableEditor-value {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

#setting-editor .jp-SettingsTableEditor td.jp-SettingsTableEditor-type {
  text-align: right;
}

#setting-editor
  .jp-PluginList
  .jp-mod-selected
  .jp-PluginList-icon.jp-FileIcon {
  background-image: var(--jp-icon-file-selected);
}

#setting-editor
  .jp-PluginList
  .jp-mod-selected
  .jp-PluginList-icon.jp-TextEditorIcon {
  background-image: var(--jp-icon-text-editor-selected);
}

#setting-editor
  .jp-PluginList
  .jp-mod-selected
  .jp-PluginList-icon.jp-NotebookIcon {
  background-image: var(--jp-icon-notebook-selected);
}

#setting-editor
  .jp-PluginList
  .jp-mod-selected
  .jp-PluginList-icon.jp-FolderIcon {
  background-image: var(--jp-icon-folder-selected);
}

#setting-editor
  .jp-PluginList
  .jp-mod-selected
  .jp-PluginList-icon.jp-CodeConsoleIcon {
  background-image: var(--jp-icon-console-selected);
}

#setting-editor
  .jp-PluginList
  .jp-mod-selected
  .jp-PluginList-icon.jp-MarkdownIcon {
  background-image: var(--jp-icon-markdown-selected);
}

#setting-editor
  .jp-PluginList
  .jp-mod-selected
  .jp-PluginList-icon.jp-LauncherIcon {
  background-image: var(--jp-icon-launcher-selected);
}

#setting-editor
  .jp-PluginList
  .jp-mod-selected
  .jp-PluginList-icon.jp-SettingsIcon {
  background-image: var(--jp-icon-settings-selected);
}

#setting-editor
  .jp-PluginList
  .jp-mod-selected
  .jp-PluginList-icon.jp-KeyboardIcon {
  background-image: var(--jp-icon-keyboard-selected);
}
