
/* Reset some PrimeFaces styles */
.frontend .ui-widget, .frontend .ui-widget:focus { box-shadow: none; text-shadow: none; font-family: inherit; font-size: 1.0em } 
.frontend .ui-growl { margin-top: 62px; }

.frontend .ui-dialog { z-index: 10000 !important; border: none; border-radius: 6px; max-height: 100%; max-width: 100%; overflow-y: auto;  }
.frontend .ui-dialog .pcaAutoComplete .inputArea .search { z-index: 10100 !important}
.frontend .ui-dialog .ui-dialog-titlebar { background: #54ca63; padding: 15px 10px; text-align: center; text-shadow: none; font-family: Arvo, Times, "Times New Roman", serif; }
.frontend .ui-dialog .ui-dialog-titlebar .ui-dialog-title { width: 100%; margin: 0px; color: white; font-size: 1.5em; font-weight: 400;  }
.frontend .ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-icon { position: absolute; top: 5px; right: 5px;  }
.frontend .ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-icon .ui-icon { background-image: url('/images/icons/close.svg'); background-position: 0; width: 16px; height: 15px;}
.frontend .ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-icon:hover { border: 1px solid transparent; background: inherit; box-shadow: none; }
.frontend .ui-dialog .ui-dialog-content { padding: 20px 30px }

.frontend .ui-dialog .dialogicon { position: absolute; top: -30px; z-index: 1000000; right: 10px; }
.frontend .ui-dialog .dialogicon img { width: 60px; }

.frontend .ui-dialog.nopaddialog .ui-dialog-content { padding: 0px }
.frontend .ui-dialog.nopaddialog .ui-dialog-content .modalinner { padding: 20px 30px; }
.frontend .ui-dialog.nopaddialog .ui-dialog-content .modalfooter { text-align: center; padding: 20px 30px; border-top: 1px solid rgba(0, 0, 0, 0.12) }
/* Experimental styling for PrimeFaces select menu
.frontend .ui-selectonemenu { width: 300px; box-shadow: none; padding-left: 5px; background: #ffffff; border: 1px solid #cccccc}
.frontend .ui-selectonemenu .ui-inputfield { box-shadow: none; color: inherit; }
.frontend .ui-selectonemenu-panel { width: inheri1t !important; border: 1px solid #cccccc; border-top: none; border-top-left-radius: 0px; border-top-right-radius: 0px; }
.frontend .ui-selectonemenu-item { background: none; text-shadow: none; color: inherit; width: 100%; }
.frontend .ui-selectonemenu-trigger { background: none; border: none; box-shadow: none !important; }
.frontend .ui-selectonemenu-trigger .ui-icon { position:absolute; top: 10px; right: 10px; padding: 0px; margin: 0px; 
 background-image: url('/javax.faces.resource/images/ui-icons_898989_256x240.png.html?ln=primefaces-aristo'); background-position: -64px 0px;  }
*/

.frontend .ui-panel { padding: 0px; margin-bottom: 20px; border: 1px solid #cccccc }
.frontend .ui-panel .ui-panel-titlebar { background: #54ca63; border: none; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; padding: 10px 10px; text-align: center; text-shadow: none; font-family: Arvo, Times, "Times New Roman", serif; }
.frontend .ui-panel.greytop .ui-panel-titlebar { background: #F4F4F4;  }
.frontend .ui-panel.greytop .ui-panel-titlebar .ui-panel-title { color: #444444 }
.frontend .ui-panel .ui-panel-titlebar .ui-panel-title { width: 100%; margin: 0px; color: white; font-size: 1.3em; font-weight: 400;  }

.frontend .ui-datatable tbody, .frontend .ui-datatable thead { border: 0px; }
.frontend .ui-datatable tbody td, .frontend .ui-datatable tbody tr, .frontend .ui-datatable thead th { border-bottom: 0px; border: 0px; }
.frontend .ui-datatable .inputRegion { margin: 0px; }
.frontend .ui-datatable .inputRegion select, .frontend .ui-datatable .inputRegion input { margin: 5px 0px; }
.frontend .ui-datatable { border: 1px solid #cccccc; border-radius: 3px; }
.frontend .ui-datatable thead { border-bottom: 1px solid #cccccc }
.frontend .ui-datatable th { background: none; text-align: left; padding: 15px 10px; color: #181818 }
.frontend .ui-datatable th, .frontend .ui-datatable td { border-left: 1px solid #cccccc; vertical-align: middle; }
.frontend .ui-datatable th:first-child, .frontend .ui-datatable td:first-child { border-left: 0px; }
.frontend .ui-datatable .ui-paginator { border: none; background: #F4F4F4 }
.frontend .ui-datatable tfoot td { box-shadow: none !important; border-width: 1px 0 0; background: #f4f4f4; }

.frontend .ui-datatable td .button { margin: 2px 0px 0px 0px;}
.frontend .ui-datatable .centerbuttons { text-align: center }

.frontend .ui-datatable.dtcolour thead { border-bottom: 0px }
.frontend .ui-datatable.dtcolour th { background: #54CA63; text-align: left; padding: 15px 10px; color: #ffffff; text-shadow: none; box-shadow: none; }
.frontend .ui-datatable.dtcolour tr.ui-datatable-even { background: #F0F3F7 }
.frontend .ui-datatable.dtcolour tr.ui-datatable-odd { background: none; }






.frontend table.verticaltop td { vertical-align: top }
.frontend table.verticaltop td .button { margin-top: 0px; }

a { cursor: pointer }

.hasdownlink { position: relative; }
.hasdownlink:after { content: ""; position: absolute; right: 6px; top: 0px; width: 0; height: 0; border-left: 6px solid transparent; border-right: 6px solid transparent;  border-top: 6px solid #ffffff; }

.error textarea { border: 1px solid red; padding: 0.1em 0em 0.2em 0.1em}

.error, .required { color: red; text-align: left; font-size: 0.9em; }
.required { padding-left: 2px; }
.warn { color: #f47a20; }

.fakeselect { position: relative; vertical-align: top; text-align: left; padding-left: 15px; background: white; color: black; cursor: pointer; border: 1px solid #a6a6a6; border-radius: 5px;}
.fakeselect.open { border-bottom: none; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; }
.fakeselect:after { content: "v"; right: 15px; position: absolute; color: #cbcbcb; transform: scale(2.0,1.0); font-weight: 300}
.fakeselect .dropdown { position: absolute; left: -1px; top: 59px; background: white; width: calc(100% + 2px); padding: 10px 5px; border: 1px solid #a6a6a6; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; box-shadow: 0px 4px 2px -2px rgba(0, 0, 0, 0.16); cursor: default}
.fakeselect .dropdown li { list-style: none;font-size: 0.9em; }
.fakeselect .dropdown li a { color: black !important; width: 100%; cursor: pointer; display: inline-block; padding: 3px 10px; }
.fakeselect .dropdown li:hover { background: #efefef; border-radius: 3px; }
.input { position: relative; }
.inputRegion { margin-bottom: 10px; display: block; text-align: left;}
.inputRegion .inputErrors { border: 1px solid red; }
.inputRegion label { display: block; margin: 5px 0px; color: #8b8b8b;  }
.inputRegion.checkbox label, .inputRegion.checkbox .input { display: inline-block; vertical-align: middle; }
.output { font-size: 1em; color: black; padding-top: 0px; }
.input input, .input select, .input textarea { width: 330px; font-size: 1em; background: #ffffff; border-radius: 4px; border: 1px solid #cccccc; height: 38px; padding: 5px; color: inherit; margin-bottom: 5px;}
.input input:focus, .input select:focus, .input textarea:focus { border: 1px solid #00a0f9 }
.input input[type="radio"] { width: auto !important; margin-left: 10px; }
.input td:first-child input[type="radio"]{ margin-left: 0px; }
.rf-cal-inp { width : 100px !important }
.col .input input, .col .input select, .col .input textarea { max-width: 100%; }
.col .label { text-align: left; }
textarea, input[type="text"], input[type="password"], select { background: #ffffff;  }
textarea { line-height: 1.2em }
textarea[disabled], input[type="text"][disabled], input[type="password"][disabled], select[disabled] { color: #C4C0B9; cursor: default; }

.dateinputmask { letter-spacing: 1px; }

/* Checkbox styling */
.checkbox input { display: none; position: absolute; top: 3px; }

.checkbox { position: relative; }
.checkbox.halfwidth { width: 50% }
.checkbox.labelhidden label { width: 0px; float: left; height: 0px; overflow: hidden; margin: 0px; margin-right: 25px; border: 1px solid #ffffff;}
.checkbox.labelhidden input { left: -0px; top: 0px; }
.checkbox label { margin-left: 25px;}
.checkbox label:before { content: ""; display: inline-block; border-radius: 3px; width: 18px; height: 18px;  font-size: 18px; line-height: 16px;
    position: absolute; left: 0px; bottom: 5px; background-color: #fff; border: 1px solid rgba(0, 0, 0, 0.2); }
.checkbox.labelhidden label:before {  bottom: 0px; }

.checkbox-input-inline .inputRegion { display: inline-block; }
.checkbox-input-inline .inputRegion .label { display: inline; }

input[type=checkbox]:checked + label:before { background: #4891e6; content: "\2713"; text-shadow: 1px 1px 1px rgba(0, 0, 0, .2); font-size: 18px; color: #f3f3f3; text-align: center; line-height: 16px; border: 1px solid #4891e6; }
input[type=checkbox][disabled] + label:before { border: 1px solid rgba(190, 190, 190, 0.2); }

/* Honeypot */
.hpfield { display: none; }

.pwdtypecontrol { cursor: pointer; position: absolute; right: 9px; top: 3px; font-size: 0.8em; }

.col { width: 410px; vertical-align: top; margin: 0px 30px 30px 30px; display: inline-block }
.col:first-child { margin-left: 0px; }
.col.dblcol { width: 850px;  }
.col.rightborder { border-right: 1px solid #cccccc }
.col.rightborder:nth-child(3) { border-right: none }
.col.padnotmarg { margin-left: 0px; margin-right: 0px; padding: 0px 30px; }
.col.small { width: 290px; }

.customradios { width: 100%; }
.customradios .radiooption { position: relative; border: 1px solid #8e9b9c; margin: 0px 0px 10px 0px; padding: 10px 15px; border-radius: 4px; }
.customradios .radiooption.selected  { background: #fed4bd; border: 1px solid #e6570c }
.customradios .radiooption .ui-radiobutton, .customradios .radiooption .ui-chkbox { position: absolute; right: 15px; top: 50%; top: calc(50% - 8px); margin: 0px; }
.customradios .radiooption .ui-radiobutton-box, .customradios .radiooption .ui-chkbox-box { width: 17px; height: 17px; position: relative; background: none;} 
.customradios .radiooption .ui-radiobutton .ui-radiobutton-icon, .customradios .radiooption .ui-chkbox .ui-chkbox-icon { margin: 0px; top: -1px; left: 0px; position: absolute;}
.customradios.horizontal { vertical-align: middle; display: table;  }
.customradios.horizontal .radiooption { display: inline-block; padding-right: 50px; border: none; vertical-align: middle}
.customradios.horizontal .radiooption.selected { background: none; }
.customradios.horizontal .radiooption { text-align: left; }
.customradios.horizontal .radiooption a.help { background: none; width: auto; font-size: 0.7em; top: 27px; display: inline-block; position: absolute; text-decoration: underline; color: #bbb}

a.pagelink { font-weight: 600; width: 39px; height: 39px; font-size: 18px !important; padding-top: 6px; display: inline-block; text-align: center; margin: 0px 2px; }
a.pagelink.currentPage { border: 2px solid #4891e6; border-radius: 4px;  }
.pagination { margin: 80px 0px 60px 0px; }
.pagination .responsive { display: none; }
.pagination .button.previous, .pagination .button.next { height: 39px; line-height: 16px !important;; font-size: 16px !important; margin: -1px 15px 0px 15px; border: 2px solid #cccccc !important; position: relative; }
.pagination .button.previous { padding: 10px 10px 10px 20px; }
.pagination .button.next { padding: 9px 22px 9px 10px; }
.pagination .button.previous:before { content: ""; position: absolute; left: 6px; top: 14px; width: 0; 
	height: 0; border-top: 5px solid transparent; border-bottom: 5px solid transparent;  border-right: 5px solid #4891e6; }
.pagination .button.next:before { content: ""; position: absolute; right: 7px; top: 14px; width: 0; 
	height: 0; border-top: 5px solid transparent; border-bottom: 5px solid transparent;  border-left: 5px solid #4891e6; }

/* Prevent iframe overlaps */
iframe { max-width: 100%; }