﻿/*
 *  full-screen fixes
 *  - cannot be grouped
 */
.mod_c4g_maps > div:fullscreen {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}
.mod_c4g_maps > div:-ms-fullscreen {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}
.mod_c4g_maps > div:-moz-full-screen {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}
.mod_c4g_maps > div:-webkit-full-screen {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}

.mod_c4g_maps {
  min-width: 317px;
}

.ol-viewport .ol-unselectable {
    -webkit-touch-callout:none;
    -webkit-user-select:none;
    -khtml-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
    -webkit-tap-highlight-color:transparent
}

/*
 *  Z-Indexes
 */
.ol-control {
  z-index: 40;
}

.ol-dragbox {
  border: 1px dashed black;
}
.ol-dragzoom {
  border: 3px solid black;
}
/*
 *  Controls
 */
.ol-control {
  position: absolute;
}
.ol-control button,
.c4g-control button {
  display: block;
  font-size: 1.14em;
  height: 1.375em;
  width: 1.375em;
  line-height: .5em;
}
.ol-control button[title]:after {
  display: none;
}
.ol-control button[title]:focus:after,
.ol-control button[title]:hover:after {
  display: none;
}

/*
 *  Control-container
 */
.c4g-control-container-top-left {
  position: absolute;
  top: .2em;
  bottom: .2em;
  left: .2em;
  overflow-y: auto;
  max-height: 100%;
}
.c4g-control-container-top-left > div {
  margin-bottom: 3px;
}

.c4g-control-container-bottom-left {
  position: absolute;
  bottom: 2.3em;
  /* do not change "left"-value! */
  left: 0px;
  margin-left: .4em;
}
.c4g-control-container-bottom-left-sub div {
  display: block;
  white-space: normal;
}
.c4g-control-container-top-right {
  position: absolute;
  top: .2em;
  /* do not change "right"-value! */
  right: 0;
  margin-right: .2em;
  max-width: 720px;
}

.c4g-control-container-bottom-right {
  position: absolute;
  bottom: .2em;
  text-align: right;
  /* do not change "right"-value! */
  right: 0;
  margin-right: 0px;
  margin-left: 48px;
}

.c4g-control-container-bottom-right li {
  display: block;
}

.c4g-control-container-bottom-left-sub,
.c4g-control-container-top-right div,
.c4g-control-container-bottom-right div,
.c4g-portside-control,
.ol-rotate,
.ol-scale-line,
.ol-zoom,
div.ol-zoom-extent,
.ol-zoom-with-extent,
div.ol-zoom-home,
.ol-zoom-with-home,
div.ol-zoom-position,
.ol-zoom-with-position,
.c4g-graticule,
.ol-full-screen
{
  position: relative;
}

.c4g-control-container-top-right .ol-control {
  float: right;
  clear: both;
}

.c4g-control-container-bottom-right > div {
  display: block;
  margin-left: 48px;
  vertical-align: bottom;
}

/*
 *  General classes
 */
.c4g-hide {
  display: none !important;
}


/*
 * Touch corrections
 */
.ol-touch .ol-control button:after {
/* Hide tooltips when in touch mode*/
  display: none;
}

/*
 *  GeoSearch
 */
/*.c4g-geosearch {*/
  /*margin-left: 46px;*/
/*}*/

.c4g-geosearch-wrapper {
  float: left;
}

.c4g-geosearch-wrapper .searchResultButton {
    overflow: hidden;
    font:inherit;
    font-size: smaller;
    width: 94%;
    padding-left: 2px;
    text-align: left;
    line-height:1;
}

.c4g-geosearch-wrapper ul {
  list-style-type: none;
}

.c4g-geosearch.c4g-close .c4g-geosearch-wrapper {
  display: none;
}
button.c4g-geosearch-trigger:before {
  content: "S";
}
button.c4g-geosearch-start:before {
  content: "Go!";
}

.c4g-geosearch #resultcontainer {
  width: calc(100% - 50px);
  margin-left: auto;
  margin-right: auto;
  max-width: 640px;
}

/*
 *  Overview-map
 */
.ol-uncollapsible > button {
  display: none !important;
}
.c4g-overviewmap > button {
  z-index: 50;
}
.c4g-overviewmap .ol-overviewmap {
  overflow: hidden;
  width: 250px;
  height: 143px;
  background-color: transparent !important;
}
.c4g-overviewmap.c4g-close .ol-overviewmap {
  width: 0;
  height: 0;
}
.ol-overviewmap-map {
  opacity: 1;
  width: 150px;
  height: 100px;
  margin: auto;
  margin-top: 19px;
}
.c4g-overviewmap.c4g-close .ol-overviewmap-map {
  opacity: 0;
}
.c4g-overviewmap span.c4g-icon:before {
  content: "O";
}


/*
 *  Portside & Starboard
 */
.c4g-starboard-container,
.c4g-portside-container {
  position: absolute;
  top: 0;
  height: 100%;
  min-width: 240px;
  max-width: 42%;
  /*background: #FFFFFF;*/
  z-index: 60;
}

/* important for browser zoom  */
.c4g-starboard-content-container,
.c4g-portside-content-container {
  min-width: 97%;
}

.c4g-control-container-top-left {
  z-index: 90;
}

.c4g-portside-wrapper {
  position: relative;
  height: 100%;
  margin: 0 0 0 48px;
  font-size: 16px;
}
.c4g-starboard-wrapper {
  position: relative;
  height: 100%;
  font-size: 16px;
  text-align: left;
}
.c4g-starboard-wrapper > div,
.c4g-portside-wrapper > div {
  margin: 0px 3px 1px 3px;
}
.c4g-portside-wrapper > .c4g-portside-titlebar,
.c4g-starboard-wrapper > .c4g-starboard-titlebar {
  margin: 0px 3px 5px 3px;
}
.c4g-starboard-titlebar,
.c4g-portside-titlebar{
  /*height: 30px;*/
  line-height: 2;
  font-size: 1.4em;
}
.c4g-starboard-statusbar,
.c4g-portside-statusbar {
  height: 18px;
  /*border-bottom: 2px solid;*/
}

/*.c4g-portside-top-toolbar,*/
/*.c4g-portside-bottom-toolbar {*/
  /*!*min-height: 30px;*!*/
  /*display: inline-flex;*/
  /*justify-content:space-around;*/
/*}*/

/*.c4g-portside-titlebar span,*/
/*.c4g-starboard-titlebar span {*/
  /*margin: 2.5px 2px;*/
/*}*/
.c4g-starboard-titlebar span,
.c4g-portside-titlebar .c4g-portside-buttonbar {
  float: right;
}

.c4g-starboard-content-container,
.c4g-portside-content-container {
  overflow-wrap: break-word;
  overflow-y: auto;
  overflow-x: hidden;
}

.c4g-portside-content-container .c4g_brick_dialog {
  padding-left: 8px;
  padding-right: 8px;
}

li.c4g-close ul {
  display: none;
}

.c4g-starboard-viewtriggerbar,
.c4g-portside-viewtriggerbar {
  display: inline-block;
}

.c4g-starboard-viewtriggerbar button,
.c4g-portside-viewtriggerbar button {
  height: 1.375em;
  width: 1.375em;
  padding: 0;
}

.c4g-starboard-control {
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, -2em);
  -moz-transform: translate(0, -2em);
  -ms-transform: translate(0, -2em);
  -o-transform: translate(0, -2em);
  transform: translate(0, -2em);
}
.c4g-starboard-control button {
  overflow: visible;
  position: relative;
  height: 4em;

  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.c4g-portside-control {
  display: block;
  position: relative;
}
.c4g-starboard-control.c4g-open button:before {
  content: ">";
}
.c4g-starboard-control.c4g-close button:before {
  content: "<";
}
button.c4g-starboard-close:before {
  content: "X";
}
button.c4g-starboard-view-trigger-baselayerswitcher:before {
  content: "B";
}
button.c4g-starboard-view-trigger-layerswitcher:before {
  content: "L";
}
button.c4g-portside-hide:before {
  content: "<";
}
button.c4g-portside-close:before {
  content: "X";
}

.c4g-starboard-bottom-toolbar .c4g-open {
  position: fixed;
  transition: all 0.5s;
}

.c4g-starboard-statusbar .c4g-open {
  position: fixed;
  transition: all 0.5s;
}

/*
 * Zoom buttons
 */

.ol-zoom-with-extent button,
.ol-zoom-with-home button,
.ol-zoom-with-position button/*,
.ol-zoom-with-favorite*/ {
  display: block;
}
button.ol-zoom-in:before {
  content: "+";
}

button.ol-zoom-out:before {
  content: "-";
}

button.ol-zoom-extent:before,
button.ol-zoom-home:before,
button.ol-zoom-position:before{
  content: "--";
}

/*
 * Draw stuff
 */
.c4g-draw-content-point button.c4g-draw-trigger,
.c4g-draw-content-freehand button.c4g-draw-trigger,
.c4g-draw-content-line button.c4g-draw-trigger,
.c4g-draw-content-polygon button.c4g-draw-trigger,
.c4g-draw-content-circle button.c4g-draw-trigger {
  width: auto;
  height: auto;
}

/*
 * Popups
 */
.c4g-popup-wrapper {
  border: 1px solid;
  border-radius: 5px;
  position: relative;
  display: none;
  z-index: 30;
  max-width: 640px;
  line-height: 1.5em;
}
.c4g-popup-wrapper.c4g-active {
  display: block;
}
.c4g-popup-wrapper .c4g-popup-close {
  position: absolute;
  right: 24px;
  top: 10px;
}
/*Todo für die Höhenberechnung muss die eigentliche Karte und nicht der Bildschirm verwendet werden.*/
.c4g-popup-wrapper .c4g-popup-content {
  padding: 30px 10px 20px;
  overflow-y: auto;
  max-height: 75vh;
  max-width: 75vw;
}

.c4g-tooltip-popup {
  z-index: 20;
}
button.c4g-popup-close:before {
  content: "X";
}

.c4g_popup_header_featurename {
  font-size: 1.4em;
}

.c4g_popup_header_featuretype {
  font-weight: bold;
  font-size: 1.2em;
}

/*
 * Editor
 */
.c4g-editor.c4g-portside-control button:before {
  content: "E";
}

button.c4g-editor-view-trigger-select:before {
  content: "S";
}
button.c4g-editor-view-trigger-draw-point:before {
  content: ".";
}
button.c4g-editor-view-trigger-draw-freehand:before {
  content: "Z";
}
button.c4g-editor-view-trigger-draw-line:before {
  content: "|";
}
button.c4g-editor-view-trigger-draw-polygon:before {
  content: "P";
}

.c4g-draw-content-point select {
  border-radius: 3px;
  box-sizing: border-box;
  font-size: inherit;
  padding: 4px;
  width: 100%;
}
/*
 *  Measuretools
 */
.c4g-measure .c4g-portside-content-container {
  max-width: 250px;
}
.c4g-measure.c4g-portside-control button:before {
  content: "M";
}
button.c4g-measuretools-view-trigger-select:before {
  content: "S";
}
button.c4g-measuretools-view-trigger-draw-line:before {
  content: "|";
}
button.c4g-measuretools-view-trigger-draw-polygon:before {
  content: "P";
}
button.c4g-measuretools-view-trigger-draw-circle:before {
  content: "C";
}

/*
 * Infobutton
 */
.c4g-infopage.c4g-portside-control button:before {
  content: "I";
}

/*
 * AdditionalPanel
 */
.c4g-additionalpanel.c4g-portside-control button:before {
  content: "A";
}

/*
 * Accountbutton
 */
.c4g-account.c4g-portside-control button:before {
  content: "A";
}

/*
 * Bottom left controls
 */
.c4g-zoom-level {
  min-width: 5em;
  padding-right: 5px;
}
.ol-scale-line {
  display: block;
  margin-left: 48px;
}
.c4g-control-container-bottom-left-sub {
  margin-left: 48px;
}
.ol-scale-line-inner {
  font-size: 10px;
  text-align: center;

  border: 1px solid;
  border-top: none;
}
.c4g-zoom-level:before {
  content: ' Zoom: ';
}
.ol-mouse-position:before {
  content: ' Lat/Lon: ';
}

/*
 * Bottom right controls
 */
.ol-full-screen button:before {
  content: "F";
}
.c4g-graticule button:before {
  content: "G";
}

/*
 * Attribution
 */
.c4g-attribution-logo img {
  margin: 0 5px;
  width: 67px;
  display: inline-block;
}
div.ol-attribution-ext-div.ol-control.ol-uncollapsible {
  bottom: inherit;
  right: inherit;
  height: auto;
  line-height: inherit;
  border-radius: 4px 0 0;
}

.ol-attribution > ul {
  text-align: left;
}
.ol-attribution {
  text-align: right;
}
.ol-attribution ul {
  padding: 0 2px;
  height:auto;
  font-size: 10px;
  line-height: 14px;
  white-space: normal;
}
.ol-attribution li {
  display: block;
  list-style: none;
  line-height: inherit;
  max-width: 214px;
}
.ol-attribution li a {
}
.ol-attribution li:not(:last-child):after {
  content: " ";
}
.ol-attribution img {
  margin-top: -.2em;
  margin-bottom: -.2em;
  max-height: 1.6em;
}
.ol-attribution.ol-collapsed ul,
.ol-attribution:not(.ol-collapsed) button:hover:after {
  display: none;
}
.ol-attribution.ol-uncollapsible {
  bottom: 0;
  right: 0;
  height: 1.1em;
  line-height: 1em;
  border-radius: 4px 0 0;
}
.ol-attribution.ol-uncollapsible button {
  display: none;
}
.ol-attribution button:before {
  content: "A";
}

/*
 * Permalink
 */
.c4g-permalink {
  float: right;
}
div.c4g-permalink-popup {
  display: block !important;
  min-width: 250px;
  overflow: hidden;
}
div.c4g-permalink-popup input[type='text'] {
  display: inline-block;
  min-width: 250px;
}
.c4g-permalink-popup.c4g-close {
  height: 0;
}
.c4g-permalink button:before {
  content: "P";
}

@media print {
    .ol-control {
    display:none}
}

/*
 * Panel
 */
.c4g-top-panel-container {
  position: absolute;
  width: 100%;
  height: auto;
  z-index: 80;
  transition: 0.5s;
  max-height: 125px;
  margin-right: 1em;
  overflow: hidden;
  padding-top: 1em;
}

.c4g-top-panel-container .c4g-close {
  top: -100px;
}

.c4g-top-panel-container .c4g-open {
  top: 0;
}

.c4g-panel-content-wrapper {
  border: 2px #0b0b0b;
  min-height: 80px;
  max-height: 125px;
  max-width: 98%;
  margin: 2px;
  display: block;
  padding: 5px 5%;
  overflow: auto;
}

.c4g-panel-main-form {
  display: inline-block;
  max-height: inherit;
}

.c4g-panel-button {
  height: 35px;
  width: 20%;
  display: inline-block;
  position: relative;
  vertical-align: middle;
  margin-top: 20px;
  border: 1px solid;
  /*color: ghostwhite;*/
}

button.c4g-panel-button {
  cursor: pointer;
}

input.c4g-panel-button {
  vertical-align: middle;
}

.c4g-panel-slidebar {
  height: 5px;
  margin: 30px 3px 3px;
}

.c4g-panel-slidebutton {
  padding: 1px;
  position: relative;
  margin: auto;
  bottom: 10px;
  cursor: pointer;
  border: 1px solid skyblue;
  height: 30px;
  vertical-align: middle;
  /*color: ghostwhite;*/
  transition: none;
}

.c4g-panel-button-wrapper {
  width: 30%;
  max-height: inherit;
  min-height: inherit;
  -webkit-border-radius:0.25em;
  -moz-border-radius:0.25em;
  border-radius:0.25em;
  border: 1px;
  margin: 2px;
  display: inline-block;
}

/*default magnific popup size*/
.mfp-iframe-holder .mfp-content {
  width: 100%;
  height: 100%;
  max-width: 95%;
  max-height: 95%;
}

@media screen and (max-width: 1280px) {
  .c4g-popup-wrapper {
    max-width: 480px;
  }
  .c4g-portside-container {
    max-width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .c4g-portside-container {
    min-width: 0;
    visibility: visible;
    left: 0;
    position: absolute;
    bottom: 0;
    z-index: 55;
    min-height: 240px;
    top: auto;
  }
  .c4g-measure .c4g-portside-content-container {
    max-width: none;
  }
  .c4g-popup-wrapper {
    max-width: 360px;
  }
}
@media screen and (max-width: 460px) {
  .c4g-attribution-logo {
    display:none;
  }
}

.c4g-baselayertree .c4g-overlay-toggle {
  margin-top: 5px;
  -webkit-appearance: none;
  width: 50%;
}
.c4g-baselayertree .c4g-overlay-toggle:focus {
  outline: none;
}
.c4g-baselayertree .c4g-overlay-toggle::-webkit-slider-runnable-track {
  width: 100%;
  height: 11px;
  cursor: pointer;
  animate: 0.2s;
}
.c4g-baselayertree .c4g-overlay-toggle::-webkit-slider-thumb {
  cursor: pointer;
  -webkit-appearance: none;
  margin-top: -5px!important;
}
.c4g-baselayertree .c4g-overlay-toggle::-moz-range-track {
  width: 100%;
  height: 11px;
  cursor: pointer;
  animate: 0.2s;
}
.c4g-baselayertree .c4g-overlay-toggle::-moz-range-thumb {
  cursor: pointer;
}
.c4g-baselayertree .c4g-overlay-toggle::-ms-track {
  width: 100%;
  height: 11px;
  cursor: pointer;
  animate: 0.2s;
}
input[type=range]::-ms-fill-lower {
  background: rgba(0,60,136,.7);
  border: 0px solid rgba(0,60,136,.7);
  border-radius: 2px;
  box-shadow: 1px 1px 1px rgba(0,60,136,.7);
}
input[type=range]::-ms-fill-upper {
  background: #103A5D;
  border: 0px solid rgba(0,60,136,.7);
  border-radius: 2px;
  box-shadow: 1px 1px 1px rgba(0,60,136,.7);
}
input[type=range]::-ms-thumb {
  margin-top: 1px;
  box-shadow: 0px 0px 0px rgba(0,60,136,.7);
  border: 1px solid rgba(0,60,136,.7);
  height: 26px;
  width: 26px;
  border-radius: 15px;
  background: rgba(0,60,136,.7);
  cursor: pointer;
}
input[type=range]:focus::-ms-fill-lower {
  background: rgba(0,60,136,.7);
}
input[type=range]:focus::-ms-fill-upper {
  background: rgba(0,60,136,.7);
}

