*, *:before, *:after {
	box-sizing: border-box;
	padding: 0px;
	margin: 0px;
	font-family: Arial;
	color: #ffffff;
}

body {
	/* light black as used in COBI app */
	background-color: #2D2D37;
	overflow: hidden;
}

.invisible {
	display: none !important;
}

#winSizeDisplay {
	position: absolute;
	bottom: 0px;
	right: 0px;
	border: 2px solid #ffffff;
	border-radius: 5px;
	padding: 3px 7px 3px 7px;
	color: #ffffff;
	font-family: Arial;
	font-size: 28px;
	z-index: 10000;
	background-color: transparent;
}

#timeDisplay {
	position: absolute;
	top: 5px;
	left: 5px;
	width: 140px;
	height: 45px;
	border: 2px solid #ffffff;
	border-radius: 5px;
	padding: 3px 7px 3px 50px;
	color: #ffffff;
	font-size: 32px;
	z-index: 10000;
	background-color: transparent;
	background-image: url("/images/clock_white.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left center;
}

#mainContent {
}

.drivePower_container,
.cadence_container,
.speed_container,
.drivingStats_container {
	border: 1px dotted #ffffff;
	border-radius: 2px;
	display: flex;
	position: absolute;
	left: 10px;
	right: 10px;
	height: 25%;
}
.drivePower_container {
	bottom: 10px;
}
.cadence_container {
	bottom: calc(20px + 25%);
	left: unset;
	width: 36%;
	height: 18%;
}
.speed_container {
	bottom: calc(20px + 25%);
	width: 60%;
	height: 18%;
}

.icon_container {
	-border: 3px solid green;
	height: 100%;
	aspect-ratio: 1;
}
.icon_container>.icon_overlay {
	-border: 3px solid #ffffff;
	position: relative;
	top: 0;
	left: 0;
	height: 100%;
	z-index: 10;
}
.icon_overlay>img {
	--size: 80%;
	position: absolute;
	top: calc(50% - (var(--size) / 2));
	left: calc(50% - (var(--size) / 2));
	max-width: var(--size);
	max-height: var(--size);
}
.drivePower_container .icon_overlay>img {
	--size: 60%;
	top: calc(40% - (var(--size) / 2));
}
.icon_container>.icon_underlay {
	position: relative;
	top: -100%;
	left: 0px;
	height: 100%;
	z-index: 5;
}
.icon_underlay>.motorLevel {
	-border: 1px solid #ffffff55;
	position: relative;
	width: 100%;
	height: 25.01%;
}

.ml_0 { /* motorLevel: Off */
	background-color: transparent;
}
.ml_1 { /* motorLevel: Eco */
	background-color: #00ff0055;
	font-size: 5vh;
}
.motorLevel.ml_1 {
	text-align: center;
}
.ml_2 { /* motorLevel: Tour */
	background-color: #0000ff55;
}
.ml_3 { /* motorLevel: Sport */
	background-color: #c926ff55;
}
.ml_4 { /* motorLevel: Turbo */
	background-color: #ff000055;
}

.content_container {
	-border: 3px solid #ff0000;
	flex-grow: 1;
	height: 100%;
}
.content_container>.container2 {
	-border: 3px solid red;
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.userPower_bar,
.motorPower_bar,
.cadence_bar,
.speed_bar {
	border-radius: 2px;
	position: absolute;
	left: 10px;
	right: 10px;
	height: 42%;
	font-size: 6vh;
	background-repeat: no-repeat;
	background-size: 0%;
}
.userPower_bar {
	-border: 2px dotted #00dd00;
	top: 5%;
	background-image: linear-gradient(#00dd00, #00dd00);
}
.motorPower_bar {
	-border: 2px dotted #cc0000;
	bottom: 5%;
	background-image: linear-gradient(#cc0000, #cc0000);
}
.userPower_bar>span,
.motorPower_bar>span {
	font-size: 9vh;
}
.cadence_bar>span,
.speed_bar>span {
	font-size: 12vh;
}
.cadence_bar,
.speed_bar {
	-border: 2px dotted #777777;
	top: 10%;
	left: 0;
	height: 80%;
	background-image: linear-gradient(#777777, #777777);
}

.drivingStats_container {
	border: 0px;
	bottom: calc(30px + 43%);
	top: 10px;
	height: calc(57% - 40px);
	padding: 7px;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
.drivingStats_container .icontainer.left {
	width: auto;
	height: 70%;
}
.drivingStats_container .icontainer.middle {
	width: auto;
	height: 95%;
}
.drivingStats_container .icontainer.right {
	position: relative;
	height: 90%;
	aspect-ratio: 0.6;
}
.drivingStats_container .icontainer.left>img,
.drivingStats_container .icontainer.middle>img,
.drivingStats_container .icontainer.right>img {
	width: auto;
	height: 100%;
}
.drivingStats_container .value_container {
	-border: 3px solid gray;
	text-align: center;
	font-size: 5vh;
}
.drivingStats_container .value_container>span {
	font-size: 7vh;
}
.drivingStats_container .bottomline {
	border-bottom: 5px dotted #ffffff;
	position: absolute;
	bottom: 0;
	left: 10%;
	width: 80%;
}

.battery_container {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.battery_cap {
	border: 7px solid #ffffff;
	border-radius: 10px;
	position: absolute;
	top: 0;
	left: 30%;
	right: 30%;
	height: 20%;
}
.battery_body {
	border: 7px solid #ffffff;
	border-radius: 10px;
	position: absolute;
	top: 10%;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #2D2D37;
}
.battery_level_bar {
	border-radius: 2px;
	position: absolute;
	bottom: 2px;
	width: calc(50% - 3px);
	height: 96%;
	background-color: #00dd00;
}
.battery_level_bar.left {
	left: 2px;
}
.battery_level_bar.right {
	right: 2px;
}
