.icon-invoice,
div.issue .icon-invoice,
#query_form .icon-invoice,
#context-menu .icon-invoice,
#block-my_unpaid_time .icon-invoice {
    background-image: url(../images/invoice.png);
}
a.invoice.paid,
a.invoice.paid:link,
a.invoice.paid:visited {
    text-decoration: line-through;
    color: #999;
}
table.time-entries.invoice tr.group td {
    padding: 0.5em 0 0.5em 0;
}
table.time-entries.invoice.with-projects tr.group td.issue {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    background-color: #fff;
    padding-left: 1.5em;
    text-align: left;
}
table.time-entries.invoice tr.group td.issue.unpayable {
    background-color: #fff2f2;
}
table.time-entries.invoice tr.group a.icon-file {
    transition: opacity 0.2s;
    opacity: 0;
}
table.time-entries.invoice tr.group:hover a.icon-file {
    opacity: 1;
}
table.time-entries.invoice span.issue-tree {
    color: #777;
}
table.time-entries.invoice {
    border-collapse: collapse;
    margin-bottom: 10px;
    width: 100%;
}
table.time-entries.invoice tr {
    cursor: default;
}
form table.time-entries.invoice tr.time-entry:hover {
    background-color: #ffffdd;
}
table.time-entries.invoice td.spent_on {
    white-space: nowrap;
    text-align: left;
    padding-left: 1.5em;
}
table.time-entries.invoice.with-projects td.spent_on {
    padding-left: 3em;
}
table.time-entries.invoice td.hours {
    white-space: nowrap;
    text-align: center;
    padding-left: 1em;
    padding-right: 1em;
}
table.time-entries.invoice td.comments {
    padding-right: 1em;
    width: 90%;
}
table.time-entries.invoice td.objection {
    text-align: left;
    font-size: 90%;
    color: #900;
}
table.time-entries.invoice span.sum,
table.time-entries.invoice span.hours {
    margin-left: 1em;
    float: right;
    color: #777;
}
table.time-entries.invoice span.additional-costs {
    margin-left: 0.5em;
    font-size: 90%;
    color: #777;
}
table.time-entries.invoice span.sum .value,
table.time-entries.invoice span.hours .value,
table.time-entries.invoice span.additional-costs .value {
    font-weight: bold;
}
table.time-entries tr.even.disputable,
table.time-entries tr.even.unpayable {
    background-color: #fff2f2;
}
table.time-entries tr.odd.disputable,
table.time-entries tr.odd.unpayable {
    background-color: #ffe5e5;
}
table.time-entries tr.disputable td.hours {
    color: #900;
}
table.time-entries tr.paid,
table.time-entries tr.paid td.hours {
    color: #999;
}
table.time-entries tr.invoiced td.hours {
    color: #178217;
}
table.time-notes td.issue {
    text-align: left;
}
.mypage-box table.time-entries tr.disputable {
    background-color: #fff2f2;
}
.mypage-box table.time-entries.invoice td.issue {
    padding-left: 1.5em;
}
.mypage-box table.time-entries.invoice td.issue a.icon-add {
    vertical-align: text-bottom;
    transition: opacity 0.2s;
    opacity: 0;
}
.mypage-box table.time-entries.invoice td.issue:hover a.icon-add {
    opacity: 1;
}
.mypage-box table.time-entries.invoice td.hours,
.mypage-box table.time-entries.invoice td.sum {
    padding: 0 2px;
    text-align: right;
    font-weight: normal;
    white-space: nowrap;
    width: 10%;
}
.mypage-box table.time-entries.invoice tr.assigned-to-others a.issue:not(.closed) {
    color: #666;
}
.mypage-box table.time-entries.invoice tr.group td.hours,
.mypage-box table.time-entries.invoice tr.group td.sum {
    font-weight: bold;
}
.mypage-box table.time-entries.invoice tr.total td {
    border-top: 1px solid #bbb;
    padding: 0.5em 0 0.5em 0;
    font-weight: bold;
}
h3.time-entries, h3.invoice-comments {
    border-bottom: 1px dotted #bbb;
}
form.invoice-form input[type=text]:disabled,
form.invoice-form input[type=date]:disabled,
form.edit_time_entry input[type=text]:disabled {
    background-color: #f6f7f8;
}
p.invoice_flags_wrap {
    float: right;
}
form.invoice-form p.invoice_flags_wrap {
    margin-right: 0;
}
form.invoice-form p.invoice_flags_wrap label {
    margin-right: 0.5em;
}
form.invoice-form #additional_costs {
    margin-left: 0.5em;
    font-size: 90%;
    color: #888;
}
form.invoice-form #existing-attachments span.filename {
    display: inline-block;
    width: 270px;
}
form.invoice-form #existing-attachments span.author {
    font-size: 0.9em;
    color: #888;
}
div.invoice p.invoice_flags_wrap {
    margin: 0;
}
div.invoice span.accepted,
div.invoice span.paid {
    text-transform: uppercase;
    padding: 2px 4px 1px 4px;
    margin-right: 0.5em;
    border-radius: 2px;
    font-weight: bold;
    font-size: 75%;
    color: #fff;
}
div.invoice span.accepted {
    background-color: #3ba8de;
}
div.invoice span.paid {
    background-color: #2a2;
}
div.invoice p.author {
    margin-top: 0;
}
div.invoice p.author abbr, .invoice-comment h4 abbr {
    border-bottom: none;
}
div.invoice .attribute {
    padding-left: 180px;
    min-height: 1.8em;
}
div.invoice .attribute .label {
    text-overflow: ellipsis;
    margin-left: -180px;
    font-weight: bold;
    width: 170px;
    float: left;
}
div.invoice .attribute .value {
    text-overflow: ellipsis;
}
.invoice-comment h4 {
    border-bottom: 1px solid #ccc;
}
input[type=submit].invoice-pay {
    background-color: #2a2;
}
table.time-entry-invoices tr.overdue td.due_date {
    color: #c22;
}
div.issue .spent-time.attribute .value .icon-invoice, td.spent-time .icon-invoice {
    margin-left: 4px;
}
div.issue span.unpayable {
    background-color: #249bd6;
}
span.sort {
    background-position: 100% 50%;
    background-repeat: no-repeat;
    padding-right: 16px;
}
span.sort.asc {
    background-image: url(../../../images/sort_asc.png);
}
span.sort.desc {
    background-image: url(../../../images/sort_desc.png);
}
body.controller-time_notes .query-totals {
    margin-top: -2.3em;
}
p.legend span.rejectable-box {
    background-color: #ffe5e5;
    display: inline-block;
    margin-right: 2px;
    height: 10px;
    width: 10px;
}
input#time_entry_objection {
    width: 90%;
}
