table.table-stop tr,table.table-stop tr td {
	min-height: 80px;
	height: auto;
	margin: 0px;
	padding: 4px;
	width: 300px;
}

table.table-stop tr td div {
	position: relative;
	margin: 0px;
	padding: 0px;
}

table.table-stop  tr>td>ul {
	max-height: 200px;
	overflow-y: auto;
}

.stop-header span {
	color: black;
}

.stop-header {
	font-weight: bold;
	font-size: 140%;
	color: #0054a6;
	text-align: center;
}

span.date-label {
	font-weight: normal;
	font-size: 60%;
	display: none;
}

span.time-label {
	padding: 2px;
	font-weight: bold;
	font-size: 80%;
	border: 1px solid #ccc;
	position: absolute;
	color: black;
	top: 6px;
	left: 6px;
	display: none;
}

span.stop-name-label {
	color: #0054a6;
	margin-top: 2px;
}

span.stop-label {
	padding-top: 24px;
}

span.stop-name-label,span.stop-label {
	width: 79%;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

span.date-label {
	width: 100%;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.stop-label {
	font-weight: normal;
	font-style: italic;
	font-size: 70%;
}

span.stop-label-wrapper {
	margin-left: 50px;
	margin-right: 50px;
	width: 70%;
}
span.legend{

	padding: 4px;
	display:block;
	background-color: white;
	color: #bbb;
	border: 1px solid #bbb;
	font-size: 90%;
}
ul.stop-hours li span.low-floor , span.low-floor{
	margin-left: -4px;
	display:block;
	background-color: white;
	color: #bbb;
	border: 1px solid #bbb;
	font-size: 90%;
}

span.stop-label-mobile {
	font-weight: normal;
	font-style: italic;
	font-size: 70%;
	color: black;
}

ul.stop-hours {
	list-style: none;
	font-size: 80%;
	padding: 0px;
}

ul.stop-hours>li {
	height: 20px;
	display: inline;
	vertical-align: middle;
}

ul.stop-hours li a,ul.stop-hours li span {
	width: auto;
	padding-left: 2px;
	padding-right: 2px;
	float: left;
	margin-bottom: 4px;
	margin-top: 4px;
	margin-right: 4px;
	font-color: white;
	color: white;
	background-color: #bbb;
	margin-top: 4px;
	float: left;
}

ul.stop-lines,ul.stop-lines-hours {
	list-style: none;
	font-weight: bold;
	font-size: 140%;
	text-align: center;
	padding: 0px;
	margin: 0px;
}

ul.stop-lines-hours>li:last-child {
	border-bottom: none;
}

ul.stop-lines-hours>li {
	border-bottom: 1px solid #0054a6;
	float: left;
	width: 100%;
	padding: 0px;
}

ul.stop-lines>li {
	width: auto;
	padding: 0px;
}
div.line-name{
	width: 56px;
}
.line-name a.map{
	min-width:24px;
	min-height: 22px;
	margin-top:0px;
}
table.table-stop tr td ul.stop-lines>li>div>div>a,table.table-stop tr td ul.stop-lines-hours>li>div>div>a,div.line-name>a, #table-trip div.headsign-container a.map, span.line-name
	{
	float: left;
	margin-bottom: 4px;
	margin-top: 2px;
	margin-right: 8px;
	width: auto;
	padding-left: 4px;
	padding-right: 4px;
	font-color: white;
	color: white;
	font-style: bold;
	background-color: #0054a6;
	font-color: white;
}
#table-trip div.headsign-container {
	display: block;
}
#table-trip div.headsign-container a.map, #table-trip div.headsign-container span{
	float:left;
}
#table-trip div.headsign-container a.map{
	font-size:100%;
	padding-left:12px;
	padding-top:4px;
	min-width:100px;
}
#table-trip div.headsign-container div{
	display: block;
}
div.headsign-container {
	display: flex;
	width:100%;
}
div.headsign-container {
	width:100%;
}
div.headsign-container a.headsign,div.headsign-container span.headsign {
	background: url(../../layout/mim2014/img/paging/icon-arrows.png) -7px
		50% no-repeat;
	background-color: white;
	border: 1px solid #ccc;
	padding-left:10px;
	padding-right:8px;

		font-size: 70%;
		padding-top: 4px;
	padding-bottom: 1px;
	color: #0054a6;
	border: 1px solid #ccc;
	vertical-align: middle;
	word-break: keep-all;
	 word-break: break-word;
	text-wrap: normal;
}

#table-trip tr td div.headsign-container span.headsign{
	font-weight:bold;
	font-size: 100%;
	padding-top: 2px;
	padding-bottom: 2px;
}
div.line-wrapper {
	position: relative;
	display: flex;
	min-height: 26px;
}

div.line-name {
	font-size:120%;
	font-weight:bold;
}

div.line-variants {
	width: 100%;
}

div.variant-wrapper {
	display: table;
}

div.stop-hours-container {
	display: inline;
}

ul.variants {
	list-style: none;
	width: 96%;
	padding: 0;
	margin-left: 4px;
}

ul.variants>li {
	border-bottom: 2px dotted #0054a6;
	width: 100%;
	padding: 0;
	margin: 0;
	margin-top: 4px;
}

ul.variants>li:last-child {
	border-bottom: none;
	width: 100%;
}

span.zone>span {
	display: none;
}

span.zone {
	position: absolute;
	right: 6px;
	top: 6px;
	font-size: 60%;
	height: 34px;
	width: 27px;
	text-align: center;
	padding-top: 26px;
	color: black;
}

span.zone-A {
	background: url(../../layout/mim2014/img/transport/zone-a.png) 50% 0%
		no-repeat;
}

span.zone-B {
	background: url(../../layout/mim2014/img/transport/zone-b.png) 50% 0%
		no-repeat;
}

span.zone-C {
	background: url(../../layout/mim2014/img/transport/zone-c.png) 96% 0%
		no-repeat;
}


#table-trip div.headsign-container a {
	font-size: 100%;
}

#table-trip tr th {
	font-size: 120%;
	color: #999;
	font-weight: bold;
	vertical-align: middle;
	width: 20px;
}
#table-trip tr td div,#table-trip tr td div a {
	display:inline;
	margin-right:2px;
}
#table-trip tr td div a.map{
	width:100px;
}
#table-trip tr td div a.map {
	font-weight: bold;
	padding-top: 0px;
	margin-top: 4px;
}

.type-3 {
	float: left; 
	width : 24px;
	height: 24px;
	background: url(../icons/maki/bus-24.svg);
	background-size: 24px 24px;
	background-repeat: no;
}

.type-0 {
	float: left;
	width: 24px;
	height: 24px;
	background-repeat: no;
	background: url(../icons/maki/rail-metro-24.svg);
	background-size: 24px 24px;
}
.feature-row td:first-child,.feature-row td:last-child{
	padding: 4px 1px;
}
.feature-row .feature-name{
	overflow:hidden;
	max-width: 160px;
	text-overflow: ellipsis;
	padding: 4px 2px;
}
.feature-row td.feature-name span.headsign-container{
	font-size: 80%;
}
div.headsign-container a.map {
	min-width: 24px;
	max-width: 100px;
	padding-left: 20px;
	padding-right: 4px;
	float:right;
}
span.icons-stops{
	padding-left:50px;
	background-image: url(../../plan/icons/bus-24.png),url(../../plan/icons/rail-metro-24.png);
	background-position: 0px 0px, 25px 0px;
	background-repeat: no-repeat;
	padding-bottom:6px;
		padding-top: 6px;
		margin-bottom:4px;
	line-height: 30px;
}
span.icon-parking-meter{
	padding-left:26px;
	background-image: url(../../plan/icons/zdm/zdm_parking.png);
	background-position: 0px 0px;
	background-repeat: no-repeat;
	padding-bottom:6px;
	padding-top: 6px;
	background-size: auto 12px;
}
span.icon-koperta{
	padding-left:26px;
	background-image: url(../../plan/icons/zdm/zdm_koperta.png);
	background-position: 0px 0px;
	background-repeat: no-repeat;
	padding-bottom:6px;
	padding-top: 6px;
background-size: auto 16px;
}
.icon-carsharing {
	background-image: url(../../plan/icons/sim/carsharing.png);
	background-position: 0px 0px;
	background-repeat: no-repeat;
	padding-bottom:6px;
	background-size: contain;
	padding-top: 6px;
}
.icon-carsharing-list-wrap {
	margin-top: 7px;
	display: inline-block;
}
.icon-carsharing-list {
	padding-left:30px;
	background-image: url(../../plan/icons/sim/carsharing.png);
	background-position: 2px 0px;
	background-repeat: no-repeat;
	background-size: contain;
	padding-bottom:6px;
	padding-top: 6px;
}
.icon-carsharing-cluster{
    display: block;
    background-image: url(../../plan/icons/sim/carsharing-cluster.png);
    background-position: center;
	background-size: contain;
    background-repeat: no-repeat;
    background-color: transparent;
    border: none;
    color: white;
}
span.icon-ticket-selling{
	padding-left:26px;
	background-image: url(../../plan/icons/psb-24.png);
	background-position: 0px 0px;
	background-repeat: no-repeat;
	line-height: 30px;
	padding-bottom:6px;
	padding-top: 6px;
}
span.icon-ticket-machine{
	padding-left:26px;
	background-image: url(../../plan/icons/ticket_machine-24.png);
	line-height: 30px;
	background-position: 4px 0px;
	background-repeat: no-repeat;
	padding-bottom:6px;
	padding-top: 6px;
}
span.icon-bike{
	padding-left:26px;
	background-image: url(../../plan/icons/bike-24.png);
	background-position: 0px 0px;
	background-repeat: no-repeat;
	line-height: 30px;
	padding-bottom:6px;
	padding-top: 6px;
}
span.icon-parking-zdm-monitoring{
	padding-left:26px;
	background-image: url(../../plan/icons/parking_zdm_monitoring_24.png);
	background-position: 0px 0px;
	background-repeat: no-repeat;
	line-height: 30px;
	padding-bottom:6px;
	padding-top: 6px;
}
.headsigns{
	color:#444;
	font-size:75%;
	line-height: 115%;
}
tr.feature-row{
    border-bottom: 0px;
}
tr.feature-row.second-dir, tr.feature-row.second-dir td {
    border-top: 0px;
}
span.icon-bike{
	padding-left:26px;
	background-image: url(../../plan/icons/bike-24.png);
	background-position: 0px 0px;
	background-repeat: no-repeat;
	line-height: 30px;
	padding-bottom:6px;
	padding-top: 6px;
}

.div_bike_cluster{
    display: block;
    background-image: url(../../plan/icons/bike_cluster.png);
    background-position: center;
    background-size: 40px 40px;
    background-repeat: no-repeat;
    background-color: transparent;
    border: none;
    color: white;
}

.div_parking_zdm_monitoring_cluster {
    display: block;
    background-image: url(../../plan/icons/parking_zdm_monitoring_cluster.png);
    background-position: center;
    background-size: 40px 40px;
    background-repeat: no-repeat;
    background-color: transparent;
    border: none;
    color: white;
}

.div_parking_zdm_monitoring_cluster span.custom-icon,
.div_bike_cluster  span.custom-icon,
.leaflet-div-icon  span.custom-icon{
    display: block;
    position:absolute;
    right:18px;
    bottom:5px;
    font-size:12px;
}

.icon-carsharing-cluster span.custom-icon {
    display: block;
    margin-top:16px;
    font-size:12px;
    text-align: center;
}