@charset "utf-8";
/* CSS Document */

@import url("page-frame.css");

/*
* {margin: 0; padding: 0; }
body {background: #A7A7A7 url('/skin/frontend/gearhead/default/images/main_bg.png') repeat-x; font-family: Arial, Sans-serif;}
#wrapper {width:1280px; min-height:500px; margin: 0 auto; padding: 20px; background: #fff; position:relative; }
#header {height: 20px; position: relative; }
a#logo {color: #000; font-size: 35px; font-weight: bold; position: absolute; right:40px; bottom: -10px; text-decoration: none; }
#footer {width: 1280px; background: #000; margin: 0 auto; padding: 10px 20px; color:#fff; text-align:right; }
#footer a {color:#fff; text-decoration:none; }
pre {max-width: 100%}
h1 {background: #000; color: #fff; margin: 0 -60px 30px -60px; padding: 5px 50px; }
h2 {margin: 0.5em 0 1em; padding-top: .5em; border-top: 1px solid #ccc; }
h3 {margin-bottom: 0.5em; }
dl {margin:-1em 0 1em; border-bottom: 1px solid #ccc; }
dt {font-weight:bold; margin-top:1em; padding:.5em 0; border-top: 1px solid #ccc; }
dd {margin:0 0 0 15px; padding:0; }
ol,ul {margin-left: 20px; margin-bottom: 1em; }
p {margin-bottom: 1em; }
.toplink {font-size: 12px; float: right; font-weight: normal; }
td {vertical-align:top; padding: 3px; }
caption {
    margin-top: 1em;
    font-size: 14pt;
    text-align: left;
}
pre {
   background: #eee;
   font-size: .9em;
   padding: 3px;
}
td pre {
   max-width: 400px;
   overflow: auto;
}

*/

.toplink {font-size: 12px; float: right; font-weight: normal; }

/* Lined Tables  ************/

.clear {
   clear: both;
}
.clearfix {zoom: 1}
.clearfix:after {
   clear: both;
   content: '.';
   display: block;
   height: 0;
   visibility: hidden;
}
.leftcol {
   width: 50%;
   float: left;
}
.rightcol {
   width: 50%;
   float: right;
}

.message {
    padding: 0.75em;
    margin: 0 -20px;
    margin: 0;
    color: #FFF;
    font-weight: bold;
    border-bottom: 1px solid #FFFFFF;
    font-family: Arial, sans-serif;
    text-align: center;
    /*position: absolute;*/
    top: -25px;
    width: 100%;
    opacity: 0.8;
    z-index: 100;
    box-sizing: border-box;
    transition: 1s ease-in-out;
    box-sizing: border-box;
}
.message a {color:#FFF; }
#success.message {background:green; }
#error.message, #failure.message {background:red; }
#warning.message {background: #ff7; color: #000;}
.message .close {
    background: #FFF;
    border-radius: 100%;
    height: 1.35em;
    width: 1.35em;
    display: block;
    float: right;
    text-align: center;
    cursor: pointer;
    color: #000;
}
.message .close:after {
    content: '+';
    font-size: 1.75em;
    line-height: 0.85em;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    display: block;
}
#success.message .close {color:green; }
#error.message .close, #failure.message .close {color:red; }
#warning.message .close {color: #fff; background-color: #000; }

.code {
    font-family: consolas, courier, "courier new", monospace;
    background-color: #eee;
}
textarea.code {padding:5px; }

.codeblock,
.prettyprint {
    font-family: consolas, courier, "courier new", monospace;
    border: 1px solid #888;
    background-color: #eee;
    padding: .5em;
    margin-bottom: 1em;
    white-space: pre;
    overflow: auto;
    display: block;
}

.fakeoutput {
    border: 2px solid #39c;
    background-color: #eef;
    padding: .5em;
    overflow: auto;
}    

.fineprint {
    font-size: 11px;
}

.print-only {
    display: none;
}

.hidden {display:none; }
#top-links {float:right; margin: 0 0 10px 10px; }
.input_block.required label:after,
.input-block.required label:after {
    color: #C00;
    content: '*';
}

/********************************************************/

.created-updated.fineprint {
    clear: both; 
    margin-top: 20px;
}

#toggle_comments a {
    text-decoration: underline;
}

/* Lined Tables  ************/
table.lined {
    border-collapse: collapse;
    margin: 10px 0;
    font-size: 0.925em;
    background: #FFF;
}
.popup table.lined {font-size:10px; }

table.lined th {
    background: #5f5f5f;
    color: #FFFFFF;
    text-align: left;
}

table.lined th a {color:#FFFFFF; }
/*table.lined tr.even-row,*/
table.lined tbody tr:nth-child(even) > td {background: rgba(224,224,224,0.35);}
/*table.lined tr.odd-row, */
table.lined tr:nth-child(odd) > td {background: rgba(255,255,255,0.1);}

table.lined td, table.lined th {
    border: 1px solid #888888;
    padding: 0.25em 0.4em;
    vertical-align: top !important;
}
table.lined tfoot {font-weight:bold; }

table.lined tr > *.edit, 
table.lined tr > *.delete, 
table.lined tr > *.view, 
table.lined tr > *.attachment {
    max-width: 15px;
    text-align: center;
    vertical-align: top;
}
table.lined tr > *.edit img {}
table.lined tr > *.delete {}
table.lined tr > *.delete img {}
table.lined tr > *.date { }
table.lined tr > *.datetime {width:120px; }
table.lined tr > *.number {text-align:right; }
table.lined tr > *.percent {text-align:right; }
table.lined tr > *.percent:after {content:'%'; }
table.lined tr > *.currency {text-align:right; white-space:nowrap; }
table.lined tr > *.currency:before {content:'$'; }

table.lined th a.sorted {
    /* 
    padding-right: 20px;
    background-position: right center;
    */
    padding-left: 20px;
    background-position: left center;
    background-image: url('/images/sort-white.png');
    background-repeat: no-repeat;
}
table.lined th a.sorted_asc {
    background-image: url('/images/sort-asc-white.png');
}
table.lined th a.sorted_desc {
    background-image: url('/images/sort-desc-white.png');
}

table.hoverable tr:hover > td{
    background: #8CC63F;
    cursor: pointer;
}
.clear {
    clear: both;
}
.col {
    float: left;
    margin-right: 10px;
}
.leftcol {
    width: 50%;
    float: left;
}
.rightcol {
    width: 50%;
    float: right;
}

/* CSS Document for portfolio *******************/

table.portfolio  {
    margin-top: 1em;
    margin-bottom: 1em;
    border: none;
    width: 100%;
    border-collapse: collapse;
}
.portfolio tr {
    border-top: 1px solid #CCCCCC;
}
.portfolio td {
    border: none;
    margin-bottom: 2em;
    height: 10em;
    padding: 10px 5px;
}
.portfolio dt {
    margin-top: 0;
}
.portfolio .example img {
    max-width: 200px;
    text-align: center;
}
.portfolio .example {
    width: 200px;
    text-align: center;
}

.code {
    font-family: consolas, courier, "courier new", monospace;
}

.codeblock {
    font-family: consolas, courier, "courier new", monospace;
    border: 1px solid #888;
    background-color: #eee;
    padding: .5em;
    margin-bottom: 1em;
    white-space: pre;
    overflow: auto;
}

.fakeoutput {
    border: 2px solid #39c;
    background-color: #eef;
    padding: .5em;
    overflow: auto;
}    

.fineprint {
    font-size: 11px;
}

.print-only {
    display: none;
}


dl.column,
ol.column,
ul.column {
    float: left;
    width: 175px;
}
.column {
    float: left;
}

/* Date Adjustmest Module ************************/
#user-search,
#date-adjust,
#work-order-filter {
    float: right;
    font-size: 13px;
    text-align: center;
    margin: 0 0 15px 15px;
    background-color: #F0F0F0;
    border: 1px solid #CCC;    
}
#user-search form,
#date-adjust form {
    padding: 5px 5px 0;
}
#user-search,
#work-order-filter {
    text-align: left;
    padding: 5px;
}
#work-order-filter {
    padding-right: 20px;
    margin-bottom: -15px;
}
#work-order-filter table {
    margin-bottom: 0;
}
#work-order-filter .button {
    margin-top: -25px;
    margin-right: -10px;
}
#date-adjust label,
#date-adjust input {
    display: inline-block;
}
#date-adjust P {
    margin-top: 0.5em;
}
#date-adjust INPUT[type="text"] {
    width: 8em;
}
#date-adjust INPUT[type="submit"] {
    float: none;
}
#date-adjust .preset-dates {
    clear: both;
}
#date-adjust .preset-dates .col {
    width: auto;
    margin: 5px 15px;
    text-align: left;
}
#date-adjust .preset-dates .col a {
    display: block;
}
#work-order-filter .project-assigned,
#work-order-filter .status-priorities{
    /*float: left;*/
}
/**************************************/
/*
a.button {
    background: url("../images/button-sprite-left.png") no-repeat scroll left top transparent;
    color: #EEEEEE;
    cursor: pointer;
    display: block;
    float: left;
    font-weight: bold;
    height: 30px;
    margin-bottom: 10px;
    margin-right: 10px;
    text-align: center;
    text-decoration: none;
}
a.button span {
    background: url("../images/button-sprite-right.png") no-repeat scroll right top transparent;
    display: block;
    font-size: 15px;
    height: 24px;
    margin-left: 9px;
    padding: 6px 9px 0 0;
}
a.button:hover {
    background-position: left bottom;
}
a.button:hover span {
    background-position: right bottom;
}
*/
/*
a.button,
span.button {
    background: url("../images/button-sprite-left.png") no-repeat scroll left top transparent;
    cursor: pointer;
    display: block;
    float: left;
    height: 30px;
    margin-bottom: 10px;
    margin-right: 10px;
    text-align: center;
    text-decoration: none;
}
a.button span,
span.button button,
span.button input {
    background: url("../images/button-sprite-right.png") no-repeat scroll right top transparent;
    display: block;
    font-size: 15px;
    height: 24px;
    margin-left: 9px;
    padding: 6px 9px 0 0;
    border: none;
    color: #EEEEEE;
    font-weight: bold;
    font-family: Helvetica,Arial,sans-serif;
}
span.button button,
span.button input {
    padding: 0 9px 0 0;
    height: 30px;
    cursor: pointer;
}
a.button:hover,
span.button:hover {
    background-position: left bottom;
}
a.button:hover span,
span.button:hover input {
    background-position: right bottom;
}
*/
a.button, 
span.button, 
input.button,
button.button {
    background: #000;
    border: 2px solid #000;
    /* border-radius: 2em; */
    display: inline-block;
    padding: 0.5em 1em;
    margin-right: 5px;
    color: #FFF;
    font-weight: bold;
    transition: background-color 0.3s, border 0.3s, color 0.3s;
    box-sizing: border-box;
    text-decoration: none;
    cursor: pointer;
}
.button.ghost {
    border-color: #000;
    background: linear-gradient(rgba(255, 255, 255, 0.5),rgba(255, 255, 255, 0.5));
    color: #000;
}
a.button:hover, 
span.button:hover, 
input.button:hover,
button.button:hover {
    background: #444;
    border-color: #444;
    color: #FFF;
}
.button button,
.button input[type=submit] {
    background: none;
    color: #fff;
    border: none;
    font-weight: bold;
    margin: -5px -10px;
    padding: 5px 10px;
    cursor: pointer;
}
.button.mini, 
.button.fineprint {
    font-size: 0.9em; 
    padding: 1px 6px;
    border-width: 1px;
}

option.child {padding-left:10px; }
input:disabled {
    /* opacity: 0; */
}
input[type="button"]:disabled,
input[type="submit"]:disabled,
.button:disabled {
    opacity: 0.5;
}
.next {
    float: right !important;    
}
.inline,
.input_block label.inline,
.input_block input.inline {
    display: inline-block;
}

.hidden {
    display: none !important;
}
.invisible {
    visibility: hidden !important;
}
textarea {
    font: inherit;
    padding: 2px;
}
input, select {
    font-size: inherit;
    font-weight: inherit;
}

table.entity {width:100%; }
table.entity td {padding:3px; }

table.entity td select,
table.entity td input[type=email],
table.entity td input[type=number],
table.entity td input[type=text] {
    width: auto;
    min-width: 170px;
    padding: 2px;
}
table.entity td.key {
    width: 220px;
    text-align: right;
    font-weight: bold;
}
table.entity td.key:after {content:':'; }
table.entity tfoot td {font-style:italic}

table.block, 
table.block caption,
table.block thead, 
table.block tbody, 
table.block tfoot, 
table.block tr, 
table.block tr th,
table.block tr td { 
    display: block;
}
table.block.entity tr {
    margin: 0.5em 0; 
}
table.block.entity tr td.key {
    text-transform: uppercase;
    font-size: 0.8em;
    width: auto;
    text-align: inherit;
}
table.block.entity td select, 
table.block.entity td input[type=text] {
    min-width: 0;
}

.time-report table {
    border-collapse: collapse;
}
.time-report table.totals {
    font-weight: bold;
}
.time-report table td{
    padding: 3px 5px;
}
.time-report table tfoot td {
    font-style: italic;
    border-top: 1px solid #000;
}
.time-report table tfoot td:not(.new_invoice) {
    text-align: right;
}
.time-report table td.project {
    padding-left: 20px;
    width: 150px;
}
.time-report table td.time,
.time-report table td.percentage {
    text-align: right;
    width: 50px;
}
fieldset.time-report {
    padding: 15px;
}
fieldset.time-report legend {
    font-size: 16px;
    font-weight: bold;
}
.add {
    text-decoration: none;
    cursor: pointer;
}

.add:before {
    padding: 0;
    display: inline-block;
    width: .85em;
    cursor: pointer;
    background: #8cc63f;
    border-radius: 100%;
    text-align: center;
    color: #FFF;
    height: .85em;
    content: '+';
    font-size: 1.8em;
    font-weight: bold;
    line-height: 0.85em;
    margin-right: 0.25em;
    text-align: center;
    vertical-align: -0.1em;
}
.button.add {
    padding-left: 0.5em;
}
.button.add:before {
    margin-top: -0.1em;
    margin-bottom: -0.1em;
}
a.add {
    /* float: right; */
}
a.add.left {
    /* padding: 3px 0 3px 25px; */
    /* background: url(../images/add.png) left center no-repeat; */
    /* float: left; */
}
a.add:hover {
    text-decoration: underline;
}
optgroup {
    font-size: .8em
}
optgroup option {
    margin-left: 15px;
}
td.datetime {
    width: 115px;
}
.reset {
    border-left: 1px solid #000000;
    float: left;
    margin-left: 10px;
    margin-top: 3px;
    padding-left: 10px;
}
p.more {
    text-align: right;
}
a.more {
    float: right;
}

a.icon {
    display: inline-block;
    width: 75px;
    height: 100px;
    font-size: 11px;
    text-decoration: none;
    text-align: center;
    margin-left: 8px;
}
a.icon:first-child {
    margin-left: 0;
}
a.icon:hover {
    text-decoration: underline;
}
a.icon img {
    display: block;
    max-width: 75px;
    max-height: 75px;
    margin: 0 auto 5px;
}
p.empty {
    color: #888;
}

sup.new {
    color: red;
}

/* dashboard nav : begin */
#content ul.dashboard-nav {
    margin-left: 0;
}
#content ul.dashboard-nav li {
    list-style: none;
    font-size: 24px;
    margin: 10px 0;
    padding: 5px;
}
#content ul.dashboard-nav li.no-link span {
    font-weight: bold;
}
#content ul.dashboard-nav li.no-permission span {
    opacity: 0.4;
}
#content ul.dashboard-nav li.no-file span {
    opacity: 0.7;
    color: red;
}
#content ul.dashboard-nav li li {
    margin-left: 30px;
}
#content ul.dashboard-nav ul ul {
    margin-bottom: 0;
}
#content ul.dashboard-nav li a,
#content ul.dashboard-nav li span {
    text-decoration: none;
    padding: 5px 5px 5px 35px;
    background: url(/images/arrow-bullet-20.png) 5px center no-repeat;
    font-weight: normal;
}
#content ul.dashboard-nav li a:hover {
    background-color: #ccc;
}
/* dashboard nav : end */

.box {
    padding: 10px; 
    background: #EEE;
    border: 1px solid #CCC;
}

form.box .col {
    margin: 0;
}
form.box .col + .col {
    margin-left: 1.5em;
    padding-left: 1.5em;
    border-left: 1px solid #CCC
}
form.box .input_block {
    margin: 0.25em 0;
}
form.box .input_block * {
    display: inline-block;
}

form.box .input_block > label {
    width: 7em;
    text-align: right;
}
form.box .input_block > label:after {
   content: ': ';
}
form.box .input_block select,
form.box .input_block textarea,
form.box .input_block input[type=text],
form.box .input_block input[type=email],
form.box .input_block input[type=number],
form.box .input_block input[type=password] {
    padding: 0.25em;
    font-size: inherit;
    width: 13em;
}
form.box .input_block select.not-equal {
    width: auto;
    margin-right: -0.4em;
}
form.box .input_block input.hasDatepicker {
    width: 5.75em;
    margin-right: -0.4em;
}

form.skinny-form .input_block {
    display: block;
    margin: 0.75em 0;
}
form.skinny-form .input_block:not(.checkbox) label {
    display: block;
    /*font-weight: bold;*/
    font-size: 0.9em;
    margin-bottom: 0.25em
}
form.skinny-form input[type=text],
form.skinny-form input[type=email],
form.skinny-form input[type=password],
form.skinny-form input[type=number],
form.skinny-form select,
form.skinny-form textarea {
    display: block;
    padding: 0.25em;
    width: 100%;
}

.radio-input-block {
    display: block;
}

#overlay-container {position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.5); color:#FFF; text-align:center; font-size:2em; }
#overlay-container .overlay-content {
    position: relative; 
    top: 50%; 
    -webkit-transform: translateY(-50%); 
    transform: translateY(-50%); 
}
#overlay-container .overlay-content .success:after {background:url(/images/check.png) center center no-repeat; background-size:contain; height:40px; display:block; content:' '; }

a#sb-nav-close:before {content:'x'; background:#C00; color:#FFF; top:0; right:0; position:fixed; padding:3px; width:30px; height:30px; font-size:40px; text-align:center; }


body.shadowbox #header, 
body.shadowbox #footer, 
body.shadowbox #navigation, 
body.shadowbox #breadcrumbs, 
body.shadowbox #sticky-footer-push {display:none; }
body.shadowbox #bottom {padding-bottom:0; min-height:0; }

#change_log tr.updater,
#change_log tr.updated_by,
#change_log tr.title,
#change_log tr.username,
#change_log tr.password,
#change_log tr[class^=contact],
#change_log tr[class$=_id] {display:none; }

.box-delete {
    background: #C00;
    /* -webkit-transform: rotate(45deg); */
    /* transform: rotate(45deg); */
    color: #eee;
    position: absolute;
    top: -0.5em;
    right: -0.5em;
    border-radius: 50%;
    display: block;
    line-height: 0.75em;
    padding: 0 .075em;
    cursor: pointer;
    border: 0.1em solid #eee;
    font-size: 2em;
}

.box-delete:hover {
    box-shadow: 0 0 0.1em 0.05em rgba(0,0,0,0.5);
}

.box-delete:after {
    line-height: 0.75em;
    content: '\00D7';
}

.actions {
    position: absolute;
    top: 0.5em;
    right: 0;
    z-index: 1;
}

.actions .expand_collapse {
    right: 0;
    position: absolute;
    height: 1em;
}

.actions:before {
    display: inline-block;
    border: 0.25em solid transparent;
    height: 1em;
    width: 1em;
    border-left-color: #aaa;
    border-top-color: #aaa;
    -webkit-transform: rotate(225deg) translate(25%, 25%);
    transform: rotate(225deg) translate(35%, 10%);
    font-size: 0.8em;
    cursor: pointer;
    content: '';
}

.actions:after {
    height: 1.5em;
    width: 1.5em;
    font-size: 0.8em;
    cursor: pointer;
    content: '';
    position: absolute;
    top: -0.25em;
    right: 0;
}

.actions > div {
    display: none;
    border: 1px solid #CCC;
}

.actions.expanded > div {
    display: block;
    background: #FFF;
    position: absolute;
    top: 1em;
    right: 0;
    box-shadow: 1px 2px 2px rgba(0,0,0,0.5);
    z-index: 100;
}

.actions > div > * {
    display: block;
    padding: 0.25em 1em;
    border-top: 1px solid #CCC;
    cursor: pointer;
    white-space: nowrap;
    color: #000;
    text-decoration: none;
}

.actions > div > a:hover,.actions > div > span:hover {
    background: #F8F8F8;
}

.actions > div > :first-child {
    border: none;
}

.close-btn {
    padding: 0 0.25em;
    background: #C00;
    color: #FFF;
    font-weight: bold;
    font-size: 1.4em;
    line-height: 0.6em;
    border-radius: 100%;
    cursor: pointer;
    vertical-align: -3px;
}
.close-btn:after {
    content: '\00D7';
}
.close-btn:hover {
    background: #800;
}

.flex {display: flex; }

.input-block.transaction_type label[for*="credit"] {background-color: #9edf9e;}
.input-block.transaction_type label[for*="debit"] {background-color: #ff8989; }
.input-block.transaction_type label[for*="transfer"] {}
