/* --------------------------------------------------------------

    framework.css

    This stylesheet should form the basis of the application framework
    and should work without any other stylesheets included

    	+top

--------------------------------------------------------------
  +Resets default browser CSS styles
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
}

html {
	font-size: 62.5%;
}

	/* --------------------------------------------------------------
		+Default Styles
	-------------------------------------------------------------- */

	body {
		position: relative;
		-webkit-font-smoothing: antialiased;
		}

	/* --------------------------------------------------------------
		+Layout
	-------------------------------------------------------------- */

	#top 	{ width: 100%; margin: 0 auto; padding: 0; position: relative; }
	.shell 	{ margin: 0 30px; position: relative; min-width: 960px; }
	#page 	{ text-align: left; }
	#content { min-height: 400px; position: relative; padding-top: 15px; }

	.col { margin-right: 4.4%; float: left; min-height: 1px; position: relative; }
	.col:last-child,
	.col.last { margin-right: 0px; }

	/* This should be the standard container ---------------------- */
	.module { padding: 14px; margin-bottom: 14px; }

	a { text-decoration: none; }
	a:hover { text-decoration: underline }

	.spacing { padding: 10px; }
	.dim { opacity: 0.6 }

	/* --------------------------------------------------------------
		+Typography + Headings
	-------------------------------------------------------------- */

	table * { font-size: 100% }

	p, dl, ul, ol, table { margin-bottom: 20px; padding: 0; }

		/* Lists ----------------------------------------------------- */
		dl.last { margin-bottom: 0; }

		dt { margin-bottom: 7px; }
		dd { margin-bottom: 10px; }

		.condensed dd { margin-bottom: 5px; }

		ul li, ol li { margin: 0 0 4px 10px; }

		ul.inline-list { float: left; }
		ul.inline-list li { float: left; display: inline; }

		/* Headings -------------------------------------------------- */

		h1, h2, h3, h4, h5 {
			margin: 0;
			padding: 0;
			clear: none;
			line-height: 1.5em;
			text-align: left;
			font-weight: bold;
			}

		h1 span, h2 span, h3 span { display: none; }

	/* --------------------------------------------------------------
		+Tables
	-------------------------------------------------------------- */

	table { border-collapse: collapse; }
	table th { font-weight: bold; padding: 4px 0; vertical-align: bottom; }
	table td { padding: 4px 0; }

	table.list { width: 100%; margin-bottom: 10px; border-top: none; clear: both; }
		.simple-tab-panel table.list { clear: none; }
	table.list thead { border-bottom: 0; }

	table td .button { margin: 0; }

	table.list tr td { padding: 3px 6px; vertical-align: middle; }
	table.list tr th { text-align: left; padding: 6px; }

    table.list tr td.emphasis { font-size: 1.1em; }

    table.list tr th.decimal, table.list tr td.decimal { text-align: right; }
	table.list tr th.sortable { cursor: hand; cursor: pointer; padding-right: 16px; }
	table.list tr th.sorted.ascending {
		background-image: url( /framework/images/icons/sort-asc.png );
		background-repeat: no-repeat;
		background-position: right;
	}

	table.list tr th.sorted.descending {
		background-image: url( /framework/images/icons/sort-desc.png );
		background-repeat: no-repeat;
		background-position: right;
	}

	tfoot td { font-weight: bold; }
	tbody.clickable td.clickable { cursor: hand; cursor: pointer; }

    table.items tbody tr td {
        border-bottom:  1px solid #CCC;
        vertical-align: middle;
    }

	/* --------------------------------------------------------------
		+Forms
	-------------------------------------------------------------- */

	.standard-form { margin-bottom: 1.5em; }
	.standard-form dl dt { margin: 0 0 5px 0; padding: 0; }
	.standard-form dl dd { margin: 0 0 5px 0; padding: 0; min-height: 19px; }

	.standard-form input[type=text] { padding: 3px; }

	input, select, textarea { margin: 0; font-size: 13px; }

	.standard-label { font-weight: bold; display: block; margin-bottom: 5px; }

	.radio-group { margin-bottom: 15px; }

	fieldset { padding: 15px; margin-bottom: 15px; position: relative; }
	fieldset.with-help { position: relative; }
	fieldset h3 { margin: -16px -16px 20px -16px; padding: 10px 15px 10px 15px;  }
	fieldset dl h3 { margin: 0; padding: 5px 0 10px 0; }

	fieldset .help { width: 20%; min-height: 90px; padding: 15px; float: right; }
	fieldset.with-help .dl-container { width: 72%; }
    fieldset.with-help .dl-container dl dt { width: 35%; margin-right: 3%;  }
    fieldset.with-help .dl-container dl dd { width: 62%; }

	fieldset dl.floated dt { clear: left; }

	.col-right fieldset { background: none; border: 0; box-shadow: none; border-radius: 0; }
	.col-middle .button-bar { border-left: 0; border-right: 0; border-bottom: 0; border-radius:0; box-shadow: none; }
	.col-right .button-bar { border-left: 0; border-right: 0; border-bottom: 0; border-radius:0; box-shadow: none; }

	dl.floated dt { float: left; width: 33%; clear: both; text-align: right; margin-top: 4px; margin-right: 2%; }
	dl.floated dd { min-height: 19px; float: left; vertical-align: middle; line-height: 24px; margin-bottom: 5px; }
	dl.floated dd.decimal { min-height: 19px; padding-left: 170px; text-align: right; padding-right: 50px; }
	dl.floated dd input,
	dl.floated dd textarea,
	dl.floated dd select { max-width: 90% !important; }

	dl.floated.info dt, .summary-fieldset dl dt { text-align: left; margin-top: 0 !important; padding-top: 8px !important; line-height: 18px; }
	dl.floated.info dd, .summary-fieldset dl dd { padding-top: 8px !important; line-height: 18px; }

	.button-bar {
		padding: 10px;
		text-align: center;
	}

	.record-search { padding: 10px; margin-bottom: 10px; }
	.record-search.searching .textbox { padding: 6px; }
	.record-search .record-search-results { margin-top: -6px; margin-left: 2px; }

	input.hasDatepicker {
		background-image: url(/framework/images/icons/calendar_select_month.png);
		background-repeat: no-repeat;
		background-position: 98% center;
		border: 1px solid #aaa;
		padding:  2px;
	}


		/* --------------------------------------------------------------
			+Validation
		-------------------------------------------------------------- */

		em.error-placeholder { padding: 3px; font-size: 20px; }
		em.error-placeholder.failed { display: inline-block; font-size: 11px; font-style: normal; padding:  3px 8px;}
		em.error-placeholder.success { display: inline-block; font-size: 11px; font-style: normal; padding:  3px 8px;}

	/* --------------------------------------------------------------
		+Spinners/Loaders
	-------------------------------------------------------------- */
	.ajax-progress {
		background: url( /framework/images/ajax-in-progress.gif ) no-repeat #ccc;
		display: none;
		position: fixed;
		top: 0px;
		padding-left: 224px;
		padding-right: 4px;
		height: 22px;
		z-index:1000;
		margin-left: -180px;
		left: 50%;
	}

	.ajax-progress p { margin: 0; }
	.ajax-in-progress .ajax-progress { display: block; }

/* --------------------------------------------------------------
	+Header
-------------------------------------------------------------- */

#header h1 { margin: 0; padding: 0; }

#title-area { float: left; width: 50%; padding:  10px 0; }
#title-area img.logo { float: left; margin-right: 10px; }

#title-status-area { padding-top: 10px; width: 50%; float: right; text-align: right; }
#title-status-area p { margin: 0; }

h2.page-title {
	padding: 0 20px 20px 20px;
	background: url(/framework/images/top-shadow.png) repeat-x center 47px;
	margin: 0 -20px;
}

/* --------------------------------------------------------------
	+Login
-------------------------------------------------------------- */

body.login #header, body.login #secondary-nav { display: none; }
body.login .shell { width: 400px; margin: 0 auto; min-width: 400px; }
body.login #footer { background-color: transparent; }

body.login h1 { text-align: center; margin: 40px 0 20px 0; }
body.login .button-bar { border: none; }

/* --------------------------------------------------------------
	+Navigation
-------------------------------------------------------------- */

ul.main-menu { margin: 0; display: block; list-style: none; }
ul.main-menu li.home { display:none; }
ul.main-menu li {
	display: inline-block;
	width: auto;
	margin: 0 5px 0 0;
	padding: 6px 12px 6px 12px;
	cursor: hand;
	cursor: pointer;
	border: none;
	border-bottom: 0;
	height: 19px;
}
ul.main-menu li a { font-weight: bold; text-decoration: none; }
ul.main-menu li.selected { height: 20px; text-shadow: none; }

#secondary-nav { margin-top: -2px; }
#secondary-nav .shell { padding: 6px 0; border: 1px solid transparent;}
#secondary-nav ul { margin: 0; }
#secondary-nav ul li {
	list-style: none;
	float: left;
	margin: 0;
	margin-right: 10px;
	border:  1px solid transparent;
}

#secondary-nav ul li a {
	text-decoration: none;
	font-weight: bold;
	display: block;
	padding: 6px 12px;
}

/* --------------------------------------------------------------
	+Search Panel
-------------------------------------------------------------- */

.search-panel { position: relative; padding: 0px 20px 20px 20px; margin: 0 -20px 10px -20px; }

.search-panel-title { float: left; margin-top: 2px; }
.search-panel-title h3 { margin: 0 0 0 0; font-size: 14px; background:  url(/framework/images/icons/magnifier.png) no-repeat left center; padding-left: 25px; }

.search-panel-inputs { float: left; }

.search-panel .button-wrapper input { margin: 0; }

table.search-grid { margin-bottom: 0; }
.search-grid th, .search-grid td  { text-align: left; padding: 0 20px 5px 0; vertical-align: middle; }
.search-grid th { padding-right: 10px; }
.search-grid th label { font-weight: normal; }

.search-grid input[type=text] { width: 98%;  }
.search-grid select { width: 100%; }

.standard-form.simple-tab-panel { margin-bottom: 0; }

/* --------------------------------------------------------------
	+Tabs
-------------------------------------------------------------- */

	.tab-content { margin: 0; padding: 10px; border: 1px solid #CCC; border-top: 0; }

	/* --------------------------------------------------------------
		+vertical tabs
	-------------------------------------------------------------- */
	.vertical-tab-groups { margin-bottom: 10px; position: relative; min-height: 400px; }

	.vertical-tab-groups .col-left { float: left; width: 20%; border-right: 0; min-height: 550px; }
	.vertical-tab-groups .col-middle { min-height: 550px; height: 100%; margin-left: 20%; padding:  15px 0; }
	.vertical-tab-groups.with-right .col-middle { width: 60%; }
	.vertical-tab-groups .col-middle .simple-tab-panel { padding: 0 20px; }
	.vertical-tab-groups .col-right { width: 20%; float: right; right: 0; }

	.vertical-tab-groups .col-left ul { height: 100%; list-style: none; }
	.vertical-tab-groups .col-left ul li { margin: 0; padding: 15px; cursor: hand; cursor: pointer; text-align: right; }
	.vertical-tab-groups .col-l
	eft ul li.selected { margin-right: -1px; }
	.vertical-tab-groups .col-left ul li a:hover { text-decoration: none; }
	.vertical-tab-groups.with-right .col-middle { margin-right: 20%; }

	.vertical-tab-groups .col-right fieldset { margin: 15px; padding:  0;  }
	.vertical-tab-groups .col-right dl.floated dt {
		font-weight: bold;
		padding-top: 0;
		width: 40%;
		text-align: left;
	}
	.vertical-tab-groups .col-right dl.floated dt label { padding-right: 10px; }

	.vertical-tab-groups .col-right dl.floated dd { width: 58%; }
	.vertical-tab-groups .col-right dl.floated dd:last-child { border-bottom: 0; }
	.vertical-tab-groups .col-right dl.floated dt:nth-last-child(2) { border-bottom: 0; }

	.vertical-tab-groups.with-right .col-middle
	{
		border-right: 1px solid #CCC;
	}


	/* --------------------------------------------------------------
		+Filter Tabs
	-------------------------------------------------------------- */

	.PgApplicationList { margin-top: 1px; }

	#filter-tabs {
		padding:10px 10px 0 10px;
		list-style:none;
		margin: 0;
		height: 32px;
		border-bottom: 0 !important;
	}

	#filter-tabs li {
		display: block;
		float:left;
		height:2em;
		padding: 6px 4px 2px 4px;
		margin: 0;
		margin-right:5px;
		margin-top: -1px;
		cursor: hand;
		cursor: pointer;
	}

	#filter-tabs li.selected {  margin-top: 0; border-bottom:0; cursor: default; }
	#filter-tabs li span { display: inline; padding:2px 10px; font-weight:bold; }
	#filter-tabs li a { display:block; padding:2px 10px; }
	#filter-tabs .manage { width: 24px; float: right; background: url( /framework/images/icons/gear.png ) no-repeat 8px 8px; }
	#filter-tabs .export { width: 24px; float: right; background: url( /framework/images/icons/document_excel_csv.png ) no-repeat 8px 8px; }
	#filter-tabs li .save-search { width: 24px; height: 24px; background: url( /framework/images/icons/disk_plus.png ) no-repeat 0 3px; }

/* --------------------------------------------------------------
	+Right Column
-------------------------------------------------------------- */

.col-right p { padding-left: 8px; }
.col-middle .button-bar { padding: 5px; margin-left: -20px; margin-right: -20px; margin-top: 20px; }
.col-right .button-bar { padding: 15px 0 0 0; margin: 0; text-align: center; }
.col-right .button-bar .button { width: 160px; }
.col-right h3 { padding: 15px 15px 10px 15px; font-size: 14px; margin: 0;  }

/* --------------------------------------------------------------
	+Buttons
-------------------------------------------------------------- */

.button, .button-wrapper input, .simple-tab-panel .title-buttons a {
	padding: 9px;
	cursor: pointer;
	display: inline-block;
	margin: 3px 3px 5px 3px;
	text-align: center;
}
.button.small, .button-wrapper.small input { height: 25px; padding: 2px 15px; }
.simple-tab-panel .title-buttons a { padding: 5px 15px; }

td .button { float: right; }

.button-bar .button.warning { float: right; }

a.button { height: auto; }
a.button.small { height: auto; }
a.button:hover { text-decoration: none; }

.title-buttons { margin-top: -52px; float: right; }
.title-buttons a { height: inherit; margin:  0; }
.simple-tab-panel .title-buttons { margin-top: -45px;  }

.button-size { padding: 5px; font-size: 1.2em; display: inline-block; }

.metal-button {
    display: inline-block;
    padding: 4px;
    background:  #F1F1F1;
    border-width:  1px;
    border-style:  solid;
    border-color: #CCCCCC #BBBBBB #AAAAAA;
    border-radius: 2px;
    color: #000;
    cursor: pointer;
}

a.metal-button:link, a.metal-button:visited {
    color: #000;
}

a.metal-button {
    color: #000;
    text-decoration: none;
}

a.metal-button:hover {
    color: #000;
    background: #FAFAFA;
}

/* --------------------------------------------------------------
	+Messages/Alerts
-------------------------------------------------------------- */
.message { padding: 4px; }
.message p { text-align: left; margin-bottom: 0; }

#system-message-area { display: none; position: absolute; margin-top: -22px; width: 100%; }
#system-message-area.displayed { display:block; }
#system-message-area .message { padding-left: 10px; margin-left: 180px; border-bottom: 0; border-radius: 4px 4px 0 0; background: -moz-linear-gradient(center top , #FFFBBB 0%, #E0DCA4 80%, #B3B083 100% ) repeat scroll 0 0 #FFFBBB;}

#notification-area { padding: 3px; display: none; }
#notification-area.displayed { display: block; }

.message.error { background: url( /framework/images/icons/cross_circle_frame.png ) no-repeat 0px 4px; padding-left: 27px; }
.message.info { background: url( /framework/images/icons/information_frame.png ) no-repeat 0px 4px; padding-left: 27px; }
.message.warning { background: url( /framework/images/icons/exclamation.png ) no-repeat 0px 4px; padding-left: 27px; }

.message.security {
    background: url(/framework/images/icons/lock.png) no-repeat 0px 4px;
    padding-left: 27px;
}

/* Incoming Call */
.incoming-call { position: fixed; top: 0; width: 100%; left: 1%; width: 98%; z-index: 999; }
.incoming-call label { padding: 10px 15px 10px 40px; display: block; }
.incoming-call label em { margin-left: 20px; }

/* --------------------------------------------------------------
	+Summary
-------------------------------------------------------------- */
.summary { background: #EEE; padding: 1px; margin-bottom: 10px; }
.summary dl.floated { margin-top: 10px; margin-bottom: 10px; }
.summary dl.floated dt { font-weight: bold; }
.summary dl.floated dt, .summary dl.floated dd { margin-bottom: 0.2em; }

/* --------------------------------------------------------------
	+Pager
-------------------------------------------------------------- */

.pager { padding: 10px; }

.pager p { margin-bottom: 0; }
.pager span, .pager a {
	display: inline-block;
	padding: 3px 8px;
	margin: 0 5px 0 -1px;
	border: 1px solid transparent;
	text-decoration: none;
}

.pager span { font-weight: bold; }

/* --------------------------------------------------------------
	+Panel Manager
-------------------------------------------------------------- */

.panel-content { margin: 0 0 10px 0; padding: 10px; border: 2px solid transparent; }
.panel-column { float: left; position: relative; }
.panel { border: 2px solid transparent; }
.panel.full { width: 100%; }
.panel .delete {
	width: 24px;
	height: 24px;
	background: url( /framework/images/icons/delete2.png ) no-repeat;
	display: none;
	position: absolute;
	margin-right: -8px;
	margin-top: -8px;
	right: 0;
	cursor: hand;
	cursor: pointer;
}

.panel.add {
	display: none;
	height: 150px;
	cursor: hand;
	cursor: pointer;
	margin: 0 auto;
}

.panel.add .panel-content { height: 100%; }
.panel.add .panel-content p { text-align:center; padding: 60px 0 0 0; margin: 0; }

.panel-manager-editing .panel.add { display: block }
.panel-manager-editing .add .panel-content { border: 2px solid transparent; }
.panel-manager-editing .panel.add:hover { border: 2px solid transparent; background: none; }
.panel-manager-editing .panel:hover .delete { display: block; }

/* --------------------------------------------------------------
	+Reports
-------------------------------------------------------------- */

.report-navigation .navigation-container { padding-right: 10px; border-right: 1px solid #DDD; }
.report-navigation ul { list-style:none; }

.report-navigation h3.category {
    margin-top: 10px;
    font-size: 10pt;
    background: #DDD;
    cursor: hand;
    cursor: pointer;
    padding:  3px 6px;
    border: 1px solid #DDD;
    border-radius: 4px 0 0 4px;
    color: #666;
    margin-bottom: 0;
}

.report-navigation h3.category.first { margin-top: 0; }

.report-navigation ul li.report {
	padding: 3px 6px;
	background: #EEE;
    margin:0;
    margin-left: 30px;
	border: 1px solid #DDD;
    border-bottom-width: 0;
	cursor: hand;
	cursor: pointer;
	color: #666;
}

.report-navigation ul li.report.first { border-top: 0; }
.report-navigation ul li.report.last { border-bottom: 1px solid #DDD; border-radius: 0 0 4px 4px; }
.report-navigation ul li.report:hover, .report-navigation ul li.report.selected { background: #FFF; }

.report-criteria { display: none; }

/* --------------------------------------------------------------
	+Dialogs
-------------------------------------------------------------- */

.ui-dialog { padding: 0; border: 0; }
.ui-dialog .ui-dialog-titlebar { border: 0; padding: 10px 15px; }
.ui-dialog .ui-dialog-titlebar-close { right: 15px; background:  none; border:  none; padding: 0; }
.ui-dialog .ui-dialog-titlebar-close .ui-icon-closethick { background:  url(/framework/images/icons/dialog-close.png) no-repeat 0 0; margin: 0; width: 19px; height: 18px; }
.ui-dialog .ui-dialog-titlebar-close .ui-icon-closethick:hover { background-position:  0 -18px; border:  none; margin: 0; }

.ui-dialog fieldset { border: 0; border-radius: 0; box-shadow: none; background: none; }
.ui-dialog-content { position: relative; }
.ui-dialog-content .button-bar-container { position: absolute; bottom: 0; left: 0; width: 100%; }
.ui-dialog-content .button-bar { margin-top: 3px; box-shadow: none; border: 0; border-radius: 0; }

/* --------------------------------------------------------------
	+Progress Bar
-------------------------------------------------------------- */

.progress-bar { position: relative; margin-right: 30px; background: #666; border-radius: 3px; height: 8px; }
.progress { top: 0; position: absolute; background: #CCC; border-radius: 3px; height: 8px; z-index: 99; }
.progress-text { position: absolute; right: -30px; font-size: 11px; line-height: 11px; }


/* --------------------------------------------------------------
	+Repeated Items
-------------------------------------------------------------- */

.repeated-item { border: 1px solid #BBB; margin-bottom: 5px; }
.repeated-item .header { padding: 4px; background: #EEE; }
.repeated-item .header p, .repeated-item .content p { margin-bottom: 0; }
.repeated-item .content { padding: 4px; background: #FFF; }
.repeated-item .content p.subject { font-weight: bold; font-size: 10pt; font-style: italic; margin-bottom: 5px; }

/* --------------------------------------------------------------
	+Charts
-------------------------------------------------------------- */

.chart-types {
    position: absolute;
    right: 20px;
    bottom: 20px;
    text-align: right;
    margin:  0;
    padding:  3px 10px;

}

.chart-types a:hover { text-decoration: none; }
.highcharts-container { border:  1px solid #CCC; }

/* --------------------------------------------------------------
	+Footer
-------------------------------------------------------------- */

#footer { padding: 15px; margin: auto 0 0 0; height: 100px; }

/* --------------------------------------------------------------

		+Overwrite Styles

    Add these class names to clear any margins, paddings or floats
    Keep these declarations at the BOTTOM of this stylesheet

-------------------------------------------------------------- */

.float-right { float: right; }
.float-left { float: left; }
.clear-floats { clear: both; font-size: 1px; height: 1px; line-height: 0px; }

.bold 	 	{ font-weight: bold; margin: 0; }
.quiet 	 	{ font-weight: lighter; text-transform: none; letter-spacing: 0;}
.last 		{ margin-right: 0; }
.col.half, .half 		{ width: 48.5% !important; margin-right: 15px; }
.left 		{ float: left; }
.right 		{ float: right; }
.italic 	{ font-style: italic; letter-spacing: 0.04em; }

.no-marg 			{ margin: 0; }
.no-pad 			{ padding: 0; }
.marg-right 	{ margin-right: 14px; }
.marg-left 		{ margin-left: 14px; }
.marg-bottom 	{ margin-bottom: 15px; }
.marg-top 		{ margin-top: 14px; }
.marg-all 		{ margin: 14px; }

.pad-bottom 	{ padding-bottom: 14px; }

.indent         { margin-left: 30px; }

input[type=number].no-spinner::-webkit-inner-spin-button,
input[type=number].no-spinner::-webkit-outer-spin-button
{   -webkit-appearance: none;
    margin: 0;
}
