/* -----[ Base Style Sheet ]--------------------------------------------------------------------- */

body, div, dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre,
table, th, td,
form, fieldset, legend, label, input, textarea {
	margin: 0;
	padding: 0;
	outline: 0;
}

table {
	border: 0;
	border-collapse: collapse;
	border-style: hidden;
}

tr {
	vertical-align: top;
}

th {
	font-weight: normal;
	text-align: left;
}

input,
select,
textarea {
	font: normal 1.2em Arial, sans-serif;
}

img {
	border: 0;
}

ul li {
	list-style: none;
}

em {
	color: #333;
	padding-right: 1px;
}

strong {
	color: #333;
}

span {
	color: #888;
}

span b {
	color: #777;
	font-weight: normal;
}

sup {
	vertical-align: top;
}

sub {
	vertical-align: bottom;
}

abbr {
	text-decoration: underline;
	text-decoration-style: dotted;
}

abbr:hover {
	cursor: help;
}

var {
	font-style: normal;
}

p {
	line-height: 1.4;
}

p,
ol.list, ul.list,
.content ol, .content ul {
	margin-bottom: 1.2em;
}

.left, .left th, .left td {
	text-align: left !important;
}

.right, .right th, .right td {
	text-align: right !important;
}

.center, .center th, .center td {
	text-align: center !important;
}

:active, :focus {
	outline: 0;
}

/* -----[ Lists ]--------------------------------------------------------------------- */

ol.list li,
ul.list li {
	margin-bottom: 0.8em;
	line-height: 1.3;
}

ol.list li {
	padding-left: 0;
}

ol.listAlpha {
	list-style-type: lower-alpha;
}

ol.listRoman {
	list-style-type: lower-roman;
}

ul.listBullet {
	margin-left: 20px;
}

ul.listBullet li {
	list-style: disc;
}

ul.listGo li {
	background: url(/img/icons/arrow-000-medium.png) no-repeat 0 0;
	padding-left: 20px;
}

/* -----[ Links with Icons ]--------------------------------------------------------------------- */

.icon {
	display: inline-block;
	padding-left: 20px;
	background-position: left center;
	background-repeat: no-repeat;
}

.iconBig {
	padding-left: 40px;
	background-position: left center;
	background-repeat: no-repeat;
}

a.icon {
	border: 0 !important;
	text-decoration: none;
}

.iconOnly {
	display: inline-block;
	width: 0;
	height: 16px;
	margin-right: 0;
	padding-left: 16px;
	overflow: hidden;
}

.iconGo {
	background-image: url(/img/icons/arrow-000-medium.png);
}

.iconBack {
	background-image: url(/img/icons/arrow-180-medium.png);
}

.iconUp {
	padding-left: 16px;
	background-image: url(/img/icons/arrow-090-medium.png);
}

.iconDown {
	padding-left: 16px;
	background-image: url(/img/icons/arrow-270-medium.png);
	background-position: 0 0;
}

.iconPlusSmall {
	padding-left: 16px;
	background-image: url(/img/icons/plus-small.png);
}

.iconClose {
	background-image: url(/img/icons/cross.png);
}

.iconFeed {
	background-image: url(/img/icons/feed.png);
}

.iconAdd {
	background-image: url(/img/icons/plus-circle.png);
}

.iconDelete {
	background-image: url(/img/icons/minus-circle.png);
}

.iconDeleteSmall {
	padding-left: 14px;
	background-image: url(/img/icons/cross-small.png);
}

.iconNotify {
	background-image: url(/img/icons/exclamation-diamond.png);
}

.iconWarn,
.iconImportant {
	background-image: url(/img/icons/exclamation-red.png);
}

.iconCancel {
	background-image: url(/img/icons/slash.png);
}

.iconView {
	background-image: url(/img/icons/magnifier.png);
}

.iconEdit {
	background-image: url(/img/icons/pencil.png);
}

.iconUndo {
	background-image: url(/img/icons/arrow-circle-225-left.png);
}

.iconFind {
	background-image: url(/img/icons/magnifier.png);
}

.iconInfo {
	background-image: url(/img/icons/information-frame.png);
}

.iconHelp {
	background-image: url(/img/icons/question-frame.png);
}

.iconYes {
	background-image: url(/img/icons/tick.png);
}

.iconNo {
	background-image: url(/img/icons/cross.png);
}

.iconStop {
	background-image: url(/img/icons/cross-octagon.png);
}

.iconPopup {
	background-image: url(/img/icons/external.png);
}

.iconPhone {
	background-image: url(/img/icons/telephone.png);
}

.iconMobile {
	background-image: url(/img/icons/mobile-phone-off.png);
}

.iconEmail {
	background-image: url(/img/icons/mail.png);
}

.iconEmailSend {
	background-image: url(/img/icons/mail-send.png);
}

.iconEmailResend {
	background-image: url(/img/icons/mail--plus.png);
}

.iconEmailSent {
	background-image: url(/img/icons/mail--arrow.png);
}

.iconTxt {
	background-image: url(/img/icons/mobile-phone.png);
}

.iconWebsite {
	background-image: url(/img/icons/globe-medium-bw.png);
}

.iconDrink {
	background-image: url(/img/icons/glass.png);
}

.iconDemerit {
	background-image: url(/img/icons/counter-100.png);
}

.iconTraction {
	background-image: url(/img/icons/tire.png);
}

.iconCalendarOffice {
	background-image: url(/img/icons/calendar-yellow.png);
}

.iconCalendarCourt {
	background-image: url(/img/icons/calendar-blue.png);
}

.iconCalendarPrison {
	background-image: url(/img/icons/calendar-purple.png);
}

.iconCalendarRemove {
	background-image: url(/img/icons/calendar--minus.png);
}

.iconMoney {
	background-image: url(/img/icons/money-coin.png);
}

.iconMoneyRemove {
	background-image: url(/img/icons/money--minus.png);
}

.iconNote {
	background-image: url(/img/icons/sticky-note-pin.png);
}

.iconNoteRemove {
	background-image: url(/img/icons/sticky-note--minus.png);
}

.iconHourGlass {
	background-image: url(/img/icons/hourglass.png);
}

.iconTime {
	background-image: url(/img/icons/clock-select.png);
}

.iconTimeRemove {
	background-image: url(/img/icons/clock--minus.png);
}

.iconDocGoogle {
	background-image: url(/img/icons/document-google.png);
}

.iconOneDrive {
	background-image: url(/img/icons/tux.png);
}

.iconDocWord {
	background-image: url(/img/icons/document-word.png);
}

.iconDocHTML {
	background-image: url(/img/icons/document-text.png);
}

.iconDocFlag {
	background-image: url(/img/icons/document-flag.png);
}

.iconRunner {
	background-image: url(/img/icons/runner.png);
}

.iconEmployer {
	background-image: url(/img/icons/user-business.png);
}

.iconUserWhite {
	background-image: url(/img/icons/user-white.png);
}

.iconHome {
	background-image: url(/img/icons/home.png);
}

.iconOffice {
	background-image: url(/img/icons/script-text.png);
}

.iconDoneLetter {
	background-image: url(/img/icons/script-tick.png);
}

.iconDoneSworn {
	background-image: url(/img/icons/tick.png);
}

.iconBankTransfer {
	background-image: url(/img/icons/bank.png);
}

.iconCreditCard {
	background-image: url(/img/icons/credit-card.png);
}

.iconCheque {
	background-image: url(/img/icons/receipt-cheque.png);
}

.iconCash {
	background-image: url(/img/icons/money-coin.png);
}

.iconComment {
	background-image: url(/img/icons/balloon.png);
}

.iconUpdate {
	background-image: url(/img/icons/tick-blue.png);
}

.iconToDo {
	background-image: url(/img/icons/flag.png);
}

.iconImportantRemove {
	background-image: url(/img/icons/exclamation-white.png);
}

.iconPayment24 {
	background-image: url(/img/icons/currency-24.png);
}

.iconPaymentWeek {
	background-image: url(/img/icons/currency-week.png);
}

.iconPaymentLater {
	background-image: url(/img/icons/currency-later.png);
}

.iconArrowRight {
	background-image: url(/img/icons/arrow-state-grey-right.png);
	background-position: left 5px;
	padding-left: 10px;
}

.iconTickWhite {
	background-image: url(/img/icons/tick-white.png);
}

.iconTickGrey {
	background-image: url(/img/icons/tick-grey.png);
}

.iconToggleMinus {
	background-image: url(/img/icons/toggle-small.png);
}

.iconTogglePlus {
	background-image: url(/img/icons/toggle-small-expand.png);
}

.iconPrinter {
	background-image: url(/img/icons/printer.png);
}

.iconArrow045 {
	background-image: url(/img/icons/arrow-045.png);
}

.iconArrowTurn270Left {
	background-image: url(/img/icons/arrow-turn-270-left.png);
}

.iconFlippyBook {
	background-image: url(/img/icons/page_white_flash.png);
}

.iconFlippyBookRead {
	background-image: url(/img/icons/page_white_flash_read.png);
}

.iconOther {
	margin: 0;
	padding: 0;
}

.iconViewBig {
	background-image: url(/img/icons/big/magnifier.png);
}

.iconEditBig {
	background-image: url(/img/icons/big/pencil.png);
}

.iconEmailBig {
	background-image: url(/img/icons/big/mail.png);
}

.iconTxtBig {
	background-image: url(/img/icons/big/mobile-phone.png);
}

.iconCalendarBig {
	background-image: url(/img/icons/big/calendar.png);
}

.iconCalendarBigOffice {
	background-image: url(/img/icons/big/calendar-yellow.png);
}

.iconCalendarBigCourt {
	background-image: url(/img/icons/big/calendar-blue.png);
}

.iconCalendarBigPrison {
	background-image: url(/img/icons/big/calendar-purple.png);
}

.iconNoteBig {
	background-image: url(/img/icons/big/sticky-note-pin.png);
}

.iconMoneyBig {
	background-image: url(/img/icons/big/money-coin.png);
}

.iconTimeBig {
	background-image: url(/img/icons/big/clock.png);
}

/* -----[ Data Form ]--------------------------------------------------------------------- */

.bubbleWrap {
	background: #EEE;
	margin-bottom: 2px;
	padding: 10px 15px;
	border-radius: 6px;
	-moz-border-radius: 6px;
}

.bubbleWrap h2,
.bubbleWrap h3 {
	margin-top: 0;
}

.blockWrap {
	margin-bottom: 15px;
}

/* -----[ Data Form ]--------------------------------------------------------------------- */

.dataForm {
}

.dataForm h3 {
	padding-top: 10px;
}

.dataForm p {
	padding: 0;
}

.dataForm th,
.dataForm td {
	padding: 8px 0;
	line-height: 1.1;
}

.dataForm th {
	width: 10em;
	padding-right: 12px;
	color: #675;
	text-align: right;
}

.dataForm td.label {
	color: #675;
}

.dataForm th label,
.dataForm th var.label {
	position: relative;
	top: 5px;
}

input[type=checkbox],
input[type=radio] {
	position: relative;
	top: 1px;
}

input[type=checkbox] ~ label,
input[type=radio] ~ label {
	margin-right: 10px;
	white-space: nowrap;
}

label.blockLabel,
label.blockLabelBig {
	display: block;
	margin-bottom: 3px;
}

label.blockLabelBig {
	font-size: 1.1em;
}

.dataForm .inputRequired th {
	color: #C33;
	font-weight: bold;
}

.checkListVert label,
.radioListVert label {
	margin-bottom: 10px;
}

.checkListVert label:last-child,
.radioListVert label:last-child {
	margin-bottom: 0;
}

.checkListVert input,
.checkListVert label,
.radioListVert input,
.radioListVert label {
	float: left;
	display: block;
}

.checkListVert input,
.radioListVert input {
	clear: left;
	top: 0;
	margin-right: 3px;
}

.checkListVert:after,
.radioListVert:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

p.note,
p.validation {
	margin: 3px 0 0;
	line-height: 1.2;
	text-align: left;
}

p.note {
	color: #555;
	font-size: 11px;
}

p.validation {
	padding-left: 15px;
	background: url(/img/icons/exclamation_small.png) no-repeat left center;
	color: #C33;
	font-style: italic;
}

p.validation span {
	color: #C33 !important;
}

/* -----[ Data List ]--------------------------------------------------------------------- */

.dataList {
	width: 100%;
	margin-bottom: 15px;
}

.dataList tr {
	border-bottom: 1px solid #E9E9E9;
}

.dataList tr:hover {
	/*background-color: #FFF4BF;*/
	opacity: 1.0;
}

.dataList tr:nth-child(odd) {
	/*background-color: #FAFAFA;*/
}

.dataList th {
	padding: 4px;
	background-color: #666;
	border-bottom: 1px solid #555;
	color: #FFF;
	font-weight: normal;
}

.dataList td {
	padding: 2px 4px;
}

.dataList td.borderRight {
	border-right: 1px solid #CADCEE;
}

.dataList p {
	text-align: left;
}

.dataList .notify p {
	margin: 0;
}

.dataList .notify td {
	background-color: #FFF4BF !important;
	border-bottom: 1px solid #DDD;
	padding: 0;
}

.dataList .notify a {
	margin-left: 5px;
}

.dataListHover tr:hover {
	background-color: #E9FFBF !important;
}

/* -----[ Data Grid ]--------------------------------------------------------------------- */

.dataGrid {
	margin-bottom: 10px;
}

.dataGrid tr {
	vertical-align: middle;
}

.dataGrid th,
.dataGrid td {
	padding: 0 4px 8px;
}

.dataGrid th {
	color: #472;
	text-align: right;
}

.dataGrid tr.hidden {
	display: none;
}

/* -----[ Form Inputs ]--------------------------------------------------------------------- */

input,
select,
textarea,
.value {
	color: #222;
	font: 1.1em Arial, sans-serif;
}

.inputText {
	padding: 3px;
	background: #FFF;
	border: 1px solid #BBB;
	border-right-color: #DDD;
	border-bottom-color: #DDD;
}

.inputText:focus {
	background: #FFF4BF;
	color: #000;
}

.inputButton {
	padding: 5px 15px;
	color: #000;
	font: bold 1.1em Arial, sans-serif;
	cursor: pointer;
}

.inputButtonBig {
	padding: 5px 30px;
	font-size: 1.8em;
}

.inputButtonSmall {
	padding: 1px 10px;
	font-size: 1em;
}

.inputRequired input,
.inputRequired select,
.inputRequired textarea {
	background: #FFF4BF;
	border-color: #C66;
}

.inputDisabled {
	background: #F9F9F9 !important;
	color: #999 !important;
}

.inputTextCompact {
	width: 30px;
}

.inputTextShort {
	width: 60px;
}

.inputTextLong {
	width: 300px;
}

.inputTextFull {
	width: 450px;
}

.inputTextFullNoLabel {
	width: 620px;
}

.lh-button {
	display: inline-block;
	padding: 12px 20px;
	font-weight: bold;
	text-align: center;
	border-radius: 4px;
}

.lh-button-primary {
	background: #06c;
	color: #fff;
}

.lh-button-primary:hover {
	background: #05b;
	color: #fff !important;
	text-decoration: none;
}

.lh-button-secondary {
	color: #666;
}

/* -----[ Blockquote ]--------------------------------------------------------------------- */

blockquote {
	margin: 0 60px;
	padding: 0 30px;
	background: url(/img/layout/quote.png) no-repeat left top;
}

blockquote p.author {
	text-align: right;
}

/* -----[ Message Display ]--------------------------------------------------------------------- */

.msgNotify,
.msgSuccess,
.msgWarning {
	border: 2px solid #000;
	margin: 10px 10px 25px;
	padding: 0 15px;
}

.msgNotify {
	background: #FFF6BF;
	border-color: #D9CD82;
}

.msgSuccess {
	background: #DEF0C0;
	border-color: #ADC781;
}

.msgWarning {
	background: #FBE3E4;
	border-color: #D49FA0;
}

.msgNotify h3,
.msgSuccess h3,
.msgWarning h3 {
	background-position: left center;
	background-repeat: no-repeat;
	border: 0;
	margin: 10px 0 5px;
	padding: 0 22px;
	font-size: 1.4em;
}

.msgNotify h3 {
	background-image: url(/img/icons/exclamation-diamond.png);
	color: #960;
}

.msgSuccess h3 {
	background-image: url(/img/icons/tick-circle.png);
	color: #360;
}

.msgWarning h3 {
	background-image: url(/img/icons/cross-octagon.png);
	color: #933;
}

.msgNotify h4,
.msgSuccess h4,
.msgWarning h4 {
	margin: 15px 0 5px;
	color: #000;
	font-size: 1.2em;
}

.msgNotify p,
.msgSuccess p,
.msgWarning p {
	margin-bottom: 10px;
	color: #000;
	font-size: 1.1em;
}

p.msgNotify,
p.msgSuccess,
p.msgWarning {
	padding: 5px 15px;
	color: #000;
	font-size: 1.2em;
	font-weight: bold;
	text-align: center;
}

.msgNormal,
.msgNormal p {
	font-size: small;
}

.msgNormal p.note {
	color: #666;
	font-size: 11px;
	line-height: 1.2;
}

/* -----[ Preview Message Box ]--------------------------------------------------------------------- */

.msgPreview,
.msgPreviewSecondary,
.msgPreviewHidden {
	margin: 5px 0 15px;
	border-style: dashed;
}

.msgPreview h3,
.msgPreviewSecondary h3,
.msgPreviewHidden h3 {
	background-image: url(/img/icons/magnifier.png);
}

.msgPreview h4,
.msgPreviewSecondary h4,
.msgPreviewHidden h4 {
	margin: 15px 20px;
	color: #000;
	font-size: 1.3em;
}

.msgPreview p,
.msgPreviewSecondary p,
.msgPreviewHidden p {
	margin: 0 20px 15px;
	font-size: 1em;
}

.msgPreview {
	background-color: #E9FFBF;
	border-color: #BBD982;
}

.msgPreview h3 {
	color: #690;
}

.msgPreviewSecondary {
	background-color: #E8F6FB;
	border-color: #79C5E6;
}

.msgPreviewSecondary h3 {
	color: #388;
}

.msgPreviewHidden {
	background-color: #EEE;
	border-color: #CCC;
	opacity: 0.4;
}

.msgPreviewHidden h3 {
	color: #666;
}

/* -----[ Paged Links ]--------------------------------------------------------------------- */

.pagedLinks {
	padding: 10px 5px;
	color: #666;
	text-align: right;
}

.pagedLinks a,
.pagedLinks b {
	margin: 0 2px;
	padding: 4px 8px;
	background: #FFF;
	border: 1px solid #CCC;
}

.pagedLinks a:hover {
	background: #48F;
	border-color: #FFF;
	color: #FFF !important;
	text-decoration: none;
}

.pagedLinks b {
	background: #EEE;
	color: #000;
	font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;
	font-weight: normal;
}

.pagedLinks span {
	display: none;
}

/* -----[ Debug ]--------------------------------------------------------------------- */

.debug {
	clear: both;
	background: #FFF;
	border-top: 2px solid #CCC;
	padding: 5px;
	color: #222;
	font: normal 12px monospace;
	text-align: left;
}

.debug span {
	color: #888;
}

.debug span.debugCache {
	color: #228;
}

.debug span.debugDatabase {
	color: #069;
}

.debug table {
	margin: 10px 0 0;
	padding: 0;
}

.debug th,
.debug td {
	border: 1px solid #CCC;
	padding: 2px 4px;
	text-align: center;
}

.debug th {
	background: #EEE;
	color: #888;
}

/* -----[ Miscellaneous ]--------------------------------------------------------------------- */

.nowrap,
tr.nowrap th,
tr.nowrap td {
	white-space: nowrap !important;
}

.blink {
	font-weight: normal;
	text-decoration: blink;
}

.big {
	font-size: 1.2em;
}

.huge {
	font-size: 1.5em;
}

.small {
	font-size: 0.9em;
}

.smaller {
	font-size: 0.8em;
}

.bold {
	font-weight: bold;
}

.unbold {
	font-weight: normal;
}

.strike {
	text-decoration: line-through;
}

.monospace {
	font-family: monospace;
	font-size: 1.0em;
}

.alternate {
	background: #F2F2F2;
}

.alert {
	color: #C00;
}

.warning {
	color: #D60;
}

.green {
	color: green;
}

.purple {
	color: purple;
}

.grey {
	color: #888;
}

.cyan {
	color: #00FFFF;
}

.highlight {
	background: #FEF3BE !important;
}

.highlightRed {
	background: #FDD !important;
}

.highlightBox {
	padding: 10px 15px;
	background: #FEF3BE;
	border: 1px solid #D9CD82;
}

.clearAll {
	clear: both;
}

.expandButton {
	border: 0;
	padding: 2px;
	vertical-align: top;
}

.hidden {
	opacity: 0.50;
}

.hidden:hover {
	opacity: 1.00;
}

.invisible {
	visibility: hidden;
}

.showInvisible:hover .invisible {
	visibility: visible;
}

.editable:hover {
	background-color: #FFF4BF;
}

/* -----[ Clear After ]--------------------------------------------------------------------- */
/* http://www.positioniseverything.net/easyclearing.html */
/* http://www.456bereastreet.com/archive/200603/new_clearing_method_needed_for_ie7/ */

.clearAfter:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
