html {
	min-height: 100%;
}

body {
	min-height: 100vh;
	margin: 0;
	position: relative;
	isolation: isolate;
}

body::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: -1;
	background: url('../images/shitty-art/original/shitty-computer-background.png') center center / cover no-repeat;
}

body > .container {
	box-sizing: border-box;
	width: calc(100% - 48px);
	max-width: 1100px;
	margin: 12px auto;
	padding: 0;
}

body > .container > .row {
	margin-right: 0;
	margin-left: 0;
}

body > .container .container {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

.header {
	background-color: white;
}

.panel {
	background-color: #FFFB;
	border: 1px solid black;
}

.banner-name {
	font-size: clamp(1.25rem, 2vw, 2rem);
}

.color-control-panel {
	display: block;
	flex: 0 1 520px;
	width: 100%;
	max-width: 520px;
	margin: 50px auto 0;
	padding-bottom: 12px;
	box-sizing: border-box;
}

.color-control-panel svg {
	display: block;
	width: 100% !important;
	max-width: 100% !important;
	height: auto;
}

#enable-audio {
	margin: 0;
	min-height: 42px;
	padding: 8px 14px;
	border: 1px solid #111;
	background: #fff;
	color: #111;
	font-weight: bold;
}

#enable-audio:disabled {
	opacity: 0.55;
}

.audio-controls {
	min-height: 102px;
	padding: 0 5px;
	box-sizing: border-box;
}

#loading-status {
	min-height: 3rem;
	margin: 0 0 12px;
}

@media (max-width: 575px) {
	body > .container {
		width: calc(100% - 24px);
		margin: 12px auto;
	}

	body::before {
		background-position: 50% 50% !important;
		background-size: auto 100vh;
		background-size: auto 100dvh;
	}

	.header {
		font-size: 0.875rem;
	}

	.last-modified {
		display: block;
		float: none;
		text-align: left;
	}

	.color-control-panel {
		width: 100%;
		margin-top: 24px;
	}

	#loading-status {
		font-size: 0.95rem;
	}
}
