
div.gradient-editor {
  border-left: solid #888 1.1em; 
  border-right: solid #888 1.1em;
  background-color: #999;
  padding: 0;
  margin: 0;
  margin-left: 1em;
  margin-right: 1em;
  padding-right: 1.1em;
  position: relative;
  z-index: 10;
  margin-bottom: 1em;
  margin-top: 1em;
  border-radius: 0.1em;
}
div.gradient-editor-drop {
  margin-bottom: 2em;
  margin-top: 2em;
  
  background-image:
    linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd),
    linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd);
  background-size: 30px 30px, 30px 30px;
  background-position: 0 0, 15px 15px;
}
div.gradient-editor:after {
  content: "";
  background-color: #999;
  position: relative;
  display: inline-block;
  top: 0;
  left: 0;
  width: 100%;
  height: 2em;
  border: none;
  visibility: hidden;
}
div.gradient-editor span {
  height: 2.0em;
  width: 2.0em;
  border: solid #45B 0.2em;
  border-radius: 50%;
  top: -0em;
  margin-left: -1em;
  background-color: #333;
  position: absolute;
  background-image:
    radial-gradient(circle, transparent 0%, transparent 40%, #333 50%, #333 100%);
}
div.gradient-editor span:hover {
  border-color: #67C;
}
div.gradient-editor span:active {
  border-color: #89E;
}
div.gradient-editor span.gradient-editor-drop {
  top: 1.5em;
  border-radius: 0 2em 2em 2em;
  transform: rotate(0.125turn);
}
div.gradient-editor span.gradient-editor-drop-top {
  top: -1.5em;
  border-radius: 0 2em 2em 2em;
  transform: rotate(0.625turn);
  background-image:
    radial-gradient(circle, transparent 0%, transparent 40%, #333 50%, #333 100%),
    linear-gradient( 45deg, black 25%, transparent 25%, transparent 75%, black 75%, black),
    linear-gradient(-45deg, black 25%, transparent 25%, transparent 75%, black 75%, black);
  background-size:  auto, 8px 8px, 8px 8px;
}
div.gradient-editor input {
  height: 2.4em;
  width: 2.4em;
  border-radius: 50%;
  opacity: 0;
}
div.gradient-editor span:active:after {
  content: "-";
  font-weight: bold;
  font-size: 5em;
  text-align: center;
  line-height: 80%;
  color: red;
  background-color: #eee;
  display: inline-block;
  top: -0.3em;
  left: -0.3em;
  height: 1em;
  width: 1em;
  padding: 0;
  border-radius: 50%;
  border: none;
  position: absolute;
  opacity: 0.2;
  visibility: visible;
  z-index: -1;
}
div.gradient-editor-drop span:active:after {
  transform: rotate(-0.125turn);
}
div.range-picker {
  position: absolute;
  box-shadow: 0 0 1.5em #45B;
  border-radius: 1em;
  width: 12em;
  background: #222;
  z-index: 100;
  opacity: 0.8;
  padding: 0.5em;
  margin-left: 0.5em;
  margin-right: 0.6em;
}
div.orientationCube {
  width: 100%;
  height: 100%;
  position: absolute;
  transform-style: preserve-3d;
}
div.orientationCube p {
  margin: 0;
  width: 056px;
  height: 056px;
  display: block;
  position: absolute;
  border: 2px solid #AAA;
  color: #DDD;
  font-size: 050px;
  text-align: center;
  line-height: 060px;
  background: #2F2F2F;
  background: rgba(47, 47, 47, 0.8);
  font-family: monospace;
  font-weight: bold;
}
div.orientationCube p.faceA { transform: rotateY(  0deg) translateZ(30px); }
div.orientationCube p.faceP { transform: rotateY(180deg) translateZ(30px); }
div.orientationCube p.faceL { transform: rotateY( 90deg) translateZ(30px); }
div.orientationCube p.faceR { transform: rotateY(-90deg) translateZ(30px); }
div.orientationCube p.faceS { transform: rotateX( 90deg) rotateZ(180deg) translateZ(30px); }
div.orientationCube p.faceI { transform: rotateX(-90deg) translateZ(30px); }
@-viewport {
  width: device-width;
  height: device-height;
  zoom: 1;
  min-zoom: 1;
  max-zoom: 1;
}
html {
  width: 100%;
  height: 100%;
  overflow: hidden;
  overflow-x: hidden;
}
body {
  background-color: black;
  color: #777;
  font-family: 'DejaVu Sans', sans-serif;
  height: 100%;
  margin: 0;
  overflow: hidden;
}
h2 {
  margin-top: 0.2em;
  margin-bottom: 0.1em;
}
ul {
  padding: 0;
  margin: 0;
}
a {
  color: #aad;
}
a:hover {
  color: #bbe;
}
button {
  background: #333;
  color: #eee;
  font-weight: bold;
  padding: 0.3em;
  font-size: inherit;
  font-family: 'DejaVu Sans', sans-serif;
  border: none;
  margin: 0.2em;
}
button:hover {
  background-color: #555;
}
button:active {
  background-color: #666;
}
div.error {
  color: red;
  font-weight: bold;
}
div.slider {
  padding-top: 0.1px; 
  padding-bottom: 0.1px;
}
div.slider-bg {
  top: 50%;
  height: 0.2em;
  margin-top: 1.1em;
  margin-bottom: 1.1em;
  background-color: gray;
  border-left: solid #666 1.0em; 
  border-right: solid #666 1.0em;
  margin-right: 0.8em;
}
button.slider {
  height: 1.8em;
  width: 1.8em;
  margin-left: -1.0em; 
  border: solid #45B 0.2em;
  border-radius: 0.9em;
  top: -1.1em;
  background-color: #333;
  position: relative;
}
button.slider:hover {
  border-color: #56C;
}
button.slider:active:after {
  content: "";
  background-color: #eee;
  display: inline-block;
  top: -1.8em;
  left: -1.8em;
  height: 5em;
  width: 5em;
  padding: 0;
  border-radius: 50%;
  position: absolute;
  z-index: 101;
  opacity: 0.2;
}
div.slider-fill {
  background-color: #45B;
  position: relative;
  top: 0;
  height: 0.2em;
}
div.interval-slider div.slider-fill {
  padding-right: 0.9em;
  margin-left: -0.9em;
}
div.interval-slider div.slider-bg {
  border-left: solid #666 2.0em; 
  border-right: solid #666 2.0em;
}
div.interval-slider {
  height: 1em;
}
div.interval-slider button {
  margin-left: -2.0em;
}
div.interval-slider button ~ button {
  margin-left: -0.0;
}
div.sectional_anatomy_viewer {
  width: 100%;
  height: 100%;
  background-color: black;
}
#home-button {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 2em;
  font-weight: bold;
  border-left: solid 10px gray;
  padding-left: 0.5em;
}
#home-button:hover {
  border-left: solid 10px #99f;
  color: #99f;
}
#home-button a {
  color: gray;
  text-decoration: none;
}
#home-button:hover a {
  color: #99f;
}
div.tab-bar {
  height: 100%;
  width: 2%;
  right: 0%;
  position: fixed;
  z-index: 5;
}
div.views {
  height: 100%;
  width: 98%;
  float: left;
}
#anatomy-info {
  position: fixed;
  bottom: 0;
  width: 100%;
  pointer-events: none;
  text-align: center;
  font-weight: bold;
  font-size: 2em;
  background-color: black;
  color: #eee;
  border-top: 0.5em solid black;
  margin: 0;
  opacity: 0.45;
}
#anatomy-info p {
  opacity: 1.0;
}
button.anatomy-info {
  position: fixed;
  right: 3%;
  width: 2em;
  bottom: 1.5em;
  border: none;
  color: red;
  font-size: 2em;
  font-weight: bold;
  opacity: 0.4;
  z-index: 1;
  background-color: rgba(0, 0, 0, 0);
}
button.anatomy-info:hover {
  opacity: 0.8;
  outline: 1px solid #333;
}
span.color-box {
  width: 1em;
  height: 1em;
  margin-right: 1em;
  display: inline-block;
}
button.show-hide {
  position: fixed;
  right: 3%;
  bottom: 0;
  width: 2em;
  font-size: 2em;
  border: none;
  color: white;
  background-color: rgba(0, 0, 0, 0);
  opacity: 0.4;
  z-index: 1;
  pointer-events: auto;
}
button.show-hide:hover {
  opacity: 0.8;
  outline: 1px solid #333;
}
@keyframes anatomyInfoShow {
  from { opacity: 0;}
  to { opacity: 0.4;}
}
@keyframes anatomyInfoHide {
  from { visibility: visible; opacity: 0.4;}
  to { visibility: hidden; opacity: 0;}
}
@-webkit-keyframes anatomyInfoShow {
  from { opacity: 0;}
  to { opacity: 0.4;}
}
@-webkit-keyframes anatomyInfoHide {
  from { visibility: visible; opacity: 0.4;}
  to { visibility: hidden; opacity: 0;}
}
ul.languages {
  list-style-type: none;
  maring: 0;
  padding: 0;
}
ul.languages li + li {
  padding-top: 1em;
}
#progress {
  position: fixed;
  top: 25%;
  bottom: 25%;
  left: 25%;
  right: 25%;
  background-color: black;
  opacity: 0.8;
  text-align: center;
  font-size: 4em;
  cursor: wait;
  z-index: 10;
}
div#sliceProgress {
  position: fixed;
  top: 20%;
  left: 50%;
  margin-left: -6em;
  width: 12em;
  height: 1.2em;
}
div.progress-bar {
  background-color: #333;
  padding: 0.2em;
  border-radius: 0.5em;
}
div.progress-bar span {
  background-color: #0000C8;
  background: linear-gradient(to bottom, rgba(0,0,200,1) 0%,rgba(0,0,150,1) 100%);
  height: 100%;
  display: block;
  border-radius: 0.5em;
  width: 0;
  overflow: hidden;
}
div.progress-bar p {
  position: absolute;
  margin: 0;
  padding: 0;
  border: 0;
  top: 50%;
  width: 100%;
  height: 2em;
  margin-top: -0.7em;
  font-weight: bold;
  text-align: center;
}
nav.tabs ul {
  list-style-type: none;
  border-left: 0.2em solid #333;
  margin: 0;
  padding: 0;
  background-color: #222;
  background: -webkit-linear-gradient(right, #111, #333);
  background: -moz-linear-gradient(right, #111, #333);
  background: -ms-linear-gradient(right, #111, #333);
  background: -o-linear-gradient(right, #111, #333);
  background: linear-gradient(to right, #111, #333);
}
nav.tabs button {
  color: white;
  border: none;
  background-color: rgba(0,0,0,0);
  background: none;
}
nav.tabs li + li {
  border-top: 0.2em solid black;
}
nav.tabs button span {
  background-repeat: no-repeat;
  background-size: auto 0.7em;
  text-indent: 1em;
  display: block;
  background-position: 0.5em center;
}
span.anatomy {
  background-image: url("/img/anatomy.png");
}
span.settings {
  background-image: url("/img/settings.png");
}
span.view {
  background-image: url("/img/view.png");
}
nav.tabs button:hover {
  color: white;
  background-color: #292929;
}
nav.tabs button[selected] {
  color: white;
  background-color: #333;
}
nav.tabs button p {
  text-align: center;
  font-weight: bold;
}
nav.tabs li[selected] {
  color: white;
  background-color: #333;
}
nav.tabs li[selected] button{
  color: white;
  background-color: #333;
}
div.tab-overlay {
  position: fixed;
  top: 0%;
  height: 100%;
  left: 68%;
  width: 30%;
  padding: 0.5em;
  padding-bottom: 0em;
  padding-top: 0em;
  margin-left: 0;
  background-color: #333;
  z-index: 3;
  -webkit-box-shadow: -0.4em 0 0.4em 0px black;
  -moz-box-shadow: -0.4em 0 0.4em 0px black;
  box-shadow: -0.4em 0 0.4em 0px black;
  overflow: auto;
  overflow-x: hidden;
  overflow-y: scroll;
}
@media only screen and (min-device-width: 320px) and (max-device-width: 500px),
only screen and (max-width: 500px) {
  div.tab-bar {
    width: 8%;
  }
  div.views {
    width: 92%;
  }
  div.tab-overlay {
    left: 0;
    width: 92%;
  }
  div.view-button {
    font-size: 0.5em;
  }
  div.mpr-button {
    font-size: 2em;
  }
  div.webgl-button {
    font-size: 3em;
  }
  #data-info {
    font-size: 0.4em;
  }
}
@media only screen and (min-device-width:  500px) and (max-device-width : 1000px),
only screen and (min-width: 500px) and (max-width 1000px) {
  div.tab-bar {
    width: 5%;
  }
  div.views {
    width: 95%;
  }
  div.tab-overlay {
    left: 20%;
    width: 75%;
  }
}
@keyframes slideIn {
  from { visibility:visible; margin-left: 100%;}
  to { visibility:visible; margin-left: 0%;}
}
@keyframes slideOut {
  0% { visibility:visible; margin-left: 0%; opacity 1;}
  99% { visibility:visible; margin-left: 100%; opacity 1;}
  100% { visibility:hidden; margin-left: 100%; opacity 0;}
}
@-webkit-keyframes slideIn {
  from { visibility:visible; margin-left: 100%;}
  to { visibility:visible; margin-left: 0%;}
}
@-webkit-keyframes slideOut {
  0% { visibility:visible; margin-left: 0%; opacity 1;}
  99% { visibility:visible; margin-left: 100%; opacity 1;}
  100% { visibility:hidden; margin-left: 100%; opacity 0; }
}
#anatomy-tab {
  padding: 0;
  overflow: hidden;
}
input {
  font-size: 1.2em;
  width: 50%;
}
div.anatomy-search {
  width: 100%;
}
div.anatomy-results {
  position: absolute;
  top: 2.5em;
  bottom: 0;
  left: 0;
  right: 0;
  overflow-y: scroll;
}
div.anatomy-results ul {
  list-style-type: none;
  padding-left: 1.4em;
}
div.anatomy-results li {
  transition-properties: margin-left;
  transition-duration: 0.1s;
  transition-timing-function: ease;
  padding-top: 0.2em;
}
li.selected {
  font-weight: bold;
  margin-left: -1em;
}
ul.lut-window-list {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
ul.lut-window-list li {
  width: 80%;
}
ul.lut-window-list button {
  width: 100%;
  position: relative;
}
ul.lut-window-list li div {
  left: 0;
  display:inline-block;
  margin-bottom: -1em;
}
ul.lut-window-list li div + div {
  bottom: 0;
  right: 0;
  left: auto;
  display: inline;
  float: right;
  vertical-align:middle;
  padding-right: 0.5em;
}
ul.lut-window-list p {
  text-align: right;
  font-size: 1.2em;
  padding-right: 1em;
}
#data-info {
  position: fixed;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0);
}
#data-info:before {
  content: "\25B6";
  color: #77b;
}
div.mpr-button {
  position: absolute;
  bottom: 0.2em;
  height: 1.1em;
  width: 100%;
  border-top: solid 10px gray;
  background-color: black;
  opacity: 0.5;
  font-size: 3em;
  text-align: center;
}
div.mpr-button[hl] {
  border-top: solid 10px #99f;
  color: #99f;
  opacity: 1;
}
div.webgl-button {
  position: absolute;
  left: 0;
  bottom: 2em;
  border-left: solid 10px gray;
  padding-left: 0.5em;
  font-size: 3em;
}
div.webgl-button:hover {
  border-left: solid 10px #99f;
  color: #99f;
}
noscript {
  display: block;
  position: absolute;
  left: 25%;
  width: 50%;
  top: 20%;
  padding-top: 10%;
  padding-bottom: 10%;
  border-top: 0.08em solid #DB5;
  border-bottom: 0.09em solid #DB5;
  color: red;
  font-weight: bold;
  font-size: 3em;
  text-align: center;
  background-color: #222;
}
div.overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
p.axis-label {
  padding: 0;
  margin: 0;
  
  text-shadow: -1px -1px 0 black,
               -1px  1px 0 black,
                1px -1px 0 black,
                1px  1px 0 black;
  color: #ddd;
  text-align: center;
  vertical-align: middle;
  font-family: monospace;
}
@keyframes axisLabelFade {
  from { visibility: visible; opacity: 1;
    animation-timing-function: ease-out;
  }
  to { visibility: hidden; opacity: 0;
  }
}
@-webkit-keyframes axisLabelFade {
  from { visibility: visible; opacity: 1;
    animation-timing-function: ease-out;
  }
  to { visibility: hidden; opacity: 0;}
}
div.view-button { 
  position: absolute;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
div.view-button .view-title {
  visibility: visible
}
div.view-button:hover .view-title {
  color: #aaf;
}
.view-title {
  position: relative;
  width: 100%;
  text-align: center;
  font-weight: bold;
  font-size: 2em;
  color: #eee;
  background-color: black;
  border-top: 0.5em solid black;
  border-bottom: 0.5em solid black;
  opacity: 0.6;
  visibility: hidden;
}
.slice-index {
  position: absolute;
  left: 0;
  top: 0;
}
.cross-h {
  background-color: blue;
  opacity: 0.5;
  height: 2px;
  margin-top: -1px;
  cursor: row-resize;
}
.cross-v {
  background-color: blue;
  opacity: 0.5;
  width: 2px;
  margin-left: -1px;
  cursor: col-resize;
}
span.response {
  background-color: #eee;
  display: inline-block;
  padding: 0;
  border-radius: 50%;
  position: absolute;
  z-index: 101;
  visibility: hidden;
}
@keyframes response {
  from {
    opacity: 0.4;
    height: 1em;
    width: 1em;
    margin-top: -0.5em;
    margin-left: -0.5em;
    visibility: visible;
  }
  to {
    opacity: 0.0;
    height: 10em;
    width: 10em;
    margin-top: -5em;
    margin-left: -5em;
    visibility: hidden;
  }
}
