/* Base styles for Web App Framework v2 */
/* Author: Joseph Huckaby */
/* Lots of content from: http://html5boilerplate.com/ */
/* Theme colors: #3f7ed5, #5890db, #7cafda, #9ccffa */

/* Lato Font: Copyright (c) 2010-2011 by tyPoland Lukasz Dziedzic (team@latofonts.com) with Reserved Font Name "Lato". Licensed under the SIL Open Font License, Version 1.1. */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: local('Lato Regular'), local('Lato-Regular'),
       url('../fonts/lato-v11-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+ */
       url('../fonts/lato-v11-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: local('Lato Bold'), local('Lato-Bold'),
       url('../fonts/lato-v11-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+ */
       url('../fonts/lato-v11-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
@font-face {
  font-family: 'LatoBold';
  font-style: normal;
  font-weight: normal;
  src: local('Lato Bold'), local('Lato-Bold'),
       url('../fonts/lato-v11-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+ */
       url('../fonts/lato-v11-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* Light Theme by default */
body {
	--body-background-color: rgb(255, 255, 255);
	--background-color: rgb(255, 255, 255);
	--border-color: rgb(210, 210, 210);
	
	--dialog-background-color: rgb(255, 255, 255);
	--box-background-color: rgb(248, 248, 248);
	
	--header-text-color: rgb(150, 150, 150);
	--body-text-color: rgb(84, 84, 84);
		
	--label-color: rgb(120, 120, 120);
	--highlight-color: rgb(88, 144, 219);	
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, figure, footer, header, 
hgroup, menu, nav, section, menu,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}

article, aside, figure, footer, header, 
hgroup, nav, section { display:block; }

nav ul { list-style:none; }

blockquote, q { quotes:none; }

blockquote:before, blockquote:after,
q:before, q:after { content:''; content:none; }

a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; }

del { text-decoration: line-through; }

table { border-collapse:collapse; border-spacing:0; }

hr { display:block; height:1px; border:0; border-top:1px solid var(--border-color); margin:1em 0; padding:0; }

input, select { vertical-align:middle; }

body { font:12px sans-serif; line-height:1.22; }

table { font-size:inherit; font:100%; }

select, input, textarea { font:99% sans-serif; }

textarea {
	outline: 0;
}

pre, code, kbd, samp { font-family: monospace, sans-serif; }

body, select, input, textarea { color: var(--body-text-color); }

h1,h2,h3,h4,h5,h6 { font-weight: bold; text-rendering: optimizeLegibility; }
 
a:hover, a:active { outline: none; }

a, a:active, a:visited, .link { color: var(--highlight-color); }
a:hover, .link:hover { color: var(--body-text-color); }

.link { text-decoration: underline; cursor: pointer; }

ul { margin-left:30px; }
ol { margin-left:30px; list-style-type: decimal; }

small { font-size:85%; }
strong, th { font-weight: bold; }

td, td img { vertical-align: middle; } 

sub { vertical-align: sub; font-size: smaller; }
sup { vertical-align: super; font-size: smaller; }

pre { 
	padding: 15px; 
	
	white-space: pre; /* CSS2 */
	white-space: pre-wrap; /* CSS 2.1 */
	word-wrap: break-word; /* IE */
}

input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; }
.ie6 input { vertical-align: text-bottom; }

label, input[type=button], input[type=submit], button { cursor: pointer; }

label { 
	padding-left: 2px;
	font-weight: bold; 
	color: var(--label-color); 
	font-size: 13px; 
	user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
}
label:hover { text-decoration: underline; }

input[type="text"] { outline: 0; }
input[type="search"] { outline: 0; }
input[type="password"] { outline: 0; }

button {	width: auto; overflow: visible; }
 
.ie7 img { -ms-interpolation-mode: bicubic; }

.ir { display:block; text-indent:-999em; overflow:hidden; background-repeat: no-repeat; }

.hidden { display:none; visibility:hidden; } 

.visuallyhidden { position:absolute !important;		
	clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
	clip: rect(1px, 1px, 1px, 1px); }

.invisible { visibility: hidden; }

.clear { clear: both }
.left { float: left; }
.right { float: right; }

.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.clearfix { display: inline-block; }
* html .clearfix { height: 1%; } /* Hides from IE-mac \*/
.clearfix { display: block; }

@media print {
	* { background: transparent !important; color: #444 !important; text-shadow: none; }
	a, a:visited { color: #444 !important; text-decoration: underline; }
	a:after { content: " (" attr(href) ")"; } 
	abbr:after { content: " (" attr(title) ")"; }
	.ir a:after { content: ""; }	/* Don't show links for images */
	pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
	img { page-break-inside: avoid; }
	@page { margin: 0.5cm; }
	p, h2, h3 { orphans: 3; widows: 3; }
	h2, h3{ page-break-after: avoid; }
}

@media screen and (max-device-width: 480px) {
	html { -webkit-text-size-adjust:none; -ms-text-size-adjust:none; } 
}

/* Dialog */

#dialog_overlay {
	position: fixed;
	z-index:10001;
	top: 0px;
	left: 0px;
	background-color: var(--background-color);
	height:100%;
	width:100%;
}

#dialog_container {
	position: fixed;
	z-index:10002;
}

#dialog_main {
	text-align: left;
	border: none;
	padding: 0px;
	background: transparent;
	box-shadow: none;
}

div.dialog_subtitle {
	margin-bottom: 10px;
	text-align: center;
	font-size: 14px;
	font-weight: bold;
}

div.confirm_container {
	width: 450px; 
	font-size: 13px; 
	color: var(--body-text-color);
}

/* Misc */

.loading {
	background-image: url(../images/loading.gif);
	background-repeat: no-repeat;
	background-position: center center;
	
	min-width: 32px;
	min-height: 32px;
}

.invalid {
	background-color: #fbb;
}

.strong { font-weight: bold; }

body {
	font-family: "Lato", helvetica, sans-serif;
	margin: 0;
	padding: 0;
	background: var(--body-background-color);
}
input {
	font-family: "Lato", helvetica, sans-serif;
}

.container {
	position: relative;
	width: 90%;
	margin: 0 auto 0 auto;
}

/* Header */

#d_header {
	position: relative;
	margin-top: 5px;
	margin-bottom: 5px;
	height: 40px;
	
	background: transparent;
	/* background: linear-gradient(to top, #e8e8e8 0%, #f8f8f8 100%); */
	/* box-shadow: rgba(0,0,0,0.1) 0px 1px 1px; */
}

#d_header_logo {
	height: 40px;
}

#d_header_title {
	margin-left: 4px;
	height: 40px;
	line-height: 40px;
	font-size: 22px;
	color: var(--header-text-color);
	opacity: 0.9;
	cursor: default;
	/* text-shadow: #fff 1px 1px; */
	/* text-shadow: 1px 1px white, -1px -1px #444; */
	letter-spacing: -1px;
}

#d_header_user_bar {
	font-size: 12px;
	font-weight: bold;
	color: var(--header-text-color);
	/* text-shadow: #fff 1px 1px; */
	text-align: right;
	height: 40px;
	line-height: 40px;
	cursor: pointer;
	padding-left: 40px; /* room for avatar as bkgnd */
	background-repeat: no-repeat;
	background-position: 0px center;
	background-size: 32px 32px;
}
#d_header_user_bar:hover {
	color: var(--highlight-color);
}

.header_option {
	font-size: 12px;
	font-weight: bold;
	color: var(--header-text-color);
	/* text-shadow: #fff 1px 1px; */
	text-align: right;
	height: 40px;
	line-height: 40px;
	cursor: pointer;
	/* padding-left: 26px;
	background-repeat: no-repeat;
	background-position: 0px center; */
}
.header_option.logout { margin-right:2px; }

.header_option:hover {
	color: var(--highlight-color);
}

#d_header_divider, .header_divider {
	height: 32px;
	width: 0px;
	margin-left: 9px;
	margin-right: 7px;
	margin-top: 4px;
	border-left: 1px solid var(--border-color);
	border-right: 1px solid var(--background-color);
}

/* Tabs */

.tab_bar {
	position: relative;
	height: 27px;
	top: 1px; /* covers border of main box below tabs */
	z-index: 2;
	overflow: hidden;
}

.side_tab_bar {
	width: 150px;
	height: 100%;
	border-right: 1px solid var(--border-color);
}

.tab {
	float: left;
	margin-left: 10px;
	padding:0;
	height: 27px;
	background-repeat: repeat-x;
	
	border-left: 1px solid var(--border-color);
	border-top: 1px solid var(--border-color);
	border-right: 1px solid var(--border-color);
	
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	-moz-border-radius-topleft: 4px;
	-moz-border-radius-topright: 4px;
	-webkit-border-top-left-radius: 4px;
	-webkit-border-top-right-radius: 4px;
}

.tab.side {
	position: relative;
	left: 1px;
	float: right;
	clear: both;
	margin-top: 10px;
	
	border-right: none;
	border-left: 1px solid var(--border-color);
	border-top: 1px solid var(--border-color);
	border-bottom: 1px solid var(--border-color);
	
	border-bottom-left-radius: 4px;
	border-top-right-radius: 0px;
	-moz-border-radius-bottomleft: 4px;
	-moz-border-radius-topright: 0px;
	-webkit-border-bottom-left-radius: 4px;
	-webkit-border-top-right-radius: 0px;
}
.tab.side.inactive {
	left: 0px;
}
.tab.side.active, .tab.side.active:hover {
	box-shadow: none; 
}

.tab .content {
	display: inline-block;
	height: 27px;
	line-height: 27px;
	margin-left: 10px;
	margin-right: 10px;
	font-size: 13px;
	font-weight: bold;
	/* text-shadow: #fff 1px 1px; */
	position: relative;
	z-index: 2;
	
	max-width: 200px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	
	user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
}

/* .tab.icononly .content {
	margin-left:1px;
	margin-right:3px;
} */

.tab .content.icon {
	padding-left: 21px;
	background-position: 0px center;
	background-repeat: no-repeat;
}

/* .tab.icononly .content.icon {
	background-position: 5px 4px;
} */

.tab .content .badge {
	position: relative;
	top: -2px;
	margin-left: 4px;
	margin-right: 0px;
	padding-left: 4px;
	padding-right: 4px;
	background-color: #f00;
	border-radius: 50%;
	color: #fff;
	font-size: 11px;
	font-weight: bold;
	/* text-shadow: none; */
	/* text-shadow: rgba(0,0,0,0.25) 1px 1px; */
}

.tab.active {
	background: var(--background-color);
	
	/* box-shadow: rgba(0,0,0,0.1) 2px 2px 3px;  */
	
	cursor: default;
}

.tab.active .content {
	color: var(--highlight-color);
	/* text-shadow: #7D571C 0px -1px; */
}

.tab.inactive {
	background: var(--box-background-color);
	/* background: linear-gradient(to top, rgba(232, 232, 232, 1.0) 0%, rgba(255, 255, 255, 1.0) 100%); */
	
	cursor: pointer;
	
	height: 25px;
	border-bottom: 1px solid var(--border-color);
}

.tab.side.inactive {
	height: 27px;
	border-bottom: 1px solid var(--border-color);
}

.tab.inactive:hover .content {
	color: var(--highlight-color);
}

.tab.inactive .content {
	color: var(--label-color);
}

.tab_widget {
	float: right;
	padding: 0;
	height: 27px;
	line-height: 27px;
	margin-left: 15px;
	margin-right: 2px;
	font-size: 12px;
	font-weight: bold;
	color: var(--label-color);
	/* text-shadow: #fff 1px 1px; */
	position: relative;
	z-index: 2;
}

/* Main content area below tabs */

.master_content_container {
	margin-right: 0px;
	margin-left: 0px;
}

.main {
	background: var(--background-color);
	border: 1px solid var(--border-color);
	border-radius: 2px;
	padding: 10px;
	min-height: 400px;
	overflow: hidden;
	/* box-shadow: rgba(0,0,0,0.2) 2px 2px 3px;  */
}

.main > div {
	min-height: 400px;
}

/* Subtitle */

div.subtitle {
	height: 20px;
	font-size: 16px;
	font-weight: bold;
	line-height: 20px;
	color: var(--header-text-color);
	/* color: #3f7ed5; */
	/* text-shadow: 0px 1px 0px white; */
	padding-left: 0px;
	padding-right: 3px;
	margin-bottom: 10px;
	
	border-bottom: 1px solid var(--border-color);
}

div.subtitle_widget {
	float: right;
	height: 20px;
	font-size: 12px;
	line-height: 20px;
	margin-left: 10px;
	margin-right: 0px;
	padding-left: 10px;
	/* text-shadow: 0px 1px 0px white; */
	color: var(--header-text-color);
	font-weight: normal;
}

/* Fieldsets and labels */

fieldset {
	background: var(--box-background-color);
	/* background: linear-gradient(to top, #efefef 0%, #fff 100%); */
		
	border:1px solid var(--border-color); 
	border-radius: 2px;
	padding:4px 8px 8px 8px;
	
	/* box-shadow: rgba(0,0,0,0.1) 3px 3px 4px; */
}
legend { 
	padding-left: 5px;
	padding-right: 5px;
	font-size: 13px;
	cursor: default; 
	font-weight: bold; 
	color: var(--label-color);
}

.label {
	font-weight: bold;
	color: var(--highlight-color);
}

/* Data Table */

.data_table tr th {
	font-size: 13px; 
	height: 20px;
	line-height: 20px;
	cursor: default;
	font-weight: bold; 
	text-align: left;
	padding-left: 5px;
	padding-right: 10px;
	/* color:#1840F0; */
	color: var(--label-color);
	
	border-top: 1px solid var(--border-color);
	
	background: var(--box-background-color);
	/* background: linear-gradient(to top, #ddd 0%, #fff 100%); */
}
.data_table tr td {
	padding-left: 5px;
	padding-right: 10px;
	padding-top: 4px;
	padding-bottom: 4px;
	
	border-bottom: 1px solid var(--border-color);
	
	background: var(--background-color);
	/* background: linear-gradient(to top, #efefef 0%, #fff 100%); */
}
.data_table tr.highlight td {
	
}
.data_table.extra_padding tr td {
	padding-top: 10px;
	padding-bottom: 10px;
}

div.td_big {
	line-height: 24px;
	font-size: 13px;
	font-weight: bold;
}

div.ellip {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Buttons */

.button {
	width: 100px;
	height: 18px;
	padding: 4px 5px 1px 5px;
	
	background: var(--box-background-color);
	/* background: linear-gradient(to top, #e8e8e8 0%, #fff 100%); */
	
	border-left: 1px solid var(--border-color);
	border-top: 1px solid var(--border-color);
	border-right: 1px solid var(--border-color);
	border-bottom: 1px solid var(--border-color);
	cursor: pointer;
	font-size: 10pt; 
	font-weight: bold;
	/* text-shadow: rgba(255, 255, 255, 0.5) 1px 1px; */
	text-align: center;
	color: var(--body-text-color);
	
	border-radius: 5px;
	/* box-shadow: rgba(0,0,0,0.1) 1px 1px 1px, rgba(255,255,255,0.5) -1px -1px 0px; */
	
	user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
}

.button.mini {
	width: 90px;
	height: 15px;
	font-size: 9pt;
	border-radius: 4px;
}

.button.center {
	margin-left: auto;
	margin-right: auto;
}

.button:hover, .button.hover {
	color: var(--highlight-color);
}

.button.disabled:hover, .button.disabled.hover {
	color: var(--body-text-color);
}

.button:active, .button.active {
	padding: 5px 4px 0px 6px;
	text-shadow: none;
	color: var(--highlight-color);
	background: var(--background-color);
}

.button.disabled:active, .button.disabled.active {
	padding: 4px 5px 1px 5px;
	background: var(--box-background-color);
}

/* Menus */

select {
	color: var(--body-text-color);
	border: 1px solid var(--border-color);
	outline: 0;
	font-size: 14px;
}

select.small {
	font-size: 12px;
}

/* Message Box */

div.message {
	position: fixed;
	box-sizing: border-box;
	left: 0px; top: 0;
	width: 100%;
	z-index: 10003;
	cursor: pointer;
	
	overflow: hidden;
	border-style: solid;
	border-width: 1px;
}
div.message.inline {
	position: relative;
	left: 0px;
	cursor: default;
	z-index: 0;
}

div.message_inner {
	font-size: 10pt; 
	font-weight: bold; 
	cursor: pointer;
	padding: 12px 20px 12px 20px;
}
div.message.inline > div.message_inner {
	cursor: default;
}

div.message.success { color:#0a0; background-color:#cfc; }
div.message.warning { color:#990; background-color:#ffc; }
div.message.error	 { color:#c00; background-color:#fee; }

/* Footer */

#d_footer {
	margin: 7px 0px 10px 0px;
	font-size: 11px; 
	cursor: default; 
	color: var(--header-text-color);
}
#d_footer a { color: var(--label-color); }
#d_footer a:hover { color: var(--body-text-color); }

/* Misc */

.table_label {
	font-size: 14px;
	font-weight: bold; 
	color: var(--highlight-color);
	padding-right: 10px;
}

.caption { 
	font-size: 11px; 
	cursor: default; 
	color: var(--label-color); 
}
div.caption { margin: 2px; }

.table_spacer { height:1px; background:var(--border-color); margin-top:12px; margin-bottom:12px; }
.table_spacer.short { margin-top:4px; margin-bottom:4px; }
.table_spacer.transparent { background:transparent; }

.pagination { margin-top:10px; margin-bottom:0px; font-weight:bold; color:var(--label-color); }
.pagination.hide { display:none; }

.h1 { font-size:20px; font-weight:bold; color:var(--highlight-color); }

.disabled {
	opacity: 0.5;
	cursor: default;
}
label.disabled:hover { text-decoration: none; }

@keyframes invalidFade {
	0% { background-color: #fbb; }
	50% { background-color: #fbb; }
	100% { background-color: #fff; }
}
.invalid {
	animation-name: invalidFade;
	animation-duration: 4s;
	animation-fill-mode: both;
}

h1, h2, div.h1, div.h2 {
	color: var(--header-text-color);
	font-weight: bold;
	/* text-shadow: white 0px 1px; */
	padding-left: 4px;
	
	/* background: #eee;
	background: linear-gradient(to top, #eee 0%, #fff 100%); */
}

h1, div.h1 {
	font-size: 15px;
	line-height: 30px;
}

h2, div.h2 {
	font-size: 13px;
	line-height: 20px;
}

textarea {
	font-family: courier,monospace; 
	/* resize: none;	*/
	box-sizing: border-box;
	/* cursor: text; */
	outline: 0;
	border: 1px solid var(--border-color);
	tab-size: 4;
}

.inline_dialog_container {
	width: 500px; 
	margin-left: auto; 
	margin-right: auto;
}

td.table_value > div > input[type="text"], td.table_value > div > input[type="password"] { font-size:14px; }
td.table_value > div > textarea { 
	border: 1px solid var(--border-color); 
	color: var(--body-text-color); 
	font-family: monospace; 
	font-size: 12px; 
}
td.table_value > div > label { line-height:18px; font-size:13px; }

/* Color Labels */

span.color_label {
	border-radius: 5px;
	padding: 2px 5px 2px 5px;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.5);
	cursor: default;
	white-space: nowrap;
	user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
}
span.color_label.blue { background: #5890db; }
span.color_label.green { background: #44bb44; }
span.color_label.yellow { background: #bbbb44; }
span.color_label.red { background: #bb4444; }
span.color_label.purple { background: #bb44bb; }
span.color_label.gray { background: #aaaaaa; }

span.color_label.checkbox {
	cursor: pointer;
	background: var(--border-color);
	transition: all 0.5s ease;
}
span.color_label.checkbox:hover {
	background: var(--box-background-color);
	/* box-shadow: 0px 0px 1px 1px #7cafda; */
}
span.color_label.checkbox:active {
	color: var(--label-color);
}
span.color_label.checkbox.checked {
	/* background: #3f7ed5; */
	background: var(--highlight-color);
}
span.color_label.checkbox.checked:hover {
	
}
span.color_label.checkbox > i {
	width: 14px;
}
span.color_label.checkbox.plain {
	font-weight: normal !important;
}

.info_value .color_label {
	padding: 1px 5px 1px 5px;
}

/* Dialog Stuff */

.dialog_title {
	background: var(--box-background-color); 
	padding: 15px 20px 15px 20px; 
	font-size: 18px; 
	font-weight: bold; 
	border-left: 1px solid var(--border-color); 
	border-right: 1px solid var(--border-color); 
	border-top: 1px solid var(--border-color); 
	margin: 0; 
	/* color: #888;  */
	/* color: #008BD6; */
	color: var(--highlight-color);
	text-align: center;
	/* text-shadow: 0 1px 0 rgba(255, 255, 255, 1); */
	
	-webkit-border-top-left-radius: 5px;
	-webkit-border-top-right-radius: 5px;
	-moz-border-radius-topleft: 5px;
	-moz-border-radius-topright: 5px;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	
	-webkit-border-bottom-left-radius: 0px;
	-webkit-border-bottom-right-radius: 0px;
	-moz-border-radius-bottomleft: 0px;
	-moz-border-radius-bottomright: 0px;
	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
}

.dialog_content {
	background: var(--dialog-background-color);
	border-left: 1px solid var(--border-color); 
	border-right: 1px solid var(--border-color); 
	padding: 30px;
}

.dialog_content fieldset {
	background: var(--box-background-color);
}

.dialog_buttons {
	background: var(--background-color); 
	padding: 15px; 
	border-left: 1px solid var(--border-color); 
	border-right: 1px solid var(--border-color); 
	border-bottom: 1px solid var(--border-color);
	border-top: 1px solid var(--border-color);
	
	-webkit-border-top-left-radius: 0px;
	-webkit-border-top-right-radius: 0px;
	-moz-border-radius-topleft: 0px;
	-moz-border-radius-topright: 0px;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
	
	-webkit-border-bottom-left-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
	-moz-border-radius-bottomleft: 5px;
	-moz-border-radius-bottomright: 5px;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
}

.dialog_shadow {
	/* box-shadow: rgba(0,0,0,0.2) 5px 5px 8px;
	-webkit-box-shadow: rgba(0,0,0,0.2) 5px 5px 8px;
	-moz-box-shadow: rgba(0,0,0,0.2) 5px 5px 8px; */
}

.dialog_simple {
	background: var(--dialog-background-color);
	border: 1px solid var(--border-color);
	border-radius: 5px;
	padding: 30px;
}

/* Progress Bar Stuff */

@keyframes progress { to { background-position: 30px 0; } }

div.progress_bar_container {
	position: relative;
	height: 18px;
	border-radius: 10px;
	background-color: var(--border-color);
	/* box-shadow: inset 2px 2px 4px #999; */
	overflow: hidden;
}
div.progress_bar_container.indeterminate {
	background-color: var(--background-color);
	box-shadow: none;
}

div.progress_bar_inner {
	height: 18px;
	border-radius: 10px;
	
	background-color: var(--highlight-color);
	box-shadow: inset 0px 0px 6px 2px rgba(255,255,255,.3);
	
	animation: progress 1s linear infinite;
	
	background-repeat: repeat-x;
	background-size: 30px 30px;
	background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.25) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.25) 50%, rgba(255, 255, 255, 0.25) 75%, transparent 75%, transparent);
}
div.progress_bar_container.indeterminate > div.progress_bar_inner {
	opacity: 0.5;
}

/* Info Boxes */

div.info_label {
	font-size: 11px;
	font-weight: bold;
	color: var(--label-color);
	cursor: default;
	/* text-shadow: 0px 1px 0px white; */
}

div.info_value {
	margin-top: 1px;
	margin-bottom: 10px;
	font-weight: bold;
	color: var(--body-text-color);
}

/* Dark Theme */

body.dark {
	--body-background-color: rgb(29, 29, 29);
	--background-color: rgb(23, 23, 23);
	--border-color: rgb(48, 48, 48);
	
	--dialog-background-color: rgb(24, 24, 24);
	--box-background-color: rgb(36, 36, 36);
	
	--header-text-color: rgb(128, 128, 128);
	--body-text-color: rgb(170, 170, 170);
	
	--label-color: rgb(110, 110, 110);
	--highlight-color: #3f7ed5;
}

body.dark input {
	background-color: var(--box-background-color);
}
body.dark input[type='text'], body.dark input[type='password'] {
	border: 1px solid var(--border-color);
}
body.dark input::placeholder {
	color: rgba(128, 128, 128, 0.4);
}
body.dark textarea {
	background-color: var(--box-background-color);
}
body.dark select {
	background-color: var(--box-background-color);
	color: var(--body-text-color);
}

@keyframes invalidFadeDark {
	0% { background-color: #600; }
	50% { background-color: #600; }
	100% { background-color: var(--box-background-color); }
}

body.dark .invalid {
	background-color: #800;
	animation-name: invalidFadeDark;
}

body.dark div.message.success { color:#0c0; background-color:#050; }
body.dark div.message.warning { color:#cc0; background-color:#550; }
body.dark div.message.error	  { color:#f33; background-color:#400; }

body.dark span.color_label.blue { background: rgb(8, 64, 140); }
body.dark span.color_label.green { background: rgb(0, 108, 0); }
body.dark span.color_label.yellow { background: rgb(108, 108, 0); }
body.dark span.color_label.red { background: rgb(108, 0, 0); }
body.dark span.color_label.purple { background: rgb(108, 0, 108); }
body.dark span.color_label.gray { background: rgb(90, 90, 90); }

body.dark div.progress_bar_inner {
	box-shadow: inset 0px 0px 6px 2px rgba(0,0,0,.3);
	
	background-image: linear-gradient(-45deg, rgba(0, 0, 0, 0.25) 25%, transparent 25%, transparent 50%, rgba(0, 0, 0, 0.25) 50%, rgba(0, 0, 0, 0.25) 75%, transparent 75%, transparent);
}
