#trains span {
	font-size: 50%;
	font-weight: normal;
	line-height: 1.5em;
	padding-left: 0.25em;
}

#trains > p {
	display: block;
	font-size: 70%;
	height: 1.25em;
	line-height: 1em;
	margin: 0;
	padding: 0;
	position: absolute;
	text-align: center;
	width: 1.25em;
	z-index: 1;
}
#trains > p:active {background: #6cf;}
#trains > p > span {
	font-size: 100%;
	font-weight: bold;
	display: block;
	line-height: unset;
	padding: 0.75em 0.25em;
	position: absolute;
	top: -0.75em;
	left: -0.25em;
	width: 100%;
}

#trainlist {
	overflow: hidden;
	text-align: center;
	height: 100%;
	width: 100%;
}

#trains a {
	font-size: 250%;
	line-height: 0.4em;
}
#trainlist img {
	cursor: pointer;
	filter: invert(1);
	padding: 0 0.1em;
	width: 0.95em;
}
#trainlist img:first-child {padding-left: 0.25em;}
#trainlist img:last-child {padding-right: 0.25em;}
#trainlist img:active {filter: invert(0.7) sepia(1) saturate(10) hue-rotate(170deg)}

#trainlist .prev, #trainlist .next {cursor: pointer;}
#trainlist .list {
	display: inline-block;
	font-size: 60%;
	font-weight: bold;
	line-height: 2em;
	scroll-behavior: smooth;
	-ms-overflow-style: none;
}
#trainlist > div {vertical-align: middle;}
#trainlist > div::-webkit-scrollbar {display: none;}

#trains .list label {
	border: 1px solid #ca9;
	border-radius: 6px;
	display: inline-block;
	min-width: 1.25em;
}

#trains input[type="radio"] {display: none;}
#trains input[type="radio"]:checked + label {
	background-color: #ec0;
	color: #000;
}

#trains input[type=checkbox] {display: none;}
#trains input[type=checkbox]:checked + label {
	background-color: #ec0;
	color: #000;
}
