﻿/*
    Copyright © 2013 onwards, Andrew Whewell
    All rights reserved.

    Redistribution and use of this software in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
       * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
       * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
       * Neither the name of the author nor the names of the program's contributors may be used to endorse or promote products derived from this software without specific prior written permission.

    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OF THE SOFTWARE BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

/*region Custom fonts */
@font-face {
    font-family: 'icomoon';
    src:url('../fonts/icomoon.eot');
    src:url('../fonts/icomoon.eot?#iefix') format('embedded-opentype'),
    url('../fonts/icomoon.woff') format('woff'),
    url('../fonts/icomoon.ttf') format('truetype'),
    url('../fonts/icomoon.svg#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
}
/*endregion */

/*region Vanilla HTML */
* {
    margin: 0;
    padding: 0;
    touch-action: pan-x pan-y;
    -ms-touch-action: pan-x pan-y;
}
html, body {
    width: 100%;
    height: 100%;
}
body {
    font-family: 'Roboto', 'Tahoma', sans-serif;
    font-size: 0.8em;
}
body.padded {
    padding: 1em;
}
input, select {
    font-family: 'Roboto', sans-serif;
}
select {
    padding: 0.2em 0 0.2em 0.4em;
}
/*endregion */

/*region Common effects */
.vrsNoHighlight {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
/*endregion */

/*region Modal wait */
.modal {
    display: none;
    z-index: 1000;
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: rgba(255, 255, 255, 0.6) url('../images/wait.gif') 50% 50% no-repeat;
}
body.wait {
    overflow: hidden;
}
body.wait .modal {
    display: block;
}
/*endregion */

/*region Map styles */
.map {
    width: 100%;
    height: 100%;
    touch-action: none;     /* Required for IE11 - breaks map drag on touchscreens if missing */
}
.map .notOnline {
    background-color: #AAA;
    position: absolute;
}
.map .notOnline p {
    text-align: center;
    position: relative;
    top: 50%;
    font-size: 2em;
    color: #777;
}
.mapButton {
    font-family: Roboto, Arial, sans-serif;
    font-size: 11px;
    cursor: pointer;
}
.map .notOnline .mapButton {
    width: 10em;
    position: absolute;
    left: 1em;
}
.map .notOnline .mapNextPageButton {
    position: absolute;
    right: 1em;
    top: 0;
}
.mapButton {
    border-radius: 2px;
    box-shadow: 0 1px 4px -1px rgba(0, 0, 0, 0.3);
    font-size: 11px;
    min-width: 24px;
    -ms-user-select: none;
    text-align: center;
    background-clip: padding-box;
    background: #FFFFFF;
    color: #000;
    padding: 8px;
    margin-top: 10px;
    position: relative;
    z-index: 100;
}
.mapButton.hover,
.mapButton:hover {
    background: #EBEBEB;
}
.mapButton span.ui-icon {
    margin-top: -2px;
    margin-left: -3px;
    float: left;
}
.mapButton span.vrsIcon {
    margin-right: 0.5em;
}
.mapNextPageButton img {
    border: 0;
    margin: 6px;
    cursor: pointer;
}
.markerLabel {
    background-image: url('../images/markerLabelBackground.png');
}
.markerLabel span {
    color: #ffffff;
    font-size: 8pt;
    white-space: nowrap;
}

/*endregion */

/*region leaflet overrides */
.leaflet-tooltip.markerLabel {
    padding: 0px;
    background-image: url('../images/markerLabelBackground.png');
    background-color: #aaa;
    border: 1px solid #000;
    border-radius: 3px;
    color: #fff;
    font-size: 8pt;
    white-space: nowrap;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
    box-shadow: 0 1px 3px rgba(0,0,0,0.4);
    opacity: 0.1;
}

.leaflet-tooltip-top.markerLabel:before {
    border-top-color: #333;
}

.leaflet-tooltip-bottom.markerLabel:before {
    border-bottom-color: #333;
}

.leaflet-tooltip-left.markerLabel:before {
    border-left-color: #333;
}

.leaflet-tooltip-right.markerLabel:before {
    border-right-color: #333;
}
.leaflet-control {
    clear: none !important;
}
.leaflet-control > .vrsMenu {
    margin-top: -8px;
}
/*endregion*/

/*region filters */
.vrs-brightness-10 { filter: brightness(10%); }
.vrs-brightness-20 { filter: brightness(20%); }
.vrs-brightness-30 { filter: brightness(30%); }
.vrs-brightness-40 { filter: brightness(40%); }
.vrs-brightness-50 { filter: brightness(50%); }
.vrs-brightness-60 { filter: brightness(60%); }
.vrs-brightness-70 { filter: brightness(70%); }
.vrs-brightness-80 { filter: brightness(80%); }
.vrs-brightness-90 { filter: brightness(90%); }
.vrs-brightness-110 { filter: brightness(110%); }
.vrs-brightness-120 { filter: brightness(120%); }
.vrs-brightness-130 { filter: brightness(130%); }
.vrs-brightness-140 { filter: brightness(140%); }
.vrs-brightness-150 { filter: brightness(150%); }
/*endregion*/

/*region icoMoon icons */
.vrsIcon {
    font-family: 'icomoon' !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    speak: 'none';
}
.vrsIconButton {
    cursor: pointer;
    padding: 3px;
    margin-left: 3px;
}
.vrsIcon-play:before            { content: '\e000'; }
.vrsIcon-paint-format:before    { content: '\e600'; }
.vrsIcon-cog:before             { content: '\e601'; }
.vrsIcon-equalizer:before       { content: '\e602'; }
.vrsIcon-question:before        { content: '\e603'; }
.vrsIcon-contract:before        { content: '\e604'; }
.vrsIcon-radio-unchecked:before { content: '\e605'; }
.vrsIcon-radio-checked:before   { content: '\e606'; }
.vrsIcon-pause:before           { content: '\e607'; }
.vrsIcon-volume-mute:before     { content: '\e608'; }
.vrsIcon-volume-mute2:before    { content: '\e609'; }
.vrsIcon-volume-low:before      { content: '\e60a'; }
.vrsIcon-volume-medium:before   { content: '\e60b'; }
.vrsIcon-volume-high:before     { content: '\e60c'; }
.vrsIcon-screen:before          { content: '\e60d'; }
.vrsIcon-print:before           { content: '\e60e'; }
.vrsIcon-binoculars:before      { content: '\e60f'; }
.vrsIcon-sort-down:before       { content: '\e610'; }
.vrsIcon-sort-up:before         { content: '\e611'; }
.vrsIcon-locked:before          { content: '\e612'; }
.vrsIcon-unlocked:before        { content: '\e613'; }
.vrsIcon-remove:before          { content: '\e614'; }
.vrsIcon-backward:before        { content: '\e615'; }
.vrsIcon-forward:before         { content: '\e616'; }
.vrsIcon-first:before           { content: '\e617'; }
.vrsIcon-last:before            { content: '\e618'; }
.vrsIcon-loop:before            { content: '\e619'; }
.vrsIcon-close:before           { content: '\e61a'; }
.vrsIcon-checkmark:before       { content: '\e61b'; }
/*endregion */

/*region Extra menu CSS (the bulk is in jquery.dlmenu.css) */
.flagImage {
    width: 20px;
    height: 16px;
    border: 1px solid #a0a0a0;
}
.vrsMenu > span.vrsIcon-cog {
    cursor: pointer;
}
/*endregion */

/*region Mimic jQuery UI without having to switch classes */
.colourButton {
    color: #666666;
}
.colourButtonDark {
    color: #454545;
}
.colourButtonActive {
    color: #0073ea;
}
.vrsContent {
    border: 1px solid #dddddd;
    background: #f0f0f0 url(jquery-ui/images/ui-bg_flat_100_f0f0f0_40x100.png) 50% 50% repeat-x;
    color: #0073ea;
}
.vrsContent:hover {
    background: #0073ea url(jquery-ui/images/ui-bg_highlight-soft_25_0073ea_1x100.png) 50% 50% repeat-x;
    border: 1px solid #0073ea;
    color: #ffffff;
}
/*endregion */

/*region jQuery UI aircraft detail / report detail plugin styles */
.vrsAircraftDetail .header table {
    border-collapse: collapse;
    width: 100%;
    color: #2E74B5;
    font-size: 1.2em;
    font-weight: 700;
}
.vrsAircraftDetail .header tr {
    min-height: 20px;
}
.vrsAircraftDetail .header img {
    display: block;
}
.vrsAircraftDetail .reg {
    min-width: 6em;
}
.vrsAircraftDetail .icao {
    min-width: 6em;
}
.vrsAircraftDetail .flag {
    width: 85px;
}
.vrsAircraftDetail .callsign,
.vrsAircraftDetail .military,
.vrsAircraftDetail .modelType {
    font-size: 0.8em;
}
.vrsAircraftDetail .reg,
.vrsAircraftDetail .op,
.vrsAircraftDetail .country,
.vrsAircraftDetail .model {
    padding-left: 2px;
}
.vrsAircraftDetail ul {
    list-style-type: none;
    margin-left: 1px;
    margin-top: 1px;
}
.vrsAircraftDetail li {
    float: left;
    vertical-align: top;
    margin: 2px 2px;
    min-height: 3em;
}
.vrsAircraftDetail li.wide {
    float: none;
    clear: both;
    display: block;
    min-height: inherit;
    margin-top: 0;
    margin-bottom: 0;
}
.vrsAircraftDetail li.wide img {
    border: 1px solid #a0a0a0;
    margin: 2px;
}
.vrsAircraftDetail li.multiline {
    float: none;
    clear: both;
}
.vrsAircraftDetail .body {
    font-size: 0.9em;
}
.vrsAircraftDetail .noLabel {
    display: none;
}
.vrsAircraftDetail .body .label {
    font-weight: 700;
    padding-right: 1em;
    white-space: nowrap;
}
.vrsAircraftDetail .body .content {
    padding-right: 1em;
    white-space: nowrap;
    color: #2e74b5;
}
.vrsAircraftDetail .body .content.wide {
    display: block;
    padding-right: 0;
    text-align: center;
}
.vrsAircraftDetail .thumbnails {
    white-space: normal;
}
.vrsAircraftDetail .aircraftPosnMap {
    height: 300px;
}
.vrsAircraftDetail a img {
    border: 0;
}
.vrsAircraftDetail .links {
    clear: both;
    text-align: center;
    font-size: 0.9em;
}
.vrsAircraftDetail.noAircraft {
    position: relative;
    height: 100%;
}
.vrsAircraftDetail.noAircraft .aircraftLinks {
    position: absolute;
    bottom: 4px;
    width: 100%;
    display: table-cell;
    text-align: center;
}
.vrsAircraftDetail .aircraftLinks A:link,
.vrsAircraftDetail .aircraftLinks A:visited,
.vrsAircraftDetail .aircraftLinks A:hover,
.vrsAircraftDetail .aircraftLinks A:active {
    color: #2e74b5;
}
/*endregion */

/*region jQuery UI aircraft info window plugin styles */
.vrsAircraftInfoWindow > div {
    overflow: none;
}
.vrsAircraftInfoWindow ul {
    list-style-type: none;
    display: table;
}
.vrsAircraftInfoWindow li {
    display: table-row;
}
.vrsAircraftInfoWindow label,
.vrsAircraftInfoWindow p {
    display: table-cell;
    font-size: 0.85em !important;        /* Google Maps will override us without the !important */
    font-weight: 400 !important;
    vertical-align: top;
    white-space: nowrap;
}
.vrsAircraftInfoWindow label {
    font-weight: 700 !important;
    padding-right: 1em;
    white-space: nowrap;
}
.vrsAircraftInfoWindow .links {
    padding-top: 0.5em;
    text-align: right;
    white-space: nowrap;
}
.vrsAircraftInfoWindow A {
    font-size: 0.9em !important;
    font-weight: 400 !important;
}
/*endregion */

/*region jQuery UI aircraft link styles */
.aircraftLinks A:link {
    text-decoration: none;
    color: #0000ff;
}
.aircraftLinks A:visited {
    text-decoration: none;
    color: #0000ff;
}
.aircraftLinks A:hover {
    text-decoration: underline;
    color: #0000ff;
}
.aircraftLinks A:active {
    text-decoration: none;
    color: #0000ff;
}

/*endregion */

/*region jQuery UI aircraft list / report list plugin styles */
.vrsAircraftList {
    font-size: 0.9em;
}
.vrsAircraftList .count {
    margin: 2px 2px 0.5em 2px;
    float: left;
}
.vrsAircraftList .links {
    margin: 2px 2px 0.5em 2px;
    float: right;
}
.vrsAircraftList .aircraftLinks A:link,
.vrsAircraftList .aircraftLinks A:visited,
.vrsAircraftList .aircraftLinks A:hover,
.vrsAircraftList .aircraftLinks A:active {
    color: #000000;
}
.vrsAircraftList .poweredBy {
    text-align: center;
    margin-top: 2em;
}
.vrsAircraftList .poweredBy A:link,
.vrsAircraftList .poweredBy A:visited {
    text-decoration: none;
    color: #303030;
}
.vrsAircraftList .poweredBy A:hover {
    text-decoration: underline;
    color: #303030;
}
.vrsAircraftList .poweredBy A:active {
    text-decoration: none;
    color: #303030;
}
.vrsAircraftList .hidden {
    display: none;
}
.vrsAircraftList .emptyReport {
    font-size: 2em;
    color: #C0C0C0;
    text-align: center;
    padding-top: 2em;
}
.vrsAircraftList .mapButtonContainer {
    text-align: right;
}
.vrsAircraftList .mapButtonContainer .mapButton {
    display: inline-block;
    margin-right: 1em;
    margin-bottom: 0.5em;
}
.aircraftList {
    white-space: nowrap;
    border-collapse: collapse;
    clear: both;
    margin-top: 5px;
    border: 0;
    empty-cells: show;
    width: 100%;
    border-bottom: 1px solid #d0d0d0;
}
.flights .aircraftList {
    margin: 0;
}
.aircraftList tr {
    padding-top: 0;
    padding-bottom: 0;
    border: 0;
}
.aircraftList tr:not(.group) {
    cursor: pointer;
}
.aircraftList thead tr {
    cursor: default;
    font-weight: 700;
    color: #000000;
}
.aircraftList thead tr .sortHeader {
    cursor: pointer;
}
.aircraftList thead tr .sortHeader:hover {
    text-decoration: underline;
}
.aircraftList th {
    padding-bottom: 3px;
    border-bottom: 2px solid #2e74b5;
    text-align: left;
}
.aircraftList th:not(.fixedWidth) {
    padding-right: 3px;
    padding-left: 3px;
}
.aircraftList tbody {
    line-height: 0.75em;
    color: #2E74B5;
}
.aircraftList tbody td {
    height: 1.5em;
}
.aircraftList td:not(.fixedWidth) {
    vertical-align: top;
    padding: 3px 3px 0 3px;
}
.aircraftList tbody td:not(.firstRow) {
    border-top: 1px solid #d0d0d0;
}
.aircraftList .group td {
    font-weight: 700;
    font-size: 1.16em;
    vertical-align: middle;
    padding-left: 2em;
    line-height: 2em;
    color: #26639B;
}
.aircraftList .pagerRow td,
.aircraftList .pagerRow th {
    height: inherit;
    padding: 0;
    margin: 0;
    border: 0;
}
.aircraftList .vrsCentre {
    text-align: center;
}
.aircraftList .vrsRight {
    text-align: right;
}
.aircraftList .vrsOdd {
    background-color: #ffffff;
}
.aircraftList .vrsEven {
    background-color: #f0f0f0;
}
.aircraftList .vrsSelected {
    background-color: #d6ffad;
    color: #303030;
}
.aircraftList .vrsEmergency {
    background-color: red;
    color: white;
}
.aircraftList .vrsSelectedEmergency {
    background-color: #ff8080;
    color: #f6f6f6;
}
.aircraftList .interested {
    font-weight: 700;
}
.aircraftList.live tbody td.fixedWidth {
    border: 0;
    background: #ffffff;
}
.aircraftList tbody td.fixedWidth img {
    display: block;
}
.aircraftList tbody td p {
    margin: 0 0 8px 0;
}
/*endregion */

/*region jQuery UI aircraft position map styles */
.aircraftPosnMap {
    display: block;
}
.aircraftPosnMap > div {
    width: 100%;
    height: 100%;
}
/*endregion */

/*region jQuery UI language select plugin styles */
.vrsLanguageSelect {
    position: relative;
}
.vrsLanguageSelect.multiLine {
    position: inherit;
}
.vrsLanguageSelect .vrsFlag {
    cursor: pointer;
}
.vrsLanguageSelect select {
    position: absolute;
    top: 100%;
    left: 0;
}
.vrsLanguageSelect.multiLine select {
    width: 100%;
    position: inherit;
}
/*endregion */

/*region jQuery UI map plugin styles */
.vrsMap {
    width: 100%;
    height: 100%;
}
/*endregion */

/*region jQuery UI option form plugin styles */
.vrsOptionForm.dialog {
    font-size: 0.85em;
}
.vrsOptionForm.accordion {
    font-size: 0.9em;
}
.vrsOptionForm.accordion h3  {
    font-size: 1.3em;
}
.vrsOptionPane {
    margin-bottom: 1em;
}
.vrsOptionForm .stacked {
    margin-bottom: 0;
}
.vrsOptionForm h2 {
    font-size: 1.2em;
    font-weight: 700;
    color: #FF0084;
    border-bottom: 2px solid #FF0084;
    margin-top: 0;
    margin-bottom: 0.2em;
}
.vrsOptionForm ol {
    list-style-type: none;
}
.vrsOptionForm.dialog .vrsOptionPane li {
    margin-bottom: 0.4em;
}
.vrsOptionForm.accordion .vrsOptionPane li {
    margin-bottom: 1em;
}
.vrsOptionForm .keepWithPrevious {
    margin-left: 0.5em;
}
.vrsOptionForm.dialog label {
    width: 15em;
    display: inline-block;
}
.vrsOptionForm.accordion label {
    font-size: 1.1em;
    display: block;
}
.vrsOptionForm input.oneChar {
    width: 1.5em;
}
.vrsOptionForm input.threeChar {
    width: 3em;
}
.vrsOptionForm input.sixChar {
    width: 6em;
}
.vrsOptionForm input.eightChar {
    width: 8em;
}
.vrsOptionForm input.nineChar {
    width: 9em;
}
.vrsOptionForm input.wide {
    width: 15em;
}
.vrsOptionForm .vrsOptionRadioButton > div {
    display: inline-block;
    margin-left: 1em;
}
.vrsOptionForm.accordion .vrsOptionRadioButton > div {
    display: block;
    margin-left: 0;
}
.vrsOptionForm .vrsOptionRadioButton > div:first-child {
    margin-left: 0;
}
.vrsOptionForm input[type="checkbox"],
.vrsOptionForm input[type="radio"] {
    width: auto;
}
.vrsOptionForm input[type="checkbox"] + label {
    display: inline;
    padding-left: 0.5em;
}
.vrsOptionForm input[type="radio"] + label {
    display: inline;
    padding-left: 0.5em;
    padding-right: 1em;
}
.vrsOptionForm.dialog span.short {
    width: 10em;
    display: inline-block;
}
.vrsOptionForm.dialog span.long {
    width: 15em;
    display: inline-block;
}
.vrsOptionForm.accordion span.short,
.vrsOptionForm.accordion span.long,
.vrsOptionForm.accordion span.asLabel {
    display: block;
    font-size: 1.1em;
}
/*endregion */

/*region jQuery UI option plugin subset styles */
.vrsOptionPluginSubset {
    position: relative;
}
.vrsOptionPluginSubset .toolstrip {
    width: 100%;
    padding: 3px;
    position: relative;
}
.vrsOptionPluginSubset button {
    margin-left: 1em;
}
.vrsOptionPluginSubset .lockButton {
    display: inline-block;
    font-size: 1.9em;
    color: #d22;
    margin-left: 0.5em;
    vertical-align: middle;
    cursor: pointer;
}
.vrsOptionPluginSubset .lockButton.locked {
    color: #2E75B5;
}
.vrsOptionPluginSubset .subset {
    width: 100%;
    display: inline-block;
    vertical-align: top;
    max-height: 30em;
    overflow: auto;
}
.vrsOptionPluginSubset .subset ul {
    list-style-type: none;
    min-height: 100px;
    padding: 0 0 2em 0;
    border: 1px solid #cccccc;
}
.vrsOptionPluginSubset .subset li {
    display: block;
    margin: 5px;
    padding: 3px 3.5em 3px 2em;
    position: relative;
    background-color: #f0f0f0;
    border: 1px solid #cccccc;
    cursor: pointer;
}
.vrsOptionPluginSubset .subset li.locked {
    background-color: #ffffff;
    cursor: default;
}
.vrsOptionPluginSubset .button {
    display: inline-block;
    font-size: 1.5em;
    position: absolute;
    line-height: 0.9em;
}
.vrsOptionPluginSubset .vrsIcon-sort-up,
.vrsOptionPluginSubset .vrsIcon-sort-down {
    color: #2E75B5;
}
.vrsOptionPluginSubset .vrsIcon-sort-up {
    right: 1.4em;
}
.vrsOptionPluginSubset .vrsIcon-sort-down {
    right: 0.2em;
}
.vrsOptionPluginSubset .vrsIcon-remove {
    left: 0.2em;
    color: #d22;
}
.vrsOptionPluginSubset .button.locked {
    color: #999;
    cursor: default;
}
/*endregion */

/*region jQuery UI report map styles */
.reportMap > div {
    width: 100%;
    height: 100%;
}
/*endregion */

/*region jQuery UI report pager styles */
.reportPager {
    cursor: default;
    position: relative;
    font-weight: 400;
    width: 100%;
    padding: 0.3em 0 0.3em 0;
    background: #6fa9db; /* Old browsers */
    background: -moz-linear-gradient(top, #6fa9db 0%, #5397d6 49%, #398ad7 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#6fa9db), color-stop(49%,#5397d6), color-stop(100%,#398ad7)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, #6fa9db 0%,#5397d6 49%,#398ad7 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, #6fa9db 0%,#5397d6 49%,#398ad7 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, #6fa9db 0%,#5397d6 49%,#398ad7 100%); /* IE10+ */
    background: linear-gradient(to bottom, #6fa9db 0%,#5397d6 49%,#398ad7 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6fa9db', endColorstr='#398ad7',GradientType=0 ); /* IE6-9 */
    border-top: 1px solid #2F75B4;
    border-bottom: 1px solid #2F75B4;
    margin: 0;
}
.reportPager.top {
    margin-bottom: 8px;
}
.reportPager.bottom {
}
.reportPager .controls {
    display: block;
    text-align: center;
}
.reportPager ul {
    display: inline-block;
    list-style-type: none;
}
.reportPager ul li {
    display: inline-block;
    margin-right: 1em;
}
.reportPager.top li {
    vertical-align: bottom;
}
.reportPager.bottom li {
    vertical-align: top;
}
.reportPager p {
    display: inline-block;
    cursor: pointer;
    font-size: 1.2em;
    background: #f0f0f0 url(jquery-ui/images/ui-bg_flat_100_f0f0f0_40x100.png) 50% 50% repeat-x;
    color: #0073ea;
    border: 1px solid #dddddd;
    padding: 3px 6px 3px 6px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    line-height: 1.3em;
}
.reportPager p > span {
    margin-right: 3px;
    vertical-align: text-bottom;
}
.reportPager p:not(.disabled):hover {
    background: #0073ea url(jquery-ui/images/ui-bg_highlight-soft_25_0073ea_1x100.png) 50% 50% repeat-x;
    border: 1px solid #0073ea;
    color: #ffffff;
}
.reportPager .disabled {
    cursor: default;
    color: #c0c0c0;
}
.reportPager li label {
    margin-right: 1em;
    color: #ffffff;
}
.reportPager input[type="text"] {
    width: 6em;
    text-align: right;
}
.reportPager .countPages {
    color: #ffffff;
    margin-left: 0.5em;
}
.reportPager .pageSize {
    margin-left: 1em;
}
/*endregion */

/*region jQuery UI select dialog styles */
.vrsSelectDialog select {
    width: 100%;
    height: 100%;
}
/*endregion */

/*region jQuery UI settings button styles */
.vrsSettingButtonMenu {
    width: 300px !important;
}
.vrsSettingButtonMenu.vrsLeft {
    position: absolute;
    left: 0;
}
.vrsSettingButtonMenu.vrsRight {
    position: absolute;
    right: 0;
}
/*endregion */

/*region jQuery UI settings list styles */
.vrsStoredSettings .buttonBlock {
    display: block;
}
.vrsStoredSettings button {
    display: inline-block;
    margin: 0 1em 0 0;
    padding: 0.5em 1em;
}
.vrsStoredSettings .keys {
    margin-top: 1em;
}
.vrsStoredSettings .keys table {
    margin-bottom: 1em;
}
.vrsStoredSettings .statistics td {
    padding-right: 1em;
}
.vrsStoredSettings ul {
    padding: 0 0 0 1em;
    list-style-type: none;
}
.vrsStoredSettings .keys li {
    cursor: pointer;
    font-size: 1.2em;
}
.vrsStoredSettings .keys li.hover,
.vrsStoredSettings .keys li:hover,
.vrsStoredSettings .keys li.current {
    color: #2E74B5;
}
.vrsStoredSettings .importExport textarea {
    margin: 1em 0;
    width: 80%;
    height: 300px;
}
.vrsStoredSettings .importExport ol {
    list-style-type: none;
    margin-bottom: 1em;
}
.vrsStoredSettings .importExport li {
    display: block;
    margin: 0.5em 0 0 0;
}
.vrsStoredSettings .importExport label {
    margin-left: 0.5em;
}
.vrsStoredSettings .importExport button {
    display: block;
}
.vrsStoredSettings .empty {
    font-style: italic;
}
.vrsStoredSettings .content {
    margin-top: 3em;
}
.vrsStoredSettings .content .keyTitle {
    font-size: 1.5em;
    margin-right: 1em;
    color: #2E74B5;
    margin-bottom: 0;
}
.vrsStoredSettings .content code {
    margin-top: 1em;
    font-family: monospace;
    font-size: 1.2em;
    margin-bottom: 2em;
    display: block;
}
/*endregion */

/*region jQuery UI slider styles */
.vrsSlider {
    display: inline-block;
    width: 8em;
    margin-left: 1em;
}
/**endregion */

/*region jQuery UI splitter plugin styles */
.vrsSplitter {
}
.vrsSplitter .bar {
    background: #F0F0F0;
}
.vrsSplitter .bar.moving {
    background: #D0D0D0;
}
.vrsSplitter .bar.vertical {
    width: 7px;
    height: 100%;
}
.vrsSplitter .bar.horizontal {
    width: 100%;
    height: 7px;
}
.vrsSplitter .bar.vertical.movable {
    cursor: ew-resize;
}
.vrsSplitter .bar.horizontal.movable {
    cursor: ns-resize;
}
.vrsSplitter .bar .collapse {
    cursor: pointer;
    position: absolute;
}
.vrsSplitter .bar .collapse.vertical {
    top: 10px;
    width: 7px;
    height: 30px;
}
.vrsSplitter .bar .collapse.horizontal {
    left: 10px;
    width: 30px;
    height: 7px;
}
.vrsSplitter .bar .collapse.right {
    background: url('../images/collapse-right.gif') no-repeat;
}
.vrsSplitter .bar .collapse.left {
    background: url('../images/collapse-left.gif') no-repeat;
}
.vrsSplitter .bar .collapse.up {
    background: url('../images/collapse-up.gif') no-repeat;
}
.vrsSplitter .bar .collapse.down {
    background: url('../images/collapse-down.gif') no-repeat;
}
.vrsSplitter .splitterPane.border {
    border: 1px solid #C0C0C0;
}
/*endregion*/

/*region Page panel plugin styles */
.pagePanel {
    display: table;
    height: 100%;
    width: 100%;
    overflow: hidden;
}
.pagePanel .headerPanel {
    display: table-row;
    height: 1px;
    width: 100%;
}
.pagePanel .headerPanel > div {
    display: table-cell;        /* required by Firefox */
    background-color: #f7f7f7;
    border-bottom: 1px solid #8b8b8b;
}
.pagePanel .headerPanel p {
    margin: 6px;
}
.pagePanel .headerPanel .previous,
.pagePanel .headerPanel .next {
    position: absolute;
    top: 0;
    font-size: 1.3em;
    color: #007aff;
    cursor: pointer;
}
.pagePanel .headerPanel .previous {
    left: 0;
}
.pagePanel .headerPanel .next {
    right: 0;
}
.pagePanel .vrsMenu {
    margin-right: 0.5em;
}
.pagePanel .headerPanel .title {
    color: #000000;
    font-weight: 700;
    text-align: center;
    font-size: 1.4em;
}
.pagePanel .pageContent {
    height: 100%;
    display: table-row;
}
.pagePanel .pageContent > div {
    display: inline-block;
    height: 100%;
    width: 100%;
    overflow-y: auto;
    position: relative;
}
.pagePanel .pageContent > div > div {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
}
.pagePanel .pageFooterGap {
    height: 2em;
    width: 100%;
}
/*endregion */
