* {
	display: block;
	margin: 0;
	padding: 0;
	outline: none;
	user-select: none;
	-webkit-user-select: none;
	-webkit-touch-callout: none;
	-webkit-tap-highlight-color: transparent;
	-webkit-text-size-adjust: none;
	-webkit-overflow-scrolling: touch;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: none;
	touch-action: none;
}

body {
	background: black;
	cursor: none;
	image-rendering: pixelated;
}

screen {
	display: flex;
	flex-direction: column;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

workspace>p {
	background: white;
	color: black;
}

@font-face {
	font-family: IBMVGA8;
	src: url('root/blob/c/windows/fonts/ibm-vga8.ttf');
}

@keyframes flash {
	0% {
		opacity: 1;
	}
	49% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

[hidden],
head,
script,
style {
	display: none;
}

body {
	display: flex;
	flex-direction: column;
	height: 100%;
	user-select: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

full-overlay {
	display: flex;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: black;
	z-index: 100000000;
	justify-content: center;
	align-items: center;
	cursor: none;
}

full-overlay[bsod] {
	background: #010080;
}

full-overlay[bsod] console {
	color: white;
}

full-overlay console-cursor {
	animation: 0.5s flash infinite;
}

console {
	position: relative;
	font-family: IBMVGA8, monospace;
	font-size: 16px;
	color: #A8A8A8;
	white-space: pre;
	line-height: 1;
	width: 60vw;
	height: 60vh;

	--action: white;
	--error: red;
	--warn: yellow;
	--mark: #007afa;
}

console:fullscreen {
	width: 100vw;
	height: 100vh;
}

console-m {
	display: inline;
}

console-cursor {
	position: absolute;
	top: 0;
	left: 0;
}

console-cursor:after {
	content: "#";
	background: var(--color, #A8A8A8);
	color: var(--color, #A8A8A8);
}

console-error-banner {
	position: absolute;
	top: 100%;
	bottom: -100vh;
	inset-inline: -100vw;
	z-index: -1;

	background-color: #010080;
}

console-cell {
	display: inline;
	white-space: pre;
}
