body { 
	background-color: #FFF; 
	font: 15px/20px Roboto, sans-serif;
	font-weight: 400;
	color: #333;
	padding: 0;
	margin: 0;
}

#auth {
    position: fixed;
    width: 340px;
    height: 206px;
    top: 40%;
    left: 50%;
    margin-top: -103px;
    margin-left: -170px;
    background: #f5f5f5;
    border-radius: 2px;
    border: 1px solid #ccc;
}

#auth input {
	font-size: 16px;
	padding: 10px;
	color: #333;
	width: 296px;
	margin: 10px;
}

#auth input[type=submit] {
	border: 1px solid #ccc;
	font-size: 16px;
	color: #333;
	text-transform: uppercase;
	width: 320px;
	margin: 10px;
	padding-top: 10px;
}

#auth-error {
    position: fixed;
    width: 340px;
    height: 50px;
    top: 50%;
    left: 50%;
    margin-top: 135px;
    margin-left: -170px;
}

#nav {
	background: #222;
	font: 14px/14px Roboto, sans-serif;
	text-transform: uppercase;
	text-align: center;
}

#nav li {
	display:inline-block;
	padding: 15px 20px 13px 20px;
	margin: 0;
}

#nav a {
	text-decoration: none;
	color: #eee;
}

#nav a.logout:hover {
	border-bottom: none;
}


#nav li.active {
	background: #167dd5;
	color: #eee;
}

#nav li.active:hover {
	background: #167dd5;
	color: #eee;
}

#nav li:hover {
	background: #666;
}

#subnav {
	background: #333;
	font: 14px/14px Roboto, sans-serif;
	text-align: center;
}

#subnav li {
	display:inline-block;
	padding: 10px 15px;
}

#subnav a {
	text-decoration: none;
	color: #aaa;
}

#subnav a:hover {
	color: #eee;
	border-bottom: 1px solid #eee;
}

#subnav a.active {
	color: #eee;
}

#logout {
	position: fixed;
	top: 9px;
	right: 10px;
	font-size: 24px;
}

#content {
	margin: 15px;
}

h3 {
	font: 16px/16px Roboto, sans-serif;
	padding: 15px 0 0px 0;
	margin: 10px 0;
	color: #dc0000;
	text-transform: uppercase;
	text-align: center;
}

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

i {
	color: #333;
}

a.button, a.button-red, span.button {
	display: inline-block;
	background: #167dd5;
	border-radius: 2px;
	padding: 10px;
	color: #eee;
	font: 14px/14px Roboto, sans-serif;
	text-decoration: none;
	text-align: center;
	min-width: 80px;
}

a.button:hover {
	background: #1f98ff;
}

span.button {
	background: #999999;
}

a.button-red {
	background: #CC0000;
}

a.button-red:hover {
	background: #e52b2b;
}

a {
	color: #167dd5;
}

table {
	border-spacing: 0;
}

table input {
	font-size: 15px;
	padding: 5px;
	color: #333;
	width: 100%;
	box-sizing: border-box;
}

table input.short {
	font-size: 15px;
	padding: 5px;
	color: #333;
	width: 44%;
}

table input.vm {
	font-size: 15px;
	padding: 5px;
	color: #333;
	width: 60px;
	border: none;
	border-bottom: 1px dotted #333;
	text-align: center;
}

table input[type=checkbox] {
	width: auto;
}

table select {
	font-size: 15px;
	padding: 5px;
	color: #333;
	width: 100%;
}

table select.short {
	font-size: 15px;
	padding: 5px;
	color: #333;
	width: 49%;
}

table select.small {
	font-size: 15px;
	padding: 5px;
	color: #333;
	width: 32%;
}

textarea {
	font-size: 15px;
	width: 100%;
	height: 150px;
	font: 16px/18px Roboto, sans-serif;
	font-weight: 400;
	padding: 10px;
	box-sizing: border-box;
}

textarea#note {
	height: 100px;
}

table {
	width: 96%;
}

table.ref {
	width: auto;
}

table.client {
	width: 100%;
}

table.client td {
	text-align: center;
}

table.client td.w25 {
	width: 25%;
}

table.client td.w20 {
	width: 20%;
}

table.client td.w10 {
	width: 10%;
}

td {
	border-bottom: 1px solid #ddd;
	padding: 10px 10px;
}

td.dark {
	border-bottom: 1px solid #888;
	padding: 10px 10px;
}

td.last {
	border: none;
	padding: 10px 10px;
}

td.b-r {
	border-right: 1px solid #ddd;
}

td.b-r2 {
	border-right: 1px solid #333;
}

td.caption {
	background: #eee;
	padding: 10px 10px;
	font-weight: bold;
	border-bottom: none;
}

td.title {
	width: 33%;
	padding: 10px;
}

td.submit {
	border-bottom: none;
	text-align: right;
}

table.stat, table.stat-compact {
	font: 14px/14px Roboto, sans-serif;
	text-align: center;
	border-collapse: collapse;
}

tr.caption {
	background: #eee;
}

table.stat td, table.stat-compact td  {
	padding: 10px 5px;
	border: none;
	border: 1px solid #BBB;
	height: 50px;
	box-sizing: border-box;
	line-height: 20px;
}

table.stat-compact td  {
	height: auto;
	line-height: inherit;
	padding: 7px 5px;
}

table.stat-compact td.noborder  {
	border: none;
}

table.stat-compact td.icons {
	font-size: 20px;
}

table.stat-compact td.icons a {
	padding: 0 10px;
}

table.stat td.num {
	width: 2%;
	padding: 10px 5px;
}

table.info {
	font: 14px/14px Roboto, sans-serif;
	padding: 10px 5px;
	text-align: center;
}

table.machine {
	width: 75%;
}

table.machine td.letter {
	font-size: 28px;
	font-weight: bold;
	width: 16%;
}

table.machine .divider {
	border-top: 1px solid #888;
}

select.filter, input.filter {
	font-size: 15px;
	padding: 5px;
	color: #333;
	width: 150px;
}

select.filter-user {
	font-size: 14px;
	padding: 5px;
	color: #333;
}

.noborder  {
	border: none;
}

.table-style, .table-style-left {
	display: flex; 
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	margin: 0 auto;
}

.table-style-left {
	justify-content: flex-start;
	align-items: flex-start;
}

.table-style div, .table-style-left div {
	padding: 10px;
}

.table-nav {
	display: flex; 
	justify-content: space-between; 
	align-items: center;
	background: #222222;
}

.table-nav div {
	min-width: 50px;
	font-size: 24px;
}

.base {
	align-items: baseline;
}

.scroll {
	overflow-y: scroll;
	max-height: 700px;	
}

.input {
	font-size: 15px;
	padding: 5px;
	color: #333;
	width: 300px;
}

.input-short {
	font-size: 15px;
	padding: 5px;
	color: #333;
	width: 100px;
	text-align: center;
}

.col60 {
	float: left;
	width: 60%;
}

.col50 {
	float: left;
	width: 50%;
}

.col40 {
	float: left;
	width: 40%;
}

.col33 {
	float: left;
	width: 33%;
}

.col25 {
	float: left;
	width: 25%;
}

.left {
	float: left;
}

.upper {
	text-transform: uppercase;
}

.pad {
	padding: 0 10px;
}

.pad-t1 {
	margin-top: 10px;
}

.pad-t2 {
	margin-top: 20px;
}

.pad-b1 {
	margin-bottom: 10px;
}

.pad-b2 {
	margin-bottom: 20px;
}

.pad-l2 {
	margin-left: 20px;
}

.red {
	color: #CC0000;
}

.green {
	color: #00AA00;
}

.blue {
	color: #0000CC;
}

.gray {
	background-color: #F5F5F5;
}

.cell-a {
	background-color: #90EE90;
}

.cell-a-copy {
	background-color: #F4A460;
}

.cell-a-print {
	background-color: #AAAAAA;
	font-weight: bold;
}

.cell-r {
	background-color: #D3D3D3;
}

.cell-r-small {
	background-color: #D3D3D3;
	font: 13px/13px Roboto, sans-serif;
}

.cell-e {
	cursor: pointer;
}

.cell-hatched {
	background-image: repeating-linear-gradient(
					      -45deg,
					      transparent 0px,
					      #DDDDDD 11px
					    );
}

.cell-selected {
	background-color: #FFFF00;
}

.cell-err {
	background-color: #B22222;
}

.bold {
	font-weight: bold;
}

.center {
	text-align: center;
}

.clear {
	clear: both;
}

.hidden {
	display: none;
}

.row {
	width: 95%;
	margin: 10px auto;
}

.row-invisible {
	display: none;
}

.right {
	text-align: right;
}

.logo {
	margin: auto;
	position: absolute;
  	top: 0; left: 0; bottom: 0; right: 0;
  	margin-bottom: 0px;
}

.title {
	font-weight: bold;
	padding: 10px 0;
}

.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content/Box */
.modal-content {
  background-color: #fefefe;
  margin: 15% auto; /* 15% from the top and centered */
  padding: 20px;
  border: 1px solid #888;
  text-align: center;
  width: 40%; /* Could be more or less, depending on screen size */
}

/* The Close Button */
.close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}