table.table {
    text-align: center;
}

table.table.project-list.hidden {
    display: none;
}

.table td {
    padding: 0 10px;
    vertical-align: middle;
}

/* Used to designate from main style, e.g. deadline not set, no latest activity, project not ready... */
.table td .not,
.table td .not-ready {
    font-style: italic;
}

.table tbody tr:hover {
    background: #333941;
}

.table th:first-child {
    text-align: left;
}

.table th.name {
    width: 220px;
}

.table th.resource {
    width: 420px;
}

.table th.resource.with-deadline:not(.with-priority) {
    width: 310px;
}

.table th.resource.with-priority:not(.with-deadline) {
    width: 330px;
}

.table th.resource.with-deadline.with-priority {
    width: 220px;
}

.table th.tag {
    width: 330px;
}

.table th.population,
.table th.deadline {
    width: 90px;
}

.table th.code,
.table th.priority {
    width: 70px;
}

.table th.latest-activity,
.table th.all-strings {
    width: 140px;
}

.table th.unreviewed-status {
    position: relative;
    width: 16px;
}

.table-sort th.unreviewed-status i {
    margin: -13px 0 0 13px;
}

.table .unreviewed-status span {
    position: absolute;
    font-size: 18px;
    margin: -15px 0 0 -5px;
}

.table .progress {
    text-align: left;
}

.table h4 {
    overflow: hidden;
    padding-left: 1px; /* Needed to avoid cutting off text due to overflow: hidden; */
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.table .name h4 {
    width: 219px;
}

.table .resource h4 {
    width: 419px;
}

.table .resource.with-deadline:not(.with-priority) h4 {
    width: 309px;
}

.table .resource.with-priority:not(.with-deadline) h4 {
    width: 329px;
}

.table .resource.with-deadline.with-priority h4 {
    width: 219px;
}

.table h4 a {
    font-size: 15px;
    line-height: 47px;
    padding: 12px 0 11px;
}

.table a {
    color: #ebebeb;
}

.table a:hover {
    color: #7bc876;
}

/* Selector must also match heading-info */
.deadline time.approaching {
    color: #ffa10f;
}

/* Selector must also match heading-info */
.deadline time.overdue {
    color: #f36;
}

.table td.code div {
    width: 70px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.table td.code a {
    color: #7bc876;
    line-height: 47px;
    padding: 15px 5px 14px;
}

.table td.priority {
    padding-left: 15px;
}

.table td.priority .fa {
    margin-left: -1px;
    font-size: 12px;
}

.table .latest-activity .latest {
    display: block;
    position: relative;
    width: 140px;

    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.table .latest-activity time {
    white-space: nowrap;
}

.table .latest-activity time:hover {
    color: #ebebeb;
}

.table .latest-activity .tooltip {
    display: block;
    background: #1c1e21;
    border-radius: 10px;
    bottom: 30px;
    color: #ebebeb;
    left: -100px;
    padding: 10px;
    position: absolute;
    text-align: left;
    width: 320px;
    z-index: 20;
}

.table .latest-activity .tooltip:after {
    content: '';
    position: absolute;
    border: 10px solid;
    border-color: #1c1e21 transparent transparent transparent;
    bottom: -20px;
    left: 160px; /* Must be (tooltip width + tooltip padding + bottom) / 2 */
    clip: rect(0 20px 10px 0);
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 50%, 0 50%);
    clip-path: polygon(0 0, 100% 0, 100% 50%, 0 50%);
}

.table .latest-activity .tooltip .quote {
    color: #7bc876;
    font-size: 30px;
}

.table .latest-activity .tooltip .translation {
    display: block;
    margin: -20px 0 0 40px;
    overflow-wrap: break-word;
}

.table .latest-activity .tooltip footer {
    color: #888888;
    font-style: italic;
    height: 48px;
    margin-top: 10px;
    position: relative;
}

.table .latest-activity .tooltip footer .wrapper {
    bottom: 0;
    position: absolute;
    right: 0;
}

.table .latest-activity .tooltip footer .translation-details {
    display: inline-block;
    padding-top: 8px;
    text-align: right;
}

.table .latest-activity .tooltip footer .translation-action {
    overflow-y: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 264px;
}

.table .latest-activity .tooltip footer .translation-action a {
    color: #7bc876;
}

.table .latest-activity .tooltip footer img {
    display: inline-block;
    margin-left: 8px;
}

.table .progress .chart-wrapper {
    position: relative;
}

.table .progress .chart-wrapper .chart {
    display: table;
    font-size: 0;
    height: 3px;
    margin-top: 2px;
    table-layout: fixed;
    width: 295px;
}

.table .progress .chart-wrapper .chart span {
    display: table-cell;
    height: 100%;
}

.table .progress .chart-wrapper .percent {
    position: absolute;
    right: 25px;
    top: -7px;
}

.table .progress .chart-wrapper .unreviewed-status {
    color: #3f4752;
    font-size: 18px;
    position: absolute;
    right: 0;
    top: -9px;
}

.table .progress .chart-wrapper .unreviewed-status.pending {
    color: #4fc4f6;
}

.table .progress .chart-wrapper .translated {
    background: #7bc876;
}

.table .progress .chart-wrapper .fuzzy {
    background: #fed271;
}

.table .progress .chart-wrapper .warnings {
    background: #ffa10f;
}

.table .progress .chart-wrapper .errors {
    background: #f36;
}

.table .progress .chart-wrapper .missing {
    background: #5f7285;
}

.table tr:hover .progress .chart-wrapper {
    display: none;
}

.table .progress .legend {
    display: none;
    margin-bottom: -9px;
}

.table tr:hover .progress .legend {
    display: block;
}

.table .progress .legend ul {
    font-size: 0;
    margin-top: -1px;
}

.table .progress .legend li {
    display: inline-block;
    padding: 0;
    text-align: center;
    width: 51px;
}

.table .progress .legend li:last-child {
    width: 54px;
}

.table .progress .legend li a {
    color: #aaaaaa;
    display: block;
    margin-top: -5px;
}

.table .progress .legend li .title {
    font-size: 10px;
    font-weight: 400;
    line-height: 10px;
    text-transform: uppercase;
}

.table .progress .legend li.translated .title {
    color: #7bc876;
}

.table .progress .legend li.fuzzy .title {
    color: #fed271;
}

.table .progress .legend li.warnings .title {
    color: #ffa10f;
}

.table .progress .legend li.errors .title {
    color: #f36;
}

.table .progress .legend li.missing .title {
    color: #7c8b9c;
}

.table .progress .legend li.unreviewed .title {
    color: #4fc4f6;
}

.table .progress .legend li.all .title {
    color: #aaaaaa;
}

.table .progress .legend li .value {
    font-size: 15px;
    line-height: 22px;
}

.table .progress .legend li a:hover .title {
    color: #ebebeb;
}

.table .progress .legend li a:hover .value {
    color: #ebebeb;
    font-weight: 700;
}

#heading .banner .title {
    color: #7bc876;
}

#heading .legend {
    width: 360px;
}

#heading .legend li,
#heading .legend li.unreviewed {
    padding-left: 0;
}

#heading .legend li.banner {
    padding: 0;
}

body.top-contributors #heading .legend li .status.fa {
    display: none;
}

.controls .submenu .links {
    text-align: right;
}

.contributor {
    display: inline-block;
    position: relative;
    width: 580px;
}

.contributor img {
    margin-right: 5px;
}

.contributor p {
    overflow: hidden;
    padding-left: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 520px;

    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.contributor p.name {
    display: inline-block;
    font-size: 1.5em;
    height: 1.5em;
}

.contributor p.role {
    color: #ebebeb;
    left: 67px;
    position: absolute;
    top: 42px;
}

th:last-child,
.stats .details {
    text-align: center;
    width: 360px;
}

th:last-child {
    position: relative;
}

th:last-child sup {
    top: 7px;
    position: absolute;
}

.stats .details div {
    border: none;
}

.stats .details div.approved {
    color: #7bc876;
}

.stats .details div.fuzzy {
    color: #fed271;
}

.stats .details div.unreviewed {
    color: #4fc4f6;
}

.stats .details div p {
    font-size: 20px;
    padding: 3px 0 0;
}

ul {
    list-style: none;
    margin: 0;
}

#heading:not(.simple) {
    padding: 30px 0;
}

#heading:not(.simple) h1 {
    padding-bottom: 30px;
}

#heading h1 a {
    color: #ebebeb;
    font-weight: bold;
    font-size: 32px;
}

#heading h1 .small {
    color: #7bc876;
    font-weight: 300;
    padding-left: 5px;
}

#heading .details,
#heading .legend {
    font-weight: 300;
}

#heading .details li,
#heading .legend li {
    line-height: 24px;
}

#heading .details {
    float: left;
    width: 360px;
}

#heading .details .title {
    color: #aaaaaa;
    padding-right: 5px;
    position: relative;
    text-transform: uppercase;
}

#heading .details .title sup {
    position: absolute;
    top: -5px;
}

#heading .details .value {
    color: #aaa;
    float: right;
}

#heading .details .value a {
    color: #ffffff;
}

#heading .details .value a:hover {
    color: #7bc876;
}

#heading .details .priority .value {
    margin-top: 6px;
}

#heading .details .value.overflow {
    max-width: 275px;
    overflow: hidden;
    padding-left: 1px; /* Needed to avoid cutting off overlay due to overflow: hidden; */
    padding-right: 1px; /* Needed to avoid cutting off overlay due to overflow: hidden; */
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#heading .details .resources .value.overflow {
    max-width: 280px;
    white-space: normal;
}

#heading .progress {
    float: left;
    margin: -10px 65px 0;
    position: relative;
    text-align: center;
}

#heading .progress .number {
    display: none;
    font-size: 50px;
    font-weight: bold;
    left: 0;
    right: 0;
    top: 25px;
    margin: 0;
    position: absolute;
}

#heading .progress .number:after {
    content: '%';
    color: #888888;
    display: block;
    font-size: 20px;
    font-weight: 100;
    line-height: 10px;
}

#heading .legend {
    float: left;
    width: 190px;
}

#heading .legend li {
    color: #aaaaaa;
    padding-left: 25px;
    position: relative;
    text-align: left;
    text-transform: uppercase;
}

#heading .legend li a {
    color: #ffffff;
}

#heading .legend li:hover a {
    color: #7bc876;
}

#heading .legend li .status.fa {
    left: 0;
    top: 4px;
}

#heading .legend li span.value {
    color: #aaa;
    float: right;
}

#heading .legend li a span.value {
    color: #ffffff;
}

#heading .legend li:hover a span.value {
    color: #7bc876;
}

#heading .non-plottable {
    float: right;
}

#heading .non-plottable p {
    color: #aaa;
    font-weight: 300;
    line-height: 24px;
    text-align: right;
    text-transform: uppercase;
}

#heading .non-plottable a p {
    color: #ffffff;
}

#heading .non-plottable a:hover p {
    color: #7bc876;
}

#heading .non-plottable p.value {
    font-size: 20px;
}

#heading .non-plottable .all {
    padding-bottom: 21px;
}

#heading .non-plottable .unreviewed .status.fa {
    left: auto;
    position: relative;
    top: -1px;
}

#heading .non-plottable .unreviewed .status.fa:before {
    color: #4d5967;
    font-size: 18px;
}

#heading .non-plottable .unreviewed.pending .status.fa:before {
    color: #4fc4f6;
}

#info-wrapper .edit-info .fa {
    padding-right: 5px;
}

#info-wrapper .read-write-info textarea {
    background: #333941;
    border: 1px solid #4d5967;
    border-radius: 3px;
    color: #ffffff;
    font-weight: 300;
    margin-bottom: 10px;
    padding: 5px;
    width: 100%;

    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

#info-wrapper .read-write-info .toolbar .subtitle {
    color: #aaa;
    float: left;
    text-transform: uppercase;
}

#info-wrapper .controls {
    text-align: right;
}

#info-wrapper .controls .cancel {
    display: none;
    color: #7bc876;
    margin: 9px;
    text-transform: uppercase;
}

#info-wrapper .controls .save {
    display: none;
}

.download-selector {
    float: right;
}

.download-selector .selector {
    padding-right: 0;
    padding-top: 0;
}

.download-selector .selector .fa {
    float: right;
    background: #3f4752;
    border-radius: 3px;
    box-sizing: border-box;
    color: #aaa;
    font-size: 16px;
    height: 32px;
    width: 32px;
    padding-top: 8px;
    text-align: center;
}

.download-selector .selector .fa:hover {
    background: #272a2f;
}

.download-selector.opened .selector .fa {
    background: #272a2f;
    border-radius: 2px 2px 0 0;
}

.download-selector.opened .menu {
    display: block;
    top: 32px;
    right: 0;
    bottom: auto;
    width: 220px;
}

.download-selector.opened .menu li {
    padding-bottom: 0;
    padding-top: 0;
}

.download-selector.opened .menu li a {
    display: block;
    line-height: 22px;
}
