:root {
	--min-width: calc(100dvh * 9 / 16);

	font-size: calc(var(--min-width) / 40);
}

* {
	scroll-behavior: smooth;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

html {
	background-color: #222222;
}

body {
	/* height: 100%; */
	width: var(--min-width);
	overflow: hidden;
	position: relative;
	font-size: 2.5rem;
	margin: 0 auto;
}

span {
	display: flex;
}

h1 {
	/* color: blue; */
	cursor: default;
	user-select: none;
}
h1.blue {
	color: blue;
	text-shadow: red 0.25rem 0.25rem 0.25rem;
}
h1.red {
	color: red;
	text-shadow: blue 0.25rem 0.25rem 0.25rem;
}

button {
	/* box-shadow: 0px 0px 0.25rem 0.125rem blue; */
	background-color: red;
	border: 0.25rem solid blue;
	color: white;
	border-radius: 1rem;
	padding: 0.25rem 2rem;
	transition: color 75ms ease-in-out, transform 75ms ease-in-out;
	pointer-events: all !important;
}
button:focus {
	outline: none;
}
button:hover {
	/* box-shadow: 0px 0px 0.25rem 0.25rem blue; */
	transform: scale(1.1);
	color: blue;
}

#mobile-touch {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	z-index: 10;
}
#mobile-left,
#mobile-right {
	width: 50%;
	height: 100%;
	/* background-color: red; */
}

#root {
	height: 300dvh;

	display: flex;
	flex-direction: column;
	/* height: 100%; */
	width: 100%;
	z-index: -10;
}

#menu {
	position: absolute;
	height: calc(100dvh - 5rem);
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	z-index: 100;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	opacity: 0;
	transition: opacity 500ms ease-in-out;
	pointer-events: none;
}
#menu.active {
	opacity: 1;
}

#space {
	flex: 1;
	width: 100%;
	/* background-color: rgba(255, 255, 255, 0.941); */
	background-color: rgb(128, 217, 253);
	position: relative;
	overflow: hidden;
}

#floor {
	height: 5rem;
	background-image: url(flag.webp);
	background-size: cover;
}

#trump {
	--dims: 3rem;
	position: absolute;
	width: 2.8rem;
	height: 7rem;
	bottom: 0;
	left: 0;
	/* background: url(trump-stick-guy.png); */
	/* background-size: contain;
	background-repeat: no-repeat; */
	/* background-color: aqua; */
}
#trump > div {
	position: relative;
}
#trump > div > div {
	width: 3.6rem;
	height: 7rem;
	position: absolute;
	top: 0;
	left: 0;
}

.platform {
	position: absolute;
	left: 0;
	width: 8rem;
	height: 0.6rem;
	background: black;
	background-image: url(flag.webp);
	background-size: cover;
	opacity: 1;
	transition: opacity 500ms ease-in-out;
	border-radius: 1rem;
}

.platform.broken {
	opacity: 0;
}
