.road {
	height: 50px;
	width: 150px;
	position: relative;
	color: var(--good-contrast);
	display: flex;
}

.small.road {
	height: 25px;
}

.grass {
	height: 10px;
	width: 150px;
	position: relative;
}

.damage .grass {
	height: 20px;
	width: 150px;
}

.horizontal .grass {
	width: 5px;
	height: 35px;
}

.damage.horizontal .grass {
	width: 15px;
	height: 35px;
}

.horizontal .road {
	height: 35px;
	width: 25px;
}

body.pvx .horizontal .grass, 
body.pvx .horizontal .road {
	height: 30px;
}

.grass .lane,
.road .lane,
.road .lane-arrow ,
.road .lane-arrow-sens2 {
	display: flex;
    align-items: center;
    justify-content: center;
	flex: 1;
	height: 100%;
	background-color:grey; 
	margin: 0px 20px 0px 20px;
	background-repeat: no-repeat;
	background-size: 15px;
	background-position: center;
	background-image: url(images/cross_empty.png);
}

body.pvx .grass .lane,
body.pvx .road .lane,
body.pvx .road .lane-arrow,
body.pvx .road .lane-arrow-sens2 {
	background-color: #e3e3e3; 
}

.road .lane-arrow {
	background-image: url(images/arrow_empty.svg);
}
.road .lane-arrow-sens2 {
	background-image: url(images/arrow_empty_sens2.svg);
}

.road .lane-arrow.circulated {
	background-image: url(images/arrow_filled.svg);
}

.road .lane-arrow-sens2.circulated {
	background-image: url(images/arrow_filled_sens2.svg);
}

.horizontal.damage .road .lane {
	background-size: 15px;
}

.damage .road .lane {
	background-size: 20px;
	background-image: url(images/warn_faded_white.png);
}

.horizontal.damage .grass .lane > *,
.horizontal .road .lane {
	background-image: none;
}

.horizontal .grass .lane,
.horizontal .road .lane {
	width: 100%;
	margin: unset;
}

.sens-sens {
	position: relative;
}

.grass .lane {
	background-image: none;
	background-color: #269e26;
    position: relative;
}

body.pvx .grass .lane {
	background-color: #ffffff;
}

.damage .grass .lane {
	height: 20px;
}

.horizontal.damage .grass .lane {
	height: 100%;
}

.damage .sens-sens {
	height: 20px;
}

.horizontal.damage .sens-sens {
	height: 100%;
	width: 10px;
}
.damage .sens-sens > *,
.damage .grass .lane > * {
    height: 30px;
    width: 30px;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    position: absolute;
	background-repeat: no-repeat;
	background-size: 20px;
    transition: 0.3s;
	background-position: center;
	background-image: url(images/warn_faded_white.png);
}

.damage .sens-sens > * {
    background-color: white;
    top: 0%;
    border: 1px solid var(--low-contrast);
    border-radius: 25px;
    height: 30px;
    width: 30px;
}

.damage .sens-sens > * {
	background-image: url(images/warn_faded_black.png);
}

.damage .sens-sens.empty > * {
	background-image: none;
}

.horizontal.damage .sens-sens > * {
	background-image: none;
}

.horizontal.damage .sens-sens > *,
.horizontal.damage .grass .lane > * {
    height: 15px;
    width: 15px;
    top: 0px;
    left: -1px;
    transform: translateX(-50%);
    position: absolute;
    background-repeat: no-repeat;
    background-size: 15px !important;
    background-position: center;
}

.horizontal.damage .grass .lane > * {
    left: 50%;
}

.damage .sens-sens.damaged > *,
.grass .lane.damaged > * {
	background-image: url(images/attention_orange.png) !important;
}

.damage .sens-sens.emergency > *,
.grass .lane.emergency > * {
	background-size: 25px;
	background-image: url(images/attention_rouge.png) !important;
}

.road .lane.impacted {
	background-image: url(images/cross_filled.png) !important;
}

.road .lane.damaged {
	background-image: url(images/attention_orange.png) !important;
}
.road .lane.emergency {
	background-size: 25px;
	background-image: url(images/attention_rouge.png) !important;
}

.road .label {
	transform: rotate(-90deg);
	position: absolute;
	width: 17px;
	top: 50%;
	left: 0; 
    line-height: 13px;
	background: none;
/* 	transform-origin: 0 0; */
    word-break: break-all;
/* 	transform: rotate(-90deg) translateX(-50%); */
 	transform: translateY(-50%);
}
.road .signal {
	position: absolute;
	width: 17px;
	height: 17px;
	top: 50%;
	right: 0;
	background-repeat: no-repeat;
	background-size: 17px;
	background-position: center;
    transform: translateY(-50%);
}
.bau-lane, .lane-lane, .sens-sens {
	margin: 0px 20px 0px 20px;
}

.horizontal .bau-lane,
.horizontal .lane-lane,
.horizontal .sens-sens {
	margin: unset;
}

.horizontal .sens-sens {
	width: 2px;
	height: unset;
}

.bau-lane {
	background-image: linear-gradient(to right, gray 30%, white 0%);
	background-position: bottom;
	background-size: 30px 3px;
	background-repeat: repeat-x;
	height: 3px;
}

.horizontal .bau-lane {
	background-image: linear-gradient(to bottom, gray 30%, white 0%);
	background-position: top;
	background-size: 2px 30px;
	background-repeat: repeat-y;
	width: 2px;
	height: unset;
}

body.pvx .horizontal .bau-lane {
	background-size: 2px 25px;
	background-image: linear-gradient(to bottom, #e3e3e3 30%, white 0%);
}

.lane-lane {
	background-image: linear-gradient(to right, gray 60%, white 0%);
	background-position: bottom;
	background-size: 10px 2px;
	background-repeat: repeat-x;
	height: 2px;
}

.horizontal .lane-lane {
	background-image: linear-gradient(to bottom, gray 60%, white 0%);
	background-position: top;
	background-size: 1px 10px;
	background-repeat: repeat-y;
	width: 1px;
	height: unset;
}

body.pvx .horizontal .lane-lane {
	background-size: 1px 5px;
	background-image: linear-gradient(to bottom, #e3e3e3 60%, white 0%);
}


.sens-sens {
	background-color: white;
	height: 3px;
}
body.pvx .sens-sens {
	background-color: gray;
}

.horizontal .lane-lane {
	width: 1px;
	height: unset;
}


.impact-travaux-separator {
	height: 1px;
}

.road-impact {
	display: block;
}

.road-travaux {
	display: none;
}

body.pvx .hide-impacts .road-impact {
	display: none;
}

body.pvx .show-travaux .road-travaux {
	display: block;
}

body.pvx .smaller-schema .horizontal .grass {
	height: 17px;
	width: 1px;
}

body.pvx .smaller-schema .horizontal .road {
	height: 17px;
	width: 17px;
}

.road-icon {
	width: 15px;
}

.smaller-schema .road-icon {
	width: 12px;
}

.top-info-sens {
	display: flex;
	margin: 0px 5px;
}

.smaller-schema .top-info-sens {
	display: none;
}