/* 
    Document   : map200628.css
    Created on : 3 Aug 2019
    Updated on : 12 Nov 2022
    Author     : Matthew
    Description: Stylesheet for the map page (www.RailMapOnline.com)
*/

/*(C)2022 M Bromley, RailMapOnline.com*/


/*PAGE*/
html {
    height: 100%;
    font-family: sans-serif;
    font-size: small;
    color: white;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    overflow-y: hidden
}
body {
    height: 100%;
    margin: 0;
    padding: 0;
}
h1 {
    font-size: x-large;
    font-family: "Gill Sans MT";
    color: lightblue
}
h1:hover, h1:active {
    color: #7A991A;
    cursor: pointer;
}
h2 {
    font-family: "Gill Sans MT";
    color: #ffffcc;
    text-decoration: none;
    text-shadow: 0 1px 1px rgba(0,0,0,1);
    font-size: large;
    font-weight: normal;
}
p{}
ul {
    list-style-type: none;
    margin: 0;
    padding-left: 10px
}
.news { /*list of news items*/
    list-style-type: square;
    color: lightblue;
    padding-left: 40px
}
.news-sub { /*list of news items*/
    padding-left: 20px;
    list-style-type: disc;
    color: white;
}
a {
    text-decoration-line: none;
}
a:link, a:visited{
    font-size: small;
    font-weight: bold;
    color: cornflowerblue;
    padding: 0px;
}
a:hover, a:active {
    color: #7A991A
}
.linkgap {
    line-height: 20px;
}
.rgtjust {
    text-align: right;
}
.leftjust {
    text-align: left;
}
.leftjustup {
    margin-top: 0px;
    text-align: left;
}
.leftjustsmall {
    text-align: left;
    font-size: xx-small;
}
.ctrjust {
    text-align: center;
}
.ctrjustup {
    margin-top: 0px;
    text-align: center;
}
.ctrjustline {
    text-align: center;
    padding-top: 0px;
    padding-bottom: 5px;
    margin-bottom: 0px;
    border-bottom: 1.5px solid white;
    box-shadow: 0 1px 0 black;
}
.leftjustline {
    text-align: left;
    padding-bottom: 5px;
    border-bottom: 1.5px solid white;
    box-shadow: 0 1px 0 black;
}
.rgtjustline {
    text-align: right;
    padding-bottom: 5px;
    border-bottom: 1.5px solid white;
    box-shadow: 0 1px 0 black;
}
#container {
    min-height: 100%;
    position: relative;
}

.button {
    /*inspired by buttons at http://webdesignerwall.com/tutorials/css3-gradient-buttons*/
    width: 55px;
    height: 45px;
    opacity: 0.8;
    outline: none;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    font: 12px/100% Arial, Helvetica, sans-serif;
    padding-top: .2em;
    padding-bottom: .4em;
    text-shadow: 0 1px 1px rgba(0,0,0,.3);
        -webkit-border-radius: .5em; 
        -moz-border-radius: .5em;
    border-radius: .0em; 
        -webkit-box-shadow: 1px 2px 4px rgba(0,0,0,.5);
        -moz-box-shadow: 1px 2px 4px rgba(0,0,0,.5);
    box-shadow: 1px 2px 4px rgba(0,0,0,.5);
}
.button:hover {
    text-decoration: none
}
.button:active {
}

.blue {
    color:  whitesmoke;
    border: solid 1px darkslateblue;
    background: #0095cd;
    background: -webkit-gradient(linear, left top, left bottom, from(midnightblue), to(blue));
    background: -moz-linear-gradient(top,  darkblue,  blue);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='darkblue', endColorstr='blue');
}
.blue:hover {
    background: whitesmoke;
    background: -webkit-gradient(linear, left top, left bottom, from(#4fc1e9), to(#3bafda));
    background: -moz-linear-gradient(top,  #4fc1e9,  #3bafda);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#4fc1e9', endColorstr='#3bafda');
}
.blue:active {
    color: lightblue;
    background: -webkit-gradient(linear, left top, left bottom, from(blue), to(midnightblue));
    background: -moz-linear-gradient(top,  blue,  midnightblue);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='blue', endColorstr='midnightblue');
}
.blueBig {
    width: 70px;
    color:  whitesmoke;
    opacity: 1;
    border: solid 1px darkslateblue;
    background: #0095cd;
    background: -webkit-gradient(linear, left top, left bottom, from(midnightblue), to(blue));
    background: -moz-linear-gradient(top,  darkblue,  blue);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='darkblue', endColorstr='blue');
}
.blueBig:hover {
    background: whitesmoke;
    background: -webkit-gradient(linear, left top, left bottom, from(#4fc1e9), to(#3bafda));
    background: -moz-linear-gradient(top,  #4fc1e9,  #3bafda);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#4fc1e9', endColorstr='#3bafda');
}
.blueBig:active {
    color: lightblue;
    background: -webkit-gradient(linear, left top, left bottom, from(blue), to(midnightblue));
    background: -moz-linear-gradient(top,  blue,  midnightblue);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='blue', endColorstr='midnightblue');
}
.mint {
    color: white;
    border: solid 1px seagreen;
    background: #0095cd;
    background: -webkit-gradient(linear, left top, left bottom, from(seagreen), to(#99ff00));
    background: -moz-linear-gradient(top,  seagreen,  #99ff00);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='seagreen', endColorstr='#99ff00');
}
.mint:hover {
    background: white;
    background: -webkit-gradient(linear, left top, left bottom, from(lightgreen), to(lightgreen));
    background: -moz-linear-gradient(top,  lightgreen,  lightgreen);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='lightgreen', endColorstr='lightgreen');
}
.mint:active {
    color: seagreen;
    background: -webkit-gradient(linear, left top, left bottom, from(#99ff00), to(seagreen));
    background: -moz-linear-gradient(top,  #99ff00,  seagreen);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#99ff00', endColorstr='seagreen');
}

.mintBig {
    width: 70px;
    color: white;
    opacity: 1;
    border: solid 1px seagreen;
    background: #0095cd;
    background: -webkit-gradient(linear, left top, left bottom, from(seagreen), to(#99ff00));
    background: -moz-linear-gradient(top,  seagreen,  #99ff00);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='seagreen', endColorstr='#99ff00');
}
.mintBig:hover {
    background: white;
    background: -webkit-gradient(linear, left top, left bottom, from(lightgreen), to(lightgreen));
    background: -moz-linear-gradient(top,  lightgreen,  lightgreen);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='lightgreen', endColorstr='lightgreen');
}
.mintBig:active {
    color: seagreen;
    background: -webkit-gradient(linear, left top, left bottom, from(#99ff00), to(seagreen));
    background: -moz-linear-gradient(top,  #99ff00,  seagreen);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#99ff00', endColorstr='seagreen');
}
.orange {
    width: 70px;
    color: #fef4e9;
    opacity: 1;
    border: solid 1px #da7c0c;
    background: #f78d1d;
    background: -webkit-gradient(linear, left top, left bottom, from(#faa51a), to(#f47a20));
    background: -moz-linear-gradient(top,  #faa51a,  #f47a20);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#faa51a', endColorstr='#f47a20');
}
.orange:hover {
    background: #f47c20;
    background: -webkit-gradient(linear, left top, left bottom, from(#f88e11), to(#f06015));
    background: -moz-linear-gradient(top,  #f88e11,  #f06015);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f88e11', endColorstr='#f06015');
}
.orange:active {
    color: #fcd3a5;
    background: -webkit-gradient(linear, left top, left bottom, from(#f47a20), to(#faa51a));
    background: -moz-linear-gradient(top,  #f47a20,  #faa51a);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#f47a20', endColorstr='#faa51a');
}
.grey {
    width: 70px;
    color: white;
    opacity: 1;
    border: solid 1px darkslategray;
    background: #0095cd;
    background: -webkit-gradient(linear, left top, left bottom, from(grey), to(darkgrey));
    background: -moz-linear-gradient(top,  grey,  darkgrey);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='grey', endColorstr='darkgrey');
}
.grey:hover {
}
.grey:active {
}

.link {
    opacity: 1;
    color: whitesmoke;
    border: solid 1px darkslateblue;
    background: blue;
}
.link:hover {
    background: whitesmoke;
    background: -webkit-gradient(linear, left top, left bottom, from(#4fc1e9), to(#3bafda));
    background: -moz-linear-gradient(top,  #4fc1e9,  #3bafda);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#4fc1e9', endColorstr='#3bafda');
}
.link:active {
    color: lightblue;
    background: -webkit-gradient(linear, left top, left bottom, from(blue), to(midnightblue));
    background: -moz-linear-gradient(top,  blue,  midnightblue);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='blue', endColorstr='midnightblue');
}

.buttonHelp {
    width: 10px;
    height: 10px;
    opacity: 1;
    outline: solid;
    background: none;
    border: none;
    cursor: pointer;
    display: inline-block;
}
.buttonHelp:hover {
    text-decoration: none
}
.buttonHelp:active {
}

h2.middle {
    display: inline-block;
}
img.middleImg {
    vertical-align: middle;
    cursor: pointer;
}
img.linkImg{
    background: blue;
    border: solid 1px darkslateblue;
    padding: 4px;
    cursor: pointer;
}
img.linkImg:hover {
    background: lightblue;
    border-color: blue;
}

/*HEADER - always at top of page*/
#header {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 50px;
    line-height: 2px;
    overflow: hidden;
    z-index: 1000;
    background-color: darkgreen;
    border-bottom-style: solid ;
    border-width: 2px;
    border-color: #ffffff;
    box-shadow: 0 1.5px 0 black;
}
#headerTitle {
    width: 250px;
    margin-top: 5px;
    margin-left: 20px}
#headerTitle a {
    font-size: x-large;
    font-weight: normal;
    font-family: "Gill Sans MT";
    color: #ffffcc;
    text-decoration: none; 
    text-shadow: 0 2px 2px rgba(0,0,0,1);
}
#headerTitle p {font-size: x-small; font-weight: normal; font-family: "Gill Sans MT"; color: #ffffcc; text-decoration: none}
#headerSocial {position: absolute; top: 0px; right: 10px; left: 400px; min-width: 120px}
#socialContainer {position: absolute; right: 0px; width: 300px}
            #tableSocial {white-space: nowrap; table-layout: fixed; width: 180px;}
            #tableSocial tr{}
            #tableSocial td{}
                #rowEmail  {width: 40px; padding-top: 6px;} /*Email*/
                #rowSocial1 {width: 140px; padding-top: 6px;}
                #rowSocial2 {width: 70px; padding-top: 6px;} /*Facebook*/
                #rowSocial3 {width: 30px; padding-top: 6px;} /*Mastodon*/
                #rowSocial4 {width: 30px; padding-top: 6px;} /*Twitter*/
                #rowSocial5 {width: 150px; padding-top: 4px;} /*Ko-fi*/
                
h2 a.h2link {
    font: inherit; 
    color: inherit; 
    text-decoration: none; 
    padding: 0px}
h2 a.h2link:hover, h2 a.h2link:active {
    color: lightblue;
    cursor: pointer;
}

/*FOOTER - always at bottom of page*/
#footer {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 50px;
    width: 100%;
    background-color: #313130;
    z-index: 900;
/*	background: -webkit-gradient(linear, left top, left bottom, from(mediumblue), to(#313130));*/
    background-color: darkgreen;
    border-top-style: solid ;
    border-color: #ffffff;
    border-width: 2px;
    box-shadow: inset 0px 2px 0 black;
}
#footerContent {width: 100%}

/*CONTENT - area between header & footer (only used on map page)*/
#content {
    position: absolute;
    left: 0;
    right: 0;
    top: 50px;
    bottom: 50px;
}
    
#sidebarContainer {
    left: 0px;
    width: 100%;
    top: 0;
    bottom: 5px;
    border-style: none;
    float: left;
    z-index: 10000;
}
    
.sidebar { /*sidebar on left of body of page*/
    position: absolute;
    width: 188px;
    top: 58px;
    left: 0px;
    bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;
    opacity: 0.9;
    background-color: darkgreen;
    border-style: solid ;
    border-width: 2px;
    border-left-style: none;
    border-color: #ffffff;
    box-shadow: 1.5px 1.5px 0px black;
    overflow-y: auto;
    overflow-x: hidden;
    z-index: 10000;
}

#sidebar1 { /*Info*/
    width: 420px; /*previously 550*/ 
    visibility: hidden;
}
#sidebar2 {
    visibility: hidden;
}
#sidebar3 {
    visibility: hidden;
}
#sidebar4 { /*Stations*/
    width: 220px;
    overflow-y: hidden;
    visibility: hidden;
}
#sidebar5 { /*Layers*/
    width: 170px;
    visibility: hidden;
}
#sidebar6 { /*Links*/
    width: 140px;
    visibility: hidden;
}
#sidebar7 { /*News*/
    visibility: hidden;
}

#topButtonBar {
    position: absolute;
    left: 0px;
    width: 420px;
    height: 50px;
    top: 0px;
    padding-left: 5px;
    padding-top: 8px;
    border-style: none;
    border-width: 1px;
    border-color: #FFFFFF;
    z-index: 10000;
        }
#button7 {left: 0px} /*News*/
#button5 {left: 60px} /*Layers*/
#button3 {left: 120px} /*Legend*/
#button4 {left: 180px} /*Stations*/
#button2 {left: 240px} /*Tools*/
#button6 {left: 300px} /*Links*/
#button1 {left: 360px} /*Info*/
        
#layerButtonDiv{
    position: absolute;
    left: 0px;
    width: 90px;
    height: 50px;
    top: 60px;
    padding-left: 5px;
    padding-right: 10px;
    padding-top: 0px;
    border-style: none;
}
.layerButton {
    padding-bottom: 5px;
    padding-left: 10px;
    display: inline-block;
} 

.linkButtonDiv{
    position: absolute;
    left: 0px;
    width: 130px;
    /*height: 200px;*/
    top: 50px;
    padding-left: 5px;
    padding-right: 10px;
    padding-top: 0px;
    border-style: none
}
.linkButton {
    padding-bottom: 3px;
    padding-left: 25px;
    margin-bottom: 0px
} 

#linkDiv2 {
    position: absolute;
    left: 0px;
    width: 130px;
    /*height: 200px;*/
    top: 470px;
    padding-left: 5px;
    padding-right: 10px;
    padding-top: 0px;
    border-style: none
}
#linkDiv2UK {
    position: absolute;
    left: 0px;
    width: 130px;
    /*height: 200px;*/
    top: 550px;
    padding-left: 5px;
    padding-right: 10px;
    padding-top: 0px;
    border-style: none
}
#linkDiv2Canal {
    position: absolute;
    left: 0px;
    width: 130px;
    /*height: 200px;*/
    top: 510px;
    padding-left: 5px;
    padding-right: 10px;
    padding-top: 0px;
    border-style: none
}
#linkDiv2US {
    position: absolute;
    left: 0px;
    width: 130px;
    /*height: 200px;*/
    top: 360px;
    padding-left: 5px;
    padding-right: 10px;
    padding-top: 0px;
    border-style: none
}

#main {
    position: absolute;
    top: 0px;
    height: 100%;
    left: 0px;
    right: 0;
    background-color: lightblue;
    color: black
}
#map-canvas { /*map area*/
    top: 0;
    left: 0;
    height: 100%;
    margin-left: 0px;
    margin-top: 0px;
    color: black
}
#map-loading{
    font-size: large;
    font-weight: normal;
    font-size: x-large; 
    font-weight: normal; 
    font-family: "Gill Sans MT"; 
    color: #ffffcc; 
    text-decoration: none;
    text-shadow: 0 1px 1px rgba(0,0,0,1);
    text-align: center;
}
#LatBox:disabled, #LatMark:disabled { /*text boxes to display lat & long*/
    width: 57px;
    text-align: right;
}
#LonBox:disabled, #LonMark:disabled { /*text boxes to display lat & long*/
    width: 62px;
    text-align: right;
}
#searchTerm, #companyTerm {
    width: 110px;
    text-align: left;
}
.slideHeading {
    padding-left: 20px;
    color: white;
}
.slideContent {
    margin-left: 40px;
    max-width: 500px;
    color: white;
    padding: 10px;
    padding-left: 5px;
    padding-top: 1px;
    border-top: solid;
    border-bottom: solid;
    border-width: 1px;
    border-color: white;
}
.searchTable {
    position: absolute;
    width: 95%;
    top: 180px;
    bottom: 0px;
    height: auto;
    overflow-y: auto;
    overflow-x: hidden
}
#companyTable {
    position: absolute;
    width: 95%;
    top: 185px;
    bottom: 0px;
    height: auto;
    overflow-y: auto;
    overflow-x: hidden
}
#canalTable {
    position: absolute;
    width: 95%;
    top: 110px;
    bottom: 0px;
    height: auto;
    overflow-y: auto;
    overflow-x: hidden
}
.splashTable {
    padding-left: 10px;
    width: 650px;
    font-size: xx-small;
    line-height: 1;
    color: white;
}
.splashRow:hover, .splashTable:active {
    color: white;
    cursor: default;
}
.splashTable td {
    padding-left: 10px;
}
#popupBox {
    visibility: hidden;
    position: absolute;
    z-index: 1000;
    width: 400px; /*previously 500*/
    height: 300px;
    left: 50%;
    top: 50%;
    margin-left: -200px; /*previously -250*/
    margin-top: -150px;
    overflow-x: hidden;
    overflow-y: auto;
    background-color: white;
    border: 1px solid cornflowerblue;
    padding: 10px;
    word-wrap: break-word;
    font-family: sans-serif;
    color: black;
}

#helpBox {
    visibility: hidden;
    position: absolute;
    z-index: 1001;
    width: 400px;
    height: 280px;
    left: 50%;
    top: 50%;
    margin-left: -200px;
    margin-top: -140px;
    overflow-x: hidden;
    overflow-y: auto;
    background-color: white;
    border: 1px solid cornflowerblue;
    padding: 10px;
    word-wrap: break-word;
    font-family: sans-serif;
    color: black;
}

#statusBox {
    visibility: visible;
    position: absolute;
    z-index: 1000;
    width: 400px; /*previously 500*/
    height: 300px;
    left: 50%;
    top: 50%;
    margin-left: -200px; /*previously -250*/
    margin-top: -150px;
    overflow-x: hidden;
    overflow-y: auto;
    background-color: white;
    border: 1px solid cornflowerblue;
    padding: 10px;
    word-wrap: break-word;
    font-family: sans-serif;
    color: black;
}

#campaignBox {
    visibility: hidden;
    position: absolute;
    z-index: 2000;
    left: 0px;
    right: 0px;
    top: 50%;
    bottom: 0px;
    overflow-x: hidden;
    overflow-y: auto;
    background-color: yellow;
    border: 1px solid black;
    padding: 10px;
    word-wrap: break-word;
    font-family: sans-serif;
    font-size: 14px;
    color: black;
}



#popupLink {
    width: 390px; /*previously 480*/
    height: 40px;
    text-align: left;
    word-wrap: break-word;
}
#popupExit, #helpExit {
    cursor: pointer;
}
#emailIcon {
    border: none;
}
.infoWindow {
    width: 300px;
    height: 250px;
    overflow-x: hidden;
    overflow-y: auto;
    word-wrap: break-word;
    font-family: sans-serif;
    user-select: text;
    -webkit-user-select: text;
}
.infoWindow h2, #popupBox h2, #helpBox h2, #statusBox h2, #campaignBox h2{
    color: #000099;
    padding-bottom: 5px;
    border-bottom: 1px solid cornflowerblue;
    text-shadow: none;
    font-size: large; font-weight: normal; font-family: "Gill Sans MT";
    word-wrap: normal;
}
.labelInfo {
    border: 1px solid cornflowerblue;
    background-color: white;
    color: black;
    height: 14px;
    width: auto;
    padding: 3px;
    overflow-x: hidden;
    overflow-y: hidden;
    white-space: nowrap;
    font-family: sans-serif;
}

#helpBox p{
    padding-left: 15px;
    line-height: 130%;
}
.infoWindow a, #popupBox a {
    font-size: small;
    font-weight: normal;
    color: blue
}
.infoWindow a:hover, #popupBox a:hover {
    color: #7A991A
}
#titleBar {
    width: 250px
}
.companyDiv {
    width: 180px;
    font-family: sans-serif;
}
.abbrCell {
    width: 115px;
    height: 14px;
    float: left;
    text-align: right;
    margin-left: 5px;
    font-size: smaller;
    color: lightblue;
}
.colorCell {
    width: 40px;
    height: 14px;
    text-align: right;
    margin-left: 130px;
    padding-right: 0;
    border: 1px solid white;
}
.companyCell {
    width: 165px;
    text-align: right;
    padding-top: 3px;
    padding-left: 5px;
    padding-right: 5px;
    padding-bottom: 3px;
    margin-bottom: 6px;
    border-bottom: 1px solid cornflowerblue;
    font-size: smaller;
}
.abbrCanalCell {
    width: 115px;
    height: 20px;
    float: left;
    text-align: right;
    margin-left: 5px;
    font-size: smaller;
    color: lightblue;
}
.colorCanalCell {
    width: 40px;
    height: 20px;
    text-align: right;
    margin-left: 130px;
    padding-right: 0;
    border: 1px solid white;
}
.linkNoLine{
    border-style: none;
}



.wideButtons{
    background-color: #000099;
    border: 1px solid #ffffff;
    color: #ffffff;
    font-family: sans-serif;
    font-size: 13px;
    font-weight: normal;
    padding: 3px 5px;
    text-decoration: none;
    width: 120px;
}
.wideButtons:active {
    background-color: #7A991A;
}
.indent20 {
    padding-left: 20px;
}
.indent20 i {
    color: yellow;
}
.copyright{
    font-size: xx-small;
    padding-left: 20px;
    line-height: 1;
}
table {
    width: 100%;
    text-align: left;
    color: lightblue;
}
tr:hover, tr:active {
    color:#7A991A;
    cursor:  pointer;
    }
input[type="text"] {
    border: 1px solid #000099;
    padding-right: 3px;
    padding-left: 3px;
    background-color: white;
    outline-color: #000099;
}
input[type="checkbox"] {
}
select {
    border: none;
    padding-right: 3px;
    padding-left: 3px;
    padding-top: 1px;
    padding-bottom: 1px;
    background-color: white;
    outline: none;
}
option:disabled {
    color: #7a991a;
}
span{
    color: cornflowerblue;
}
span:hover{
    color: #7A991A;
    cursor: pointer;
}

a.blueButton {
    display: block;
    width:  75px;
    height: 15px;
    opacity: 1;
    outline: none;
    cursor: pointer;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    text-wrap: none;
    font: 12px/100% Arial, Helvetica, sans-serif;
    padding-top: 10px;
    padding-bottom: 10px;
    text-shadow: 0 1px 1px rgba(0,0,0,.3);
        -webkit-border-radius: .5em; 
        -moz-border-radius: .5em;
    border-radius: .0em; 
        -webkit-box-shadow: 1px 2px 4px rgba(0,0,0,.5);
        -moz-box-shadow: 1px 2px 4px rgba(0,0,0,.5);
    box-shadow: 1px 2px 4px rgba(0,0,0,.5);
    color:  whitesmoke;
    border: solid 1px darkslateblue;
    background: -webkit-gradient(linear, left top, left bottom, from(midnightblue), to(blue));
    background: -moz-linear-gradient(top,  darkblue,  blue);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='darkblue', endColorstr='blue');
}
a.blueButton:hover {
    background: whitesmoke;
    background: -webkit-gradient(linear, left top, left bottom, from(#4fc1e9), to(#3bafda));
    background: -moz-linear-gradient(top,  #4fc1e9,  #3bafda);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#4fc1e9', endColorstr='#3bafda');
    text-decoration: none;
}
a.blueButton:active {
    color: lightblue;
    background: -webkit-gradient(linear, left top, left bottom, from(blue), to(midnightblue));
    background: -moz-linear-gradient(top,  blue,  midnightblue);
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='blue', endColorstr='midnightblue');
}


div.greenCircle {
    height: 7px;
    width: 7px;
    display: inline-block;
    border-radius: 50%;
    border: 1px solid black;
    background-color: lightgreen;
}
div.redCircle {
    height: 7px;
    width: 7px;
    display: inline-block;
    border-radius: 50%;
    border: 1px solid black;
    background-color: red;
}


/*custom controls overlaid on Google map*/
.latLngControlSpan {
    color: black;
    background-color: lightblue;
    font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
}
.latLngControlSpan:hover {
    color: black;
}
#copyrightControlBox {
    color: #1b61e4;
    background-color: white;
    opacity: 0.7;
    font: 10px Roboto, Arial, sans-serif;
}


/*change default cursor to crosshair on any of the leaflet layers*/
.leaflet-clickable {
    cursor: crosshair;
}
.leaflet-container {
    cursor: crosshair;
}
.leaflet-interactive {
    cursor: crosshair;
}

/*following styles the map popups & tooltips (using Leaflet classes)*/
.custom-popup .leaflet-popup-content-wrapper {
    background-color: white;
    opacity: 0.8;
    color: rgba(0,0,0,1);
    border-radius: 0px;
}
.custom-popup .leaflet-popup-tip-container {
    width: 30px;
    height: 20px;
}
.custom-popup .leaflet-popup-tip {
    background-color: white;
    opacity: 0.8;
}

.custom-popup .leaflet-tooltip-left {
    background-color: white;
    opacity: 0.8;
    color: rgba(0,0,0,1);
    border-radius: 0px;
}
.custom-popup .leaflet-tooltip-right {
    background-color: white;
    opacity: 0.8;
    color: rgba(0,0,0,1);
    border-radius: 0px;
}

.leaflet-popup {
    overflow-wrap: break-word;
}


.contextMenuBox {
    border: 1px solid lightgrey;
    background-color: white;
    color: black;
    height: auto;
    width: 120px;
    overflow-x: hidden;
    overflow-y: hidden;
    white-space: nowrap;
    font-family: sans-serif;
    box-shadow: 0 1px 7px rgba(0,0,0,0.4);
    padding: 4px 0;
    cursor: default;
}

.contextMenuRow {
    width: 120px;
    height: 20px;
    line-height: 20px;
    padding-left: 12px;
    padding-right: 12px;
    padding-top: 2px;
    padding-bottom: 2px;
    opacity: 1;
}
.contextMenuRow:hover {
    background-color: lightblue;
}

.contextMenuIcon {
    width: 16px;
    height: 16px;
    padding-right: 4px;
}


/*(C)2022 M Bromley, RailMapOnline.com*/
