.alert {
  color: #fff;
  padding: .8em 1.2em;
  border-radius: .4em;
  margin: .8em 0;
}

.alert--error {
  background: #ffa2a2;
}

.alert--success {
  background: #090;
}

.alert--warning {
  background: #ffecaf;
  color: #0f0f0f;
}

.appheader {
  display: inline-flex;
  align-items: center;
}

.appheader-logo {
  font-size: 4.5rem;
}

.appheader-caption {
  font-size: 120%;
  -webkit-text-decoration: none;
  text-decoration: none;
  color: #f4f4f4;
  color: var(--color-fg);
  margin: 0 0 0 .5em;
  font-weight: normal;
  line-height: 1.3;
  overflow: hidden;
  flex: 1;
}

.appheader-caption_geonomics {
  display: block;
  color: #03a0e3;
}

.appheader-caption_sub {
  display: block;
  font-weight: 200;
  font-size: 90%;
}

.lang-item {
  font-family: inherit;
  color: inherit;
  background: none;
  border: none;
  margin: .5em 0;
  font-size: 70%;
  font-weight: 200;
  padding: 0;
  text-transform: uppercase;
  cursor: pointer;
  display: block;
  min-width: 2em; /* prevent width change when switch to bold */
}

.lang-item:focus {
  outline: none;
}

.lang-item--selected {
  font-weight: 500;
}

.lang-item--en {
  display: none;
}

.logo {
  background-image: url('../../assets/logo_eb12bf76.svg');
  background-size: 100% 100%;
  background-repeat: no-repeat;
  font-size: 4.5rem;
  width: 1em;
  height: 1em;
  min-width: 1em;
}

/* roboto-100 - cyrillic-ext_cyrillic_latin-ext_latin */

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: local('Roboto Thin'), local('Roboto-Thin'),
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-100_ff96de7f.woff2') format('woff2'), 
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-100_28e00c69.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* roboto-100italic - cyrillic-ext_cyrillic_latin-ext_latin */

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100;
  src: local('Roboto Thin Italic'), local('Roboto-ThinItalic'),
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-100italic_ed83cdfb.woff2') format('woff2'), 
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-100italic_c7c9224c.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* roboto-300 - cyrillic-ext_cyrillic_latin-ext_latin */

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Light'), local('Roboto-Light'),
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-300_1fa8191a.woff2') format('woff2'), 
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-300_3157796a.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* roboto-300italic - cyrillic-ext_cyrillic_latin-ext_latin */

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 300;
  src: local('Roboto Light Italic'), local('Roboto-LightItalic'),
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-300italic_f726db93.woff2') format('woff2'), 
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-300italic_f3742fd6.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* roboto-italic - cyrillic-ext_cyrillic_latin-ext_latin */

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 400;
  src: local('Roboto Italic'), local('Roboto-Italic'),
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-italic_ab51cf07.woff2') format('woff2'), 
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-italic_ca6e0eea.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* roboto-regular - cyrillic-ext_cyrillic_latin-ext_latin */

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: local('Roboto'), local('Roboto-Regular'),
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-regular_a1381afc.woff2') format('woff2'), 
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-regular_7abe1e9f.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* roboto-500 - cyrillic-ext_cyrillic_latin-ext_latin */

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: local('Roboto Medium'), local('Roboto-Medium'),
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-500_d962e4a3.woff2') format('woff2'), 
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-500_19fb45a4.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* roboto-500italic - cyrillic-ext_cyrillic_latin-ext_latin */

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 500;
  src: local('Roboto Medium Italic'), local('Roboto-MediumItalic'),
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-500italic_7fdfeca4.woff2') format('woff2'), 
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-500italic_bf94158.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* roboto-700 - cyrillic-ext_cyrillic_latin-ext_latin */

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: local('Roboto Bold'), local('Roboto-Bold'),
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-700_627cdecd.woff2') format('woff2'), 
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-700_4557200e.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* roboto-700italic - cyrillic-ext_cyrillic_latin-ext_latin */

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 700;
  src: local('Roboto Bold Italic'), local('Roboto-BoldItalic'),
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-700italic_39718ad5.woff2') format('woff2'), 
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-700italic_28dc32af.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* roboto-900 - cyrillic-ext_cyrillic_latin-ext_latin */

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: local('Roboto Black'), local('Roboto-Black'),
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-900_24ebb194.woff2') format('woff2'), 
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-900_72f3dd20.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* roboto-900italic - cyrillic-ext_cyrillic_latin-ext_latin */

@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 900;
  src: local('Roboto Black Italic'), local('Roboto-BlackItalic'),
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-900italic_7127ee0.woff2') format('woff2'), 
       url('../../assets/roboto-v18-cyrillic-ext_cyrillic_latin-ext_latin-900italic_c27330db.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

:root {
  font-size: 16px;
  font-family: 'Roboto';

  --theme-head-bg: #191925;
  --theme-head-gl: 100%;
  --theme-head-fg: #fff;
  --theme-sidebar-bg: #20202f;
  --theme-sidebar-fg: #f4f4f4;
  --theme-sidebar-highlight: #14141d;
  --theme-sidebar-highlight-gutter: #437ca5;
  --theme-badge-fg: #f4f4f4;
  --theme-badge-bg: #555;
  --theme-expander-bg: #333;
  --theme-maptoggler-bg: #fff;
  --theme-maptoggler-border: #fff;
  --theme-bottompanel-bg: #20202f;
  --theme-bottompanel-fg: #fff;
  --theme-admterr-bg: #28283f;
  --theme-admterr-fg: var(--theme-sidebar-fg);
  --theme-admterr-highlight: var(--theme-sidebar-highlight);
  --theme-admterr-highlight-gutter: var(--theme-sidebar-highlight-gutter);

  --ctl_border_color: #ccc;
  --button_face_color: #437ca5;
  --transition_duration: 200ms;
  --color-bg: #20202f;
  --color-fg: #f4f4f4;
  --color-mute: #888;
  --color-highlight: #a1a4b2;

  --forms-grid-width: 3.75em;
  --forms-content-width: 83%;
  --forms-content-max-width: 47em;
}

/* override this */

@font-face {
  font-family: 'fontello';
  src: url('../../assets/fontello_1ea8c155.eot?39026422');
  src: url('../../assets/fontello_1ea8c155.eot?39026422#iefix') format('embedded-opentype'),
       url('../../assets/fontello_5bcff38f.woff2?39026422') format('woff2'),
       url('../../assets/fontello_9daa923d.woff?39026422') format('woff'),
       url('../../assets/fontello_2aea7c0.ttf?39026422') format('truetype'),
       url('../../assets/fontello_fc419a79.svg?39026422#fontello') format('svg');
  font-weight: normal;
  font-style: normal;
}

/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */

/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */

/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: 'fontello';
    src: url('../font/fontello.svg?39026422#fontello') format('svg');
  }
}
*/

[class^="fontello--"]:before, [class*=" fontello--"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
 
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  /* opacity: .8; */
 
  /* For safety - reset parent styles, that can break glyph codes*/
  font-feature-settings: normal;
  font-variant: normal;
  text-transform: none;
 
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
 
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: .2em;
 
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
 
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
 
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}

.fontello--search1:before { content: '\e800'; }

/* '' */

.fontello--dot3:before { content: '\e801'; }

/* '' */

.fontello--down:before { content: '\e802'; }

/* '' */

.fontello--trash:before { content: '\e803'; }

/* '' */

.fontello--search:before { content: '\e804'; }

/* '' */

.fontello--feather:before { content: '\e805'; }

/* '' */

.fontello--ok:before { content: '\e806'; }

/* '' */

.fontello--cancel:before { content: '\e807'; }

/* '' */

.fontello--download_alt:before { content: '\e808'; }

/* '' */

.fontello--cancel1:before { content: '\e809'; }

/* '' */

.fontello--resize_full:before { content: '\e80a'; }

/* '' */

.fontello--location:before { content: '\e80b'; }

/* '' */

.fontello--resize_full_alt:before { content: '\e80c'; }

/* '' */

.fontello--right_open_big:before { content: '\e80d'; }

/* '' */

.fontello--loop:before { content: '\e80e'; }

/* '' */

.fontello--lock-right:before { content: '\e80f'; }

/* '' */

.fontello--lock:before { content: '\e810'; }

/* '' */

.fontello--monitoring:before { content: '\e811'; }

/* '' */

.fontello--layers:before { content: '\e812'; }

/* '' */

.fontello--vcard:before { content: '\e813'; }

/* '' */

.fontello--user2:before { content: '\e814'; }

/* '' */

.fontello--spinner:before { content: '\e830'; }

/* '' */

.fontello--play:before { content: '\f00f'; }

/* '' */

.fontello--check_off:before { content: '\f096'; }

/* '' */

.fontello--dashboard:before { content: '\f0e4'; }

/* '' */

.fontello--lock-open-alt:before { content: '\f13e'; }

/* '' */

.fontello--check_on:before { content: '\f14a'; }

/* '' */

.fontello--map0:before { content: '\f278'; }

/* '' */

.fontello--user:before { content: '\f2c0'; }

/* '' */

.fontello--window_maximize:before { content: '\f2d0'; }

/* '' */

:root {
  --fontello-check_off: "\f096";
  --fontello-down: "\e802";
  --fontello-search: "\e804";
  --fontello-check_on: "\f14a";
  --fontello-dot3: "\e801";
  --fontello-trash: "\e803";
  --fontello-feather: "\e805";
  --fontello-ok: "\e806";
  --fontello-cancel: "\e807";
  --fontello-download_alt: "\e808";
  --fontello-cancel1: "\e809";
  --fontello-resize_full: "\e80a";
  --fontello-map0: "\f278";
  --fontello-location: "\e80b";
  --fontello-play: "\f00f";
  --fontello-search1: "\e800";
  --fontello-right_open_big: "\e80d";
  --fontello-window_maximize: "\f2d0";
  --fontello-resize_full_alt: "\e80c";
  --fontello-loop: "\e80e";
  --fontello-spinner: "\e830";
  --fontello-dashboard: "\f0e4";
  --fontello-lock: "\e810";
  --fontello-lock-open-alt: "\f13e";
  --fontello-user: "\f2c0";
  --fontello-lock-right: "\e80f";
  --fontello-monitoring: "\e811";
  --fontello-layers: "\e812";
  --fontello-vcard: "\e813";
  --fontello-user2: "\e814";
}

:root {
  --scrollbar-width: .875rem;
}

/* stylelint-disable-next-line selector-max-type */

html,
body {
  overflow: hidden;
  font-weight: 300;
  padding: 0;
  margin: 0;
}

::-webkit-scrollbar {
  width: .875rem;
  width: var(--scrollbar-width);
  height: .875rem;
  height: var(--scrollbar-width);
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 1rem;
}

.admterrs {
  background: #f5f5f5;
}

.admterrs-pinned {
  font-weight: bold;
  color: rgba(0,0,0,0.67843);
}

.admterrs-search {
  z-index: 100;
  background-color: #112;
  position: relative;
}

.admterrs-search_input:focus {
  outline: none;
}

.admterrs-search::after {
  content: "\e800";
  content: var(--fontello-search1);
  font-family: 'fontello';
  position: absolute;
  top: 50%;
  right: 1.2em;
  margin-top: -.5em;
  width: 1em;
  color: #999;
  height: 1em;
}

.admterrs-search_input {
  display: block;
  width: 100%;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  line-height: 3;
  padding: 0 1em;
  border: none;
  background: #ddd;
}

.admterrs-selected {
  padding: 1em;
  display: block;
  white-space: nowrap;
  cursor: pointer;
  overflow: hidden;
  text-overflow: ellipsis;
}

.admterrs-list {
  overflow-y: auto;
  max-height: 12em;
}

.admterrs_search_hits-item {
  height: 3em;
  box-sizing: border-box;
  padding: .25em .8em;
  cursor: pointer;
  display: block;
  border-left: .3em solid transparent;
  transition: border-color 200ms ease;
  white-space: nowrap;
}

.admterrs_search_hits-item--selected {
  border-color: var(--color-highlight-gutter);
}

.admterrs_search_hits-name {
  display: block;
  margin-top: .2em;
  text-overflow: ellipsis;
  overflow: hidden;
}

.admterrs_search_hits-parents {
  font-size: 70%;
  display: block;
  text-overflow: ellipsis;
  overflow: hidden;
}

.admterrs_search_hits-parents_item::after {
  content: ' / ';
  color: #888;
}

.admterrs_search_hits-empty {
  display: block;
  padding: 1em;
  color: #aaa;
}

.signup_screen-background {
  width: 100%;
  height: 100%;
  position: absolute;
  background: #eee;
}

.signup_screen-background_top {
  position: absolute;
  height: 30%;
  width: 100%;
  background: #191925;
  background: var(--theme-head-bg);
}

.signup_screen-form_wrapper {
  position: absolute;
  width: 700px;
  background: #fff;
  border-radius: 1em;
  left: 50%;
  margin-left: -350px;
  bottom: 5em;
  transform: translateY(100%);
  box-shadow: 0 0 6.667em 0 rgba(0,0,0,.3);
}

.signup_screen-form_wrapper_header {
  padding: 1.5em 3em 1.7em;
}

.signup_screen-form_input {
  width: 100%;
  border: none;
  border-bottom: 2px solid #eee;
  line-height: 3;
  outline: none;
  transition: border-bottom 200ms;
  font-size: 1em;
  margin: 0;
}

.signup_screen-form_input:focus {
  border-bottom-color: #437ca5;
}

.signup_screen-form_submit {
  background: #437ca5;
  color: #fff;
  border: none;
  border-radius: .4em;
  width: 100%;
  padding: .8em;
  font-size: 1.2em;
  outline: none;
  margin-top: 1em;
  cursor: pointer;
}

.signup_screen-title {
  color: #777;
  text-align: center;
  font-weight: normal;
  margin: .1em 0 .5em;
}

.signup_screen-appheader {
  position: absolute;
  top: -5.5em;
  left: 0;
}

.signup_screen-lang {
  position: absolute;
  top: -5.8em;
  right: 0;
  color: #fff;
  color: var(--theme-head-fg);
}

.signup_screen-password_hint {
  position: absolute;
  width: 50%;
  z-index: 200;
  visibility: hidden;
  opacity: 0;
  transform: scale(.9);
  transition: opacity 200ms ease, transform 200ms ease;
}

.signup_screen-form_input--password:focus ~ .signup_screen-password_hint {
  visibility: visible;
  opacity: .95;
  transform: scale(1);
}

.signup_screen-password_hint_background {
  font-size: .8em;
  padding: .8em .9em;
  border-radius: 3px;
  background-color: #234;
  color: #fafafa;
  line-height: 1.5;
}

.signup_screen-password_hint_arrow {
  width: 10px;
  height: 10px;
  transform: rotate(45deg);
  position: relative;
  top: 5px;
  left: 10px;
  background-color: #234;
}

.signup_screen-password_hint_highlight {
  color: #f05457;
}

.signup_screen-password_hint_highlight--yellow {
  color: #ffd700;
  font-weight: bolder;
}

.treenode {
  /* for toggler absolute pos */
  position: relative;
}

.treenode--level_2 .treenode-header {
  padding-left: calc(.8em + 1.5em);
}

.treenode--level_3 .treenode-header {
  padding-left: calc(.8em + 1.5em * 2);
}

.treenode--level_4 .treenode-header {
  padding-left: calc(.8em + 1.5em * 3);
}

.treenode-header {
  padding-right: 3em;
  padding-left: .5em;
  display: block;
  line-height: 3;
  white-space: nowrap;
  cursor: pointer;
  overflow: hidden;
  text-overflow: ellipsis;
  border-left: .3em solid transparent;
  transition: border-color 200ms ease;
}

.treenode-header--selected,
.treenode-header:hover {
  background-color: rgba(0, 0, 0, .05);
}

.treenode-header--selected {
  border-color: var(--color-highlight-gutter);
}

.treenode-toggler {
  position: absolute;
  right: .5em;
  top: .5em;
  width: 2em;
  height: 2em;
  opacity: .5;
  outline: none;
  margin: 0;
  padding: 0;
  border: none;
  color: inherit;
  background: none;
  font-family: inherit;
  font-size: inherit;
  line-height: 1;
  cursor: pointer;
  white-space: nowrap;
  border-radius: 50%;
}

.treenode-toggler:hover {
  background-color: rgba(0, 0, 0, .1);
}

.treenode-toggler::-webkit-focus-inner {
  border: 0;
  padding: 0;
}

.treenode-toggler::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.treenode-toggler--expander::before,
.treenode-toggler--collapser::before {
  content: "\e80d";
  content: var(--fontello-right_open_big);
  position: absolute;
  left: 50%;
  top: 50%;
  font-family: 'fontello';
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  text-align: center;
  font-feature-settings: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  transition: transform 200ms ease;
}

.treenode-toggler--expander::before {
  transform: translate(-50%, -50%) rotate(0deg);
}

.treenode-toggler--collapser::before {
  transform: translate(-50%, -50%) rotate(90deg);
}

.treenode-toggler--loading::before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -.5em;
  margin-left: -.5em;
  width: 1em;
  height: 1em;
  border: .2em solid;
  border-top-color: transparent;
  border-left-color: transparent;
  border-radius: 50%;
  box-sizing: border-box;
  transform-origin: center center;
  transform: translate(-50%, -50%) rotate(700000deg);
  transition: transform 1000000ms linear;
}
