/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/
.monaco-editor .cursors-layer {
	position: absolute;
	top: 0;
}

.monaco-editor .cursors-layer > .cursor {
	position: absolute;
	cursor: text;
}
.monaco-editor .cursors-layer > .cursor.secondary {
	opacity: 0.6;
}

/* -- line-style -- */
.monaco-editor .cursors-layer.cursor-line-style > .cursor { width: 2px; }
.monaco-editor .cursors-layer.cursor-line-style > .cursor.secondary { width: 1px; }

/* -- block-style -- */
.monaco-editor .cursors-layer.cursor-block-style > .cursor { width: 1ch; }

/* -- under-line-style -- */
.monaco-editor .cursors-layer.cursor-underline-style > .cursor {
	width: 1ch;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	background: transparent !important;
	box-sizing: border-box;
}

.monaco-editor.vs .cursor {
	background: black;
	border-color: black;
	color: white; /* opposite of black */
}
.monaco-editor.vs-dark .cursor {
	background: #AEAFAD;
	border-color: #AEAFAD;
	color: #51504f; /* opposite of #AEAFAD */
}
.monaco-editor.hc-black .cursor {
	background: #fff;
	border-color: #fff;
	color: #000; /* opposite of #fff */
}

@keyframes cursor-blink {
	50% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes cursor-smooth {
	0%,
	20% {
		opacity: 1;
	}
	60%,
	100% {
		opacity: 0;
	}
}

@keyframes cursor-phase {
	0%,
	20% {
		opacity: 1;
	}
	90%,
	100% {
		opacity: 0;
	}
}

@keyframes cursor-expand {
	0%,
	20% {
		transform: scaleY(1);
	}
	80%,
	100% {
		transform: scaleY(0);
	}
}

.cursor-blink {
	animation: cursor-blink 1s step-start 0s infinite;
}

.cursor-smooth {
	animation: cursor-smooth 0.5s ease-in-out 0s infinite alternate;
}

.cursor-phase {
	animation: cursor-phase 0.5s ease-in-out 0s infinite alternate;
}

.cursor-expand > .cursor {
	animation: cursor-expand 0.5s ease-in-out 0s infinite alternate;
}