@charset "UTF-8";
/*
██████╗  █████╗ ███████╗██╗ ██████╗███████╗
██╔══██╗██╔══██╗██╔════╝██║██╔════╝██╔════╝
██████╔╝███████║███████╗██║██║     ███████╗
██╔══██╗██╔══██║╚════██║██║██║     ╚════██║
██████╔╝██║  ██║███████║██║╚██████╗███████║
╚═════╝ ╚═╝  ╚═╝╚══════╝╚═╝ ╚═════╝╚══════╝
*/
body {
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: #08121e;
  color: #3F4652;
  line-height: 1.4;
  font-family: 'Open Sans', sans-serif, "Helvetica Neue", Helvetica, Arial;
  font-size: 14px;
  text-align: left;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-overflow-scrolling: none;
  -webkit-user-select: none; }

* {
  box-sizing: border-box;
  padding: 0;
  margin: 0; }

:focus {
  outline: none;
  border: 0; }

.z999999 {
  z-index: 99999999999; }

/* Internet explorer puts an "X" to clear input fields...*/
input::-ms-clear {
  display: none; }

label {
  margin-bottom: 0px !important; }

h3, h4 {
  color: black;
  cursor: default; }

h5 {
  position: relative;
  font-size: 150%;
  color: white;
  margin-top: 0;
  font-weight: 500;
  width: 100%;
  text-align: left; }

tr {
  background: #3f4652; }

/* table */
thead tr, thead tr th {
  border: none;
  background: transparent !important; }

tr:nth-child(odd) {
  background-color: rgba(0, 0, 0, 0.15); }

tr:nth-child(even) {
  background-color: rgba(0, 0, 0, 0.075); }

tr.new {
  background-color: cyan !important; }

th {
  background: #3F4652;
  cursor: pointer;
  font-size: 100%;
  font-weight: 200;
  width: 10%;
  padding: 10px;
  letter-spacing: 1px;
  padding-left: 6px;
  padding-bottom: 2px; }

td {
  padding: 5px;
  vertical-align: top; }

th.thirtyp {
  width: 170px; }

td.name {
  width: 170px; }

th.fivep {
  width: 25px;
  padding-left: 9px;
  padding-bottom: 0;
  padding-top: 22px; }

article {
  color: #333;
  margin-top: 20px; }

hr {
  border-top: 1px solid #333; }

a {
  font-weight: 400; }

.active a {
  color: cadetblue !important;
  font-weight: 900 !important; }

input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill {
  background-color: white !important;
  background: white !important; }

.inactive {
  color: #333; }

/* Main name (in table) */
.dln {
  margin-left: 30px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, 'Open Sans';
  background: none;
  border: none;
  font-size: 130%;
  margin: 0px 10px 0px 0px;
  padding-bottom: 0;
  width: 100%;
  font-weight: 400;
  color: #333; }

.dln:hover {
  color: black; }

/* file description */
.dld {
  font-weight: 400;
  font-size: 100%;
  margin: 0 10px 0 0;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, 'Open Sans';
  color: #333;
  background: none;
  border: none;
  resize: none;
  width: 100%;
  height: 24px;
  opacity: 0.5;
  position: relative;
  top: -3px;
  font-style: italic;
  overflow-y: hidden; }

/* table cell */
.tdcont {
  opacity: 1;
  font-size: 14px;
  font-weight: 200;
  letter-spacing: 0.5px;
  line-height: 1.2;
  padding-top: 10px;
  border-left: 1px dashed rgba(255, 255, 255, 0.15);
  padding-left: 9px;
  color: #333; }

.tdcont:hover {
  color: black; }

.manage-access-button-done,
.manage-access-current-role,
.user-projects-button {
  background: rgba(0, 0, 0, 0.65);
  padding: 10px 4px 10px 4px;
  text-align: center;
  line-height: 1;
  margin-right: 4px;
  color: white;
  font-weight: 500;
  box-shadow: -1px 1px 2px 0 rgba(0, 0, 0, 0.3);
  cursor: pointer; }

.manage-access-button-done:hover,
.manage-access-current-role:hover,
.user-projects-button:hover {
  background: black; }

.defaultCursor {
  cursor: default !important; }

.smallerText {
  font-size: 100%; }

/*SVG*/
/*path {
	stroke-width: 1.5px;
	}*/
/*path:hover {
	fill-opacity: .7;
	}
*/
/* FOR IPHONE */
/* FOR IPHONE */
/* FOR IPHONE */
ul#checked {
  width: 100px;
  list-style: none;
  position: relative;
  display: inline-block;
  margin: 0;
  padding: 0;
  padding-left: 10px;
  height: 40px;
  float: right; }

ul#checked li p {
  display: block;
  margin-bottom: 20px;
  background: -moz-linear-gradient(19% 75% 90deg, #3095C7, #14539C);
  background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#14539C), to(#3095C7));
  border-radius: 4px;
  -moz-border-radius: 4px;
  border: 1px solid #555555;
  width: 90px;
  position: relative;
  height: 22px; }

ul#checked p:before {
  content: "Vector";
  padding-left: 5px;
  color: #fff;
  font-size: 12px; }

ul#checked p:after {
  content: "Raster";
  padding-left: 6px;
  line-height: 23px;
  color: #fff;
  font-size: 12px; }

.check {
  display: block;
  width: 45px;
  height: 20px;
  border-radius: 3px;
  -moz-border-radius: 3px;
  background: -moz-linear-gradient(19% 75% 90deg, #FFFFFF, #A1A1A1);
  background: #fff -webkit-gradient(linear, 0% 0%, 0% 100%, from(#A1A1A1), to(#FFFFFF));
  border: 1px solid #e5e5e5;
  position: absolute;
  top: 0px;
  left: 0px; }

input[type=checkbox] {
  display: none; }

input[type=checkbox]:checked + label.check {
  top: 0px;
  left: 44px; }

input[type=checkbox] + label.check {
  top: 0px;
  left: 0px; }

label.info {
  position: absolute;
  color: #000;
  top: 0px;
  left: 100px;
  line-height: 32px;
  width: 200px; }

/* This holds tooltop etc. */
.g-body {
  z-index: 35000;
  top: 5px;
  left: -17px;
  position: relative;
  top: 42px;
  left: -31px;
  position: absolute; }

/* Hide select all users button, because it doesn't work, and it's not really needed */
.users-squaredThree-checkbox-all {
  visibility: hidden; }

/*
██╗   ██╗███╗   ██╗██╗██╗   ██╗███████╗██████╗ ███████╗ █████╗ ██╗     ███████╗
██║   ██║████╗  ██║██║██║   ██║██╔════╝██╔══██╗██╔════╝██╔══██╗██║     ██╔════╝
██║   ██║██╔██╗ ██║██║██║   ██║█████╗  ██████╔╝███████╗███████║██║     ███████╗
██║   ██║██║╚██╗██║██║╚██╗ ██╔╝██╔══╝  ██╔══██╗╚════██║██╔══██║██║     ╚════██║
╚██████╔╝██║ ╚████║██║ ╚████╔╝ ███████╗██║  ██║███████║██║  ██║███████╗███████║
 ╚═════╝ ╚═╝  ╚═══╝╚═╝  ╚═══╝  ╚══════╝╚═╝  ╚═╝╚══════╝╚═╝  ╚═╝╚══════╝╚══════╝
*/
.unselectable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.box {
  margin: 4px !important; }

.die {
  display: none !important; }

.show {
  display: block; }

.relative {
  position: relative; }

.inline {
  display: inline-block;
  vertical-align: top; }

.inliner {
  position: absolute;
  right: 1px;
  top: 8px; }

.underline {
  text-decoration: underline; }

/* Search fields */
.search {
  margin: 0px;
  border: none;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, 'Open Sans';
  font-weight: 200;
  color: black;
  background: white;
  font-size: 120%;
  width: 171px;
  text-align: left;
  position: relative;
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.4) inset;
  padding: 4px; }

/* Often used in tables */
.eightyWidth {
  background: rgba(0, 0, 0, 0.3);
  color: white !important;
  border: 0;
  box-shadow: none;
  border-radius: 0;
  padding: 6px !important;
  height: 30px !important;
  margin-bottom: 10px;
  margin-top: 0 !important; }

/* Button */
.dropdown-button {
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: 4px 8px;
  position: absolute;
  right: 15px;
  top: 50px;
  background-color: white;
  width: 20px;
  height: 20px;
  border-radius: 20px;
  z-index: 99999; }

.smap-button-white, .smap-button-gray, .share-image-download-button, .download-dialog-button,
.download-dialog-cancel {
  height: 30px;
  text-align: center;
  margin: 0;
  margin-bottom: 10px;
  padding: 0px 10px 0px 10px;
  border: 0px;
  border-radius: 0;
  line-height: 2.1;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  font-size: 110%;
  font-weight: 400;
  cursor: pointer;
  position: relative;
  display: inline-block;
  vertical-align: top;
  background: rgba(255, 255, 255, 0.75);
  box-shadow: -1px 1px 2px 0 rgba(0, 0, 0, 0.3);
  color: #666; }

.smap-button-gray, .share-image-download-button, .download-dialog-button,
.download-dialog-cancel {
  background-color: rgba(0, 0, 0, 0.65);
  color: white;
  font-weight: 500;
  margin-left: 5px; }

/* Button */
.smap-button-white:active, .smap-button-gray:active, .share-image-download-button:active, .download-dialog-button:active,
.download-dialog-cancel:active,
.smap-button-gray:active,
.share-image-download-button:active,
.download-dialog-button:active,
.download-dialog-cancel:active {
  box-shadow: -1px 1px 2px 0 transparent; }

/* Button */
.smap-button-white:hover, .smap-button-gray:hover, .share-image-download-button:hover, .download-dialog-button:hover,
.download-dialog-cancel:hover {
  background: white;
  color: #333; }

/* Button */
.smap-button-gray:hover, .share-image-download-button:hover, .download-dialog-button:hover,
.download-dialog-cancel:hover {
  background: black;
  color: white; }

.smap-button-gray.blurred, .blurred.share-image-download-button, .blurred.download-dialog-button,
.blurred.download-dialog-cancel {
  color: gray;
  background: gainsboro; }

.smap-button-gray.blurred:active, .blurred.share-image-download-button:active, .blurred.download-dialog-button:active,
.blurred.download-dialog-cancel:active {
  color: gray;
  background: gainsboro; }

/* Button */
.smap-button-white.small, .small.smap-button-gray, .small.share-image-download-button, .small.download-dialog-button,
.small.download-dialog-cancel {
  height: 26px;
  font-size: 13px;
  line-height: 2; }

/* Button */
.smap-button-white.small.red, .small.red.smap-button-gray, .small.red.share-image-download-button, .small.red.download-dialog-button,
.small.red.download-dialog-cancel {
  color: white !important;
  background: #B80077 !important;
  box-shadow: 0 0 0 1px white inset; }

/* Input field (gray bg – see bounds in Options) */
.editor-inner-wrapper input,
.input-box {
  padding: 7px;
  color: white;
  font-weight: 200;
  background: rgba(0, 0, 0, 0.7); }

.input-box {
  float: left;
  width: 170px;
  border: 0; }

.form-control {
  border-radius: 0px;
  border: 0px; }

.displayNone {
  display: none !important; }

.opacityNone {
  opacity: 0; }

.fadeOut {
  opacity: 0; }

.fadeHide {
  opacity: 0;
  -webkit-transition: opacity 1s linear;
  -moz-transition: opacity 1s linear;
  -ms-transition: opacity 1s linear;
  -o-transition: opacity 1s linear;
  transition: opacity 1s linear; }

.valid {
  background: #6cff87; }

.invalid {
  /*background: rgb(255, 108, 108);*/
  background: red !important;
  color: white;
  border: 1px solid red; }

.collapsed {
  display: none; }

.expand {
  display: block !important; }

/* A bit annoying, but center most headlines */
/*#editor-client-item-new h5, */
.editor-client-title h5,
.editor-inner-wrapper h5,
#select-basic-themes,
#advanced-color-header,
.editor-wrapper h4 {
  font-weight: 400;
  text-align: center; }

/* Titles in the "Options" menu */
.editor-wrapper h4 {
  cursor: pointer; }

/* Background for the titles in the "Options" menu */
/* Used for help tooltip hovering */
.editor-wrapper h4:before {
  content: '';
  width: 100%;
  height: 58px;
  position: absolute;
  left: 0;
  opacity: 0.3;
  top: 0px; }

.status-progress-bar {
  position: absolute;
  width: 0%;
  top: 0px;
  left: 0px;
  z-index: 99999999999;
  margin-left: 0px;
  background: white;
  float: left;
  font-size: 12px;
  line-height: 20px;
  color: #fff;
  text-align: center;
  background-color: red;
  box-shadow: none;
  height: 2px;
  z-index: 1000000000000; }

.status-progress-bar.processing {
  background: red; }

.disabled {
  opacity: 0.1;
  height: 0px !important; }

.disabled a {
  opacity: 0; }

.dragging {
  /*background: #92f0e5 !important;*/
  background: red;
  cursor: -webkit-grabbing !important;
  cursor: -moz-grabbing !important; }

.notunique {
  color: red; }

/* SWITCH */
/* SWITCH */
/* SWITCH */
/*toggle switches Options/Settings*/
.switch {
  margin-top: 9px;
  margin-left: 144px;
  position: absolute; }

input.cmn-toggle-round-flat + label {
  padding: 2px;
  width: 64px;
  height: 25px;
  background-color: #C7C7C7;
  border-radius: 60px;
  transition: background 0.1s;
  margin-top: -19px;
  cursor: pointer;
  cursor: -webkit-grab;
  cursor: -moz-grab; }

input.cmn-toggle-round-flat + label:active {
  cursor: pointer;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing; }

input.cmn-toggle-round-flat + label:before,
input.cmn-toggle-round-flat + label:after {
  display: block;
  position: absolute;
  content: ""; }

input.cmn-toggle-round-flat + label:before {
  top: 0px;
  left: 0px;
  bottom: 2px;
  right: 2px;
  background-color: #fff;
  border-radius: 60px;
  transition: background 0.1s;
  width: 60px;
  height: 21px;
  position: relative; }

input.cmn-toggle-round-flat + label:after {
  top: -19px;
  left: -7px;
  bottom: 4px;
  width: 22px;
  background-color: #dddddd;
  border-radius: 52px;
  transition: margin 0.1s, background 0.1s;
  height: 17px;
  margin-left: 10px;
  position: relative; }

input.cmn-toggle-round-flat:checked + label {
  background-color: #8ce196; }

input.cmn-toggle-round-flat:checked + label:after {
  margin-left: 42px;
  background-color: #8ce196; }

.settings-item {
  position: relative !important;
  height: 31px !important;
  background: rgba(255, 255, 255, 0.5) !important;
  width: 210px !important;
  margin-bottom: 1px !important;
  left: 0px !important;
  padding-top: 2px !important; }

.settings-item-title {
  color: #333 !important;
  font-weight: 400 !important;
  line-height: 1.6 !important; }

.switch {
  margin-left: 160px !important; }

.controls-switch {
  top: -27px;
  right: -1px;
  z-index: 1;
  position: relative; }

.carto-switch-tooltip {
  top: 4px;
  right: 6px;
  z-index: 1;
  position: absolute; }

.carto-switch-legend {
  top: 3px;
  right: 6px;
  z-index: 1;
  position: absolute; }

/* Switch overriders */
input.cmn-toggle-round-flat:checked + label,
input.cmn-toggle-round-flat:checked + label:after {
  background-color: #666 !important; }

input.cmn-toggle-round-flat:checked + label:after {
  margin-left: 28px !important; }

input.cmn-toggle-round-flat + label:after {
  left: -22px !important;
  top: -16px !important;
  width: 18px !important;
  height: 14px !important;
  left: -8px !important; }

input.cmn-toggle-round-flat + label {
  padding: 1px !important;
  height: 20px !important;
  width: 42px !important; }

input.cmn-toggle-round-flat + label:before {
  height: 18px !important;
  width: 40px !important; }

/*	
██╗      ██████╗  ██████╗ ██╗███╗   ██╗    ██████╗  █████╗  ██████╗ ███████╗
██║     ██╔═══██╗██╔════╝ ██║████╗  ██║    ██╔══██╗██╔══██╗██╔════╝ ██╔════╝
██║     ██║   ██║██║  ███╗██║██╔██╗ ██║    ██████╔╝███████║██║  ███╗█████╗  
██║     ██║   ██║██║   ██║██║██║╚██╗██║    ██╔═══╝ ██╔══██║██║   ██║██╔══╝  
███████╗╚██████╔╝╚██████╔╝██║██║ ╚████║    ██║     ██║  ██║╚██████╔╝███████╗
╚══════╝ ╚═════╝  ╚═════╝ ╚═╝╚═╝  ╚═══╝    ╚═╝     ╚═╝  ╚═╝ ╚═════╝ ╚══════╝
*/
.container {
  width: 100%;
  height: 100%;
  position: absolute;
  margin: 0;
  padding: 0;
  background: #3F4652;
  color: #FAFAFA; }

.jumbotron {
  height: 100%;
  background: #3F4652;
  color: #FAFAFA;
  padding-top: 170px; }

.col-sm-6.col-sm-offset-3 {
  width: 400px;
  margin: auto;
  float: none;
  margin-top: 150px; }

#login-logo {
  width: 390px;
  height: 324px;
  background-image: url(../images/ruppellsgriffon_logo.png);
  margin: auto;
  position: relative;
  top: 0;
  left: 0;
  background-repeat: no-repeat; }

#login-button {
  top: -3px;
  position: relative; }

#forgot-password {
  background: none;
  border: none;
  float: right;
  color: white;
  font-size: 15px;
  vertical-align: bottom;
  position: relative;
  text-align: right;
  right: -7px;
  cursor: pointer;
  text-decoration: underline; }

.secure-logn-symbol {
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -469px 1px;
  width: 26px;
  height: 25px;
  position: relative;
  display: inline-block;
  top: 5px; }

/*
 █████╗ ██████╗ ██████╗   ██╗███╗   ███╗ █████╗ ██████╗ 
██╔══██╗██╔══██╗██╔══██╗ ██╔╝████╗ ████║██╔══██╗██╔══██╗
███████║██████╔╝██████╔╝██╔╝ ██╔████╔██║███████║██████╔╝
██╔══██║██╔═══╝ ██╔═══╝██╔╝  ██║╚██╔╝██║██╔══██║██╔═══╝ 
██║  ██║██║     ██║   ██╔╝   ██║ ╚═╝ ██║██║  ██║██║     
╚═╝  ╚═╝╚═╝     ╚═╝   ╚═╝    ╚═╝     ╚═╝╚═╝  ╚═╝╚═╝     
*/
/* Absolute outer wrapper */
#app {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 200;
  /*min-width: 650px; */ }

/* Map container */
#map {
  position: absolute;
  width: 100%;
  height: 100%;
  height: 100%;
  background: rgba(8, 18, 30, 0.9);
  left: 0px; }

#map:before {
  opacity: 0.1; }

/*
██╗  ██╗███████╗ █████╗ ██████╗ ███████╗██████╗ 
██║  ██║██╔════╝██╔══██╗██╔══██╗██╔════╝██╔══██╗
███████║█████╗  ███████║██║  ██║█████╗  ██████╔╝
██╔══██║██╔══╝  ██╔══██║██║  ██║██╔══╝  ██╔══██╗
██║  ██║███████╗██║  ██║██████╔╝███████╗██║  ██║
╚═╝  ╚═╝╚══════╝╚═╝  ╚═╝╚═════╝ ╚══════╝╚═╝  ╚═╝
*/
#header {
  position: absolute;
  height: 77px;
  z-index: 10;
  top: 6px;
  left: 104px;
  display: inline-block;
  width: auto;
  padding: 0; }

#header .header-logo-container {
  position: relative;
  z-index: 1000;
  color: white;
  float: left;
  max-height: inherit;
  margin-right: 10px;
  position: absolute;
  background-repeat: no-repeat;
  background-position: center;
  left: 3px;
  background-color: transparent;
  background-size: 100% 100%;
  top: 3px;
  height: 71px;
  margin-right: 10px;
  width: 105px;
  overflow: hidden; }

.header-logo-container.editable:hover {
  cursor: copy;
  opacity: 0.7; }

.header-logo {
  height: 100%; }

.header-logo img {
  position: relative; }

.header-title-wrap {
  background: rgba(255, 255, 255, 0.93);
  height: 100%;
  width: auto;
  min-width: 250px;
  top: 0;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  border: 0px;
  font-size: 30px;
  font-weight: 200;
  float: left;
  padding-right: 22px;
  cursor: default; }

.header-title {
  border: 0px;
  background: transparent;
  font-size: 30px;
  font-weight: 200;
  padding-left: 120px;
  height: 45px;
  overflow: hidden; }

.header-title input {
  padding: 0;
  width: 100%; }

.header-subtitle {
  border: 0px;
  background: transparent;
  display: block;
  font-style: italic;
  color: #666;
  font-size: 16px;
  font-weight: 400;
  float: left;
  height: 16px;
  word-wrap: break-word;
  position: relative;
  left: inherit;
  top: 0;
  line-height: 15px;
  overflow: hidden;
  max-height: 31px;
  padding-right: 14px;
  padding-left: 120px; }

.header-subtitle input {
  width: 300px;
  color: black;
  width: 400px;
  margin: 0 !important;
  padding: 0 !important;
  left: inherit;
  position: relative;
  top: -9px !important; }

#header input {
  outline: none; }

#header input:focus {
  border: 1px solid #51cbee; }

/*
██╗  ██╗ ██████╗ ███╗   ███╗███████╗     ██████╗ ██████╗ ███╗   ██╗████████╗ █████╗ ██╗███╗   ██╗███████╗██████╗ 
██║  ██║██╔═══██╗████╗ ████║██╔════╝    ██╔════╝██╔═══██╗████╗  ██║╚══██╔══╝██╔══██╗██║████╗  ██║██╔════╝██╔══██╗
███████║██║   ██║██╔████╔██║█████╗      ██║     ██║   ██║██╔██╗ ██║   ██║   ███████║██║██╔██╗ ██║█████╗  ██████╔╝
██╔══██║██║   ██║██║╚██╔╝██║██╔══╝      ██║     ██║   ██║██║╚██╗██║   ██║   ██╔══██║██║██║╚██╗██║██╔══╝  ██╔══██╗
██║  ██║╚██████╔╝██║ ╚═╝ ██║███████╗    ╚██████╗╚██████╔╝██║ ╚████║   ██║   ██║  ██║██║██║ ╚████║███████╗██║  ██║
╚═╝  ╚═╝ ╚═════╝ ╚═╝     ╚═╝╚══════╝     ╚═════╝ ╚═════╝ ╚═╝  ╚═══╝   ╚═╝   ╚═╝  ╚═╝╚═╝╚═╝  ╚═══╝╚══════╝╚═╝  ╚═╝
*/
.home-container {
  width: 90px;
  margin: 4px;
  height: 77px;
  position: relative;
  background-color: rgba(255, 255, 255, 0.9);
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  z-index: 999;
  margin: 6px;
  left: 0px;
  overflow: hidden; }

.home-logo {
  background: none;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  cursor: pointer;
  height: 50px;
  width: 100%;
  background-position: -180px -229px;
  opacity: 0.5; }

.home-container:hover > .home-logo {
  opacity: 0.7; }

.home-status {
  position: relative;
  bottom: 0px;
  width: 100%;
  height: 0px;
  color: white;
  text-align: center;
  font-weight: 500;
  font-size: 110%;
  cursor: pointer;
  color: black;
  opacity: 0;
  overflow: hidden; }

.status-in {
  opacity: 0.9;
  height: 27px; }

.home-status-inner {
  position: absolute;
  bottom: 5px;
  width: 100%; }

/*HELP TOOLTIP CHANGES*/
.opentip-container {
  z-index: 9999999 !important; }

.style-systip .opentip {
  color: white !important;
  text-shadow: none !important; }

/*
██╗     ██╗███████╗████████╗███████╗██████╗     ███████╗██████╗  ██████╗ ███╗   ███╗    ██╗     ███████╗ █████╗ ███████╗██╗     ███████╗████████╗
██║     ██║██╔════╝╚══██╔══╝██╔════╝██╔══██╗    ██╔════╝██╔══██╗██╔═══██╗████╗ ████║    ██║     ██╔════╝██╔══██╗██╔════╝██║     ██╔════╝╚══██╔══╝
██║     ██║█████╗     ██║   █████╗  ██║  ██║    █████╗  ██████╔╝██║   ██║██╔████╔██║    ██║     █████╗  ███████║█████╗  ██║     █████╗     ██║   
██║     ██║██╔══╝     ██║   ██╔══╝  ██║  ██║    ██╔══╝  ██╔══██╗██║   ██║██║╚██╔╝██║    ██║     ██╔══╝  ██╔══██║██╔══╝  ██║     ██╔══╝     ██║   
███████╗██║██║        ██║   ███████╗██████╔╝    ██║     ██║  ██║╚██████╔╝██║ ╚═╝ ██║    ███████╗███████╗██║  ██║██║     ███████╗███████╗   ██║   
╚══════╝╚═╝╚═╝        ╚═╝   ╚══════╝╚═════╝     ╚═╝     ╚═╝  ╚═╝ ╚═════╝ ╚═╝     ╚═╝    ╚══════╝╚══════╝╚═╝  ╚═╝╚═╝     ╚══════╝╚══════╝   ╚═╝   
*/
/*
┬  ┌─┐┌─┐┌─┐┬  ┌─┐┌┬┐  ┌┬┐┬─┐┌─┐┬ ┬
│  ├┤ ├─┤├┤ │  ├┤  │    ││├┬┘├─┤│││
┴─┘└─┘┴ ┴└  ┴─┘└─┘ ┴   ─┴┘┴└─┴ ┴└┴┘
*/
/* Close button on tooltip on map */
.leaflet-container a.leaflet-popup-close-button {
  width: 25px;
  height: 20px;
  top: 7px;
  right: 4px;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -22px -44px;
  opacity: 0.3;
  z-index: 10001;
  position: absolute; }

.leaflet-container a.leaflet-popup-close-button:hover {
  opacity: 0.5; }

.leaflet-popup-close-button {
  z-index: 10001;
  position: absolute; }

.leaflet-draw-section,
.leaflet-draw-draw-polygon {
  position: relative;
  width: 26px;
  height: 26px; }

.leaflet-draw-toolbar {
  margin-top: 0px;
  box-shadow: none !important; }

.leaflet-draw-toolbar-top {
  margin-top: 0; }

.leaflet-draw-toolbar a {
  background-image: url(../images/leaflet.draw.sprites.png); }

.leaflet-draw-toolbar-notop a:first-child {
  border-top-right-radius: 0; }

.leaflet-draw-toolbar-nobottom a:last-child {
  border-bottom-right-radius: 0; }

.leaflet-draw-toolbar a {
  background-image: none !important;
  position: relative; }

.leaflet-draw-toolbar a:before {
  content: '';
  background-image: url(../images/leaflet.draw.sprites.png);
  background-repeat: no-repeat;
  width: 26px;
  height: 26px;
  top: 0;
  right: 0;
  position: absolute;
  opacity: 0.75; }

.leaflet-draw-toolbar a:hover:before {
  opacity: 1; }

.leaflet-draw-toolbar a.leaflet-draw-edit-edit:before {
  content: '';
  background-image: url(../images/leaflet.draw.sprites.png);
  background-repeat: no-repeat;
  width: 26px;
  height: 26px;
  top: 0;
  right: 0;
  position: absolute;
  opacity: 0.75;
  background-position: -151px; }

.leaflet-draw-toolbar a.leaflet-draw-edit-remove:before {
  content: '';
  background-image: url(../images/leaflet.draw.sprites.png);
  background-repeat: no-repeat;
  width: 26px;
  height: 26px;
  top: 0;
  right: 0;
  position: absolute;
  opacity: 0.75;
  background-position: -182px; }

.leaflet-draw-draw-polyline:before {
  background-position: -2px -2px !important; }

.leaflet-draw-draw-polygon:before {
  background-position: -31px -2px !important; }

.leaflet-draw-draw-rectangle:before {
  background-position: -62px -2px !important; }

.leaflet-draw-draw-circle:before {
  background-position: -92px -2px !important; }

.leaflet-draw-draw-marker:before {
  background-position: -122px -2px !important; }

.leaflet-draw a {
  display: block;
  text-align: center;
  text-decoration: none; }

/*
┌┬┐┌─┐┌─┐┬  ┌┐ ┌─┐┬─┐┌─┐  ┌─┐┌─┐┌┬┐┬┌─┐┌┐┌┌─┐  ┌┬┐┌─┐┌┐┌┬ ┬
 │ │ ││ ││  ├┴┐├─┤├┬┘└─┐  ├─┤│   │ ││ ││││└─┐  │││├┤ ││││ │
 ┴ └─┘└─┘┴─┘└─┘┴ ┴┴└─└─┘  ┴ ┴└─┘ ┴ ┴└─┘┘└┘└─┘  ┴ ┴└─┘┘└┘└─┘
 */
.leaflet-draw.leaflet-control {
  margin-top: 0px; }

.leaflet-draw.leaflet-control.elizaveta {
  width: 20px;
  overflow: visible;
  cursor: -webkit-grab;
  cursor: -moz-grab; }

.leaflet-draw.leaflet-control.elizaveta:active {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing; }

.leaflet-draw-actions {
  display: none;
  list-style: none;
  margin: 0;
  padding: 0;
  position: absolute;
  left: 26px;
  top: 0; }

.leaflet-right .leaflet-draw-actions {
  right: 26px;
  left: auto; }

.leaflet-draw-actions li {
  display: inline-block; }

.leaflet-draw-actions li:first-child a {
  border-left: none; }

.leaflet-draw-actions li:last-child a {
  -webkit-border-radius: 0 4px 4px 0;
  border-radius: 0 4px 4px 0; }

.leaflet-right .leaflet-draw-actions li:last-child a {
  -webkit-border-radius: 0;
  border-radius: 0; }

.leaflet-right .leaflet-draw-actions li:first-child a {
  -webkit-border-radius: 4px 0 0 4px;
  border-radius: 4px 0 0 4px; }

.leaflet-draw-actions a {
  background-color: rgba(0, 0, 0, 0.7);
  border-left: 1px solid #AAA;
  color: #FFF;
  font: 11px/19px "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  line-height: 28px;
  text-decoration: none;
  padding-left: 10px;
  padding-right: 10px;
  height: 28px;
  font-weight: 500; }

.leaflet-draw-actions-bottom {
  margin-top: 0;
  white-space: nowrap; }

.leaflet-draw-actions-top {
  margin-top: 1px;
  white-space: nowrap; }

.leaflet-draw-actions-top a,
.leaflet-draw-actions-bottom a {
  height: 27px;
  line-height: 27px; }

.leaflet-draw-actions a:hover {
  background-color: rgba(0, 0, 0, 0.85); }

.leaflet-draw-actions-top.leaflet-draw-actions-bottom a {
  height: 26px;
  line-height: 26px; }

/*
┌┬┐┬─┐┌─┐┬ ┬  ┌┬┐┌─┐┌─┐┬  ┌┐ ┌─┐┬─┐
 ││├┬┘├─┤│││   │ │ ││ ││  ├┴┐├─┤├┬┘
─┴┘┴└─┴ ┴└┴┘   ┴ └─┘└─┘┴─┘└─┘┴ ┴┴└─
*/
/*.leaflet-draw-draw-polyline a:before {
	background-position: -2px -2px !important;
	}

.leaflet-draw-draw-polygon a:before {
	background-position: -31px -2px !important;
	}

.leaflet-draw-draw-rectangle a:before {
	background-position: -62px -2px !important;
	}

.leaflet-draw-draw-circle a:before {
	background-position: -92px -2px !important;
	}

.leaflet-draw-draw-marker a:before {
	background-position: -122px -2px !important;
	}*/
/*
┌─┐┌┬┐┬┌┬┐  ┌┬┐┌─┐┌─┐┬  ┌┐ ┌─┐┬─┐┌─┐
├┤  │││ │    │ │ ││ ││  ├┴┐├─┤├┬┘└─┐
└─┘─┴┘┴ ┴    ┴ └─┘└─┘┴─┘└─┘┴ ┴┴└─└─┘
*/
.leaflet-draw-toolbar .leaflet-draw-edit-edit {
  background-position: -152px -2px; }

.leaflet-draw-toolbar .leaflet-draw-edit-remove {
  background-position: -182px -2px; }

.leaflet-draw-toolbar .leaflet-draw-edit-edit.leaflet-disabled {
  background-position: -212px -2px;
  display: none; }

.leaflet-draw-toolbar .leaflet-draw-edit-remove.leaflet-disabled {
  background-position: -242px -2px;
  display: none; }

/*
┌┬┐┬─┐┌─┐┬ ┬┬┌┐┌┌─┐  ┌─┐┌┬┐┬ ┬┬  ┌─┐┌─┐
 ││├┬┘├─┤││││││││ ┬  └─┐ │ └┬┘│  ├┤ └─┐
─┴┘┴└─┴ ┴└┴┘┴┘└┘└─┘  └─┘ ┴  ┴ ┴─┘└─┘└─┘
*/
.leaflet-mouse-marker {
  background-color: #fff;
  cursor: crosshair; }

.leaflet-draw-tooltip {
  background: #363636;
  background: rgba(0, 0, 0, 0.5);
  border: 1px solid transparent;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  color: #fff;
  font: 12px/18px "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  margin-left: 20px;
  margin-top: -21px;
  padding: 4px 8px;
  position: absolute;
  visibility: hidden;
  white-space: nowrap;
  z-index: 6; }

.leaflet-draw-tooltip:before {
  border-right: 6px solid black;
  border-right-color: rgba(0, 0, 0, 0.5);
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  content: "";
  position: absolute;
  top: 7px;
  left: -7px; }

.leaflet-error-draw-tooltip {
  background-color: #F2DEDE;
  border: 1px solid #E6B6BD;
  color: #B94A48; }

.leaflet-error-draw-tooltip:before {
  border-right-color: #E6B6BD; }

.leaflet-draw-tooltip-single {
  margin-top: -12px; }

.leaflet-draw-tooltip-subtext {
  color: #f8d5e4; }

.leaflet-draw-guide-dash {
  font-size: 1%;
  opacity: 0.6;
  position: absolute;
  width: 5px;
  height: 5px; }

/*
┌─┐┌┬┐┬┌┬┐  ┌─┐┌┬┐┬ ┬┬  ┌─┐┌─┐
├┤  │││ │   └─┐ │ └┬┘│  ├┤ └─┐
└─┘─┴┘┴ ┴   └─┘ ┴  ┴ ┴─┘└─┘└─┘
*/
.leaflet-edit-marker-selected {
  background: rgba(254, 87, 161, 0.1);
  border: 4px dashed rgba(254, 87, 161, 0.6);
  -webkit-border-radius: 4px;
  border-radius: 4px; }

.leaflet-edit-move {
  cursor: move; }

.leaflet-edit-resize {
  cursor: pointer; }

/*
┌─┐┬  ┌┬┐  ┬┌─┐  ┌─┐┌┬┐┬ ┬┬  ┌─┐┌─┐
│ ││   ││  │├┤   └─┐ │ └┬┘│  ├┤ └─┐
└─┘┴─┘─┴┘  ┴└─┘  └─┘ ┴  ┴ ┴─┘└─┘└─┘
*/
.leaflet-oldie .leaflet-draw-toolbar {
  border: 3px solid #999; }

.leaflet-oldie .leaflet-draw-toolbar a {
  background-color: #eee; }

.leaflet-oldie .leaflet-draw-toolbar a:hover {
  background-color: #fff; }

.leaflet-oldie .leaflet-draw-actions {
  left: 32px;
  margin-top: 3px; }

.leaflet-oldie .leaflet-draw-actions li {
  display: inline;
  zoom: 1; }

.leaflet-oldie .leaflet-edit-marker-selected {
  border: 4px dashed #fe93c2; }

.leaflet-oldie .leaflet-draw-actions a {
  background-color: #999; }

.leaflet-oldie .leaflet-draw-actions a:hover {
  background-color: #a5a5a5; }

.leaflet-oldie .leaflet-draw-actions-top a {
  margin-top: 1px; }

.leaflet-oldie .leaflet-draw-actions-bottom a {
  height: 28px;
  line-height: 28px; }

.leaflet-oldie .leaflet-draw-actions-top.leaflet-draw-actions-bottom a {
  height: 27px;
  line-height: 27px; }

/*
███████╗██╗   ██╗██╗██╗         ██╗     ███████╗ █████╗ ███████╗██╗     ███████╗████████╗████████╗██╗███╗   ██╗ ██████╗ 
██╔════╝██║   ██║██║██║         ██║     ██╔════╝██╔══██╗██╔════╝██║     ██╔════╝╚══██╔══╝╚══██╔══╝██║████╗  ██║██╔════╝ 
█████╗  ██║   ██║██║██║         ██║     █████╗  ███████║█████╗  ██║     █████╗     ██║      ██║   ██║██╔██╗ ██║██║  ███╗
██╔══╝  ╚██╗ ██╔╝██║██║         ██║     ██╔══╝  ██╔══██║██╔══╝  ██║     ██╔══╝     ██║      ██║   ██║██║╚██╗██║██║   ██║
███████╗ ╚████╔╝ ██║███████╗    ███████╗███████╗██║  ██║██║     ███████╗███████╗   ██║      ██║   ██║██║ ╚████║╚██████╔╝
╚══════╝  ╚═══╝  ╚═╝╚══════╝    ╚══════╝╚══════╝╚═╝  ╚═╝╚═╝     ╚══════╝╚══════╝   ╚═╝      ╚═╝   ╚═╝╚═╝  ╚═══╝ ╚═════╝ 
*/
/*
┬ ┬┌┐┌┬┬  ┬┌─┐┬─┐┌─┐┌─┐┬  ┌─┐
│ │││││└┐┌┘├┤ ├┬┘└─┐├─┤│  └─┐
└─┘┘└┘┴ └┘ └─┘┴└─└─┘┴ ┴┴─┘└─┘
*/
/* Make sure we don't get awkward skew of page */
.leaflet-control-container {
  overflow: hidden; }

/* Outer super wrapper */
.leaflet-control-container {
  height: 100%;
  padding-top: 0 !important;
  z-index: 999999999; }

/* Header for "Layers", "Layers inspector" and "Info" */
.menucollapser {
  width: 100%;
  top: 5px;
  right: 52px;
  left: auto;
  text-transform: uppercase;
  text-align: center;
  height: 28px;
  line-height: 2.2;
  font-weight: 600;
  margin-top: 0px;
  border-bottom: none;
  box-shadow: none;
  background: rgba(255, 255, 255, 0.9); }

/*
┌┬┐┌─┐┌─┐┌─┐┬ ┬┬─┐┌─┐   ┬  ┌─┐┌┐┌┌─┐┬┌┬┐┬ ┬┌┬┐┌─┐  ┌─┐┌┐┌┌┬┐  ┬  ┌─┐┌┬┐┬┌┬┐┬ ┬┌┬┐┌─┐
│││├┤ ├─┤└─┐│ │├┬┘├┤    │  │ │││││ ┬│ │ │ │ ││├┤   ├─┤│││ ││  │  ├─┤ │ │ │ │ │ ││├┤ 
┴ ┴└─┘┴ ┴└─┘└─┘┴└─└─┘┘  ┴─┘└─┘┘└┘└─┘┴ ┴ └─┘─┴┘└─┘  ┴ ┴┘└┘─┴┘  ┴─┘┴ ┴ ┴ ┴ ┴ └─┘─┴┘└─┘
*/
/* measure outer wrapper */
.leaflet-top.leaflet-right {
  border: 0;
  text-align: left;
  height: 18px;
  text-align: right;
  z-index: 100;
  bottom: 4px !important;
  right: 5px;
  top: initial; }

/* Inner wrapper */
.leaflet-right .leaflet-control {
  padding-left: 5px;
  padding-right: 5px;
  margin-right: 10px;
  float: none;
  position: relative;
  margin-bottom: 6px !important;
  top: 41px; }

/* Distance scaler */
.leaflet-control-scale {
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin: 0 !important;
  margin-left: 7px !important;
  float: right !important;
  top: 0 !important;
  bottom: auto;
  float: none;
  padding-right: 0;
  margin-right: 0; }

.leaflet-control-scale.leaflet-control {
  float: left;
  bottom: -2px; }

.toggle-scale {
  right: 260px !important; }

/* Mouse position */
.leaflet-container .leaflet-control-mouseposition {
  background-color: rgba(255, 255, 255, 0.7);
  padding: 0 5px;
  margin: 0;
  color: #333;
  font: 11px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  /*margin-right: 1px;*/
  /*margin-top: 2px;*/
  /*margin-left: 1px;*/
  /*margin-bottom: 1px;	*/
  /*float: none;*/
  /*position: relative;*/
  display: inline-block;
  margin: 0 !important;
  /*margin-bottom: 0 !important;*/
  position: relative;
  vertical-align: top;
  top: 0 !important;
  bottom: auto;
  float: none; }

/* scaler */
.leaflet-control-scale-line {
  background-color: rgba(255, 255, 255, 0.7);
  display: inline-block;
  vertical-align: top;
  border: 0px !important;
  margin-right: 2px;
  height: 13px; }

.leaflet-control-scale-line:not(:first-child) {
  border: 0px;
  margin-top: 0px;
  position: relative;
  top: 0px; }

/*
┬  ┌─┐┌─┐┌─┐┬  ┌─┐┌┬┐  ┌─┐┬─┐┌─┐┌┬┐┬┌┬┐┌─┐
│  ├┤ ├─┤├┤ │  ├┤  │   │  ├┬┘├┤  │││ │ └─┐
┴─┘└─┘┴ ┴└  ┴─┘└─┘ ┴   └─┘┴└─└─┘─┴┘┴ ┴ └─┘
*/
.leaflet-control-attribution {
  top: 63px;
  position: relative;
  bottom: 5px;
  left: 4px;
  top: auto;
  min-height: 17px;
  width: auto;
  padding: 0 7px 0 7px;
  font-style: normal;
  font-weight: 900;
  text-indent: 7px; }

.leaflet-control-attribution a {
  font-weight: 900; }

.leaflet-control-attribution a:hover {
  text-decoration: none; }

.systemapic-attribution-logo img {
  padding-top: 4px;
  padding-bottom: 4px; }

/*
┬  ┌─┐┌─┐┌─┐┬  ┌─┐┌┬┐  ┬┌┐┌┌─┐┌─┐  ┌─┐┬  ┬ ┬┌─┐  ┌─┐┌─┐┌─┐┌┬┐   ┬   ┌┬┐┬─┐┌─┐┬ ┬  ┌┬┐┌─┐┌─┐┬  ┌─┐
│  ├┤ ├─┤├┤ │  ├┤  │   ││││├┤ │ │  ├─┘│  │ │└─┐  ┌─┘│ ││ ││││  ┌┼─   ││├┬┘├─┤│││   │ │ ││ ││  └─┐
┴─┘└─┘┴ ┴└  ┴─┘└─┘ ┴   ┴┘└┘└  └─┘  ┴  ┴─┘└─┘└─┘  └─┘└─┘└─┘┴ ┴  └┘   ─┴┘┴└─┴ ┴└┴┘   ┴ └─┘└─┘┴─┘└─┘
*/
/* Leaflet Info + : outer wrapper */
.leaflet-top.leaflet-left {
  height: 100%;
  text-align: right;
  position: relative;
  float: left;
  margin-top: 32px;
  left: 3px;
  z-index: 1200; }

/* Wrapper vertical controls (zoom, draw, style edit) */
.leaflet-bar {
  border-radius: 0;
  padding-left: 0 !important;
  border: none;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.3) !important; }

.leaflet-bar a,
.leaflet-control-baselayertoggle {
  background-color: white;
  cursor: pointer; }

.leaflet-bar a:hover {
  background-color: white; }

/*.leaflet-bar a:hover,*/
.leaflet-control-baselayertoggle:hover {
  background-color: #f4f4f4; }

/* Description box, zoom controls, style editor */
.leaflet-left .leaflet-control {
  padding-left: 0;
  margin-left: 3px;
  max-height: 70%;
  height: auto; }

/*
┌─┐┌─┐┌─┐┌┬┐   ┌┬┐┬─┐┌─┐┬ ┬   ┌─┐┌┬┐┌─┐  ┌─┐┌─┐┌┐┌┌┬┐┬─┐┌─┐┬  ┌─┐
┌─┘│ ││ ││││    ││├┬┘├─┤│││   ├┤  │ │    │  │ ││││ │ ├┬┘│ ││  └─┐
└─┘└─┘└─┘┴ ┴┘  ─┴┘┴└─┴ ┴└┴┘┘  └─┘ ┴ └─┘  └─┘└─┘┘└┘ ┴ ┴└─└─┘┴─┘└─┘
*/
.leaflet-control-zoom,
.leaflet-draw,
.leaflet-control-styleeditor,
.leaflet-control-baselayertoggle {
  float: left; }

/* Make square corners */
.leaflet-bar a:first-child,
.leaflet-bar a:last-child,
.leaflet-control-styleeditor-interior {
  /*border-radius: 0px !important;*/ }

.leaflet-control-styleeditor-interior {
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: 2px -271px;
  background-color: white;
  margin-left: -3px;
  width: 25px;
  height: 25px;
  cursor: pointer;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3) !important; }

.leaflet-control-styleeditor-interior.enabled {
  background-color: #CCFFFF; }

.enabled:hover {
  background-color: #CCFFFF; }

/* Disable font color to use bg-image instead */
.leaflet-control-zoom-out,
.leaflet-control-zoom-in {
  color: transparent !important;
  width: 26px !important;
  height: 26px !important; }

/*
┌┐ ┌─┐┌─┐┌─┐┬  ┌─┐┬ ┬┌─┐┬─┐  ┌┬┐┌─┐┌─┐┌─┐┬  ┌─┐
├┴┐├─┤└─┐├┤ │  ├─┤└┬┘├┤ ├┬┘   │ │ ││ ┬│ ┬│  ├┤ 
└─┘┴ ┴└─┘└─┘┴─┘┴ ┴ ┴ └─┘┴└─   ┴ └─┘└─┘└─┘┴─┘└─┘
*/
.leaflet-control-baselayertoggle {
  height: 26px !important;
  width: 26px !important;
  background-position: 4px 4px;
  background-repeat: no-repeat;
  display: block;
  padding: 3px;
  -moz-border-radius: 4px;
  text-align: center;
  background-color: transparent !important;
  width: auto !important; }

.leaflet-control-baselayertoggle:after {
  content: '';
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -145px -75px;
  height: 26px !important;
  width: 26px !important;
  position: absolute;
  top: 0;
  left: 0;
  box-shadow: 0 0px 5px rgba(0, 0, 0, 0.3); }

.leaflet-control-baselayertoggle:hover:after {
  background-position: -99px -75px; }

.leaflet-control-baselayertoggle:after {
  background-color: white; }

.leaflet-control-baselayertoggle.open:after {
  background-color: #e5e5e5; }

.baselayertoggle-item {
  width: auto;
  background: white;
  height: 25px;
  font-size: 120%;
  text-align: left;
  padding-left: 5px;
  cursor: pointer;
  padding: 0px 5px 0px 5px;
  line-height: 1.5;
  border-left: 6px solid white;
  border-right: 6px solid white;
  border-top: 1px solid white;
  border-bottom: 1px solid white;
  box-shadow: 2px 3px 5px -2px rgba(0, 0, 0, 0.3);
  background-color: #FAFAFA;
  overflow: hidden; }

.baselayertoggle-item:first-child {
  border-top: 6px solid white;
  height: 29px; }

.baselayertoggle-item:last-child {
  border-bottom: 6px solid white;
  height: 29px; }

.baselayertoggle-item:only-child {
  height: 34px; }

.baselayertoggle-item:hover {
  background: #DADADA; }

.baselayertoggle-item.active {
  background: cadetblue;
  color: white; }

.baselayertoggle-list {
  position: relative;
  left: 21px;
  top: -18px;
  position: relative;
  padding: 10px;
  width: auto;
  border-radius: 2px;
  padding-left: 15px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: none; }

.leaflet-control-baselayertoggle.open > .baselayertoggle-list {
  display: block; }

.baselayertoggle-list:before {
  content: '';
  background-color: white;
  width: 14px;
  height: 14px;
  position: absolute;
  top: 20px;
  left: 8px;
  z-index: -1; }

/*
┬  ┌─┐┌─┐┌─┐┬  ┌─┐┌┬┐  ┌┬┐┬─┐┌─┐┬ ┬
│  ├┤ ├─┤├┤ │  ├┤  │    ││├┬┘├─┤│││
┴─┘└─┘┴ ┴└  ┴─┘└─┘ ┴   ─┴┘┴└─┴ ┴└┴┘
*/
.leaflet-draw-section-button {
  width: 26px;
  height: 26px;
  background-color: white;
  margin-bottom: 3px;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  cursor: pointer; }

.leaflet-draw-section-button:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 26px;
  height: 26px;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -99px -106px;
  opacity: 0.75; }

.leaflet-draw-section-button:hover:before {
  opacity: 1; }

.leaflet-draw-section:first-child {
  margin-top: 6px; }

.leaflet-draw-section-wrapper {
  height: 0px;
  overflow: hidden;
  padding: 3px;
  position: relative;
  left: -3px;
  overflow: hidden;
  width: 34px; }

.draw-expander {
  height: 142px;
  overflow: visible; }

.open-drawer {
  background-color: #e5e5e5; }

/*
┌┬┐┌─┐┌─┐┬ ┌┬┐┬┌─┐
 │ │ ││ ││  │ │├─┘
 ┴ └─┘└─┘┴─┘┴ ┴┴  
 */
.leaflet-popup {
  -webkit-transition: opacity none;
  -moz-transition: opacity none;
  -ms-transition: opacity none;
  -o-transition: opacity none;
  transition: opacity none;
  z-index: 99999; }

.leaflet-popup-content-wrapper {
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  font-size: 120%;
  font-weight: 400;
  overflow: hidden;
  background: white;
  border-radius: 0;
  color: black;
  margin: 0 !important;
  padding: 0 !important; }

.leaflet-popup-content hr {
  margin: 7px 0px;
  border-top: 1px solid white; }

.leaflet-popup-scrolled {
  padding-right: 40px;
  border: 0; }

.leaflet-popup-tip {
  margin: -11px auto 0;
  background: white;
  left: -1px;
  position: relative; }

.leaflet-popup-tip-container {
  position: relative;
  top: 0px;
  height: 27px;
  visibility: hidden; }

/*
██╗     ███████╗ ██████╗ ███████╗███╗   ██╗██████╗ ███████╗
██║     ██╔════╝██╔════╝ ██╔════╝████╗  ██║██╔══██╗██╔════╝
██║     █████╗  ██║  ███╗█████╗  ██╔██╗ ██║██║  ██║███████╗
██║     ██╔══╝  ██║   ██║██╔══╝  ██║╚██╗██║██║  ██║╚════██║
███████╗███████╗╚██████╔╝███████╗██║ ╚████║██████╔╝███████║
╚══════╝╚══════╝ ╚═════╝ ╚══════╝╚═╝  ╚═══╝╚═════╝ ╚══════╝
*/
/* outer wrapper */
.leaflet-bottom.leaflet-left {
  width: auto; }

/* outer wrapper 2 */
.leaflet-control-legends {
  bottom: -3px;
  position: relative;
  float: left;
  left: 5px;
  width: auto;
  max-width: 100%;
  max-height: 200px; }

/* inner wrapper */
.legends-control-inner-content {
  bottom: 0px;
  padding-left: 0;
  width: auto;
  max-width: 100%;
  display: block;
  cursor: default; }

/* inner wrapper 2 */
.legends-inner {
  overflow: hidden;
  position: relative;
  width: auto;
  max-width: 100%;
  left: 3px;
  background: none;
  box-shadow: none; }

/* legends close button (litte arrow) */
.legends-collapser {
  background-position: -26px 8px;
  background-color: transparent;
  top: -3px;
  cursor: pointer;
  position: relative;
  margin: auto;
  left: 0;
  display: none; }

/* legends scroll left */
.legends-scroll-left {
  width: 20px;
  height: 13px;
  position: absolute;
  top: 2px;
  left: 2px;
  cursor: pointer;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -26px -168px;
  opacity: 0.5; }

/* legends scroll right */
.legends-scroll-right {
  width: 20px;
  height: 13px;
  position: absolute;
  top: 2px;
  right: 2px;
  cursor: pointer;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: 2px -168px;
  opacity: 0.5; }

.legends-scroll-left:hover,
.legends-scroll-right:hover {
  opacity: 1; }

/* open closed legends */
.legends-opener {
  text-align: center;
  background: white;
  line-height: 2;
  font-weight: 600;
  cursor: pointer;
  position: absolute;
  z-index: 999999999999;
  height: 24px;
  width: 150px;
  opacity: 0;
  margin-left: 4px; }

.legends-inner-slider {
  position: relative;
  left: 0px; }

/* Actual legend */
.legends-item {
  overflow: hidden;
  display: inline-block;
  text-align: left;
  padding-top: 0px;
  border-right: 1px dashed #C8C8C8;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans" !important;
  vertical-align: bottom;
  padding: 0 5px 0 5px;
  margin-top: 0px;
  border: none; }

.legends-item:last-child {
  border-right: none; }

.legend-header {
  font-size: 18px;
  top: 5px;
  left: 0px;
  color: black;
  -webkit-text-fill-color: white;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: black;
  font-weight: 900; }

.legend-list {
  margin-top: 5px;
  margin-bottom: 5px;
  background-color: rgba(255, 255, 255, 0.44);
  border-radius: 1px;
  padding: 3px; }

.legend-each {
  display: inline-block;
  vertical-align: top;
  position: relative;
  margin-bottom: 3px;
  margin-top: 3px;
  width: 200px; }

.legend-feature {
  width: 21px;
  height: 20px;
  position: absolute;
  display: inline-block;
  vertical-align: top;
  top: -2px;
  overflow: hidden;
  border: 0px solid white;
  padding-left: 2px;
  padding-top: 2px; }

.legend-feature:before {
  content: '';
  width: 21px;
  height: 20px;
  position: absolute;
  background: white;
  top: 2px;
  left: 2px; }

.legend-feature div {
  position: relative; }

.legend-feature .rect {
  width: 100%;
  height: 12px;
  background: blue;
  top: 3px; }

.legend-feature .line {
  background: blue;
  height: 3px;
  top: 8px; }

.legend-feature .dot {
  width: 14px;
  height: 14px;
  background: blue;
  border-radius: 10px;
  top: 2px;
  left: 3px; }

.legend-feature-name {
  display: inline-block;
  vertical-align: top;
  position: relative;
  left: 25px;
  padding-right: 28px;
  line-height: 1.2;
  word-break: break-word;
  max-width: 170px;
  font-size: 14px;
  font-weight: 500; }

.legend-source {
  font-size: 11px;
  font-style: italic;
  color: #666; }

/* LEGEND */
.legends-item img {
  max-height: 50px; }

.legend-title {
  font-weight: 900; }

.legend-scale ul {
  list-style-type: none;
  padding: 0;
  margin: 0; }

.legend-scale ul li {
  display: inline-block;
  position: relative;
  vertical-align: top;
  margin-right: 10px; }

.legend-scale ul li span {
  width: 20px;
  height: 10px;
  box-shadow: 0 0 0 1px gray inset;
  position: relative;
  display: inline-block;
  margin-right: 5px; }

.legend-scale ul li a {
  line-height: 0.8; }

/*
██████╗ ███████╗███████╗ ██████╗██████╗ ██╗██████╗ ████████╗██╗ ██████╗ ███╗   ██╗    ██████╗  ██████╗ ██╗  ██╗
██╔══██╗██╔════╝██╔════╝██╔════╝██╔══██╗██║██╔══██╗╚══██╔══╝██║██╔═══██╗████╗  ██║    ██╔══██╗██╔═══██╗╚██╗██╔╝
██║  ██║█████╗  ███████╗██║     ██████╔╝██║██████╔╝   ██║   ██║██║   ██║██╔██╗ ██║    ██████╔╝██║   ██║ ╚███╔╝ 
██║  ██║██╔══╝  ╚════██║██║     ██╔══██╗██║██╔═══╝    ██║   ██║██║   ██║██║╚██╗██║    ██╔══██╗██║   ██║ ██╔██╗ 
██████╔╝███████╗███████║╚██████╗██║  ██║██║██║        ██║   ██║╚██████╔╝██║ ╚████║    ██████╔╝╚██████╔╝██╔╝ ██╗
╚═════╝ ╚══════╝╚══════╝ ╚═════╝╚═╝  ╚═╝╚═╝╚═╝        ╚═╝   ╚═╝ ╚═════╝ ╚═╝  ╚═══╝    ╚═════╝  ╚═════╝ ╚═╝  ╚═╝
*/
/* MENUCOLLAPSER */
/* Leaflet description outer wrapper */
.leaflet-control-description {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 2;
  height: auto;
  padding: 0;
  width: 290px;
  float: none !important;
  margin-bottom: 19px;
  top: auto !important;
  bottom: 0 !important;
  position: absolute !important;
  left: 0px; }

.description-control-content {
  bottom: 0;
  top: auto; }

.leaflet-control-description.leaflet-control {
  display: block;
  top: auto;
  bottom: 0;
  position: absolute; }

.description-control-inner-content {
  box-shadow: none; }

.description-control-inner-content-box,
.menucollapser {
  background: white; }

/* Leaflet description Header wrapper */
.description-control-content {
  height: 100%;
  overflow: hidden;
  top: 0px;
  position: relative;
  box-shadow: none; }

.description-control-header-toggle {
  position: absolute;
  width: 20px;
  height: 20px;
  overflow: hidden;
  cursor: pointer;
  opacity: 0.5;
  right: 6px;
  top: 9px; }

.description-control-header-toggle:hover {
  opacity: 1; }

.description-control-header-toggle:before {
  content: '';
  background: black;
  position: absolute;
  width: 20px;
  height: 20px;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  top: -17px; }

.description-control-header-toggle.legend-toggle-open {
  top: -3px;
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg); }

.description-toggle-button:hover {
  opacity: 1 !important; }

/* Description inner wrapper */
.description-control-content-box {
  height: 100%;
  font-size: 100%;
  text-align: left;
  padding: 15px;
  padding-top: 3px;
  color: black;
  font-weight: 500;
  overflow-y: scroll;
  overflow-x: hidden;
  max-height: 500px;
  /* OBS! Event listener for this */
  padding-top: 10px;
  box-shadow: none;
  width: 245px;
  background: white;
  position: relative; }

.description-control-header-section {
  padding-bottom: 0; }

.description-control-header-section.minimized {
  padding-bottom: 5px; }

.description-control-header-title {
  font-size: 15px;
  text-transform: uppercase;
  font-weight: 900;
  position: relative; }

.description-control-header-title.minimized {
  font-size: 12px;
  top: 0px;
  padding-bottom: 5px;
  border-bottom: 1px solid black; }

.description-control-description {
  border-top: 0;
  border-bottom: 1px solid #999;
  padding-top: 5px;
  padding-bottom: 4px;
  margin-top: 0px;
  margin-bottom: 14px;
  line-height: 1.3;
  display: none; }

.description-control-meta-container {
  font-size: 11px;
  line-height: 1.5; }

.legends-meta-line {
  border-bottom: 1px solid #BBB; }

.legends-meta-key {
  display: inline-block;
  vertical-align: top;
  width: 49%;
  color: #666;
  text-indent: 2px;
  overflow: hidden; }

.legend-meta-valye {
  display: inline-block;
  vertical-align: top;
  width: 49%;
  text-indent: 5px;
  overflow: hidden; }

.description-control-content-box a {
  font-weight: 900; }

.description-control-content-box h1 {
  font-size: 25px;
  margin: 10px 0px 10px 0px; }

.description-control-content-box h2 {
  font-size: 16px;
  margin: 15px 0px 5px 0px; }

.description-control-content-box hr {
  border-top: 1px solid black; }

/* Description inner scroller */
.description-scroller {
  width: 258px;
  padding-bottom: 10px;
  margin-top: 10px;
  cursor: pointer; }

.info-legend-frame {
  border: 1px solid #666;
  height: 24px;
  padding: 1px;
  margin-top: 18px;
  position: relative; }

.info-legend-frame.snow-raster {
  border: none; }

.info-legend-gradient-container {
  width: 100%;
  height: 100%; }

.info-legend-val {
  position: absolute;
  font-size: 10px;
  top: -15px; }

.info-legend-min-val {
  left: -5px; }

.info-legend-med-val {
  width: 100%;
  text-align: center; }

.info-legend-max-val {
  right: 0; }

.description-control-legend-container {
  position: relative;
  margin-top: 26px; }

.description-control-legend-container.minimized {
  margin-top: 0; }

.info-legend-gradient-bottomline {
  font-size: 10px;
  color: #666;
  position: relative;
  left: -2px;
  top: 1px;
  font-weight: 600;
  height: 6px; }

/* When editin description box */
.description-editing {
  background-color: transparent !important;
  cursor: text; }

/*
██╗      █████╗ ██╗   ██╗███████╗██████╗     ███╗   ███╗███████╗███╗   ██╗██╗   ██╗
██║     ██╔══██╗╚██╗ ██╔╝██╔════╝██╔══██╗    ████╗ ████║██╔════╝████╗  ██║██║   ██║
██║     ███████║ ╚████╔╝ █████╗  ██████╔╝    ██╔████╔██║█████╗  ██╔██╗ ██║██║   ██║
██║     ██╔══██║  ╚██╔╝  ██╔══╝  ██╔══██╗    ██║╚██╔╝██║██╔══╝  ██║╚██╗██║██║   ██║
███████╗██║  ██║   ██║   ███████╗██║  ██║    ██║ ╚═╝ ██║███████╗██║ ╚████║╚██████╔╝
╚══════╝╚═╝  ╚═╝   ╚═╝   ╚══════╝╚═╝  ╚═╝    ╚═╝     ╚═╝╚══════╝╚═╝  ╚═══╝ ╚═════╝ 
*/
/* leaflet container */
.leaflet-bottom.leaflet-right {
  padding-top: 5px;
  overflow: visible;
  margin: 0;
  height: 100%;
  position: relative;
  float: right;
  top: 0px;
  right: 1px;
  padding-top: 90px;
  margin-top: 0;
  z-index: 100;
  width: 256px;
  padding-bottom: 28px;
  margin-top: 0px;
  padding-top: 5px; }

/* Layer menu outer wrapper */
.leaflet-control-layermenu {
  width: 100%;
  right: 0;
  margin: 0 !important;
  overflow: hidden;
  height: 100%;
  max-height: 100%;
  position: relative;
  float: none !important;
  box-shadow: none !important;
  margin-bottom: 6px !important;
  top: 38px; }

.leaflet-control-layermenu.closed {
  display: none !important; }

.leaflet-control-layermenu.leaflet-control {
  padding: 0;
  position: absolute;
  right: 0;
  height: auto;
  overflow: visible;
  /*	-webkit-transition: height 250ms ease;
	-moz-transition: height 250ms ease;
	-ms-transition: height 250ms ease;
	-o-transition: height 250ms ease;
	transition: height 250ms ease;	*/ }

/* Layer menu scroller frame */
.leaflet-control-layermenu .scroller-frame {
  overflow-x: hidden;
  overflow-y: scroll;
  position: absolute;
  left: 2px;
  height: auto;
  padding: 0; }

/* Layer menu innser frame */
.leaflet-control-layermenu .scroller-frame .inner-scroller {
  /*width: 320px;*/
  min-height: auto;
  padding-left: 5px;
  padding-right: 5px;
  left: -5px;
  width: 250px; }

#layer-menu-header {
  overflow: hidden;
  margin-top: 2px !important;
  width: 280px;
  top: 0px;
  left: 5px;
  position: relative; }

/* Layer menu title */
.layer-menu-header-title {
  width: 280px;
  font-size: 120%;
  font-weight: 500;
  cursor: default; }

/* Layer menu collapse button */
#bhattan1 {
  /*	position: absolute;
	cursor: pointer;
	background-position: -26px 8px;
	background-color: transparent;
	opacity: 0.5 !important;
	left: auto;
	right: 2px;
	top: 5px;*/
  display: none; }

/*#bhattan1:hover {
	opacity: 1 !important;
	}	*/
/* The Layer List container */
#layer-menu-inner-content {
  /*height: 100%;*/
  /*background: rgba(255, 255, 255, 0.9);*/
  /*padding: 4px;*/
  /*position: relative;*/
  /*padding-bottom: 5px;*/
  /*padding-top: 5px;	*/
  /*width: 280px;*/
  /*box-shadow: 0 0 5px rgba(0,0,0,0.3);*/
  /*left: -2px;*/
  height: 100%;
  background: white;
  box-shadow: none;
  position: relative;
  /*width: 280px;*/
  left: -2px;
  padding: 7px;
  width: 246px; }

/* Each layer wrap: Universal => on every layer menu item */
.layer-menu-item-wrap {
  cursor: pointer;
  overflow: hidden;
  margin: 0;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  z-index: 100;
  position: relative;
  padding: 0;
  text-shadow: none;
  color: white;
  margin-bottom: 1px;
  color: #454545;
  font-weight: 500;
  font-size: 13px;
  /*background-color: #EEEEEE !important;	*/
  background-color: white !important; }

.layer-menu-item-wrap:hover {
  background-color: #EEEEEE !important; }

/* Layer Folder color coding */
.layer-menu-item-wrap.menufolder,
.layer-menu-item-wrap.menufolder:hover {
  font-weight: 900;
  background-image: none !important;
  background-color: #3C4759 !important;
  color: white !important;
  background-size: 25px;
  background-position: 2% 50%;
  background-repeat: no-repeat; }

.layer-active {
  font-weight: 500 !important;
  color: black !important; }

.layer-active .layer-menu-item::after {
  content: '';
  background: #089688;
  width: 10px;
  height: 10px;
  position: absolute;
  border-radius: 12px;
  left: 6px;
  padding-right: 10px;
  opacity: 100;
  top: 8px; }

.layer-active .layer-menu-flyto {
  position: absolute;
  right: 0;
  width: 21px;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -281px -44px;
  display: none;
  opacity: 0.7;
  height: 21px; }

.layer-active:hover .layer-menu-flyto {
  display: block; }

.layer-menu-flyto:hover {
  opacity: 1; }

/* Layer item closed */
.layeritem-closed {
  height: 0px !important;
  margin-bottom: 0 !important; }

/*Layer menu item inner wrapper */
.layer-menu-item {
  height: 100%;
  padding: 5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 2222;
  line-height: 1.3 !important;
  text-align: left;
  width: 90%;
  padding-left: 20px; }

.layer-menu-item input {
  padding: 0;
  background-color: transparent;
  color: black; }

.menufolder input {
  color: white !important;
  background-color: #3c4757;
  position: relative;
  top: 0px;
  left: 0px;
  line-height: 1.3;
  font-size: 13px;
  font-weight: 900; }

/* layermenu dragging etc */
.dragged-ghost {
  background: red;
  cursor: -webkit-grabbing !important; }

/* Closed layer */
.layer-closed {
  height: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important; }

/* Indent levels */
.level-0 {
  margin-left: 0px; }

.level-1 {
  margin-left: 7px !important; }

.level-2 {
  margin-left: 14px !important; }

.level-3 {
  margin-left: 21px !important; }

.level-4 {
  margin-left: 28px !important; }

/* Open layer menu */
#open-layers {
  display: none;
  top: 5px; }

/*
┬  ┌─┐┬ ┬┌─┐┬─┐  ┌┬┐┌─┐┌┐┌┬ ┬  ┌─┐┌┬┐┬┌┬┐  ┌┬┐┌─┐┌┬┐┌─┐
│  ├─┤└┬┘├┤ ├┬┘  │││├┤ ││││ │  ├┤  │││ │   ││││ │ ││├┤ 
┴─┘┴ ┴ ┴ └─┘┴└─  ┴ ┴└─┘┘└┘└─┘  └─┘─┴┘┴ ┴   ┴ ┴└─┘─┴┘└─┘
*/
/* For making folders on map layer selector */
.middle-item {
  margin: auto;
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
  color: #666;
  text-transform: uppercase;
  font-weight: 600;
  line-height: 2.4;
  background: white;
  box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.3);
  width: 226px; }

.middle-item:after {
  content: '';
  position: absolute;
  top: -10px;
  background-color: rgba(255, 255, 255, 0.97);
  height: 50px;
  z-index: -2;
  left: -10px;
  width: 246px; }

/* Show Left/Right/Delete buttons on layers when editing the Layer menu */
.edit-mode .scroller-frame .inner-scroller #layer-menu-inner-content .layer-menu-item-wrap:hover > .layer-item-up,
.edit-mode .scroller-frame .inner-scroller #layer-menu-inner-content .layer-menu-item-wrap:hover > .layer-item-down,
.edit-mode .scroller-frame .inner-scroller #layer-menu-inner-content .layer-menu-item-wrap:hover > .layer-item-delete {
  display: block; }

.edit-mode .scroller-frame .inner-scroller #layer-menu-inner-content {
  padding-bottom: 5px; }

.enable-edit-mode .scroller-frame {
  padding-top: 34px; }

.edit-mode .scroller-frame {
  /*padding-top: 44px;*/ }

.layer-item-delete,
.layer-item-down,
.layer-item-up {
  z-index: 999;
  height: 23px;
  background-color: white;
  opacity: 1;
  display: none; }

.layer-item-up {
  width: 18px;
  background-color: rgba(255, 255, 255, 0.8);
  position: absolute;
  right: 1px;
  padding: 0px 0px 0px 2px;
  font-size: 160%;
  color: transparent;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  top: 1px;
  background-position: 7px -74px;
  height: 24px;
  margin: auto; }

.layer-item-down {
  width: 18px;
  background-color: rgba(255, 255, 255, 0.8);
  position: absolute;
  right: 20px;
  padding: 0px 0px 0px 2px;
  font-size: 160%;
  color: transparent;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  top: 1px;
  height: 24px;
  background-position: -28px -74px; }

.layer-item-up:hover,
.layer-item-down:hover {
  background-color: white; }

.layer-item-delete {
  background: white;
  position: absolute;
  right: 39px;
  padding: 0px 0px 0px 2px;
  font-size: 160%;
  color: transparent;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  top: 1px;
  border-radius: 0px;
  opacity: 0.8;
  height: 24px;
  background-position: 2px -40px;
  width: 20px; }

.layer-item-delete:hover {
  opacity: 1; }

/* Layer menu folders delete */
.layer-menufolder-delete {
  width: 20px;
  height: 100%;
  background: gray;
  position: absolute;
  right: 0px;
  padding: 0px 0px 0px 2px;
  font-size: 160%; }

/* Folder, up */
.layer-menufolder-up {
  width: 20px;
  height: 100%;
  background: red;
  position: absolute;
  left: 0px;
  padding: 0px 0px 0px 2px;
  font-size: 160%; }

/* Folder, down */
.layer-menufolder-down {
  width: 20px;
  height: 100%;
  background: purple;
  position: absolute;
  left: 20px;
  padding: 0px 0px 0px 2px;
  font-size: 160%; }

/*
██╗      █████╗ ██╗   ██╗███████╗██████╗     ██╗███╗   ██╗███████╗██████╗ ███████╗ ██████╗████████╗ ██████╗ ██████╗ 
██║     ██╔══██╗╚██╗ ██╔╝██╔════╝██╔══██╗    ██║████╗  ██║██╔════╝██╔══██╗██╔════╝██╔════╝╚══██╔══╝██╔═══██╗██╔══██╗
██║     ███████║ ╚████╔╝ █████╗  ██████╔╝    ██║██╔██╗ ██║███████╗██████╔╝█████╗  ██║        ██║   ██║   ██║██████╔╝
██║     ██╔══██║  ╚██╔╝  ██╔══╝  ██╔══██╗    ██║██║╚██╗██║╚════██║██╔═══╝ ██╔══╝  ██║        ██║   ██║   ██║██╔══██╗
███████╗██║  ██║   ██║   ███████╗██║  ██║    ██║██║ ╚████║███████║██║     ███████╗╚██████╗   ██║   ╚██████╔╝██║  ██║
╚══════╝╚═╝  ╚═╝   ╚═╝   ╚══════╝╚═╝  ╚═╝    ╚═╝╚═╝  ╚═══╝╚══════╝╚═╝     ╚══════╝ ╚═════╝   ╚═╝    ╚═════╝ ╚═╝  ╚═╝
*/
/* outer wrapper */
.leaflet-control-inspect {
  width: 100%;
  max-height: 187px;
  height: auto;
  background-color: transparent !important;
  float: none !important;
  left: 0;
  margin-top: 0px;
  margin-bottom: 0px !important;
  position: absolute;
  bottom: 5px;
  top: auto; }

/* Inner wrapper */
.inspect-control-inner-content {
  background: rgba(255, 255, 255, 0.9);
  padding-bottom: 1px;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  display: none;
  overflow: hidden; }

.inspect-control-inner-content .menucollapser {
  background: none !important; }

/* header */
.inspector-header {
  position: relative;
  right: 0;
  top: 0 !important;
  overflow: hidden;
  box-shadow: none; }

/* Outer scroller */
.inspector-list-outer-scroller {
  width: 280px;
  overflow: hidden; }

/* Inner wrapper */
.inspector-list {
  max-height: 160px;
  height: auto;
  padding-top: 10px;
  padding-bottom: 1px;
  padding: 0;
  top: 0;
  overflow-y: scroll;
  overflow-x: hidden;
  width: 320px; }

/* Layer to inspect */
.inspect-layer {
  width: 270px;
  position: relative;
  height: 25px;
  margin: 3px 0px 0px 5px;
  top: 0px;
  background: white;
  padding-right: 10px;
  box-shadow: none;
  border: 1px solid rgba(128, 128, 128, 0.17); }

.inspect-layer.dragging {
  background: #92f0e5 !important;
  cursor: -webkit-grabbing !important;
  cursor: -moz-grabbing !important; }

.inspect-layer:hover {
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.5); }

.inspect-layer:first-child {
  margin-top: 10px; }

.inspect-layer:last-child {
  margin-bottom: 10px; }

/* Up/down arrow wrapper */
.inspect-arrows-wrap {
  position: absolute;
  width: 20px;
  height: 100%; }

/* Up arrow */
.inspect-arrow-up {
  position: absolute;
  height: 50%;
  top: 0px;
  width: 20px;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: 6px -9px;
  cursor: pointer; }

.inspect-arrow-up:hover {
  background-position: -24px -9px; }

/* Down arrow */
.inspect-arrow-down {
  position: absolute;
  height: 50%;
  bottom: 0px;
  width: 20px;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: 6px 2px;
  cursor: pointer; }

.inspect-arrow-down:hover {
  background-position: -24px 2px; }

/* Layer name */
.inspect-text {
  color: black;
  cursor: pointer;
  padding-left: 25px;
  font-size: 115%;
  line-height: 1.85;
  width: 100%;
  padding-right: 50px;
  overflow: hidden;
  height: 25px;
  word-break: break-all; }

.inspect-text:active {
  cursor: -webkit-grab !important;
  cursor: -moz-grab !important; }

/* Eye */
.inspect-eye {
  position: absolute;
  right: 25px;
  height: 100%;
  width: 25px;
  background-image: url(../images/evil_sprite.png);
  top: 0px;
  background-repeat: no-repeat;
  background-position: -124px -43px;
  cursor: pointer;
  right: 22px; }

.inspect-eye:hover {
  background-position: -94px -43px; }

.inspect-eye.inspecting {
  background-position: -210px -43px; }

/* Fly */
.inspect-fly {
  width: 20px;
  height: 20px;
  z-index: 99999;
  position: absolute;
  top: 3px;
  right: 42px;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -278px -47px;
  cursor: pointer;
  opacity: 0.7; }

.inspect-fly:hover {
  opacity: 1; }

/* Remove layer */
.inspect-kill {
  position: absolute;
  right: 0px;
  top: 0px;
  height: 100%;
  width: 25px;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: 4px -40px;
  opacity: 0.5;
  cursor: pointer; }

.inspect-kill:hover {
  opacity: 1; }

.inspecting {
  background-color: white; }

/* STYLE EDITOR */
/* The tooltip that appears when you click the button to activate the style editor */
.leaflet-styleeditor-mouseTooltip {
  z-index: 999999;
  width: 130px;
  color: white;
  font-weight: 500;
  background-color: rgba(68, 68, 68, 0.7);
  padding: 7px 8px 3px 8px; }

/* Outer Wrapper */
.leaflet-styleeditor {
  position: absolute;
  right: -14px;
  z-index: 1000;
  height: 100%;
  background: transparent;
  top: 0;
  margin: 0;
  margin-right: 20px;
  padding-top: 91px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 7px;
  box-shadow: none;
  padding-right: 5px;
  padding-left: 5px; }

.leaflet-styleeditor-inner {
  background: white;
  position: relative;
  height: 100%;
  overflow: hidden;
  box-shadow: 0 1px 7px rgba(0, 0, 0, 0.65);
  padding-bottom: 58px; }

/* When the editor is open */
.editor-enabled {
  width: 210px; }

/* Style editor header */
.leaflet-styleeditor-header {
  background: transparent;
  height: 27px;
  position: absolute;
  width: 27px;
  right: 0;
  z-index: 99999;
  width: 25px; }

/* Header buttons */
.leaflet-styleeditor-button {
  padding: 0;
  width: 17px;
  height: 17px;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  border-radius: 0;
  top: 4px;
  background-color: transparent;
  position: absolute;
  cursor: pointer; }

.leaflet-styleeditor-button:hover {
  background-color: transparent; }

/* Close style editor button */
.styleeditor-closeBtn {
  background-position: -27px -43px;
  right: 4px; }

/* Disable "make full size" button */
.styleeditor-inBtn {
  background-position: 4px -9px;
  left: 4px;
  display: none; }

.leaflet-styleeditor-done {
  position: relative;
  bottom: -18px;
  width: 180px;
  text-align: center;
  left: 10px;
  background: rgba(0, 0, 0, 0.2);
  padding: 1px 5px 2px 5px;
  font-weight: 900;
  border-radius: 1px;
  color: #333;
  cursor: pointer;
  height: 28px;
  font-size: 15px; }

.leaflet-styleeditor-done:hover {
  background: rgba(0, 0, 0, 0.3);
  color: #000; }

/* Inner wrapper */
.leaflet-styleeditor-interior {
  width: 220px;
  left: 5px;
  top: 8px;
  height: 100%;
  padding-bottom: 50px; }

/* Labels */
.leaflet-styleeditor-label {
  text-transform: uppercase;
  line-height: 2.2;
  font-weight: 600;
  font-size: 12px; }

/* Color swatches – make square */
.leaflet-styleeditor-color {
  height: 30px; }

/* Input fields for opacity */
.leaflet-styleeditor-input:focus,
.leaflet-styleeditor-select:focus {
  border: 1px solid rgba(0, 0, 0, 0.1) !important; }

/* Style Dasharray */
.leaflet-styleeditor-stroke {
  opacity: 0.6;
  border: none; }

.leaflet-styleeditor-stroke:hover {
  opacity: 1;
  border: none; }

.leaflet-styleeditor-close {
  background-color: rgba(0, 0, 0, 0.7);
  border-left: 1px solid #AAA;
  color: #FFF;
  font: 11px/19px "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  line-height: 28px;
  height: 28px;
  font-weight: 500;
  margin: 0;
  padding: 0;
  position: absolute;
  left: 21px;
  top: 0;
  height: 27px;
  width: 60px;
  border-radius: 0 3px 3px 0;
  padding-right: 12px;
  font-size: 95%;
  cursor: pointer; }

.leaflet-styleeditor-close:hover {
  color: #63b6e5; }

/* Pattern picker */
.leaflet-styleeditor-patternpicker {
  width: 150px; }

.leaflet-styleeditor-pattern {
  width: 68px;
  height: 68px;
  display: inline-block;
  vertical-align: top;
  background-repeat: no-repeat;
  background-position: 0 0;
  margin: 2px;
  border: 2px solid white;
  cursor: pointer;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5); }

.leaflet-styleeditor-pattern:hover {
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.4); }

.leaflet-styleeditor-pattern:active {
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.3); }

/* search-tooltip */
/* search-tooltip */
/* search-tooltip */
.leaflet-control-search {
  border-radius: 0 !important;
  box-shadow: none !important;
  background-color: white !important;
  opacity: 1 !important;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3) !important;
  height: 26px !important;
  font-size: 14px; }

.leaflet-control-search .search-button {
  background: url("../images/search-icon.png") no-repeat 2px -22px !important; }

.leaflet-control-search .search-button:hover {
  background: url("../images/search-icon.png") no-repeat 2px 2px !important; }

.search-tooltip {
  min-width: none !important;
  max-height: none !important;
  background-color: white !important;
  top: 29px !important;
  padding: 5px !important;
  opacity: 0.9 !important; }

.leaflet-control-search .search-tip {
  border-radius: 0 !important; }

.leaflet-control-search .search-tooltip {
  max-width: 500px;
  text-align: left; }

.leaflet-control-search .search-tooltip {
  overflow: hidden; }

.leaflet-control-search .search-input {
  border: none !important;
  height: 20px;
  padding-right: 20px; }

.leaflet-control-search.leaflet-control {
  margin-top: 6px; }

.share-image-download-button {
  border: none !important;
  line-height: 0.6 !important; }

@media screen and (max-width: 780px) {
  .file-copright-wrapper {
    width: 252px; } }

/* SETTINGS */
/* SETTINGS */
/* SETTINGS */
.settings-outer {
  position: relative;
  overflow: hidden;
  height: 0; }

.settings-wrapper {
  position: absolute;
  top: 0px !important; }

.settings-item {
  position: relative;
  height: 40px; }

.settings-item-title {
  position: absolute;
  font-size: 110%;
  left: 10px;
  width: 129px;
  color: #1b1b1b;
  font-weight: 400; }

/*
 ██████╗ █████╗ ██████╗ ████████╗ ██████╗  ██████╗███████╗███████╗
██╔════╝██╔══██╗██╔══██╗╚══██╔══╝██╔═══██╗██╔════╝██╔════╝██╔════╝
██║     ███████║██████╔╝   ██║   ██║   ██║██║     ███████╗███████╗
██║     ██╔══██║██╔══██╗   ██║   ██║   ██║██║     ╚════██║╚════██║
╚██████╗██║  ██║██║  ██║   ██║   ╚██████╔╝╚██████╗███████║███████║
 ╚═════╝╚═╝  ╚═╝╚═╝  ╚═╝   ╚═╝    ╚═════╝  ╚═════╝╚══════╝╚══════╝
 */
/* CartoCSS */
/* CartoCSS */
/* CartoCSS */
.resize-ghost {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999999; }

.leaflet-control-cartocss {
  width: 26px;
  height: 26px !important;
  background-color: white;
  margin-bottom: 3px;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  cursor: pointer;
  position: relative;
  z-index: 222; }

.cartocss-control-resizer {
  width: 6px;
  height: 100%;
  position: absolute;
  z-index: 99999;
  left: 0;
  border-right: 0;
  cursor: ew-resize; }

.cartocss-toolbar-button {
  width: 26px;
  height: 26px !important;
  position: absolute;
  top: 0;
  left: 0;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3) !important; }

.cartocss-toolbar-button:hover:before {
  opacity: 1; }

.cartocss-toolbar-button:before {
  content: '';
  width: 26px;
  height: 26px;
  top: 0;
  left: 0;
  position: absolute;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: 2px -271px;
  opacity: 0.7; }

.cartocss-toolbar-button.open {
  background-color: #e5e5e5; }

.cartocss-toolbar-button:hover {
  /*background-color: #f4f4f4;*/ }

.cartocss-control-container.open {
  width: 400px;
  height: 100%;
  position: absolute;
  right: 6px;
  box-sizing: border-box;
  z-index: 9999999;
  top: 5px;
  padding-bottom: 10px; }

.map-blur .cartocss-control-container {
  display: none !important; }

.cartocss-control-wrapper {
  background-color: white;
  height: 100%;
  padding: 6px;
  position: relative;
  padding-bottom: 122px;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  cursor: default;
  /*pointer-events: all;*/ }

.cartocss-attributes {
  width: 100%;
  height: 33%;
  background: rgba(0, 0, 0, 0.2);
  margin-bottom: 5px;
  margin-top: 5px; }

.cartocss-header-select {
  position: relative;
  bottom: -4px; }

.cartocss-header-attrib {
  position: relative;
  bottom: -4px;
  margin-top: 25px; }

.cartocss-input {
  width: 100%;
  height: 100%;
  border: 1px solid gray !important; }

.cartocss-form-wrapper {
  width: 100%;
  height: 87%;
  top: 0px;
  position: relative;
  padding-right: 2px;
  padding-bottom: 10px; }

.cartocss-layerselector-outer {
  position: absolute;
  margin-top: 5px;
  overflow: hidden;
  padding: 0;
  margin-bottom: 6px;
  top: 31px;
  z-index: 999;
  height: 0px;
  width: 100%;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  width: 100%;
  left: 0;
  padding-left: 6px;
  padding-right: 6px; }

.cartocss-layerselector-outer::-webkit-scrollbar {
  display: none !important; }

.cartocss-layerselector-outer .layer-selector-item-wrap {
  background: rgba(255, 255, 255, 0.9);
  height: 25px;
  padding: 2px;
  padding-left: 5px;
  padding-right: 5px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  z-index: 999;
  position: relative;
  margin: 2px;
  top: 2px;
  margin-bottom: 1px;
  margin-top: 1px; }

.cartocss-layerselector-outer .layer-selector-item-wrap:hover {
  background: white; }

.cartocss-layerselector {
  position: relative;
  background: #B8B8B8;
  padding-bottom: 3px;
  width: 100%; }

.cartocss-update-button {
  background: rgba(0, 0, 0, 0.2);
  width: 289px;
  height: 30px;
  bottom: -8px;
  border-radius: 2px;
  cursor: pointer;
  text-align: center;
  line-height: 1.9;
  font-size: 15px;
  font-weight: 500;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
  margin: auto;
  position: relative; }

.cartocss-update-button:hover {
  background: rgba(0, 0, 0, 0.225); }

.cartocss-update-button:active {
  box-shadow: none;
  background: rgba(0, 0, 0, 0.15); }

.cartocss-style-header {
  font-size: 12px;
  font-weight: 400;
  margin-bottom: 0px;
  position: relative;
  color: #333; }

.cartocss-style-header-layer {
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 5px;
  position: relative;
  top: 0px;
  background: rgba(0, 0, 0, 0.15);
  height: 25px;
  cursor: pointer;
  color: #333;
  line-height: 1.7;
  padding-left: 26px;
  padding-right: 26px;
  overflow: hidden; }

.cartocss-style-header-layer:hover {
  background: rgba(0, 0, 0, 0.2); }

.cartocss-style-header-wrapper {
  margin-top: 1px;
  margin-bottom: 0px;
  text-align: center;
  position: relative;
  left: 30px;
  padding-right: 57px; }

.close-cartocss-editor-x {
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  width: 20px;
  height: 20px;
  border-radius: 0;
  background-position: -27px -43px;
  right: 6px;
  position: absolute;
  top: 9px;
  cursor: pointer;
  background-color: transparent;
  opacity: 0.5;
  z-index: 999; }

.close-cartocss-editor-x:hover {
  opacity: 0.7; }

.sp-picker-container, .sp-palette-container {
  padding-bottom: 6px !important;
  margin: 0 !important;
  padding: 10px;
  border: 0; }

.sp-container {
  border: none; }

.sp-cancel,
.sp-cancel:hover {
  background: rgba(255, 255, 255, 0.5);
  bottom: 6px;
  position: absolute;
  text-shadow: none;
  color: white !important;
  font-weight: 900;
  font-size: 12px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  text-align: center;
  text-decoration: none;
  line-height: 2;
  border: none;
  line-height: 1.5 !important;
  left: 67px !important;
  height: 26px !important;
  width: 59px !important; }

.sp-container button,
.sp-container button:hover {
  background: rgba(255, 255, 255, 0.5);
  border: none;
  position: absolute;
  bottom: 6px;
  right: 9px;
  height: 26px;
  border-radius: 0 2px 2px 0;
  text-shadow: none;
  color: white !important;
  font-weight: 900;
  font-size: 12px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  line-height: 1.45;
  border: none; }

.sp-container button:hover,
.sp-cancel:hover {
  background: rgba(255, 255, 255, 0.6) !important; }

.vt-selected {
  background: #badfdf !important; }

.vt-selected:hover {
  background: #C3E8E8 !important; }

.cartocss-style-dropdown-arrow {
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: 0px 0px;
  width: 13px;
  height: 10px;
  position: absolute;
  top: 10px;
  left: 8px;
  opacity: 0.7; }

.cartocss-style-header-wrapper:hover > .cartocss-style-dropdown-arrow {
  opacity: 1; }

.carrow-flipped {
  background-position: 0px -13px; }

/*codemirror*/
.gutter-syntax-error {
  background-color: #E9C385;
  z-index: 1; }

.cartocss-error-pane {
  border-top: 1px solid #FFAAAA;
  display: none;
  margin-top: 5px;
  position: absolute;
  background: #E9C385;
  color: red;
  height: 25px;
  padding-left: 7px;
  padding-top: 3px;
  left: 7px;
  width: 387px;
  bottom: 60px;
  z-index: 9999; }

.active-error {
  word-wrap: break-word;
  white-space: pre-wrap;
  word-break: normal;
  overflow-y: scroll;
  width: 97.2%;
  height: 29px;
  display: block; }

.cartocss-zoomval {
  position: absolute;
  width: 26px;
  text-align: center;
  top: 7px;
  left: 6px;
  height: 25px;
  line-height: 2.2;
  background: #ECECEC;
  font-size: 11px;
  font-weight: 500; }

.cartocss-tab-wrapper {
  border: 1px solid #ddd;
  border-bottom: none;
  height: 30px; }

.cartocss-tab {
  width: 33%;
  float: left;
  text-align: center;
  height: 29px;
  line-height: 2.2;
  font-size: 13px;
  background: #EEE;
  cursor: pointer; }

.cartocss-tab-tooltip {
  width: 34%; }

.cartocss-tab:hover {
  background: #F6F6F6; }

.cartocss-active-tab {
  background: #FFF; }

.cartocss-active-tab:hover {
  background: #FFF; }

.cartocss-tab-styling {
  border-right: 1px solid #ddd; }

.cartocss-tab-legends {
  border-left: 1px solid #ddd; }

.cartocss-legends-wrapper {
  width: 100%;
  background: #f8f8f8;
  height: 100%;
  border: 1px solid #ddd; }

.cartocss-tooltip-outer-wrapper {
  background: #f8f8f8;
  height: 100%;
  border: 1px solid #ddd;
  padding: 2px;
  padding-top: 5px;
  overflow: hidden; }

.cartocss-tooltip-wrapper {
  overflow-y: scroll;
  overflow-x: hidden;
  height: 100%; }

.cartocss-tooltip-wrapper::-webkit-scrollbar {
  display: none !important; }

.tooltip-field-wrapper .controls-switch {
  top: 4px; }

.tooltip-field-wrapper {
  position: relative;
  padding: 5px;
  background: rgba(0, 0, 0, 0.1);
  margin: 2px 2px 0 2px;
  padding-right: 58px; }

.tooltip-field-key {
  display: inline-block;
  vertical-align: top;
  border: none;
  outline: none;
  padding: 2px;
  padding-left: 5px;
  background: rgba(255, 255, 255, 0.5);
  width: 100%; }

.tooltip-field-value {
  display: inline-block;
  vertical-align: top; }

.cartocss-tooltip-header-container,
.legend-title-wrapper {
  padding-right: 65px;
  position: relative;
  height: 43px;
  margin-bottom: 0px; }

#cartocss-tooltip-custom-header,
.legends-title {
  width: 100%;
  border: 0;
  outline: 0;
  background: rgba(0, 0, 0, 0.1);
  margin: 2px;
  margin-top: 0px;
  padding: 5px;
  font-size: 15px;
  padding-left: 8px;
  margin-left: 2px;
  /*height: 32px;*/
  height: 41px; }

.cartoCSS-tooltip-switch-all-wrapper {
  display: inline-block;
  position: absolute;
  float: right;
  vertical-align: top;
  right: 2px;
  top: 0px;
  width: 55px;
  height: 41px;
  background: rgba(0, 0, 0, 0.05); }

.cartoCSS-tooltip-switch-all-title {
  text-align: center;
  position: relative;
  top: 1px;
  font-size: 10px; }

.cartoCSS-tooltip-switch-all-wrapper .switch.carto-switch-tooltip {
  top: 13px !important; }

.tooltip-title {
  font-size: 18px;
  margin: 0;
  position: relative;
  top: -8px;
  font-weight: 500;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3); }

.tooltip-title-small {
  font-size: 100%;
  border: none;
  font-weight: 600; }

.leaflet-popup-content {
  margin: 0 !important;
  padding: 0 !important; }

/* Legends */
/* Legends */
/* Legends */
/* outer */
.cartocss-legends-wrapper {
  background: #f8f8f8;
  height: 100%;
  border: 1px solid #ddd;
  padding: 2px;
  overflow: hidden; }

/* inner */
.legends-inner-scroller {
  width: 100%;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  overflow-y: scroll;
  overflow-x: hidden;
  height: 100%; }

.legends-inner-scroller::-webkit-scrollbar {
  display: none !important; }

.legend-entry-wrap {
  position: relative;
  padding: 5px;
  background: rgba(0, 0, 0, 0.1);
  margin: 2px 0 0 2px; }

.legend-entry-image {
  width: 25px;
  height: 19px;
  display: inline-block;
  vertical-align: top;
  overflow: hidden;
  background-repeat: repeat;
  background-position: 0 0;
  border: 0px solid white; }

.legend-image1,
.legend-image2 {
  position: relative;
  top: 0px;
  left: 0px; }

.legend-image1 {
  -moz-transform: scaleY(-1);
  /* Gecko */
  -o-transform: scaley(-1);
  /* Operah */
  -webkit-transform: scaleY(-1);
  /* webkit */
  transform: scaleY(-1);
  /* standard */ }

.legend-entry-key {
  display: inline-block;
  vertical-align: top;
  width: 120px;
  padding-left: 10px;
  font-style: italic;
  font-size: 13px;
  font-weight: 500;
  overflow: hidden; }

.legend-entry-value {
  display: inline-block;
  vertical-align: top;
  font-size: 13px;
  font-weight: 500;
  width: 165px;
  padding-left: 5px;
  overflow: hidden; }

.legend-entry-wrap .controls-switch {
  top: 2px; }

/*
 ██████╗       ███████╗██████╗ ██╗████████╗ ██████╗ ██████╗ 
██╔═══██╗      ██╔════╝██╔══██╗██║╚══██╔══╝██╔═══██╗██╔══██╗
██║   ██║█████╗█████╗  ██║  ██║██║   ██║   ██║   ██║██████╔╝
██║▄▄ ██║╚════╝██╔══╝  ██║  ██║██║   ██║   ██║   ██║██╔══██╗
╚██████╔╝      ███████╗██████╔╝██║   ██║   ╚██████╔╝██║  ██║
 ╚══▀▀═╝       ╚══════╝╚═════╝ ╚═╝   ╚═╝    ╚═════╝ ╚═╝  ╚═╝
*/
.active-project {
  background: rgba(255, 255, 255, 0.5); }

.active-project:hover {
  background: rgba(255, 255, 255, 0.8); }

.project-edit-textarea {
  background: transparent;
  border: none;
  height: 43px;
  width: 116px;
  overflow: hidden;
  resize: none;
  margin-left: -2px;
  margin-top: -2px;
  font-weight: 400;
  font-size: 12px;
  line-height: 1.2; }

.drop-meta-wrapper {
  position: relative;
  padding: 20px;
  padding-left: 30px;
  font-size: 220%;
  color: #dadada;
  width: 400px;
  margin: auto;
  top: 40%;
  white-space: nowrap; }

.drop-meta-title {
  left: -30px; }

.drop-meta-wrapper {
  padding-left: 0px;
  font-size: 150%; }

#collapse-descripton {
  font-size: 120%;
  font-weight: 500;
  cursor: default; }

/* Outer wrapper */
.q-editor-container {
  position: absolute;
  overflow: hidden;
  z-index: 2000;
  background-color: rgba(255, 255, 255, 0);
  box-shadow: none;
  /*top: 84px;*/
  top: 36px;
  left: 4px;
  height: 0px;
  width: 100px;
  padding-top: 0px;
  overflow: visible; }

/* Menu to the left */
.q-editor-menu {
  margin: 0;
  padding: 0;
  position: absolute;
  /*box-shadow: 0 0px 5px 0 rgba(0,0,0,0.3);*/
  height: auto;
  left: 2px;
  width: 90px;
  /*background-color: rgba(255, 255, 255, 0.95);*/
  top: 79px;
  top: 6px;
  margin-top: 0px;
  overflow: hidden;
  height: 0;
  background: white;
  box-shadow: none; }

.q-editor-menu-item {
  text-align: center;
  height: 70px;
  position: relative;
  cursor: pointer;
  z-index: 200; }

.q-editor-content-item.show {
  opacity: 1; }

.hide-menu .q-editor-content-item {
  opacity: 0; }

.q-editor-menu-item a {
  width: 100%;
  font-size: 90%;
  text-transform: uppercase;
  font-weight: 500;
  bottom: 0px;
  position: absolute;
  left: 0px;
  top: 0;
  height: 100%;
  text-decoration: none;
  color: #666;
  padding-top: 26px;
  line-height: 18px; }

.q-editor-menu-item a:hover {
  color: #333; }

.q-editor-menu-item .dataLibrary {
  padding-top: 18px; }

.q-editor-menu-item .users {
  padding-top: 25px; }

/* Menuslider with arrow */
#menuslider {
  height: 70px;
  top: 0px;
  position: absolute;
  width: 90px;
  background-color: rgba(0, 0, 0, 0.05); }

#menuslider-arrow {
  position: absolute;
  right: -9px;
  width: 9px;
  height: 72px;
  overflow: hidden; }

#menuslider-arrow:before {
  content: '';
  position: absolute;
  height: 30px;
  width: 30px;
  top: 21px;
  background-color: #e9e9e9;
  left: -29px;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.075);
  z-index: 999; }

.q-editor-content-item {
  position: absolute;
  left: 100px;
  display: none;
  padding: 10px;
  overflow-y: auto;
  overflow-x: hidden;
  opacity: 1;
  /*background-color: rgba(255,255,255,0.90);*/
  margin-top: 20px;
  /*box-shadow: 0 0 5px 0 rgba(0,0,0,0.3);*/
  height: auto;
  width: 250px;
  max-height: 70%;
  top: 6px;
  margin: 0px;
  background: white;
  box-shadow: none; }

/* SCROLL WRAPPER (insisde q-editor-content-item) */
.editor-scroll-wrapper {
  overflow-y: scroll;
  overflow-x: hidden;
  height: auto;
  position: relative;
  width: 111%; }

/* Goes inside editor-scroll-wrapper */
.editor-wrapper {
  height: 100%;
  overflow-y: scroll;
  padding-top: 0;
  padding-bottom: 7px;
  padding-left: 0px;
  color: black;
  width: 260px;
  padding-right: 0px; }

.editor-inner-wrapper {
  padding: 5px;
  margin-bottom: 3px;
  position: relative;
  margin-top: 8px;
  border-radius: 0px;
  cursor: pointer;
  padding-left: 20px;
  padding-right: 20px;
  background-color: rgba(55, 55, 75, 0.15);
  width: 230px; }

.editor-inner-wrapper:hover {
  background-color: rgba(55, 55, 75, 0.25); }

/*
┌─┐    ┌─┐┌┬┐┬┌┬┐┌─┐┬─┐
│─┼┐───├┤  │││ │ │ │├┬┘
└─┘└   └─┘─┴┘┴ ┴ └─┘┴└─
┌─┐┬  ┬┌─┐┌┐┌┌┬┐┌─┐  ┌─┐┌┐┌┌┬┐  ┌─┐┬─┐┌─┐ ┬┌─┐┌─┐┌┬┐┌─┐
│  │  │├┤ │││ │ └─┐  ├─┤│││ ││  ├─┘├┬┘│ │ │├┤ │   │ └─┐
└─┘┴─┘┴└─┘┘└┘ ┴ └─┘  ┴ ┴┘└┘─┴┘  ┴  ┴└─└─┘└┘└─┘└─┘ ┴ └─┘
*/
/* Remove opacity and z-index sliders for now */
.baselayer-range-slider-opacity,
.baselayer-range-slider-zindex,
.layermenu-range-slider-opacity,
.layermenu-range-slider-zindex {
  display: none; }

.editor-clients {
  position: relative; }

.editor-clients-container {
  padding: 4px 6px 4px 6px;
  margin: 0px 0px 1px 0px;
  height: 80px;
  position: relative;
  cursor: pointer;
  overflow: hidden;
  background-color: rgba(55, 55, 75, 0.15);
  width: 230px !important; }

.editor-clients-container:hover {
  background-color: rgba(55, 55, 75, 0.09); }

.editor-clients-container:hover > .client-kill {
  display: block; }

.client-title {
  padding: 5px;
  /*text-transform: uppercase;*/
  font-size: 17px;
  font-weight: 400;
  color: #333;
  width: 150px;
  line-height: 1.2; }

.client-title input {
  padding: 0;
  width: 150px;
  background: transparent;
  /*text-transform: uppercase;*/
  font-size: 17px;
  font-weight: 400;
  width: 135px !important;
  min-width: 135px !important;
  max-width: 135px !important; }

.client-description {
  font-size: 12px;
  color: #666;
  width: 134px;
  text-indent: 0;
  left: 5px;
  position: relative;
  font-weight: 500; }

.client-description input {
  background: transparent; }

.client-logo-container {
  position: absolute;
  width: 70px;
  height: 70px;
  top: 5px;
  right: 5px;
  overflow: hidden; }

.client-logo {
  background-image: url(../images/defaultProjectLogo.png);
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  width: 100%; }

.client-logo.editable:hover {
  opacity: 0.7;
  cursor: copy; }

.client-kill {
  bottom: 4px;
  right: 5px;
  position: absolute;
  padding: 1px 5px 2px 5px;
  display: none;
  font-weight: 900;
  border-radius: 1px;
  font-size: 11px;
  background: rgba(0, 0, 0, 0.5);
  color: #fff; }

.client-kill:hover {
  background: #C80000;
  color: white; }

#new-client-button {
  margin: 0;
  margin-bottom: 10px;
  padding: 2px 12px 2px 4px;
  border: 0px;
  border-radius: 0;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  font-weight: 200;
  cursor: pointer;
  display: inline-block;
  bottom: -10px;
  color: #666;
  line-height: 0.5;
  background: rgba(55, 55, 75, 0.075);
  right: -201px;
  top: 7px !important;
  width: 26px;
  height: 26px;
  font-size: 220%;
  color: transparent;
  background-image: url(../images/evil_sprite.png);
  background-position: -55px -37px; }

#new-client-button:hover {
  background: white;
  color: transparent;
  background-image: url(../images/evil_sprite.png);
  background-position: -55px -37px; }

/* Project in client */
.projects-container {
  position: absolute;
  top: 78px;
  left: 0;
  width: 100%;
  height: 50px;
  padding: 10px; }

.project-item {
  background: rgba(0, 0, 0, 0.15);
  opacity: 1;
  margin-bottom: 5px;
  position: relative;
  color: #333;
  height: 111px;
  overflow: hidden; }

.project-item:hover {
  background: rgba(0, 0, 0, 0.25); }

.project-item:hover > .project-kill {
  display: block; }

.project-item.active-project:before {
  content: '';
  width: 15px;
  height: 15px;
  background: #059b05;
  position: absolute;
  border-radius: 0;
  top: -7px;
  left: -7px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg); }

.project-title {
  position: relative;
  left: 10px;
  top: 6px;
  font-size: 110%;
  text-shadow: none;
  font-weight: 500;
  line-height: 1;
  overflow: hidden;
  max-height: 30px;
  min-height: 15px;
  height: auto;
  width: 192px;
  display: inline-block;
  vertical-align: bottom;
  padding-right: 20px;
  overflow: visible;
  padding-bottom: 5px;
  top: 9px; }

.project-title input {
  position: relative;
  left: 0;
  top: -1px;
  font-size: 100%;
  text-shadow: none;
  font-weight: 500;
  line-height: 0.9;
  padding: 0;
  background-color: transparent;
  width: 192px;
  height: 100%;
  overflow: visible; }

.project-description {
  top: 39px;
  color: #333;
  text-shadow: none;
  border-top: 1px dotted rgba(0, 0, 0, 0.5);
  position: absolute;
  left: 8px;
  height: 50px;
  overflow: hidden;
  width: 197px;
  background: rgba(255, 255, 255, 0);
  font-size: 12px;
  padding: 0px;
  font-weight: 500;
  line-height: 1.2;
  padding-top: 6px;
  padding-right: 80px; }

.project-description input {
  background-color: transparent;
  width: 189px; }

.project-logo-container {
  position: absolute;
  background-repeat: no-repeat;
  width: 75px;
  height: 60px;
  right: 6px;
  top: 45px;
  overflow: hidden;
  text-align: center;
  z-index: 999; }

.project-logo {
  background-image: url(../images/defaultProjectLogo.png);
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  height: 100%; }

.project-logo.editable:hover {
  opacity: 0.7;
  cursor: copy; }

.project-logo-wrap img {
  height: 100%; }

/* Project info pop-up */
.project-item:hover > .project-users-wrap {
  opacity: 1; }

/* Square box with the "i" symbol */
.project-users-wrap {
  opacity: 0;
  height: 16px;
  width: 16px;
  z-index: 100000;
  position: absolute;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -118px -203px;
  top: 5px;
  right: 5px;
  border-radius: 1px;
  background-color: rgba(255, 255, 255, 0.7); }

.project-users-wrap:hover {
  opacity: 1; }

.project-users-wrap:active {
  background-color: rgba(255, 255, 255, 0.5); }

.active-project-user-button {
  display: block !important;
  opacity: 1 !important; }

/* Project info tooltip */
.project-users-inner-wrapper {
  width: 220px;
  padding: 10px;
  padding-top: 20px;
  position: relative;
  top: 82px;
  width: 210px; }

.project-users-inner-wrapper:before {
  content: '';
  position: absolute;
  left: 0;
  top: 12px;
  width: 100%;
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg); }

/* Project tooltip arrow */
/*.project-users-inner-wrapper:before {	
	content: '';
	width: 15px;
	height: 15px;
	position: absolute;
	top: -7px;
	right: 12px;
	background-color: white;
	}*/
/* Pseudo element to keep tooltip alive on hover */
.project-users-inner-wrapper:after {
  content: '';
  height: 32px;
  position: absolute;
  top: -30px;
  right: -1px;
  width: 75px; }

/* "Project status" header */
.project-stats {
  font-size: 12px;
  font-weight: 900;
  border-bottom: 1px dotted rgba(0, 0, 0, 0.3);
  margin-bottom: 3px;
  padding-bottom: 2px; }

/* Tooltip project users */
.project-users {
  margin-top: 8px;
  line-height: 1.7; }

.project-users-header {
  font-size: 12px;
  font-weight: 900;
  border-bottom: 1px dotted rgba(0, 0, 0, 0.3); }

.project-users p {
  font-size: 11px;
  font-weight: 500;
  padding: 0;
  margin: 0;
  border-bottom: 1px dotted rgba(0, 0, 0, 0.3); }

/* Text lines in the tooltip */
.project-createdby,
.project-lastupdated,
.update-header,
.project-createddate {
  /*color: #666;*/
  font-size: 11px;
  font-weight: 500;
  height: 16px;
  border-bottom: 1px dotted rgba(0, 0, 0, 0.3);
  margin-bottom: 2px; }

/* Left and right side in the tooltip */
.project-info-left,
.project-info-right {
  vertical-align: top;
  position: relative;
  top: -2px; }

.project-info-left {
  float: left; }

.project-info-right {
  float: right; }

.new-project-thumb {
  font-size: 11px;
  font-weight: 900;
  margin-top: 10px;
  background: #EEE;
  width: 100%;
  text-align: center;
  border-radius: 2px;
  height: 17px;
  /*float: right;	*/
  position: relative;
  cursor: pointer; }

.new-project-thumb:hover {
  background: #FFF; }

.project-delete {
  font-size: 11px;
  font-weight: 900;
  margin: auto;
  margin-top: 10px;
  background: #CCC;
  width: 100px;
  text-align: center;
  border-radius: 2px;
  height: 17px;
  /*float: right;*/
  background: #EEE; }

.project-delete:hover {
  background: #C80000;
  color: white; }

/* New project button */
.new-project-button {
  margin: 0;
  margin-bottom: 10px;
  padding: 2px 12px 2px 5px;
  border: 0px;
  border-radius: 0;
  line-height: 0.55;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  font-weight: 200;
  cursor: pointer;
  position: relative;
  display: inline-block;
  background: rgba(255, 255, 255, 0.15);
  right: 0px;
  bottom: -5px;
  color: #666;
  font-size: 220%;
  height: 26px;
  width: 26px;
  color: transparent;
  background-image: url(../images/evil_sprite.png);
  background-position: -55px -37px; }

.new-project-button:hover {
  background: white;
  color: transparent;
  background-image: url(../images/evil_sprite.png);
  background-position: -55px -37px; }

/* Is this one being used? */
.project-kill {
  color: white;
  background: rgba(0, 0, 0, 0.2);
  padding: 1px 5px 2px 5px;
  bottom: 87px;
  right: 83px; }

/* New Client title */
/*#editor-client-item-new h5 {*/
.editor-client-title h5 {
  padding: 0;
  position: relative;
  display: block;
  text-align: center;
  padding-top: 10px;
  font-size: 215%;
  color: black; }

.cancel-new-client {
  left: 5px; }

/*
┌─┐    ┌─┐┌┬┐┬┌┬┐┌─┐┬─┐
│─┼┐───├┤  │││ │ │ │├┬┘
└─┘└   └─┘─┴┘┴ ┴ └─┘┴└─
┌┬┐┌─┐┌─┐  ┌─┐┌─┐┌┬┐┬┌─┐┌┐┌┌─┐
│││├─┤├─┘  │ │├─┘ │ ││ ││││└─┐
┴ ┴┴ ┴┴    └─┘┴   ┴ ┴└─┘┘└┘└─┘
*/
/* Each box in the pane – overrides: .editor-inner-wrapper */
.editor-map-item-wrap {
  padding: 10px !important;
  margin-bottom: 1px !important;
  margin-top: 1px !important;
  min-height: 40px !important; }

.editor-map-item-wrap:last-child {
  margin-top: 10px; }

.editor-map-item-wrap:last-child {
  margin-top: 1px; }

/* "DataLibray" / "MapBox" headers in the "Base Layer" and "Layer Menu" panes */
.item-list-header {
  margin-top: 10px;
  margin-bottom: 3px;
  font-weight: 600;
  font-size: 14px;
  color: #666; }

/* Layer list button */
.item-list {
  height: 32px;
  margin-bottom: 10px;
  color: white;
  cursor: pointer;
  border: 0px;
  line-height: 1;
  border-radius: 0;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  font-size: 100%;
  font-weight: 200;
  position: relative;
  margin-bottom: 1px;
  width: 100%;
  padding: 0px;
  opacity: .7;
  background: rgba(0, 0, 0, 0.7); }

.item-list:hover {
  opacity: 1;
  background: rgba(255, 255, 255, 0.5);
  color: black; }

/* Layer name */
.item-list-inner-text {
  position: absolute;
  width: 100%;
  vertical-align: top;
  display: inline-block;
  margin: auto;
  line-height: 1;
  top: 0;
  bottom: 0;
  font-size: 12px;
  font-weight: 500;
  padding: 0px;
  overflow: hidden;
  max-height: 25px;
  padding-left: 8px;
  padding-right: 8px;
  word-break: break-all; }

/* List buttons (layers) */
.item-list,
.layer-item,
.layers-mapbox-item {
  color: #333;
  color: #666;
  background: rgba(255, 255, 255, 0.4);
  opacity: 1; }

/* List buttons active (layers) */
.item-list.active,
.layer-item.active,
.active .layers-mapbox-item {
  background-color: white;
  color: black;
  font-weight: 400;
  opacity: 1; }

/* Remove layers that are selected in Baselayer / Layermenu to not have overlap */
.deactivated {
  background: red !important;
  display: none; }

/* 
┌─┐    ┌─┐┌┬┐┬┌┬┐┌─┐┬─┐
│─┼┐───├┤  │││ │ │ │├┬┘
└─┘└   └─┘─┴┘┴ ┴ └─┘┴└─
┌┬┐┌─┐┌─┐  ┌─┐┌─┐┌┬┐┬┌─┐┌┐┌┌─┐
│││├─┤├─┘  │ │├─┘ │ ││ ││││└─┐
┴ ┴┴ ┴┴    └─┘┴   ┴ ┴└─┘┘└┘└─┘
┌┐ ┌─┐┌─┐┌─┐┬  ┌─┐┬ ┬┌─┐┬─┐
├┴┐├─┤└─┐├┤ │  ├─┤└┬┘├┤ ├┬┘
└─┘┴ ┴└─┘└─┘┴─┘┴ ┴ ┴ └─┘┴└─
*/
/* Baselayer wrap :: not the best name? */
.select-elems {
  height: 0;
  display: block;
  overflow: hidden;
  margin-top: 8px; }

/* 
┌─┐    ┌─┐┌┬┐┬┌┬┐┌─┐┬─┐
│─┼┐───├┤  │││ │ │ │├┬┘
└─┘└   └─┘─┴┘┴ ┴ └─┘┴└─
┌┬┐┌─┐┌─┐  ┌─┐┌─┐┌┬┐┬┌─┐┌┐┌┌─┐
│││├─┤├─┘  │ │├─┘ │ ││ ││││└─┐
┴ ┴┴ ┴┴    └─┘┴   ┴ ┴└─┘┘└┘└─┘
┬  ┌─┐┬ ┬┌─┐┬─┐┌┬┐┌─┐┌┐┌┬ ┬
│  ├─┤└┬┘├┤ ├┬┘│││├┤ ││││ │
┴─┘┴ ┴ ┴ └─┘┴└─┴ ┴└─┘┘└┘└─┘
*/
.map-layermenu-outer {
  height: 0px;
  overflow: hidden; }

/* 
┌─┐    ┌─┐┌┬┐┬┌┬┐┌─┐┬─┐
│─┼┐───├┤  │││ │ │ │├┬┘
└─┘└   └─┘─┴┘┴ ┴ └─┘┴└─
┌┬┐┌─┐┌─┐  ┌─┐┌─┐┌┬┐┬┌─┐┌┐┌┌─┐
│││├─┤├─┘  │ │├─┘ │ ││ ││││└─┐
┴ ┴┴ ┴┴    └─┘┴   ┴ ┴└─┘┘└┘└─┘
┌┐ ┌─┐┬ ┬┌┐┌┌┬┐┌─┐  ┌─┐┌┐┌┌┬┐  ┌─┐┌─┐┌─┐┬┌┬┐┬┌─┐┌┐┌
├┴┐│ ││ ││││ ││└─┐  ├─┤│││ ││  ├─┘│ │└─┐│ │ ││ ││││
└─┘└─┘└─┘┘└┘─┴┘└─┘  ┴ ┴┘└┘─┴┘  ┴  └─┘└─┘┴ ┴ ┴└─┘┘└┘
*/
#editor-map-initpos-coordinates,
#editor-map-bounds-coordinates {
  position: relative;
  top: 15px;
  height: 0;
  overflow: hidden; }

#map-initpos-inner,
#map-bounds-inner {
  padding-left: 3px;
  padding-right: 3px; }

#map-initpos-inner {
  cursor: default !important; }

#map-initpos-inner label {
  font-weight: 600;
  font-size: 14px;
  color: #666; }

#editor-map-bounds-clear {
  left: 5px; }

.bounds-zoom-h2 {
  position: absolute;
  top: 3px;
  width: 50%;
  font-weight: 600;
  font-size: 13px;
  color: #666; }

.bounds-zoom-half.left .bounds-zoom-h2 {
  text-align: left; }

.bounds-zoom-half.right .bounds-zoom-h2 {
  text-align: right;
  padding-right: 5px; }

.bounds-zoom-half.right {
  float: right; }

/*The bounds inner wrappers*/
.bounds-wrapper {
  padding-top: 12px;
  padding-bottom: 12px;
  border-top: 1px dotted rgba(0, 0, 0, 0.3);
  position: relative; }

.bounds-wrapper.zoom {
  padding-top: 25px; }

/*Bounds - Zoom halves*/
.bounds-zoom-half {
  display: inline-block;
  width: 49%;
  vertical-align: top; }

.bounds-zoom-half input {
  width: 36px !important;
  text-align: center; }

/*Left Bounds - Zoom half*/
.bounds-zoom-half.left {
  box-shadow: 1px 0px 0 0 gray; }

/* Left Bounds - Zoom half */
.bounds-zoom-half.left input {
  float: right;
  margin-right: 3px !important; }

#map-bounds-inner input {
  width: 49%;
  position: relative;
  display: inline-block;
  vertical-align: top;
  padding-bottom: 0 !important;
  margin: 0;
  padding-top: 0px !important;
  width: 100%;
  margin-bottom: 1px; }

#map-bounds-inner input,
#map-initpos-inner input {
  background-color: rgba(0, 0, 0, 0.55) !important; }

/* "Set bounds" button */
#editor-map-bounds {
  width: 143px; }

/* Set North-East and South-West corner buttons */
#editor-map-bounds-NE,
#editor-map-bounds-SW {
  margin-bottom: 5px; }

#editor-map-bounds-NE,
#editor-map-bounds-SW {
  width: 100%; }

#editor-map-initpos-button {
  width: 225px;
  line-height: 1; }

/* Max zoom button */
#editor-map-bounds-set-maxZoom {
  width: 56px;
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin: 0; }

/* Max zoom value field */
#editor-map-bounds-max-zoom-value {
  width: 137px;
  position: relative;
  display: inline-block;
  vertical-align: top; }

/* Max zoom button */
#editor-map-bounds-set-minZoom {
  width: 56px;
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin: 0;
  left: 5px; }

/* Min zoom value field */
#editor-map-bounds-min-zoom-value {
  width: 137px;
  position: relative;
  display: inline-block;
  vertical-align: top; }

/* 
┌─┐    ┌─┐┌┬┐┬┌┬┐┌─┐┬─┐
│─┼┐───├┤  │││ │ │ │├┬┘
└─┘└   └─┘─┴┘┴ ┴ └─┘┴└─
┌┬┐┌─┐┌─┐  ┌─┐┌─┐┌┬┐┬┌─┐┌┐┌┌─┐
│││├─┤├─┘  │ │├─┘ │ ││ ││││└─┐
┴ ┴┴ ┴┴    └─┘┴   ┴ ┴└─┘┘└┘└─┘
┌─┐┌─┐┌┐┌┌┬┐┬─┐┌─┐┬  ┌─┐
│  │ ││││ │ ├┬┘│ ││  └─┐
└─┘└─┘┘└┘ ┴ ┴└─└─┘┴─┘└─┘
*/
#editor-map-controls-inner-wrap {
  overflow: hidden;
  height: 0px; }

#editor-map-controls-inner-wrap .item-list.active {
  background: rgba(255, 255, 255, 0.4) !important; }

#editor-map-controls-inner-wrap .item-list {
  color: #333; }

.controls-title {
  height: 32px;
  padding: 8px;
  font-weight: 500;
  z-index: 999;
  position: relative; }

/* 
┌─┐    ┌─┐┌┬┐┬┌┬┐┌─┐┬─┐
│─┼┐───├┤  │││ │ │ │├┬┘
└─┘└   └─┘─┴┘┴ ┴ └─┘┴└─
┌┬┐┌─┐┌─┐  ┌─┐┌─┐┌┬┐┬┌─┐┌┐┌┌─┐
│││├─┤├─┘  │ │├─┘ │ ││ ││││└─┐
┴ ┴┴ ┴┴    └─┘┴   ┴ ┴└─┘┘└┘└─┘
┌─┐┌─┐┌┐┌┌┐┌┌─┐┌─┐┌┬┐┌─┐┌┬┐  ┌─┐┌─┐┌─┐┌─┐┬ ┬┌┐┌┌┬┐┌─┐
│  │ │││││││├┤ │   │ ├┤  ││  ├─┤│  │  │ ││ ││││ │ └─┐
└─┘└─┘┘└┘┘└┘└─┘└─┘ ┴ └─┘─┴┘  ┴ ┴└─┘└─┘└─┘└─┘┘└┘ ┴ └─┘
*/
.connect-outer {
  overflow: hidden;
  height: 0px; }

.connect-mapbox-title {
  font-size: 14px;
  position: relative;
  text-align: left;
  padding-top: 10px;
  margin-bottom: 0px;
  padding-left: 0px;
  font-weight: 600 !important;
  color: #666;
  text-transform: uppercase; }

.mapbox-connect-wrap {
  position: relative;
  color: white;
  margin: 0;
  /*height: 55px;*/
  padding: 0;
  padding-top: 8px; }

.import-mapbox-layers {
  width: 150px;
  margin-bottom: 5px;
  background: rgba(0, 0, 0, 0.3);
  color: white !important;
  font-weight: 200;
  border: 0px;
  float: left; }

.import-mapbox-layers-button {
  height: 37px;
  width: 50px;
  margin-left: 7px;
  line-height: 2.4; }

/* List of connected MapBox accounts */
.mapbox-accounts {
  position: relative;
  color: #333; }

.mapbox-listed-account {
  margin-top: 10px;
  color: #333;
  padding: 4px;
  font-size: 110%;
  height: 30px;
  position: relative;
  /*border: 1px solid rgb(200, 200, 200);*/
  padding: 0;
  background: rgba(0, 0, 0, 0.15); }

.mapbox-listed-account-title {
  text-indent: 0;
  padding: 4px;
  padding-left: 8px;
  position: absolute;
  left: 0; }

.mapbox-listed-account-kill {
  position: absolute;
  right: 0;
  color: red;
  font-weight: 900; }

/* Update or delete MapBox account */
.mapbox-listed-account-refresh {
  /*background-color: #4c4d4f;*/
  border: none;
  position: absolute;
  border: none;
  width: 29px;
  height: 29px;
  right: 30px;
  z-index: 999; }

.mapbox-listed-account-refresh:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  background-image: url(../images/evil_sprite.png);
  /*background-position: -119px -155px;*/
  background-position: -236px -86px;
  background-repeat: no-repeat;
  opacity: 0.25;
  left: 0; }

.mapbox-listed-account-refresh:hover:before {
  opacity: 1; }

.mapbox-listed-account-delete {
  /*background-color: #4c4d4f;*/
  border: none;
  position: absolute;
  width: 29px;
  height: 29px;
  right: 0px; }

.mapbox-listed-account-delete:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  background-image: url(../images/evil_sprite.png);
  background-position: -271px -86px;
  background-repeat: no-repeat;
  opacity: 0.25;
  left: 0; }

.mapbox-listed-account-delete:hover:before {
  opacity: 1; }

.osm-add-box {
  width: 100%;
  top: 6px; }

/*
┌─┐    ┌─┐┌┬┐┬┌┬┐┌─┐┬─┐
│─┼┐───├┤  │││ │ │ │├┬┘
└─┘└   └─┘─┴┘┴ ┴ └─┘┴└─
┌─┐┬ ┬┬  ┬  ┌─┐┌─┐┌─┐┌─┐  ┬ ┬┌┐┌┬┬  ┬┌─┐┬─┐┌─┐┌─┐┬  ┌─┐
├┤ │ ││  │  ├─┘├─┤│ ┬├┤   │ │││││└┐┌┘├┤ ├┬┘└─┐├─┤│  └─┐
└  └─┘┴─┘┴─┘┴  ┴ ┴└─┘└─┘  └─┘┘└┘┴ └┘ └─┘┴└─└─┘┴ ┴┴─┘└─┘
*/
.fullpage-documents .editor-wrapper,
.data-library .editor-wrapper,
.fullpage-users .editor-wrapper,
#datalibrary-download-dialogue {
  width: auto;
  background-color: rgba(255, 255, 255, 0.9);
  overflow: hidden;
  position: relative; }

.fullpage-documents .editor-wrapper {
  box-shadow: none;
  background: white; }

.data-library .editor-wrapper,
.fullpage-users .editor-wrapper {
  background: none; }

.data-library .editor-wrapper,
.fullpage-users .editor-wrapper {
  overflow: auto; }

.data-library .editor-wrapper {
  padding-bottom: 50px; }

.fullpage-documents,
.data-library,
.fullpage-users {
  left: 104px;
  padding-left: 0px;
  padding-top: 1px;
  padding-right: 110px;
  padding-bottom: 7px;
  background: none;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  overflow: hidden;
  max-width: 100%;
  width: 100%;
  max-height: 100%;
  height: 100%;
  padding-right: 110px;
  padding-bottom: 95px;
  top: 41px; }

.data-library,
.fullpage-users {
  padding-bottom: 96px;
  min-width: 900px;
  max-width: 900px;
  width: 900px;
  padding-right: 5px; }

/*
┌─┐    ┌─┐┌┬┐┬┌┬┐┌─┐┬─┐
│─┼┐───├┤  │││ │ │ │├┬┘
└─┘└   └─┘─┴┘┴ ┴ └─┘┴└─
┌┬┐┌─┐┌─┐┬ ┬┌┬┐┌─┐┌┐┌┌┬┐┌─┐
 │││ ││  │ ││││├┤ │││ │ └─┐
─┴┘└─┘└─┘└─┘┴ ┴└─┘┘└┘ ┴ └─┘
*/
/* Outer wrapper */
.fullpage-documents {
  position: absolute;
  height: 100%;
  z-index: 3400;
  display: none;
  box-shadow: none;
  width: 890px;
  padding-right: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

/* left wrapper */
.documents-container-leftpane {
  position: absolute;
  font-weight: 200;
  margin: 10px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  top: 0px;
  width: 200px; }

/* right wrapper */
.documents-container-rightpane {
  position: absolute;
  font-weight: 200;
  padding: 20px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  position: absolute;
  height: 100%;
  font-size: 20px;
  overflow-y: auto;
  overflow-x: hidden;
  width: 100%;
  padding-right: 350px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  top: 0px;
  color: #333;
  padding-top: 0;
  padding-bottom: 125px;
  border-left: 2.5px solid rgba(128, 128, 128, 0.17);
  padding-right: 270px;
  left: 200px; }

/* folder list */
.documents-folder-list {
  margin-top: 30px; }

/* list items */
.documents-folder-item,
.documents-new-folder {
  background: none;
  border: none;
  margin: 4px;
  margin-left: 30px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  cursor: pointer;
  width: 90%;
  line-height: 1.2;
  margin-bottom: 10px;
  font-weight: 500;
  font-size: 115%;
  padding-left: 10px; }

.documents-folder-delete,
.documents-folder-item,
.documents-new-folder {
  color: #333;
  padding-right: 0px; }

.documents-new-folder:hover,
.documents-folder-item:hover {
  color: #000; }

.documents-folder-item input {
  margin: 0;
  padding: 0;
  width: 100%;
  font-weight: 500;
  font-size: 100%;
  color: #C80000; }

.documents-folder-item {
  margin-left: 10px;
  font-size: 150%; }

.documents-folder-delete {
  float: left;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  visibility: hidden;
  cursor: pointer;
  position: absolute;
  line-height: 0.4;
  left: -2px;
  height: 18px;
  width: 10px;
  text-align: center;
  padding-right: 13px;
  padding-left: 4px;
  margin: 0;
  padding-top: 3px;
  border-radius: 2px;
  font-size: 19px;
  font-weight: 900;
  margin-top: 1px;
  color: transparent;
  background-image: url(../images/evil_sprite.png);
  background-position: -26px -43px;
  opacity: 0.2; }

.documents-folder-delete:hover {
  /*color: white;*/
  /*background: #C80000;*/
  opacity: 1; }

.tdcont {
  cursor: pointer;
  position: relative;
  padding-bottom: 12px !important; }

.tdcont input {
  background-color: transparent !important;
  color: black; }

.tdcont.email {
  cursor: default; }

/*.company input,
.position input
.phone input {*/
.tdcont input {
  /*background: red !important;*/
  border: none !important;
  width: 100%; }

.documents-new-folder {
  margin-left: 10px; }

/* GRANDE STUFF */
.text-menu .options .url {
  color: transparent;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -64px -160px; }

blockquote {
  border-left: 5px solid #262625; }

button.attachment {
  background-repeat: no-repeat;
  background-size: 14px 19px;
  background-position: 7px 5px; }

button.image-attachment {
  background-repeat: no-repeat;
  background-size: 22px 19px;
  background-position: 3px 5px; }

/* tooltip */
.text-menu .options {
  padding-top: 1px !important;
  width: 245px; }

.options.url-mode {
  width: 176px; }

.options.url-mode .grande-plugin {
  display: none; }

.text-menu.options.url-mode .file {
  display: none; }

.text-menu.active {
  z-index: 1500; }

/* tooltip select options menu */
.grande-project-files {
  width: 181px;
  top: 36px;
  position: absolute;
  left: 0px; }

/* OK button for select tooltip */
.grande-project-files-btn {
  width: 30px !important;
  height: 16px !important;
  background-color: white !important;
  position: absolute !important;
  top: 37px !important;
  right: 0px !important;
  border-radius: 3px !important;
  cursor: pointer; }

.grande-project-files-btn:before {
  content: 'OK';
  width: 100%;
  height: 100%;
  color: black;
  position: absolute;
  text-align: center;
  font-size: 11px;
  font-weight: 600; }

.grande-project-files-wrap {
  height: auto;
  display: none; }

.grande-sources-container {
  position: absolute;
  width: 300px;
  top: 37px;
  left: -24px;
  background: black;
  border-radius: 5px;
  cursor: pointer;
  border-radius: 5px;
  cursor: pointer;
  background-color: #262625;
  box-shadow: 0 0 2px #262625;
  overflow: scroll;
  max-height: 300px; }

.grande-sources-topwrap {
  height: 0px;
  width: 100%; }

.grande-sources-source {
  position: relative;
  border-top: 1px dotted #666;
  width: 100%;
  overflow: hidden;
  padding-bottom: 6px; }

.grande-sources-container div:nth-child(2) {
  border-radius: 5px 5px 0px 0px;
  border-top: none; }

.grande-sources-container div:last-child {
  border-radius: 0px 0px 5px 5px; }

.grande-sources-source:hover {
  background: #60d778; }

.grande-sources-source-icon {
  width: 30px;
  height: 30px;
  position: absolute; }

.grande-sources-source-icon.image,
.grande-sources-source-icon.Image {
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -187px -75px;
  height: 26px !important;
  width: 26px !important; }

.grande-sources-source-icon.layer,
.grande-sources-source-icon.Layer {
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -144px -75px;
  height: 26px !important;
  width: 26px !important; }

.grande-sources-source-title {
  color: white;
  top: 0px;
  font-size: 110%;
  padding: 2px;
  width: 190px;
  line-height: 1;
  padding-top: 8px;
  left: 38px;
  position: relative;
  display: inline-block; }

.grande-sources-source-thumb {
  position: relative;
  height: 39px;
  right: 4px;
  top: 3px;
  width: auto;
  max-width: 70px;
  display: inline-block;
  float: right; }

.documents-container-textarea {
  padding-top: 20px; }

.documents-container-textarea h1 {
  font-size: 200%; }

.documents-container-textarea h2 {
  color: #333;
  font-size: 120%; }

.documents-container-textarea p {
  color: #333;
  font-weight: 400;
  font-size: 90%; }

#document-container-textarea img {
  width: auto;
  height: 200px;
  float: left;
  margin: 10px;
  margin-left: 0px; }

.documents-container-textarea p img {
  display: block;
  position: relative;
  margin-top: 10px;
  margin-bottom: 10px; }

/*
┌─┐    ┌─┐┌┬┐┬┌┬┐┌─┐┬─┐
│─┼┐───├┤  │││ │ │ │├┬┘
└─┘└   └─┘─┴┘┴ ┴ └─┘┴└─
┌┬┐┌─┐┌┬┐┌─┐  ┬  ┬┌┐ ┬─┐┌─┐┬─┐┬ ┬
 ││├─┤ │ ├─┤  │  │├┴┐├┬┘├─┤├┬┘└┬┘
─┴┘┴ ┴ ┴ ┴ ┴  ┴─┘┴└─┘┴└─┴ ┴┴└─ ┴ 
*/
/* To make progress bar visible */
.data-library {
  overflow: visible !important;
  /*padding-bottom: 155px;*/ }

/* outer wrapper */
.data-library,
.fullpage-mediaLibrary {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 3400;
  display: none;
  left: 104px;
  overflow-y: auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.data-library .data-library-inner,
.fullpage-users .users-inner {
  padding-bottom: 0; }

.fullpage-users,
.data-library {
  box-shadow: none; }

.users-inner,
.data-library-inner {
  height: 100%;
  padding-bottom: 155px;
  box-shadow: none;
  background: white; }

.data-library-inner {
  overflow: hidden; }

.download-dialog-link {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0;
  top: 0; }

/* Inner wrapper for users and data library */
#filelist,
.userlist {
  margin: 20px; }

/* The box with the file count */
.dataLibrary-file-popup-trigger {
  width: 25px;
  height: 25px;
  border-radius: 2px;
  text-align: center;
  font-weight: 900;
  line-height: 1.7;
  background-color: rgba(0, 0, 0, 0.2); }

/* File list */
.dataLibrary-file-popup-list {
  display: none;
  position: absolute;
  background: white;
  padding: 15px;
  border-radius: 3px;
  margin-top: 5px;
  font-weight: 900;
  font-size: 15px;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  z-index: 999; }

/* The files in the file list */
.dataLibrary-file-popup-item {
  font-weight: 400;
  font-size: 12px; }

/* Show file list on hover */
.dataLibrary-file-popup-trigger:hover + .dataLibrary-file-popup-list {
  display: block; }

/* Controls wrapper (with upload, search field, etc) */
.datalibrary-controls,
.users-controls {
  height: 60px;
  position: relative;
  border-bottom: 1px solid;
  color: #666;
  top: 0px;
  width: 100%;
  /*padding-right: 129px;*/
  left: 0px;
  z-index: 999;
  padding-left: 20px;
  padding-top: 15px;
  box-sizing: border-box; }

.users-controls {
  /*background: #ebedef;	*/
  background: rgba(255, 255, 255, 0.5); }

.hide-top .users-controls,
.hide-top .datalibrary-controls {
  display: none; }

.hide-top {
  /*padding-bottom: 95px !important;*/ }

.users-controls-inner div {
  /*margin-right: 5px;*/ }

.datalibrary-controls-inner {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  left: 0;
  /*background: #ebedef;	*/
  padding: 16px;
  /*padding-left: 20px;*/
  padding-top: 15px;
  background: rgba(255, 255, 255, 0.5);
  padding-left: 15px; }

#datalibrary-search {
  margin-left: 5px; }

/* Delete file button */
#datalibrary-delete-file {
  float: right;
  margin-left: 5px; }

/* Download file button */
#datalibrary-download-files {
  float: right; }

/* Datalibrary errors */
#datalibrary-errors {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  width: 400px;
  height: 80px;
  position: absolute;
  right: 121px;
  background: white;
  top: 57px;
  color: #ff6f6f;
  font-size: 140%;
  font-weight: 200;
  padding: 5px;
  background: #565f6f;
  display: none; }

/* Main Table with file list */
.users-table,
.datalibrary-table {
  width: 100%; }

.users-table .fivep {
  /*width: 43px;*/
  /*min-width: 43px;*/ }

/* download dialogue box */
#datalibrary-download-dialogue {
  position: relative;
  width: 100%;
  height: 100%;
  display: none;
  top: 0;
  left: 0;
  color: #333;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  font-size: 120%;
  z-index: 1000;
  padding: 10px; }

/* download table head */
.datalibrary-download-table thead tr {
  font-size: 80%; }

/* download table head "Name" */
.download-name {
  font-size: 16px; }

/* unselect download check box in download window */
.download-remove .squaredThree {
  text-align: center;
  padding-left: 15px; }

/* download OK button "Download" */
.download-ok-button {
  width: 100px;
  position: relative;
  font-size: 17px;
  line-height: 1.7;
  vertical-align: top;
  top: 0;
  bottom: 0;
  float: right;
  margin-top: 10px;
  margin-right: 9px;
  height: 30px; }

/* dowload cancel button "Cancel" */
.download-cancel-button {
  position: relative;
  font-size: 17px;
  line-height: 1.7;
  vertical-align: top;
  top: 0;
  bottom: 0;
  float: right;
  margin-top: 10px;
  height: 30px; }

/* Download ready button */
#download-ready-button {
  width: 106px;
  color: white !important;
  height: 38px;
  position: relative;
  margin: auto;
  display: block;
  top: 170px; }

#download-ready-button a {
  color: white;
  text-decoration: none; }

#download-ready-button a:hover {
  color: gainsboro;
  text-decoration: none; }

/* Datalibrary upload progress bar : DropZone style */
.progress-bar {
  position: fixed;
  width: 0%;
  top: 0px;
  left: 0px;
  z-index: 20000;
  margin-left: 0px;
  background: white;
  height: 3px; }

/* Fullscreen upload : DropZone style */
.fullscreen-drop {
  position: fixed;
  width: 100%;
  height: 100%;
  opacity: 0;
  background-color: #3f4652;
  top: 0;
  left: 0;
  z-index: -1000;
  margin-left: 100px;
  display: none; }

.fullscreen-dropped {
  position: relative;
  width: 100%;
  height: 100%;
  opacity: 0;
  background-color: rgba(255, 255, 255, 0.9);
  top: 0;
  z-index: -1000;
  margin: 0;
  height: 100%;
  padding: 90px;
  overflow-y: scroll; }

.fullscreen-dropped::before {
  content: 'Uploading';
  color: #666;
  font-weight: 200;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  font-size: 400%;
  position: relative;
  padding: 20px; }

/* DropZone style */
.dz-details {
  top: 320px;
  left: 30%;
  position: fixed;
  height: 50px;
  padding: 5px;
  padding-left: 10px;
  padding-right: 10px;
  width: auto;
  z-index: 20000;
  font-size: 120%; }

.dz-progress,
.dz-success-mark,
.dz-error-mark,
.dz-preview {
  display: none; }

#squaredThree-checkbox-all {
  top: -4px; }

.checkbox {
  width: 25px;
  padding: 0;
  top: 0px;
  position: relative;
  left: 10px; }

.dropzone-pane {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999999 !important;
  background-color: rgba(0, 0, 0, 0.69);
  background-image: url("../images/bigcloud.png");
  background-position: center;
  background-repeat: no-repeat;
  border: none !important; }

/* Datalibrary category */
/*.datalibrary-category-wrapper {
	position:  absolute;
	border: 1px solid yellow;
	z-index: 1000;
	background-color: white;
	font-size: 120%;
	}

.datalibrary-category-line {
	font-size: 120%;
	padding: 5px;
	border-bottom: 1px solid gray;
	float: left;
	width: 85%;
	}

.datalibrary-category-line:hover {
	background: aqua;
	}

.datalibrary-category-new {
	border: 0px;
	background-color: white;
	}

.datalibrary-category-line-del {
	right: 0px;
	cursor: pointer;
	text-align: right;
	}

.datalibrary-category-line-del:hover {
	color: red;
	}

.datalibrary-category-line-wrap {
	height: auto;
	cursor: pointer;
	}
*/
.datalibrary-category-wrapper {
  position: absolute;
  z-index: 1000;
  background-color: white;
  font-size: 120%;
  padding: 10px;
  border-radius: 3px;
  border: 0;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  margin-top: 16px; }

.datalibrary-category-wrapper:before {
  content: '';
  background: white;
  width: 20px;
  height: 20px;
  position: absolute;
  top: -3px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
  left: 24px; }

.datalibrary-category-line-wrap {
  height: auto;
  cursor: pointer; }

.datalibrary-category-line {
  float: left;
  width: 85%;
  font-size: 80%;
  position: relative;
  padding: 0;
  margin-bottom: 2px;
  padding-left: 5px;
  background: rgba(0, 0, 0, 0.1);
  border: none;
  border-radius: 2px 0px 0px 2px;
  height: 21px;
  overflow: hidden; }

.datalibrary-category-line:hover {
  background: rgba(0, 0, 0, 0.2); }

.datalibrary-category-new {
  border: 0px;
  background-color: white;
  font-size: 14px;
  position: relative;
  cursor: pointer;
  top: 3px; }

.datalibrary-category-line-del {
  /*right: 0px;*/
  width: 23px;
  height: 21px;
  border-radius: 0px 2px 2px 0px;
  top: 0px;
  position: relative;
  float: right;
  cursor: pointer;
  background: rgba(0, 0, 0, 0.1);
  font-weight: 500;
  font-size: 14px;
  text-indent: 1px;
  text-align: center;
  line-height: 1.4;
  color: #999;
  opacity: 0.5; }

.datalibrary-category-line-del:hover {
  opacity: 1; }

/*download-dialog*/
.download-dialog {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 99999;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  padding-right: 110px;
  padding-bottom: 94px; }

.download-dialog-inner {
  position: relative;
  height: 100%;
  width: 100%;
  padding: 100px;
  background: rgba(255, 255, 255, 0.8); }

.download-dialog-button,
.download-dialog-cancel {
  position: relative;
  display: block;
  font-weight: 500;
  height: 40px;
  width: 150px;
  margin: auto;
  margin-bottom: 20px;
  line-height: 2.6; }

.download-dialog-button a,
.download-dialog-button a:hover {
  color: white;
  text-decoration: none;
  font-weight: 500; }

/* TABLE ADJUSTMENTS */
td.tdcont.keywords {
  max-width: 100px;
  width: 100px;
  min-width: 100px; }

.datalibrary-edit-field {
  max-width: 100px;
  width: 100px;
  min-width: 100px;
  overflow: hidden; }

td.tdcont.files {
  max-width: 100px;
  min-width: 100px;
  width: 100px; }

#datalibrary-insertrows tr .tdcont {
  padding-top: 20px; }

td.tdcont.files {
  padding-top: 18px !important;
  padding-left: 18px; }

td.tdcont.createdDate {
  font-size: 80%; }

/* CUSTOM MINIMAL STYLING FOR DATALIBRARY */
/* CUSTOM MINIMAL STYLING FOR DATALIBRARY */
/* ==================================================== */
/* THESE RULES SHOULD BE CONTROLLED FROM the D3List.js */
.data-library.minimal .list-line,
.data-library.minimal .list-title-wrapper {
  height: 33px; }

.data-library.minimal .list-item-info {
  top: 7px; }

.data-library.minimal .item-select-button {
  top: 8px; }

/* ==================================================== */
.data-library.minimal .killat780 {
  display: none; }

.data-library.minimal .file-list-wrapper {
  width: 138px; }

.data-library.minimal .open-list-info {
  padding-left: 240px; }

.data-library.minimal .file-copright-wrapper {
  width: 240px; }

.data-library.minimal .file-thumb {
  width: 90px; }

.data-library.minimal .file-list-wrapper {
  left: 108px;
  width: 125px; }

.data-library.minimal .data-library-inner {
  padding-bottom: 60px; }

.data-library.minimal .fullscreen-drop {
  width: 493px;
  height: 737px; }

/* ==================================================== */
.minimal .file-description-outer-wrapper {
  width: 100%;
  height: 145px; }

.minimal .file-description-inner-wrapper {
  height: 110px; }

.minimal .list-attribute-wrapper {
  height: 33px;
  height: 48px; }

.minimal .open-list-info {
  height: 206px;
  top: 34px; }

.minimal .file-list-wrapper {
  height: 151px; }

.minimal .manage-access-title-wrapper {
  height: 100px; }

.minimal .manage-access-content-wrapper-outer {
  padding-right: 20px;
  box-sizing: border-box;
  width: 515px; }

.description-textarea-outer-wrapper {
  height: 94px;
  overflow-y: scroll;
  overflow-x: hidden;
  width: 540px;
  padding-right: 30px; }

.minimal .description-textarea-outer-wrapper {
  height: 108px;
  width: 218px; }

/*
┌─┐    ┌─┐┌┬┐┬┌┬┐┌─┐┬─┐
│─┼┐───├┤  │││ │ │ │├┬┘
└─┘└   └─┘─┴┘┴ ┴ └─┘┴└─
┬ ┬┌─┐┌─┐┬─┐  ┌┬┐┌─┐┌┐┌┌─┐┌─┐┌─┐┌┬┐┌─┐┌┐┌┌┬┐
│ │└─┐├┤ ├┬┘  │││├─┤│││├─┤│ ┬├┤ │││├┤ │││ │ 
└─┘└─┘└─┘┴└─  ┴ ┴┴ ┴┘└┘┴ ┴└─┘└─┘┴ ┴└─┘┘└┘ ┴ 
*/
/* The first name part in the user list */
.dld.smallerText {
  color: #666;
  font-style: italic; }

.q-editor-menu-item .users {
  border-top: 1px solid #333; }

/* outer wrapper */
.fullpage-users {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 3400;
  display: none;
  left: 104px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /*padding-bottom: 155px;*/ }

/* inner wrapper */
.fullpage-users .editor-wrapper {
  width: auto; }

.fullpage-users .backpane-container {
  /*overflow: hidden;*/
  overflow-y: scroll;
  padding-bottom: 100px; }

.users-inner {
  background: rgba(255, 255, 255, 0.9);
  position: relative; }

.user-projects-button {
  max-height: 35px; }

/* CREATE NEW USER */
.backpane-container {
  background: rgba(255, 255, 255, 0.9);
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  overflow-x: hidden; }

.backpane-wrapper {
  padding-left: 40px;
  padding-right: 40px;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 40px;
  padding-right: 40px;
  padding-top: 50px;
  padding-bottom: 120px;
  margin: auto;
  width: 420px; }

.backpane-wrapper .backpane-title {
  color: #666; }

.backpane-wrapper .backpane-message {
  margin-bottom: 25px; }

.backpane-message.error {
  color: red; }

/* USER MANAGEMENT, MANAGE USER PRIVILEGGES */
.backpane-projectTitle {
  margin-top: 20px;
  margin-bottom: 5px;
  font-style: italic;
  text-indent: 1px;
  font-weight: 900; }

.backpane-confirm {
  margin: 5px;
  margin-left: 0px;
  font-weight: 600;
  text-transform: uppercase;
  padding: 20px;
  line-height: 0;
  margin-top: 15px; }

.backpane-cancel {
  margin: 5px;
  margin-left: 0px;
  font-weight: 600;
  text-transform: uppercase;
  padding: 20px;
  line-height: 0;
  margin-top: 15px; }

.backpane-input {
  margin: 0px;
  border: none;
  padding: 5px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  font-weight: 600;
  color: black;
  color: white;
  background: #333;
  font-size: 120%;
  padding-left: 11px;
  width: 171px;
  text-align: left;
  position: relative;
  margin-right: 100%;
  margin-top: 5px;
  width: 310px;
  line-height: 1.2; }

.backpane-input::-webkit-input-placeholder {
  /* WebKit browsers */
  color: white; }

.backpane-input:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: white;
  opacity: 1; }

.backpane-input::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: white;
  opacity: 1; }

.backpane-input:-ms-input-placeholder {
  /* Internet Explorer 10+ */
  color: white; }

.backpane-input.valid {
  background-color: #4FDA4F !important; }

.backpane-input.invalid {
  background-color: #F03A3A !important; }

.backpane-message {
  padding: 5px;
  padding-left: 0px;
  font-size: 110%;
  margin-top: 25px;
  margin-bottom: 0px; }

/* Manage user outer wrapper */
.backpane-access-container {
  height: 100%;
  z-index: 5000;
  left: 0;
  top: 0px;
  overflow-y: scroll;
  overflow-x: hidden;
  background: rgba(255, 255, 255, 0.9);
  color: #666;
  padding: 0;
  padding-left: 30px;
  padding-right: 30px;
  width: auto;
  position: relative;
  right: 110px;
  padding-bottom: 150px; }

/* Manage user inner wrapper */
.backpane-access-wrapper {
  margin: 0 auto;
  width: 100%;
  display: inline-block;
  vertical-align: middle;
  height: auto;
  top: 50px;
  position: relative;
  left: 0px; }

/* Main title */
.backpane-title {
  font-size: 300%;
  font-weight: 900; }

/* Subtitle */
.backpane-subtitle {
  font-size: 150%;
  margin: 0px 0px 10px 0px;
  margin-left: 0;
  font-style: italic;
  font-weight: 200; }

/* The red flag that says "Admin" or "Super Admin" */
.backpane-admin-box.green, .backpane-superadmin-box.green {
  background: #C80000;
  position: absolute;
  padding: 5px;
  font-weight: 900;
  text-transform: uppercase;
  top: -35px;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.2);
  left: 396px;
  z-index: 500;
  color: white; }

.backpane-admin-box.green:before,
.backpane-superadmin-box.green:before {
  content: '';
  width: 20px;
  height: 20px;
  background-color: #C80000;
  position: absolute;
  top: 18px;
  left: 18px;
  z-index: -1; }

.backpane-admin-box.red,
.backpane-superadmin-box.red {
  display: none; }

/* The little title that says "Projects" right over the table */
.backpane-projectTitle {
  text-shadow: none; }

/* Table with list of projects */
.backpane-projects-wrap {
  width: 100%;
  padding-right: 0px; }

/* Each project wrapper */
.access-projects-wrap {
  position: relative;
  height: 65px;
  margin-bottom: 1px;
  padding: 7px 0px 0px 10px; }

.access-projects-wrap:nth-child(odd) {
  background: rgba(0, 0, 0, 0.2); }

.access-projects-wrap:nth-child(even) {
  background: rgba(0, 0, 0, 0.1); }

/* Inner wrapper with Project name and description */
.access-projects-details-wrap {
  left: 0px;
  top: 0;
  padding-right: 270px;
  height: 40px; }

/* Project title */
.access-projects-title {
  font-size: 130%;
  font-weight: 600;
  height: 25px;
  overflow: hidden; }

/* Project description */
.access-projects-description {
  font-size: 100%;
  font-style: italic;
  height: 20px;
  overflow: hidden; }

/* READ/EDIT/MANAGE buttons */
.access-projects-read,
.access-projects-write,
.access-projects-manage {
  height: 40px;
  position: absolute;
  top: 13px;
  /*background: #fe5757;*/
  background-color: #a84158;
  color: white;
  width: 75px;
  padding: 5px;
  font-size: 110%;
  text-align: center;
  cursor: pointer;
  float: right;
  font-weight: 900;
  line-height: 1.8;
  text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.4);
  /*box-shadow: 0 0 2px 0 rgba(0,0,0,0.4);*/ }

.access-projects-read:active,
.access-projects-write:active,
.access-projects-manage:active {
  /*box-shadow: 0 0 2px 0 rgba(0,0,0,0.0);*/ }

.access-projects-read:hover,
.access-projects-write:hover,
.access-projects-manage:hover {
  /*background: rgb(0, 225, 255);*/
  background-color: #334d5c; }

/* READ access */
.access-projects-read {
  /*border-radius: 3px 0 0 3px;*/
  right: 162px; }

/* WRITE access */
.access-projects-write {
  right: 86px; }

/* MANAGE access */
.access-projects-manage {
  /*border-radius: 0 3px 3px 0;*/
  right: 10px; }

/* Color code for projects you've got access for */
.gotAccess {
  /*background-color: #33BB33;*/
  background-color: #218777; }

/* The description at the bottom ("The guide") */
.backpane-message {
  margin-bottom: 175px; }

.manage-access-content-wrapper-outer {
  overflow: scroll;
  height: 100%;
  width: 920px;
  padding-right: 30px; }

/* CUSTOM MINIMAL STYLING FOR USERS */
/* CUSTOM MINIMAL STYLING FOR USERS */
.fullpage-users.minimal .manage-access-roles-wrapper {
  left: 280px; }

.fullpage-users.minimal .manage-access-roles-wrapper .manage-access-current-role {
  font-size: 12px; }

.fullpage-users.minimal {
  padding-left: 2px;
  left: 102px;
  max-width: 497px;
  width: 497px;
  min-width: 497px; }

.fullpage-users.minimal .user-projects-button {
  padding-top: 5px; }

.fullpage-users.minimal .manage-access-content-wrapper {
  width: 487px;
  overflow: hidden; }

.fullpage-users.show.hide-top.minimal .manage-access-project-item-description {
  width: 190px; }

.fullpage-users.show.hide-top .manage-access-project-item-description {
  width: 260px; }

/* CUSTOM MINIMAL STYLING FOR BOTH DATA LIBRARY AND USERS */
/* CUSTOM MINIMAL STYLING FOR BOTH DATA LIBRARY AND USERS */
/* CUSTOM MINIMAL STYLING FOR BOTH DATA LIBRARY AND USERS */
.fullpage-users.minimal .users-inner,
.data-library.minimal .data-library-inner {
  height: 530px;
  overflow: hidden; }

.fullpage-users.minimal,
.data-library.minimal {
  height: 530px;
  padding-bottom: 3px;
  overflow: hidden;
  padding-right: 5px;
  max-width: 495px;
  width: 495px;
  min-width: 495px; }

.data-library.minimal .fullscreen-drop {
  display: none; }

.data-library.minimal .data-library-inner .editor-wrapper {
  width: 520px;
  padding-right: 30px; }

/* EXPAND/COLLAPSE BUTTON */
/* EXPAND/COLLAPSE BUTTON */
/* EXPAND/COLLAPSE BUTTON */
.users-expand-collapse,
.datalibrary-expand-collapse {
  position: absolute;
  top: 3px;
  right: 3px;
  width: 16px;
  height: 16px;
  overflow: hidden;
  cursor: pointer;
  margin: auto !important;
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  transform: rotate(180deg);
  z-index: 9999999999999; }

.users-expand-collapse.expand,
.datalibrary-expand-collapse.expand {
  -webkit-transform: rotate(0deg) !important; }

.users-expand-collapse:before,
.datalibrary-expand-collapse:before {
  content: '';
  top: -10px;
  right: -12px;
  width: 20px;
  height: 20px;
  background: rgba(0, 0, 0, 0.3);
  position: absolute;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg); }

.users-expand-collapse:hover:before,
.datalibrary-expand-collapse:hover:before {
  background: rgba(0, 0, 0, 0.5); }

/* SHARE */
/* SHARE */
/* SHARE */
.q-editor-content-item.share {
  min-height: 450px; }

.share-wrapper {
  height: 240px;
  cursor: default; }

.share-wrap {
  position: relative;
  cursor: pointer; }

.share-title {
  margin: 5px;
  height: 30px;
  padding: 4px;
  text-align: center;
  font-weight: 500;
  cursor: pointer;
  position: absolute; }

.share-title {
  top: 0px;
  left: 66px;
  font-size: 120%;
  margin: 0px; }

.share-header {
  font-size: 170%;
  font-weight: 500;
  position: relative;
  text-align: left;
  padding-bottom: 10px;
  margin-top: 2px;
  padding-left: 11px; }

.share-subtitle {
  font-size: 100%; }

.share-subtitle {
  margin: 0px;
  height: 30px;
  padding: 4px;
  text-align: left;
  font-weight: 400;
  cursor: pointer;
  position: absolute;
  top: 20px;
  left: 66px;
  font-size: 100%; }

.share-screenshot-button:hover {
  background: rgba(195, 195, 195, 0.2); }

.share-print-button {
  margin: 5px;
  height: 30px;
  padding: 4px;
  text-align: center;
  font-weight: 500;
  cursor: pointer; }

.share-print-button:hover {
  background: rgba(195, 195, 195, 0.2); }

.share-icon-box {
  height: 50px;
  width: 50px;
  border: 1px solid gray;
  margin: 10px; }

.share-link-wrap {
  padding: 10px;
  text-align: center; }

.share-link-title {
  font-size: 120%;
  padding-top: 28px;
  border-top: 1px solid #999; }

.share-link-input,
.share-link-input:focus,
.share-link-input:active {
  border: 1px solid rgba(128, 128, 128, 0.32) !important;
  padding: 10px;
  width: 100%;
  background: rgba(255, 0, 0, 0);
  border-radius: 1px;
  color: gray; }

.share-image-wrap {
  position: absolute;
  left: 254px;
  width: 518px;
  height: 100%;
  top: 0;
  border-left: 1px solid #999;
  padding-left: 30px;
  padding-top: 20px; }

.share-image-wrap:before {
  content: '';
  background-image: url(../images/grinders/cloud-large-grinder-grayLight-on-white.gif);
  background-repeat: no-repeat;
  text-align: center;
  width: 100%;
  padding-top: 170px;
  background-position: center;
  top: 119px;
  position: absolute;
  left: 14px; }

.share-image-title {
  font-size: 22px;
  padding-bottom: 10px;
  font-weight: 900; }

.share-image-image {
  height: 328px;
  width: 100%;
  position: relative;
  /*top: 46px;*/
  background-repeat: no-repeat; }

.share-image-meta-wrap {
  bottom: 0;
  position: absolute;
  height: 50px;
  width: 100%; }

.share-image-download-button {
  bottom: 9px;
  position: absolute;
  right: 0px;
  padding: 10px; }

.share-image-download-button:hover {
  text-decoration: none; }

.share-image-download-button:visited,
.share-image-download-button:link {
  text-decoration: none !important;
  color: white; }

.expand-share-link {
  height: 350px; }

.expand-share-image {
  height: 450px;
  width: 800px; }

/* Share icons */
.share-icon-box.image,
.share-icon-box.print,
.share-icon-box.link {
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  overflow: hidden;
  border: none;
  opacity: 0.5; }

.share-wrap.link:hover > .share-icon-box.link,
.share-wrap.print:hover > .share-icon-box.print,
.share-wrap.image:hover > .share-icon-box.image {
  opacity: 1; }

.share-icon-box.image {
  background-position: -370px -53px; }

.share-icon-box.print {
  background-position: -370px -113px; }

.share-icon-box.link {
  background-position: -370px -172px; }

.share-print-download a,
.share-print-download-button {
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -180px -160px;
  width: 93px;
  height: 58px;
  position: relative;
  margin: auto;
  color: transparent !important;
  opacity: 0.3;
  padding: 26px;
  top: 42px; }

.share-print-download-button:hover {
  opacity: 1;
  color: transparent; }

/*
┌─┐┬─┐┬─┐┌─┐┬─┐  ┌─┐┌─┐┌┐┌┌─┐ 	// rename to feedback pane, see knut.css
├┤ ├┬┘├┬┘│ │├┬┘  ├─┘├─┤│││├┤ 
└─┘┴└─┴└─└─┘┴└─  ┴  ┴ ┴┘└┘└─┘
*/
.error-pane {
  position: absolute;
  bottom: 0;
  left: 0;
  width: auto;
  z-index: 999999999;
  margin: 10px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  max-width: 500px;
  max-height: 400px; }

.error-pane-content {
  background: rgba(255, 0, 0, 0.81);
  width: 100%;
  height: 100%;
  opacity: 0.9;
  cursor: default;
  border-radius: 3px;
  margin-right: 50px;
  max-height: inherit;
  overflow: hidden;
  /*-webkit-box-shadow: 2px 5px 44px -10px rgba(0,0,0,1);
	-moz-box-shadow: 2px 5px 44px -10px rgba(0,0,0,1);
	box-shadow: 2px 5px 44px -10px rgba(0,0,0,1);*/ }

.error-pane-title {
  color: white;
  padding-left: 10px;
  font-weight: 400;
  font-size: 200%; }

.error-pane-description {
  color: white;
  padding-left: 10px;
  font-weight: 400;
  font-size: 120%;
  margin: 5px; }

.error-pane-x {
  top: 5px;
  right: 4px;
  width: 20px;
  height: 20px;
  position: absolute;
  color: white;
  font-weight: bold;
  cursor: pointer;
  text-align: center;
  border-radius: 10px; }

.error-pane-x:hover {
  background: white;
  color: rgba(255, 0, 0, 0.81); }

/*
┌┬┐┌─┐┌┐┌┌─┐┌─┐┌─┐  ┌─┐┌─┐┌─┐┌─┐┌─┐┌─┐
│││├─┤│││├─┤│ ┬├┤   ├─┤│  │  ├┤ └─┐└─┐
┴ ┴┴ ┴┘└┘┴ ┴└─┘└─┘  ┴ ┴└─┘└─┘└─┘└─┘└─┘
*/
/* Individual user control wrapper */
.manage-access-info-outer {
  left: 570px !important;
  position: absolute;
  top: 0;
  height: 100%;
  padding-right: 15px;
  display: table;
  max-width: 257px;
  line-height: 1.3; }

.manage-access-info {
  display: table-cell;
  vertical-align: middle; }

.manage-access-container {
  background-color: rgba(255, 255, 255, 0.9);
  height: 100%;
  color: #3F4652;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  padding: 0;
  /*overflow-y: scroll;*/
  /*overflow-x: hidden;*/
  overflow: hidden; }

/* User name + sub title */
.manage-access-title-wrapper {
  width: 100%;
  top: 0;
  height: 120px;
  z-index: 9999999;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  background: rgba(245, 245, 245, 0.95);
  padding-left: 110px;
  position: absolute;
  padding: 23px;
  left: 0; }

/* User name */
.manage-access-title {
  font-size: 27px;
  font-weight: 900;
  text-align: center;
  text-align: left; }

.minimal .manage-access-title {
  font-size: 20px;
  line-height: 1; }

/* User subtitle */
.manange-access-subtitle {
  /*text-align: center;*/
  margin-top: 5px;
  font-style: italic;
  font-size: 17px;
  text-align: left; }

/* Content wrapper (list of clients and projects) */
.manage-access-content-wrapper {
  padding: 23px;
  padding-top: 143px; }

/* Client wrapper */
.manage-access-client-wrapper {
  margin-bottom: 10px;
  background-color: rgba(0, 0, 0, 0.05);
  border-radius: 3px;
  padding-bottom: 8px; }

/* Client header wrap */
.manage-access-client-meta-wrap {
  position: relative;
  height: 90px; }

/* Client logo */
.manage-access-client-logo {
  width: auto;
  max-width: 105px;
  height: 100%;
  position: absolute;
  left: 0px;
  padding: 10px; }

/* Client name */
.manage-access-client-title {
  position: absolute;
  left: 95px;
  font-size: 20px;
  margin: 10px;
  top: 10px;
  font-weight: 900; }

.manage-access-client-description {
  position: absolute;
  top: 50px;
  left: 105px;
  font-size: 14px; }

/* Client project list wrapper */
.manage-access-client-projects-wrap {
  margin-left: 8px;
  position: relative;
  margin-right: 8px; }

/* Client each project wrapper */
.manage-access-project-item {
  position: relative;
  padding: 5px;
  height: 73px;
  border-bottom: 1px dashed rgba(0, 0, 0, 0.1); }

.manage-access-project-item:nth-child(odd) {
  background: rgba(255, 255, 255, 0.53); }

.manage-access-project-item:nth-child(even) {
  background: rgba(255, 255, 255, 0.33); }

.manage-access-project-item:last-child {
  border: none; }

/* Client each project inner wrapper */
/* Client each project logo */
.manage-access-project-item-logo {
  height: 63px;
  position: absolute;
  left: 5px;
  width: 63px; }

/* Client each project name */
.manage-access-project-item-title {
  position: absolute;
  left: 90px;
  /*font-size: 18px;*/
  font-size: 15px;
  font-weight: 900;
  max-width: 350px;
  top: 12px; }

/* Client each project description */
.manage-access-project-item-description {
  position: absolute;
  left: 90px;
  top: 40px;
  font-size: 12px;
  max-width: 350px;
  height: 40px;
  line-height: 1.1; }

/* Client each project role wrapper */
.manage-access-roles-wrapper {
  position: absolute;
  /*left: 450px;*/
  top: 19px;
  z-index: 1000;
  right: 10px;
  left: 350px; }

/* Client each project current role */
.manage-access-current-role {
  max-width: 200px;
  padding: 10px; }

.manage-access-dropdown {
  background: white;
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.2);
  position: relative;
  left: -3px;
  position: fixed;
  z-index: 999999999999999; }

/* Client each projec each role */
.manage-access-available-role {
  padding: 6px 20px;
  border-bottom: 1px dashed rgba(0, 0, 0, 0.07);
  cursor: pointer; }

.manage-access-available-role:last-child {
  border: none; }

.manage-access-available-role:hover {
  background: #F1FCFD; }

.manage-access-button-done {
  /*position: absolute;*/
  /*top: 67px;*/
  /*right: 118px;*/
  z-index: 999999999;
  /*padding: 12px 25px;*/
  /*position: relative;*/
  position: absolute;
  width: 68px;
  height: 28px;
  padding: 0;
  line-height: 2.3;
  float: right;
  font-size: 12px;
  /*top: -5px;*/
  /*right: -4px;	*/
  right: 7px;
  bottom: 10px; }

.manage-access-button-done:before {
  content: 'DONE'; }

.manage-access-ghost {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1; }

/*

██╗     ██╗███████╗████████╗
██║     ██║██╔════╝╚══██╔══╝
██║     ██║███████╗   ██║   
██║     ██║╚════██║   ██║   
███████╗██║███████║   ██║   
╚══════╝╚═╝╚══════╝   ╚═╝   

*/
.grayed {
  color: #999; }

/* LIST HEADER */
/* LIST HEADER */
.d3-list-header {
  position: relative;
  height: 27px;
  background: rgba(0, 0, 0, 0.3);
  color: white;
  margin-bottom: 1px;
  font-size: 12px;
  font-weight: 500; }

.d3-list-header-item {
  cursor: pointer;
  padding-top: 5px;
  position: absolute;
  top: 0;
  height: 100%;
  border-left: 1px dashed rgba(255, 255, 255, 0.5);
  text-align: center;
  overflow: hidden; }

.d3-list-header-item:hover {
  background: rgba(0, 0, 0, 0.1); }

.d3-list-header-item-Name {
  border: none;
  text-align: left;
  padding-left: 49px; }

/* LIST LINE */
/* LIST LINE */
.list-line {
  padding: 0px 0px 0px 35px;
  position: relative;
  height: 50px;
  overflow: visible;
  -webkit-transition: height 250ms ease;
  -moz-transition: height 250ms ease;
  -ms-transition: height 250ms ease;
  -o-transition: height 250ms ease;
  transition: height 250ms ease; }

.list-line:nth-child(odd) {
  background: rgba(0, 0, 0, 0.12); }

.list-line:nth-child(even) {
  background: rgba(0, 0, 0, 0.05); }

.list-line.selected::before {
  content: '';
  width: 100%;
  position: absolute;
  left: 0;
  height: 100%; }

/* SELECT BUTTON */
/* SELECT BUTTON */
.item-select-button {
  position: absolute;
  left: 15px;
  top: 15px;
  background: rgba(0, 0, 0, 0.3);
  width: 17px;
  height: 18px;
  border-radius: 2px;
  z-index: 999;
  cursor: pointer;
  box-shadow: 0px -1px 0 0 rgba(255, 255, 255, 0.7) inset, 0px 16px 7px -4px rgba(0, 0, 0, 0.3) inset, 0px 7px 7px -4px rgba(0, 0, 0, 0.3) inset, -1px 2px 1px -1px rgba(0, 0, 0, 0.5) inset; }

.item-select-button:hover:before {
  opacity: 0.3; }

.item-select-button.active:before {
  opacity: 1 !important; }

.item-select-button:before {
  content: '';
  position: absolute;
  left: 0px;
  top: 0px;
  width: 18px;
  height: 18px;
  background-image: url(../images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -60px -75px;
  opacity: 0; }

.select-all-button {
  position: relative;
  top: 23px !important; }

/* List title (name & description) */
/* List title (name & description) */
.list-title-wrapper {
  overflow: visible;
  padding: 6px 40px 4px 48px;
  min-width: 160px;
  width: 50%;
  height: 50px;
  left: 0;
  position: absolute;
  top: 0; }

.list-title,
.list-description {
  width: 100%;
  overflow: hidden;
  word-break: break-all;
  height: 20px; }

.list-description {
  color: #666;
  font-style: italic;
  width: 100%;
  font-weight: 400 !important;
  font-size: 13px;
  overflow: visible; }

.list-title input,
.list-description input {
  background: none;
  border: none;
  padding: 0;
  width: 100%; }

/* LIST ATTRIBUTIONS */
/* LIST ATTRIBUTIONS */
.list-attribute-wrapper {
  top: 0;
  height: 50px;
  border-left: 1px dashed rgba(255, 255, 255, 0.5);
  text-align: center;
  overflow: hidden;
  width: 10%;
  position: absolute;
  float: right;
  color: #333333;
  font-size: 13px;
  padding: 10px;
  overflow: visible;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: hand; }

.list-attribute {
  width: 100%;
  overflow: hidden; }

.list-attribute-email {
  word-break: break-all; }

.list-attribute-wrapper input {
  width: 100%;
  overflow: hidden;
  border: none;
  outline: none;
  text-align: center;
  background: transparent !important;
  padding: 0 !important;
  position: relative;
  margin: 0 !important;
  /*top: 6px;*/
  /*display: table-cell;*/
  /*vertical-align: middle;	*/ }

.canEdit .list-attribute-category,
.canEdit .list-title,
.canEdit .list-description,
.canEdit .list-attribute-company,
.canEdit .list-attribute-position,
.canEdit .list-attribute-phone {
  cursor: pointer;
  line-height: 1.2; }

/* List folder */
.list-folder-wrapper {
  position: relative;
  width: 60px;
  height: 50px;
  left: 11px;
  background-image: url("../images/evil_sprite.png");
  background-repeat: no-repeat;
  background-position: -102px -141px; }

.list-folder-wrapper:before {
  content: '';
  position: absolute;
  width: 18px;
  height: 18px;
  left: -4px;
  top: 15px;
  background-image: url("../images/evil_sprite.png");
  background-repeat: no-repeat;
  background-position: 4px -79px;
  cursor: pointer;
  z-index: 9999; }

.list-folder-wrapper.open-folder:before {
  background-position: 0px 5px; }

.create-folder-button {
  position: absolute;
  top: 8px;
  cursor: pointer;
  z-index: 99999; }

/* LIST INFO BUTTON */
.list-item-info {
  background-color: rgba(0, 0, 0, 0.25);
  width: 19px;
  height: 19px;
  border-radius: 20px;
  position: absolute;
  background-image: url("../images/evil_sprite.png");
  background-repeat: no-repeat;
  background-position: -87px -202px;
  right: 14px;
  top: 13px;
  cursor: pointer; }

.list-item-info:hover {
  background-color: rgba(0, 0, 0, 0.5); }

.open-list-info {
  border-top: 1px dashed rgba(255, 255, 255, 0.5);
  height: 190px;
  top: 50px;
  left: 0;
  position: absolute;
  width: 100%;
  padding-left: 320px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  border-bottom: 1px solid rgba(0, 0, 0, 0.2); }

/*
┬  ┬┌─┐┌┬┐  ┌─┐┌─┐┌─┐   ┬ ┬┌─┐┌─┐
│  │└─┐ │   ├─┘│ │├─┘───│ │├─┘└─┐
┴─┘┴└─┘ ┴   ┴  └─┘┴     └─┘┴  └─┘
*/
.list-popup-wrapper {
  position: absolute;
  z-index: 1000;
  background-color: white;
  font-size: 120%;
  padding: 10px;
  width: 168px;
  border-radius: 3px;
  border: 0;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  margin-top: 16px;
  font-size: 12px !important;
  font-weight: 500 !important;
  font-style: normal !important; }

.list-popup-wrapper:before {
  content: '';
  background: white;
  width: 20px;
  height: 20px;
  position: absolute;
  top: -3px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
  left: 24px;
  left: 83px; }

.list-popup-new {
  border: 0px;
  background-color: white;
  font-size: 14px;
  position: relative;
  cursor: pointer;
  top: 3px; }

.list-popup-new {
  font-style: normal !important;
  font-size: 14px !important; }

.list-popup-line-wrap {
  height: auto;
  cursor: pointer; }

.list-popup-line {
  float: left;
  position: relative;
  padding: 0;
  margin-bottom: 2px;
  padding-left: 5px;
  background: rgba(0, 0, 0, 0.1);
  border: none;
  border-radius: 2px 0px 0px 2px;
  height: 21px;
  overflow: hidden;
  width: 84% !important;
  color: #333333 !important;
  text-align: center;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.7; }

.list-popup-line:hover {
  background: rgba(0, 0, 0, 0.2); }

.list-popup-line-del {
  width: 23px;
  height: 21px;
  border-radius: 0px 2px 2px 0px;
  top: 0px;
  position: relative;
  float: right;
  cursor: pointer;
  background: rgba(0, 0, 0, 0.1);
  font-weight: 500;
  font-size: 14px;
  text-indent: 1px;
  text-align: center;
  line-height: 1.4;
  color: #999;
  opacity: 0.5;
  font-weight: 900; }

.list-popup-line-del:hover {
  opacity: 1; }

/* Auto complete for tags */
.list-ghost-tag {
  font-style: normal !important;
  font-size: 14px !important;
  text-align: left;
  font-weight: 400;
  bottom: 7px;
  position: absolute;
  opacity: 0.3;
  left: 11px; }

.shy-ghost {
  opacity: 0; }

/*
┌─┐┬ ┬┌─┐┌┬┐┌─┐┌┬┐  ┬  ┬┌─┐┌┬┐  ┌─┐┌┬┐┬ ┬┬  ┬┌┐┌┌─┐  ┬ ┬┌─┐┌─┐┬─┐┌─┐
│  │ │└─┐ │ │ ││││  │  │└─┐ │   └─┐ │ └┬┘│  │││││ ┬  │ │└─┐├┤ ├┬┘└─┐
└─┘└─┘└─┘ ┴ └─┘┴ ┴  ┴─┘┴└─┘ ┴   └─┘ ┴  ┴ ┴─┘┴┘└┘└─┘  └─┘└─┘└─┘┴└─└─┘
*/
.list-attribute-access {
  display: block;
  top: 8px;
  position: absolute;
  width: 100%;
  padding-right: 14px; }

/*
┌─┐┬ ┬┌─┐┌┬┐┌─┐┌┬┐  ┬  ┬┌─┐┌┬┐  ┌─┐┌┬┐┬ ┬┬  ┬┌┐┌┌─┐  ┌┬┐┌─┐┌┬┐┌─┐  ┬  ┬┌┐ ┬─┐┌─┐┬─┐┬ ┬
│  │ │└─┐ │ │ ││││  │  │└─┐ │   └─┐ │ └┬┘│  │││││ ┬   ││├─┤ │ ├─┤  │  │├┴┐├┬┘├─┤├┬┘└┬┘
└─┘└─┘└─┘ ┴ └─┘┴ ┴  ┴─┘┴└─┘ ┴   └─┘ ┴  ┴ ┴─┘┴┘└┘└─┘  ─┴┘┴ ┴ ┴ ┴ ┴  ┴─┘┴└─┘┴└─┴ ┴┴└─ ┴ 
*/
/* FILE INFO */
.file-thumb {
  position: absolute;
  width: 130px;
  height: 146px;
  left: 10px;
  padding-bottom: 41px;
  padding-top: 10px; }

.file-thumb-img {
  background: rgba(0, 0, 0, 0.2);
  width: 100%;
  height: 100%;
  border: 1px solid gray; }

.file-list-wrapper {
  position: absolute;
  left: 150px;
  width: 160px;
  font-size: 12px;
  color: #666;
  line-height: 1.2;
  height: 134px;
  overflow: hidden;
  border-left: 1px dashed rgba(255, 255, 255, 0.5);
  padding-left: 10px;
  padding-top: 10px;
  padding-bottom: 10px; }

.list-meta-title {
  color: #666;
  padding-bottom: 5px;
  font-weight: 500;
  font-size: 12px; }

.file-uploaded-by,
.each-file-in-list {
  color: black; }

.each-file-in-list {
  word-break: break-all; }

.file-uploaded-by {
  font-size: 12px;
  line-height: 1.2; }

.file-description-outer-wrapper,
.file-other-meta-wrapper {
  width: 50%;
  width: 100%;
  height: 100%;
  border-left: 1px dashed rgba(255, 255, 255, 0.5);
  position: relative;
  padding-bottom: 22px;
  display: inline-block;
  vertical-align: top; }

.file-description-outer-wrapper {
  height: 129px;
  border-left: none !important;
  overflow: hidden; }

.file-description-outer-wrapper {
  padding: 10px; }

.file-other-meta-wrapper {
  padding-bottom: 0; }

.file-description-inner-wrapper {
  background: transparent;
  height: 95px;
  padding: 0;
  font-size: 12px;
  border: none;
  overflow-y: scroll;
  overflow-x: hidden;
  width: 120%;
  padding-right: 20%; }

.file-uploaded-by-title,
.file-uploaded-by,
.file-stats-downloads,
.file-stats-views {
  line-height: 1; }

.file-uploaded-by {
  top: 3px;
  position: relative; }

.file-stats-downloads {
  background: rgba(0, 0, 0, 0.65);
  padding: 7px 10px 7px 10px;
  text-align: center;
  line-height: 1;
  margin-right: 4px;
  color: white;
  font-weight: 500;
  box-shadow: -1px 1px 2px 0 rgba(0, 0, 0, 0.3);
  cursor: pointer;
  width: 100%;
  overflow: hidden;
  height: 96px;
  line-height: 1;
  opacity: 0.3;
  margin-bottom: 8px;
  padding-top: 36px; }

.file-stats-downloads:hover {
  background: black; }

.file-uploaded-by-wrapper {
  border-top: 1px dashed rgba(255, 255, 255, 0.5);
  margin-top: 6px;
  padding-top: 7px;
  padding-left: 10px;
  padding-right: 10px; }

.file-copright-line {
  width: 100%;
  border: none;
  outline: none;
  background: transparent; }

.file-stats-wrapper {
  padding-top: 10px;
  padding-left: 10px;
  padding-right: 10px; }

.file-copright-wrapper {
  position: absolute;
  left: 0px;
  bottom: 3px;
  width: 320px;
  padding-left: 10px;
  border-top: 1px dashed rgba(255, 255, 255, 0.5);
  padding-top: 5px; }

.file-copright-wrapper,
.file-uploaded-by-wrapper {
  border-top: 1px dotted rgba(0, 0, 0, 0.15); }

.file-list-wrapper,
.file-description-outer-wrapper,
.file-other-meta-wrapper {
  border-left: 1px dotted rgba(0, 0, 0, 0.15); }

@media screen and (max-width: 840px) {
  .file-thumb {
    width: 99px;
    height: 103px;
    padding-bottom: 0; }
  .file-list-wrapper {
    left: 120px; }
  .open-list-info {
    padding-left: 285px; }
  .file-copright-wrapper {
    width: 285px; } }

@media screen and (max-width: 780px) {
  .killat780 {
    display: none; }
  .file-list-wrapper {
    width: 125px; }
  .open-list-info {
    padding-left: 250px; }
  .file-copright-wrapper {
    width: 250px; } }

/*
 ██████╗██╗   ██╗███████╗████████╗ ██████╗ ███╗   ███╗     ██████╗██╗  ██╗███████╗ ██████╗██╗  ██╗██████╗  ██████╗ ██╗  ██╗
██╔════╝██║   ██║██╔════╝╚══██╔══╝██╔═══██╗████╗ ████║    ██╔════╝██║  ██║██╔════╝██╔════╝██║ ██╔╝██╔══██╗██╔═══██╗╚██╗██╔╝
██║     ██║   ██║███████╗   ██║   ██║   ██║██╔████╔██║    ██║     ███████║█████╗  ██║     █████╔╝ ██████╔╝██║   ██║ ╚███╔╝ 
██║     ██║   ██║╚════██║   ██║   ██║   ██║██║╚██╔╝██║    ██║     ██╔══██║██╔══╝  ██║     ██╔═██╗ ██╔══██╗██║   ██║ ██╔██╗ 
╚██████╗╚██████╔╝███████║   ██║   ╚██████╔╝██║ ╚═╝ ██║    ╚██████╗██║  ██║███████╗╚██████╗██║  ██╗██████╔╝╚██████╔╝██╔╝ ██╗
 ╚═════╝ ╚═════╝ ╚══════╝   ╚═╝    ╚═════╝ ╚═╝     ╚═╝     ╚═════╝╚═╝  ╚═╝╚══════╝ ╚═════╝╚═╝  ╚═╝╚═════╝  ╚═════╝ ╚═╝  ╚═╝
*/
/* SQUARED THREE */
.squaredThree {
  position: relative;
  margin-left: 0px;
  width: 22px;
  height: 22px; }

.squaredThree label {
  cursor: pointer;
  position: absolute;
  width: 15px;
  height: 15px;
  z-index: 222;
  border-radius: 4px;
  -webkit-box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.5), 0px 1px 0px rgba(255, 255, 255, 0.4);
  -moz-box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.5), 0px 1px 0px rgba(255, 255, 255, 0.4);
  box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.5), 0px 1px 0px rgba(255, 255, 255, 0.4);
  background: -webkit-linear-gradient(top, rgba(34, 34, 34, 0.7) 0%, rgba(69, 72, 77, 0.7) 100%);
  background: -moz-linear-gradient(top, rgba(34, 34, 34, 0.7) 0%, rgba(69, 72, 77, 0.7) 100%);
  background: -o-linear-gradient(top, rgba(34, 34, 34, 0.7) 0%, rgba(69, 72, 77, 0.7) 100%);
  background: -ms-linear-gradient(top, rgba(34, 34, 34, 0.7) 0%, rgba(69, 72, 77, 0.7) 100%);
  background: linear-gradient(top, rgba(34, 34, 34, 0.7) 0%, rgba(69, 72, 77, 0.7) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#222', endColorstr='#45484d',GradientType=0 ); }

.squaredThree label:after {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  opacity: 0;
  content: '';
  position: absolute;
  width: 9px;
  height: 5px;
  background: transparent;
  top: 4px;
  left: 4px;
  border: 3px solid #fcfff4;
  border-top: none;
  border-right: none; }

.squaredThree label:hover::after {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  filter: alpha(opacity=30);
  opacity: 0.3;
  top: 4px;
  left: 2px;
  height: 6px;
  width: 11px; }

.squaredThree input[type=checkbox]:checked + label:after {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  opacity: 1;
  top: 4px;
  left: 2px;
  height: 6px;
  width: 11px; }

/*

This file containes CSS animations, transitions, and general CSS rules that 
may need to be adjusted to function on all browsers. 

*/
/*
 █████╗ ███╗   ██╗██╗███╗   ███╗ █████╗ ████████╗██╗ ██████╗ ███╗   ██╗
██╔══██╗████╗  ██║██║████╗ ████║██╔══██╗╚══██╔══╝██║██╔═══██╗████╗  ██║
███████║██╔██╗ ██║██║██╔████╔██║███████║   ██║   ██║██║   ██║██╔██╗ ██║
██╔══██║██║╚██╗██║██║██║╚██╔╝██║██╔══██║   ██║   ██║██║   ██║██║╚██╗██║
██║  ██║██║ ╚████║██║██║ ╚═╝ ██║██║  ██║   ██║   ██║╚██████╔╝██║ ╚████║
╚═╝  ╚═╝╚═╝  ╚═══╝╚═╝╚═╝     ╚═╝╚═╝  ╚═╝   ╚═╝   ╚═╝ ╚═════╝ ╚═╝  ╚═══╝
*/
.share-link-input {
  -webkit-animation: linkFader 2500ms ease;
  -webkit-animation-fill-mode: forwards;
  -moz-animation: linkFader 2500ms ease;
  -moz-animation-fill-mode: forwards;
  -o-animation: linkFader 2500ms ease;
  -o-animation-fill-mode: forwards;
  animation: linkFader 2500ms ease;
  animation-fill-mode: forwards; }

@-webkit-keyframes linkFader {
  0% {
    background-color: #fefae2; }
  100% {
    background-color: white; } }

@-moz-keyframes linkFader {
  0% {
    background-color: #fefae2; }
  100% {
    background-color: white; } }

@-o-keyframes linkFader {
  0% {
    background-color: #fefae2; }
  100% {
    background-color: white; } }

@keyframes linkFader {
  0% {
    background-color: #fefae2; }
  100% {
    background-color: white; } }

/* Open Info Menu */
/*IS THIS ONE STILL VALID???*/
.open-uncollapse {
  -webkit-animation: openUncollapse 250ms ease;
  -webkit-animation-fill-mode: forwards;
  -moz-animation: openUncollapse 250ms ease;
  -moz-animation-fill-mode: forwards;
  -o-animation: openUncollapse 250ms ease;
  -o-animation-fill-mode: forwards;
  animation: openUncollapse 250ms ease;
  animation-fill-mode: forwards; }

@-webkit-keyframes openUncollapse {
  0% {
    width: 0;
    height: 0;
    margin-bottom: 0; }
  100% {
    width: 150px;
    height: 24px;
    margin-bottom: 5px; } }

@-moz-keyframes openUncollapse {
  0% {
    width: 0;
    height: 0;
    margin-bottom: 0; }
  100% {
    width: 150px;
    height: 24px;
    margin-bottom: 5px; } }

@-o-keyframes openUncollapse {
  0% {
    width: 0;
    height: 0;
    margin-bottom: 0; }
  100% {
    width: 150px;
    height: 24px;
    margin-bottom: 5px; } }

@keyframes openUncollapse {
  0% {
    width: 0;
    height: 0;
    margin-bottom: 0; }
  100% {
    width: 150px;
    height: 24px;
    margin-bottom: 5px; } }

.open-open-layers {
  -webkit-animation: openLayerOpener 250ms ease;
  -webkit-animation-fill-mode: forwards;
  -moz-animation: openLayerOpener 250ms ease;
  -moz-animation-fill-mode: forwards;
  -o-animation: openLayerOpener 250ms ease;
  -o-animation-fill-mode: forwards;
  animation: openLayerOpener 250ms ease;
  animation-fill-mode: forwards; }

@-webkit-keyframes openLayerOpener {
  0% {
    width: 0px;
    height: 0px; }
  100% {
    width: 120px;
    height: 24px; } }

@-moz-keyframes openLayerOpener {
  0% {
    width: 0px;
    height: 0px; }
  100% {
    width: 120px;
    height: 24px; } }

@-o-keyframes openLayerOpener {
  0% {
    width: 0px;
    height: 0px; }
  100% {
    width: 120px;
    height: 24px; } }

@keyframes openLayerOpener {
  0% {
    width: 0px;
    height: 0px; }
  100% {
    width: 120px;
    height: 24px; } }

.opacitizer {
  -webkit-animation: opacitizer 250ms ease;
  -webkit-animation-fill-mode: forwards;
  -moz-animation: opacitizer 250ms ease;
  -moz-animation-fill-mode: forwards;
  -o-animation: opacitizer 250ms ease;
  -o-animation-fill-mode: forwards;
  animation: opacitizer 250ms ease;
  animation-fill-mode: forwards; }

@-webkit-keyframes opacitizer {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-moz-keyframes opacitizer {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-o-keyframes opacitizer {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes opacitizer {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.editor-clients-new-wrapper {
  -webkit-animation: nclient 300ms ease;
  -webkit-animation-fill-mode: forwards;
  -moz-animation: nclient 300ms ease;
  -moz-animation-fill-mode: forwards;
  -o-animation: nclient 300ms ease;
  -o-animation-fill-mode: forwards;
  animation: nclient 300ms ease;
  animation-fill-mode: forwards; }

@-webkit-keyframes nclient {
  0% {
    height: 0px;
    opacity: 0; }
  100% {
    height: 300px;
    opacity: 1; } }

@-moz-keyframes nclient {
  0% {
    height: 0px;
    opacity: 0; }
  100% {
    height: 300px;
    opacity: 1; } }

@-o-keyframes nclient {
  0% {
    height: 0px;
    opacity: 0; }
  100% {
    height: 300px;
    opacity: 1; } }

@keyframes nclient {
  0% {
    height: 0px;
    opacity: 0; }
  100% {
    height: 300px;
    opacity: 1; } }

/*Is this one in use?*/
input[type=checkbox]:checked + label.check {
  -webkit-animation-name: labelON;
  -webkit-animation-duration: .2s;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-in;
  -moz-animation-name: labelON;
  -moz-animation-duration: .2s;
  -moz-animation-iteration-count: 1;
  -moz-animation-timing-function: ease-in;
  -o-animation-name: labelON;
  -o-animation-duration: .2s;
  -o-animation-iteration-count: 1;
  -o-animation-timing-function: ease-in;
  animation-name: labelON;
  animation-duration: .2s;
  animation-iteration-count: 1;
  animation-timing-function: ease-in;
  -webkit-box-shadow: #244766 -1px 0px 3px;
  -moz-box-shadow: #244766 -1px 0px 3px;
  box-shadow: #244766 -1px 0px 3px; }

@-webkit-keyframes labelON {
  0% {
    top: 0px;
    left: 0px; }
  100% {
    top: 0px;
    left: 23px; } }

@-moz-keyframes labelON {
  0% {
    top: 0px;
    left: 0px; }
  100% {
    top: 0px;
    left: 23px; } }

@-o-keyframes labelON {
  0% {
    top: 0px;
    left: 0px; }
  100% {
    top: 0px;
    left: 23px; } }

@keyframes labelON {
  0% {
    top: 0px;
    left: 0px; }
  100% {
    top: 0px;
    left: 23px; } }

/*Is this one in use?*/
input[type=checkbox] + label.check {
  -webkit-animation-name: labelOFF;
  -webkit-animation-duration: .2s;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-in;
  -moz-animation-name: labelOFF;
  -moz-animation-duration: .2s;
  -moz-animation-iteration-count: 1;
  -moz-animation-timing-function: ease-in;
  -o-animation-name: labelOFF;
  -o-animation-duration: .2s;
  -o-animation-iteration-count: 1;
  -o-animation-timing-function: ease-in;
  animation-name: labelOFF;
  animation-duration: .2s;
  animation-iteration-count: 1;
  animation-timing-function: ease-in;
  -webkit-box-shadow: #244766 1px 0px 3px;
  -moz-box-shadow: #244766 1px 0px 3px;
  box-shadow: #244766 1px 0px 3px; }

@-webkit-keyframes labelOFF {
  0% {
    top: 0px;
    left: 23px; }
  100% {
    top: 0px;
    left: 0px; } }

@-moz-keyframes labelOFF {
  0% {
    top: 0px;
    left: 23px; }
  100% {
    top: 0px;
    left: 0px; } }

@-o-keyframes labelOFF {
  0% {
    top: 0px;
    left: 23px; }
  100% {
    top: 0px;
    left: 0px; } }

@keyframes labelOFF {
  0% {
    top: 0px;
    left: 23px; }
  100% {
    top: 0px;
    left: 0px; } }

#editor-projects-container-new {
  -webkit-animation: prodnewheight 250ms ease;
  -webkit-animation-fill-mode: forwards;
  -moz-animation: prodnewheight 250ms ease;
  -moz-animation-fill-mode: forwards;
  -o-animation: prodnewheight 250ms ease;
  -o-animation-fill-mode: forwards;
  animation: prodnewheight 250ms ease;
  animation-fill-mode: forwards; }

@-webkit-keyframes prodnewheight {
  0% {
    height: 0px; }
  100% {
    height: 304px; } }

@-moz-keyframes prodnewheight {
  0% {
    height: 0px; }
  100% {
    height: 304px; } }

@-o-keyframes prodnewheight {
  0% {
    height: 0px; }
  100% {
    height: 304px; } }

@keyframes prodnewheight {
  0% {
    height: 0px; }
  100% {
    height: 304px; } }

/*
███╗   ███╗██╗   ██╗██╗  ████████╗██╗
████╗ ████║██║   ██║██║  ╚══██╔══╝██║
██╔████╔██║██║   ██║██║     ██║   ██║
██║╚██╔╝██║██║   ██║██║     ██║   ██║
██║ ╚═╝ ██║╚██████╔╝███████╗██║   ██║
╚═╝     ╚═╝ ╚═════╝ ╚══════╝╚═╝   ╚═╝
*/
#map {
  -webkit-transition: -webkit-filter 250ms linear, opacity 250ms linear !important;
  -moz-transition: -moz-filter 250ms linear, opacity 250ms linear !important;
  transition: filter 250ms linear, opacity 250ms linear !important; }

/*.home-status {
	-webkit-transition: height 1250ms ease, opacity 250ms ease;
	-moz-transition: height 1250ms ease, opacity 250ms ease;
	transition: height 1250ms ease, opacity 250ms ease;
	}*/
.q-editor-container {
  /*	-webkit-transition: height 250ms ease, width 250ms ease;
	-moz-transition: height 250ms ease, width 250ms ease;
	transition: height 250ms ease, width 250ms ease;	
*/ }

.q-editor-content-item {
  /*	-webkit-transition: opacity 250ms ease;
	-moz-transition: opacity 250ms ease;
	transition: opacity 250ms ease;
*/ }

#header {
  -webkit-transition: left 250ms ease, width 250ms ease;
  -moz-transition: left 250ms ease, width 250ms ease;
  -o-transition: left 250ms ease, width 250ms ease;
  transition: left 250ms ease, width 250ms ease; }

.leaflet-top.leaflet-right {
  /*	-webkit-transition: bottom 250ms ease, right 250ms ease;
	-moz-transition: bottom 250ms ease, right 250ms ease;	
	-o-transition: bottom 250ms ease, right 250ms ease;	
	transition: bottom 250ms ease, right 250ms ease;	
*/ }

.uncollapse-killer {
  -webkit-transition: width 250ms ease, height 250ms ease, left 250ms ease, margin 250ms ease;
  -moz-transition: width 250ms ease, height 250ms ease, left 250ms ease, margin 250ms ease;
  -o-transition: width 250ms ease, height 250ms ease, left 250ms ease, margin 250ms ease;
  transition: width 250ms ease, height 250ms ease, left 250ms ease, margin 250ms ease; }

#open-layers {
  -webkit-transition: right 250ms ease, opacity 250ms;
  -moz-transition: right 250ms ease, opacity 250ms;
  -o-transition: right 250ms ease, opacity 250ms;
  transition: right 250ms ease, opacity 250ms; }

.legends-collapser-trans {
  -webkit-transition: opacity 250ms ease, left 250ms ease;
  -moz-transition: opacity 250ms ease, left 250ms ease;
  -o-transition: opacity 250ms ease, left 250ms ease;
  transition: opacity 250ms ease, left 250ms ease; }

.legends-inner {
  -webkit-transition: height 250ms ease, width 250ms ease, left 250ms ease;
  -moz-transition: height 250ms ease, width 250ms ease, left 250ms ease;
  -o-transition: height 250ms ease, width 250ms ease, left 250ms ease;
  transition: height 250ms ease, width 250ms ease, left 250ms ease; }

.editor-client-edit-wrapper {
  -webkit-transition: height 300ms ease, opacity 300ms ease;
  -moz-transition: height 300ms ease, opacity 300ms ease;
  -o-transition: height 300ms ease, opacity 300ms ease;
  transition: height 300ms ease, opacity 300ms ease; }

.editor-project-edit-wrapper {
  -webkit-transition: height 300ms ease, opacity 300ms ease, left 250ms ease;
  -moz-transition: height 300ms ease, opacity 300ms ease, left 250ms ease;
  -o-transition: height 300ms ease, opacity 300ms ease, left 250ms ease;
  transition: height 300ms ease, opacity 300ms ease, left 250ms ease; }

.home-status {
  -webkit-transition: height 250ms ease, opacity 250ms ease;
  -moz-transition: height 250ms ease, opacity 250ms ease;
  transition: height 250ms ease, opacity 250ms ease; }

.leaflet-top.leaflet-left {
  -webkit-transition: opacity 250ms ease, width 250ms ease;
  -moz-transition: opacity 250ms ease, width 250ms ease;
  -o-transition: opacity 250ms ease, width 250ms ease;
  transition: opacity 250ms ease, width 250ms ease; }

/*
██╗  ██╗███████╗██╗ ██████╗ ██╗  ██╗████████╗
██║  ██║██╔════╝██║██╔════╝ ██║  ██║╚══██╔══╝
███████║█████╗  ██║██║  ███╗███████║   ██║   
██╔══██║██╔══╝  ██║██║   ██║██╔══██║   ██║   
██║  ██║███████╗██║╚██████╔╝██║  ██║   ██║   
╚═╝  ╚═╝╚══════╝╚═╝ ╚═════╝ ╚═╝  ╚═╝   ╚═╝   
*/
.editor-clients-container {
  -webkit-transition: height 300ms ease;
  -moz-transition: height 300ms ease;
  transition: height 300ms ease; }

.select-elems,
#editor-map-controls-inner-wrap,
.connect-outer,
.map-layermenu-outer,
.layer-menu-item-wrap,
.editor-project-edit-super-wrap,
#editor-map-initpos-coordinates,
#editor-map-bounds-coordinates,
.settings-outer,
.project-item {
  -webkit-transition: height 250ms ease;
  -moz-transition: height 250ms ease;
  transition: height 250ms ease; }

.item-list,
.cartocss-layerselector-outer {
  -webkit-transition: height 150ms ease;
  -moz-transition: height 150ms ease;
  -o-transition: height 150ms ease;
  transition: height 150ms ease; }

/*
██╗    ██╗██╗██████╗ ████████╗██╗  ██╗
██║    ██║██║██╔══██╗╚══██╔══╝██║  ██║
██║ █╗ ██║██║██║  ██║   ██║   ███████║
██║███╗██║██║██║  ██║   ██║   ██╔══██║
╚███╔███╔╝██║██████╔╝   ██║   ██║  ██║
 ╚══╝╚══╝ ╚═╝╚═════╝    ╚═╝   ╚═╝  ╚═╝
*/
.leaflet-bottom.leaflet-right,
.status-progress-bar {
  -webkit-transition: width 250ms ease;
  -moz-transition: width 250ms ease;
  -o-transition: width 250ms ease;
  transition: width 250ms ease; }

/*
██╗     ███████╗███████╗████████╗
██║     ██╔════╝██╔════╝╚══██╔══╝
██║     █████╗  █████╗     ██║   
██║     ██╔══╝  ██╔══╝     ██║   
███████╗███████╗██║        ██║   
╚══════╝╚══════╝╚═╝        ╚═╝   
*/
.legends-inner-slider-sliding,
.legends-inner-slider {
  -webkit-transition: left 500ms ease;
  -moz-transition: left 500ms ease;
  transition: left 500ms ease; }

.editor-projects-item,
.layer-item {
  -webkit-transition: left 250ms ease;
  -moz-transition: left 250ms ease;
  -o-transition: left 250ms ease;
  transition: left 250ms ease; }

/*
████████╗ ██████╗ ██████╗ 
╚══██╔══╝██╔═══██╗██╔══██╗
   ██║   ██║   ██║██████╔╝
   ██║   ██║   ██║██╔═══╝ 
   ██║   ╚██████╔╝██║     
   ╚═╝    ╚═════╝ ╚═╝     
*/
#menuslider {
  -webkit-transition: top 250ms ease;
  -moz-transition: top 250ms ease;
  -o-transition: top 250ms ease;
  transition: top 250ms ease; }

/*
 ██████╗ ██████╗  █████╗  ██████╗██╗████████╗██╗   ██╗
██╔═══██╗██╔══██╗██╔══██╗██╔════╝██║╚══██╔══╝╚██╗ ██╔╝
██║   ██║██████╔╝███████║██║     ██║   ██║    ╚████╔╝ 
██║   ██║██╔═══╝ ██╔══██║██║     ██║   ██║     ╚██╔╝  
╚██████╔╝██║     ██║  ██║╚██████╗██║   ██║      ██║   
 ╚═════╝ ╚═╝     ╚═╝  ╚═╝ ╚═════╝╚═╝   ╚═╝      ╚═╝   
 */
.editor-client-edit-toggle,
.fadeOut {
  -webkit-transition: opacity 300ms ease;
  -moz-transition: opacity 300ms ease;
  -o-transition: opacity 300ms ease;
  transition: opacity 300ms ease; }

.list .dropdown-button,
.box .dropdown-button,
#legends-opener,
.editor-projects-item h5,
.start-panne-recent-projects {
  -webkit-transition: opacity 250ms ease;
  -moz-transition: opacity 250ms ease;
  -o-transition: opacity 250ms ease;
  transition: opacity 250ms ease; }

.fullscreen-drop {
  -webkit-transition: opacity 100ms ease-in-out;
  -moz-transition: opacity 100ms ease-in-out;
  -o-transition: opacity 100ms ease-in-out;
  transition: opacity 100ms ease-in-out; }

.fullscreen-dropped {
  -webkit-transition: opacity 100ms ease-in-out;
  -moz-transition: opacity 100ms ease-in-out;
  -o-transition: opacity 100ms ease-in-out;
  transition: opacity 100ms ease-in-out; }

/*
 ██████╗ ████████╗██╗  ██╗███████╗██████╗ 
██╔═══██╗╚══██╔══╝██║  ██║██╔════╝██╔══██╗
██║   ██║   ██║   ███████║█████╗  ██████╔╝
██║   ██║   ██║   ██╔══██║██╔══╝  ██╔══██╗
╚██████╔╝   ██║   ██║  ██║███████╗██║  ██║
 ╚═════╝    ╚═╝   ╚═╝  ╚═╝╚══════╝╚═╝  ╚═╝
*/
#legends-control-inner-content {
  -webkit-transition: padding 250ms ease;
  -moz-transition: padding 250ms ease;
  -o-transition: padding 250ms ease;
  transition: padding 250ms ease; }

.leaflet-control-legends {
  -webkit-transition: max-width 250ms ease;
  -moz-transition: max-width 250ms ease;
  -o-transition: max-width 250ms ease;
  transition: max-width 250ms ease; }

/*
██████╗  ██████╗ ████████╗ █████╗ ████████╗██╗ ██████╗ ███╗   ██╗███████╗
██╔══██╗██╔═══██╗╚══██╔══╝██╔══██╗╚══██╔══╝██║██╔═══██╗████╗  ██║██╔════╝
██████╔╝██║   ██║   ██║   ███████║   ██║   ██║██║   ██║██╔██╗ ██║███████╗
██╔══██╗██║   ██║   ██║   ██╔══██║   ██║   ██║██║   ██║██║╚██╗██║╚════██║
██║  ██║╚██████╔╝   ██║   ██║  ██║   ██║   ██║╚██████╔╝██║ ╚████║███████║
╚═╝  ╚═╝ ╚═════╝    ╚═╝   ╚═╝  ╚═╝   ╚═╝   ╚═╝ ╚═════╝ ╚═╝  ╚═══╝╚══════╝
                                                                         
 ██╗███╗   ██╗ ██████╗ ████████╗     █████╗ ███╗   ██╗██╗███╗   ███╗ █████╗ ████████╗███████╗██████╗ ██╗ 
██╔╝████╗  ██║██╔═══██╗╚══██╔══╝    ██╔══██╗████╗  ██║██║████╗ ████║██╔══██╗╚══██╔══╝██╔════╝██╔══██╗╚██╗
██║ ██╔██╗ ██║██║   ██║   ██║       ███████║██╔██╗ ██║██║██╔████╔██║███████║   ██║   █████╗  ██║  ██║ ██║
██║ ██║╚██╗██║██║   ██║   ██║       ██╔══██║██║╚██╗██║██║██║╚██╔╝██║██╔══██║   ██║   ██╔══╝  ██║  ██║ ██║
╚██╗██║ ╚████║╚██████╔╝   ██║       ██║  ██║██║ ╚████║██║██║ ╚═╝ ██║██║  ██║   ██║   ███████╗██████╔╝██╔╝
 ╚═╝╚═╝  ╚═══╝ ╚═════╝    ╚═╝       ╚═╝  ╚═╝╚═╝  ╚═══╝╚═╝╚═╝     ╚═╝╚═╝  ╚═╝   ╚═╝   ╚══════╝╚═════╝ ╚═╝ 
*/
.editor-projects-item.ct0.active:before,
.active-client:before {
  -webkit-transform: rotate(320deg);
  -moz-transform: rotate(320deg);
  transform: rotate(320deg); }

.rotate180 {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg); }

.rotate90 {
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg); }

.pane-open {
  -webkit-transform: rotate(90deg) !important;
  -moz-transform: rotate(90deg) !important;
  transform: rotate(90deg) !important; }

.rotate270,
#menucloser {
  -webkit-transform: rotate(270deg);
  -moz-transform: rotate(270deg);
  -o-transform: rotate(270deg);
  transform: rotate(270deg); }

.squaredThree label:after {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg); }

.editor-project-edit-super-wrap:before,
.backpane-admin-box.green:before,
.backpane-superadmin-box.green:before,
.baselayertoggle-list:before,
#menuslider-arrow:before,
.help-tooltip-arrow:before {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg); }

/* Start pane circle */
.startpane-circle-container {
  position: absolute;
  width: 0;
  height: 0;
  top: 50%;
  left: 12.5%; }

.startpane-circle {
  position: relative;
  width: 120px;
  height: 120px;
  border-radius: 1000px;
  z-index: 999;
  top: -60px;
  left: -60px;
  box-shadow: 0 0 25px 0 black;
  opacity: 0.8;
  cursor: pointer;
  -webkit-transition: opacity 200ms ease;
  transition: opacity 200ms ease; }

.startpane-circle:hover {
  opacity: 1; }

.startpane-circle:active {
  box-shadow: none; }

.startpane-canvas-container {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background-image: url("../images/startpane-faint-bg.png");
  background-size: cover; }

.spinning-wrapper {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: visible;
  padding-bottom: 0%;
  padding-top: 150px; }

.startpane-spinning-content {
  width: 100%;
  height: 100%;
  position: relative;
  padding-top: 0;
  box-sizing: border-box;
  left: 0;
  text-align: center; }

.startpane-banner {
  overflow: hidden;
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity 250ms ease;
  -moz-transition: opacity 250ms ease;
  -ms-transition: opacity 250ms ease;
  -o-transition: opacity 250ms ease;
  transition: opacity 250ms ease; }

.startpane-recent-projects-container {
  width: 100%;
  max-width: 1070px;
  left: 0;
  position: relative;
  height: 100%;
  margin: auto;
  text-align: center; }

.startpane-header-title {
  color: #fff;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  margin: 0;
  margin-bottom: 15px;
  text-align: left;
  font-size: 26px;
  padding-left: 0px; }

.startpane-project-list {
  margin: auto;
  padding-bottom: 200px;
  text-align: left; }

.start-panne-recent-projects {
  width: 350px;
  height: 233px;
  margin: 10px 0px;
  background-color: white;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, "Open Sans";
  text-align: center;
  line-height: 1.6;
  font-weight: 900;
  font-size: 15px;
  cursor: pointer;
  position: relative;
  display: inline-block;
  margin: 2px;
  margin-bottom: 0;
  margin-top: 0;
  overflow: hidden;
  opacity: 0.9;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.15); }

.start-panne-recent-projects:hover {
  opacity: 1; }

.start-panne-recent-projects img {
  /*width: 100%;*/
  position: absolute;
  left: 0; }

/*Start pane*/
/*Start pane*/
/*Start pane*/
#start-pane {
  position: absolute;
  margin: auto;
  width: 100%;
  height: 100%;
  text-align: center;
  padding-top: 300px; }

.start-pane-project {
  display: inline-block;
  width: 250px;
  vertical-align: top;
  height: 201px;
  padding: 0px;
  margin: 12px;
  text-align: left;
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
  cursor: pointer;
  position: relative; }

.start-pane-project:hover {
  background: white; }

.start-pane-project:active {
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.1); }

.start-project-name {
  font-size: 15px;
  font-weight: 600;
  overflow: hidden;
  position: absolute;
  bottom: 4px;
  text-align: center;
  color: #FFF;
  background: rgba(0, 0, 0, 0.4);
  right: 4px;
  line-height: 1.3;
  padding-left: 10px;
  padding-right: 10px;
  max-width: 282px;
  padding-top: 6px;
  padding-bottom: 6px; }

img.start-project-client-logo {
  position: absolute;
  z-index: 999;
  bottom: 6px;
  left: 6px;
  width: 50px;
  opacity: 0.7; }

.start-project-short-name {
  height: 38px;
  padding-top: 7px;
  line-height: 1.7; }

.start-project-image {
  height: 156px;
  overflow: hidden; }

.start-pane-project img {
  width: 244px;
  position: relative;
  left: 3px;
  top: 3px; }

.startpane-user-name {
  color: white;
  text-align: left;
  padding-left: 6px;
  padding-bottom: 20px;
  font-size: 15px;
  font-style: italic; }

.startpane-user-last-login {
  color: white;
  text-align: left;
  padding-left: 6px; }

.start-project-client-name {
  position: absolute;
  bottom: 36px;
  background: rgba(0, 0, 0, 0.4);
  right: 4px;
  padding-left: 8px;
  padding-right: 8px;
  font-size: 14px;
  color: white;
  padding-bottom: 2px;
  padding-top: 1px;
  max-width: 282px; }

/* */
.startpane-has-access, .startpane-has-no-access {
  color: #fff;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, 'Open Sans';
  font-size: 18px;
  margin: 0;
  margin-bottom: 15px;
  text-align: left; }

.startpane-client-container {
  position: absolute; }

.startpane-single-client-container {
  position: relative;
  display: inline-flex;
  margin-right: 10px; }

.startpane-new-project {
  font-size: 15px;
  font-weight: 600;
  overflow: hidden;
  position: absolute;
  bottom: 4px;
  text-align: center;
  color: #FFF;
  background: rgba(0, 0, 0, 0.4);
  right: 4px;
  line-height: 1.3;
  padding: 8px 8px 0px 8px;
  max-width: 282px;
  cursor: pointer;
  cursor: hand; }

.startpane-client-name {
  position: absolute;
  bottom: 44px;
  background: rgba(0, 0, 0, 0.4);
  right: 4px;
  padding: 8px 8px 0px 8px;
  font-size: 14px;
  color: white;
  max-width: 282px; }

.startpane-client-logo {
  width: 250px;
  height: 250px;
  background-color: white;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif, 'Open Sans';
  text-align: center;
  line-height: 1.6;
  font-weight: 900;
  font-size: 15px;
  position: relative;
  display: inline-block;
  margin: 2px;
  overflow: hidden;
  opacity: 0.9;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.15); }

.startpane-client-logo img {
  position: absolute;
  display: block;
  height: 100%;
  width: auto;
  max-width: 300px;
  max-height: 250px; }

/* */
@media screen and (max-width: 1090px) {
  .startpane-recent-projects-container {
    max-width: 718px; } }

@media screen and (max-width: 760px) {
  .startpane-recent-projects-container {
    max-width: 363px; } }

.chrome-field-line {
  display: inline-block;
  position: relative; }

.chrome-field-line,
.chrome-field-input {
  padding-left: 39px; }

.setClear,
.chrome-set {
  display: inline-block; }

.disable-color-ball {
  display: none; }

.chrome-metafield-line-children .chrome-metafield-line {
  border-top: 1px dashed #ccc;
  border-bottom: none; }

.chrome-metafield-line-children:last-child {
  border-bottom: 1px solid; }

.chrome-pane.styler .chrome-switch-container {
  top: 10px;
  right: 4px; }

.no-padding .chrome-field-line,
.no-padding .chrome-field-input {
  padding-left: 0; }

.relative-switch {
  position: relative !important;
  top: 0 !important; }

/* CHROME CHROME CHROME CHROME CHROME CHROME CHROME CHROME */
/* CHROME CHROME CHROME CHROME CHROME CHROME CHROME CHROME */
/* CHROME CHROME CHROME CHROME CHROME CHROME CHROME CHROME */
/* TOP TOP TOP */
/* TOP TOP TOP */
/* TOP TOP TOP */
.chrome-top {
  background: white;
  position: absolute;
  left: 0;
  top: 0;
  height: 35px;
  width: 100%;
  z-index: 10000000; }

/* TOP: Menu button */
.chrome-menu-button {
  position: absolute;
  width: 42px;
  height: 35px;
  border-right: 1px dashed #A6A6A6;
  top: 0;
  left: 0;
  cursor: pointer;
  z-index: 200; }

.chrome-menu-button:before {
  content: '';
  background-image: url(../images/systemapic-sprite.png);
  background-repeat: no-repeat;
  background-position: 1px -43px;
  position: absolute;
  width: 42px;
  height: 35px;
  top: 0;
  left: 0;
  opacity: 0.5; }

.chrome-menu-button.active:before,
.chrome-menu-button:hover:before {
  opacity: 1; }

/* TOP: Logo */
.chrome-portal-logo {
  position: absolute;
  left: 50px;
  top: 3px; }

/*.chrome-top:before {
    content: '';
    background: black;
    position: absolute;
    width: 100%;
    height: 1px;
    top: 35px;
    z-index: 0;
    opacity: 0.5;
    }*/
/* TOP: Project title */
.chrome-project-title-container {
  position: absolute;
  top: 4px;
  width: 100%;
  text-align: center; }

.chrome-project-title {
  text-align: center;
  font-size: 14px;
  color: #666;
  position: relative;
  display: inline-block;
  vertical-align: top;
  width: auto;
  top: 3px;
  left: 9px;
  font-weight: 900; }

/* TOP: Client logo */
.chrome-client-logo {
  position: relative;
  display: inline-block;
  vertical-align: top; }

/* TOP: username */
.username-container {
  font-size: 14px;
  color: #999;
  top: 7px;
  right: 11px; }

.username-container,
.username-container .top-username,
.username-container .top-logout,
.username-container .top-divider {
  display: inline-block;
  vertical-align: top;
  position: relative; }

.username-container .top-username,
.username-container .top-logout {
  cursor: pointer; }

.username-container .top-username:hover,
.username-container .top-logout:hover {
  color: #333; }

/* TOP RIGHT BUTTONS */
.chrome-buttons {
  position: absolute;
  /*width: 100%;*/
  right: 0;
  height: 35px;
  text-align: right;
  top: 0;
  z-index: 100; }

.chrome-button {
  background-image: url(../images/systemapic-sprite.png);
  background-repeat: no-repeat;
  position: relative;
  width: 30px;
  height: 35px;
  display: inline-block;
  vertical-align: top;
  margin-right: 5px;
  opacity: 0.5;
  cursor: pointer; }

.chrome-button.active,
.chrome-button:hover {
  opacity: 1; }

.chrome-button.cartoeditor {
  background-position: -6px -3px; }

.chrome-button.layerbutton {
  background-position: -44px -2px; }

.chrome-button.datalib {
  background-position: -85px -2px; }

.chrome-button.share {
  background-position: -128px -4px; }

.chrome-layer-button-arrow {
  position: absolute;
  width: 10px;
  height: 10px;
  top: 35px;
  right: 8px;
  background: white;
  display: none;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }

.share-dropdown {
  top: 38px !important; }

.chrome-button.settingsSelector {
  background-position: -6px -3px; }

.debug-button {
  width: 200px;
  height: 35px;
  background: #FF5E5E;
  border-radius: 3px;
  text-align: center;
  font-weight: 700;
  color: white;
  margin: 0 auto;
  padding: 8px;
  margin-top: 10px;
  cursor: pointer; }

/* CPU */
/* CPU */
/* CPU */
.cpu-wrapper {
  width: 18px;
  border-left: 1px dashed #999;
  height: 100%;
  position: relative;
  top: 0;
  display: inline-block;
  vertical-align: top;
  padding: 3px;
  padding-left: 5px;
  float: right; }

.cpu-bar {
  width: 4px;
  height: 2px;
  margin-bottom: 1px;
  -webkit-transition: background-color 0.5s ease;
  -mos-transition: background-color 0.5s ease;
  -ms-transition: background-color 0.5s ease;
  -o-transition: background-color 0.5s ease;
  transition: background-color 0.5s ease;
  background-color: #cccccc; }

.cpu-bar.cpu-on {
  background-color: #ff0000; }

/* RIGHT RIGHT RIGHT */
/* RIGHT RIGHT RIGHT */
/* RIGHT RIGHT RIGHT */
.chrome-right {
  background: white;
  position: absolute;
  right: 0;
  top: 35px;
  height: 100%;
  width: 0;
  z-index: 10000002;
  border-top: 1px solid #999; }

.chrome-right:before {
  content: '';
  position: absolute;
  top: 0;
  left: -2px;
  width: 2px;
  height: 100%;
  background: black;
  opacity: 0.2; }

.chrome.chrome-content.styleditor.header {
  width: 100%;
  height: 80px;
  background: #F76F6F; }

.chrome.chrome-content.styleditor.title {
  font-size: 28px;
  padding: 5px; }

.chrome.chrome-content.styleditor.subtitle {
  font-size: 16px;
  padding: 5px; }

.chrome.chrome-content.styleditor.tabs-container {
  height: 30px;
  width: 100%;
  background: #AAFFAA;
  border-top: 1px solid grey; }

.chrome.chrome-content.styleditor.tab {
  width: 30%;
  height: 100%;
  position: relative;
  background: red;
  float: left; }

.chrome.chrome-content.styleditor.tab.fullauto {
  background: blue; }

.chrome.chrome-content.styleditor.tab.sql {
  background: cyan; }

.chrome.chrome-content.styleditor.tab.open {
  width: 40%; }

/*.chrome-content.settingsSelector { */
.settingsSelector-header {
  position: relative;
  width: 100%;
  padding: 29px;
  padding-top: 9px;
  padding-bottom: 19px; }

.chrome-content.settings-button {
  background: #ddd;
  width: auto;
  position: relative;
  display: inline-block;
  vertical-align: top;
  padding: 2px;
  padding-left: 5px;
  padding-right: 5px;
  margin-right: 4px;
  font-weight: 500;
  color: black;
  cursor: pointer;
  margin-top: 4px;
  font-size: 15px; }

.chrome-content.settings-button:hover {
  background: #ccc; }

.chrome-content.settings-button:active {
  background: #bbb; }

.chrome-content.settings-title {
  font-size: 18px;
  font-weight: 900;
  margin: 0;
  padding: 0; }

.chrome-content.settings-tabs-wrapper {
  position: absolute;
  top: 108px; }

.chrome-content.title,
.chrome-content.active-layer.title {
  font-size: 16px;
  text-transform: uppercase;
  margin-bottom: 4px;
  font-weight: 900; }

.chrome-content.active-layer.select-wrap {
  padding: 0;
  margin: 0;
  border: 1px solid #ccc;
  /*min-width: 312px;*/
  /*max-width: 360px;*/
  width: 100%;
  border-radius: 3px;
  overflow: hidden;
  background-color: #fff;
  position: relative;
  z-index: 100; }

.chrome-content.active-layer.select-wrap:before {
  content: '';
  background: white;
  position: absolute;
  right: 0;
  width: 20px;
  top: 4px;
  height: 20px;
  z-index: 101;
  background: #fff url("../images/arrowdown.gif") no-repeat;
  pointer-events: none; }

.chrome-content.active-layer.select-wrap select {
  padding: 5px 8px;
  width: 130%;
  border: none;
  box-shadow: none;
  background-color: transparent;
  background-image: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.chrome-content.active-layer.select-wrap select:focus {
  outline: none; }

.chrome-content.settings-button.active-tab {
  background: #3C4759;
  color: white; }

.chrome-content.settings-button.active-tab:hover {
  background: #3C4759; }

.chrome-content.settings-button.active-tab:active {
  background: #3C4759; }

.chrome.chrome-content.styler {
  margin-top: 5px; }

.chrome-right-big-button {
  width: 200px;
  height: 35px;
  background: #FF5E5E;
  border-radius: 3px;
  text-align: center;
  font-weight: 700;
  color: white;
  margin: 0 auto;
  padding: 8px;
  margin-top: 10px;
  cursor: pointer; }

.chrome-right-big-button:hover {
  background: red; }

.chrome-right-big-button.upload {
  background: #3C4759; }

.chrome-right-big-button.upload:hover {
  background: #3C4759; }

.chrome-right-big-button.upload:active {
  background: #3C4759; }

.chrome.chrome-content.cartocss.title {
  font-size: 15px;
  margin: 5px;
  margin-top: 20px;
  margin-left: 20px;
  opacity: 0;
  transition: opacity 0.5s linear; }

.chrome.chrome-content.styler-content.active-layer.wrapper {
  padding-left: 30px;
  padding-bottom: 30px;
  padding-right: 7px; }

/* CARTOCSS BUTTON */
.cartocss-sql {
  height: 100px;
  width: 100%;
  padding: 10px;
  border: #cdcdcd 1px solid;
  resize: none;
  font-family: Courier;
  font-size: 14px; }

.cartocss-sql:focus {
  border: #cdcdcd 1px solid !important; }

/*refresh layer button*/
.cartocss-refresh-button {
  width: 30px;
  height: 30px;
  bottom: 0px;
  border-radius: 2px;
  cursor: pointer;
  text-align: center;
  line-height: 1.9;
  font-size: 15px;
  font-weight: 500;
  margin: auto;
  position: absolute;
  background-image: url("../images/refresh.png");
  left: 10px;
  bottom: 23px;
  background-size: 30px;
  background-repeat: no-repeat; }

.cartocss-refresh-button:hover {
  background-color: rgba(224, 223, 223, 0.81);
  border-radius: 5px; }

/* CODE MIRROR */
.CodeMirror {
  height: 100%;
  border: 1px solid #ddd;
  visibility: visible !important;
  position: relative !important;
  top: 0 !important;
  -webkit-transition: opacity 0.5s linear;
  -moz-transition: opacity 0.5s linear;
  -ms-transition: opacity 0.5s linear;
  -o-transition: opacity 0.5s linear;
  transition: opacity 0.5s linear;
  opacity: 0;
  background: white;
  font-size: 12px; }

.CodeMirror pre {
  padding-left: 7px;
  line-height: 1.25; }

.span.cm-carto-valid-identifier {
  color: #353535; }

/* IMPORTED FROM CHROME.CSS => STILL NEED TO MATCH IT UP WITH CODE ABOVE!!! */
/* IMPORTED FROM CHROME.CSS => STILL NEED TO MATCH IT UP WITH CODE ABOVE!!! */
/* IMPORTED FROM CHROME.CSS => STILL NEED TO MATCH IT UP WITH CODE ABOVE!!! */
/* RIGHT PANE HEADER */
/* RIGHT PANE HEADER */
/* RIGHT PANE HEADER */
/* HEADER BUTTON WRAPPER */
/* HEADER BUTTON WRAPPER */
/* HEADER BUTTON WRAPPER */
.chrome-content.settings-button-wrapper {
  padding: 0;
  margin: 0; }

/* HEADER TITLE */
/* HEADER TITLE */
/* HEADER TITLE */
.chrome-header-title {
  font-size: 18px;
  font-weight: 900;
  margin-bottom: 0;
  text-align: center;
  color: #999;
  border-top: 1px solid;
  border-bottom: 1px solid;
  background: #F6F6F6; }

/* HEADER BUTTONS */
/* HEADER BUTTONS */
/* HEADER BUTTONS */
.chrome-content.settings-button {
  margin-top: 3px;
  font-size: 14px;
  margin-right: 3px;
  padding-bottom: 3px; }

/* RIGHT PANE CONTENT WRAPPER */
/* RIGHT PANE CONTENT WRAPPER */
/* RIGHT PANE CONTENT WRAPPER */
.settings-tabs-wrapper {
  max-height: 100%;
  position: absolute;
  top: 108px;
  padding-top: 0px;
  min-height: 100%;
  width: 100%;
  padding-bottom: 150px;
  box-sizing: border-box;
  overflow: hidden; }

/* MIDDLE CONTAINER (WITH SCROLLER) */
/* MIDDLE CONTAINER (WITH SCROLLER) */
/* MIDDLE CONTAINER (WITH SCROLLER) */
.chrome-middle-section {
  padding-bottom: 141px;
  padding-right: 0px;
  position: absolute;
  height: 100%;
  width: 351px; }

.chrome-middle-section.middle-section-padding-bottom {
  padding-bottom: 290px; }

.chrome-middle-section-outer-scroller {
  position: relative;
  width: 337px;
  height: 100%;
  overflow: hidden; }

.chrome-middle-section-inner-scroller {
  position: relative;
  width: 352px;
  height: 100%;
  overflow-y: scroll;
  padding-right: 24px;
  overflow-x: hidden;
  padding-top: 17px; }

/* BOTTOM CONTAINER */
/* BOTTOM CONTAINER */
/* BOTTOM CONTAINER */
.chrome-content-bottom-container {
  position: absolute;
  width: 100%;
  bottom: 153px;
  padding-bottom: 30px;
  padding-top: 20px;
  border-top: 1px dashed #ccc; }

/* EACH PANE WRAPPER */
/* EACH PANE WRAPPER */
/* EACH PANE WRAPPER */
.chrome.chrome-content.chrome-pane {
  width: 352px;
  min-height: 100%;
  position: absolute; }

/* LAYER SELECTOR WRAPPER */
/* LAYER SELECTOR WRAPPER */
/* LAYER SELECTOR WRAPPER */
.chrome-content.active-layer.wrapper {
  margin-top: 0 !important; }

/* SECTION WRAPPER */
/* SECTION WRAPPER */
/* SECTION WRAPPER */
.chrome-content-section-wrapper {
  margin-bottom: 20px; }

/* FIELD WRAPPER */
/* FIELD WRAPPER */
/* FIELD WRAPPER */
.chrome-field-wrapper {
  padding: 0px 30px 200px 30px;
  width: 352px; }

/* CONTENT HEADER */
/* CONTENT HEADER */
/* CONTENT HEADER */
.chrome-content-header {
  font-weight: 900;
  font-size: 14px;
  margin-bottom: 5px; }

.chrome-content-header-gray {
  font-style: italic;
  color: #999;
  font-weight: 500; }

/* CONTENT FIELDS/LINES */
/* CONTENT FIELDS/LINES */
/* CONTENT FIELDS/LINES */
.chrome-metafield-line {
  border-top: 1px solid #999;
  padding-top: 4px;
  padding-bottom: 4px;
  font-size: 14px;
  position: relative; }

.chrome-metafield-line:last-child {
  border-bottom: 1px solid #999; }

.chrome-metafield-line .chrome-metafield-line {
  border: none;
  color: #999;
  border-top: 1px dashed #999;
  margin-top: 1px;
  padding-bottom: 0; }

input.chrome-field-input {
  border: none; }

/* INPUT TYPES */
/* INPUT TYPES */
/* INPUT TYPES */
/* SWITCH */
/* SWITCH */
/* SWITCH */
.chrome-switch-container {
  width: 29px;
  height: 16px;
  background-color: white;
  border-radius: 20px;
  float: left;
  margin-right: 10px;
  box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5) inset;
  cursor: pointer;
  overflow: visible;
  -webkit-transition: background-color 100ms;
  -moz-transition: background-color 100ms;
  -ms-transition: background-color 100ms;
  -o-transition: background-color 100ms;
  transition: background-color 100ms;
  z-index: 99999999;
  position: absolute;
  top: 6px; }

.chrome-switch-container:before {
  content: '';
  position: absolute;
  background-color: white;
  left: 0;
  width: 15px;
  height: 15px;
  border-radius: 20px;
  box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.1) inset, 1px 1px 2px 0 rgba(0, 0, 0, 0.3);
  -webkit-transition: left 100ms;
  -moz-transition: left 100ms;
  -ms-transition: left 100ms;
  -o-transition: left 100ms;
  transition: left 100ms; }

.chrome-switch-container.switch-on {
  background-color: #3C4759; }

.chrome-switch-container.switch-on:before {
  left: 15px; }

.chrome-switch-container.disabled-switch:after {
  content: '';
  background: white;
  left: 0;
  top: -1px;
  position: absolute;
  height: 20px;
  width: 33px;
  opacity: 0.7; }

.right-switch {
  float: right;
  margin-left: 10px;
  margin-right: 0;
  top: 5px;
  position: absolute;
  right: 0; }

/* MINI INPUT */
/* MINI INPUT */
/* MINI INPUT */
.chrome-field-mini-input,
.chrome-field-mini-input:focus {
  width: 34px;
  height: 18px;
  position: relative;
  float: right;
  border: 1px solid #ccc !important;
  top: 1px;
  text-align: center;
  line-height: 1.2;
  font-size: 12px;
  font-weight: 900;
  margin-left: 2px;
  opacity: 1; }

.left-mini,
.left-mini:focus {
  float: left;
  margin-left: 0;
  margin-right: 5px;
  -webkit-transition: width 100ms, opacity 100ms, margin 100ms;
  transition: width 100ms, opacity 100ms, margin 100ms; }

.left-mini-kill,
.left-mini-kill:focus {
  width: 0;
  opacity: 0;
  margin: 0;
  border: none !important; }

/* DOUBLE MINI INPUT */
/* DOUBLE MINI INPUT */
/* DOUBLE MINI INPUT */
.mini-input-dual,
.mini-input-dual:focus {
  width: 80px !important; }

/* SET/CLEAR BUTTON */
/* SET/CLEAR BUTTON */
/* SET/CLEAR BUTTON */
.setClear,
.chrome-set {
  background: #ddd;
  position: relative;
  float: left;
  font-size: 11px;
  font-weight: 900;
  width: 50px;
  text-align: center;
  height: 17px;
  line-height: 1.5;
  margin-right: 8px;
  border-radius: 3px;
  top: 1px;
  color: white;
  cursor: pointer; }

.setClear {
  color: #666; }

.setClear:hover {
  background: #bbb; }

.setClear:active {
  background: #ccc; }

.chrome-set,
.setClear.setClear-on {
  background: #3C4759;
  color: white; }

.chrome-set:hover,
.setClear.setClear-on:hover {
  background: #4F5A6B; }

.chrome-set:active,
.setClear.setClear-on:active {
  background: #3C4759; }

.chrome-set:active {
  background: #3C4759; }

/* MINI DROPDOWN */
/* MINI DROPDOWN */
/* MINI DROPDOWN */
.select-field-wrap {
  padding: 0;
  margin: 0;
  border: 1px solid #ccc;
  width: 37px;
  border-radius: 3px;
  overflow: hidden;
  background-color: #fff;
  z-index: 100;
  position: absolute;
  right: 0px;
  font-size: 12px; }

.select-field-wrap:before {
  content: '';
  background: white;
  position: absolute;
  right: -2px;
  width: 20px;
  top: -2px;
  height: 20px;
  z-index: 101;
  background: #fff url("../images/arrowdown.gif") no-repeat;
  pointer-events: none; }

.select-field-wrap select {
  padding: 1px 8px 0px 8px;
  width: 130%;
  border: none;
  box-shadow: none;
  background-color: transparent;
  background-image: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.active-field-option {
  color: black; }

.chrome-mini-dropdown {
  width: 125px; }

.chrome-mini-dropdown.full-width {
  width: 162px;
  right: 0 !important; }

/* COLOR BALL */
/* COLOR BALL */
/* COLOR BALL */
.chrome-color-ball {
  width: 18px;
  height: 18px;
  position: relative;
  float: right;
  border-radius: 14px;
  top: 1px;
  right: 10px;
  box-shadow: 0 0 0 1px #666 inset, 0 0 0 3px white inset;
  cursor: pointer;
  margin-left: 2px; }

/* RADIO */
/* RADIO */
/* RADIO */
.layer-radio {
  width: 15px;
  height: 15px;
  position: absolute;
  right: 0;
  left: -17px;
  /*top: 5px;    */
  box-shadow: 0 0 0 1px #ccc inset, 0 0 0 3px #FFFFFF inset;
  z-index: 9999;
  border-radius: 10px;
  background: #eee;
  cursor: pointer;
  top: 7px; }

.layer-radio:hover {
  background: #ddd; }

.radio-on {
  background: #3C4759; }

.radio-on:hover {
  background: #3C4759; }

.radio-on:active {
  background: #3C4759; }

/* ***************************************** */
/* TOOLTIP SPECIFIC */
/* TOOLTIP SPECIFIC */
/* TOOLTIP SPECIFIC */
.chrome-content-tooltip-title-field,
.chrome-content-tooltip-title-field:focus {
  width: 100%;
  border: 1px solid #ccc !important;
  padding: 5px;
  padding-left: 10px;
  padding-right: 10px; }

/* ***************************************** */
/* PROJECT LAYERS SPECIFIC */
/* PROJECT LAYERS SPECIFIC */
/* PROJECT LAYERS SPECIFIC */
/* TOGGLE BUTTONS OUER WRAPPER */
/* TOGGLE BUTTONS OUER WRAPPER */
/* TOGGLE BUTTONS OUER WRAPPER */
.chrome-layers-top-button-wrapper {
  margin: auto;
  top: 0;
  position: relative;
  background: white;
  padding: 10px 20px 10px 20px;
  height: 56px;
  border-bottom: 1px dashed #ccc; }

/* TOGGLE BUTTON WRAPPER */
/* TOGGLE BUTTON WRAPPER */
/* TOGGLE BUTTON WRAPPER */
.chrome-layer-baselayer-toggle {
  margin-bottom: 25px; }

/* TOGGLE BUTTONS */
/* TOGGLE BUTTONS */
/* TOGGLE BUTTONS */
.chrome-layer-toggle-button {
  width: 50%;
  background: #ddd;
  display: inline-block;
  vertical-align: top;
  text-align: center;
  padding: 7px 1px 7px 1px;
  color: #333;
  font-weight: 900;
  font-size: 14px;
  cursor: pointer; }

.chrome-layer-toggle-button:hover {
  background: #ccc; }

.chrome-layer-toggle-button:active {
  background: #bbb; }

.chrome-layer-toggle-button.chrome-baselayer {
  border-radius: 4px 0px 0px 4px; }

.chrome-layer-toggle-button.chrome-layer {
  border-radius: 0px 4px 4px 0px;
  border-left: 1px solid white; }

.layer-toggle-active {
  background: #3C4759;
  color: white; }

.layer-toggle-active:hover {
  background: #3C4759; }

.layer-toggle-active:active {
  background: #3C4759; }

/* PSEUDO ELEMENT FOR OCCUPIED LAYER */
/* PSEUDO ELEMENT FOR OCCUPIED LAYER */
/* PSEUDO ELEMENT FOR OCCUPIED LAYER */
/*.deactivated-layer:before {
    content: 'base layer';
    background: rgba(255,255,255,0.7);
    z-index: 9999;
    position: absolute;
    width: 289px;
    height: 20px;
    text-align: right;
    font-weight: 900;
    font-style: italic;
    color: #71C4A8;
    line-height: 1.3;

    left: 0;
    z-index: 9999999999999;
    height: 86%;    
    }

.editing-baselayers .deactivated-layer:before { 
    content: 'layer';
    }*/
/* EACH LINE ADJUSTMENTS */
/* EACH LINE ADJUSTMENTS */
/* EACH LINE ADJUSTMENTS */
.chrome-pane.layers .chrome-field-line {
  padding-left: 39px;
  padding-right: 20px; }

.chrome-pane.layers {
  padding-top: 0; }

/* ***************************************** */
/* STYLER SPECIFIC */
/* STYLER SPECIFIC */
/* STYLER SPECIFIC */
.chrome.chrome-content.styler {
  margin-top: 0; }

/* COLOR RANGE */
/* COLOR RANGE */
/* COLOR RANGE */
.chrome-color-range-wrapper {
  top: 2px; }

.chrome-color-range-wrapper,
.chrome-color-range {
  position: relative;
  float: right;
  box-shadow: 0 0 0px 1px #ccc inset, 0 0 0px 2px white inset;
  cursor: pointer;
  z-index: 999999999; }

.chrome-color-range {
  height: 18px;
  width: 140px;
  width: 163px; }

.chrome-color-selector-wrapper {
  right: -5px;
  background: transparent;
  position: absolute;
  right: -10px;
  z-index: 999999999;
  width: 178px;
  height: 24px;
  padding-top: 2px;
  top: -3px !important; }

.color-range-ball {
  margin: 0;
  right: 0; }

.rangeball-1 {
  position: absolute;
  left: 2px;
  top: 3px; }

.rangeball-2 {
  position: absolute;
  left: 78px;
  top: 3px; }

.rangeball-3 {
  position: absolute;
  right: 2px;
  top: 3px; }

.click-catcher {
  position: fixed;
  width: 350px;
  height: 100%;
  top: 262px;
  right: 0;
  z-index: 999; }

.color-range-preset-wrapper {
  padding: 5px;
  background: white;
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.4);
  top: 26px;
  position: relative; }

.color-range-preset {
  padding: 10px;
  margin-bottom: 1px; }

/* STYLER ADJUST INPUTS */
/* STYLER ADJUST INPUTS */
/* STYLER ADJUST INPUTS */
.chrome-pane.styler .chrome-field-line {
  padding-top: 4px;
  padding-bottom: 4px; }

.chrome-pane.styler .chrome-switch-container {
  top: 6px;
  right: 4px; }

.chrome-pane.styler .chrome-field-mini-input,
.chrome-pane.styler .chrome-field-mini-input:focus {
  height: 22px;
  top: 3px; }

.chrome-pane.styler .select-field-wrap {
  right: 37px;
  margin-top: 3px; }

.chrome-pane.styler .select-field-wrap:before {
  top: 0; }

.chrome-pane.styler .chrome-color-range {
  height: 22px; }

.chrome-pane.styler .chrome-color-selector-wrapper {
  top: -1px; }

.chrome-pane.styler .select-field-wrap select {
  padding: 2px 8px 2px 8px; }

.chrome-pane.styler .chrome-color-ball {
  top: 9px; }

.chrome-pane.styler .chrome-color-selector-wrapper .chrome-color-ball {
  top: 5px !important; }

/* ***************************************** */
/* MAP SETTINGS SPECIFIC */
/* MAP SETTINGS SPECIFIC */
/* MAP SETTINGS SPECIFIC */
.chrome.chrome-content.chrome-pane.mapsettings {
  padding-top: 0px; }

.chrome-pane.mapsettings {
  padding-top: 0px; }

/* ***************************************** */
/* CARTOCSS SPECIFIC */
/* CARTOCSS SPECIFIC */
/* CARTOCSS SPECIFIC */
.chrome-pane.cartocss {
  padding-top: 17px; }

.chrome.chrome-content.cartocss.refresh-button {
  z-index: 9999999999; }

.chrome-pane.cartocss .active-layer.wrapper {
  padding-right: 30px !important; }

/* ***************************************** */
/* FILTERS SPECIFIC */
/* FILTERS SPECIFIC */
/* FILTERS SPECIFIC */
.chrome-pane.filters .chrome-middle-section {
  transition: padding-bottom 250ms ease; }

.chrome-pane.filters .chrome-middle-section.no-sql {
  /*padding-bottom: 176px;*/
  padding-bottom: 186px; }

.chrome-content.sql-wrapper-outer {
  opacity: 0;
  height: 114px;
  -webkit-transition: opacity 200ms linear;
  transition: opacity 200ms linear; }

.chrome-content.sql-wrapper-outer.active {
  opacity: 1; }

/* BOTTOM CONTAINER */
/* BOTTOM CONTAINER */
/* BOTTOM CONTAINER */
.sql-bottom-container {
  position: absolute;
  width: 100%;
  /*bottom: 32px;*/
  /*bottom: 42px;*/
  bottom: 39px;
  padding-bottom: 0;
  padding-top: 0;
  border-top: 1px dashed #ccc;
  opacity: 0;
  transition: opacity 0.5s linear, bottom 250ms ease; }

.sql-bottom-container.active {
  bottom: 143px; }

.chrome.chrome-content.cartocss.title {
  font-size: 16px;
  margin: 5px 5px 5px 30px;
  opacity: 1;
  -webkit-transition: opacity 0.5s linear;
  transition: opacity 0.5s linear;
  height: 22px; }

/* SAVE BUTTON */
.sql-save {
  background: #3C4759;
  color: white;
  padding: 6px;
  position: absolute;
  right: 6px;
  top: 4px;
  font-weight: 900;
  line-height: 1;
  opacity: 0;
  -webkit-transition: opacity 200ms linear;
  transition: opacity 200ms linear;
  padding-top: 4px;
  cursor: pointer; }

.sql-save:hover {
  background: #3C4759; }

.sql-save:active {
  background: #3C4759; }

.sql-save.active {
  opacity: 1; }

/* CHART */
/* CHART */
/* CHART */
#chrome-content-filter-chart {
  margin-bottom: 20px;
  position: relative; }

.null-histogram:before {
  content: 'No valid data to create histogram from.';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  font-size: 13px;
  padding-top: 74px;
  padding-left: 22px; }

.chrome-content.sql.title {
  padding: 5px;
  cursor: pointer;
  font-weight: 900;
  left: 10px;
  position: relative;
  margin-bottom: 0px; }

/* ***************************************** */
/* DATA LIBRARY */
/* DATA LIBRARY */
/* DATA LIBRARY */
.chrome-data-top {
  position: absolute;
  width: 100%;
  padding: 10px 20px 20px 20px;
  height: 55px;
  border: none; }

.chrome-data-bottom {
  border-top: 1px dashed #ccc;
  position: absolute;
  bottom: 35px;
  width: 100%;
  height: 91px;
  padding-top: 17px; }

.chrome-data-inner {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 51px 0px 0px 0px; }

.chrome-data-outer-scroller {
  overflow: hidden;
  /*width: 330px;*/
  width: 380px;
  height: 50%;
  padding-left: 10px; }

.chrome-data-scroller {
  height: 100%;
  overflow-x: scroll;
  padding-right: 20px;
  padding-left: 18px;
  /*width: 335px;*/
  width: 385px; }

.chrome-data-inner.padding-top {
  padding-top: 55px; }

.chrome-upload-button {
  border-radius: 0;
  text-align: center;
  font-weight: 700;
  color: white;
  padding: 5px 0px 5px 0px;
  cursor: pointer;
  line-height: 1;
  background: #3C4759;
  position: relative;
  margin-top: 3px;
  width: 117px;
  position: absolute;
  top: 10px;
  right: 14px; }

.chrome-upload-button:hover {
  background: #3C4759; }

.chrome-upload-button:active {
  background: #3C4759; }

.file-list-container {
  margin-top: 20px;
  margin-bottom: 35px; }

.data-list-line {
  cursor: pointer;
  position: relative;
  padding-left: 5px;
  line-height: 1.2;
  padding-bottom: 4px;
  padding-top: 4px;
  font-size: 14px;
  border-top: 1px solid #999; }

.file-list-container-title {
  font-size: 16px;
  margin-bottom: 9px; }

.file-selected:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background: #70c4aa;
  z-index: -1;
  border-radius: 0px;
  left: 0;
  opacity: 0.15;
  top: 0px; }

.file-popup {
  position: absolute;
  background: white;
  right: 3px;
  padding: 13px 20px 13px 19px;
  box-shadow: 0 0 1px 1px rgba(220, 220, 220, 0.2);
  z-index: 400;
  top: 27px;
  width: 142px;
  cursor: default;
  border-radius: 4px;
  border: 1px solid rgba(220, 220, 220, 0.91); }

.file-popup-trigger.active,
.file-popup-trigger:hover {
  opacity: 1; }

.file-action {
  font-size: 14px;
  line-height: 1.8;
  cursor: pointer; }

.file-action:hover {
  color: black; }

.file-name-input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
  z-index: 200;
  resize: none;
  padding-top: 4px;
  padding-left: 5px; }

/* ***************************************** */
/* DESCRIPTION PART */
.description-multiple-toggle-wrapper {
  background: white;
  width: 245px;
  position: relative; }

.each-multiple-description {
  padding: 4px 27px 4px 25px;
  border-bottom: 1px dashed #ccc;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
  text-transform: capitalize;
  position: relative;
  word-break: break-all; }

.each-multiple-description:hover {
  color: black; }

.each-multiple-description.active {
  color: black;
  cursor: default; }

.each-multiple-description.active:after {
  content: '';
  background: #089688;
  width: 10px;
  height: 10px;
  position: absolute;
  border-radius: 12px;
  left: 9px;
  padding-right: 10px;
  opacity: 100;
  top: 8px; }

.each-multiple-description.one-layer {
  font-size: 15px;
  cursor: default;
  color: black;
  padding-left: 15px;
  padding-right: 25px;
  white-space: normal;
  word-break: normal;
  line-height: 1.2; }

/* Satellite angle part (for Globesar) */
.d3-satellite-wrapper {
  position: relative;
  top: 6px;
  text-align: center;
  height: 65px; }

.satellite-measurement-geometry {
  position: relative;
  top: 2px;
  font-size: 12px;
  color: #666; }

#d3-satellite-compass-container,
#d3-satellite-angle-container {
  display: inline-block;
  position: relative;
  margin-right: 5px;
  margin-left: 5px; }

/* STYLER */
/* STYLER */
/* STYLER */
.chrome-pane.styler {
  /* CHROME => STYLER => SAVE TEMPLATE */
  /* CHROME => STYLER => SAVE TEMPLATE */ }
  .chrome-pane.styler .chrome-field-line {
    padding-left: 0px; }
  .chrome-pane.styler .select-field-wrap {
    margin-top: 1px;
    float: right;
    position: relative; }
  .chrome-pane.styler .chrome-color-ball {
    position: absolute; }
  .chrome-pane.styler .select-field-wrap {
    position: absolute;
    top: 6px; }
  .chrome-pane.styler .sub-line:last-child {
    border-bottom: none !important; }
  .chrome-pane.styler .chrome-switch-container {
    top: 10px; }
  .chrome-pane.styler .save-as-template-button {
    position: absolute;
    bottom: 80px;
    color: #1E638E;
    width: 100%;
    text-align: center;
    font-style: italic;
    text-decoration: underline;
    cursor: pointer; }
  .chrome-pane.styler .save-as-template-wrapper {
    position: absolute;
    width: 100%;
    height: 100%;
    background: white;
    top: 0;
    padding: 35px;
    -webkit-transition: top 500ms ease;
    transition: top 500ms ease; }
  .chrome-pane.styler .hidden-template-dialogue {
    top: 120px; }
  .chrome-pane.styler .save-as-template-input-name {
    border: none;
    background-color: #DCDCDC;
    border-radius: 2px;
    font-size: 17px;
    padding: 2px;
    height: 38px;
    margin-right: 6px;
    width: 315px;
    padding-left: 10px;
    padding-right: 10px; }
  .chrome-pane.styler .error-template-input {
    border: 1px solid #C80000; }
  .chrome-pane.styler .save-as-template-error {
    color: #C80000;
    position: absolute;
    top: 12px; }
  .chrome-pane.styler .save-as-template-OK-button {
    display: inline-block;
    vertical-align: top;
    position: relative;
    margin: 0; }
  .chrome-pane.styler .save-as-template-cancel-button {
    color: #C80000;
    font-style: italic;
    text-decoration: underline;
    cursor: pointer; }

/* TOOLTIP */
/* TOOLTIP */
/* TOOLTIP */
.chrome-pane.chrome-tooltip .chrome-field-mini-input {
  position: absolute;
  left: 0;
  top: 4px; }

/* FILTER */
#chrome-content-filter-chart {
  font-size: 10px; }

.brush-catcher {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 999999999999; }

.chrome-content-filter-label {
  height: 20px;
  width: 100%;
  position: absolute;
  bottom: -24px;
  margin-left: 39px;
  font-size: 11px; }

/* SHARE */
/* SHARE */
/* SHARE */
.wide-share .share-item {
  display: none; }

.share-invite-wrapper-inner {
  width: 260px;
  height: 220px; }

.share-invite-input {
  position: relative;
  float: none;
  width: 100%;
  margin: 3px;
  border: 0;
  margin-left: 20px; }

.share-dropdown {
  /*-webkit-transition: width 200ms ease, height 200ms ease;*/
  /*transition: width 200ms ease, height 200ms ease;*/
  height: 100px;
  position: absolute;
  background: white;
  right: 3px;
  padding: 13px 20px 13px 19px;
  box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.4);
  z-index: 10000010;
  top: 27px;
  width: 142px;
  cursor: default; }

.share-dropdown .share-item {
  font-size: 14px;
  line-height: 1.8;
  cursor: pointer; }

.share-dropdown .share-item:hover {
  color: black; }

.share-ghost {
  width: 100%;
  height: 100%;
  z-index: 10000009;
  position: absolute;
  cursor: pointer; }

.share-invite-title {
  margin-left: 0px;
  position: relative;
  font-size: 19px;
  margin-bottom: 10px;
  text-align: center; }

.share-invite-toggle {
  font-size: 14px;
  font-weight: 500;
  padding-top: 10px;
  margin-left: 0px;
  position: relative;
  float: left;
  background-color: black;
  color: white;
  padding: 2px;
  cursor: pointer; }

.share-invite-toggle:hover {
  color: black;
  background: white;
  border: 1px solid black; }

.share-invite-submit {
  height: auto;
  width: 129px;
  border: 1px solid red;
  padding: 5px;
  position: relative;
  margin-left: 140px;
  border-radius: 2px; }

.share-invite-submit:hover {
  background: green;
  color: white; }

.share-invite-input-link {
  width: 100%;
  background: #71c4a8;
  padding: 2px;
  border: 0; }

.share-invite-input-link::selection {
  background: #71c4a8;
  color: white; }

.share-invite-title-post {
  font-weight: 400;
  font-size: 14px;
  position: relative;
  padding: 4px;
  padding-left: 0px;
  margin-top: 5px;
  margin-bottom: 5px; }

.share-dropdown,
.share-invite-permission-title {
  padding-top: 10px;
  padding-bottom: 10px;
  font-weight: 900; }

.share-input {
  height: 30px;
  width: 113px;
  left: 0;
  bottom: 9px;
  border: none !important; }

.share-input::selection {
  background: #3C4759; }

.share-link-pdf {
  position: absolute;
  height: auto;
  width: 100%;
  left: 0;
  bottom: 37px;
  border: none !important;
  background-color: white;
  margin-left: 0;
  color: #3F4652;
  padding-left: 19px;
  padding-top: 4px;
  padding-bottom: 4px; }

/*temporary override*/
.file-action-share {
  color: gainsboro; }

.file-action-share:hover {
  color: gainsboro; }

input.invite-permissions-checkbox {
  display: inline-block; }

.invite-permissions-label {
  margin-left: 2px;
  font-size: 13px;
  font-weight: 500;
  padding-bottom: 0; }

.share-invite-wrapper {
  overflow: hidden;
  position: relative;
  height: 100%; }

.invite-permissions-checkbox-wrap {
  float: left;
  width: 100%; }

.share-invite-title-clip {
  margin-top: 10px; }

.invite-permissions-wrapper {
  position: relative;
  border-top: 1px dashed #ccc;
  margin-top: 15px; }

.chrome-toggle-button-container {
  float: left;
  left: -4px;
  position: relative; }

.toggle-button {
  display: inline-block;
  vertical-align: top;
  background: #b9b9b9;
  color: white;
  font-weight: 900;
  font-size: 11px;
  padding: 1px 4px 1px 4px;
  height: 16px;
  cursor: pointer; }

.toggle-button:hover {
  background: #A9A9A9; }

.toggle-button:active {
  background: #918E8E; }

.toggle-button-option-one {
  border-radius: 2px 0px 0px 2px; }

.toggle-button-option-two {
  border-radius: 0px 2px 2px 0px;
  margin-left: 1px; }

.toggle-button-active {
  background: #71C4A8; }

.toggle-button-active:hover {
  background: #67B097; }

.toggle-button-active:active {
  background: #5a9b87; }

/* **************************************************** */
.file-name-content {
  padding-right: 26px;
  font-weight: 600; }

.file-popup {
  margin-bottom: 100px; }

.files-container {
  padding-bottom: 200px; }

.layers-container {
  padding-bottom: 5px;
  margin-bottom: 34px; }

.layer-list-container {
  margin-top: 10px;
  margin-bottom: 10px; }

.file-list-container-title {
  font-size: 14px;
  font-weight: 900;
  margin-bottom: 5px; }

.layer-name-content {
  /*padding-right: 26px;*/
  height: 16px;
  overflow: hidden;
  white-space: nowrap;
  /*width: 195px;*/
  width: 265px;
  font-weight: 600; }

.layer-name-input,
.file-name-inpu {
  position: absolute;
  top: 0;
  left: 68px;
  width: 205px;
  height: 100%;
  border: none;
  z-index: 200;
  resize: none;
  padding-top: 4px;
  padding-left: 5px; }

.layer-name-input {
  padding-top: 0px; }

.file-name-input {
  left: 0px; }

.chrome-data-top-title {
  position: relative;
  text-transform: none;
  font-size: 18px;
  margin: 5px;
  margin-left: 6px;
  font-weight: 900;
  margin-bottom: 0;
  margin-top: 4px; }

.chrome-data-inner {
  padding: 0; }

.chrome-data-outer-scroller {
  padding-left: 0;
  width: 402px; }

.chrome-data-scroller {
  width: 402px;
  padding: 0; }

.data-list-line {
  padding-top: 7px;
  padding-bottom: 7px;
  border: none;
  width: 443px;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 0;
  width: 443px;
  max-width: 100%; }

.data-list-line .chrome-switch-container {
  left: 3px;
  top: 4px; }

.data-list-line.editingName {
  color: transparent; }

.file-popup-trigger {
  position: absolute;
  z-index: 300;
  box-shadow: none;
  background: transparent;
  height: 20px;
  bottom: 5px;
  color: #3C4759;
  border-radius: 0;
  right: 20px;
  font-weight: 900;
  font-size: 12px;
  width: auto;
  border: 0;
  margin-top: 0px;
  margin-right: 0px;
  opacity: 0;
  cursor: pointer; }

.file-popup-trigger:hover {
  text-decoration: underline;
  opacity: 1 !important; }

/* LAYERS */
/* LAYERS */
/* LAYERS */
.chrome-layer-list-wrapper {
  padding: 30px; }

.layers-container {
  margin-bottom: 35px; }

.layer-list-container {
  margin-top: 0px;
  margin-bottom: 0px; }

.layer-name-content {
  text-indent: 43px;
  width: 325px; }

.layer-name-input {
  left: 38px;
  padding-top: 2px;
  width: 280px;
  background: transparent;
  font-weight: 600; }

.layer-radio {
  left: -20px;
  top: 4px;
  width: 17px;
  height: 17px; }

/* LAYER POPUP TRIGGER */
/* LAYER POPUP TRIGGER */
/* LAYER POPUP TRIGGER */
.layer-list-container .file-popup-trigger {
  width: 20px;
  opacity: 1;
  color: #C8c8c8;
  line-height: 1;
  top: 3px;
  text-align: center;
  font-size: 17px; }

.layer-list-container .data-list-line:hover .file-popup-trigger {
  opacity: 0.7; }

.layer-list-container .file-popup-trigger:active {
  opacity: 1; }

/*.file-list-container-file-list .data-list-line:hover .file-popup-trigger,*/
/*.file-list-container-file-list .data-list-line.file-selected .file-popup-trigger,*/
/*.file-list-container-file-list .data-list-line.editingFileName .file-popup-trigger,*/
.data-list-line.editingName .file-popup-trigger,
.data-list-line:hover .file-popup-trigger {
  opacity: 1; }

.file-popup-trigger.add-layer {
  bottom: 25px;
  width: auto;
  right: 11px;
  background: none;
  position: absolute;
  left: initial; }

/* LAYER POP-UP */
/* LAYER POP-UP */
/* LAYER POP-UP */
.file-popup {
  color: #3F4652;
  top: 23px;
  right: -5px; }

.file-action {
  position: relative; }

.file-action:hover:after {
  content: '';
  position: absolute;
  width: 142px;
  height: 100%;
  background: #EEE;
  left: -19px;
  top: 0;
  z-index: -1; }

/*

I don't think these are in use?

.file-option {
    cursor: default;
    }

.file-option.title {
    font-size: 18px;
    padding-top: 20px;
    font-weight: 600;
    }

.file-option.sub {
    padding-left: 2px;
    }

*/
.baselayer-dropdown-wrapper {
  padding-left: 0;
  padding-right: 0; }

.file-list-separator {
  border-top: 1px solid #ccc;
  padding-top: 15px;
  margin-top: 35px; }

/* FILES FILES FILES */
/* FILES FILES FILES */
/* FILES FILES FILES */
.files-container {
  padding-bottom: 60px;
  padding-top: 2px; }

.file-list-container {
  margin-top: 10px; }

/* Title (with a database next to it) */
.chrome-content-header.layer-list-container-title.layer-list {
  padding-left: 30px; }

/* Upload icon */
.fa.fa-cloud-upload {
  padding-right: 4px; }

/* Upload button */
.upload-button-container {
  padding-right: 30px;
  width: 173px;
  float: right;
  position: relative;
  right: 26px;
  top: -37px; }

.chrome-upload-button {
  position: relative;
  width: auto;
  margin: 0;
  right: 0;
  left: 0;
  padding-left: 20px;
  padding-right: 20px;
  background: #3C4759;
  padding: 9px;
  border-radius: 4px;
  width: auto;
  top: 0;
  width: inherit; }

.chrome-upload-button:hover {
  background: #F9F9F9;
  color: #3F4652;
  border: 1px solid #c8c8c8;
  padding-top: 8px;
  padding-bottom: 8px; }

.file-list-container-file-list {
  position: relative;
  left: 0; }

.file-meta-content {
  margin-top: 2px;
  margin-bottom: 0px; }

.file-meta-content .file-meta-author {
  margin-right: 7px;
  color: #B9B9B9; }

/* Add layer + Options */
.fa.fa-bars.file-trigger {
  padding: 4px; }

.fa.fa-bars.file-option {
  padding: 10px; }

/* Each list line */
.file-list-container .data-list-line {
  padding-top: 12px;
  padding-bottom: 12px;
  padding-left: 30px;
  padding-right: 30px;
  cursor: default; }

.file-list-container .data-list-line:nth-child(odd) {
  background: #F9F9F9; }

.file-list-container .data-list-line:hover {
  background: #C7CACF !important;
  color: white !important; }

.file-list-container .data-list-line.editingFileName {
  color: transparent; }

.data-list-line.processing,
.data-list-line.processing:hover {
  background: #3C4759;
  color: white;
  height: 70px;
  padding: 12px;
  padding-left: 26px; }

.data-list-line.processing:hover {
  color: white; }

.data-list-line.file-selected,
.data-list-line.file-selected:hover {
  color: #579A84; }

.data-list-line .file-name-content {
  font-size: 14px; }

.data-list-line .file-name-input {
  background: transparent;
  font-weight: 600;
  padding-top: 5px;
  height: 27px;
  width: 315;
  left: -5px;
  left: 25px;
  top: 5px;
  visibility: visible;
  color: #3C4759; }

.data-list-line:hover .file-meta-content {
  color: #3F4652 !important; }

.data-list-line:hover .file-meta-content .file-meta-author {
  color: #3F4652 !important; }

/* Editing file name */
.data-list-line.editingFileName:hover .file-name-content {
  visibility: hidden; }

.data-list-line.editingFileName:hover .file-name-input {
  color: white; }

.data-list-line:hover .file-name-content {
  color: #3C4759; }

/* Processing */
.data-list-line.processing .file-name-content {
  color: #fff !important;
  font-weight: 500 !important; }

.data-list-line.processing.upload-error {
  background-color: #F13151 !important; }

.data-list-line.processing.upload-error:before {
  content: 'x';
  position: absolute;
  top: 7px;
  right: 7px;
  font-weight: 900;
  background: transparent;
  width: 20px;
  height: 20px;
  border-radius: 10px;
  text-align: center;
  line-height: 1.3;
  box-shadow: 0 0 0 2px white;
  opacity: 0.4;
  cursor: pointer; }

.data-list-line.processing.upload-error:hover:before {
  opacity: 1; }

.file-name-content.processing {
  padding-left: 5px;
  position: absolute; }

.file-feedback.processing,
.file-feedback.processing:hover {
  padding: 5px;
  font-size: 13px;
  font-weight: 600;
  position: absolute;
  bottom: 0px;
  width: 280px; }

.file-feedback-percent.processing {
  position: absolute;
  right: 0px;
  bottom: 0px;
  padding: 5px;
  font-size: 14px;
  font-weight: 600;
  background: inherit; }

/**/
.file-selected:before {
  content: '';
  display: none; }

/*

Doesn't seem to be in use

.chrome-data-top-title {
    text-transform: uppercase;    
    }



.toggles-wrapper.file-options {
    margin-top: 20px;
    position: relative;
    }    


*/
.chrome-pane.extras .chrome-metafield-line {
  height: 32px; }

.chrome-pane.extras .chrome-field-mini-input,
.chrome-pane.extras .chrome-field-mini-input:focus {
  height: 21px; }

.chrome-pane.extras .chrome-field-line {
  padding-top: 2px;
  padding-bottom: 2px; }

.chrome-content.chrome-pane.extras .chrome-field-line,
.chrome-content.chrome-pane.extras .chrome-field-input {
  padding-left: 0; }

.globesar-extras-ref-point-dropdown {
  top: 6px;
  left: 110px; }

.globesar-extras-input,
.globesar-extras-input:focus {
  width: 53px; }

.globesar-extras-ref-point-dropdown.full-width {
  width: 181px; }

/* C3 C3 C3 C3 C3 C3 C3 C3 C3 C3 C3 C3 */
/* C3 C3 C3 C3 C3 C3 C3 C3 C3 C3 C3 C3 */
/* C3 C3 C3 C3 C3 C3 C3 C3 C3 C3 C3 C3 */
.c3 svg {
  position: relative;
  left: -7px; }

/* HEADER */
.c3-header-wrapper {
  position: relative;
  margin-bottom: 7px;
  max-width: 400px; }

#c3-header-metacontainer {
  background: white;
  padding: 15px;
  padding-top: 10px;
  padding-bottom: 8px; }

.c3-header-layer-name {
  font-size: 19px;
  font-weight: 900;
  display: inline-block;
  vertical-align: top;
  text-transform: capitalize;
  margin-bottom: 5px; }

.c3-point-count {
  font-size: 15px;
  font-style: italic;
  color: #999;
  position: relative;
  top: -3px;
  margin-bottom: -1px; }

.c3-header-metapair {
  display: inline-block;
  vertical-align: top;
  font-size: 11px;
  font-weight: 900;
  width: 33%;
  text-align: left;
  margin: 0;
  border-bottom: 1px solid #DADADA !important;
  padding-bottom: 2px !important;
  height: 18px; }

.metapair-1,
.metapair-2,
.metapair-3 {
  padding-top: 0px !important;
  border-top: 0px !important; }

.small-pop-up .c3-header-metapair {
  display: block;
  width: 100%; }

.small-pop-up .metapair-1,
.small-pop-up .metapair-2,
.small-pop-up .metapair-3 {
  border-top: none !important; }

.c3-header-metapair,
.c3-header-metakey {
  background: none;
  border: none;
  padding: 0; }

.c3-header-metakey,
.c3-header-metaval {
  background: none;
  border: none;
  text-align: left;
  display: inline-block;
  vertical-align: top; }

.c3-header-metakey {
  color: #999; }

.c3-header-metaval {
  padding: 0px 0px 0px 5px; }

#c3-container {
  margin-right: 15px; }

#c3-container:before {
  content: 'Scroll to zoom';
  position: absolute;
  bottom: 11px;
  width: 100%;
  text-align: center;
  font-size: 12px;
  color: #999;
  font-style: italic; }

#c3-container:after {
  content: 'mm';
  position: absolute;
  color: #999;
  left: 9px;
  bottom: 19px;
  font-size: 11px; }

#c3-header-metacontainer {
  margin-right: 0;
  margin-left: 0;
  margin-bottom: 0px;
  line-height: 1.2;
  position: relative; }

.c3-xgrid, .c3-ygrid {
  stroke-dasharray: 2 2 !important;
  stroke: rgba(255, 255, 255, 0.2) !important; }

.c3 text {
  fill: black;
  font-size: 12px; }

.c3 path, .c3 line {
  stroke: black;
  fill: none; }

.c3 line {
  stroke: #DADADA !important; }

.c3-chart-line {
  opacity: 1 !important; }

g.c3-event-rects.c3-event-rects-multiple rect {
  stroke-width: 0.5;
  stroke: black; }

.c3-target-avgX {
  stroke-width: 2px;
  stroke: black; }

.c3-zoom-rect {
  fill: white;
  fill-opacity: 1;
  opacity: 1 !important; }

.c3-tooltip-container {
  width: 150px; }

.c3-tooltip-name--field-y .name {
  display: none; }

.c3-tooltip td.value {
  text-align: center;
  font-weight: 900;
  padding: 4px 4px 2px 5px;
  font-size: 12px; }

.c3-tooltip th {
  font-size: 11px;
  padding: 2px 5px;
  background: white;
  font-weight: 600;
  width: 20px;
  background-color: #666;
  color: white;
  text-align: center; }

.leaflet-popup-move-button {
  background-color: rgba(255, 0, 0, 0.4);
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  height: 39px;
  cursor: pointer;
  z-index: 99999999999;
  pointer-events: all; }

.leflet-container.leaflet-popup.tiny-pop-up {
  max-width: 200px; }

.c3-footer {
  font-size: 12px;
  font-weight: 500;
  padding-left: 30px;
  padding-right: 20px;
  position: relative;
  bottom: 26px;
  width: 100%;
  float: right;
  margin: 0;
  height: auto; }

.end-date {
  float: right; }

td.name {
  width: auto; }

.regression-button-wrapper {
  position: relative;
  top: 10px;
  border-top: 1px solid #ccc;
  padding-top: 10px;
  margin: 0; }

input.chart-regression-button {
  display: inline-block; }

.dropzone-meta {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10001;
  background-color: rgba(0, 0, 0, 0.69);
  border: none !important; }

.drop-meta-title {
  font-size: 700%;
  position: relative;
  color: white;
  margin: auto;
  width: 400px;
  padding-top: 200px;
  left: -50px; }

.invalidLayermenuitem .layer-menu-item {
  background: red; }

.connect-title {
  font-size: 14px;
  position: relative;
  text-align: left;
  padding-top: 10px;
  margin-bottom: 0px;
  padding-left: 0px;
  font-weight: 600 !important;
  color: #666;
  text-transform: uppercase; }

.resumable-drop {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999999 !important;
  background-color: rgba(0, 0, 0, 0.69);
  background-image: url("../images/bigcloud.png");
  background-position: center;
  background-repeat: no-repeat;
  border: none !important;
  display: none; }

.description-copyright {
  color: gray;
  font-style: italic;
  font-size: 90%; }

.leaflet-draw-button {
  width: 26px;
  height: 26px !important;
  top: 0;
  left: 0;
  background: white;
  position: absolute; }

.leaflet-draw-button.polygon {
  background: white; }

.leaflet-draw-button.polyline {
  background: white; }

.leaflet-draw-button-wrapper {
  position: absolute;
  height: 30px; }

.leaflet-draw-button-wrapper.polygon {
  top: 0px; }

.leaflet-draw-button-wrapper.polyline {
  top: 30px; }

.leaflet-draw-button.polygon.active {
  background: red; }

.leaflet-draw-button:first-child {
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3); }

.leaflet-draw-button:last-child {
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3); }

.leaflet-draw-button-save {
  position: absolute;
  left: 30px;
  border: 1px solid green;
  background-color: blue; }

.leaflet-draw-button-cancel {
  position: absolute;
  left: 90px;
  border: 1px solid green;
  background-color: blue; }

.leaflet-draw-button-undo {
  position: absolute;
  left: 60px;
  border: 1px solid green;
  background-color: blue; }

#map.mode-edit div.polygon-elbow {
  opacity: 1;
  pointer-events: all; }

#map.mode-create {
  cursor: crosshair; }

svg.tracer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

#map div.polygon-elbow {
  -webkit-transition: opacity .25s;
  box-shadow: 0 0 0 2px white, 0 0 10px rgba(0, 0, 0, 0.35);
  border: 5px solid #D7217E;
  border-radius: 10px;
  transition: opacity 0.25s;
  cursor: move;
  opacity: 0;
  pointer-events: none;
  box-sizing: border-box;
  width: 0 !important;
  height: 0 !important; }

#map section.overlay {
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  box-shadow: inset -100px 0 100px -100px rgba(0, 0, 0, 0.25);
  width: 100%;
  height: 100%;
  z-index: 2001; }

#map.mode-create {
  cursor: crosshair !important; }

#map.mode-delete path {
  cursor: no-drop !important; }

#map.mode-delete path:hover {
  fill: #4d4d4d !important; }

#map div.polygon-elbow {
  -webkit-transition: opacity .25s;
  box-shadow: 0 0 0 2px white, 0 0 10px rgba(0, 0, 0, 0.35);
  border: 5px solid #D7217E;
  border-radius: 10px;
  transition: opacity 0.25s;
  cursor: move;
  opacity: 0;
  pointer-events: none;
  box-sizing: border-box;
  width: 0 !important;
  height: 0 !important; }

#map div.polygon-elbow.non-polygon {
  opacity: 0 !important;
  pointer-events: none !important;
  border: 5px solid darkgray; }

#map.mode-edit div.polygon-elbow {
  opacity: 1;
  pointer-events: all; }

#map svg.tracer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2001;
  pointer-events: none; }

.list-attribute-wrapper-access:hover {
  background: rgba(0, 0, 0, 0.2); }

/*
┌─┐┬─┐┬─┐┌─┐┬─┐  ┌─┐┌─┐┌┐┌┌─┐
├┤ ├┬┘├┬┘│ │├┬┘  ├─┘├─┤│││├┤ 
└─┘┴└─┴└─└─┘┴└─  ┴  ┴ ┴┘└┘└─┘
aka feedback pane
*/
.feedback-pane {
  position: absolute;
  bottom: 0;
  left: 0;
  width: auto;
  z-index: 999999999;
  margin: 10px;
  margin-bottom: 26px !important;
  margin-left: 6px !important;
  max-width: 350px;
  max-height: 700px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box; }

.feedback-pane-content {
  background: rgba(255, 0, 0, 0.81);
  width: 100%;
  height: 100%;
  opacity: 0.9;
  cursor: default;
  border-radius: 2px;
  margin-right: 50px;
  max-height: inherit;
  overflow: hidden;
  margin-top: 2px;
  position: relative;
  padding: 10px 15px 10px 15px; }

.feedback-pane-title,
.feedback-pane-title2 {
  padding-left: 0;
  font-weight: 900;
  font-size: 14px;
  margin-bottom: 2px; }

.feedback-pane-title2 {
  margin-top: 10px;
  padding-top: 6px;
  border-top: 1px dashed rgba(255, 255, 255, 0.3); }

.feedback-pane-description,
.feedback-pane-description2 {
  font-weight: 500;
  padding: 0px;
  margin: 0px;
  font-size: 13px; }

.feedback-pane-x {
  position: absolute;
  color: transparent;
  font-weight: bold;
  cursor: pointer;
  text-align: center;
  background-image: url(images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -1px -45px;
  border-radius: 2px;
  top: 6px;
  right: 6px;
  width: 15px;
  height: 15px;
  opacity: 0.3;
  background-color: white; }

.feedback-pane-x:hover {
  opacity: 0.7; }

.feedback-pane-content.message {
  background-color: #fcfcfc; }

.feedback-pane-content.error {
  background: rgba(241, 49, 81, 0.85);
  color: #fcfcfc;
  border-radius: 6px; }

.feedback-pane-content.success {
  background-color: rgba(48, 98, 41, 0.81); }

.feedback-pane-content.action {
  background-color: rgba(10, 57, 107, 0.81); }

.feedback-pane-icon {
  max-width: 100px;
  max-height: 100px;
  top: 0;
  left: 0;
  position: relative;
  float: left;
  margin: 5px;
  border-radius: 3px;
  border: 0;
  float: left;
  display: none; }

.feedback-pane-icon-img {
  border-radius: 3px; }

/***************************************************************************/
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
.header-role {
  border: 0px;
  background: transparent;
  display: block;
  font-style: italic;
  color: #666;
  font-size: 16px;
  float: right;
  height: 16px;
  word-wrap: break-word;
  position: relative;
  top: 0;
  line-height: 15px;
  overflow: hidden;
  max-height: 31px; }

#editor-map-initpos-lat-value,
#editor-map-initpos-lng-value,
#editor-map-initpos-zoom-value {
  cursor: default; }

.home-container,
.dropzone-pane,
.q-editor-container,
.dropzone-meta,
.fullpage-documents,
.data-library,
.fullpage-mediaLibrary,
#header,
.fullpage-users,
.fullpage-mediaLibrary {
  z-index: 10001; }

.status-progress-bar {
  z-index: 100000000010; }

.dropzone-meta {
  z-index: 10002 !important; }

.description-textarea-outer-wrapper {
  overflow: hidden; }

/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
.list-process {
  top: 0;
  right: 0;
  height: 50px;
  border-left: 1px dashed rgba(255, 255, 255, 0.5);
  text-align: center;
  overflow: hidden;
  width: 45%;
  position: absolute;
  float: right;
  color: #333333;
  font-size: 13px;
  padding: 10px;
  overflow: visible;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.list-title {
  height: 18px; }

.processing .list-title,
.processing .list-description {
  color: rgba(0, 0, 0, 0.3); }

.processing .item-select-button {
  display: none; }

.processing .list-item-info {
  display: none; }

.list-process-bar {
  width: 290px;
  height: 20px;
  background: rgba(0, 0, 0, 0.2);
  border-radius: 27px;
  top: 12px;
  left: 0px;
  padding: 4px;
  position: relative; }

.list-process-bar:before {
  content: 'Processing';
  top: -18px;
  position: absolute;
  left: 0;
  font-size: 12px; }

.list-process-bar-inner {
  background: white;
  border-radius: 20px;
  padding: 6px;
  width: 0;
  position: relative; }

.list-process-no {
  position: absolute;
  top: 22px;
  right: 14px;
  background: #a00000;
  height: 20px;
  border-radius: 20px;
  padding-left: 9px;
  padding-right: 8px;
  min-width: 57px;
  color: white;
  font-weight: 900; }

.list-process-no:before {
  content: 'Tiles';
  color: black;
  font-weight: 400;
  top: -18px;
  position: absolute;
  left: 0;
  font-size: 12px; }

.minimal .list-process-bar {
  top: -3px;
  left: 0px;
  width: 110px; }

.minimal .list-process-bar:before {
  display: none; }

.minimal .list-process-no {
  top: 7px; }

.minimal .list-process-no:before {
  display: none; }

.minimal .processing .list-title-wrapper {
  padding: 6px 122px 4px 48px; }

.list-process-grind {
  background-image: url(/css/images/grinders/BG-grinder-small-grayDark-on-white.gif) !important;
  height: 100%;
  width: 100%;
  padding: 1px;
  background-position: 500px -4px;
  background-repeat: no-repeat;
  opacity: 1;
  position: absolute;
  right: 0;
  background-color: white;
  z-index: -2; }

.minimal .list-process-grind {
  background-image: url(/css/images/grinders/BG-grinder-small-grayDark-on-white.gif) !important;
  height: 42px;
  width: 100%;
  padding: 1px;
  background-position: 382px -4px;
  background-repeat: no-repeat;
  opacity: 1;
  position: absolute;
  right: 0;
  background-color: white;
  z-index: -2;
  background-size: auto 100%; }

/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* **************************************************************************************** */
/* freedraw  freedraw  freedraw  freedraw */
/* freedraw  freedraw  freedraw  freedraw */
/* freedraw  freedraw  freedraw  freedraw */
section.map.mode-create {
  cursor: pointer; }

section.map.mode-edit div.polygon-elbow {
  opacity: 1;
  pointer-events: all; }

.leaflet-container.leaflet-clickable, .leaflet-container.map-clickable, .leaflet-marker-icon, .leaflet-overlay-pane path.tracer.leaflet-clickable {
  cursor: pointer;
  fill-opacity: 0.7;
  fill: #FF4646;
  stroke: red;
  stroke-opacity: 0.8;
  stroke-width: 1px;
  transition: fill-opacity 0.15s; }

.leaflet-container.leaflet-clickable, .leaflet-container.map-clickable, .leaflet-marker-icon, .leaflet-overlay-pane path.tracer.leaflet-clickable:hover {
  fill-opacity: 0.3; }

/* ????? ????? ????? ????? ????? ????? ????? ????? */
/* ????? ????? ????? ????? ????? ????? ????? ????? */
/* ????? ????? ????? ????? ????? ????? ????? ????? */
/* ????? ????? ????? ????? ????? ????? ????? ????? */
/* ????? */
.presets-container {
  width: 100px;
  height: 100px;
  border-radius: 4px;
  border: 1px solid black;
  position: relative;
  margin: 10px;
  float: right; }

/* ????? */
.presets-container-title {
  bottom: 0;
  position: absolute; }

/* ????? */
.presets-wrapper {
  height: 150px; }

/* ????? */
.styleeditor.selector-text {
  width: 60%;
  float: left; }

/* ????? */
.dropdown.wrapper {
  float: left;
  width: 40%; }

/* ????? */
#checkbox-marker-width-scale {
  display: block; }

/* TROR DENNE ER FRA KNUT SIN RIGHT PANE DROP DOWN */
.active-layer-option {
  color: black; }

.leaflet-popup-drag {
  width: 100%;
  height: 50px;
  background-color: rbga(44, 44, 44, 0.5);
  z-index: 10000;
  position: absolute; }

.leaflet-popup-ghost {
  width: 100%;
  height: 100%;
  z-index: 1000000;
  position: absolute; }

.leaflet-popup-pin-button {
  width: 25px;
  height: 20px;
  top: 7px;
  right: 24px;
  background-image: url(images/evil_sprite.png);
  background-repeat: no-repeat;
  background-position: -22px -44px;
  opacity: 0.3;
  position: absolute;
  display: inline-block; }

.leaflet-popup-pin-button:hover {
  opacity: 0.5; }

/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAic3R5bGUuY3NzIiwKCSJzb3VyY2VzIjogWwoJCSIuLi8uLi9zY3NzL3N0eWxlLnNjc3MiLAoJCSIuLi8uLi9zY3NzL19iYXNpY3Muc2NzcyIsCgkJIi4uLy4uL3Njc3MvX2NvbnRyb2xzLnNjc3MiLAoJCSIuLi8uLi9zY3NzL19wYW5lcy5zY3NzIiwKCQkiLi4vLi4vc2Nzcy9fY3VzdG9tX2ltcG9ydGVkLnNjc3MiLAoJCSIuLi8uLi9zY3NzL19raXRzLnNjc3MiLAoJCSIuLi8uLi9zY3NzL19zdGFydFBhbmUuc2NzcyIsCgkJIi4uLy4uL3Njc3MvX2J1dHRvbnMuc2NzcyIsCgkJIi4uLy4uL3Njc3MvX2Nocm9tZS5zY3NzIiwKCQkiLi4vLi4vc2Nzcy9fY2hyb21lX3N0eWxlci5zY3NzIiwKCQkiLi4vLi4vc2Nzcy9fY2hyb21lX3Rvb2x0aXAuc2NzcyIsCgkJIi4uLy4uL3Njc3MvX2Nocm9tZV9maWx0ZXIuc2NzcyIsCgkJIi4uLy4uL3Njc3MvX2Nocm9tZV9zaGFyZS5zY3NzIiwKCQkiLi4vLi4vc2Nzcy9fY2hyb21lX2RhdGEuc2NzcyIsCgkJIi4uLy4uL3Njc3MvX2Nocm9tZV9leHRyYXMuc2NzcyIsCgkJIi4uLy4uL3Njc3MvX2MzY2hhcnQuc2NzcyIsCgkJIi4uLy4uL3Njc3MvX3NoYW1lLnNjc3MiCgldLAoJIm5hbWVzIjogW10sCgkibWFwcGluZ3MiOiAiO0FDQUE7Ozs7Ozs7RUFPRTtBQUVGLEFBQUEsSUFBSSxDQUFDO0VBQ0osS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLGdCQUFnQixFQUFFLE9BQWtCO0VBQ3BDLEtBQUssRURYSSxPQUFPO0VDWWhCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFdBQVcsRUFBRSwyREFBMkQ7RUFDeEUsU0FBUyxFQUFFLElBQUk7RUFDZixVQUFVLEVBQUUsSUFBSTtFQUNoQixzQkFBc0IsRUFBRSxXQUFXO0VBQ2pDLHVCQUF1QixFQUFFLFNBQVM7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 */