﻿/*
  PZS - Planinske poti - 2.1.27 20240313
*/

html, body {
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  background-color: rgba(0, 0, 0, 0.1);
  overflow: hidden;
}

.main-container {
  display: flex;
  height: 100%;
  flex-direction: row;
} 
.main-container.port {
  flex-direction: column;
}
.map-container {
  flex-basis: 100%;
  touch-action: none;
  position: relative;
}
  
.elevation {
  font-family: Roboto, Arial, Helvetica, sans-serif;
}
.elevation-header {
  padding-top: 2px;
}
.map-separate-elevation {
  width: 100%;
  overflow: hidden;
}
.separate-elevation {
  width: 100%;
  overflow: hidden;
}

.command-bar {
  flex: 0 0 36px;
  background-color: #106DBA;
  caret-color: transparent;
  border-top: 1px white solid;
  padding-top: 6px;
  padding-bottom: 6px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
}
.port .command-bar {
  flex-direction: row;
  padding-top: 0px;
  padding-bottom: 0px;
  padding-left: 8px;
  padding-right: 14px;
}
.command-bar-left {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}
.port .command-bar-left {
  flex-direction: row;
}
.command-bar-right {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
}
.port .command-bar-right {
  flex-direction: row;
}
.port .command-bar-left {
  flex-direction: row;
}

.command-bar-logo {
  margin-top: 6px;
  background-image: url('../img/pzs-poti-32.png');
  background-size: 26px 26px;
  width: 26px;
  height: 26px;
  box-shadow: 0 0 2px 2px #106DBA inset;
}
.port .command-bar-logo {
  margin-top: 0px;
  margin-right: 8px;
}
.command-bar-logo-txt {
  color: white;
  font-size: 16px; 
  font-family: Roboto, Arial, Helvetica, sans-serif;
  font-weight: bold;
  transform: rotate(-90deg);
  width: 1em;
  margin-top: 48px;
}
.port .command-bar-logo-txt {
  transform: rotate(0deg);
  width: auto;
  margin-top: 0px;
}
.command-bar-icon {
  font-size: 24px;
  color: white;
  cursor: pointer;
  padding: 2px 3px;
  margin-top: 2px;
  margin-bottom: 6px;
  border: 1px transparent solid;
  border-radius: 2px;  
}
.command-bar-icon.active {
  border: 1px white solid;
}
.port .command-bar-icon {
  margin-left: 14px;
  margin-bottom: 0px;
  display: flex;
  align-items: center:
}

.port .command-bar-icon.left {
  margin-left: 0px;
  margin-right: 14px;
}

.main-menu {
  display: flex;
  flex-direction: column;
  width: 380px;
  max-width: 100%;
  box-sizing: border-box;
  position: absolute;
  top: 0px;
  left: 0px;
  font: 10pt Roboto, Arial, Helvetica, sans-serif;
  vertical-align: top;
  height: 100%;
  line-height: 1;
  overflow: hidden;
  padding-right: 4px;
  padding-bottom: 6px;
  text-decoration: none;
  color: #4E4E4E;
  background-color: #F4F4F4;
  border-left: 1px solid #BBBBBB;
  border-top: 1px solid #BBBBBB;
  border-bottom: 1px solid #BBBBBB;
  border-radius: 4px;  
  caret-color: transparent;
  z-index: 17;
}
.port .main-menu {
  width: 100%;
}    
.main-menu-title {
  font-size: 14pt;
  font-weight: bold;
  color: #0D5997;
  margin-top: -15px;
  margin-bottom: 6px;
  margin-right: 30px;
  margin-left: 42px;
}      
.main-menu-item-list {
  font: 12pt Roboto, Arial, Helvetica, sans-serif;
  line-height: 1.5em;
  color: #4E4E4E;
  margin-top: 10px;
  margin-bottom: 10px;
}      
.main-menu-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-top: 4px;
  margin-bottom: 6px;
  padding-left: 8px;
  border: rgba(0, 0, 0, 0) 1px solid;
}
.main-menu-item:hover {
  cursor: pointer;
  background-color: rgba(0, 0, 0, 0.1);
  border: rgba(0, 0, 0, 0.15) 1px solid;
}
.main-menu-item.active {
  background-color: rgba(0, 0, 0, 0.1);
}
.ol-touch .main-menu-item:hover {
  border: rgba(0, 0, 0, 0) 1px solid;
}
.main-menu-item span {
  color: #106DBA;
  font-size: 18pt;
  margin-right: 10px;
}
.main-menu-item .icon {
  width: 3em;
  display: flex;
  justify-content: center;
  align-items: center;
}
.main-menu button {
  background: #E1E1E1;
  border-width: 1px;
  border-color: gray;
  border-radius: 3px;
  color: black;
  cursor: pointer;
  outline: none;
  padding: 2px 4px;
}

.main-menu button[disabled] {
  display: none;
}

.sidenav-container {
  flex: 0 0 320px;
  background-color: transparent;
  caret-color: transparent;
}
.sidenav-container input:focus {
  caret-color: auto;
}
.sidenav-container.wide-help {
  flex: 0 0 380px;
}
.sidenav-container.port {
  flex: 0 0 250px;
}
.sidenav-container.port.help {
  flex: 0 0 75%;
}
.sidenav-container.shrinked {
  flex: 0 0 8px;
}
.sidenav-container.port.shrinked {
  flex: 0 0 11px;
}
.sidenav-container.port.search {
  flex: 0 0 56px;
}
.sidenav-envelope {
  position: relative;
  height: 100%;
  width: 100%;
  background-color: transparent;
}
.sidenav {
  display: flex;
  flex-direction: column;
  width: 100%;
  box-sizing: border-box;
  position: absolute;
  top: 0px;
  left: 0px;
  font: 10pt Roboto, Arial, Helvetica, sans-serif;
  vertical-align: top;
  height: 100%;
  line-height: 1;
  overflow: hidden;
  padding-right: 4px;
  padding-bottom: 6px;
  text-decoration: none;
  color: #4E4E4E;
  background-color: #F4F4F4;
  border-left: 1px solid #BBBBBB;
  border-top: 1px solid #BBBBBB;
  border-bottom: 1px solid #BBBBBB;
  border-radius: 4px;  
  z-index: 17;
}      
.sidenav.mobile {
  border-left: 2px solid #BBBBBB;
  border-top: 0px;
  border-bottom: 0px;
}
.sidenav.mobile.port {
  border-left: 0px;
  border-bottom: 0px;
  border-top: 2px solid #BBBBBB;
}

.sidenav-content {
  position: relative;
  flex-basis: 100%;
  padding-left: 8px;
  padding-right: 4px;
  overflow-y: auto;
  z-index: 20;
}
.sidenav-content-line {
  display: block;
  height: 0px;
  border: 0;
  border-top: 1px solid #AAAAAA;
  margin: 0;
  padding: 0;
}
.help .sidenav-content {
  margin-top: -6px;
}
.sidenav-content a {
  text-decoration: none;
  color: blue;
}      
.sidenav-content a:hover {
  text-decoration: underline;
  color: blue;
}      
.sidenav-content a:visited {
  text-decoration: none;
  color: blue;
}
.mobile .sidenav-content {
  padding-left: 10px;
  padding-right: 12px;
}
.sidenav-content.elevation {
  width: calc(100% - 12px);
  height: calc(100% - 20px);
  padding-top: 2px;
  padding-left: 8px;
  padding-right: 6px;
}

.sidenav-close-strip-back {
  box-sizing: border-box;
  position: absolute;
  left: -8px;
  top: calc(50% - 30px);
  width: 20px;
  height: 60px;
  color: black;
  border: 2px solid #BBBBBB;
  border-radius: 10px;
  background-color: white;
  z-index: 9;
}
.sidenav-close-strip-front {
  box-sizing: border-box;
  position: absolute;
  left: -6px;
  top: calc(50% - 28px);
  width: 14px;
  height: 56px;
  border-radius: 10px;
  background-color: #F4F4F4;
  z-index: 18;
}
.shrinked .sidenav-close-strip-front {
  background-color: #FFFFAA;
}
.sidenav-close-strip-back.for-shrink {
  left: -12px;
  width: 24px;
  background-color: #F4F4F4;
}
.shrinked .sidenav-close-strip-front.for-shrink {
  background-color: #FFFFAA;
  width: 10px;
}
.sidenav-close-strip-front.for-shrink {
  left: -10px;
  width: 18px;
  background-color: #F4F4F4;
  cursor: pointer;
}
.sidenav-close-strip-line {
  box-sizing: border-box;
  position: absolute;
  left: -1px;
  top: calc(50% - 20px);
  width: 2px;
  height: 40px;
  background-color: lightgrey;
  z-index: 19;
  pointer-events: none;
}
.sidenav-close-strip-arrow {
  box-sizing: border-box;
  position: absolute;
  left: -7px;
  top: calc(50% - 10px);
  color: #106DBA;
  transform: scaleY(2.8);
  z-index: 19;
  pointer-events: none;
  font-weight: bold;
}
.sidenav-close-strip-back.port {
  top: -7px;
  left: calc(50% - 30px);
  width: 60px;
  height: 20px;
}
.sidenav-close-strip-front.port {
  top: -5px;
  left: calc(50% - 28px);
  height: 16px;
  width: 56px;
  border-radius: 10px;
}
.sidenav-close-strip-line.port {
  box-sizing: border-box;
  position: absolute;
  top: 0px;
  left: calc(50% - 20px);
  height: 2px;
  width: 40px;
}
.sidenav-title-container {
  margin-left: 8px;
  margin-right: 2px;
  margin-bottom: 6px;
}
.mobile .sidenav-title-container {
  margin-top: -14px;
}
.sidenav-title {
  font-size: 14pt;
  font-weight: bold;
  color: #0D5997;
  margin-top: 6px;
}
.sidenav-message {
  padding-left: 8px;
  padding-right: 8px;
  margin-bottom: 12px;
}

.sidenav-search {
  width: calc(100% - 10px);
  padding-left: 0px;
  padding-right: 8px;
  margin-left: 8px;
  margin-right: 2px;
  margin-bottom: 6px;
  border-radius: 2px;
}
.mobile .sidenav-search {
  width: calc(100% - 70px);
  margin-top: -30px;
  margin-left: 38px;
  margin-bottom: 4px;
  padding-right: 2px;
}

.sidenav-command-strip {
  width: calc(100% - 8px);
  padding: 4px 4px 4px 4px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.mobile .sidenav-command-strip {
  padding-top: 6px;
}
.sidenav-command-strip-left {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
}
.sidenav-command-strip-right {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
}

.goback-button {
  font-size: 15px;
  color: #106DBA;
}
.goback-button:link {
  text-decoration: none;
}      
.goback-button:visited {
  text-decoration: none;
}
.mobile .goback-button {
  font-size: 20px;
}
.goback-mobile {
  position: absolute;
  right: 10px;
  top: 8px;
  font-size: 22px;
  color: #106DBA;
  background-color: white;
  z-index: 50;
  padding-top: 2px;
  padding-left: 4px;
  padding-right: 4px;
  padding-bottom: 4px;
}

.height-toggle {
  font-size: 19px;
  color: #106DBA;
  margin-left: 10px;
  padding-top: 2px !important;
  padding-bottom: 2px !important;
}
.mobile .height-toggle {
  font-size: 23px;
}
.height-toggle:link {
  text-decoration: none;
}      
.height-toggle:visited {
  text-decoration: none;
}      

.gpx-download-button {
  font-size: 16px;
  color: #106DBA;
  margin-left: 4px;  
}
.gpx-download-button:link {
  text-decoration: none;
}      
.gpx-download-button:visited {
  text-decoration: none;
}      
.gpx-download-icon {
  transform: scaleX(1.6);
  padding-left: 4px;
  padding-right: 1px;
  z-index: 19;
}
.mobile .gpx-download-icon {
  transform: scale(1.8, 1.1);
}
.gpx-download-gpx {
  position: absolute;
  top: 9px;
  left: 14px;
  font-family: Roboto, Arial, Helvetica, sans-serif;
  font-size: 10px;
  color: #F4F4F4;
  transform: scale(0.9, 1);
  pointer-events: none;
  z-index: 20;
}
.mobile .gpx-download-gpx {
  transform: scale(0.9, 1);
}

.close-button {
  font-size: 17px;
  color: #106DBA;
}
.close-button:link {
  text-decoration: none;
}      
.close-button:visited {
  text-decoration: none;
}
.mobile .close-button {
  font-size: 23px;
}

.command-button {
  border: rgba(0, 0, 0, 0) 1px solid;
  padding: 4px 6px;
}
.command-button:hover {
  background-color: rgba(0, 0, 0, 0.1);
  cursor: default;
}      
.command-button.active {
  background-color: rgba(0, 0, 0, 0.1);
}
.command-button.active:hover {
  border: rgba(0, 0, 0, 0.2) 1px solid;
  box-sizing: content-box;
}
.mobile .sidenav-command-strip-left .command-button {
  margin-right: 8px;
}
.mobile .command-button:hover {
  background-color: transparent;
}      

.search-prompt-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 6px;
  margin-right: 4px;
}
.mobile .search-prompt-container {
  display: none;
}
.search-prompt {
  color: #747474;
  font-weight: bold;
}
.search-input-field {
  box-sizing: border-box;
  width: 100%;
  padding: 4px;
  padding-right: 26px;
  border: 1px solid rgb(200, 200, 200);
  color: rgb(78, 78, 78);
  cursor: text;
}
.search-input-field:focus {
  border: 1px solid rgba(16, 109, 186, 0.7);
  outline: none;
}
.search-input-icon {
  display: block;
  position: absolute;
  right: 4px;
  top: 3px;
  font-size: 18px;
  color: #AAAAAA;
  cursor: pointer;
}
.search-input-icon.icon-passive {
  cursor: default;
}
.search-type-selection {
  margin-left: 2px;
  margin-top: 4px;
}
.search-type {
  margin-top: 4px;
  margin-right: 8px;
}
.search-type.left {
  float: left;
}
.search-type.right {
  float: right;
}
.search-type-selection label {
  font-family: Roboto, Arial, Helvetica, sans-serif;
  font-size: 12px;
  line-height: 13px;
  margin-left: 2px;
  display: flex !important;
  padding-top: 2px;
  padding-bottom: 2px;
  padding-right: 4px;
  user-select: none;
}
.search-type-selection label:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
.search-type-selection input[type=checkbox] {
  display: none !important;
}
.search-type-selection input[type=checkbox] + label:before {
  box-sizing: border-box;
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  padding: 0px;
  margin-right: 4px;
  margin-left: 4px;
  margin-top: 1px;
  background-clip: content-box;
  border: 2px solid #aaaaaa;
  border-radius: 10%;
  text-indent: 2px;
  background-color: white;
}
.search-type-selection input[type=checkbox]:checked + label:before {
  content: "\2714";  
  font-size: 10px;
  color: white;
  background-color: #1470bb;
  border: 0px;
}

.help-control.shown > button {
  color: #106DBA;
  background-image: none;
  background-color: transparent;
  position: absolute;
  bottom: 6px;
  right: 6px; 
  font: normal normal normal 0.9em/1 FontAwesome;
}
.help-control.shown > button:focus {
  color: #106DBA;
  background-image: none;
  background-color: transparent;
}
.help-control.shown > button:hover {
  color: #106DBA;
  background-image: none;
  background-color: rgba(0, 0, 0, 0.1) !important;
}

.help-control-body {
  box-sizing: border-box;
  border: 4px solid rgb(238, 238, 238);
  border-radius: 4px;  
  padding: 8px;
  padding-bottom: 16px;
  background-color: white;
  font: 10pt Roboto, Arial, Helvetica, sans-serif;
  vertical-align: top;
  line-height: 1.5em;
  color: #4E4E4E;
}      
.help-control-list-item {
  padding-left: 2px;
  margin-top: 2px;
  margin-bottom: 2px;
  border: rgba(0, 0, 0, 0) 1px solid;
}
.help-control-list-item:hover {
  cursor: pointer;
  background-color: rgba(0, 0, 0, 0.1);
  border: rgba(0, 0, 0, 0.15) 1px solid;
}
.help-control-list-item.active {
  background-color: rgba(0, 0, 0, 0.1);
}
.ol-touch .help-control-list-item:hover {
  border: rgba(0, 0, 0, 0) 1px solid;
}

.help-content.info-content-section {
  line-height: normal;
  padding-left: 10px;
  padding-right: 6px;
  padding-top: 8px;
}
.mobile .help-content.info-content-section {
  margin-left: 0px;
  margin-right: 0px;
}
.help-closebtn {
  margin-top: 4px;
  margin-right: 2px;
}

.help-title {
  font-size: 14pt;
  font-weight: bold;
  color: #0D5997;
  margin-top: -16px;
  margin-bottom: 10px;
  margin-right: 30px;
}
.help-subtitle {
  font-size: 11pt;
  font-weight: bold;
  color: #0D5997;
  margin-bottom: 6px;
}
.help-subsection {
  margin-left: 14px;
}
.help-subsection-title {
  margin-left: 6px;
  margin-bottom: 2px;
  color: #777777;
  font-weight: bold;
}
.help-content p {
  margin-top: 0px;
}
.help-legend {
  margin-bottom: 12px;
  width: calc(100% - 8px);
  border-collapse: collapse;
}
.help-legend-img {
  width: 5%;
  vertical-align: top;
}
.help-legend-img img {
  width: 75px;
}
.help-legend-img.for-edit img {
  width: 22px;
}
.help-legend-txt {
  width: 95%;
  padding-left: 6px;
}
.help-img-left {
  float: left;
  margin-top: 4px;
  margin-right: 6px;
  border: 1px lightgray solid;
}
.help-img-center {
  display: block;
  margin-top: -4px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 12px;
  border: 1px lightgray solid;
}
.help-img-inline {
  display: inline-block;
  vertical-align: text-bottom;
  width: 16px;
  border: 1px lightgray solid;
  border-radius: 2px;  
}

.info-content-title {
  margin-top: 0px;
  margin-bottom: 5px;
  color: #747474;
  font-weight: bold;
}
.info-content-title.top-margin {
  margin-top: 12px;
}
.info-content-title.sort {
  margin-top: 12px;
  padding-bottom: 2px;
}

.sort-dropdown {
  float: right;
  overflow: visible;
  position: relative;
}
.sort-dropdown .sort-dropbtn {
  display: inline;
  color: white;
  background-color: lightgray;
  font: inherit;
  font-weight: 300;
  padding: 0px 4px 2px 4px;
  border-radius: 2px;
  cursor: default;
} 
.sort-dropdown-content {
  position: absolute;
  top: -2px;
  right: 0px;
  padding: 4px 6px;
  font-weight: normal;
  white-space: nowrap;
  background-color: #f9f9f9;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  border-radius: 2px;
  z-index: 1;
}
.sort-dropdown-content > div {
  padding: 2px 4px;
  cursor: default;
}
.sort-dropdown-content > div:hover {
  background-color: #ddd;
}
.sort-arrow {
  float: right;
  margin-right: 4px;
  margin-top: 1px;
  color: darkgray;
}

.info-content-block {
  width: 100%;
  border-collapse: collapse;
  margin-top: 2px;
  margin-bottom: 4px;
}
.info-content-block.bottom-margin {
  margin-bottom: 10px;
}
.info-content-section {
  background-color: white;
  border-radius: 2px;
  border: 1px #AAAAAA solid;
  width: inherit;
  padding: 4px;
  padding-top: 8px;
  margin-top: 2px;
}
.info-content-section.message {
  background-color: #FFFFEA;
  padding-bottom: 8px;
}

.track-info-title {
  background-color: #CFE6FC;
  padding: 6px;
  padding-left: 8px;
  font-weight: bold;
  margin-top: 8px;
}
.track-info-title:hover {
  cursor: pointer;
}
.track-info-title.hover {
  cursor: pointer;
  background-color: #F9F7B0;
}
.track-info-title.mobile {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.track-info-title.hut {
  background-color: #EEEEDD;
}
.track-info-title.hut.hover {
  background-color: #F9F7B0;
}
.track-info-title.poi {
  background-color: #D6EFD7;
}
.track-info-title.poi.hover {
  background-color: #F9F7B0;
}
.track-info-title.track-list {
  margin-top: 0px;
  margin-bottom: 6px;
  padding-left: 1.8em;
  text-indent: -1.6em;
  display: block;
  white-space: normal;
  background-color: #E1EEFD;
  font-weight: normal;
}
.track-info-title.track-list.hover {
  background-color: #F9F7B0;
}
.info-content-section .stage-name-divider {
  display: inline-block;
  margin-top: 6px;
}
.track-info-title .stage-track:hover {
  background-color: #F9F7B0;
}

.closed-section {
  background-color: #FFC8C8;
}
.closed-section-tooltip {
  background-color: #FF0000;
  color: white;
}

.track-info-subtitle {
  font-weight: bold;
  background-color: #F2F2F2;
  padding-top: 4px;
  padding-bottom: 4px;
}
.track-info-row-subtitle:hover td {
  cursor: pointer;
}
.track-info-row-subtitle.hover td {
  background-color: #F9F7B0;  
  cursor: pointer;
}
.track-info-row-subtitle.mobile {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.track-info-row-subtitle.mobile.hover {
  background-color: #F9F7B0;
}
.track-info-content0 {
  vertical-align: top;
  line-height: 1.1;
  padding-left: 8px;
}
.track-info-content0 p:first-child {
  display: inline;
}
.track-info-content0 p:last-child {
  display: inline;
}
.track-info-content1 {
  padding-right: 6px;
  vertical-align: top;
  width: 10%;
  white-space: nowrap;
  line-height: 1.1;
  padding-left: 8px;
}
.track-info-content2 {
  vertical-align: bottom;
  line-height: 1.1;
  width: 99%;
}
.track-info-content-image {
  width: 100%;
  padding-top: 6px;
  padding-left: 8px;
  padding-right: 6px;
}
.track-info-content-image.small img {
  max-width: 150px;
  max-height: 150px;
  display: block;
  margin: 0 auto;
}
.track-info-image {
  width: 100%;
  box-shadow: 0 2px 16px 0 rgba(0, 0, 0, 0.2), 0 6px 26px 0 rgba(0, 0, 0, 0.19);
}
.track-info-image.for-slide:hover {
  cursor: pointer;
}
.track-diff-perc {
  padding-top: 1px;
  padding-bottom: 1px;
  padding-left: 2px;
  padding-right: 2px;
  line-height: 1.4;
  border-radius: 2px;  
  color: white;
}
.track-diff-perc.diff1 {
  background-color: #00CC99
}
.track-diff-perc.diff2 {
  background-color: #FF5B5B
}
.track-diff-perc.diff3 {
  background-color: #676767
}
.track-diff-perc.diff4 {
  background-color: #111111
}
.track-tooltip-list {
  list-style: none;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-left: -1.3em;
}
.track-tooltip-list ul li { 
  margin-top: 0px;
  margin-bottom: 0px;
} 
.track-tooltip-list li:before { 
 content: '\002D';
 padding-right: 0.5em;
 margin-left: -0.8em;
} 

.hut-info {
  border-collapse: collapse;
}
.hut-info td {
  border-collapse: collapse;
  border: 2px white solid;
  padding-top: 2px;
  padding-bottom: 2px;
}
.hut-info-title {
  white-space: nowrap;
  font-weight: bold;
  padding-bottom: 4px !important;
  padding-right: 16px;
}
.hut-info-link {
  text-align: center;
  padding-top: 6px !important;
}
.hut-info-link a {
  text-decoration: none;
}
.hut-info-content1 {
  width: 10px;
  white-space: nowrap;
  padding-left: 2px;
  padding-right: 4px;
  vertical-align: top;
  text-align: right;
  line-height: 1.1;
}
.hut-info-content2 {
  max-width: 140px;
  vertical-align: top;
  text-align: left;
  line-height: 1.1;
  background-color: #F0F0F0;
  padding-left: 4px;
  padding-right: 4px;
}
.hut-season {
  float: left;
  padding-left: 6px;
  padding-right: 6px;
  padding-bottom: 2px;
  padding-top: 1px;
  margin-right: 2px;
  margin-bottom: 2px;
  background-color: #E2FCE7;
  border-radius: 2px;
}

.ol-scale-line {
  font-family: Verdana, Geneva, Tahoma, sans-serif;
  background: rgba(104, 140, 185, 0.8);
  position: relative;
  bottom: auto;
  left: auto;
  margin-bottom: 8px;
  margin-left: 10px;
}
.ol-zoom {
  top: auto;
  left: auto;
}
.full-screen-class button {
  font-family: FontAwesome;
}
.full-screen-class-false {
  font-family: FontAwesome;
}
.full-screen-class-true {
  font-family: FontAwesome;
}
.ol-attribution.ol-uncollapsible {
  white-space: nowrap;
  margin: 0 !important;
  max-width: none;
}
.ol-attribution.ol-uncollapsible a {
  text-decoration: none;
  color: #0078a8;
  font-weight: 400;
}
.ol-attribution.ol-uncollapsible a:hover {
  text-decoration: underline;
}
.ol-attribution > ul {
  font-family: Verdana, Geneva, Tahoma, sans-serif;
  text-decoration: none;
  font-size: 11px;
  padding-top: 0px;
}
.ol-attribution.ol-control {
  padding-top: 1px;
  padding-bottom: 3px;
}
  
.layer-switcher {
  top: auto;
  right: auto;
}
.layer-switcher .panel {
  font-family: Verdana, Geneva, Tahoma, sans-serif;
  font-size: 12px;
}
.layer-switcher ul {
  padding-left: 12px;
}
.layer-switcher.shown {
  bottom: auto;
}
.layer-switcher button {
  background-image: url('../img/layers.svg');
  background-color: rgba(0, 60, 136, 0.5);
  background-size: 1.1em 1.1em;
  background-position: 3px 3px;
  width: 1.375em;
  height: 1.375em;
}
.layer-switcher.shown button {
  font-size: 0.9em;
}
.layer-switcher button:hover {
  background-color: rgba(0, 60, 136, 0.7);
}
.layer-switcher li.group > label {
  font-weight: normal;
}
.layer-switcher-delimiter {
  border-bottom: 2px solid lightgray;
  margin-top: 6px;
  margin-bottom: 6px;
  width: 100%;
}
.layer-switcher-delimiter:hover {
  background-color: inherit !important;
}
.layer-switcher div ul li {
  text-align: left;
  max-width: 15em;
  width: 100%;
  cursor: default !important;
}
.layer-switcher div ul li label {
  width: 100%;
  text-align: left;
}
.layer-switcher div ul li input {
  color: #82C0FF;
}
.layer-switcher div ul li:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
.layer-switcher li.group {
  display: table;
}
.layer-switcher li.group label,  layer-switcher li.group input{
  display: table-cell;
}
.layer-switcher input[type=radio] {
  all: initial;
}
.layer-switcher input[type=radio] {
  display: none !important;
}
.layer-switcher input[type=radio] + label:before {
  box-sizing: border-box;
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  padding: 1.5px;
  margin-right: 4px;
  margin-left: 4px;
  background-clip: content-box;
  border: 2px solid #aaaaaa;
  border-radius: 50%;
}
.layer-switcher input[type=radio]:checked + label:before {
  background-color: #1470bb;
  border: 2px solid #1470bb;
}
.layer-switcher input[type=checkbox] {
  all: initial;
}
.layer-switcher input[type=checkbox] {
  display: none !important;
}
.layer-switcher input[type=checkbox] + label:before {
  box-sizing: border-box;
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  padding: 0px;
  margin-right: 4px;
  margin-left: 4px;
  background-clip: content-box;
  border: 2px solid #aaaaaa;
  border-radius: 10%;
  text-indent: 2px;
} 
.layer-switcher input[type=checkbox]:checked + label:before {
  content: "\2714";  
  font-size: 10px;
  color: white;
  background-color: #1470bb;
  border: 0px;
}
.layer-switcher label {
  border-collapse: collapse;
  display: flex !important;
  font-family: Verdana, Geneva, Tahoma, sans-serif;
  font-size: 12px;
  line-height: 12px;
  margin-top: 4px;
  margin-bottom: 4px;
}
.ol-touch .layer-switcher label {
  margin-top: 7px;
  margin-bottom: 7px;
  font-size: 14px;
  line-height: 14px;
}
.ol-touch .layer-switcher input[type=radio] + label:before {
  width: 14px;
  height: 14px;
  margin-right: 8px;
}
.ol-touch .layer-switcher input[type=checkbox] + label:before {
  width: 14px;
  height: 14px;
  margin-right: 8px;
}
.ol-touch .layer-switcher input[type=checkbox]:checked + label:before {
  font-size: 11px;
}
.track-select-color {
  display: inline;
  width: 1em;
  height: 0.8em;
  margin-top: 1px;
  margin-left: 2px;
  margin-right: 4px;
  border-radius: 2px;
  opacity: 0.8;
}
.ol-touch .track-select-color {
  margin-right: 8px;
  margin-right: 8px;
}
.layer-switcher-unselectable {
  color: gray !important;
}
.layer-switcher-unselectable::before {
  background-color: lightgray !important;
}

.locate-active-no-move {
  color: #FBBF0B !important; 
}
.locate-active {
  animation: locate-animation 2s infinite;
}
@keyframes locate-animation {
  0%   {color: #FBBF0B;}
  50%  {color: yellow;}
  100% {color: #FBBF0B;}
}
.position-display, .position-display-wide {
  position: relative;
  font-family: Verdana, Geneva, Tahoma, sans-serif;
  font-size: 11px;
  height: 28px;
  padding-top: 3px;
  padding-left: 6px;
  background-color: rgba(255, 255, 255, 0.9);
  border: 2px solid #BBBBBB;
}
.position-display:hover, .position-display-wide:hover {
  background-color: rgba(255, 255, 255, 0.9);
}
.position-display-wide {
  padding-right: 24px;
}
.position-coords {
  margin-right: 6px;
}
.position-height {
  margin-right: 6px;
}
.position-copy, .position-copy-big {
  position: absolute;
  top: 0;
  right: 0;
  width: 14px;
  padding: 2px;
  cursor: pointer;
}
.position-copy-big {
  width: 24px;
  padding-top: 5px;
}
.position-copy-animate {
  animation: position-copy-animation 0.5s;
}
@keyframes position-copy-animation {
  50% { transform: scale(1.3, 1.3); }
  100% { transform: scale(1, 1); }
}
.position-marker {
  margin: auto;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 1000;
  pointer-events: none;
  image-rendering: optimizeSpeed;
  image-rendering: -moz-crisp-edges;
  image-rendering: -o-crisp-edges;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: pixelated;
  image-rendering: optimize-contrast;
}

.ol-control {
  position: relative;
  pointer-events: visiblePainted;
  pointer-events: auto;
}
.ol-control button:hover {
  cursor: pointer;
}
.ol-control button:focus {
  outline-style: none;
  box-shadow: none;
  border-color: transparent;
}
.ol-control button, .ol-control button:focus {
  background-color: rgba(0, 60, 136, 0.65);
}
.ol-control button:hover {
  background-color: rgba(0, 60, 136, 0.9);
}
.ol-control button:disabled {
  background-color: rgba(0, 60, 136, 0.3);
  cursor: default;
}
.ol-touch .ol-control button {
  font-size: 1.4em;
}
.ol-touch .ol-control button:hover {
  background-color: rgba(0, 60, 136, 0.65);
}
.ol-control.ol-bar .ol-toggle.ol-active > button {
  background: rgba(60, 136, 0, 0.9);
}
.ol-control.shown {
  background-color: transparent; 
}
.ol-control.ol-bar.ol-top.ol-left {
  top: 8em;
}

.layer-switcher.shown.activationModeClick > button {
  height: 1.25em;
  width: 1.25em;
  margin-top: 6px;
  margin-right: 6px;    
  background-image: none;
  background-color: transparent;
  color: #106DBA;
}
.layer-switcher.shown.activationModeClick > button:focus {
  background-color: transparent;
}      
.layer-switcher.shown.activationModeClick > button:hover {
  background-color: rgba(0, 0, 0, 0.1);
}      

.ctrl-top,
.ctrl-bottom {
 	position: absolute;
  pointer-events: none;
}
.ctrl-top {
	top: 0;
	}
.ctrl-right {
	right: 0;
	}
.ctrl-bottom {
	bottom: 0;
	}
.ctrl-left {
	left: 0;
	}
.ol-control {
	clear: both;
	}
.ctrl-right .ol-control {
  float: right;
	margin-left: auto;
	}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .ctrl-right .ol-control {
    margin-left: inherit;
  }  
}	
.ctrl-top .ol-control {
	margin-top: 8px;
	}
.ctrl-bottom .ol-control {
	margin-bottom: 8px;
	}
.ctrl-left .ol-control {
	margin-left: 10px;
	}
.ctrl-right .ol-control {
	margin-right: 10px;
	} 
.flex-right {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end;
}  
.flex-left-vert {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}  
.flex-left-horiz {
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-end;
}  
.ctrl-bottom.ctrl-right {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  align-content: flex-start;
  flex-direction: column;
  flex-wrap: wrap-reverse;
  height: calc(100% - 160px);
} 

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .ctrl-right .ol-control {
    margin-left: inherit;
  }  
}	
.ctrl-attrib-offset {
  bottom: 15px; 
}

.tooltip {
  font: 12px/14px Roboto, Arial, Helvetica, sans-serif;
  background: white;
  color: black;
  padding: 4px 8px;
  border-width: 1px;
  border-style: solid;
  border-radius: 4px;
  border-color: gray;  
	box-shadow: 0 1px 3px 2px rgba(100, 100, 100, 0.3);
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	z-index: 20;
	max-width: 400px;
}
.tooltip-arrow,
.tooltip-arrow::before {
  position: absolute;
  width: 10px;
  height: 10px;
  z-index: -1;
  pointer-events: none;  
}
.tooltip-arrow::before {
  content: '';
  transform: rotate(45deg);
  background: white;
  border-width: 1px;
  border-style: solid;
  border-color: gray;  
}
.tooltip-arrow-bottom {
  left: 50%;
  bottom: -3.5px;
}
.tooltip-arrow-top {
  left: 50%;
  top: -3.5px;
}
.tooltip-close {
  position: absolute;
  top: 4px;
  right: 4px;
  padding: 2px;
  padding-top: 0px;
  font-size: 1.4em;
  color: #106DBA;
  cursor: pointer;
  pointer-events: auto;
}
.tooltip-close:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
.mobile .tooltip-close {
  font-size: 1.8em;
}
.popup {}
.tooltip.popup {
	pointer-events: auto;
}
    
.pzs-logo {
  padding-top: 3px;
  padding-bottom: 0px;
  padding-left: 3px;
  padding-right: 3px;
  text-align: center;
  background-color: rgba(245, 245, 245, 0.9) !important;
  font: 14px/16px Roboto, Arial, Helvetica, sans-serif;
  border-radius: 2px;
}
.pzs-logo:hover {
  background-color: rgba(255, 255, 255, 1) !important;
}
.pzs-logo a:link, .pzs-logo a:visited {
  text-decoration: none;
  color: black; 
}
.spp-logo {
  padding: 2px 4px;
  padding-bottom: 0px;
  text-align: center;
  font: 14px/16px Roboto, Arial, Helvetica, sans-serif;
  background-color: rgba(255,255,255,0.95);
  border-radius: 5px;
  box-shadow: 0 0 15px rgba(0,0,0,0.2);
}
.spp-logo:hover {
  background-color: rgba(255,255,255,1);
}
.spp-logo a:link, .stkp-logo a:visited {
  text-decoration: none;
  color: black; 
}
.spp-logo img
{
  width: 50px;
}  

.stkp-logo {
  padding: 2px 4px;
  text-align: center;
  font: 14px/16px Roboto, Arial, Helvetica, sans-serif;
  background-color: rgba(255,255,255,0.98);
  border-radius: 5px;
  box-shadow: 0 0 15px rgba(0,0,0,0.2);
}
.stkp-logo:hover {
  background-color: rgba(255,255,255,0.98);
}
.stkp-logo a:link, .stkp-logo a:visited {
  text-decoration: none;
  color: black; 
}

.break-all {
  word-break: break-all;
}
.no-click {
  pointer-events: none;  
}
.no-mouse {
  pointer-events: none;  
}
.force-white-back {
  background-color: white !important;
}
.cursor-style-move {
  cursor: move !important;
}

.slideshow-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  display: none;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.7);
  font-family: Roboto, Arial, Helvetica, sans-serif;
  color: white;
  text-shadow: 1px 1px 0px #555555, 2px 2px 4px #000000, -1px -1px 3px #000000;
  z-index: 1000;
}
.slideshow-content {
  align-self: center;
}
.slideshow-close {
  position: absolute;
  top: 0px;
  font-size: 30px;
  line-height: 26px;
  padding-left: 3px;
  padding-right: 3px;
  font-weight: bold;
}
.slideshow-close:hover,
.slideshow-close:focus {
  text-decoration: none;
  cursor: pointer;
  background-color: rgba(0,0,0,0.4);
}
.slideshow-slides {
  width: 85vw;
  height: 85vh;
  max-width: 1000px;
}
.slideshow-slides img {
  margin: auto;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  width: auto;
  max-width: 85%;
  max-height: 85%;
  box-sizing: border-box; 
  border: 1px solid #888;
  -webkit-animation-name: slide-fade;
  -webkit-animation-duration: 1.5s;
  animation-name: slide-fade;
  animation-duration: 1.5s;
}
@-webkit-keyframes slide-fade {
  from {opacity: .4} 
  to {opacity: 1}
}  
@keyframes slide-fade {
  from {opacity: .4} 
  to {opacity: 1}
}  
.slide-prev, .slide-next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  padding: 8px;
  margin-top: -22px;
  font-weight: bold;
  font-size: 28px;
  background-color: rgba(0,0,0,0.2);
  user-select: none;
} 
.slide-prev {
  left: 30px;
  padding-left: 6px;
  border-radius: 3px 0 0 3px;
}
.slide-next {
  right: 30px;
  padding-left: 8px;
  padding-right: 6px;
  border-radius: 0 3px 3px 0;
} 
.slide-prev:hover, .slide-next:hover {
  background-color: rgba(0,0,0,0.4);
} 
.slide-number {
  position: absolute;
  font-size: 14px;
  padding: 4px 6px;
} 

.keyb-key {
  display: inline;
  font-size: 0.9em;
 }
.keyb-key span {
  display: inline;
  border: 1px solid #aaa;
  border-radius: 0.2em;
  box-shadow: 0.1em 0.1em 0.2em rgba(0,0,0,0.1);
  background-color: #f9f9f9;
  background-image: linear-gradient(to bottom, #eee, #f9f9f9, #eee);
  color: #000;
  padding: 0.08em 0.2em;
 }

.link:visited {
  color: blue;
}

.intro-dialog {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10pt;
}

.intro-dialog::backdrop {
  background-color: #0005;
}

.intro-dialog {
  width: 350px;
  border: 2px solid #106DBA;
  border-radius: .5rem;
  background: #F4F4F4;
  color: black;
  box-shadow: 0 0 1rem 0 #0008;
  overflow: hidden;
  padding: 0;
}

.intro-dialog:not([open]) {
  display: none;
}

.intro-dialog .logo {
  display: block;
  margin-top: 2em;
  margin-left: auto;
  margin-right: auto;
  background-image: url('../img/pzs-poti-128.png');
  background-size: 128px 128px;
  width: 128px;
  height: 128px;
  box-shadow: 0 0 2px 2px #F4F4F4 inset;
}

.intro-dialog h1, .intro-dialog h2 {
  text-align: center;
  margin: 1rem;
  font-size: 1rem;
}

.intro-dialog h2 {
  font-weight: normal;
  font-size: .8rem;
  margin: 2rem;
}

.intro-dialog p {
  margin: 1rem 2rem;
}

.intro-dialog .actions {
  margin: 0 1rem 1.5rem 1rem;
  text-align: center;
}

.intro-dialog button {
  background: #E1E1E1;
  border-width: 1px;
  border-color: gray;
  border-radius: 3px;
  color: black;
  cursor: pointer;
  outline: none;
  padding: 2px 4px;
}

.intro-dialog button[disabled] {
  display: none;
}

.intro-dialog input[type=checkbox], input[type=checkbox] {
  outline: none;
}
