:root
{
	--page-transition: .2s;
	--page-transition-style: ease-in-out;
}

*
{
	appearance: none;
	-webkit-appearance: none;
	-webkit-text-size-adjust: none;
	-webkit-tap-highlight-color: transparent!important;
	-webkit-touch-callout: none;

	font-family: Arial, Helvetica, sans-serif;

	line-height: 1.5em;
}

body, h1, h2, h3, h4, p, form
{
	margin: 0;
}

input, button, textarea
{
	border: none;
	outline: none;
}

input[type="button"], input[type="submit"], button
{
	cursor: pointer;
}

#preloader
{
	position: fixed;

	height: 100vh;
	width: 100vw;
	top: 0;
	left: 0;

	opacity: 1;

	pointer-events: none;

	will-change: opacity;
	transition: var(--page-transition) opacity var(--page-transition-style);

	z-index: 1000;
}

#dialogue
{
	display: flex;
	position: fixed;

	height: 100vh;
	width: 100%;
	top: 0;

	z-index: 30000;
}

#dialogue .content
{
	margin: auto;
}

#dialogue .content .title:empty, #dialogue .content .subtitle:empty
{
	display: none;
}

.hidden
{
	display: none!important;
}

.flex
{
	display: flex;
	gap: 10px;
}

.flex.column
{
	flex-direction: column;
}

.flex.wrap
{
	flex-wrap: wrap;
}