body
{
	background-color: #fff;
	color: #444;
	font-family: Roboto, arial, helvetica, sans-serif;
	font-size: 10pt;
	line-height: 1.35em;
	margin: 0px 8px 16px;
	padding: 0px;
}

input, select, textarea
{
	font-family: Roboto, arial, helvetica, sans-serif;
	font-size: 11pt;
}

/* For <a> tags without an href attribute */
a
{
	cursor: pointer;
	text-decoration: underline;
}

a, a:visited
{
	color: #1356e1;
}

a.inactive, a:visited.inactive
{
	color: #84a0e8;
}

a.undecorated
{
	text-decoration: none;
}

div.busy
{
	background-image: url(ajax-loader.gif);
	background-position: top left;
	background-repeat: no-repeat;
	height: 16px;
	width: 16px;
}

div.checkbox
{
	background-image: url('checkboxes.png');
	background-repeat: no-repeat;
	display: inline-block;
	height: 13px;
	margin: 3px 0 0 3px;
	width: 13px;
}

div.checkbox.selected
{
	background-position: -13px 0;
}

div.processing, div.processing-white
{
	background-image: url(ajax-processing.gif);
	background-position: top left;
	background-repeat: no-repeat;
	height: 32px;
	width: 32px;
}

div.processing-white
{
	background-image: url(ajax-processing-white.gif);
}

div.navigator
{
	font-size: 12pt;
	margin: 16px 0px 0px 16px;
}

div.navigator em
{
	font-style: normal;
	font-weight: normal;
}

div.navigator span.summary
{
	font-size: 11pt;
	white-space: nowrap;
}

div.padded
{
	padding: 8px;
}

div.separator
{
	height: 6px;
}

div.separatorX2
{
	height: 12px;
}

div.separatorX4
{
	height: 22px;
}

div.solid
{
	background-color: #3b5998;
	color: white;
	padding: 16px;
}

div.solid h1, div.solid h2, div.solid h3, div.solid h4
{
	color: #e5f781;
}

div.solid h1.shadow, div.solid h2.shadow, div.solid h3.shadow, div.solid h4.shadow
{
	text-shadow: 1px 1px black;
}

div.solid a, div.solid a:visited
{
	color: #b7d7f5;
}

div.solid span.feedbackPanelERROR
{
	background-color: #2e4574;
	padding: 2px 8px;
}

div.solid span.feedbackPanelINFO
{
	color: #e5f781;
}

div.solid fieldset
{
	border: 2px solid #7e91b6;
	border-radius: 8px;
	padding: 8px 16px;
	margin: 16px 0px;
}

div.solid div.warning
{
	background-color: #5f0709;
	background-image: url( 'warning.png' );
	background-position: 8px center;
	background-repeat: no-repeat;
	border: 1px solid #330506;
	border-radius: 8px;
	color: white;
	font-weight: bold;
	margin-bottom: 16px;
	padding: 16px;
	padding-left: 40px;
}

div.information
{
	background-color: #ffffe1;
	background-image: url( 'info.png' );
	background-position: 8px center;
	background-repeat: no-repeat;
	border: 1px solid #333;
	border-radius: 8px;
	color: #333;
	display: inline-block;
	line-height: 1.5em;
	padding: 8px 12px;
	padding-left: 40px;

	/* IE7 Hack - necessary for inline-block to work correctly */
	zoom: 1;
	*display: inline;
}

/* Because .hidden class by itself has a lower precedence than div.information */
div.information.hidden
{
	display: none;
}

div.information a, div.information a:visited
{
	color: #1356e1;
}

div.information p
{
	margin: 0.75em 0 0.25em;
}

div.information ul
{
	margin-left: 20px;
}

/* For IE */
fieldset div.framepad
{
	#padding: 8px 0px 0px 8px;
}

div.solid hr
{
	border: 1px solid;
	border-top-color: #07142f;
	border-left-color: #07142f;
	border-bottom-color: #7e91b6;
	border-right-color: #7e91b6;
}

div.solid legend
{
	background-color: #7ba159;
	border: 1px solid #1b290f;
	border-radius: 4px;
	color: white;
	font-size: 11pt;
	height: 20px;
	padding: 2px 16px;
}

div.solid legend.incomplete
{
	background-color: #ff8200;
}

div.solid legend.incomplete.warning
{
	background-color: #f53d3d;
}

div.solid-frame
{
	border: 3px solid black;
}

div.tooltip
{
	background-color: #ffffe1;
	border: 1px solid #333;
	color: black;
	display: none;
	left: 8px;
	line-height: 1.5em;
	padding: 8px 12px;
	position: absolute;
	top: 2px;
	z-index: 100;
}

form
{
	display: inline;
}

h1, h2, h3, h4
{
	font-weight: normal;
	margin: 8px 0 4px 0;
	white-space: nowrap;
}

h1
{
	font-size: 18pt;
	margin-bottom: 8px;
}

h2
{
	font-size: 16pt;
	margin-bottom: 6px;
}

h3
{
	font-size: 14pt;
}

h4
{
	font-size: 12pt;
}

img
{
	border: 0;
}

img.middle
{
	vertical-align: middle;
}

img.text-align
{
	vertical-align: text-bottom;
}

input[type="text"], input[type="password"], input[type="email"], select, textarea
{
	border: 1px solid #333;
}

input.static-text-field:not(:focus):not(:placeholder-shown)
{
	border: 2px solid transparent;
	background-color: transparent;
	color: #444;
}

input[type="submit"], input[type="button"], input[type="reset"], a.button-green, a.button-blue, a.button-red, a.button-grey, button, label.wicket-mfu-label
{
	background-repeat: repeat-x;
	border: 1px solid black;
	border-left-width: 0;
	border-right-width: 0;
	border-radius: 4px;
	color: white !important;
	cursor: pointer;
	height: 32px;
	font-size: 11pt;
	margin: 0px;
	outline: 2px solid black;
	padding: 4px 12px 6px 14px;
	text-decoration: none; 
}

a.button-green, a.button-blue, a.button-red, a.button-grey, label.wicket-mfu-label
{
	box-sizing: border-box;
	display: inline-block;
}

/* Removes internal padding added by Firefox */
input::-moz-focus-inner, button::-moz-focus-inner
{
	padding: 0;
	border: 0
}

span.warning
{
	background-color: #5f0709;
	border-radius: 4px;
	color: white;
	padding: 0 0.5em;
}

input.button-blue, a.button-blue
{
	border-top-color: #7e91b6 !important;
	border-bottom-color: #0c2253 !important;
	background-color: #5c74a3;
	outline-color: #07142f;
}

input.button-green, a.button-green, label.wicket-mfu-label, button.button-green
{
	border-top-color: #a5bd8c !important;
	border-bottom-color: #314b1a !important;
	background-color: #7ba159;
	outline-color: #1b290f;
}

input.button-red, a.button-red
{
	border-top-color: #f55f63 !important;
	border-bottom-color: #5f0709 !important;
	background-color: #ea1015;
	outline-color: #330506;
}

input.button-grey, a.button-grey
{
	border-top-color: #aaa !important;
	border-bottom-color: #555 !important;
	background-color: #999;
	outline-color: #333;
}

input.button-drop-down
{
	padding-left: 4px;
	padding-right: 4px;
	margin-left: -3px;
}

input.button-delete, input.button-delete-disabled
{
	background-color: white;
	background-image: url(button-delete.png);
	background-repeat: no-repeat;
	border-width: 0px;
	height: 21px;
	outline: 0;
	padding: 0px;
	width: 21px;
}

input.button-delete-disabled
{
	background-image: url(button-delete-disabled.png);
	cursor: default;
}

a.button-small,
input.button-small
{
	font-size: 11px;
	height: 24px;
	padding: 2px 8px;
}

input[type="text"].formula
{
	font-family: monotype;
}

p
{
	margin: 0px;
	padding: 0px;
}

pre
{
	margin: 0px;
}

pre.variable-pitch
{
	font-family: Roboto, arial, helvetica, sans-serif;
	font-size: 13px;
}

span.separator
{
	padding: 0 0.5em;
}

span.separatorX2
{
	padding: 0 0.8em;
}

span.separatorX4
{
	padding: 0 1.2em;
}

table
{
	border-collapse: collapse;
	padding: 0px;
}

table.data
{
	background-color: white;
	border: 2px solid #333;
	color: black;
}

table.data tr.even-row
{
	background-color: #eef;
}

table.data tr.odd-row
{
	background-color: #dde;
}

table.data thead th,
table.data thead td
{
	background-color: #07142f;
	color: white;
}

table.data hr
{
	margin: 6px 16px;
	border: 0px solid #bbb;
	border-top-width: 1px;
}

table.grid a, table.grid a:visited,
table.data a, table.data a:visited,
div.solid .unsolid a, div.solid .unsolid a:visited
{
	color: #1356e1;
}

table.grid a.inactive, table.grid a:visited.inactive,
table.grid tr.inactive a, table.grid tr.inactive a:visited,
div.solid .unsolid a.inactive, div.solid .unsolid a:visited.inactive
{
	color: #84a0e8;
}

table.grid thead
{
	background-color: #e0e0e0;
	color: black;
}

table.grid tbody, div.grid
{
	background-color: white;
	color: black;
}

table.grid td, table.grid th, div.grid
{
	border: 1px solid #333;
}

table.grid.faint td, table.grid.faint th, div.grid.faint
{
	border: 1px solid #ddd;
}

table.grid span.feedbackPanelINFO
{
	color: black;
}

table.padded td, table.padded th
{
	padding: 8px;
}

table.padded td.unpadded
{
	padding: 0px;
}

tr.unbordered td
{
	border: 0;
}

tr.unpadded td
{
	padding: 0px;
}

thead, tr.heading
{
	font-weight: bold;
}

table.nowrap td
{
	white-space: nowrap;
}

tr.nowrap td
{
	white-space: nowrap;
}

ul
{
	margin: 0px;
	padding: 0px;
}

ul.no-bullet
{
	list-style-type: none;
}

.action
{
	cursor: pointer;
}

.box-shadow
{
	box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.50);
}

.dialog-box
{
	display: none;
}

.drop-shadow
{
	box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.50);
}

.centred
{
	text-align: center;
}

.centred-block
{
	display: flex;
	justify-content: center;
}

.centred-block.stretch
{
	display: block;
}

.drag-handle
{
	background-image: url('drag-handle.png');
	background-repeat: no-repeat;
	height: 16px;
	width: 16px;
}

div.solid .drag-handle
{
	background-image: url('drag-handle-white.png');
}

.left-aligned
{
	text-align: left;
}

.caption
{
	font-weight: bold;
}

.clear
{
	clear: both;
}

.emphasis
{
	background-color: #2e4574;
	border: 1px dotted #07142f;
	padding: 4px 8px;
}

li.feedbackPanelERROR
{
	font-size: 17px;
	list-style: none;
	margin: 4px;
}

span.feedbackPanelERROR
{
	color: red;
}

li.feedbackPanelINFO
{
	font-size: 17px;
	list-style: none;
	margin: 4px;
}

.absolute
{
	position: absolute;
}

.blue
{
	background-color: #3b5998;
}

.fill-available-height
{
	overflow: auto;
}

.hide-if-empty:empty
{
	display: none;
}

.hidden
{
	display: none;
}

.inactive
{
	color: #808080;
}

.indent
{
	margin-left: 16px;
}

.inline-block
{
	display: inline-block;

	/* IE7 Hack - necessary for inline-block to work correctly */
	zoom: 1;
	*display: inline;
}

.invisible
{
	visibility: hidden;
}

.left
{
	float: left;
}

.lowercase
{
	text-transform: lowercase;
}

.uppercase
{
	text-transform: uppercase;
}

.nowrap
{
	white-space: nowrap;
}

.prewrap
{
	white-space: pre-wrap;
}

.prominent
{
	font-size: 11pt;
}

.relative
{
	position: relative;
}

.right
{
	float: right;
}

.left-separator
{
	margin-left: 16px;
}

.right-separator
{
	margin-right: 16px;
}

.top-separator
{
	margin-top: 16px;
}

.bottom-separator
{
	margin-bottom: 16px;
}

.static-field
{
	background-color: white;
	border: 1px solid #333;
	color: black;
	cursor: text;
	font-size: 11pt;
	margin: 0;
	min-height: calc(1em + 4px);
	padding: 2px 3px;
}

tr.sticky > th
{
	position: sticky;
	top: 0;
	z-index: 1;
}

.stretch-80
{
	width: 80%;
}

.stretch
{
	width: 100%;
}

.regular
{
	font-weight: normal;
}

.search-group.search-not-match
{
	opacity: 0.6;
}

.search-group.search-match
{
	background-color: #ff8;
	border-radius: 4px;
	color: purple;
	outline: 1px solid purple;
}

.search-group.search-match.search-focus {
	outline: 2px solid red;
}

.strikethrough
{
	text-decoration: line-through;
}

.tag
{
	border: 1px solid #333;
	border-radius: 4px;
	padding: 0.33em 0.5em;
	white-space: nowrap;
}

.unsolid
{
	background-color: white;
	border: 1px solid #444;
	border-radius: 4px;
	color: #444;
}

div.solid .unsolid h1, div.solid .unsolid h2, div.solid .unsolid h3, div.solid .unsolid h4
{
	color: #444;
}

select
{
	max-width: 25em;
}

.total
{
	font-weight: bold;
}

.wicket-mfu
{
	margin: 16px 0;
}

.wicket-mfu-container > .wicket-mfu-caption
{
	font-weight: bold;
}

.wicket-mfu-container > div
{
	margin: 8px 0 0 16px;
}

.wicket-mfu-container > div > input
{
	margin-left: 16px;
}

.attention
{
	animation-duration: 3s;
	animation-name: attention;
}

/* Fix Google Maps styles affected by global button styles declared above */
.gm-style button,
.map button
{
	border-radius: 0;
	color: black !important;
	height: auto;
	outline: 0;
}

@keyframes attention
{
	0% { outline: 2px solid red; }
	50% { outline: 2px solid red; }
	100% { outline: 2px solid transparent; }
}

@media print
{
	div.solid
	{
		background-color: white;
		background-image: none;
		color: black;
	}

	div.solid h1, div.solid h2, div.solid h3, div.solid h4
	{
		color: black;
	}

	div.solid h1.shadow, div.solid h2.shadow, div.solid h3.shadow, div.solid h4.shadow
	{
		text-shadow: 1px 1px #ccc;
	}

	div.solid legend
	{
		background-color: white;
		color: black;
	}

	div.solid fieldset
	{
		border-color: black;
	}
}