body.waiting * {
    cursor: progress;
}

table {
    border-collapse: collapse;
}

table, th, td {
    border: 0px solid black;
}

tr {
    height: 17px;
}

/*

.tableView {
    width: 970px;
    background-color: white;
    border-collapse: separate;
    border-spacing: 0px;
}

.tableView-header-right {
    color: black;
    background-color: lightgrey;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: bold;
    font-size: 12px;
    text-align: right;
    border-color: white;
    border-width: 1px;
    padding-right: 10px;
}
.tableView-header-left {
    color: black;
    background-color: lightgrey;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: bold;
    font-size: 12px;
    text-align: left;
    padding-left: 10px;
    width: 190px;
    min-width: 190px;
    max-width: 190px;
    border-color: white;
    border-width: 1px;
}
.tableView-header-center {
    color: black;
    background-color: lightgrey;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: bold;
    font-size: 12px;
    text-align: center;
    border-color: white;
    border-width: 1px;
}

.tableView-data-right {
    color: black;
    background-color: white;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    text-align: right;
    padding-right: 10px;
}
.tableView-data-left {
    color: black;
    background-color: white;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    text-align: left;
    padding-left: 10px;
}

.tableViewTitle {
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: bold;
    font-size: 14px;
    margin-top: 10px;
    margin-bottom: 10px;
}

*/

/*

.tooltipPassengerLoad{
    display: none;
    position: absolute;
    z-index: 100;
    border: 1px;
    background-color: white;
    opacity: 0.75;
    border-style: solid;
    border-width: 1px;
    padding: 3px;
    color: black;
    top: 5px;
    left: 70px;
}

*/

.no_value {
    background-color: lightgrey;
    position: relative;
    text-align: center;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    border-color: white;
    border-width: 1px;
}

.overcrowding_maximal {
    position: relative;
    text-align: center;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    border-color: white;
    border-width: 1px;
}
.overcrowding_maximal:hover {
    font-weight: bold;
    border-color: black;
}
.overcrowding_maximal:hover span.tooltipPassengerLoadCarpet {
    display:block;
}

.overcrowding_strong {
    position: relative;
    text-align: center;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    border-color: white;
    border-width: 1px;
}
.overcrowding_strong:hover {
    font-weight: bold;
    border-color: black;
}
.overcrowding_strong:hover span.tooltipPassengerLoadCarpet {
    display:block;
}

.overcrowding_weak {
    position: relative;
    text-align: center;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    border-color: white;
    border-width: 1px;
}
.overcrowding_weak:hover {
    font-weight: bold;
    border-color: black;
}
.overcrowding_weak:hover span.tooltipPassengerLoadCarpet {
    display:block;
}

.normal_normal {
    position: relative;
    text-align: center;
    vertical-align: top;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    border-color: white;
    border-width: 1px;
}
.normal_normal:hover {
    font-weight: bold;
    border-color: black;
}
.normal_normal:hover span.tooltipPassengerLoadCarpet {
    display:block;
}

.unoccupied_weak {
    position: relative;
    text-align: center;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    border-color: white;
    border-width: 1px;
}
.unoccupied_weak:hover {
    font-weight: bold;
    border-color: black;
}
.unoccupied_weak:hover span.tooltipPassengerLoadCarpet {
    display:block;
}

.unoccupied_medium {
    position: relative;
    text-align: center;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    border-color: white;
    border-width: 1px;
}
.unoccupied_medium:hover {
    font-weight: bold;
    border-color: black;
}
.unoccupied_medium:hover span.tooltipPassengerLoadCarpet {
     display:block;
 }

.unoccupied_strong {
    position: relative;
    text-align: center;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    border-color: white;
    border-width: 1px;
}
.unoccupied_strong:hover {
    font-weight: bold;
    border-color: black;
}
.unoccupied_strong:hover span.tooltipPassengerLoadCarpet {
    display:block;
}

.unspecified {
    background-color: white;
    position: relative;
    text-align: center;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 12px;
    border-color: white;
    border-width: 1px;
}
.unspecified:hover {
    font-weight: bold;
    border-color: black;
}
.unspecified:hover span.tooltipPassengerLoadCarpet {
    display:block;
}


/*
 **********************************************************
 * Style of carpet-presentation.
 **********************************************************
 */

.carpetViewTitle {
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: bold;
    font-size: 14px;
    margin-top: 10px;
    margin-bottom: 10px;
}

.carpetViewRemarks {
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    margin-top: 10px;
    margin-bottom: 10px;
    padding-left: 20px;
}

/* DIV which contains the table-element for the vehicle-occupation-carpet. */
.carpetContainer {
    overflow-x:scroll;
    margin-left: 245px;
    overflow-y:visible;
}
/* TABLE which represents the carpet-presentation of the vehicle-occupation. */
.carpet {
    border-collapse: separate;
    border-spacing: 0px;
}
/* TH which represents the data-style of the first column. */
.carpet-column1-data {
    position:absolute;
    width: 175px;
    left: 20px;
    text-align: left;
    font-weight: normal;
    padding-left: 10px;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    background-color: white;
    border-color: white;
    border-width: 1px;
}
/*
 * Definition of the link and
 * link-behaviour.
 */
.carpet-column1-data a {
    display: block;
    height: 100%;
    width: 100%;
    color: black;
}
.carpet-column1-data a:link {
    text-decoration: none;
}
.carpet-column1-data a:hover {
    color: red;
}
.carpet-column1-data:hover {
    background-color: #ffbbb5;
}

/* TH which represents the data-style of the second column. */
.carpet-column2-data {
    position:absolute;
    width: 45px;
    left: 205px;
    text-align: right;
    font-weight: normal;
    padding-right: 5px;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    background-color: lightgrey;
    border-color: white;
    border-width: 1px;
}
/* TH which represents the header-style of the first column. */
.carpet-column1-header {
    position:absolute;
    width: 175px;
    line-height: 17px;
    left: 20px;
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    text-align: left;
    padding-left: 10px;
    background-color: lightgrey;
    border-color: white;
    border-width: 1px;
}
.carpet-column1-header-hiddenText {
    position: absolute;
    width: 175px;
    line-height: 17px;
    left: 20px;
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    text-align: left;
    color: white;
    background-color: white;
    border-color: white;
    border-width: 1px;
}
/* TH which represents the header-style of the second column. */
.carpet-column2-header {
    position:absolute;
    width: 50px;
    line-height: 17px;
    left: 205px;
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    text-align: center;
    background-color: lightgrey;
    border-color: white;
    border-width: 1px;
}
.carpet-column2-header-hiddenText {
    position: absolute;
    width: 50px;
    line-height: 17px;
    left: 205px;
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    text-align: left;
    color: lightgrey;
    background-color: lightgrey;
    border-color: white;
    border-width: 1px;
}
.carpet-column2-footer {
    position:absolute;
    width: 45px;
    line-height: 17px;
    left: 205px;
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    text-align: right;
    background-color: lightgrey;
    border-color: white;
    border-width: 1px;
    padding-right: 5px;
}
/* TD which represents the data-header of the occupation-data-cells. */
.carpet-data-header {
    background: lightgrey;
    font-weight: normal;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 9px;
    text-align: center;
    width: 40px;
    min-width: 40px;
    max-width: 40px;
    line-height: 17px;
    border-color: white;
    border-width: 1px;
}
.carpet-data-header_hasTooltip {
    background: lightgrey;
    font-weight: normal;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 9px;
    text-align: center;
    width: 40px;
    min-width: 40px;
    max-width: 40px;
    line-height: 17px;
    border-color: white;
    border-width: 1px;
}
.carpet-data-header_hasTooltip span {
    display: none;
    color: #000;
    text-decoration: none;
    padding: 3px;
}
.carpet-data-header_hasTooltip:hover span {
    display: block;
    position: absolute;
    background-color: white;
    border: 0px;
    z-index: 100;
    font-weight: normal;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    text-align: center;
}
.carpet-data-header-hiddenText {
    background: lightgrey;
    font-weight: normal;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    text-align: center;
    color: lightgrey;
    width: 40px;
    min-width: 40px;
    max-width: 40px;
    border-color: white;
    border-width: 1px;
}
/* TD which represents the data-content of the occupation-data-cells. */
.carpet-data {
    background: lightgray;
    font-weight: normal;
    font-family: Arial, Helvetica, sans-serif;
    color: lightgray;
    font-size: 12px;
    text-align: center;
    width: 40px;
    min-width: 40px;
    max-width: 40px;
    border-color: white;
    border-width: 1px;
}
.carpet-data-empty {
    background: white;
    font-weight: normal;
    font-family: Arial, Helvetica, sans-serif;
    color: white;
    font-size: 12px;
    text-align: center;
    width: 40px;
    min-width: 40px;
    max-width: 40px;
    border-color: white;
    border-width: 1px;
}

.tooltipPassengerLoadCarpet {
    display: none;
    position: absolute;
    z-index: 100;
    border: 1px;
    background-color: white;
    opacity: 0.75;
    border-style: solid;
    border-width: 1px;
    padding: 3px;
    color: black;
    top: -3px;
    left: 40px;
    white-space: nowrap;
}


/*
 * Overlay-mask shown during data-loading at the start of the application.
 */
div#waitMask {
    z-index: 999;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 100%;
    cursor: wait;
    background-color: #000;
    opacity: 0;
    transition-duration: 0.5s;
    -webkit-transition-duration: 0.5s;
}

/* Modal Content/Box */
div#waitMask-content {
    background-color: #fefefe;
    margin: 5% auto; /* 15% from the top and centered */
    padding: 20px;
    border: 1px solid #888;
    width: 25%; /* Could be more or less, depending on screen size */
    color: black;
}

.tableDataLoaded {
    width: 50%;
    font-weight: normal;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    text-align: center;
}

.tableDataLoadedDetails {
    width: 50%;
    font-weight: normal;
    font-family: Arial, Helvetica, sans-serif;
    color: black;
    font-size: 12px;
    text-align: left;
}

.waitMask-content-title {
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
    color: black;
    font-size: 14px;
    text-align: left;
}


div#processingMask {
    z-index: 1001;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 100%;
    cursor: wait;
    background-color: #000;
    opacity: 0.8;
    /*
    transition-duration: 0.5s;
    -webkit-transition-duration: 0.5s;
    */
    color: red;
}

/*
 *  Definition of the legend.
 */
.legend-title {
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
    color: black;
    font-size: 12px;
    text-align: left;
}

.legend-category-headertop {
    font-weight: normal;
    font-family: Arial, Helvetica, sans-serif;
    color: black;
    font-size: 12px;
    text-align: center;
    width: 50px;
    min-width: 50px;
    max-width: 50px;
    border-color: black;
    border-width: 1px;
}

.legend-category-headerleft {
    font-weight: normal;
    font-family: Arial, Helvetica, sans-serif;
    color: black;
    font-size: 12px;
    text-align: left;
    width: 150px;
    min-width: 150px;
    max-width: 150px;
    border-color: black;
    border-width: 1px;
}

.legend-entry {
    font-weight: normal;
    font-family: Arial, Helvetica, sans-serif;
    color: black;
    font-size: 12px;
    text-align: center;
    width: 50px;
    min-width: 50px;
    max-width: 50px;
    border-color: black;
    border-width: 1px;
}

/* The Modal (background) */
.legend {
    transition-duration: 0.5s;
    -webkit-transition-duration: 0.5s;
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 999; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.8); /* Black w/ opacity */
}

/* Modal content of the legend */
.legend-content {
    background-color: #fefefe;
    margin: 15% auto; /* 15% from the top and centered */
    padding: 20px;
    border: 1px solid #888;
    width: 500px; /* Could be more or less, depending on screen size */
}

/* Modal content of the detailed graph */
.detailgraph-content {
    background-color: #fefefe;
    margin: 15% auto; /* 15% from the top and centered */
    padding: 20px;
    border: 1px solid #888;
    width: 80%; /* Could be more or less, depending on screen size */
}

/* The Close Button */
.close {
    color: black;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}

/*
 * Definitions of the overlay containing the detailed graph of the
 * individual stops.
 */
/* The Modal (background) */
.detailgraph {
    transition-duration: 0.5s;
    -webkit-transition-duration: 0.5s;
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 999; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.8); /* Black w/ opacity */
}

.detailgraph-chart-container {
    overflow-x: auto;
    white-space: nowrap;
}

.detailgraph-title {
    color: black;
    font-weight: bold;
    font-size: 16px;
    font-family: Arial, Helvetica, sans-serif;
    margin-bottom: 10px;
}

.detailgraph-subtitle {
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
}
.detailgraph-sum-in {
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    color: rgb(249, 178, 51);
}
.detailgraph-sum-out {
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    color: rgb(178, 178, 178);
}

.detailgraph-header-table {
    width: 100%;
}
td {
    width: 30%;
}

.tooltip-inoutmean {
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    color: black;
    background: rgb(255, 255, 255);
    opacity: 0.75;
}

.barchart-bar-in {
    fill: rgb(249, 178, 51);
}
.barchart-bar-in-selected {
    fill: green;
}

.barchart-bar-out {
    fill: rgb(178, 178, 178);
}
.barchart-bar-out-selected {
    fill: green;
}
.barchart-xlabel-active {
    fill: black;
    font-size: 10px;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
}
.barchart-xlabel-inactive {
    fill: darkcyan;
    font-size: 10px;
    font-family: Arial, Helvetica, sans-serif;
    font-style: normal;
    font-weight: normal;
}
.barchart-ylabel {
    fill: black;
    font-size: 10px;
}
.barchart-ytick {
    stroke: black;
    stroke-width: 1px;
}
.barchart-xtick {
    stroke: black;
    stroke-width: 1px;
}
.barchart-xgridline {
    stroke: darkgrey;
    stroke-width: 1px;
}
.barchart-yaxis {
    stroke: black;
    stroke-width: 1px;
}
.barchart-xaxis {
    stroke: black;
    stroke-width: 1px;
}

.radio-fix {
    position: absolute;
    opacity: 0;
}
.radio-fix:checked + img {
    width: 36px;
    content: url(../img/Tagesganglinie_fix_aktiv.png);
}
.radio-fix + img {
    cursor: pointer;
    margin-right: 0.5rem;
    width: 36px;
    content: url(../img/Tagesganglinie_fix_inaktiv.png)
}
.radio-dynamic {
    position: absolute;
    opacity: 0;
}
.radio-dynamic:checked + img {
    width: 36px;
    content: url(../img/Tagesganglinie_gestreckt_aktiv.png)
}
.radio-dynamic + img {
    cursor: pointer;
    margin-right: 0.5rem;
    width: 36px;
    content: url(../img/Tagesganglinie_gestreckt_inaktiv.png)
}
