/* ============================================= */
/* CSS for control sap.ui.codeeditor/CodeEditor  */
/* Base theme                                    */
/* ============================================= */

.sapCEdThemeDefault .ace_editor {
	background-color: var(--sapField_Background);
	color: var(--sapField_TextColor);
	font-family: '72 Mono', 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Source Code Pro', 'source-code-pro', monospace;

	.ace_gutter {
		background: var(--sapField_ReadOnly_Background);
		color: var(--sapField_TextColor);
	}

	.ace_print-margin {
		width: 1px;
		background: var(--sapField_ReadOnly_Background);
	}

	.ace_cursor {
		color: var(--sapField_TextColor);
	}

	.ace_marker-layer .ace_selection {
		background: var(--sapField_ReadOnly_Background);
	}

	.ace_marker-layer .ace_bracket {
		margin: -1px 0 0 -1px;
		border: 1px solid var(--sapField_SuccessColor);
	}

	.ace_marker-layer .ace_active-line {
		background: transparent;
		/* no indication for better contrast */
	}

	.ace_gutter-active-line {
		background-color: var(--sapField_SuccessBackground);
	}

	.ace_marker-layer .ace_selected-word {
		outline: 1px dotted var(--sapField_Active_BorderColor);
		outline-offset: -1px;
		z-index: 10;
	}

	.ace_keyword,
	.ace_meta,
	.ace_storage,
	.ace_storage.ace_type,
	.ace_support.ace_type {
		color: var(--sapLegendColor10);
	}

	.ace_keyword.ace_operator {
		color: var(--sapLegendColor7);
	}

	.ace_constant.ace_character,
	.ace_constant.ace_language,
	.ace_constant.ace_numeric,
	.ace_keyword.ace_other.ace_unit,
	.ace_support.ace_constant,
	.ace_variable.ace_parameter {
		color: var(--sapLegendColor12);
	}

	.ace_constant.ace_other {
		color: var(--sapLegendColor4);
	}

	.ace_fold {
		background-color: var(--sapLegendColor20);
		border-color: var(--sapLegendColor20);
	}

	.ace_entity.ace_name.ace_function,
	.ace_support.ace_function {
		color: var(--sapLegendColor6);
	}

	.ace_support.ace_class,
	.ace_support.ace_type {
		color: var(--sapLegendColor3);
	}

	.ace_heading,
	.ace_markup.ace_heading,
	.ace_string {
		color: var(--sapLegendColor18);
	}

	.ace_entity.ace_name.ace_tag,
	.ace_entity.ace_other.ace_attribute-name,
	.ace_meta.ace_tag,
	.ace_string.ace_regexp,
	.ace_variable {
		color: var(--sapLegendColor2);
	}

	.ace_comment {
		color: var(--sapLegendColor9);
	}

	.ace_marker-layer .ace_error_bracket {
		border-color: var(--sapField_InvalidColor);
	}

	.ace_fold-widget {
		background-color: var(--sapField_SuccessBackground);
	}

	.ace_fold-widget:hover {
		border-color: var(--sapField_SuccessColor);
	}

	.ace_indent-guide {
		position: relative;

		&::after {
			content: '';
			position: absolute;
			top: 0.0625rem;
			right: 0;
			left: 0;
			bottom: 0;
			border-inline-end: 0.0625rem dotted var(--sapField_SuccessColor);
			margin-inline-end: -0.0625rem;
		}
	}
}