/* Animations */
.logo-lg {-webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s;}

#status,tr .indicator span {-webkit-transition: all 0.4s; -moz-transition: all 0.4s; -ms-transition: all 0.4s; -o-transition: all 0.4s; transition: all 0.4s;}
.policy-wrap form > div:before {-webkit-transition: all 0.6s; -moz-transition: all 0.6s; -ms-transition: all 0.6s; -o-transition: all 0.6s; transition: all 0.6s;}


.skin-blue .main-header .navbar { background:#293a41;}
.skin-blue .main-header .logo { background:#0d1127!important; overflow:visible;}

/* Login */
.login-page { background: url("../images/login-bkg.jpg") #222d32; background-size: cover; }
.login-page { background:  #222d32; background-size: cover; }
.login-page .icheckbox_square-blue { margin-left: 15px;}
.login-page .logo { width: 270px; display: block; margin: 0 auto;}
.login-page .logo img { width:100%;}
.login-page .has-feedback .form-control-feedback {right: 5px;}
.login-page .login-box { margin: 17vh auto 0;}

.login-page .warning { background:rgba(235,80,80,1); color:#fff; padding:10px 20px; text-align:center; display:block; margin-bottom:10px;}

/* Error page */
.error-page { background: #f4f4f4;}
.error-page .content { margin-top: 4vh;}
.error-page .content img { max-width: 100%; margin: 0!important;}
.error-page .content-header { text-align: center; padding:0px; }
.error-page h1 { font-size: 48px; font-weight: 100;}
.error-page h2 { font-size: 18px; line-height: 26px; font-weight: 100;}
.error-page i { padding-left: 10px; font-size: 62px; display: block; margin-bottom: 20px;}

#users.table .button { width:70px; text-align:center;}
#users.table td.button { padding:5px 0 0 0;}
#users.table td.button a { font-size:16px;}

#password_confirm { position:relative;}
#password_confirm.red { border-color:red;}
#password_confirm.green { border-color:green;}

/* Collapsed sidebar*/

.sidebar { margin-top:50px;}
.sidebar-collapse .logo-lg { height:20px;}

.sidebar .user-panel .image a { display: inline-block; max-width:45px; position: relative;}
.sidebar .user-panel .image a img { max-width: 100%;}
.sidebar .user-panel { }

/* Main body */
.content-wrapper { background: #f4f4f4;}

/* Logo */
.logo-lg { height:100px; margin-top:10px; margin-left:-5px; display:block!important;}
.logo-lg img,.logo-mini img { height: 100%; width:auto; }

/* Region Select */
.regionSelect { padding:10px 5px; text-align: center; border:none; -moz-appearance: none;text-indent: 0.01px; text-overflow: '';}
.regionSelect option { border:none; padding:5px;}

/* Alerts */
.alert { list-style: none;}


#status { display: block; opacity: 0; padding: 6px; margin-right: 25px;}
#status.active { opacity: 1;}

/* iCheck checkboxes */
.icheckbox_square-blue { display: block; margin: 5px 0 21px; }

/* Content page header */
.content-header h1 { display: inline-block;}

.content .pagination { margin:0 10px 0 0; display: inline-block;vertical-align: middle; position: absolute; top:-45px; right:200px;}

.content-header .btn-group { float:right;}
.content-header #status { float:right;}
.content-header .alert { padding:7px; margin:0 15px 0 0; display: inline-block;}

.content-header .btn.on { background: #333; color: #fff;}

.editable-table tr { border-left:solid 2px #fff;}
#table-load tr.save { }
#table-load tr .indicator span{ opacity: 0;}
#table-load tr.save .indicator span{ opacity: 1;}

#table-load td { max-width: 550px;}

.editable-table tr input,.editable-table tr select { border: none; display: table-cell; width:100%!important; min-width: 50px; }
.editable-table tr select { min-width: 130px;}

.btn-group form { display: inline-block; float: left;position: relative; }
.btn-group form .btn {border-bottom-left-radius: 0; border-top-left-radius: 0;}
.btn-group form #delete { display: none;}
.nav-tabs-custom  #submit { display: none;}
.nav-tabs-custom .datetime-clean > input[type=text]{ display: none;}
.nav-tabs-custom .datetime-clean label { margin-bottom: 15px;}
.nav-tabs-custom .datetime-clean { margin-bottom: 22px;}
.nav-tabs-custom .select2 { width:100%!important;}

/* Table colours */
table.table { font-size: 13px;}
table.table tr.border { border-left:solid 3px #eee;}
table.table tr td a.iconfont { text-align: center;}
table.table tr td a.iconfont span { width: 100%; display: inline-block;}

/* Normal Tables */
table.table tr th {  vertical-align: middle; }
table.table tr th.filter-holder {  overflow: visible; position: relative;}
table.table tr th.filter-holder > i { color: #ccc; float: right; padding:2px 5px; cursor: pointer; font-size: 12px; }
table.table tr th.filter-holder > i > b {  cursor: pointer; font-size: 12px; padding-right: 5px; }
table.table tr th.filter-holder > i > span { display: inline-block; float: right; padding-top: 2px;}
table.table tr th.filter-holder > i > span b { display:block; text-align: center; margin: 0; line-height: 6px; width: 5px;  }
table.table tr .quick-filter { width: 100%; display: block;}
table.table tr .select2 { display: block;}
table.table tr .quick-filter  { width: 100%;}
table.table tr .quick-filter > button { border: none; background: none; position: relative; font-size: 16px; color: #333;}
table.table tr th.filter-holder.filtered > i > b { color: #1985ff; }
table.table tr th.filter-holder.sort_asc > i > span b.asc { color: #1985ff; }
table.table tr th.filter-holder.sort_desc > i > span b.desc { color: #1985ff; }
table.table tr th.filter-holder > div { font-weight: normal;  position: absolute; left:0; top:0; display:block; visibility: hidden; opacity: 0; min-width: 300px; background: #fff; box-shadow: 0 0 15px rgba(0,0,0,.2); overflow: visible; padding:10px; }
table.table tr th.filter-holder.on > div { visibility: visible; opacity: 1; z-index: 100;}
.filter-holder > div h3 { font-size: 14px; font-weight: bold; margin: 0 ; border-bottom: solid 1px #eee; padding-bottom: 5px;}
.filter-holder > div .quick-search span { cursor: pointer;}
.filter-holder > div > button { border: none; background: none; font-size: 14px; color: #333; margin: 5px 0; opacity: 1; font-weight: normal;}
.filter-holder > div > button:hover {color: #1985ff;}
.filter-holder > div .date { margin-bottom: 5px;}
.filter-holder > div > button.date-range-submit { width: 100%; display: block; border: solid 1px #ddd; padding: 7px 0;}


/* Timesheets */
#timesheets td span { display: block;}
#timesheets td span b { margin-left: 5px; font-weight: normal; font-size: 12px;}
#timesheets td .working { color: #2ca02c;}
#timesheets td .late { color: #d58512;}
#timesheets td .dawn { color: #b92c28;}


/* Invoicing */
.invoice address { white-space: pre-line; padding:0; margin-top: -20px;}
.invoice .right {text-align: right;}
.invoice .left {text-align: left;}

/* Calendar*/
#calendar { margin:0;}
#calendar .customer { float: right;}

#calendar .fc-content { background: none!important; position: relative;}
#calendar .fc-event {  border-color: rgba(0, 0, 0, 0.1); color: #000;}
#calendar .fc-event.elec { background: #fbf59e; }
#calendar .fc-event.hvac { background: #a3c8e2; }
#calendar .fc-event.fire { background: #e59090; }
#calendar .fc-event.plumb { background: #fff004; }
#calendar .fc-event.build { background: #cec6e6; }
#calendar .fc-event.clean { background: #f8c5dd; }
#calendar .fc-event.heat { background: #f2cea4; }
#calendar .fc-event.sub { background: #ddd; }

#calendar .fc-event.cal_ppm { border-top: solid 5px #444;}

/* Charts */

/* Single-box */
.single-box { padding-top:10px; padding-bottom:0px;}

/* Modal */
.modal .datetime { display: none;}

/* Tabs */
.nav-tabs-custom .tab-content { position: relative; display: block; float: left; width:100%;}
.nav-tabs-custom .tab-content .tab { display: none; padding-top: 10px; position: relative; }
.nav-tabs-custom .tab-content .tab.active { display: block;}

/* Multi-Json & related table types */
.multi-json tbody input { width:100%; height:100%; border:none;}
.multi-json tbody select {width:100%; height:100%; border:none;}
.multi-json .input-group,.related .input-group  { border:none;}
.multi-json .input-group-addon,.related .input-group-addon { border:none; background:#f8f8f8;  height:100%; cursor:pointer;}
.multi-json .headings,.related .headings {background: #eee; border-bottom: none!important;}
.multi-json tfoot,.related tfoot { background:#f8f8f8;}
.multi-json input[readonly] { background:none; color:#999; pointer-events:none; cursor:default;}
.multi-json textarea,textarea.result { min-height: 100px; background:none; width:100%; box-sizing:border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; display: block; border: none; height:auto; overflow: hidden; position: relative; margin:0;}
.multi-json tbody .edit,.related tbody .edit { float: right;}
.multi-json td li { list-style: none;}

.related thead .headings th { position: relative;}
.related thead th span { display: inline-block; float: right; padding-top: 2px;}
.related thead th span b { display:block; text-align: center; margin: 0; line-height: 6px; width: 5px; color: #ccc; }
.related thead th.headerSortUp span b.desc { color: #1985ff; }
.related thead th.headerSortDown span b.asc { color: #1985ff; }

.accounts-table td  { padding:0 8px!important;}
.accounts-table td textarea,textarea.result {  margin:8px 0!important; box-sizing: border-box;  min-height: auto; resize: none; line-height:20px; box-sizing: border-box; }
textarea.result,.subtotal { text-align: right;}
.table-results th { padding: 10px 0 0!important; }
.table-results td { padding: 0!important; }

.accounts-table tr td:nth-child(1) { width:15%;}
.accounts-table tr td:nth-child(3) { width:15%;}
.accounts-table tr td:nth-child(4) { width:15%;}

.accounts-table { border:none; border-right:solid 1px #eee;}
.accounts-table tbody  { border: none!important;}
.accounts-table tbody > tr { border: none; }
.accounts-table tbody > tr > td { border-top: solid 1px #eee!important; border-left: solid 1px #eee!important;}
.accounts-table tbody > tr.headings { border: none!important;}
.accounts-table tfoot td { padding: 8px!important; }

.table-results { margin-top: 30px;}
.table-results tbody > tr > td,.table-results tbody > tr > th  { border-top: solid 1px #eee!important; }


#invoice-header{ width: 100%; }
#invoice-title { background: #eee!important;  margin: 15px 0 40px; padding:5px 10px; border: none; display: block; text-transform: uppercase; font-weight: bold; font-size: 20px; letter-spacing: 0.05em;}
#invoice-footer { position: absolute; bottom:30px; padding: 60px 0;  }
#invoice-footer .row { position: relative; padding:30px 0; }
#invoice-footer img { width: 100%; position: absolute; top:0; bottom: 0; left:0; right:0;}

#invoice .hide-print { display: none;}

/* Simple fixes for form*/
textarea.form-control  { height: 108px;}

/* Filter form */
#filter .modal-body { position: relative; overflow: hidden;}
#FilterForm { display: block; position: relative; width:100%; }
#FilterForm .form-group { display:flex; position: relative; border-bottom: solid 1px #eee; padding-bottom: 10px; margin-bottom: 10px; justify-content: space-between;}
#FilterForm .form-group:last-child { border-bottom: none; padding-bottom:0; margin-bottom:0; }
#FilterForm .form-group .element-wrapper,#FilterForm .form-group .select2 { width:100%!important; display: inline-block; box-sizing: border-box; flex: 1;}
#FilterForm .form-group .element-wrapper {}
#FilterForm .form-group .select2-container,#FilterForm .form-group .element-wrapper { margin-right: 15px;}
#FilterForm .form-group label {display: inline-block; box-sizing: border-box; width:33%; }

#FilterForm .form-group .select2-search__field { z-index: 50;}

#FilterForm .form-group .icheckbox_square-blue { margin: 5px 0;}
/* File manager */
.dropzone { height: 100%; border: solid 4px #eee; background: #f8f8f8;}
.dropzone .dz-message { color: #999; }
.files li { position: relative;}
.files li > span { float: right; padding-right: 40px; font-size: 12px; line-height: 18px;}
.files li > span.sort { font-size:14px; top:12px}
.files li > span b { color: #ccc; padding: 0 3px;}
.files li form {}
.files li form .file_delete_press { padding: 0 10px; position: absolute; top: 0; bottom:0; right:0; border: none; background: #fff; border-left:solid 1px #eee; color: #ddd;}
.files li form .file_delete_press:hover {  background:#d73925; color: #fff;}

/* Image uploader */
.image-upload { display: block; position: relative; display: block; }
.image-upload input { }
.form-group .image-preview { display:inline-block; border: solid 2px #eee;}
.upload-button {}
.upload-form { margin: 15px 0; display: none; width: 100%; float: left;}

/* Special select 2 box */
.special-select { overflow: hidden; margin-bottom: 15px;}
.input-group .input-group-addon i { margin-right: 5px; color: #999;}

/* Modal fixes */
.modal-dialog { width: 90%; max-width:1000px;}

/* Management forms */

.sort { position:absolute; top:8px; left:8px; width:30px; height:30px; display:block; color:#aaa; font-size:14px; cursor:move;}
.item-delete {  position:absolute; padding:0; border:none; background:none; top:4px; right:8px; width:20px; height:20px; display:block; color:#aaa; font-size:14px; text-align:right; }

.fields-wrapper {}
.fields-wrapper .item { border:solid 3px #ddd; display:block; float:left; clear:both; overflow:hidden;}

.policy-wrap .item { margin-top:30px; position:relative;}

.policy-wrap ul { margin:0; padding:0; display:block; position:relative; float:left; width:100%;}

.fund-wrap { display:block; float:left; clear:both; overflow:hidden; width:100%;  background:#f8f8f8;}
.fund-wrap .item { margin:15px; box-shadow: 1px 1px 6px #ddd; border:solid 1px #ddd; background:#fff; }

.fund-wrap {}

.fields-wrapper .body { display:none; float:left; width:100%; }

.fields-wrapper form { width:100%;}
.fields-wrapper h2 { cursor:pointer; margin:0; font-size:18px; font-weight:bold; position:relative; display:block; width:100%; float:left;}
.fields-wrapper h2:after,.form-group.files h2:after { content:"\002b"; display:block; font-family: 'Glyphicons Halflings'; position:absolute; top:2px; right:25px; font-size:14px; color:#777;  }
.open > h2:after { color:#000!important; content:"\2212"!important;  }

.fields-wrapper form.create-form { background:#d2e5dc;}
.fields-wrapper form.create-form div.input-wrap:before { display:none; }
.fields-wrapper form { display:block; float:left; clear:both; padding:20px;}
.fields-wrapper form input[type=submit] { float:right; margin:30px 15px 0 0;}
.fields-wrapper form.ajax-form input[type=submit]{ display:none!important; }
.fields-wrapper form div.input-wrap { position:relative; width:calc(100% / 5); box-sizing:border-box; float:left; display:inline-block; padding:5px 10px;}
.fields-wrapper form div.input-wrap label { display:block; }
.fields-wrapper form div.input-wrap input { width:100%; display:block; border:solid 1px #ddd; padding:5px; overflow:visible;  }
.fields-wrapper form div.input-wrap:before { display:block; content:"";  background:#fff; width:10px; height:3px; position:absolute; top:15px; right:15px;}
.fields-wrapper form div.input-wrap.unsaved:before { background:red;}

.shared.policy-wrap.fields-wrapper .item { border-color:#f7d5b3;}
.shared.policy-wrap.fields-wrapper .item input { border-color:#eee; background:#eee;}

h2 i { font-size:14px!important; margin-right:10px; color:#777;}

.fields-wrapper form.create-form .body { padding-top:30px;}
.fields-wrapper form.create-form h2 { margin-left:10px; color:#00a157;}
.form-group.files .body { padding:30px 10px 10px;}

.form-group.files { display:block; float:left; width:100%;}
.form-group.files label { display:block;}
.form-group.files small { display:block; clear:both;}
.form-group.files h2 { cursor:pointer; margin:0 0 0 10px; font-size:18px; font-weight:bold; position:relative; float:left;}
.form-group.files .dropzone { float:right; width:33.3%;}
.form-group.files .dropzone .dz-message {  text-align:center; display:block; width:100%;}
.form-group.files .dropzone .dz-message:before { display:none;}

.form-group.files .list-group { float:left; width:66%; padding:0 20px 0 0; box-sizing:border-box; margin-bottom:15px;}
.form-group.files .list-group li { width:100%; position:relative; overflow:hidden; height:45px; }
.form-group.files .list-group form { padding:0; display:inline-block; float:left; clear:none;}
.form-group.files .list-group li input {  border:solid 1px #eee; width:33%; margin:0 30px 0 20px; padding:0; float:left;display:inline-block;}
.form-group.files .list-group li div.input-wrap { display:block; width:100%; margin:0; float:left; padding:0; box-sizing:border-box; }
.form-group.files .list-group li div.input-wrap:before {  position:absolute; top:10px; right:35px;}

.documents-highlight { background:#e6e6e6; width:100%; height:45px; border:none;}
.funds-highlight { margin:15px 20px; width:calc(100% - 40px); float:left; display:block; height:200px; border:none; background:#e6e6e6;}
.policies-highlight { margin:15px 0px; width:calc(100% - 40px); float:left; display:block; height:300px; border:none; background:#e6e6e6;}

.form-group.files { padding:15px;}

.ui-tooltip { display:none!important; visibility:hidden!important; opacity:0!important;}

.form-group.files { /*border-top:solid 1px #ddd; border-bottom:solid 1px #ddd;*/ margin-bottom:0;}

.form-group .table-bordered td input { width:100%!important; display:block; border:none;}

.tab-content .form-group.files .list-group form { width:100%;}
.tab-content .form-group.files .list-group form .btn { display:none; }
.tab-content .form-group.files > h2:after { display:none; }
.fund-wrap .item .form-group { margin:0;}

.info-box-icon { font-size:32px;}
.info-box-icon { opacity:.5;}

.fund-wrap > h2 { padding: 15px 15px; margin-left:10px; }
.fund-wrap > h2:after { top:15px; right:40px;}

.content-header #client_total { float:right; font-size:18px;}
.content-header #client_total i { font-style:normal; color:#000; margin-left:10px; font-weight:bold;}
.content-header .email_button { float:right; margin-left:20px;}

/* Coupling */
.item.grouped { margin-top:-2px; border-top:solid 2px #fff;}
.coupler { position:absolute; top:0; left:0; right:0; margin:0 auto;  color:#888; display:inline-block; width:20px; text-align:center; }
.coupler:after { font:normal normal normal 14px/1 FontAwesome; content:"\f127"; padding-top:3px; height:18px; width:18px; display:block; margin:0 auto; }
.grouped .coupler:after { content:"\f0c1"; }
.grouped .coupler { color:#000; }

/* User Print Page */
.user-policy { border:solid 2px #ccc; display:block; position:relative; overflow:hidden; padding:10px; margin:10px 0; border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px; }
.user-policy h1,.user-policy h2,.user-policy h3,.user-policy h4 { margin:0 0 10px 0;}
.user-policy h1 { font-size:16px; margin-right:7px!important; padding-right:10px; border-right:solid 2px #ccc; display:inline-block; float:left; font-weight:bold; }
.user-policy h2 { color:#000; font-size:16px; display:inline-block; float:left; margin-right:5px!important;}
.user-policy h3 { font-size:14px; display:block; float:left; width:100%; font-weight:bold; margin-bottom:5px;}
.user-policy h4 { font-size:14px; display:inline-block; float:left; margin-right:30px; margin-top:5px; margin-bottom:5px; min-width:160px; font-weight:bold;}
.user-policy h2 + h4 { clear:both!important;}

.user-policy h3 span,.user-policy h4 span { color:#777; margin-right:6px; font-weight:normal;}
.user-policy .total { position: absolute; top:10px; right:10px; font-size:16px; font-weight:bold;}
.user-policy .total > span {color:#b5b5ca; font-weight:normal; font-size:14px; margin-right:6px; }
.user-policy.grouped { margin-top:-17px; border-top:solid 2px #eee;}

.user-policy button,.fundswitch { display:none;}

.user-fund { padding:10px 10px 5px; background:#f8f8f8; float:left; clear:both; position:relative; display:block; width:calc(100% + 30px); margin: 10px -15px 0; border-bottom:solid 2px #ccc; border-top:solid 2px #ccc;}
.user-fund .holder { position:relative; overflow:hidden;}
.user-fund h4 { margin-top:0;}

.user-policy .user-fund:last-child { margin-bottom:-12px;}

.print-holder #print,.print-holder #report { display:block; width:100%; margin-bottom:20px;}
.print-holder .col-xs-12 > h1 { margin:0; font-size:22px; font-weight:bold;}
.print-holder .container { max-width:1000px;}
.print-logo {   float:right; max-height:100px;}
.print_date { display:block; border:none; font-size:16px; margin:6px 0; min-width:280px; }
.print-holder #client_total { font-size:16px;}
.print-holder #client_total i { font-style:normal; font-weight:bold;}
.bootstrap-datetimepicker-widget { background:#fff!important;}

#grandtotal { font-size:18px; position:absolute; top:100px;}
