/*
#GenomeAnnotation {
  background: rgba(255,240,128,0.4)
}
#Blocks {
  background: rgba(128,223,255,0.4)
}
#recombGraphDiv {
  background: rgba(255,64,150,0.1)
}
#phyloDiv__canvas {
  background: rgba(187,255,69,0.4)
}
*/
body{
    margin: 5px;
    /* by default 8px apparently! */
}

.dragHandle {
  border-radius: 50%;
  width: 150px;
  height: 150px;
  background: rgba(196,196,196,0.5);
}

.dragHandle:hover {
  background: black;
}


/* transitions for animated logo */
rect {
  -webkit-transition: all 1.5s ease-in-out;
  -moz-transition: all 1.5s ease-in-out;
  transition: all 1.5s ease-in-out;
}

/* this prevents tool tips from messing with the div as they extend out of it...
 * BUT it introduces a vertical scroll bar. WTF!
 * http://stackoverflow.com/questions/6179831/overflow-x-adds-vertical-scrollbar
*/
/*#react {
  overflow-x: hidden;
}*/

.noOverflow {
  overflow-x: hidden;
}

/* disable scroll bars
ideally only on the canvassesDiv element but
I can't seem to get this working, despite
http://stackoverflow.com/questions/5952911/webkit-scrollbars-in-one-place-not-another
so we apply it everywhere
*/
::-webkit-scrollbar {
    display: none;
}

/* id outer used to wrap a vertically centered element - landing page */
#outer {
  width: 100%;
  height: 90vh;
  /*border: 1px solid #000;*/
}
.centeredVertically {
  position: relative;
  top: 50%;
  /*border: #a0a0a0 solid 1px;*/
  transform: translateY(-50%);
}

/* header element */
#header {
  width: 100%;
  height: 25px;
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 100;
  background: #D8D8D8;
}
#canvassesDiv {
  height: calc(100vh - 55px);
  width: calc(100vw - 10px);
  margin: auto;
  padding: 0px 5px;
}
.content {
  position: relative;
  top: 25px;
}

/* code snippets: */
code {
  font-family: Courier, 'New Courier', monospace;
  white-space: pre-wrap;
  white-space: -moz-pre-wrap;
  white-space: -o-pre-wrap;
  word-wrap: break-word;
  background: #D8D8D8;
}

.newline {
  clear: both;
}

.inContainer {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}


/*  S E T T I N G S */

.fullpage {
  z-index:10;
  position: absolute;
  width: 99%;
  height: 97vh;
}

.padding10 {
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-top: 10px
}

.padding2remImportant {
  padding-left: 2rem !important;
  padding-right: 2rem;
  padding-bottom: 2rem;
  padding-top: 2rem;
}


.bgwhite-alpha {
  background: rgba(255,255,255,0.8);
}

.bgwhite {
  background: white;
}

.bggray {
  background: #d8d8d8;
}

/* SETIINVGS panel border (interior) */
.border{
    -webkit-box-shadow:inset 0px 0px 0px 2px #bbbbbb;
    -moz-box-shadow:inset 0px 0px 0px 2px #bbbbbb;
    box-shadow:inset 0px 0px 0px 2px #bbbbbb;
}



div.horizontalgap{padding-left: 10px; display: inline}

.settings-col {
  position: relative;
  /*width: 22%;*/
  float: left;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  margin-left: 10px;
  margin-right: 10px;
  margin-bottom: 10px;
  margin-top: 10px
}

.border10px {
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  margin-left: 10px;
  margin-right: 10px;
  margin-bottom: 10px;
  margin-top: 10px
}

@media (max-width: 1000px) {
  .settings-col{
    width: calc(50% - 20px);
  }
}
@media (min-width: 1000px) {
  .settings-col{
    width: calc(25% - 20px);
  }
}

.hidden { display:none; }

/*img.frontpage{
    width:100%;
    max-width:150px;
    display: block;
    margin: 0 auto;
}*/

input[type=range]{
  float: right;
  margin: 0 0 0 0 !important;
}


.fitImageToBox {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}
.fitImageToBox img {
  width: 100%;
  height: auto;
}

/* from materialize */
.center, .center-align {
  text-align: center; }


.justifyText {
  text-align: justify;
}
.justifyText:after {
  content: "";
  display: inline-block;
  width: 100%;
}

.pointer {
    cursor:pointer;
    cursor:hand;
}
/*
#logoLanding {
  width:100%;
  max-width:250px;
}
*/

/* FONTS MOVED TO index.html */

.heavy {
  font-weight: 700;
}

.light {
  font-weight: 300; }

a {
  text-decoration: none; }

.strikethorugh {
  text-decoration: line-through;
}

html {
  line-height: 1.5;
  font-family: "Lato";
  font-weight: normal;
  color: rgba(0, 0, 0, 0.87);
}
@media only screen and (min-width: 0) {
  html {
    font-size: 14px; } }
@media only screen and (min-width: 992px) {
  html {
    font-size: 14.5px; } }
@media only screen and (min-width: 1200px) {
  html {
    font-size: 15px; } }

.promo-caption {
  font-size: 1.3rem;
  font-weight: 700;
  margin-top: 5px;
  margin-bottom: 0; }


.dots {
  margin-left: auto;
  margin-right: auto;
  width: 8px;
  height: 8px;
  margin-top: 20px;
  margin-bottom: 20px;
  border-radius: 50%;
  background: #b3b3b3;
  box-shadow:
    -50px 0px 0 0px #b3b3b3,
    50px 0px 0 0px #b3b3b3;
}








/* http://tobiasahlin.com/spinkit/ */

.sk-fading-circle {
  margin: 100px auto;
  width: 60px;
  height: 60px;
  position: absolute;
  left: 50%;
  top: 30vh;
}

.sk-fading-circle .sk-circle {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.sk-fading-circle .sk-circle:before {
  content: '';
  display: block;
  margin: 0 auto;
  width: 15%;
  height: 15%;
  background-color: #888;
  border-radius: 100%;
  -webkit-animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
          animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
}
.sk-fading-circle .sk-circle2 {
  -webkit-transform: rotate(30deg);
      -ms-transform: rotate(30deg);
          transform: rotate(30deg);
}
.sk-fading-circle .sk-circle3 {
  -webkit-transform: rotate(60deg);
      -ms-transform: rotate(60deg);
          transform: rotate(60deg);
}
.sk-fading-circle .sk-circle4 {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
}
.sk-fading-circle .sk-circle5 {
  -webkit-transform: rotate(120deg);
      -ms-transform: rotate(120deg);
          transform: rotate(120deg);
}
.sk-fading-circle .sk-circle6 {
  -webkit-transform: rotate(150deg);
      -ms-transform: rotate(150deg);
          transform: rotate(150deg);
}
.sk-fading-circle .sk-circle7 {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}
.sk-fading-circle .sk-circle8 {
  -webkit-transform: rotate(210deg);
      -ms-transform: rotate(210deg);
          transform: rotate(210deg);
}
.sk-fading-circle .sk-circle9 {
  -webkit-transform: rotate(240deg);
      -ms-transform: rotate(240deg);
          transform: rotate(240deg);
}
.sk-fading-circle .sk-circle10 {
  -webkit-transform: rotate(270deg);
      -ms-transform: rotate(270deg);
          transform: rotate(270deg);
}
.sk-fading-circle .sk-circle11 {
  -webkit-transform: rotate(300deg);
      -ms-transform: rotate(300deg);
          transform: rotate(300deg);
}
.sk-fading-circle .sk-circle12 {
  -webkit-transform: rotate(330deg);
      -ms-transform: rotate(330deg);
          transform: rotate(330deg);
}
.sk-fading-circle .sk-circle2:before {
  -webkit-animation-delay: -1.1s;
          animation-delay: -1.1s;
}
.sk-fading-circle .sk-circle3:before {
  -webkit-animation-delay: -1s;
          animation-delay: -1s;
}
.sk-fading-circle .sk-circle4:before {
  -webkit-animation-delay: -0.9s;
          animation-delay: -0.9s;
}
.sk-fading-circle .sk-circle5:before {
  -webkit-animation-delay: -0.8s;
          animation-delay: -0.8s;
}
.sk-fading-circle .sk-circle6:before {
  -webkit-animation-delay: -0.7s;
          animation-delay: -0.7s;
}
.sk-fading-circle .sk-circle7:before {
  -webkit-animation-delay: -0.6s;
          animation-delay: -0.6s;
}
.sk-fading-circle .sk-circle8:before {
  -webkit-animation-delay: -0.5s;
          animation-delay: -0.5s;
}
.sk-fading-circle .sk-circle9:before {
  -webkit-animation-delay: -0.4s;
          animation-delay: -0.4s;
}
.sk-fading-circle .sk-circle10:before {
  -webkit-animation-delay: -0.3s;
          animation-delay: -0.3s;
}
.sk-fading-circle .sk-circle11:before {
  -webkit-animation-delay: -0.2s;
          animation-delay: -0.2s;
}
.sk-fading-circle .sk-circle12:before {
  -webkit-animation-delay: -0.1s;
          animation-delay: -0.1s;
}

@-webkit-keyframes sk-circleFadeDelay {
  0%, 39%, 100% { opacity: 0; }
  40% { opacity: 1; }
}

@keyframes sk-circleFadeDelay {
  0%, 39%, 100% { opacity: 0; }
  40% { opacity: 1; }
}

.grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 创建3列 */
  gap: 10px; /* 添加列间隔，可根据需求调整 */
}

.grid-row {
  display: contents; /* 使行内的div直接参与grid布局 */
}

.grid-item {
  /* 添加必要的样式，如内边距、背景色等 */
  padding: 10px;
  background-color: #f0f0f0;
}

.certain-category-search-dropdown .ant-select-dropdown-menu-item-group-title {
  color: #666;
  font-weight: bold;
}

.certain-category-search-dropdown .ant-select-dropdown-menu-item-group {
  border-bottom: 1px solid #f6f6f6;
}

.certain-category-search-dropdown .ant-select-dropdown-menu-item {
  padding-left: 16px;
}

.certain-category-search-dropdown .ant-select-dropdown-menu-item.show-all {
  text-align: center;
  cursor: default;
}

.certain-category-search-dropdown .ant-select-dropdown-menu {
  max-height: 300px;
}