html {
	tab-size: 4;
}

.advanced-editor {
	position: relative;
	box-sizing: content-box;
	width: calc(100% - 12px);
	height: calc(90vh - 220px);
	min-height: 3.9em;
	max-height: calc(100vh - 100px);
	background: #404051;
	border: 2px solid #212127;
	border-radius: 4px;
	margin: 0 0 8px;
	overflow: hidden;
	--advanced-editor__line-width: 23px;
}

.advanced-editor__line-container, .advanced-editor__interactable-text {
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	padding: 6px 6px 6px calc(var(--advanced-editor__line-width, 30px) + 3px);
	background: none;
	border: none;
	margin: 0;
	font: 11px/15px monospace;
	caret-color: #fff;
	white-space: pre;
}
.advanced-editor__line-container {
	padding: 6px 6px 6px 0;
}

.advanced-editor__interactable-text {
	color: transparent;
	width: 100%;
	height: 100%;
	overflow: auto;
	resize: none;
}

.advanced-editor__line {
	position: relative;
	padding-left: var(--advanced-editor__line-width, 30px);
	counter-increment: line;
}

.advanced-editor__line-num {
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	width: var(--advanced-editor__line-width, 30px);
	height: 15px;
	padding-right: 3px;
	background: #212127;
	color: #aaa;
	font: 9px/15px monospace;
	text-align: right;
}
.advanced-editor__line-num::after {
	content: counter(line);
}

.advanced-editor__line-text {
	color: #eeeeae;
	min-height: 15px;
	margin-left: 3px;
}

.advanced-editor__tab {
	position: relative;
}
.advanced-editor__tab::after {
	content: "→";
	position: absolute;
	right: 3px;
	top: 50%;
	color: #585874;
	transform: translateY(-50%);
}

.advanced-editor__trailing {
	position: relative;
}
.advanced-editor__trailing::after {
	content: "•";
	position: absolute;
	left: 50%;
	top: 50%;
	color: #585874;
	transform: translate(-50%,-50%);
}

.toggle-with-text {
	display: inline-flex;
	white-space: nowrap;
}
.toggle-with-text__text {
	display: block;
	margin-left: 3px;
}

/* Layout */

.l-split {
	display: flex;
}
.l-split__left {
	width: 50%;
	flex: 1 1 auto;
}
.l-split__right {
	width: 50%;
	flex: 1 1 auto;
	margin-left: 8px;
}