+ width: 0;
+ height: 0;
+ border-color: transparent;
+ border-style: solid;
+}
+
+.tooltip.top .tooltip-arrow {
+ bottom: -5px;
+ left: 50%;
+ margin-left: -5px;
+ border-top-color: white;
+ border-width: 5px 5px 0;
+}
+
+.tooltip.right .tooltip-arrow {
+ top: 50%;
+ left: -5px;
+ margin-top: -5px;
+ border-right-color: white;
+ border-width: 5px 5px 5px 0;
+}
+
+.tooltip.left .tooltip-arrow {
+ top: 50%;
+ right: -5px;
+ margin-top: -5px;
+ border-left-color: white;
+ border-width: 5px 0 5px 5px;
+}
+
+.tooltip.bottom .tooltip-arrow {
+ top: -5px;
+ left: 50%;
+ margin-left: -5px;
+ border-bottom-color: white;
+ border-width: 0 5px 5px;
+}
+
+/* Rules for Leaflet maps */
+
+.leaflet-control .control-button {
+ display: block;
+ height: 40px;
+ width: 40px;
+ background-color: #333;
+ background-color: rgba(0,0,0,.6);
+ border-radius: 4px 0 0 4px;
+ margin-bottom: 10px;
+ outline: none;
+
+ &:hover {
+ background-color: black;
+ }
+
+ &.active {
+ background-color: #9ed485;
+ }
+
+ &.disabled {
+ background-color: #333;
+ background-color: rgba(0,0,0,.5);
+ cursor: default;
+ }
+
+ .icon {
+ margin: 10px;
+ }
+}
+
+.leaflet-control .zoomin,
+.control-layers .control-button {
+ margin-bottom: 0px;
+ border-radius: 4px 0 0 0;
+}
+
+.leaflet-control .zoomout,
+.control-key .control-button {
+ margin-bottom: 0;
+ border-radius: 0;
+}
+
+.control-locate .control-button,
+.control-share .control-button {
+ border-radius: 0 0 0 4px;
+}
+
+/* Rules for the sidebar and main map area */
+
+.map-layout {
+ #content {
+ overflow: hidden;
+ position: absolute;
+ top: $headerHeight;
+ bottom: 0;
+ width: 100%;
+ }
+
+ #sidebar, #map {
+ position: relative;
+ height: 100%;
+ overflow-x: hidden;
+ overflow-y: auto;
+ }
+
+ #sidebar {
+ float: left;
+ width: $sidebarWidth;
+ background: #fff;
+ font-size: 12px;
+
+ h2 {
+ padding: $lineheight $lineheight $lineheight/2;
+ }
+
+ h3, h4 {
+ margin-top: $lineheight;
+ margin-bottom: $lineheight/2;
+ font-size: 13px;
+ }
+
+ .icon.close {
+ float: right;
+ cursor: pointer;
+ }
+ }
+
+ .welcome {
+ display: none;
+ }
+
+ .overlay-sidebar #sidebar {
+ position: absolute;
+ z-index: 1000;
+ height: auto;
+ border-bottom-right-radius: 5px;
+ overflow: hidden;
+ .welcome {
+ display: block;
+ }
+ #sidebar_content {
+ display: none;
+ }
+ }
+
+ .welcome {
+ p {
+ padding: $lineheight/2 $lineheight $lineheight;
+ font-size: 110%;
+ font-weight: 300;
+ }
+
+ .button {
+ width: 50%;
+ float: left;
+ margin: 0;
+ border-radius: 0;
+ font-weight: normal;
+ padding: .6em;
+
+ &.learn-more {
+ border-right: 1px solid #fff;
+ }
+ }
+ }
+
+ #map {
+ height: 100%;
+ overflow: hidden;
+ }
+
+ #map-ui {
+ display: none;
+ position: relative;
+ float: right;
+ width: 250px;
+ height: 100%;
+ background: white;
+ overflow: auto;
+
+ .section {
+ border-bottom: 1px solid #DDD;
+ padding: 10px 20px;
+ }
+
+ a.close-button {
+ float: right;
+ padding:5px;
+ font-size:20px;
+ line-height:10px;
+ color:#222;
+ border:1px solid #ddd;
+ }
+
+ .tooltip {
+ opacity: 1;
+ border: 1px solid #ccc;
+ .tooltip-arrow {
+ border-top-color: #ccc;
+ }
+ }
+ }
+}
+
+.layers-ui,
+.share-ui {
+ li:last-child {
+ margin-bottom: 0;
+ }
+}
+
+.layers-ui {
+ .base-layers {
+ .leaflet-container {
+ width: 100%;
+ height: 50px;
+ cursor: pointer;
+ }
+
+ li {
+ overflow: hidden;
+ border-radius: 3px;
+ border: 2px solid #fff;
+ margin-bottom: 8px;
+ position: relative;
+ transition: border-color 0.08s ease-in;
+
+ label {
+ position: absolute;
+ top: 0;
+ left: 0;
+ padding: 2px 6px;
+ border-bottom-right-radius: 3px;
+ cursor: pointer;
+ font-weight: 600;
+ font-size: 16px;
+ text-stroke: 2px #fff;
+ background: rgba(255,255,255,.9);
+ z-index: 2; // For IE9
+ input[type="radio"] {
+ display: none;
+ }
+ }
+
+ &.active { border-color: darken($green, 10%); }
+ &:hover {
+ border-color: $grey;
+ &.active { border-color: darken($green, 20%); }
+ }
+ }
+ }
+
+ .overlay-layers {
+ p {
+ font-size: 13px;
+ margin-bottom: 8px;
+ }
+ li.disabled { color: #999; }
+ }
+}
+
+.share-ui {
+ .share-tabs {
+ margin-bottom: 10px;
+
+ a {
+ color: #fff;
+ text-decoration: none;
+ background-color: $lightblue;
+ padding: 5px 10px;
+ }
+
+ a:first-child {
+ border-right: 1px solid #fff;
+ border-radius: 4px 0 0 4px;
+ }
+
+ a:last-child {
+ border-left: 1px solid #fff;
+ border-radius: 0 4px 4px 0;
+ }
+
+ a.active {
+ background-color: $blue;
+ }