:root
{
	font-size: 18px;
}
* { font-family: sans-serif; font-size: inherit; }
*, *::after, *::before { margin: 0; padding: 0; box-sizing: border-box; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
html
{
	max-width: 100%;
	block-size: 100%;
	max-block-size: 100%;
	overflow: hidden;
	overflow: clip;
}
body
{
	max-width: 100vw;
	min-width: 100%;
	width: 100%;
	max-block-size: 100%;
	min-height: 100%;
	min-height: 100dvh;
	contain: strict;
	overflow-x: hidden;
	overflow-x: clip;
	overflow-y: auto;
	overscroll-behavior-y: contain;
	scrollbar-width: thin;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.oemain
{
	max-width: 80%;
	min-width: 80%;
	width: 80%;
	min-height: 100%;
	height: 100%;
	display: flex;
	flex-flow: column nowrap;
	align-items: start;
	justify-content: start;
	gap: 1em;
	margin: 0 auto;
	padding: 1.2em 1.2em 8.4em 1.2em;
	overflow-x: auto;
	overflow-y: hidden;
	overscroll-behavior-x: contain;
	line-height: 1.58;
	scrollbar-width: thin;
}
.oemain > * { max-width: 100%; }


@media (max-width: 800px)
{
	:root { font-size: 1.2em; }
	body { font-size: clamp(4vw, 1em, 8vw); }
	.oemain { max-width: 100%; min-width: 100%; width: 100%; padding: 1.2em 1.2rem 8.4em 1.2em; }
}
