:where(
	body
		*:not(
			style,
			script,
			table,
			thead,
			tbody,
			tr,
			td,
			th,
			input[type="checkbox" i],
			.no-reset *
		)
),
:where(body *::before),
:where(body *::after) {
	all: unset;
	box-sizing: border-box;
	display: block;
}

::-webkit-progress-inner-element {
	display: none;
}

:where(button, input:not([type="text" i]), textarea, a[href]) {
	cursor: pointer;
}

:where(input:not([type="checkbox" i], [type="radio" i]), textarea) {
	inline-size: 100%;
}

:where(input[type="text" i], input[type="password" i], textarea) {
	cursor: text;
}

*:disabled {
	cursor: not-allowed;
}

:where(table) {
	table-layout: fixed;
	border-collapse: collapse;
}
:root {
	--bg-color: hsl(0, 0%, 95%);
	--bg-color-faded: hsl(0 0% 80%);
	--fg-color: hsl(0 0% 10%);
	--fg-color-faded: hsl(0 0% 30%);
}

body {
	margin: 0;
	min-block-size: 100vh;
	background-color: var(--bg-color);
	color: var(--fg-color);
}

@media (prefers-color-scheme: dark) {
	:root {
		--bg-color: hsl(0 0% 10%);
		--bg-color-faded: hsl(0 0% 20%);
		--fg-color: hsl(0 0% 100%);
		--fg-color-faded: hsl(0 0% 50%);
	}
}

.spacer {
	flex: 1;
}
.not-found {
	min-block-size: 100svh;
	display: flex;
	align-items: center;
	justify-content: center;
}

.not-found--title {
	font-size: 4rem;
}
