@layer reset {
*,
::before,
::after {
	box-sizing: border-box;
	background-repeat: no-repeat;
}

::before,
::after {
	vertical-align: inherit;
	text-decoration: inherit;
}

:where(html) {
	-webkit-tap-highlight-color: transparent;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	line-height: 1.5;
	text-rendering: geometricPrecision;
	overflow-wrap: break-word;
	tab-size: 4;
}

@media (hover: none) {
	:where(html) {
		touch-action: manipulation;
	}
}

:where(body) {
	margin: unset;
	min-block-size: 100vh;
}

:where(ul, ol):where([role]) {
	padding-inline-start: 0;
	list-style: none;
}

:where(h1, h2, h3, h4, button, input, label) {
	line-height: 1.1;
}

:where(h1, h2, h3, h4, p, figure, blockquote, dl, dd) {
	margin-block: 0;
}

:where(h1, h2, h3, h4) {
	font-weight: normal;
	font-size: 100%;
	/*text-wrap: balance;*/
}

:where(p, li, figcaption) {
	text-wrap: pretty;
}

:where(img, picture, video, canvas, svg) {
	display: block;
	max-inline-size: 100%;
	block-size: auto;
}

:where(img, picture, video) {
	shape-margin: 0.75rem;
	font-style: italic;
}

:where(input, button, textarea, select) {
	margin-block: 0;
	font: inherit;
}

:where(textarea:not([rows])) {
	min-height: 5em;
	field-sizing: content;
}

:where(:target) {
	scroll-margin-block: 2.5em;
}

:where(:not(:defined)) {
	display: block;
}

:where(iframe) {
	border: 0;
}

:where(table) {
	border-collapse: collapse;
	border-spacing: 0;
}

:where(td, th) {
	padding: 0;
}

:where(td, th):where(:not([align])) {
	text-align: inherit;
}

}