@media (prefers-color-scheme: dark) {
	html {
		color-scheme: dark;
	}
}

#table {
	overflow: auto;
}

* {
	box-sizing: border-box;
}

body {
	margin: 0;
	font-family: system-ui;
}

input {
	padding: 0.5em;
}

label {
	display: inline-block;
	font-weight: bold;
}

main {
	display: flex;
	flex-direction: column;
	gap: 1em;
	height: 100vh;
	padding: 2em;
}

table {
	border-collapse: collapse;
	border: thin solid GrayText;
	border-left: 0;
	border-top: 0;
	width: 100%;
}

thead th {
	background-color: Canvas;
        box-shadow: inset 0 1px 0 GrayText, inset 0 -1px 0 GrayText;
	top: 0;
}

thead th:first-child {
        box-shadow: inset -1px 1px 0 GrayText, inset 1px -1px 0 GrayText;
	z-index: 2;
}

tbody > tr:nth-child(odd) {
	background-color: ButtonFace;
}

tbody > tr:nth-child(even) {
	background-color: Canvas;
}

tbody > tr:hover {
	background-color: Highlight;
	z-index: 1;
}

tbody th {
        box-shadow: inset -1px 0 GrayText;
	text-align: left;
	text-wrap-mode: wrap;
}

td {
	padding: 1em;
	white-space: nowrap;
}

th {
	background-color: inherit;
	padding: 1em;
	position: sticky;
	white-space: nowrap;
}

th:first-child {
        box-shadow: inset -1px 0 0 GrayText, inset 1px 0 0 GrayText;
	left: 0;
}
