/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/

.monaco-shell {
	height: 100%;
	width: 100%;
	color: #6C6C6C;
	margin: 0;
	padding: 0;
	overflow: hidden;
	font-size: 11px;
	-webkit-user-select: none;
}

/* Font Families (with CJK support) */

.monaco-shell { font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "HelveticaNeue-Light", "Ubuntu", "Droid Sans", sans-serif; }
.monaco-shell:lang(zh-Hans) { font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "HelveticaNeue-Light", "Noto Sans", "Microsoft YaHei", "PingFang SC", "Hiragino Sans GB", "Source Han Sans SC", "Source Han Sans CN", "Source Han Sans", sans-serif; }
.monaco-shell:lang(zh-Hant) { font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "HelveticaNeue-Light", "Noto Sans", "Microsoft Jhenghei", "PingFang TC", "Source Han Sans TC", "Source Han Sans", "Source Han Sans TW", sans-serif; }
.monaco-shell:lang(ja) { font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "HelveticaNeue-Light", "Noto Sans", "Meiryo", "Hiragino Kaku Gothic Pro", "Source Han Sans J", "Source Han Sans JP", "Source Han Sans", "Sazanami Gothic", "IPA Gothic", sans-serif; }
.monaco-shell:lang(ko) { font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "HelveticaNeue-Light", "Noto Sans", "Malgun Gothic", "Nanum Gothic", "Dotom", "Apple SD Gothic Neo", "AppleGothic", "Source Han Sans K", "Source Han Sans JR", "Source Han Sans", "UnDotum", "FBaekmuk Gulim", sans-serif; }

@-webkit-keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }

.monaco-shell img {
	border: 0;
}

.monaco-shell label {
	cursor: pointer;
}

.monaco-shell a {
	text-decoration: none;
}

.monaco-shell a.plain {
	color: inherit;
	text-decoration: none;
}

.monaco-shell a.plain:hover, .monaco-shell a.plain.hover {
	color: inherit;
	text-decoration: none;
}

/* START Keyboard Focus Indication Styles */

.monaco-shell.vs [tabindex="0"]:focus,
.monaco-shell.vs .synthetic-focus,
.monaco-shell.vs select:focus,
.monaco-shell.vs input[type="button"]:focus,
.monaco-shell.vs input[type="submit"]:focus,
.monaco-shell.vs input[type="search"]:focus,
.monaco-shell.vs input[type="text"]:focus, .monaco-shell.vs textarea:focus,
.monaco-shell.vs input[type="checkbox"]:focus {
	outline: 1px solid rgba(0, 122, 204, 0.4);
	outline-offset: -1px;
	opacity: 1 !important;
}

.monaco-shell input[type="search"]::-webkit-search-decoration,
.monaco-shell input[type="search"]::-webkit-search-results-button,
.monaco-shell input[type="search"]::-webkit-search-results-decoration {
	display: none;
}

.monaco-shell input[type="search"]::-webkit-search-cancel-button {
	-webkit-appearance: none;
	height: 18px;
	width: 18px;
	background-image: url('clear.svg');
	background-repeat: no-repeat;
	background-position: center center;
}

.monaco-shell.vs-dark [tabindex="0"]:focus,
.monaco-shell.vs-dark .synthetic-focus,
.monaco-shell.vs-dark select:focus,
.monaco-shell.vs-dark input[type="button"]:focus,
.monaco-shell.vs-dark input[type="submit"]:focus,
.monaco-shell.vs-dark input[type="search"]:focus,
.monaco-shell.vs-dark input[type="text"]:focus, .monaco-shell.vs-dark textarea:focus,
.monaco-shell.vs-dark input[type="checkbox"]:focus {
	outline: 1px solid rgba(14, 99, 156, 0.6);
	outline-offset: -1px;
	opacity: 1 !important;
}

.monaco-shell.hc-black [tabindex="0"]:focus,
.monaco-shell.hc-black .synthetic-focus,
.monaco-shell.hc-black select:focus,
.monaco-shell.hc-black input[type="button"]:focus,
.monaco-shell.hc-black input[type="text"]:focus, .monaco-shell.hc-black textarea:focus,
.monaco-shell.hc-black input[type="search"]:focus,
.monaco-shell.hc-black input[type="checkbox"]:focus {
	outline: 2px solid #f38518;
	outline-offset: -1px;
}

.monaco-shell.vs .monaco-text-button:focus,
.monaco-shell.vs-dark .monaco-text-button:focus,
.monaco-shell.vs .action-button:focus,
.monaco-shell.vs-dark .action-button:focus {
	outline-color: rgba(255, 255, 255, .5); /* buttons have a blue color, so focus indication needs to be different */
}

.monaco-shell.vs .monaco-text-button:focus,
.monaco-shell.vs .action-button:focus {
	outline-offset: -2px; /* Inset outline so it stands out on light background. */
}

.monaco-shell.hc-black .action-button:focus {
	outline-offset: -4px; /* Helps high-contrast outline avoid clipping. */
}

.monaco-shell.hc-black .synthetic-focus input {
	background:transparent; /* Search input focus fix when in high contrast */
}

.monaco-shell.vs .monaco-tree.focused .monaco-tree-row.focused [tabindex="0"]:focus {
	outline: 1px solid #007ACC; /* higher contrast color for focusable elements in a row that shows focus feedback */
}

.monaco-shell.vs-dark .monaco-tree.focused .monaco-tree-row.focused [tabindex="0"]:focus {
	outline: 1px solid #007ACC; /* higher contrast color for focusable elements in a row that shows focus feedback */
}

.monaco-shell .monaco-tree.focused.no-focused-item:focus:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 5; /* make sure we are on top of the tree items */
	content: "";
	pointer-events: none; /* enable click through */
}

.monaco-shell.vs .monaco-tree.focused.no-focused-item:focus:before {
	outline: 1px solid rgba(0, 122, 204, 0.4); /* we still need to handle the empty tree or no focus item case */
	outline-offset: -1px;
}

.monaco-shell.vs-dark .monaco-tree.focused.no-focused-item:focus:before {
	outline: 1px solid rgba(14, 99, 156, 0.6); /* we still need to handle the empty tree or no focus item case */
	outline-offset: -1px;
}

.monaco-shell.hc-black .monaco-tree.focused.no-focused-item:focus:before {
	outline: 2px solid #f38518; /* we still need to handle the empty tree or no focus item case */
	outline-offset: -2px;
}

.monaco-shell .synthetic-focus :focus {
	outline: 0 !important; /* elements within widgets that draw synthetic-focus should never show focus */
}

.monaco-shell .monaco-inputbox.info.synthetic-focus,
.monaco-shell .monaco-inputbox.warning.synthetic-focus,
.monaco-shell .monaco-inputbox.error.synthetic-focus,
.monaco-shell .monaco-inputbox.info input[type="text"]:focus,
.monaco-shell .monaco-inputbox.warning input[type="text"]:focus,
.monaco-shell .monaco-inputbox.error input[type="text"]:focus {
	outline: 0 !important; /* outline is not going well with decoration */
}

.monaco-shell .monaco-tree.focused:focus {
	outline: 0 !important; /* tree indicates focus not via outline but through the focussed item */
}

.monaco-shell [tabindex="0"]:active,
.monaco-shell select:active,
.monaco-shell input[type="button"]:active,
.monaco-shell input[type="submit"]:active,
.monaco-shell input[type="checkbox"]:active,
.monaco-shell .monaco-tree .monaco-tree-row .monaco-action-bar .action-item [tabindex="0"]:hover,
.monaco-shell .monaco-tree.focused.no-focused-item:active:before {
	outline: 0 !important; /* fixes some flashing outlines from showing up when clicking */
}

.monaco-shell .activitybar [tabindex="0"]:focus {
	outline: 0 !important; /* activity bar indicates focus custom */
}

.monaco-shell .part.editor .binary-container {
	outline: 0 !important;
}

/* END Keyboard Focus Indication Styles */

.monaco-shell a.prominent {
	text-decoration: underline;
}

a:active {
	color: inherit;
	background-color: inherit;
}

.monaco-shell input {
	color: inherit;
	font-family: inherit;
}

.monaco-shell select {
	font-family: inherit;
}

.monaco-shell .pointer {
	cursor: pointer;
}

.monaco-shell .context-view .tooltip {
	background-color: white;
	border: 1px solid #ccc;
}

.monaco-shell .context-view.bottom.right .tooltip:before {
	border-width: 6px;
	border-bottom: 6px solid #ccc;
}

.monaco-shell .context-view.bottom.right .tooltip:after {
	border-width: 5px;
	border-bottom: 5px solid white;
}

.monaco-shell input:disabled {
	background-color: #E1E1E1;
}

/* ---------- Dark Theme ---------- */

.monaco-shell.vs-dark {
	color: #BBB;
	background-color: #1E1E1E;
}

.monaco-shell.vs-dark .monaco-action-bar.vertical .action-label.separator {
	border-bottom-color: #666;
}

.monaco-shell.vs-dark .context-view .tooltip {
	background-color: #1E1E1E;
	border-color: #707070;
}

.monaco-shell.vs-dark .context-view.bottom.right .tooltip:before {
	border-bottom: 6px solid #707070;
}

.monaco-shell.vs-dark .context-view.bottom.right .tooltip:after {
	border-bottom: 5px solid #1E1E1E;
}

.monaco-shell.vs-dark input:disabled {
	background-color: #333;
}

/* ---------- High Contrast Theme ---------- */

.monaco-shell.hc-black { color: #fff; background-color: #000; }

.monaco-shell.hc-black .context-view .tooltip {
	background-color: black;
}

.monaco-shell.hc-black .context-view .tooltip:before {
	border-width: 0 !important;
}

.monaco-shell.hc-black .context-view .tooltip:after {
	border-width: 0 !important;
}