/*!
 * CC Layers stylesheet
 * 
 * By Roefja B.V.
 * Email: info@roefja.com
 * Website: roefja.com
 * 
 */

:root {
  --cc-bg-color: #00123c;
  --cc-input-bg-color: none;
  --cc-font-color: #fafafa;
  --cc-font: "TeX Gyre Adventor";
  --cc-grey-color: #1a2c56;
  --cc-grey2-color: #55595c;
  --cc-grey3-color: #1a2c56;
  --cc-success-color: #28a745;
  --cc-warning-color: #f2a40e;
  --cc-danger-color: #eb091e;
  --cc-blue-color: #00baff;
  --cc-blue2-color: #1c7cd5;
  --cc-primary-color: #1c7cd5;
  --cc-archive-color: #acacac;
  --cc-secondary-color: #ff2ec8;
  --cc-yellow-color: #eaea1f;
  --cc-focus-color: #8400ff;
  --cc-purple-color: #8400ff;
  --cc-pink-color: #ff2ec8;
  --cc-hover-color: #5897fb;
  --margin-gap: 10px;
  --negative-gap: calc(var(--margin-gap) * -1);
  --border-radius: 10px;
  --border-radius-input: 4px;
  --field-padding: 0.375rem 0.75rem;
}

@font-face {
  font-family: "TeX Gyre Adventor";
  src: url("../webfonts/texgyreadventor-regular.otf") format("opentype");
  font-style: normal;
}

@font-face {
  font-family: "TeX Gyre Adventor";
  src: url("../webfonts/texgyreadventor-italic.otf") format("opentype");
  font-style: italic;
}

@font-face {
  font-family: "TeX Gyre Adventor";
  src: url("../webfonts/texgyreadventor-bold.otf") format("opentype");
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: "TeX Gyre Adventor";
  src: url("../webfonts/texgyreadventor-bolditalic.otf") format("opentype");
  font-weight: bold;
  font-style: italic;
}

@font-face {
  font-family: "SF Mono";
  src: url("../webfonts/SF-Mono-Regular.otf") format("opentype");
  font-style: normal;
}

/*!
 * Font Awesome Pro 6.1.1 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 * Copyright 2022 Fonticons, Inc.
 */
@font-face {
  font-family: "Font Awesome 5 Brands";
  font-display: block;
  font-weight: 400;
  src: url(../webfonts/fa-brands-400.woff2) format("woff2"), url(../webfonts/fa-brands-400.ttf) format("truetype")
}

@font-face {
  font-family: "Font Awesome 5 Pro";
  font-display: block;
  font-weight: 900;
  src: url(../webfonts/fa-solid-900.woff2) format("woff2"), url(../webfonts/fa-solid-900.ttf) format("truetype")
}

@font-face {
  font-family: "Font Awesome 5 Pro";
  font-display: block;
  font-weight: 400;
  src: url(../webfonts/fa-regular-400.woff2) format("woff2"), url(../webfonts/fa-regular-400.ttf) format("truetype")
}

@font-face {
  font-family: "Font Awesome 5 Pro";
  font-display: block;
  font-weight: 300;
  src: url(../webfonts/fa-light-300.woff2) format("woff2"), url(../webfonts/fa-light-300.ttf) format("truetype")
}

@font-face {
  font-family: "Font Awesome 5 Duotone";
  font-display: block;
  font-weight: 900;
  src: url(../webfonts/fa-duotone-900.woff2) format("woff2"), url(../webfonts/fa-duotone-900.ttf) format("truetype")
}

html,
body {
  background-color: var(--cc-bg-color);
  color: var(--cc-font-color);
  font-family: var(--cc-font);
  white-space: pre-wrap;
}


footer .copyright {
  font-size: 0.8em;
}

.form-control,
.form-control:focus {
  background-color: var(--cc-input-bg-color);
  color: var(--cc-font-color);
}

.form-floating>.form-control:focus,
.form-floating>.form-control:not(:placeholder-shown) {
  padding-top: 2rem;
}

/*
	TOP BAR
*/

header.topbar {
  position: fixed;
  width: 100%;
  top: 0;
  background-color: var(--cc-bg-color);
  z-index: 99;
  max-height: 60px;
}

.topbar_wrapper {
  display: flex;
  justify-content: center;
  background-color: var(--cc-bg-color);
  padding: 0 15px;
  border-bottom: var(--cc-grey-color) 4px solid;
  flex-wrap: wrap;
  align-items: center;
  height: 60px;
  position: relative;
  padding: 0 220px;
}

.topbar .title {
  text-transform: uppercase;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  flex-grow: 1;

}

.topbar .branding {
  display: flex;
  position: absolute;
  padding: 0 10px;
  left: 0;
}

.topbar .branding img {
  max-width: 200px;
  max-height: 100%;
}



div.page {
  min-height: calc(100vh - 60px);
  display: flex;
  position: relative;
  margin-top: 60px;
}


/*
  MAP STYLING

*/


#map {
  min-height: 100%;
  flex-grow: 1;
  z-index: 0;
}


main {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

main .search-bar {
  margin-left: 300px;
}

main>#main-content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.map-view #main-content {
  position: relative;
}


.map_buttons {
  position: absolute;
  bottom: 10px;
  right: 10px;
  z-index: 1
}

.map_buttons>div {
  display: inline-block
}

.map_buttons>i,
.map_buttons>div {
  background-color: var(--cc-bg-color);
  padding: 5px;
  font-size: 1.2em;
  cursor: pointer;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
}

.map_buttons>div {
  padding-top: 0;
  padding-bottom: 0;
  position: relative;
}

.map_buttons i:hover {
  opacity: .9;
}


.map_buttons>i:not(:first-child),
.map_buttons>div {
  margin-left: 5px;

}

.map_buttons>div .maps {
  position: absolute;
  bottom: 27px;
  width: 200px;
  right: 0;
  display: flex;
  flex-direction: column;
  background-color: var(--cc-bg-color);
  padding: 10px;
  font-size: .8em;
}

.map_buttons>div .maps .map:hover {
  opacity: .5;
}

.map_buttons>div:not(:hover)>div {
  display: none;
}

.map_buttons>div .maps span:not(:last-child) {
  margin-bottom: 10px;
}

.map_buttons>div .maps span.active {
  color: var(--cc-blue-color)
}

.search-bar {
  position: absolute;
  top: 7.5px;
  right: 10px;
  left: 10px;
  width: calc(100% - 320px);
  background-color: var(--cc-bg-color);
  color: white;
  padding: 10px;
  border: 1px solid #55A3E8;
  border-radius: 3px;

}

.search-bar::placeholder {
  color: white;
  opacity: 1;
}

.search-bar::-ms-input-placeholder {
  color: white;
}

input.search-bar:focus {
  outline: none;
}

.marker-info {
  position: absolute;
  top: 60px;
  right: 10px;
  z-index: 1;
  background-color: var(--cc-bg-color);
  border-radius: 5px;
  padding: 20px;
  width: 300px;
}

.marker-info:not(.show) {
  display: none;
}

.marker-info .switcher {
  color: white;
  margin-left: auto;
  margin-top: auto;
  margin-bottom: auto;
  border: 1px solid var(--cc-blue-color);
  padding: 5px;
  border-radius: 5px;
  cursor: pointer;
}

div.marker-info_head {
  display: flex;
}

div.marker-info-title {
  margin-top: auto;
  margin-bottom: auto;
}

.marker-info-content {
  padding: 20px 0;
}

.marker-info-content table {
  width: 100%;
}

.marker-info-content tr>td:first-child {
  color: var(--cc-blue-color)
}

.marker-info-content td.value {
  padding-left: 10px;
}

.marker-info:not(.show-content) .marker-info-content {
  display: none;
}

.marker-info .switcher::before {
  content: "\f0d8";
}

.marker-info:not(.show-content) .switcher::before {
  content: "\f0d7";
}


.marker-info .marker-icon.cc-marker .point-marker svg {
  position: relative;
  top: auto;
  left: 0;
  bottom: 50px;
}

.marker-info .marker-icon.cc-marker {
  margin-right: 0px;
  transform: scale(50%);
}

.marker-info .cc-marker .point-marker .label {
  top: -16.5px;
  left: 14px;
}

.marker-info .marker-icon.cc-marker {
  height: 20px;
  margin-left: -20px;
  margin-top: 8px;
}

.marker-info .cc-marker>* {
  height: 100%;
}

.marker-info .form-group.edit-group {
  max-width: 100%;
}

form.marker-info {
  min-width: 500px;
}



.marker-info .cc-marker .point-marker .label {
  top: -16.5px;
  left: 14px;
}



/*
  SIDEBAR 
*/


#sidebar {
  background-color: #1A2C56;
  width: 300px;
  display: flex;
  flex-direction: column;
  padding: 20px;
  max-height: calc(100vh - 60px);
  overflow-y: auto;

  position: fixed;
  top: 60px;
  bottom: 0;
  left: 0;

  z-index: 1;
}

#sidebar,
#sidebar>div {
  display: flex;
  flex-direction: column;
}

#sidebar .childs,
#sidebar>div {
  row-gap: 15px;
}

#sidebar>div.buttons {
  flex-direction: row;
  column-gap: 20px;
}

#sidebar>div.buttons i {
  cursor: pointer;
}


#sidebar div:not(.buttons)>* i {
  font-size: 1.4em;
  width: 30px;
  text-align: center;
}


#sidebar div:not(.buttons)>* i.toggle,
#sidebar div:not(.buttons)>* i.single {
  font-size: 14px;
  width: 20px;
}



#sidebar .childs {
  padding: 10px 15px;
}


#sidebar div>* i:first-child {
  margin-right: 10px;
}


#sidebar>div:not(.buttons)>* {
  color: white;
  text-decoration: none;
  display: flex;
}

#sidebar>div:not(.buttons)>a {
  flex-direction: column;
}

#sidebar>div:not(:first-child) {
  border-top: 1px solid #F8F9FA;
  padding-top: 20px;
  margin-top: 20px;
}

#sidebar div>a>*,
.sidebar-item-layer .item>* {
  margin-top: auto;
  margin-bottom: auto;
  display: block;
}


#sidebar span.trigger:hover,
#sidebar a:hover,
#sidebar a.active {
  color: var(--cc-blue-color)
}

.sidebar-item-layer .item {
  display: flex;
}

.sidebar-item-layer {
  cursor: pointer;
}


.sidebar-item-layer {
  flex-direction: column;
}

.sidebar-item-layer .toggle {
  margin-left: auto;
  font-family: "Font Awesome 6 Duotone";
  font-weight: 900;
  position: relative;
  font-style: normal;
}

.sidebar-item-layer:not(.active) .toggle:before {
  position: absolute;
  color: var(--fa-primary-color, inherit);
  opacity: var(--fa-primary-opacity, 1);
}

.sidebar-item-layer:not(.active) .toggle::after {
  content: "\f06e";
  opacity: var(--fa-secondary-opacity, .4);
  color: var(--fa-secondary-color, inherit);
  font-family: "Font Awesome 6 Pro";
  font-weight: 300;
}


.sidebar-item-layer.active .toggle {
  font-family: "Font Awesome 6 Pro";
  font-weight: 500;
}

.sidebar-item-layer .toggle:before {
  content: "\f070";
}

.sidebar-item-layer.active .toggle:before {
  content: "\f06e";
}

#sidebar div .childs,
.sidebar-item-layer .markers {
  display: flex;
  flex-direction: column;
  background-color: var(--cc-bg-color);
  margin: 5px -20px 10px;
}

.sidebar-item-layer .markers {
  padding: 5px 0;
}

#sidebar .item-parent {
  display: flex;
  flex-direction: column;
  padding-bottom: 10px;
}

#sidebar .item-parent .main {
  cursor: pointer;
}

#sidebar .item-parent .main:hover {}

#sidebar .item-parent .childs:not(.show) {
  display: none;
}

#sidebar .item-parent .childs {
  margin-top: 10px;
}


.sidebar-item-layer .markers .marker {
  display: flex;
  padding: 5px 20px;
  font-size: .8em;
}

.sidebar-item-layer .markers .marker:not(:first-child) {
  margin-top: 5px;
}

.sidebar-item-layer .markers .marker_name,
.sidebar-item-layer .markers .marker_coordinate {
  text-overflow: '';
  overflow: hidden;
  white-space: nowrap;
}

.sidebar-item-layer .markers .marker_name {
  max-width: 75px;
  min-width: 75px;
}


.sidebar-item-layer .markers .marker_coordinate {
  max-width: 50px;
  min-width: 50px;
}


.sidebar-item-layer .markers .marker_description {
  flex-grow: 1;
}


.sidebar-item-layer .markers:not(.show),
.sidebar-item-layer:not(.active) .markers,
.sidebar-item-layer .markers .marker.no-match {
  display: none;
}

.sidebar-item-layer .marker_owner {
  display: none;
}


#sidebar .preview-container .point-marker,
#sidebar .preview-container .circle-marker,
#sidebar .preview-container .diamond-marker {
  position: relative;
}

#sidebar .preview-container {
  display: inline-block;
  text-align: center;
}

#sidebar .preview-container,
#sidebar .preview-container * {
  flex: 0;
}


#sidebar .preview-container .point-marker .label {
  position: absolute;
  top: 60px;
  left: 0;
  right: 0;
  margin: 0 auto;
  padding-left: 0px;
  width: 50px;
  text-align: center;
}

#sidebar .preview-container .label-marker {
  margin-top: -30px;
}

#sidebar .preview-container .label-marker .wrapper {
  border: 1px solid black;
  max-width: 200px;
  position: relative;
  height: 45px;
  margin-left: auto;
  margin-right: auto;
  border-radius: var(--border-radius);
  display: flex;
  flex-direction: column;

  overflow-y: hidden;
}


#sidebar .preview-container .label-marker .wrapper .text {
  margin: auto;
  padding-left: 5px;
  padding-right: 5px;
  max-width: 200px;

}

#sidebar .preview {
  display: block;
  text-align: center;
}

#sidebar .preview-container .label-marker .pointer {
  display: none
}

#sidebar .preview>span {
  color: var(--cc-blue-color);
}

#sidebar .preview-container .diamond-marker .label {
  position: absolute;
  top: 50px;
  left: 0;
  right: 0;
  margin: 0 auto;
  padding-left: 5px;
  width: 50px;
  text-align: center;
}

#sidebar .preview-container .diamond-icon-marker i {
  margin-right: auto;
  margin-left: auto;
}

#sidebar .preview-container .diamond-icon-marker .label {
  display: flex;
  flex-direction: column;
}

#sidebar .preview-container .diamond-icon-marker .label {
  top: 45px;
  font-size: 14px;
}

.dropdown-menu {
  padding: 10px;
  background: var(--cc-bg-color);
  color: #fff;
}


.dropdown-menu>li {
  cursor: pointer;
}

.dropdown-menu>li:not(:last-child) {
  margin-bottom: 10px;
}

.dropdown-menu>li:hover {
  color: var(--cc-blue-color)
}

#sidebar .dropdown-toggle::after {
  display: none;
  content: unset
}

#sidebar .preview-container .circle-marker {
  margin-top: -20px;
}

#sidebar .preview-container .circle-marker .label {
  position: absolute;
  top: 60px;
  left: 0;
  right: 0;
  margin: 0 auto;
  padding-left: 0px;
  width: 50px;
  text-align: center;
}




.export_option {
  display: flex;
  justify-content: space-between;
  padding: 0 10px;

}

.export_option,
.export_option:hover {
  color: white;
  text-decoration: none;
}


/*
  SERVICE BLOCK
*/
.service-block {
  border: 2px solid var(--cc-grey-color);
  max-width: 400px;
  width: 100%;
  border-radius: 15px;
  padding: 20px;
  color: white;
  display: flex;
  text-decoration: none;
  margin: 10px;
}

.service-block:hover {
  color: white;
  background-color: var(--cc-grey-color);
}

.service-block i {
  font-size: 3em;
}

body.service #main-content {
  display: flex;
  padding: 20px;
  flex-direction: row;
  flex: 0
}


.service-block_content {
  padding-left: 20px;
  padding-right: 20px;
  margin-top: auto;
  margin-bottom: auto;
}


.service-block_content .title {
  font-weight: bold;
}





/*
  Forms
*/

.form-control {
  border-color: var(--cc-blue-color);
}

.form-group.edit-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

.form-group.vertical-group {
  display: inline-flex;
  flex-direction: column;
}

.edit-group .form-control {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
}

.input-group-text {
  background: none;
  justify-content: flex-end;
  color: var(--cc-blue-color);
  border: none;
}

.form-group.form-type-select {
  flex-wrap: nowrap !important;
}

.edit-group .form-check-input {
  height: 1.5em;
  width: 2.8em;
  border: none;
}

.form-type-switch .input-group-text {
  justify-content: flex-start;
  color: white;
}

.form-type-switch label {
  display: flex;
}

.form-type-switch label i {
  margin: auto 10px auto 0;
}

.form-type-switch .form-switch {
  display: flex;
  justify-content: flex-end;
  margin-top: auto;
  margin-bottom: auto;
}

.form-switch .form-check-input {
  cursor: pointer;
  background-color: #98999b;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='4' fill='rgba%28255, 255, 255, 1%29'/%3e%3c/svg%3e");
}

.form-switch .form-check-input:checked {
  background-color: var(--cc-primary-color);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='4' fill='rgba%28255, 255, 255, 1%29'/%3e%3c/svg%3e");
}

.form-type-datetimepicker .input-group-text {
  align-items: start;
}

.form-type-textarea .input-group-text {
  justify-content: flex-start;
}

.form-type-textarea textarea {
  min-height: 150px;
}

input[type="submit"] {
  margin-top: 15px;
  margin-left: auto;
  display: block;
  background-color: var(--cc-blue2-color);
}

input[type="submit"],
input[type="submit"]:hover {
  color: white;
}

form.inline .buttons {
  margin-top: 40px;
  justify-content: center;
}

form.inline .buttons button {
  margin: 5px;
}

/*
  Select 2
*/


.select2-container--default .select2-selection--single {
  background: var(--cc-grey-color);
  border-color: var(--cc-blue-color);
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: white;
}

.select2-dropdown {
  background-color: var(--cc-bg-color);
}

.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: var(--cc-blue-color);
}

.select2-container--default .select2-results__option--selected {
  background: inherit;
}

.select2-container .select2-selection--single {
  height: 38px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow,
.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 36px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 36px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #fff transparent transparent transparent;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #fff transparent;
}


.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--default .select2-selection--multiple {
  background-color: var(--cc-bg-color);
  border-color: var(--cc-blue-color);
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover,
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus,
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove,
.select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: var(--cc-grey3-color);
  color: #fff;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
  border-color: var(--cc-blue-color);
  padding: 5px 10px;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
  padding-left: 20px;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover,
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus,
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  border: none;
  font-size: 1.5em;
  line-height: 1em;
  left: 5px;
}

.select2-container .select2-selection--multiple {
  min-height: 48px;
}


/*

Disable selecting

*/

i,
#sidebar,
.topbar_wrapper {
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}





/*
  Markers
*/


.cc-marker {
  position: relative;
}


.cc-marker .circle-marker {
  position: relative;
  margin-left: -18px;
  margin-top: -50px;
}


.cc-marker .circle-marker .label {
  top: 43px;
  width: 50px;
}

.cc-marker .point-marker svg {
  position: absolute;
  bottom: 4px;
  left: -20px;
}


.cc-marker .label {
  position: absolute;
  z-index: 300;
  font-size: 18px;
  text-align: center;
  text-overflow: '';
  overflow: hidden;
  white-space: nowrap;
}

.cc-marker .point-marker .label {
  top: -44.5px;
  width: 40px;
  left: -15px;
  font-size: 18px;
}

.cc-marker .diamond-marker svg {
  position: absolute;
  bottom: 4px;
  left: -34.5px;
}

.cc-marker .diamond-marker .label {
  top: -48.5px;
  width: 40px;
  left: -15px;
  font-size: 18px;
}

.cc-marker .diamond-icon-marker .label {
  display: flex;
  flex-direction: column;
}

#map[data-iconsize=medium] .cc-marker .point-marker {
  transform: scale(75%);
}

#map[data-iconsize=medium] .cc-marker .point-marker .label {
  top: -55px;
}

#map[data-iconsize=medium] .cc-marker .point-marker svg {
  bottom: 53px
}

#map[data-iconsize=small] .cc-marker .point-marker {
  transform: scale(50%);
}

#map[data-iconsize=small] .cc-marker .point-marker .label {
  top: -71px;
}

#map[data-iconsize=small] .cc-marker .point-marker svg {
  bottom: 70px
}

#map[data-iconsize=medium] .cc-marker .diamond-marker {
  transform: scale(75%);
}


#map[data-iconsize=small] .cc-marker .diamond-marker {
  transform: scale(50%);
}


#map[data-iconsize=medium] .cc-marker .diamond-marker svg {
  bottom: 53px
}

#map[data-iconsize=medium] .cc-marker .diamond-marker .label {
  top: -53px;
}

#map[data-iconsize=small] .cc-marker .diamond-marker svg {
  bottom: 70px
}

#map[data-iconsize=small] .cc-marker .diamond-marker .label {
  top: -72px;
}

#map .cc-marker .diamond-icon-marker .label {
  font-size: 18px;
}


#map .cc-marker .diamond-icon-marker .label {
  top: -53px;
}

#map[data-iconsize=medium] .cc-marker .diamond-icon-marker .label {
  top: -60px;
}

#map[data-iconsize=small] .cc-marker .diamond-icon-marker .label {
  top: -79px;
}

.cc-marker.no-match,
#map .cc-marker-line.no-match,
#map .cc-marker-area.no-match {
  opacity: .4;
}

#map .cc-marker.no-match {
  z-index: -1 !important;
}

#map .selected-marker {
  z-index: 999999 !important;
}

.cc-marker .label-marker {
  height: 0px;
}

.cc-marker .label-marker .wrapper {
  padding: 10px;
  top: -93px;
  position: relative;
  display: flex;
  flex-direction: column;
  border: 2px solid white;
  border-radius: 10px;
}

.cc-marker .label-marker .wrapper .text {
  max-width: 200px;
  text-overflow: '';
  overflow: hidden;
  white-space: nowrap;
  text-align: center;
  font-size: 21px;
}

.cc-marker-label {
  width: auto !important;
  position: relative;
}

.cc-marker .label-marker .pointer {
  border-top: 15px solid white;
  border-right: 15px solid transparent;
  border-left: 15px solid transparent;
  bottom: -10px;
  display: inline-block;
  margin: 0 auto;
  position: absolute;
  left: calc(50% - 15px);
  z-index: -1
}

#map[data-iconsize=medium] .cc-marker .label-marker .text {
  font-size: 15px;
}


#map[data-iconsize=medium] .cc-marker .label-marker .wrapper {
  padding: 7.5px;
  top: -79px
}


#map[data-iconsize=small] .cc-marker .label-marker .text {
  font-size: 10px;
}


#map[data-iconsize=small] .cc-marker .label-marker .wrapper {
  padding: 5px;
  top: -68px
}

#map.has-selection .cc-marker:not(.selected-marker) {
  opacity: .5;
}

#map[data-iconsize=medium] .cc-marker .circle-marker {
  transform: scale(75%);
  margin-left: -16px;
  margin-top: -52px;

}

#map[data-iconsize=small] .cc-marker .circle-marker {
  transform: scale(50%);
  margin-left: -13px;
  margin-top: -50px;
}



/*
  Tables
*/

table.datatable {
  width: 100% !important;
  border-collapse: collapse !important;
}

table.datatable thead {
  color: var(--cc-blue-color);
}

table.datatable tbody tr {
  border-bottom: 1px solid var(--cc-grey-color);
}

table.datatable tr td {
  padding: 20px 10px;
}

table.datatable thead td {
  padding-top: 0;
  padding-bottom: 0;
}

table tbody td {
  color: white;
}


.datatable_search {
  width: 100%;
  border-color: var(--cc-blue-color);
}

.datatable_search::placeholder {
  color: #fff;
}

.datatable tbody tr:hover {
  background-color: #4a5d86;
}

table.dataTable>thead>tr>th:not(.sorting_disabled),
table.dataTable>thead>tr>td:not(.sorting_disabled) {
  padding-right: 40px;
}

table.dataTable>thead .sorting:before,
table.dataTable>thead .sorting:after,
table.dataTable>thead .sorting_asc:before,
table.dataTable>thead .sorting_asc:after,
table.dataTable>thead .sorting_desc:before,
table.dataTable>thead .sorting_desc:after,
table.dataTable>thead .sorting_asc_disabled:before,
table.dataTable>thead .sorting_asc_disabled:after,
table.dataTable>thead .sorting_desc_disabled:before,
table.dataTable>thead .sorting_desc_disabled:after {
  bottom: 0.1em;
}

td.td-1px {
  width: 1px !important;
  text-align: center;
}

td.buttons {
  white-space: nowrap !important;
}

td.buttons a,
td.buttons span {
  text-decoration: none;
  color: #fff;
  margin: 0 5px;
}

div.dataTables_wrapper div.dataTables_paginate ul.pagination {
  justify-content: center;
}

div.dataTables_wrapper div.dataTables_paginate {
  margin-top: 20px;
}

table.datatable div.form-type-select {
  margin-bottom: 0 !important;
}

table.datatable div.form-type-select .select2-selection {
  border: none !important;
  background: none !important;
}

table.datatable div.form-type-select .select2-selection__arrow {
  display: none !important;
}



/*
  Modals
*/

.modal-content {
  background-color: var(--cc-bg-color);
  border-color: var(--cc-grey2-color);
}

.modal-header {
  background-color: var(--cc-primary-color);
  border: none;
}

.modal.new-item .modal-header {
  background-color: var(--cc-success-color);
}

.modal-footer {
  border: none;
  justify-content: space-around;
}

.modal .close-button {
  color: #fff;
  background: none;
}

.modal-footer>.d-flex {
  width: 100%;
  justify-content: space-between;
  flex-direction: row-reverse;
}

.modal span.color-block {
  content: "";
  width: 20px;
  height: 20px;
  border-radius: 50%;
  display: block;
  background-color: white;
  margin-left: 5px;
}

.modal-header_left,
.modal-header_right {
  display: flex;
}

#zone-editor .modal-header_left i {
  margin-right: 5px;
}

#zone-editor .modal-header_left .zone_icon {
  margin: auto;
}

#filter .modal-header {
  background-color: var(--cc-focus-color);
}


.clickable {
  cursor: pointer;
}

i.clickable:hover {
  opacity: .9;
}


#edit-user-modal .layer-permission {
  display: flex;
  margin-bottom: 10px;
  cursor: pointer;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
}

#edit-user-modal .layer-permission i {
  margin-right: 10px;
  width: 20px;
  text-align: center;
}

#edit-user-modal .layer-permission>* {
  margin-top: auto;
  margin-bottom: auto;
}

#sidebar form {
  display: flex;
  flex-direction: column;
}

#sidebar form label {
  color: var(--cc-blue-color)
}

#sidebar .form-group>label {
  margin-left: -10px;
}

#sidebar .form-description,
#sidebar .form-label,
#sidebar .form-marker_type,
#sidebar .form-style,
#sidebar .form-owner,
#sidebar .form-connected_to,
#sidebar .connection_fields .form-group:not(.form-type-switch) {
  flex-direction: column;
}

#sidebar .form-description>*,
#sidebar .form-label>*,
#sidebar .form-marker_type>*,
#sidebar .form-style>*,
#sidebar .form-owner>*,
#sidebar .form-connected_to>*,
#sidebar [class*=form-task_]>*,
#sidebar .connection_fields .form-group:not(.form-type-switch)>* {
  justify-content: start !important;
  width: 100%;
}

#sidebar form .form-type-color input {
  margin-top: auto;
  margin-bottom: auto;
}

#sidebar div.footer {
  margin-top: auto;
  border-top: none;
  font-size: .8em;
  text-align: center;
}

#sidebar div.footer>.copyright {
  margin-left: auto;
  margin-right: auto;
}


.latest_colors {
  display: flex;
  margin-top: -20px;
  margin-left: calc(33.33333333% - 10px);
  margin-bottom: 10px;
}

.latest_colors>span {
  width: 20px;
  height: 20px;
  border: 1px solid var(--cc-blue-color);
  display: inline-block;
}

.leaflet-tooltip-pane {
  display: none !important;
}


i.fa-do-not-show {
  display: none !important;
}

.preview-container .point-marker i {
  margin-right: 0 !important;
}


/* Status badges */
span.status {
  background-color: var(--cc-primary-color);
  border-radius: 20px;
  padding: 5px 7.5px;
  text-align: center;
  font-size: 0.75rem;
}

span.status {
  min-width: 100px;
  display: inline-block;
}

span.select2-selection span.status {
  line-height: 1rem;
}

span.status.status-concept,
span.status.status-new {
  background-color: var(--cc-warning-color);
}

span.status.status_confirmed,
span.status.status_live {
  background-color: var(--cc-success-color);
}

span.status.status_cancelled,
span.status.status_canceled {
  background-color: var(--cc-danger-color);
}

span.status.status_returned,
span.status.status_archive {
  background-color: var(--cc-archive-color);
}

/*
  Periods Modal
  */


.weekday-time .weekday {
  color: var(--cc-blue-color);
  text-align: right;
}

.weekday-time .time {
  display: flex;
}

.weekday-time .time input {
  width: 100%;
  border: none;
  background-color: var(--cc-grey-color);
  color: white;
  text-align: center;
  padding: 5px;
  border-radius: 0.25rem;
  margin: 0 10px;
  letter-spacing: 0.2em;
}

.weekday-time.disabled .time input {
  color: var(--cc-grey2-color);
}

/*
 X UNIT GROUP
*/

.x-unit-group.row {
  margin: 0;
}

.x-unit-group input {
  background-color: var(--cc-bg-color);
  border: 1px solid var(--cc-blue-color);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  color: #fff;
}



/*
  BAROMETER SETTINGS
*/

.barometer-settings {
  margin-top: 10px;
}

.barometer-settings_header {
  color: var(--cc-blue-color);
  margin-bottom: 10px;
}

.barometer-settings .x-unit-group {
  margin-left: -1px;
}

.barometer-settings .x-unit-group input {
  max-width: 80px;
}

.barometer-settings label {
  display: flex;
  align-items: center;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  justify-content: flex-end;
  white-space: nowrap;
}

.barometer-settings label,
.barometer-settings_header span:first-child {
  padding: 0 0.75rem;
}

span.barometer-color.color-block {
  margin-left: 5px;
}

span.barometer-color.capacity_red {
  background-color: var(--cc-danger-color);
}

span.barometer-color.capacity_orange {
  background-color: var(--cc-warning-color);
}

span.barometer-color.capacity_yellow {
  background-color: var(--cc-yellow-color);
}

header .mobile {
  margin-left: auto;
  position: absolute;
  right: 20px;
}

header .toggle-sidebar {
  cursor: pointer;
}


.connection_fields-meta:not(.show) {
  display: none;
}

body.projects div.search {
  width: 100%;
}


.projects_table i {
  width: 20px;
  text-align: center;
}

.projects_table i.alert-setting::before {
  content: "\f1f6";
}

.projects_table i.alert-setting.enabled::before {
  content: "\f0f3";
}

.projects_table td.buttons a {
  color: white
}

@media only screen and (max-width: 1024px) {
  .topbar_wrapper {
    padding: 0 60px;
  }

  .topbar .branding {
    max-width: 50px;
    overflow: hidden;
  }
}


@media only screen and (min-width: 768px) {
  .mobile {
    display: none;
  }


  body.projects #main-content,
  body.account #main-content {
    margin-left: 300px;
  }


}

@media only screen and (max-width: 767px) {
  main {
    margin-left: 0;
  }

  #sidebar {
    z-index: 99;
    width: 100%;
    transition: left ease-in-out .2s;
    /*opacity: 1;*/
    padding-top: 65px;
    left: 0;
  }

  main input.search-bar {
    z-index: 100;
  }


  #sidebar:not(.show)+main input.search-bar {
    width: calc(100% - 20px);
    margin-left: 0;
    transition: ease-in-out .2s;

  }


  #sidebar:not(.show) {
    /*opacity: 0;*/
    left: -100%
  }


}

.form-coordinate>span#value,
.form-last_gps_update>span#value {
  margin-top: auto;
  margin-bottom: auto;
}