
#map {height:100%;}

#map .leaflet-marker-icon, #map .leaflet-popup, #map .leaflet-pane .leaflet-shadow-pane * {
	transition: transform .3s;
}

#status {
	position:absolute;
	top:-40px;
	right:10px;
	background:#444;
	font-size:80%;
	padding:3px;
	z-index:1000;
}

#map.hide-data .train-content {
	visibility: hidden;
}

.map-icon-train {
	--border-width: 2px;
	--border-color: #F00;
	--bearing: 0deg;
	--td-margin: 20px;
	--td-margin-diagonal:18px;

	border:var(--border-width) solid #F00;
	background:#FFF;
	border-radius:100%;
	display: flex;
	justify-content: center;
	align-items: center;

	&::before {
		content: '';
		position:absolute;
		width:10px;
		height:10px;
		transform:rotate(calc(45deg + var(--bearing)));
		transform-origin: 10px 10px;
		position:absolute;
		top:calc(0px - var(--border-width));
		left: calc(0px - var(--border-width));
		border-left:var(--border-width) solid #F00;
		border-top:var(--border-width) solid #F00;
	}

	/* Databox */
	/*&::after, .train-content {
		content: attr(data-ident) '\A' attr(data-speed);
		position:absolute;
		color:#fff;
		text-shadow: 0 0 10px #000, 0 0 10px #000, 0 0 2px #000, 0 0 1px #000, 0 0 1px #000, 0 0 1px #000, 0 0 1px #000, 0 0 1px #000, 0 0 1px #000, 0 0 1px #000;
		white-space: pre;
		transform-origin: 10px 10px;
	}*/

	.train-content {
		position:absolute;
		display:flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap:1px;
		line-height:1;
		transition: all .25s;

		* {
			background-color:#FFFF;
			color:#000;
			white-space: nowrap;
			padding:2px;
			border-radius:3px;
		}
		*:empty {
			display:none;
		}

		.td-speed {
			font-size:80%;
		}
	}

	&.td-r::after, .train-content.td-r {
		left:var(--td-margin);
		text-align:left;
		align-items: flex-start;
	}
	&.td-l::after, .train-content.td-l {
		right:var(--td-margin);
		text-align: right;
		align-items: flex-end;
	}
	&.td-t::after, .train-content.td-t {
		bottom:var(--td-margin);
		text-align:center;
	}
	&.td-b::after, .train-content.td-b {
		top:var(--td-margin);
		text-align:center;
	}
}

#stupid-bottom-padding-that-should-be-removed {display:none;}
