body {
	margin: 0;
	padding: 0;
	background-color: white;
	font-family: sans-serif;
}

table {
	border-collapse: collapse;
	empty-cells: show;
	width: 100%;
}

thead tr {
	border-bottom: 2px solid grey;

	text-align: left;
	font-size: 0.9em;
}

tr {
	font-size: 1em;
}

tr.optional,
tr.stale td.min, tr.stale td.max, tr.stale td.average, tr.stale td.last,
tr.stale td.consumption, tr.stale td.cost, tr.stale td.total {
  color: grey;
}

table.properties tr:not(:first-child) {
	border-top: 1px solid #ddd;
}
table.properties td.key {
	vertical-align: top;
}

td input:not([type=image]):not([type=checkbox]) {
	width: 100%;
}

#content {
	padding: 10px;
}

#content div {
	padding: 2px 0;
	display: block;
}

#content h3 {
	background-color: grey;
	padding: 4px;
	margin: 2px 0;
	color: white;
	cursor: pointer;
	font-size: 0.9em;
}

#content h3 img {
	vertical-align: bottom;
}

#plot {
	position: relative;
	background-color: white;
}

.legend table {
	width: auto;
}

.axisLabels { /* if axislabels plugin is used */
	font-size: smaller;
	color: #545454;
}

#flot {
	height: 300px;
	z-index: 1;
	margin-bottom: 5px;
}

#tooltip {
  position: absolute;
  display: none;
  background-color: #fff;
  z-index: 3;
  font-size: smaller;
  pointer-events: none;
}

#overlay {
	position: absolute;
	z-index: 3;
	width: 100%;
	top: 50%;
	margin-top: -42px;
	text-align: center;
	text-shadow: 0 0 4px white;
	color: grey;
}

#time {
	position: absolute;
	z-index: 2;
	display: none;
	color: white;
	background-color: rgba(170, 0, 0, 0.80);
	font-size: smaller;
	padding: 2px 4px;
	white-space: nowrap;
}

#footer {
	text-align: center;
	font-size: 0.7em;
	background-color: #0292C0;
	color: white;
	padding: 10px;
}

#footer a, #footer a:visited {
	color: white;
}

#controls {
	background-color: grey;
	margin-right: 0px; /* override jquery ui */
	padding: 2px!important;
}

#controls button {
	width: 10.0%;
	height: 30px;
	margin-right: 0px; /* override jquery ui */
	font-size: 1em;
	padding: 0;
}

#controls button img {
	vertical-align: text-bottom;
}

#accordion button {
	margin-left: 0;
	font-size: 0.9em;
}

#accordion button img {
	vertical-align: text-top;
}

button {
	background-color: silver;
	border: 1px solid darkgrey;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
}

/* header */
#title {
	margin: 0 0 0.2em 0;
	float: left;
}

#export, #display {
	float: right;
}

select.icons option {
	padding-left: 20px;
	background-repeat: no-repeat;
}

#entity-list, #entity-list > div {
	padding: 2px 0 !important;
}

/* treeTable for entities */
#entity-list tbody img {
	margin: 0.2em 0.4em 0 0; /* sprite image margin */
	vertical-align: top;
}

#entity-list tbody span {
	background-position: left center;
	background-repeat: no-repeat;
	padding: 0 0 0.2em 0; /* 0.2em 0 0.2em 1.7em if not using sprite images */
	margin: 0;
}

.indicator {
	height: 12px;
}

.ops, .min, .max, .average, .last, .consumption, .total, .cost {
	text-align: right;
}

.visibility {
	width: 18px;
}

.expander {
	width: 20px;
}

/* dialogs */

.dialog {
	display: none;
	padding: 10px;
}

.dialog select {
	width: 100%;
}

.dialog input[type=text], .dialog input[type=password], .dialog textarea {
	width: 100%;
	box-sizing: border-box;
}

/* mobile styles */

@media only screen and (max-width: 40em) {
	/* small */
	table .min, table .max, table .average {
		display: none;
	}
	tr td {
		font-size: 0.9em;
	}
	#footer {
		display: none;
	}
}

/*@media only screen and (min-width: 40.063em) and (max-width: 64em) {*/
@media only screen and (max-width: 64em) {
	/* medium */
	table .type {
		display: none;
	}
	h2 {
		font-size: 1.2em;
	}
	#controls button {
		font-size: 0.9em;
	}
	.ui-widget {
		font-size: 1em;
	}
	.ui-widget .ui-widget {
		font-size: 0.9em;
	}
}

/* jQuery UI customizations */
input.ui-button {
	padding: 0.1em 0.5em;
}

.ui-button-text-only .ui-button-text {
	padding: 0.1em 0.5em;
}

#entity-add.ui-dialog-content {
	padding: 0.3em 0 0;
}

.ui-tabs .ui-tabs-nav li a {
  padding: 0.1em 0.5em !important;
}

.ui-error .ui-widget-header { /* red header */
	background-image: url("../img/ui-bg_gloss-wave_35_red_500x100.png");
}


/* jQuery TreeTable Core 2.0 stylesheet
 *
 * This file contains styles that are used to display the tree table. Each tree
 * table is assigned the +treeTable+ class.
 * ========================================================================= */

/* jquery.treeTable.collapsible
 * ------------------------------------------------------------------------- */
.treeTable tr td .expander {
  background-position: left center;
  background-repeat: no-repeat;
  cursor: pointer;
  padding: 0;
  zoom: 1; /* IE7 Hack */
}

.treeTable tr.collapsed td .expander {
  background-image: url(../img/toggle-expand-dark.png);
}

.treeTable tr.expanded td .expander {
  background-image: url(../img/toggle-collapse-dark.png);
}

/* jquery.treeTable.sortable
 * ------------------------------------------------------------------------- */
.treeTable tr.selected, .treeTable tr.accept {
  background-color: #3875d7;
  color: #fff;
}

.treeTable tr.collapsed.selected td .expander, .treeTable tr.collapsed.accept td .expander {
  background-image: url(../img/toggle-expand-light.png);
}

.treeTable tr.expanded.selected td .expander, .treeTable tr.expanded.accept td .expander {
  background-image: url(../img/toggle-collapse-light.png);
}

.treeTable .ui-draggable-dragging {
  color: #000;
  z-index: 1;
}

/* Make clicks pass-through */
#nprogress {
  pointer-events: none;
}

#nprogress .bar {
  background: #29d;

  position: fixed;
  z-index: 1031;
  top: 0;
  left: 0;

  width: 100%;
  height: 2px;
}

/* Fancy blur effect */
#nprogress .peg {
  display: block;
  position: absolute;
  right: 0px;
  width: 100px;
  height: 100%;
  box-shadow: 0 0 10px #29d, 0 0 5px #29d;
  opacity: 1.0;

  -webkit-transform: rotate(3deg) translate(0px, -4px);
      -ms-transform: rotate(3deg) translate(0px, -4px);
          transform: rotate(3deg) translate(0px, -4px);
}

/* Remove these to get rid of the spinner */
#nprogress .spinner {
  display: block;
  position: fixed;
  z-index: 1031;
  top: 15px;
  right: 15px;
}

#nprogress .spinner-icon {
  width: 18px;
  height: 18px;
  box-sizing: border-box;

  border: solid 2px transparent;
  border-top-color: #29d;
  border-left-color: #29d;
  border-radius: 50%;

  -webkit-animation: nprogress-spinner 400ms linear infinite;
          animation: nprogress-spinner 400ms linear infinite;
}

.nprogress-custom-parent {
  overflow: hidden;
  position: relative;
}

.nprogress-custom-parent #nprogress .spinner,
.nprogress-custom-parent #nprogress .bar {
  position: absolute;
}

@-webkit-keyframes nprogress-spinner {
  0%   { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}
@keyframes nprogress-spinner {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
