.session {
	font-size: calc(100vh / 50);
	padding: 0 2% 0 2%;
	background: #000000;
	overflow: hidden;
	position: absolute;
	z-index: 1;
	width: 100%;
	box-sizing: border-box;
}

	.session .ranking {
		box-sizing: border-box;
		min-width: 4.2em;
		margin-bottom: 0.2em;
		overflow: hidden;
		width: 33%;
		float: left;
	}
		.session .ranking .category {
			line-height: 2em;
			font-size: 1em;
			margin: 0;
			padding: 0;
			white-space: nowrap;
			overflow: hidden;
		}

	.session.groups {
		display: flex;
		flex-wrap: wrap;
	}

.driver {
	width: 100%;
	position: relative;

	line-height: 1em;
	margin-bottom: 0.1em;
	height: 1em;
	overflow: hidden;
	box-sizing: border-box;
	white-space: nowrap;
	/*min-width: 4.2em;*/
}
	.driver div {
		position: relative;
		box-sizing: border-box;
	}

	.driver .position {
		width: 2.5em;
		padding-right: 0.5em;
		text-align: right;
		position: absolute;
		font-size: 0.4em;
	}

	.driver .number {
		z-index: 2;
		position: absolute;
		width: 2em;
		height: 2em;
		padding-right: 0.1em;
		left: 2em;
		background: #ffffff;
		color: #000000;
		font-weight: bold;
		text-align: center;
		border-radius: 100%;
		font-size: 0.5em;
		letter-spacing: -0.08em;
	}

	.driver .layers {
		height: 100%;
		margin-left: 1.5em;
	}

	.driver.practice .layers {
		margin-right: 2em;
	}

	.driver .layers .layer {
		z-index: 1;
		width: 100%;
		height: 100%;
		position: absolute;
		display: none;
	}
	.driver .layers .layer:first-child {
		display: block;
	}
		.driver .layers .layer .laps {
			position: relative;
			width: 100%;
			height: 100%;
			font-size: 0.6em;
			box-sizing: border-box;
		}
			.driver .laps .bar {
				min-width: 4.5em;
				position: absolute;
				background-color: #233854;
				width: 80%;
				height: 100%;
				z-index: 3;
				overflow: hidden;
			}
			.driver .laps .nick {
				position: absolute;
				z-index: 1;
				padding-left: 1.2em;
			}
			.driver .laps .nick.bar {
				width: 100%;
				background-color: transparent;
				overflow: hidden;
			}
				.driver .laps .bar .unit {
					opacity: 0.2;
				}
				.driver .laps .bar .time {
					position: absolute;
					z-index: 2;
					right: 0;
					padding-right: 0.4em;
					padding-left: 0.4em;
					background-color: #233854;
				}
				.driver .laps .generalFastest,
				.driver .laps .bar.generalFastest .time {
					background-color: #870079 !important;
				}
			.driver .laps .bar.personalLast {
				position: absolute;
				background-color: #888888;
				width: 85%;
				height: 100%;
				z-index: 1;
				overflow: visible;
			}
				.driver .laps .bar.personalLast .time {
					position: absolute;
					text-align: right;
					left: 100%;
					text-indent: 0.4em;
					color: #888888;
					font-size: 0.8em;
					padding: 0;
					background-color: transparent;
				}
			.driver .laps .personalTopLaps {
				position: relative;
				display: table;
			}
			.driver .laps .personalTopLaps .time {
				display: table-cell;
				padding-left: 0.4em;
				padding-right: 0.4em;
				background-color: #233854;
				box-sizing: border-box;
				border-left: solid 0.2em #000000;
				text-align: center;
				overflow: hidden;
			}
			.driver .laps .personalTopLaps .generalFastest.time {
				background-color: #870079 !important;
			}
			.driver .laps .personalTopLaps .time:first-child {
				border-left: none;
				padding-left: 1.2em;
			}

			.driver.qualified .bar,
			.driver.qualified .laps .personalTopLaps .time,
			.driver.qualified .laps .personalAverage .time {
				/*background-color: #446a00;*/
			}
.templates {
	display: none;
}
