div.olMap {
  z-index: 0;
  padding: 0 !important;
  margin: 0 !important;
  cursor: default;
}

div.olMapViewport {
  text-align: left;
}

div.olLayerDiv {
  -moz-user-select: none;
  -khtml-user-select: none;
}

.olLayerGoogleCopyright {
  left: 2px;
  bottom: 2px;
}

.olLayerGoogleV3.olLayerGoogleCopyright {
  right: auto !important;
}

.olLayerGooglePoweredBy {
  left: 2px;
  bottom: 15px;
}

.olLayerGoogleV3.olLayerGooglePoweredBy {
  bottom: 15px !important;
}
/* GMaps should not set styles on its container */
.olForeignContainer {
  opacity: 1 !important;
}

.olControlAttribution {
  font-size: smaller;
  right: 3px;
  bottom: 4.5em;
  position: absolute;
  display: block;
}

.olControlScale {
  right: 3px;
  bottom: 3em;
  display: block;
  position: absolute;
  font-size: smaller;
}

.olControlScaleLine {
  display: block;
  position: absolute;
  left: 10px;
  bottom: 15px;
  font-size: xx-small;
}

.olControlScaleLineBottom {
  border: solid 2px black;
  border-bottom: none;
  margin-top: -2px;
  text-align: center;
}

.olControlScaleLineTop {
  border: solid 2px black;
  border-top: none;
  text-align: center;
}

.olControlPermalink {
  right: 3px;
  bottom: 1.5em;
  display: block;
  position: absolute;
  font-size: smaller;
}

div.olControlMousePosition {
  bottom: 0;
  right: 3px;
  display: block;
  position: absolute;
  font-family: Arial;
  font-size: smaller;
}

.olControlOverviewMapContainer {
  position: absolute;
  bottom: 0;
  right: 0;
}

.olControlOverviewMapElement {
  padding: 10px 18px 10px 10px;
  background-color: #00008B;
  -moz-border-radius: 1em 0 0 0;
}

.olControlOverviewMapMinimizeButton,
.olControlOverviewMapMaximizeButton {
  height: 18px;
  width: 18px;
  right: 0;
  bottom: 80px;
  cursor: pointer;
}

.olControlOverviewMapExtentRectangle {
  overflow: hidden;
  background-image: url("img/blank.gif");
  cursor: move;
  border: 2px dotted red;
}

.olControlOverviewMapRectReplacement {
  overflow: hidden;
  cursor: move;
  background-image: url("img/overview_replacement.gif");
  background-repeat: no-repeat;
  background-position: center;
}

.olLayerGeoRSSDescription {
  float: left;
  width: 100%;
  overflow: auto;
  font-size: 1.0em;
}

.olLayerGeoRSSClose {
  float: right;
  color: gray;
  font-size: 1.2em;
  margin-right: 6px;
  font-family: sans-serif;
}

.olLayerGeoRSSTitle {
  float: left;
  font-size: 1.2em;
}

.olPopupContent {
  padding: 5px;
  overflow: auto;
}

.olControlNavigationHistory {
  background-image: url("img/navigation_history.png");
  background-repeat: no-repeat;
  width: 24px;
  height: 24px;
}

.olControlNavigationHistoryPreviousItemActive {
  background-position: 0 0;
}

.olControlNavigationHistoryPreviousItemInactive {
  background-position: 0 -24px;
}

.olControlNavigationHistoryNextItemActive {
  background-position: -24px 0;
}

.olControlNavigationHistoryNextItemInactive {
  background-position: -24px -24px;
}

div.olControlSaveFeaturesItemActive {
  background-image: url(img/save_features_on.png);
  background-repeat: no-repeat;
  background-position: 0 1px;
}

div.olControlSaveFeaturesItemInactive {
  background-image: url(img/save_features_off.png);
  background-repeat: no-repeat;
  background-position: 0 1px;
}

.olHandlerBoxZoomBox {
  border: 2px solid red;
  position: absolute;
  background-color: white;
  opacity: 0.50;
  font-size: 1px;
  filter: alpha(opacity=50);
}

.olHandlerBoxSelectFeature {
  border: 2px solid blue;
  position: absolute;
  background-color: white;
  opacity: 0.50;
  font-size: 1px;
  filter: alpha(opacity=50);
}

.olControlPanPanel {
  top: 10px;
  left: 5px;
}

  .olControlPanPanel div {
    background-image: url(img/pan-panel.png);
    height: 18px;
    width: 18px;
    cursor: pointer;
    position: absolute;
  }

  .olControlPanPanel .olControlPanNorthItemInactive {
    top: 0;
    left: 9px;
    background-position: 0 0;
  }

  .olControlPanPanel .olControlPanSouthItemInactive {
    top: 36px;
    left: 9px;
    background-position: 18px 0;
  }

  .olControlPanPanel .olControlPanWestItemInactive {
    position: absolute;
    top: 18px;
    left: 0;
    background-position: 0 18px;
  }

  .olControlPanPanel .olControlPanEastItemInactive {
    top: 18px;
    left: 18px;
    background-position: 18px 18px;
  }

.olControlZoomPanel {
  top: 71px;
  left: 14px;
}

  .olControlZoomPanel div {
    background-image: url(img/zoom-panel.png);
    position: absolute;
    height: 18px;
    width: 18px;
    cursor: pointer;
  }

  .olControlZoomPanel .olControlZoomInItemInactive {
    top: 0;
    left: 0;
    background-position: 0 0;
  }

  .olControlZoomPanel .olControlZoomToMaxExtentItemInactive {
    top: 18px;
    left: 0;
    background-position: 0 -18px;
  }

  .olControlZoomPanel .olControlZoomOutItemInactive {
    top: 36px;
    left: 0;
    background-position: 0 18px;
  }

/*
 * When a potential text is bigger than the image it move the image
 * with some headers (closes #3154)
 */
.olControlPanZoomBar div {
  font-size: 1px;
}

.olPopupCloseBox {
  background: url("img/close.gif") no-repeat;
  cursor: pointer;
}

.olFramedCloudPopupContent {
  padding: 5px;
  overflow: auto;
}

.olControlNoSelect {
  -moz-user-select: none;
  -khtml-user-select: none;
}

.olImageLoadError {
  background-color: pink;
  opacity: 0.5;
  filter: alpha(opacity=50); /* IE */
}

/**
 * Cursor styles
 */

.olCursorWait {
  cursor: wait;
}

.olDragDown {
  cursor: move;
}

.olDrawBox {
  cursor: crosshair;
}

.olControlDragFeatureOver {
  cursor: move;
}

.olControlDragFeatureActive.olControlDragFeatureOver.olDragDown {
  cursor: -moz-grabbing;
}

/**
 * Layer switcher
 */
.olControlLayerSwitcher {
  position: absolute;
  top: 25px;
  right: 0;
  width: 20em;
  font-family: sans-serif;
  font-weight: bold;
  margin-top: 3px;
  margin-left: 3px;
  margin-bottom: 3px;
  font-size: smaller;
  color: white;
  background-color: transparent;
}

  .olControlLayerSwitcher .layersDiv {
    padding-top: 5px;
    padding-left: 10px;
    padding-bottom: 5px;
    padding-right: 10px;
    background-color: darkblue;
  }

    .olControlLayerSwitcher .layersDiv .baseLbl,
    .olControlLayerSwitcher .layersDiv .dataLbl {
      margin-top: 3px;
      margin-left: 3px;
      margin-bottom: 3px;
    }

    .olControlLayerSwitcher .layersDiv .baseLayersDiv,
    .olControlLayerSwitcher .layersDiv .dataLayersDiv {
      padding-left: 10px;
    }

  .olControlLayerSwitcher .maximizeDiv,
  .olControlLayerSwitcher .minimizeDiv {
    width: 18px;
    height: 18px;
    top: 5px;
    right: 0;
    cursor: pointer;
  }

.olBingAttribution {
  color: #DDD;
}

  .olBingAttribution.road {
    color: #333;
  }

.olGoogleAttribution.hybrid, .olGoogleAttribution.satellite {
  color: #EEE;
}

.olGoogleAttribution {
  color: #333;
}

span.olGoogleAttribution a {
  color: #77C;
}

span.olGoogleAttribution.hybrid a, span.olGoogleAttribution.satellite a {
  color: #EEE;
}

/**
 * Editing and navigation icons.
 * (using the editing_tool_bar.png sprint image)
 */
.olControlNavToolbar,
.olControlEditingToolbar {
  margin: 5px 5px 0 0;
}

  .olControlNavToolbar div,
  .olControlEditingToolbar div {
    background-image: url("img/editing_tool_bar.png");
    background-repeat: no-repeat;
    margin: 0 0 5px 5px;
    width: 24px;
    height: 22px;
    cursor: pointer
  }
/* positions */
.olControlEditingToolbar {
  right: 0;
  top: 0;
}

.olControlNavToolbar {
  top: 295px;
  left: 9px;
}
/* layouts */
.olControlEditingToolbar div {
  float: right;
}
/* individual controls */
.olControlNavToolbar .olControlNavigationItemInactive,
.olControlEditingToolbar .olControlNavigationItemInactive {
  background-position: -103px -1px;
}

.olControlNavToolbar .olControlNavigationItemActive,
.olControlEditingToolbar .olControlNavigationItemActive {
  background-position: -103px -24px;
}

.olControlNavToolbar .olControlZoomBoxItemInactive {
  background-position: -128px -1px;
}

.olControlNavToolbar .olControlZoomBoxItemActive {
  background-position: -128px -24px;
}

.olControlEditingToolbar .olControlDrawFeaturePointItemInactive {
  background-position: -77px -1px;
}

.olControlEditingToolbar .olControlDrawFeaturePointItemActive {
  background-position: -77px -24px;
}

.olControlEditingToolbar .olControlDrawFeaturePathItemInactive {
  background-position: -51px -1px;
}

.olControlEditingToolbar .olControlDrawFeaturePathItemActive {
  background-position: -51px -24px;
}

.olControlEditingToolbar .olControlDrawFeaturePolygonItemInactive {
  background-position: -26px -1px;
}

.olControlEditingToolbar .olControlDrawFeaturePolygonItemActive {
  background-position: -26px -24px;
}

div.olControlZoom {
  position: absolute;
  top: 8px;
  left: 8px;
  background: rgba(255,255,255,0.4);
  border-radius: 4px;
  padding: 2px;
}

  div.olControlZoom a {
    display: block;
    margin: 1px;
    padding: 0;
    color: white;
    font-size: 18px;
    font-family: 'Lucida Grande', Verdana, Geneva, Lucida, Arial, Helvetica, sans-serif;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
    height: 22px;
    width: 22px;
    line-height: 19px;
    background: #130085; /* fallback for IE - IE6 requires background shorthand*/
    background: rgba(0, 60, 136, 0.5);
    filter: alpha(opacity=80);
  }

    div.olControlZoom a:hover {
      background: #130085; /* fallback for IE */
      background: rgba(0, 60, 136, 0.7);
      filter: alpha(opacity=100);
    }

@media only screen and (max-width: 600px) {
  div.olControlZoom a:hover {
    background: rgba(0, 60, 136, 0.5);
  }
}

a.olControlZoomIn {
  border-radius: 4px 4px 0 0;
}

a.olControlZoomOut {
  border-radius: 0 0 4px 4px;
}


/**
 * Animations
 */

.olLayerGrid .olTileImage {
  -webkit-transition: opacity 0.2s linear;
  -moz-transition: opacity 0.2s linear;
  -o-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

/* Turn on GPU support where available */
.olTileImage {
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -o-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-perspective: 1000;
  -moz-perspective: 1000;
  -ms-perspective: 1000;
  perspective: 1000;
}

  /* when replacing tiles, do not show tile and backbuffer at the same time */
  .olTileImage.olTileReplacing {
    display: none;
  }

/* override any max-width image settings (e.g. bootstrap.css) */
img.olTileImage {
  max-width: none;
}

.find-c-by-address.ol-control {
  top: 58px;
  left: 0.5em;
}

.select-address.ol-control {
  top: 110px;
  left: 0.5em;
}

.armti-map-custom-buttons-group.ol-control {
  top: 115px;
  right: 0.5em;
}

.ol-control i.icon {
  margin: 0 auto;
  vertical-align: middle;
  line-height: 1;
}

.select-address.ol-control .deactivated {
  background-color: rgba(125, 125, 125, 0.5);
}

body .ol-zoom {
  right: .5em;
  left: auto;
}

body .header-icon-map {
  width: 50px;
  height: 50px;
  background-size: contain;
}

body .fix-width-marker {
  width: 32px;
}

body .map-marker-new, body .map-marker-with-icon-and-text > .armti-icon-map-marker-new {
  width: 32px;
  height: 32px;
  background-size: contain;
}

body .inspector-header-icon-map {
  background-image: url('../assets/images/mapicons/inspectorheader-e33f29558d4af59e50aa4f63a77e5317.png');
}

body .calendar-icon-map {
  background-image: url('../assets/images/mapicons/calendar-test-4ea3fce5ade3f81f15c50017ec0d0048.png');
}

body .completepps-icon-map, body .map-marker-green-new .armti-icon-map-marker-new {
  background-image: url('../assets/images/mapicons/completepps-12a0977cae6647a260b83db323ab2f0e.png');
}

body .overduepps-icon-map, body .map-marker-red-new .armti-icon-map-marker-new {
  background-image: url('../assets/images/mapicons/overduepps-b1b0eef4b6be9731e64125cd49890897.png');
}

body .plannedpss-icon-map, body .map-marker-gray-new .armti-icon-map-marker-new {
  background-image: url('../assets/images/mapicons/plannedpss-4040413e917584f4347ab3f6de1865cc.png');
}

body .user-icon-map, body .map-marker-user-new .armti-icon-map-marker-new {
  background-image: url('../assets/images/mapicons/inspector-c952cb16ea72587d596ad03b878a3dad.png');
}
body .request-icon-map {
    background-image: url('../assets/images/mapicons/request-543785e9030a5fad1bbeb6559ad52432.png');
}
body .map-marker-request-new .armti-icon-map-marker-new{
    background-image: url('../assets/images/mapicons/request_pin-a37f0f434fae2bb445c04275c3028605.png');
}
body .map-marker-request-new .armti-icon-map-marker-new{
    background-image: url('../assets/images/mapicons/request_pin-a37f0f434fae2bb445c04275c3028605.png');
}
body .map-marker-work-begin .armti-icon-map-marker-new{
    background-image: url('../assets/images/mapicons/markerstart-3174c59384dc6a5203d46b0f3e9f6a9f.png');
    width: 25px;
    height: 40px;
}
body .map-marker-work-end .armti-icon-map-marker-new{
    background-image: url('../assets/images/mapicons/markerend-4b22aa52263d3d4ed3010c28dee24a4a.png');
    width: 25px;
    height: 40px;
}
body .map-marker-request-ball{
    -webkit-mask: url(../assets/images/mapicons/request_ball.svg) no-repeat;
    -webkit-mask-size: contain;
}
body .carriedoverpss-icon-map, body .map-marker-yellow-new .armti-icon-map-marker-new{
    background-image: url('../assets/images/mapicons/carriedoverpss-fd5da363b5eb49217b07d5b9684595aa.png');
}

body .carriedoverpss-icon-map-bw {
  background-image: url('../assets/images/mapicons/carriedoverpssbw-0a758a3735ab773ddbb0f6d67f636d60.png');
}

body .request-icon-map-bw {
  background-image: url('../assets/images/mapicons/requestbw-dc5be70925b5ac2e717b65fda6ddb4cf.png');
}

body .overduepps-icon-map-bw {
  background-image: url('../assets/images/mapicons/overdueppsbw-dd8ce9ea568011c3c5d2cab49f11e9a1.png');
}

body .completepps-icon-map-bw {
  background-image: url('../assets/images/mapicons/completeppsbw-56d42ebe0822fda9bfcc4a72a604c402.png');
}

body .plannedpss-icon-map-bw {
  background-image: url('../assets/images/mapicons/plannedpssbw-0d3ba0b5f9ad2f5f7accd3b811c166f5.png');
}

body .user-icon-map-bw {
  background-image: url('../assets/images/mapicons/inspectorbw-1f3a27a4d94754efb874543f178e1bce.png');
}

body .map-marker-with-icon-and-text {
  top: auto;
  left: auto;
}

body .ol-control button {
  font-size: 25px;
  height: 50px;
  width: 50px;
}

@media only screen and (max-width: 1024px) {
  .armti-map-custom-buttons-group.ol-control {
    top: 185px;
  }

  body .ol-zoom {
    top: 80px;
  }
}

@media only screen and (max-width: 950px) {
  .armti-map-custom-buttons-group.ol-control {
    top: 255px;
  }

  body .ol-zoom {
    top: 150px;
  }
}
