.monaco-editor {
  padding-bottom: 5.6px;
  font-family: var(--theia-code-font-family);
  font-size: inherit !important;
}

#quick-input-container {
  position: fixed;
  z-index: 1000000;
}

/*
 * set z-index to 0, so tabs are not above overlay widgets
 */
.lm-TabBar.theia-app-centers {
  z-index: 0;
  display: flex;
}

.monaco-editor .zone-widget {
  position: absolute;
  z-index: 10;
}

.monaco-editor .zone-widget .zone-widget-container {
  border-top-style: solid;
  border-bottom-style: solid;
  border-top-width: 0;
  border-bottom-width: 0;
  border-top-color: var(--theia-peekView-border);
  border-bottom-color: var(--theia-peekView-border);
  position: relative;
}

.monaco-editor .parameter-hints-widget > .wrapper {
  overflow: hidden;
}

/* List highlight, see https://github.com/microsoft/vscode/blob/ff5f581425da6230b6f9216ecf19abf6c9d285a6/src/vs/workbench/browser/style.ts#L50 */
.monaco-tree .monaco-tree-row .monaco-highlighted-label .highlight,
.monaco-list .monaco-list-row .monaco-highlighted-label .highlight {
  color: var(--theia-list-highlightForeground) !important;
}

/* Scrollbars, see https://github.com/microsoft/vscode/blob/ff5f581425da6230b6f9216ecf19abf6c9d285a6/src/vs/workbench/browser/style.ts#L65 */
.monaco-scrollable-element > .shadow.top {
  box-shadow: var(--theia-scrollbar-shadow) 0 6px 6px -6px inset !important;
}

.monaco-scrollable-element > .shadow.left {
  box-shadow: var(--theia-scrollbar-shadow) 6px 0 6px -6px inset !important;
}

.monaco-scrollable-element > .shadow.top.left {
  box-shadow: var(--theia-scrollbar-shadow) 6px 6px 6px -6px inset !important;
}

.monaco-scrollable-element > .scrollbar > .slider {
  background: var(--theia-scrollbarSlider-background) !important;
}

.monaco-scrollable-element > .scrollbar > .slider:hover {
  background: var(--theia-scrollbarSlider-hoverBackground) !important;
}

.monaco-scrollable-element > .scrollbar > .slider.active {
  background: var(--theia-scrollbarSlider-activeBackground) !important;
}

.monaco-editor .codicon.codicon-debug-start {
  color: var(--theia-debugIcon-startForeground) !important;
}

.monaco-editor .codelens-decoration a {
  color: inherit !important;
}

.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight {
  color: unset !important;
}

.monaco-editor .find-widget .monaco-inputbox.synthetic-focus {
  outline: var(--theia-border-width) solid;
  outline-offset: calc(-1 * var(--theia-border-width));
  outline-color: var(--theia-focusBorder);
}

.monaco-editor .rename-box input {
  color: var(--theia-editor-foreground);
}

.monaco-editor .rename-box .rename-label {
  opacity: 0.8;
  padding: 3px;
  font-family: sans-serif;
}

/* Monaco Quick Input */
.quick-input-widget {
  background-color: var(--theia-quickInput-background) !important;
  color: var(--theia-foreground) !important;
}

.quick-input-list .monaco-list-row.focused {
  background-color: var(--theia-quickInputList-focusBackground) !important;
}

.quick-input-list .monaco-keybinding > .monaco-keybinding-key {
  color: inherit !important;
}

.quick-input-list .monaco-list-row.focused,
.quick-input-list .monaco-list-row.focused .monaco-highlighted-label,
.quick-input-list .monaco-list-row.focused .monaco-highlighted-label .codicon,
.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator,
.quick-input-list .monaco-list-row.focused .monaco-highlighted-label .monaco-keybinding .monaco-keybinding-key,
.quick-input-list .monaco-list-row.focused .monaco-highlighted-label .monaco-keybinding .monaco-keybinding-key-separator {
  color: var(--theia-quickInputList-focusForeground) !important;
}

.quick-input-list .monaco-list-row .codicon {
  color: var(--theia-foreground) !important;
}

.quick-input-list .monaco-list-row.focused .codicon {
  color: var(--theia-list-foreground) !important;
}

.quick-input-list .monaco-list-row.focused .monaco-highlighted-label .highlight {
  color: var(--theia-list-focusHighlightForeground) !important;
}

.quick-input-titlebar .action-item .action-label {
    color: var(--theia-foreground) !important;
}

.monaco-list-rows
  .monaco-list-row:not(:first-child)
  .quick-input-list-entry.quick-input-list-separator-border {
  border-top: 1px solid var(--theia-pickerGroup-border) !important;
}
.quick-input-list .quick-input-list-separator {
  color: var(--theia-pickerGroup-foreground) !important;
}

.monaco-icon-label > .monaco-icon-label-container {
  flex: 1;
}

.quick-input-list-rows
  .quick-input-list-row
  .monaco-icon-label
  .monaco-icon-description-container
  .label-description {
    font-family: var(--theia-ui-font-family);
    font-size: calc(var(--theia-ui-font-size1) * 0.9) !important;
    color: var(--theia-foreground) !important;
    white-space: inherit;
}

.quick-input-list-rows
  .quick-input-list-row
  .monaco-icon-label
  .monaco-icon-label-container
  .monaco-icon-name-container
  .label-name {
    font-family: var(--theia-ui-font-family);
    font-size: var(--theia-ui-font-size1) !important;
    color: var(--theia-foreground) !important;
}

.quick-input-list .monaco-icon-label.codicon,
.quick-input-list .monaco-icon-label.file-icon {
  display: flex;
  text-align: left;
}

.quick-input-list .monaco-icon-label::before {
  height: 22px;
}

.codicon-file.default-file-icon.file-icon {
  padding-left: 2px;
  height: 22px;
}

.codicon-file.default-file-icon.file-icon::before {
  margin-right: 4px;
  font-size: var(--theia-ui-font-size1);
}

.quick-input-list .monaco-icon-label.codicon::before {
  position: relative;
  top: 3px;
  margin-right: 5px;
}

.quick-input-list .monaco-icon-label.theia-file-icons-js {
  line-height: inherit;
}

.quick-input-list .quick-input-list-label {
  cursor: pointer !important;
}

.quick-input-progress.active.infinite {
    background-color: var(--theia-progressBar-background);
    width: 3%;
    /* `progress-animation` is defined in `packages/core/src/browser/style/progress-bar.css` */
    animation: progress-animation 1.3s 0s infinite cubic-bezier(0.645, 0.045, 0.355, 1);
}

.monaco-list:not(.drop-target) .monaco-list-row:hover:not(.selected):not(.focused) {
  background: var(--theia-list-hoverBackground);
}

.monaco-editor .peekview-widget .head .peekview-title {
  font-family: var(--theia-ui-font-family);
}

.monaco-editor .peekview-widget .referenceMatch {
  font-family: var(--theia-ui-font-family);
}

.monaco-editor .find-widget .monaco-findInput .input,
.monaco-editor .find-widget .matchesCount {
  font-family: var(--theia-ui-font-family);
}

.monaco-editor .monaco-action-bar .action-label.codicon {
  color: var(--theia-foreground);
}

.monaco-editor .monaco-action-bar .action-item.active {
	transform: none;
}

.monaco-editor .peekview-widget .monaco-list-row.focused.selected .label-name,
.monaco-editor .peekview-widget .monaco-list-row.focused.selected .label-description,
.monaco-editor .peekview-widget .monaco-list-row.focused.selected .monaco-highlighted-label,
.monaco-editor .peekview-widget .monaco-list-row.focused.selected .codicon {
  color: var(--theia-list-activeSelectionForeground) !important;
}

.quick-input-titlebar {
  background-color: var(--theia-quickInputTitle-background);
}

.quick-input-widget input {
  background-color: var(--theia-input-background) !important;
}

.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main .monaco-highlighted-label .highlight {
    color: var(--vscode-editorSuggestWidget-focusHighlightForeground) !important;
}

.symbol-icon-center {
  align-self: center;
  margin-right: 4px;
}

.monaco-inputbox.error > .ibwrapper > .input,
.monaco-inputbox.warning > .ibwrapper > .input,
.monaco-inputbox.info > .ibwrapper > .input {
    outline: 0 !important;
}

.monaco-inputbox > .ibwrapper > .input {
  min-height: 28px;
  border-radius: 2px;
}


.monaco-editor .overlay-button {
  padding: 6px 11px;
  border-radius: 2px;
  cursor: pointer;
  user-select: none;
  z-index: 1;
  background-color: var(--theia-button-background);
  color: var(--theia-button-foreground);
  border: 1px solid var(--theia-contrast-border);
  font-family: var(--theia-ui-font-family);
  line-height: 1.4;
}

.monaco-editor .overlay-button.theia-mod-disabled {
  display: none;
}

.monaco-diff-editor .gutter .action-item .action-label {
  color: var(--theia-editorGutter-itemGlyphForeground);
}

.monaco-diff-editor .gutter .gutterItem .background {
  display: none;
}

/* Code Action Widget (Source Action, Quick Fix, Refactor) */
.action-widget {
  font-family: var(--theia-ui-font-family);
}

.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled) .codicon {
  color: inherit !important;
}

.action-widget .monaco-list-row.action {
  min-width: max-content;
}

/* Editor hover widget and overlay messages.
   Alias --vscode- to --theia- for git blame hover addition/deletion colors
   since the git extension uses --vscode- prefixed variables in inline styles. */
.monaco-editor .monaco-hover {
  font-family: var(--theia-ui-font-family);
  --vscode-scmGraph-historyItemHoverAdditionsForeground: var(--theia-scmGraph-historyItemHoverAdditionsForeground);
  --vscode-scmGraph-historyItemHoverDeletionsForeground: var(--theia-scmGraph-historyItemHoverDeletionsForeground);
}

.monaco-editor .monaco-hover p {
  margin: 0.5em 0;
}

.monaco-editor .monaco-hover code {
  font-family: var(--monaco-monospace-font, var(--theia-code-font-family));
}

.monaco-editor .monaco-hover pre,
.monaco-editor .monaco-hover .monaco-tokenized-source {
  font-family: var(--monaco-monospace-font, var(--theia-code-font-family));
}

.monaco-editor .monaco-hover hr {
  margin-bottom: 0px;
}

.monaco-editor .monaco-editor-overlaymessage .message {
  font-family: var(--theia-ui-font-family);
}
