:where(*, *::before, *::after) {
	box-sizing: border-box;
}
:where(:first-child) {
	margin-block-start: 0;
}
:where(:last-child) {
	margin-block-end: 0;
}

:where(html) {
	font-size: 100%;
	font-synthesis: none;
}
:where(body) {
	margin: 0;
	padding: 1em;
}

:where(a) {
	text-underline-offset: 0.1em;
}

:where(a, button, input, select) {
	font: inherit;
}
:where(code, kbd, pre) {
	font-size: inherit;
}
:where(a, button, select, [type="button"], [type="submit"]) {
	cursor: pointer;
}

:where(canvas, iframe, img) {
	display: block;
	max-inline-size: 100%;
}

:where(table) {
	border-collapse: collapse;
}
:where(th, td) {
	border: 1px solid CanvasText;
}

:where(dialog) {
	overscroll-behavior: contain;
}

:is([hidden], .hidden) {
	display: none;
}

.icon-svg {
	display: inline-block;
	height: 0.9em;
	margin-block-start: calc(0.5lh - 0.5em);
	vertical-align: top;
}

.visually-hidden:not(:focus-visible, :active) {
	position: absolute;
	width: 1px;
	height: 1px;
	white-space: nowrap;
	overflow: hidden;
	clip-path: rect(0 0 0 0);
}
