:root {
	--light: #ffffff;
	--light-lite: #bbbbbb;
	--dark: #000000;
	--dark-lite: #00143d;
	--ontime: #00ff00;
	--delayed: #ffaa00;
	--omitted: #ff0000;
	--blau: #004D9E;
	--gruen: #00963E;
	--height-row: 8vw; /* 4vw  /**/
	--font-normal: 6vw;/* 3vw 60px /**/
	--font-size: 4.8vw;/* 2.4vw 48px /**/
	--font-medium: 4vw;/* 2vw 40px /**/
	--font-small: 3vw; /* 1.5vw 30px /**/
	--font-very-small: 2vw;
	--icon-size: 4.8vw; /* 2.4vw 48px /**/
	--icon-round-size: 5.6vw; /* 2.8vw 56px /**/
	--logo-height: 5.6vw; /* 2.8 vw 56px /**/
	--logo-margin: 1.6vw; /* 0.8vw 18px /**/
	--logo-margin-left: 2.4vw; /* 1.2vw 24px /**/
	--line-height-d: 9.2vw; /* 4.6vw 92px /**/
}
@font-face {
	font-family: 'Source Sans 3';
	src: url('/fonts/SourceSans3-VariableFont_wght.ttf');
}
@font-face {
	font-family: 'ÖPNV Pikto';
	src: url('/fonts/OEPNV-Pikto.otf');
}
body, table {
	font-family: 'Source Sans 3';
	/*line-height: 1.5em;/**/
	font-size: var(--font-normal);
	margin: 0px;
	padding: 0px;
	/*overflow: hidden;/**/
	-ms-overflow-style: none; /* for Internet Explorer, Edge */
	scrollbar-width: none; /* for Firefox */
	overflow-y: scroll;
}
body::-webkit-scrollbar {
	display: none; /* for Chrome, Safari, and Opera */
}
oepnv {
	font-family: 'ÖPNV Pikto';
}

div.tr div {
	height: var(--height-row);
}
div.tr div:not(.ri) {
	display: grid;
	align-items: center;
}
info {
	font-size: var(--font-very-small);
}
div .ri {
	border-bottom-style: solid;
	border-bottom-width: 1px;
}
body, table {
	background: var(--dark-lite);
	color: var(--light);
}
.ontime {
	color: var(--ontime);
}
.sdelay {
	color: var(--delayed);
}
.delay {
	color: var(--omitted);
}
div.tr div {
	border-bottom-color: var(--light);
}
.th {
	background-color: var(--gruen);
	color: var(--light);
}


.th {
	margin-top: 20px;
	font-decoration: none;
	font-size: var(--font-medium);
	text-decoration: none;
}

.head1, .head2, .head3, .headder {
	height: var(--height-row);
	padding: 0;
	margin: 0;
}
.headder{
	width: 100vw;
	display: grid;
	grid-template-columns: 1fr 1fr;
}
.head1 {
	text-aling: left;
	white-space: nowrap;
}

.head2 {
	text-align: center;
}/**/

.head3 {
	padding-top: 7px;
	text-align: right;
	font-size: var(--font-medium);
	padding-right: var(--logo-margin-left);
	margin-right: var(--logo-margin-left);
}

.himg {
	height: var(--logo-height);
	margin: var(--logo-margin);
	margin-left: var(--logo-margin-left);
}

.l {
	text-align: left;
	grid-column-start: 2;
	grid-column-end: 4;
}

.ln {
  height: var(--icon-size);
}

.lnb {
	height: var(--icon-round-size);
}


.lr {
	text-align: center;
	display: grid;
	align-items: center;
	justify-content: center;
}
.ll, .rt {
	white-space: nowrap;
	font-weight: 600;
}
  /*text-align: right;
}/**/

.rt {
	font-size: var(--font-medium);
}

.r, .rs {
	text-align: left;
}

.t {
  text-align: center;
}

.s, .sc {
  text-align: center;
}
.tc {
  text-align: right;
}



.blink {
  animation: blink-animation 2s steps(2, start) infinite;
  -webkit-animation: blink-animation 2s steps(2, start) infinite;
}
@keyframes blink-animation {
  to {
    visibility: hidden;
  }
}
@-webkit-keyframes blink-animation {
  to {
    visibility: hidden;
  }
}


.ausfall, .ausfall1, .ausfall2 {
	color: var(--omitted);
}

.ausfall2 {
	animation-name: change;
	animation-duration: 4s;
	animation-iteration-count: infinite;
}

ul li {
	line-height: var(--line-height-d);
	margin: 0px;
	padding: 0px;
	overflow: hidden;
}
ul {
	margin-top: 0;
	list-style: none;
	animation: c2 4s steps(2, start) infinite
	/*animation-name: change;
	animation-duration: 4s;
	animation-iteration-count: infinite;*/
}

@keyframes change {
	0%, 40%, 100% {transform:translateY(0);}
	50%,90% {transform:translateY(-52%);}
}

@keyframes c2 {
  from {transform:translateY(50%);}
  to {transform:translateY(-50%);}
}


.a1, .a2 {
	margin: 0px;
	overflow:hidden;
	height:92px;
	padding:0px;
	white-space: nowrap;
}
.a2 {
	float: right;
	text-align: right;
}


/* Footer */

.footer {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 92px;
	background-color: #009036;
	overflow: hidden;
	padding-left: 20px;
	padding-right: 20px;
	text-align: center;
}

.off {
	animation-name: lt;
	animation-duration: 20s;
	animation-iteration-count: infinite;
	animation-type: linear;
}

p {
	height: var(--height-row);
	position: asolute;
}

@keyframes lt {
	0% {
		transform: translateX(100%);
	}
	100% {
		transform: translateX(-100%);
	}
}


iframe {
  border: none;
  margin: 0px;
  padding: 0px;
  border-collapse:collapse;
  background-color: #004494;
}
.trxt {
	padding-top: 20px;
}

.tr, .th {
	display: grid;
	grid-template-columns: 1fr 3fr 15fr 16fr 5fr 1fr;
}
.rs {
	grid-column-start: 5;
  grid-column-end: 7;
}

.rcs {
	grid-column-start: 5;
	grid-column-end: 7;
}

.ri {
	grid-column-start: 1;
	grid-column-end: 8;
	padding-left: 2vw;
	white-space: nowrap;
	overflow: hidden;
	font-size: var(--font-medium);
/*	text-align: center;/**/
}

.ri::before {
	font-family: 'ÖPNV Pikto';
	content: "\0129";
}

.him {
	white-space: nowrap;
	overflow: hidden;
}

.him-link {
	text-decoration: none;
	color: var(--ommitted);
}
