body {
  font-family: 'Droid Sans', sans-serif;
  color: white;
  background: black;
  overflow: hidden;
}

a,.link {
  color: rgb(102, 190, 238);
  text-decoration: underline;
  cursor: pointer;
}

a:hover,.link:hover {
  color: #ffcaca;
}

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

#no-webgl {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  text-align: center;
  margin-top: 20px;
  display: none;
}

#canvas {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  /* width: 100vh;
  height: 100vh; */
}

#canvas-holder {
  padding: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}


#load-cover {
  background: rgba(0, 0, 0, 0.8);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0
}

#loader {
  background: black;
  cursor:default;
  color: white;
  position: absolute;
  padding: 10px;
  border-radius: 5px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  width: 250px;
  height: 50px;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  text-align: center;
  display: flex;
  align-items: center;
}

#loader .loading-spinner {
  width: 32px;
  margin: 9px;
}

#loader-text {
  display: inline-block;
  vertical-align: text-bottom;
  line-height: 50px;
}

#spinner {
  display: inline-block;
  height: 50px;
  width: 50px;
  position: relative;
}

#sat-hoverbox {
  background: black;
  cursor:default;
  color: white;
  position: absolute;
  padding: 10px;
  border-radius: 5px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  pointer-events: none;
}

#sat-infobox {
  background: black;
  /* cursor:default; */
  color: white;
  position: absolute;
  padding: 10px;
  border-radius: 5px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  right: 0px;
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
  height: 250px;
  width: 200px;
  display: none;
}

.draggable .drag-zone, .draggable.drag-zone {
  cursor: grab;
  /* z-index: 100; */
}

.dragging .drag-zone, .dragging.drag-zone {
  cursor: grabbing;
  /* z-index: 200; */
}

#all-objects-link {
  font-size: 12px;

  margin: 5px 0;
}

#sat-info-title{
  text-align: center;
  margin-bottom: 5px;
  font-size: 18px;
}

.sat-info-row {
  text-align: center;
  margin-bottom: 5px;
  height: 18px;
}

.sat-info-key,.sat-info-value {
  display: inline-block;
  height: 18px;
}

.sat-info-key {
  font-size: 14px;
  color: #aaa;
  float: left;
}

.sat-info-value {
  float: right;
}

#search-results {
  display: none;
  /* position: absolute; */
  /* width: 300px; */
  background: black;
  color: white;
  border-radius: 5px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  /* z-index: 10; */
  /* top: 30px;
  bottom: 0; */
  overflow: auto;
  max-height: 100%;
}

.search-hilight {
  font-weight: bold;
  color: #faa
}

.search-result {
  padding: 5px;
  height: 28px;
  line-height: 28px;
}

.search-result:hover {
  background: #c33;
  cursor: pointer;
}

.search-result-intldes {
  font-size: 12px;
  height: 28px;
  float: right;
  margin-right: 10  px;
}

#search {
  background: rgba(0, 0, 0, 0);
  border: none;
  border-bottom: 1px solid white;
  color: white;
  font-family: 'Droid Sans', sans-serif;
  font-size: 16px;
  outline: none;
}

.toolbar {
  height: 30px;
  position: absolute;
  top: 5px;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  align-content: stretch;
  width: 100%;
  padding: 10px;
}

ul.menu {
  list-style: none;
  display: flex;
  flex-direction: column;
}
.menu-item:hover {
  color:#faa;
  cursor: default;
}

body.loading .toolbar {
  display: none;
}

#menu-left {
  left: 0px;
  justify-content: flex-start;
}

#menu-right ul.menu {
  display: flex;
  flex-direction: column;
  /* justify-content: flex-end; */
  /* padding-right: 11px; */
  /* border: solid 1px white; */
}

#menu-right ul.menu li {
  line-height: 150%;
}

/* #menu-right ul {
 display: flex;
 flex-direction: row;
 justify-content: flex-end;
 column-gap: 11px;
} */

/* #menu-right ul li {
  border: solid 1px yellow;
  align-items: center;
} */

#menu-right ul li:last-child {
  margin-right: 11px;
}

#menu-right ul .menu-items{
  display: none;
}

.menu-title {
  display: flex;
  align-items: center;
}

.menu-title:hover {
  color: #faa;
}

.menu {
  cursor: pointer;
  margin: 0px 10px;
  z-index: 11;
}

.menubox {
  cursor: default;
}

.menu:first-child {
  margin-left: 2px;
}

.menu:hover .menu-title, .button-menu:hover .menu-title {
  color: #faa;
  cursor: pointer;
}

.menu-title {
  height: 30px;
}



.submenu {
  display: none;
  background: black;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 5px;
  margin: 0;
  overflow: hidden;
  position: absolute;
}

.dropdown {
  width: 200px;
}

.menubox {
  padding: 10px;
}

.dropdown>li {
  display: block;
  padding: 5px 10px;
}

.dropdown>li:hover {
  background: #c33;
  font-weight: bold;
}

.dropdown>li:active {
  background: #511;
}

.dropdown>li.clear-option {
  background: #511;
  display: none;
}

#about-box {
  right: 10px;
  width: 500px;
  height: 435px;
}

@media screen and (max-width: 500px) {
  #about-box {
    width: 88vw;
    height: 80vh;
    overflow-y: scroll;
  }
}

#help-box {
  right: 70px;
  width: 200px;
  height: 250px;
}

#help-box .dot {
  filter: brightness(1.5);
  -webkit-filter: brightness(1.5);
}

.box-header {
  font-size: 20px;
  margin-top: 5px;
  margin-bottom: 5px;
}

#legend li {
  height: 25px;
  line-height: 25px;
  margin-top: 5px;
  margin-bottom: 5px;
}

#groups-display {
  color: white;
}

#groups-display li:before {
  content: '\00a0\00a0\00a0\00a0';
  margin-left: 10px;
}

#groups-display li.selected:before {
  content: '✓ ';
}

.dot {
  vertical-align: middle;
  margin-right: 5px;
}

#controls-info {
  margin-top: 10px;
}

#controls-info>li {
  margin-top: 10px;
}

.clickable {
  cursor: pointer;
}

.hidden {
  transition: opacity 1s ease-in-out;
  -webkit-transition: opacity 1s ease-in-out;
  -moz-transition:opacity 1s ease-in-out;
  opacity: 0;
  display: none !important;
}

.visible {
  transition: opacity 1s ease-in-out;
  -webkit-transition: opacity 1s ease-in-out;
  -moz-transition:opacity 1s ease-in-out;
  display: block !important;
  opacity: 1;
}


.titlebar-window {
  display: none;
  /* background-color: black; */
  backdrop-filter: blur(7px) opacity(0.9);
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.5);
  border: solid 1px #aaa;

  position: absolute;
  border: solid 1px rgb(87, 87, 87);
  /* left: 0;
  top: 0; */
  /* width: 100vw;
  height: 100vh; */

  left: 50%;
  top: 25%;
  width: 300px;
  height: 500px;
}

.titlebar-window .window-title {
  /* background-color: rgb(3, 3, 102); */
  background-color: rgb(4, 161, 246);
  position: relative;
  color: white;
  font-weight: bold;
  font-size: 110%;
  padding: 7px 12px;
  border-bottom: 1px rgb(148, 140, 140) solid;
}

.titlebar-window .window-close{
  position: absolute;
  top: 6px;
  right: 21px;
  height: 12px;
  width: 12px;
  color: white;
  cursor: pointer;
}

.titlebar-window .window-close:hover {
  color: black;
}


.titlebar-window .window-content-holder {
  overflow-y: auto;
  height: 100%;
}

.titlebar-window .window-content {
  padding: 7px;
  padding-bottom: 40px;
}

.titlebar-window .window-content p {
  line-height: 150%;
}

.titlebar-window.active {
  display: block;
}

#mobile-hamburger {
  display: none;
  position: absolute;
  top: 10px;
  left: 10px;
}

#mobile-hamburger span {
  color: white;
  font-size: 30px !important;
}

.attribution {
  position: absolute;
  bottom: 13px;
  left: 13px;
  font-size: 12px;
}

.attribution .updated {
  font-style: italic;
}

canvas {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
}

@media screen and (max-width: 400px) {
  /* #mobile-hamburger {
    display: block;
  }

  #menu-right {
    display: none;
  } */

  .titlebar-window {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    filter: none;
    -webkit-filter: none;
    background: black;
}
}

.app-info {
  font-size: 12px;
}

.release-date-holder {
  position: absolute;
  bottom: 13px;
  right: 13px;
  font-size: 12px;
}