:root {
	--rat: #0a0e11;
	--base02: #2b2b2b;
	--base07: #fafafa;
	--whiterose: #dee3e7;
}

.repl {
	border: 1px solid #62605921;
	border-radius: 4px;
	overflow: hidden;
}

.repl .repl-editor-wrap {
	position: relative;
}

.repl .repl-placeholder {
	margin: 0;
	padding: 4px 0;
	font-size: 13px;
	line-height: 1.5;
	font-family: 'Maple Mono NL NF', 'JetBrains Mono', 'Fira Code', monospace;
	background: var(--rat);
	color: var(--whiterose);
	white-space: pre;
	overflow-x: auto;
	min-height: 1.5em;
}

.repl .cm-editor {
	background: var(--rat);
}

.repl .cm-editor .cm-gutters {
	display: none;
}

.repl .cm-vim-panel {
	display: none;
}

.repl .cm-scroller {
	overflow: visible;
}

.repl .repl-run {
	position: absolute;
	top: 0.4rem;
	right: 0.4rem;
	z-index: 10;
	font: inherit;
	font-size: 0.67rem;
	cursor: pointer;
	background: var(--base02);
	color: var(--base07);
	border: none;
	border-radius: 3px;
	padding: 0.15rem 0.5rem;
	opacity: 0.7;
	transition: opacity 0.15s;
}

.repl .repl-run:hover {
	opacity: 1;
}

.repl .repl-run:disabled {
	opacity: 0.3;
	cursor: default;
}

.repl .repl-output {
	margin: 0;
	padding: 0.5em 1em;
	font-size: 0.85rem;
	background: var(--rat);
	color: var(--whiterose);
	border-top: 1px solid #62605969;
}

.repl .repl-output.repl-ok {
	color: #8bc34a;
}

.repl .repl-output.repl-err {
	color: #ef5350;
}

.repl .repl-output .repl-stdio {
	color: var(--whiterose);
}
