@media (min-width: 979px) {
    body {
        padding-top: 40px;
    }

    body.extended {
        padding-top: 108px;
    }
}

body {
    padding-bottom: 50px;
}

body.model-opened {
    overflow: hidden;
}

body > .container {
    margin-top: 20px;
}

body.responsive > .container {
    width: calc(100% - 40px);
    max-width: 1865px;
    margin: 20px 20px 0px;
}

@media not print {
    .print {
        display: none;
    }
}

.loading {
    position: relative;
    overflow: hidden;
}

.loading .loader {
    display: block;
}

.loader {
    position: absolute;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
    height: 100%;
    z-index: 20000;
    background: rgba(255, 255, 255, 0.8) url('/assets/img/loader.gif') center center no-repeat;
}

body > .loader {
    position: fixed;
}

:not(body).loading:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    background: rgba(255, 255, 255, 0.8) url('/assets/img/loader.gif') center center no-repeat;
    z-index: 5000;
}

:not(body).loading.contain:after {
    background-size: contain;
    top: 3px;
    left: 3px;
    right: 3px;
    bottom: 3px;
}

.grid-view.loading,
.grid-view table.loading {
    min-height: 100px;
}

.navbar [class^='icon-'],
.navbar [class*=' icon-'],
.navbar [class^='fa-'],
.navbar [class*=' fa-'] {
    display: inline-block;
    width: 15px;
    text-align: center;
}

.navbar-fixed-top {
    z-index: 10000;
}

@media (min-width: 979px) {
    .container,
    .navbar-static-top .container,
    .navbar-fixed-top .container,
    .navbar-fixed-bottom .container {
        min-width: 979px;
    }
}

.navbar a.brand {
    width: 40px;
    height: 40px;
    background: transparent url('/assets/img/logo.png') center / contain;
    padding: 0px;
    margin: 0px 15px;
}

.navbar .divider-vertical {
    margin: 0px;
}

p {
    margin: 0px;
}

div.error:not(.select2-container):not(.modal) {
    width: 500px;
    margin: 0px auto;
    padding-top: 9px;
}

select option:disabled {
    background: #f4f4f4;
}

ins.diff,
ins.diff-decoration,
del.diff,
del.diff-decoration {
    display: inline-block;
    min-width: 3px;
    width: auto;
}

ins.diff:empty,
ins.diff:-moz-only-whitespace,
ins.diff-decoration:empty,
ins.diff-decoration:-moz-only-whitespace,
del.diff:empty,
del.diff:-moz-only-whitespace,
del.diff-decoration:empty,
del.diff-decoration:-moz-only-whitespace {
    text-decoration: none;
    background: none;
}

ins.diff,
del.diff {
    text-decoration: none;
}

ins.diff,
ins.diff-decoration {
    background: #94f094;
}

ins.diff-decoration {
    color: #468847;
}

del.diff,
del.diff-decoration {
    background: #f09494;
}

del.diff-decoration {
    color: #b94a48;
}

.tooltip-inner ins.diff,
.tooltip-inner ins.diff-decoration,
.tooltip-inner del.diff,
.tooltip-inner del.diff-decoration {
    background: transparent;
}

.tooltip-inner ins.diff,
.tooltip-inner ins.diff-decoration {
    color: #3aea3d;
}

.tooltip-inner del.diff,
.tooltip-inner del.diff-decoration {
    color: #f80400;
}

*.diff-ins {
    color: #333333;
    background: #e1fbe1;
}

*.diff-del {
    color: #aa3333;
    background-color: #ffeaea;
}

ins.diff:empty:after,
*.diff-ins:empty:after,
ins.diff.space:after,
del.diff:empty:after,
*.diff-del:empty:after,
del.diff.space:after {
    content: '.';
    visibility: hidden;
}

.is_stuck {
    z-index: 2000;
}

.modal-backdrop {
    z-index: 11000;
}

.modal {
    z-index: 11010;
    border-spacing: 0px;
}

.model-opened .modal {
    overflow-x: hidden;
    overflow-y: auto;
}

.modal.error {
    color: #b94a48;
    background-color: #f2dede;
}

.modal.error .modal-footer {
    border-color: #eed3d7;
    background-color: #f2d4d4;
    box-shadow: inset 0 1px 0 #f2dede;
}

.modal > form {
    margin-bottom: 0px;
}

.modal.centered {
    top: 50%;
    transform: translateY(-50%);
}

.modal.centered.fade.in {
    top: 50%;
}

.login-form {
    position: relative;
    width: 332px;
    margin: 0px auto;
    padding-bottom: 9px;
}

.login-form .input-prepend {
    width: 252px;
}

.login-form button {
    position: absolute;
    top: 19px;
    bottom: 19px;
    right: 19px;
    width: 70px;
    font-size: 30px;
}

.container-fluid {
    padding: 0px;
}

.dashboard .welcome {
    display: table;
    width: 100%;
    margin-bottom: 20px;
}

.dashboard .welcome h1 {
    display: table-cell;
    vertical-align: middle;
}

.dashboard .welcome > div {
    width: 600px;
    display: table-cell;
    padding-top: 10px;
}

.dashboard .welcome .quick-actions {
    max-width: 425px;
    display: table;
    table-layout: fixed;
    margin: 0px 0px 0px auto;
}

.dashboard .welcome .quick-actions a {
    position: relative;
    display: table-cell;
    width: 63px;
    height: 74px;
    white-space: normal;
    line-height: 14px;
    vertical-align: middle;
}

.dashboard .welcome .quick-actions a .pinned {
    position: absolute;
    top: 2px;
    right: 2px;
    font-size: 9px;
    color: #999999;
}

.dashboard .stats .well dl {
    margin: 0px;
}

.tabs-section > ul.nav-tabs {
    margin-bottom: 0px;
    border-bottom-color: transparent;
}

.tabs-section > ul.nav-tabs li {
    margin-bottom: -2px;
}

.tabs-section > ul.nav-tabs li.active a {
    background-color: rgba(245, 245, 245, 1);
    border-color: #ddd;
    border-bottom-color: transparent;
}

.tabs-section > ul.nav-tabs li:not(.active) a {
    background-color: rgba(245, 245, 245, 0.15);
}

.tabs-section > ul.nav-tabs li:not(.active) a:hover {
    background-color: rgba(245, 245, 245, 0.5);
    border-color: #ddd;
    border-bottom-color: transparent;
}

.tabs-section > ul.nav-tabs li.notice.active a {
    background-color: rgba(255, 153, 204, 1);
    border-color: #dd55aa;
    border-bottom-color: transparent;
}

.tabs-section > ul.nav-tabs li.notice:not(.active) a {
    background-color: rgba(255, 153, 204, 0.15);
}

.tabs-section > ul.nav-tabs li.notice:not(.active) a:hover {
    background-color: rgba(255, 153, 204, 0.5);
    border-color: #dd55aa;
    border-bottom-color: transparent;
}

.tabs-section .section {
    border-top-left-radius: 0px;
}

.section {
    border: 1px solid #e3e3e3;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
    -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
    margin-bottom: 20px;
}

.section.notice {
    border-color: #dd55aa;
}

.section.notice > header {
    background-color: #ff99cc;
}

.section.notice.notice-green {
    background-color: #5bb75b;
    border-color: #397739;
}

.section.notice.notice-green > header {
    background-color: #5bb75b;
}

.section[data-allow-minimize='1'].minimized > .content {
    display: none;
}

.section[data-allow-minimize='1'] > header .minimize-toggle {
    width: 12px;
}

.section > header {
    display: flex;
    align-items: center;
    width: 100%;
    height: 40px;
    background-color: #f5f5f5;
    box-sizing: border-box;
    border-bottom: 1px solid #e3e3e3;
}

.section > header:not(:first-child) {
    border-top: 1px solid #e3e3e3;
}

.section > header > * {
    margin: 5px;
    white-space: nowrap;
}

.section > header .title {
    flex: 1 1 0px;
    font-weight: bold;
    font-size: 18px;
}

.section > header .title .description {
    color: #918c8c;
    font-weight: normal;
    font-style: italic;
    font-size: 15px;
}

.section > header .title select {
    margin-bottom: 0px;
}

.section > header .actions {
    text-align: right;
}

.section > header .actions form {
    margin: 0px;
}

.section > header .actions form a.btn:last-child {
    margin-right: 0px;
}

.section > header .actions label {
    display: inline-block;
    margin-right: 10px;
}

.section > header .actions .select2-container span {
    text-align: left;
}

.section > .content {
    padding: 10px;
    background: #fff;
}

.section > .content > .filters {
    background: #fff;
}

.section > .content > div > ul.nav-tabs {
    background: #fff;
}

.section > .content > div > ul.nav-tabs[data-fixed-scrolled] {
    border-bottom: 0px;
}

.section > .content > div > ul.nav-tabs[data-fixed-scrolled]:before {
    position: relative;
    top: 38px;
    display: block;
    width: 100%;
    height: 1px;
    border-bottom: 1px solid #ddd;
    z-index: -1;
}

.section > .content > div > .tab-content > .tab-pane > .filters {
    background: #fff;
}

.section > .content > dl {
    margin: 0px;
}

.section > .content table {
    margin-bottom: 0px;
}

.section > .content ul.nav-tabs {
    margin: 0px -10px 10px;
}

.section > .content ul.nav-tabs > li:first-child {
    margin-left: 10px;
}

.section > .content .pagination {
    margin: 10px 0px 0px;
}

.section > .content.info {
    padding: 0px;
    background: #fff;
}

.section > .content.info dl.emails > dd {
    padding: 10px 0px;
}

.section .content.info > table {
    width: 100%;
    border-spacing: 10px;
    border-collapse: separate;
}

.section td.block {
    background: #f5f5f5;
    vertical-align: top;
    border: 1px solid #e3e3e3;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}

.section td.block > header {
    padding: 5px;
    border-bottom: 1px solid #e3e3e3;
    font-size: 16px;
    text-align: center;
}

.section td.block > .content {
    padding: 10px;
}

.section > footer {
    padding: 5px;
    border-top: 1px solid #e3e3e3;
}

.section-requests-followup.minimized {
    border-color: #dd55aa;
}

.section-requests-followup.minimized > header {
    background-color: rgba(255, 153, 204, 0.15);
    border-color: transparent;
}

.form-actions .grid-view {
    background: #fff;
}

div.form {
    padding: 0px;
}

div.form form {
    margin-bottom: 0px;
}

div.form .nav-tabs {
    padding-left: 15px;
}

div.form .nav-tabs li.active a {
    background-color: #f5f5f5;
}

div.form fieldset {
    position: relative;
    margin-right: 20px;
    min-width: 100%;
    /*overflow: hidden;*/
}

div.form fieldset > .actions,
div.form fieldset legend > .actions {
    position: absolute;
    top: 5px;
    right: 5px;
    line-height: 20px;
}

div.form legend:before {
    display: inline;
    content: '';
    padding-right: 20px;
}

div.form legend {
    position: relative;
    margin-right: 1px;
    background-color: #f5f5f5;
}

div.form .controls.value {
    padding-right: 10px;
}

div.form div.controls.value {
    padding-top: 5px;
}

div.form span.controls {
    margin-left: 0px;
}

div.fieldset-group {
    border: 1px solid #e5e5e5;
    margin: 0px 15px;
}

div.events .grid-view {
    background: #fff;
    margin: 0px 20px 20px;
}

div.logs .grid-view {
    background: #fff;
    margin: 0px 20px 20px;
}

div.logs .grid-view th {
    text-align: center;
}

div.logs .control-group {
    margin-bottom: 5px;
}

div.logs .control-group:last-child {
    margin-bottom: 0px;
}

div.logs .controls.value {
    padding-top: 0px;
}

div.logs .label {
    background: #dddddd;
    color: #000;
    text-shadow: 0 -1px 0 rgba(255, 255, 255, 0.25);
}

.label h4 {
    color: #fff;
}

div.logs dl {
    margin: 0px;
    padding: 20px;
    border-bottom: 1px solid #e5e5e5;
}

div.logs dl:last-child {
    border-bottom: 0px solid #e5e5e5;
}

div.logs .grid-view fieldset {
    margin-right: 0px;
}

div.logs .grid-view fieldset:last-child {
    margin-bottom: 0px;
}

div.logs .grid-view legend {
    padding-left: 0px;
    margin-bottom: 5px;
    font-size: 14px;
    font-weight: bold;
    line-height: 16px;
}

div.logs .attribute > .label {
    display: block;
    text-align: center;
}

div.logs .attribute > .value {
    text-align: center;
}

div.logs .attribute.group > .value {
    padding-top: 5px;
}

div.logs .attribute > .changes {
    display: table;
    width: 100%;
}

div.logs .attribute .changes > div {
    width: 50%;
    display: table-cell;
    padding: 2px 5px;
    vertical-align: middle;
}

div.logs .attribute .changes > .old {
    text-align: right;
}

div.logs .attribute .changes > .action {
    width: 20px;
    padding: 0px;
}

div.logs .attribute .changes > .new {
    text-align: left;
}

.text {
    padding: 5px 15px;
}

div.form textarea[rows] {
    min-height: auto;
}

div.form textarea {
    width: calc(100% - 35px);
    min-height: 200px;
    resize: vertical;
}

div.form textarea.mini {
    min-height: 50px;
}

div.form .form-actions {
    margin-bottom: 0px;
}

div.form .form-actions .control-group {
    margin-left: -180px;
}

.grid-view {
    position: relative;
    padding-top: 0px;
    overflow-x: auto;
    overflow-y: hidden;
}

.grid-view > table {
    margin-bottom: 0px;
}

.grid-view thead > tr > th,
.grid-view thead > tr > td {
    position: relative;
}

.grid-view thead > tr > th.scrolled_top,
.grid-view thead > tr > td.scrolled_top {
    border-bottom: 1px solid #dddddd;
}

.grid-view table.items th a.sort-link.asc,
.grid-view table.items th a.sort-link.desc {
    padding-right: 20px;
}

.grid-view table.items th a .caret {
    top: 50%;
    margin-top: -3px;
}

.table tr.hidden,
.table th.hidden {
    display: none;
}

.grid-view th {
    background: #f5f5f5;
    text-align: center;
}

.grid-view table.items th a .caret {
    padding: 0px;
}

.grid-view span.empty {
    padding: 0px;
}

.grid-view th > .cell,
.grid-view td > .cell {
    position: relative;
}

.grid-view th > .cell > .fixed,
.grid-view td > .cell > .fixed {
    position: absolute;
}

.grid-view th.fixed,
.grid-view td.fixed {
    position: relative;
}

.grid-view th.fixed.fixed_last.scrolled_left,
.grid-view td.fixed.fixed_last.scrolled_left {
    border-right: 1px solid #dddddd;
}

.grid-view tr.filters td {
    background: #f5f5f5;
}

.grid-view td {
    position: relative;
    vertical-align: middle;
    background: #f9f9f9;
}

.grid-view td.merge {
    background: none;
}

.grid-view td.empty .search {
    display: block;
    padding: 10px;
    font-size: 12px;
    font-style: normal;
    text-align: center;
}

.grid-view td.empty .search a {
    margin: 10px auto 0px;
}

.grid-view .table:not(.table-striped) tbody > tr > td {
    background: #fff;
}

.grid-view .table.table-striped tbody > tr:nth-child(odd):not(.selected):not(.error) > td,
.grid-view .table.table-striped tbody > tr:nth-child(odd):not(.selected):not(.error) > th {
    background: #fff;
}

.grid-view .table.table-striped tbody > tr:nth-child(odd):not(.selected) > td.merge {
    background: #fff;
}

.grid-view .table.fixed-header {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 50;
    width: auto;
}

.grid-view .table.fixed-header {
    z-index: 100;
    width: 100%;
}

.grid-view .fixed-container {
    z-index: 1010;
}

.actions {
    text-align: right;
}

.grid-view.report-grid th {
    vertical-align: middle;
    text-align: center;
}

.grid-view tbody td input {
    display: inline-block;
    width: 100%;
    min-height: 100%;
    margin: 0px;
    padding: 0px;
    background: transparent;
    box-shadow: none;
    border: 0px;
    border-radius: 0px;
    text-align: center;
    white-space: nowrap;
}

.grid-view tbody td input.error {
    background: #b94a48;
    color: #fff;
}

.grid-view tbody td input:focus {
    background: #fff;
    box-shadow: none;
    color: #000;
}

.grid-view tr.inner td {
    font-size: 12px;
}

.grid-view tr.inner td:first-child {
    border-left: 1px dashed #ddd;
}

.grid-view tr.inner td:last-child {
    border-right: 1px dashed #ddd;
}

td dl {
    margin: 10px 0px;
}

td {
    position: relative;
}

td.data-cell,
div.data-cell {
    padding-top: 30px;
}

td.data-numeric {
    white-space: nowrap;
}

td.data-actions {
    width: 1px;
    text-align: center;
    white-space: nowrap;
}

td.data-actions a {
    margin-bottom: 4px;
}

td.data-cell .actions,
div.data-cell .actions,
td.data-actions .actions {
    position: absolute;
    top: 4px;
    right: 5px;
}

[class*='redactor_span'] {
    float: inherit;
    min-height: inherit;
    margin-left: inherit;
}

.redactor_box {
    margin-right: 7px;
}

.redactor_editor {
    cursor: text;
}

span.timezone {
    font-size: 11px;
}

input.datepicker,
.grid-view .filters input.datepicker {
    width: 75px !important;
    text-align: center;
}

input.timepicker,
.grid-view .filters input.timepicker {
    width: 51px !important;
    text-align: center;
}

.grid-view .filters .filter-daterange .range,
.grid-view .filters .filter-datetimerange .range {
    margin-top: 5px;
    text-align: center;
}

.grid-view .filters .filter-daterange .range .datepicker,
.grid-view .filters .filter-datetimerange .range .datetimepicker {
    display: inline-block;
}

.phonepicker [data-phone-part] {
    text-align: center;
}

.phonepicker [data-phone-part='country_code'] {
    width: 25px !important;
}

.phonepicker [data-phone-part='area_code'] {
    width: 40px !important;
}

.phonepicker [data-phone-part='local_number'] {
    width: 80px !important;
}

.ui-timepicker-wrapper {
    width: 4.5em;
    height: auto;
    max-height: 150px;
    z-index: 11025;
}

label.checkbox {
    cursor: default;
}

label.checkbox,
label.radio {
    width: fit-content;
}

label {
    cursor: default;
}

label:not([for]) {
    cursor: default;
}

label.row-label {
    display: inline-block;
    padding-top: 5px;
    margin-bottom: 5px;
    vertical-align: middle;
}

.control-group .controls.well {
    margin-bottom: 0px;
}

.control-group .controls dl {
    margin: 0px;
}

.row.hint {
    display: table;
    margin-left: 0px;
}

.row.hint > div {
    display: table-cell;
    text-align: left;
    vertical-align: middle;
}

.row.hint > .form {
    width: 363px;
}

.row.hint > .form .control-group:last-child {
    margin-bottom: 0px;
}

.well h5 {
    margin-top: 0px;
}

.well dl {
    margin: 0px;
}

.request .sticky-wrapper {
    margin-bottom: 20px;
}

.request .sticky-wrapper .header {
    z-index: 2000;
}

.request .sticky-wrapper .header #actions a {
    z-index: 2001;
}

.request .header {
    background-color: #f5f5f5;
}

.request .header legend {
    margin-bottom: 0px;
}

.request .header #actions a {
    z-index: 100;
}

.request .status {
    position: relative;
    border-bottom: 1px solid #e5e5e5;
    padding: 20px 0px;
}

.request .status > .more {
    position: absolute;
    top: 5px;
    right: 5px;
}

.request_data .salary_statement {
    overflow: hidden;
}

.request .alert {
    margin: 0px 20px 20px;
}

.details .grid-view {
    margin-bottom: 10px;
    font-size: 75%;
}

input.datepicker {
    background-color: #fff;
    cursor: auto;
}

input.datepicker.disabled,
input.datepicker:disabled {
    background-color: #eeeeee;
    cursor: not-allowed;
}

.control-group.notes {
    margin-top: -20px;
}

.control-group.options label.checkbox {
    padding: 0px;
}

.control-group.options label.checkbox label {
    margin: 10px 40px 10px 10px;
}

.control-group.options label.checkbox input {
    float: right;
    margin: 13px 10px 10px 0px;
}

.control-group.options .controls {
    display: table;
    border-collapse: collapse;
}

.control-group.options .controls > label.checkbox,
.control-group.options .controls > .checkbox-group {
    display: table-row;
}

.control-group.options .controls > label.checkbox {
    border-bottom: 1px solid #e5e5e5;
}

.control-group.options .controls > label.checkbox:last-child {
    border-bottom: 0px;
}

.control-group.options > .controls > label.checkbox,
.checkbox-group > label.checkbox,
.checkbox-group > .control-group {
    display: table-cell;
    border: 1px solid #e5e5e5;
    vertical-align: top;
}

.checkbox-group > .control-group {
    padding: 0px;
}

.checkbox-group > .control-group > .controls {
    width: 100%;
}

.checkbox-group .controls {
    margin-left: 0px;
}

.field-list {
    margin-left: 0px;
    margin-bottom: 0px;
}

.field-list > li {
    position: relative;
    display: table;
    width: auto;
    margin-bottom: 10px;
    padding-bottom: 10px;
}

.field-list.separated > li {
    border-bottom: 1px solid #e5e5e5;
}

.field-list > li.item.last,
.field-list > li.base {
    margin-bottom: 0px;
    padding-bottom: 0px;
}

.field-list > li.base {
    margin-top: 10px;
}

.field-list.separated > li.item.last,
.field-list.separated > li.base {
    border-bottom: 0px;
}

.field-list > li.item-blank {
    display: none;
}

.field-list > li > .actions {
    position: absolute;
    right: 0px;
    top: 2px;
    vertical-align: middle;
}

.field-list > li.base > .actions {
    position: static;
}

.field-list > li .view > div,
.field-list > li .view > span > div,
.field-list > li .view .mini > div {
    margin-bottom: 5px;
}

.field-list > li .view > div:first-child {
    padding-right: 76px;
}

.field-list > li .view .mini {
    font-size: 12px;
}

.field-list > li .view .mini label {
    font-size: 12px;
}

.field-list > li .select2 {
    margin-right: 5px;
}

.field-list > li select:not(:first-child) {
    margin-left: 5px;
}

.field-list > li .select2-container {
    margin-left: 5px;
}

.field-list > li .controls .select2-container {
    margin-left: 0px;
}

.field-list > li textarea {
    display: block;
    width: 417px;
}

.controls.value .field-list > li.item .row-label {
    padding-top: 0px;
}

.datepicker {
    z-index: 15000 !important;
}

.datepicker table tr td.holiday,
.datepicker table tr td.holiday:hover {
    color: #f00;
}

.datepicker table tr td.day.overtime_disabled,
.datepicker table tr td.day.overtime_disabled:hover {
    color: #f00;
}

.datepicker table tr td.day.old,
.datepicker table tr td.day.new {
    visibility: hidden;
}

.datepicker table tr td span.old,
.datepicker table tr td span.new {
    color: #333;
}

.datepicker table tr td span.disabled,
.datepicker table tr td span.disabled:hover {
    color: #999999;
}

.datepicker table tr td span.active,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled:hover {
    color: #fff;
}

tr.new td {
    background: #efe !important;
}

tr.last-model td {
    background: #dcfce7 !important;
}

tr.highlight td,
td.highlight {
    background: #d9edf7 !important;
}

tr.highlight td.notice,
td.highlight.notice,
td.notice {
    background: #f2dede !important;
}

tr.warning td {
    background: #fcf8e3 !important;
}

tr.accept td {
    background: #d4edda !important;
}

tr.reject td {
    background: #f8d7da !important;
}

.label h4 {
    margin: 0px;
}

.inner-table {
    position: relative;
    margin: -4px -5px;
}

.inner-table table {
    border: 0px;
}

.inner-table .table {
    background: transparent;
}

.inner-table table thead > tr > th {
    background: transparent;
    border-left: 0px;
    border-right: 0px;
}

.inner-table table tbody > tr > td {
    background: transparent;
    border-left: 0px;
    border-right: 0px;
}

.grid-view .table.table-striped tbody > tr:nth-child(even):not(.selected) > td .inner-table table thead > tr > th {
    background: #f9f9f9;
}

.grid-view .table.table-striped tbody > tr:nth-child(even):not(.selected) > td .inner-table table tbody > tr > td {
    background: #f9f9f9;
}

.grid-view .inner-table table tbody > tr > td:first-child {
    padding-left: 40px;
}

tr:last-child td.extrarow:empty {
    display: none;
}

#stats-grid tr.stats-row td {
    height: 22px;
}

#users-stats-grid tr.stats-row td {
    height: 60px;
}

#stats-grid tr.stats-row td dl,
#users-stats-grid tr.stats-row td dl {
    margin: 0px;
}

#stats-grid tr.stats-row:not(.expanded) td > div,
#users-stats-grid tr.stats-row:not(.expanded) td > div {
    overflow: hidden;
}

#stats-grid tr.stats-row:not(.expanded) td > div {
    max-height: 22px;
}

#users-stats-grid tr.stats-row:not(.expanded) td > div {
    max-height: 60px;
}

#users-stats-grid tr td.extrarow {
    border-bottom: 5px solid #dddddd;
    text-align: right;
}

#users-stats-grid tr td.extrarow:empty {
    padding: 0px;
}

#users-stats-grid tr:last-child td.extrarow {
    border-bottom: 0px;
}

#users-stats-grid tr:last-child td.extrarow:empty {
    border-top: 0px;
}

.report-grid tr td.extrarow,
.report-detailed-grid tr td.extrarow {
    border-bottom: 5px solid #dddddd;
    text-align: right;
    padding: 0px;
}

.report-grid tr td.extrarow .separator {
    border-bottom: 1px solid #dddddd;
}

.report-grid tr:last-child td.extrarow,
.report-detailed-grid tr:last-child td.extrarow {
    border-bottom: 0px;
}

.report-grid tr:last-child td.extrarow:empty,
.report-detailed-grid tr:last-child td.extrarow:empty {
    border-top: 0px;
}

.report-grid.report-users_bonuses td.extrarow,
.report-grid.report-users_warnings td.extrarow {
    background: #ddd !important;
    border-bottom: 0px;
    padding: 3px;
}

.checkbox-list {
    white-space: nowrap;
    text-align: left;
}

.checkbox-list input[type='checkbox'] {
    float: right;
    width: auto;
}

.checkbox-list label {
    display: inline-block;
    padding-right: 18px;
    margin-bottom: 0px;
    cursor: none;
}

#events a[rel='tooltip'] {
    text-decoration: none;
    cursor: help;
}

.tooltip {
    white-space: normal;
}

.tooltip .tooltip-inner {
    text-align: left;
    white-space: pre-wrap;
    word-wrap: break-word;
}

.controls .row-fluid [class*='span'] {
    float: left;
}

.controls .row-fluid input,
.controls .row-fluid textarea {
    width: 90%;
}

.controls .row-fluid:before,
.row-fluid:after {
    display: none;
}

.content > .filters,
.tab-pane > .filters {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 5px;
    line-height: 16px;
}

.content > .filters > .left,
.tab-pane > .filters > .left {
    margin-right: auto;
}

.filters {
    text-align: right;
    margin: 0px 0px 10px;
}

.filters > * {
    margin: 0px 3px;
}

.filters select {
    margin-bottom: 0px;
}

.filters .select2-container {
    text-align: left;
}

.filters input[type='text'] {
    margin-bottom: 0px;
}

.filters input[type='checkbox'] {
    margin-top: 0px;
}

.dropdown-menu {
    min-width: 0px;
    z-index: 5000;
}

.alert form {
    margin-bottom: 0px;
}

.alert fieldset {
    color: #000;
}

.alert fieldset div.control-group:last-child {
    margin-bottom: 0px;
}

.alert-custom {
    padding-right: 14px;
}

.table {
    max-width: none;
}

.table thead th.no-padding,
.table tbody td.no-padding {
    position: relative;
    padding: 0px;
}

.table thead th table,
.table tbody td table {
    width: 100%;
}

.table thead th.no-padding table td:first-child,
.table tbody td.no-padding table td:first-child {
    border-left: 0px;
}

table.months {
    margin-bottom: 0px;
    border: 0px;
    border-bottom: 1px solid #dddddd;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}

table.weeks {
    margin-bottom: 0px;
    font-size: 9px;
    border: 0px;
    border-radius: 0px;
}

table.weeks td,
table.months td {
    text-align: center;
    padding: 0px;
}

.table tbody td table.weeks {
    height: 29px;
}

table.weeks td {
    position: relative;
    line-height: 29px;
}

table.weeks td > div {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}

table.weeks td > div.tentative_vacation {
    background: #b2ebb2 !important;
}

table.weeks td > div.tentative_vacation_pending {
    background: yellow !important;
}

table.weeks td > div.tentative_vacation_expired {
    background: #fcc7f9 !important;
}

table.weeks td > div.vacation {
    background: green !important;
}

table.weeks td > div.vacation_pending {
    background: orange !important;
}

table.weeks td > div.mark {
    background: red !important;
}

table.weeks.revolving-work td {
    overflow: hidden;
}

table.weeks.revolving-work td > div:nth-child(2) {
    transform: skew(-30deg, 0deg) translate(8px, 0px);
}

table.weeks.revolving-work td > div:nth-child(n + 3) {
    display: none;
}

table.weeks.revolving-work td > div.not_working {
    background: gray;
}

table.weeks.revolving-work td > div.default {
    background: green;
}

table.weeks.revolving-work td > div.remote_work {
    background: yellow;
    color: black;
}

.btn.disabled,
.btn[disabled] {
    opacity: 0.4;
}

.btn.light {
    filter: saturate(0.5);
}

.popover {
    z-index: 5000;
    max-width: none;
}

.popover .calendar_event_description {
    max-width: 300px;
    text-align: center;
}

.popover_show {
    cursor: help;
}

.tooltip {
    z-index: 10000;
}

.nowrap {
    white-space: nowrap;
}

#salary-form .alert {
    margin-bottom: 0px;
}

@-moz-document url-prefix() {
    #salary-edit > table {
        table-layout: fixed;
    }

    #salary-edit > table:first-child > thead th {
        width: 6%;
    }
}

.salary_statement {
    font-size: 11px;
    overflow: visible;
}

.salary_statement table th {
    vertical-align: middle;
}

.salary_statement input {
    font-size: 11px;
}

.salary_statement strong {
    color: #000;
}

.salary_statement th.section_1 {
    background: #eee;
}

.salary_statement th.section_2 {
    background: #fff;
}

.salary_statement th.section_3 {
    background: #eee;
}

.salary_statement th.section_3.overpaid {
    background: #f2dede;
}

.salary_statement th.section_4 {
    background: #fff;
}

.salary_statement th.section_5 {
    background: #f8f8f8;
}

.salary_statement th.section_6 {
    background: #eee;
}

.salary_statement td.extrarow {
    background: #ddd !important;
}

.salary_statement td.extrarow-bottom {
    background: #eee !important;
}

.salary_statement td.extrarow-value {
    background: #fff !important;
    text-align: center;
}

.salary_statement tbody tr:hover td:not(.extrarow) {
    background: #d9edf7 !important;
}

.salary_statement tbody tr:hover td.notice {
    background: #f2dede !important;
}

.grid-view.costs table th {
    vertical-align: middle;
}

.grid-view.costs input.dirty {
    background: #fcf8e3;
}

.carousel-control {
    top: 50%;
}

.users_documents_details .control-group {
    margin-bottom: 0px;
}

.users_documents_details label.control-label {
    width: auto;
}

.users_documents_details .controls {
    margin-left: 60px;
}

.text-black {
    color: #000;
}

.text-grayed {
    color: #e2e2e2;
}

.text-primary {
    color: #0044cc;
}

#substitute_departments td,
#substitute_departments th {
    text-align: center;
    vertical-align: middle;
}

#substitute_departments input {
    margin: -1px 0px 0px 0px;
}

#substitute_departments {
    font-size: 10px;
}

#substitute_departments td input {
    width: auto;
}

#substitute_departments td.hover,
#substitute_departments th.hover {
    background-color: #add8e6;
}

#substitute_departments tr td:first-child,
#substitute_departments tr th:first-child {
    border-right: 5px solid #dddddd;
}

#currencies td,
#currencies th {
    height: 32px;
    text-align: center;
    vertical-align: middle;
    padding: 0px;
}

#currencies td {
    font-size: 14px;
}

#currencies td.hover,
#currencies th.hover {
    background-color: #add8e6;
}

#currencies th input {
    display: inline-block;
    width: 100%;
    min-height: 100%;
    margin: 0px;
    padding: 0px;
    background: transparent;
    box-shadow: none;
    border: 0px;
    border-radius: 0px;
    text-align: center;
    white-space: nowrap;
}

#currencies th input.error {
    background: #b94a48;
    color: #fff;
}

#currencies th input:focus {
    background: #fff;
    box-shadow: none;
    color: #000;
}

#currencies td.actions,
#currencies th.actions {
    width: 34px;
}

#currencies:not(.edit) input:disabled {
    cursor: text;
}

#currencies:not(.edit) .edit {
    display: none;
}

.select2-container.error .select2-choice {
    border-color: #b94a48;
}

.select2-choices {
    border-radius: 4px;
}

.select2-container .select2-choice {
    height: 28px;
    line-height: 28px;
}

.select2-container-multi .select2-search-field input {
    height: 16px;
}

.select2-dropdown-open .select2-choices {
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}

.select2-drop.select2-full-height .select2-results {
    max-height: none;
}

.select2-result.select2-disabled {
    color: #bbb;
}

.select2-result-label {
    white-space: nowrap;
}

.select2-result-label i,
.select2-chosen i,
.select2-search-choice i {
    margin-right: 5px;
    text-align: center;
}

.select2-result-label i {
    width: 14px;
}

.select2-search-choice i.hidden {
    display: none;
}

.select2-result.group .select2-result-label {
    font-weight: bold;
}

.select2-result.child .select2-result-label {
    padding-left: 15px;
}

#User_documents .row-label.view,
#User_assets .row-label.view {
    text-decoration: underline;
}

#User_documents .field-list > li {
    padding-bottom: 0px;
    border-bottom: 0px;
}

#User_documents .field-list > li.base {
    margin-top: 30px;
}

#User_documents .field-list > li > .actions {
    right: 5px;
    top: 50%;
    margin-top: -13px;
}

#User_documents .user-document {
    display: flex;
    width: 800px;
    margin-bottom: 0px;
    padding-right: 40px;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
}

#User_documents .user-document div.form-error {
    margin-top: 5px;
    color: #b94a48;
    font-size: 12px;
    line-height: 14px;
}

#User_documents .user-document * {
    box-sizing: border-box;
}

#User_documents .user-document > div:nth-child(1) {
    flex: 0 0 240px;
    align-self: center;
    padding: 5px;
}

#User_documents .user-document > div:nth-child(1) > span {
    padding: 0px 14px;
}

#User_documents .user-document > div:nth-child(1) div.form-error {
    text-align: center;
}

#User_documents .user-document > div:nth-child(2) {
    flex: 1 1 auto;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
}

#User_documents .user-document > div:nth-child(2) .user-document-data {
    border-bottom: 1px solid #ccc;
}

#User_documents .user-document > div:nth-child(2) > .user-document-data:last-child {
    border-bottom: 0px;
}

#User_documents .user-document-history {
    background: #eee;
}

#User_documents .user-document-data {
    display: flex;
    width: 100%;
    align-items: center;
}

#User_documents header.user-document-data {
    font-size: 10px;
    line-height: 12px;
    font-weight: bold;
    text-align: center;
}

#User_documents .user-document-data > div {
    position: relative;
    padding: 5px;
}

#User_documents .user-document-data > div:nth-child(1),
#User_documents .user-document-data > div:nth-child(2) {
    flex: 0 0 100px;
    text-align: center;
}

#User_documents .user-document-data > div:nth-child(3) {
    flex: 1 1 auto;
}

#User_documents .user-document-data > div:nth-child(3) > span {
    padding: 4px 6px;
}

#User_documents .user-document-data input {
    width: 100% !important;
    height: 30px;
}

#User_documents .user-document-data textarea {
    width: 100%;
    min-height: 30px;
    height: 30px;
}

.table thead th.text-left {
    text-align: left;
}

.table thead th.ignore {
    font-weight: normal;
}

.table thead th {
    vertical-align: middle;
}

.vacations_graph > span {
    display: block;
    text-align: center;
}

.loan_payments_graph {
    margin: 0px 20px;
}

.loan_payments_graph td {
    width: 25%;
    text-align: center;
    vertical-align: middle;
}

.loan_payments_graph tr.paid td {
    color: #468847;
}

.api-queries .grid-view td.data {
    vertical-align: top;
    padding: 0px;
}

.api-queries .grid-view td.data .nav-pills {
    margin: 5px;
}

.api-queries .grid-view td.data .nav-pills li {
    float: right;
}

.api-queries .grid-view td.data .nav-pills li > a {
    padding: 4px 6px;
    font-size: 10px;
}

.api-queries .grid-view td.data .title {
    font-size: 14px;
    text-align: center;
}

.api-queries .grid-view td.data .values {
    font-size: 10px;
    text-align: center;
    text-transform: uppercase;
}

.api-queries .grid-view td.data a.info {
    margin: 0px 5px;
    border-bottom: 1px dashed #0088cc;
    text-decoration: none;
}

.api-queries .grid-view td.data a.info:hover {
    border-bottom: 1px dashed #005580;
    text-decoration: none;
}

.api-queries .grid-view td.data a.info.active {
    border-bottom: none;
    text-decoration: none;
}

.api-queries .grid-view td.data a.info .content {
    display: none;
}

.api-queries .grid-view td.data .popover .content {
    overflow-x: hidden;
    overflow-y: auto;
    text-transform: none;
}

.api-queries .grid-view td.data .popover .content.array {
    max-width: 450px;
}

.api-queries .grid-view td.data .popover .content.array dt {
    float: left;
    width: 160px;
    overflow: hidden;
    clear: left;
    text-align: right;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.api-queries .grid-view td.data .popover .content.array dd {
    min-height: 20px;
    margin-left: 180px;
    word-wrap: break-word;
}

.api-queries .grid-view td.data .popover .content.body {
    max-width: 600px;
    max-height: 300px;
    white-space: pre;
    word-wrap: break-word;
}

.api-queries .grid-view td.data .result {
    position: relative;
    width: auto;
    margin-top: 5px;
    padding: 5px 5px 5px 22px;
    background-color: #dff0d8;
    border-top: 1px solid #dddddd;
    color: #468847;
    text-align: center;
}

.api-queries .grid-view td.data .result.error {
    background-color: #f2dede;
    color: #b94a48;
}

.api-queries .grid-view td.data .result i {
    position: absolute;
    left: 5px;
    top: 50%;
    margin-top: -7px;
}

.api-queries .grid-view td.data .result .content {
    max-height: 500px;
    font-size: 10px;
}

.notifications .grid-view td.data,
.mails .grid-view td.data {
    vertical-align: top;
    padding: 0px;
}

.notifications .grid-view td.data > dl,
.mails .grid-view td.data > dl {
    font-size: 11px;
    line-height: 11px;
}

.notifications .grid-view td.data > dl > dt,
.notifications .grid-view td.data > dl > .content > dt,
.mails .grid-view td.data > dl > dt,
.mails .grid-view td.data > dl > .content > dt {
    float: left;
    width: 80px;
    overflow: hidden;
    clear: left;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.notifications .grid-view td.data > dl > dd,
.notifications .grid-view td.data > dl > .content > dd,
.mails .grid-view td.data > dl > dd,
.mails .grid-view td.data > dl > .content > dd {
    min-height: 10px;
    margin-left: 100px;
    margin-right: 10px;
    margin-bottom: 4px;
    padding: 4px;
    background: #fff;
    border-radius: 2px;
    border: 1px solid #dddddd;
    line-height: 11px;
}

.mails .grid-view td.data > dl > dd span.recipient {
    cursor: help;
}

.mails .grid-view td.data > dl > dd span.recipient span.email {
    display: none;
}

.notifications .grid-view td.data > dl > .content,
.mails .grid-view td.data > dl > .content {
    display: none;
}

.notifications .grid-view td.data > dl > .content > dd.body,
.mails .grid-view td.data > dl > .content > dd.body {
    overflow: hidden;
}

.notifications .grid-view td.data > dl > .content > dd.body > iframe,
.mails .grid-view td.data > dl > .content > dd.body > iframe {
    width: 100%;
    max-height: 200px;
    overflow-y: auto;
}

.notifications .grid-view td.data > dl > .content > dd.attachments ul,
.mails .grid-view td.data > dl > .content > dd.attachments ul {
    margin: 0px;
}

.notifications .grid-view td.data > dl > .content > dd.attachments li,
.mails .grid-view td.data > dl > .content > dd.attachments li {
    display: inline-block;
}

.notifications .grid-view td.data > dl > .content > dd.attachments li .filename,
.mails .grid-view td.data > dl > .content > dd.attachments li .filename {
    display: none;
}

.mails .grid-view td.data a.message {
    border-bottom: 1px dashed #0088cc;
    text-decoration: none;
}

.mails .grid-view td.data a.message:hover {
    border-bottom: 1px dashed #005580;
    text-decoration: none;
}

.mails .grid-view td.data a.message.active {
    border-bottom: none;
    text-decoration: none;
}

.mails .grid-view td.data a.message .content {
    display: none;
}

.mails .grid-view td.data a.message + .popover {
    max-height: 200px;
    overflow-y: auto;
    white-space: pre;
    word-wrap: break-word;
}

.notifications .grid-view td.data > dl > button,
.mails .grid-view td.data > dl > button {
    display: block;
    width: 75px;
    margin: 0px auto;
}

.mails .grid-view td.data > .result {
    position: relative;
    width: auto;
    margin-top: 5px;
    padding: 5px 5px 5px 22px;
    background-color: #dff0d8;
    border-top: 1px solid #dddddd;
    color: #468847;
    text-align: center;
}

.mails .grid-view td.data > .result.error {
    background-color: #f2dede;
    color: #b94a48;
}

.mails .grid-view td.data > .result.warning {
    background-color: #fcf8e3;
    color: #c09853;
}

.mails .grid-view td.data > .result i {
    position: absolute;
    left: 5px;
    top: 50%;
    margin-top: -7px;
}

#calendar .fc-event.event.not_approved_absence,
#calendar .fc-event.event.late_arrival {
    border-color: red;
    background-color: red;
    color: #000;
}

#calendar .fc-event.event.sick_leave {
    border-color: yellow;
    background-color: yellow;
    color: #000;
}

#calendar .fc-event.event.day_off {
    border-color: #fcc7f9;
    background-color: #fcc7f9;
    color: #000;
}

#calendar .fc-event.event.vacation {
    border-color: green;
    background-color: green;
    color: #fff;
}

#calendar .fc-event.description {
    cursor: help;
}

.select2-drop.select2-navbar {
    z-index: 10000;
}

body > .mimic {
    position: fixed;
    right: 0px;
    left: 0px;
    top: 41px;
    background: #d9edf7;
    border-bottom: 1px solid #bce8f1;
    color: #3a87ad;
    z-index: 9999;
}

body > .mimic.info {
    background-color: #fcf8e3;
    border-color: #fbeed5;
    color: #c09853;
}

body > .mimic > .container {
    position: relative;
    min-height: 27px;
    line-height: 27px;
    padding: 5px 0px;
    text-align: center;
}

body > .mimic .actions {
    position: absolute;
    right: 10px;
    top: 50%;
    height: 30px;
    margin-top: -15px;
}

body > .mimic .select2 {
    text-align: left;
}

body > .mimic input[type='checkbox'] {
    margin: 0px;
}

body > .mimic form {
    display: inline-block;
    margin: 0px;
}

@media (max-width: 979px) {
    body > .mimic {
        position: static;
        margin-top: -20px;
        margin-right: -20px;
        margin-left: -20px;
        margin-bottom: 20px;
    }

    body > .mimic > .container {
        padding: 5px 102px 5px 10px;
    }
}

span.form-field,
span.view-field {
    position: relative;
    display: inline-block;
}

span.view-field:not(.row) .controls {
    display: inline-block;
}

span.form-field.row,
span.view-field.row {
    display: block;
    margin-left: 0px;
}

.field-content,
.field-content-column {
    display: flex;
    gap: 5px;
}

.field-content-column {
    flex-direction: column;
}

.controls.fullwidth span.form-field,
.controls.reason span.form-field,
.reason_required span.form-field,
.air_ticket_reason_required span.form-field,
.controls.trial span.form-field,
.controls.restricted span.form-field,
.controls.vacation_holidays_extended span.form-field,
.controls.vacation_holidays_before_after span.form-field {
    width: 100%;
}

.controls.trial .attention .error,
.controls.restricted .attention .error,
.controls.vacation_holidays_extended .attention .error,
.controls.vacation_holidays_before_after .attention .error {
    color: #b94a48;
}

.controls.trial span.view-field,
.controls.restricted span.view-field,
.controls.vacation_holidays_extended span.view-field,
.controls.vacation_holidays_before_after span.view-field {
    padding-left: 5px;
}

.history {
    display: inline-block;
    position: absolute;
    right: 5px;
    top: 50%;
    width: 14px;
    height: 14px;
    margin-top: -7px;
}

.history > .data {
    display: none;
}

.history > a {
    display: block;
    line-height: 12px;
    cursor: help;
    text-decoration: none;
    color: #000;
}

.grid-history .table {
    font-size: 11px;
}

.grid-history .table td {
    text-align: center;
}

span.form-field.row > .history,
span.view-field.row > .history {
    left: 165px;
    top: 8px;
    margin-top: 0px;
}

span.form-field:not(.row) .history,
span.view-field:not(.row) .history {
    position: static;
}

[data-toggle='tooltip'] {
    display: inline-block;
    cursor: help;
}

button[data-toggle='tooltip'] {
    cursor: pointer !important;
}

th[data-toggle='tooltip'],
td[data-toggle='tooltip'] {
    display: table-cell;
}

[data-toggle='popover'] > [data-content='popover'] {
    display: none;
}

.convert_reduced_day_to_normal .controls {
    color: #b94a48;
}

.select2.users_home_work_permanent .select2-search-choice .select2-search-choice-close {
    top: 20px;
}

.select2.users_home_work_permanent .select2-search-choice select {
    width: 170px;
    margin-top: 5px;
}

.select2.users_revolving_work {
    width: 447px;
}

.select2.users_revolving_work .select2-search-choice .select2-search-choice-close {
    top: 20px;
}

.select2.users_revolving_work .select2-search-choice input {
    width: 74px;
    height: 20px;
    margin: 5px 0px;
    padding: 4px 6px;
    border: 1px solid #cccccc;
    border-radius: 4px;
    line-height: 20px;
    color: #555555;
    text-align: center;
}

.select2.users_revolving_work .select2-search-choice select {
    width: 170px;
    margin: 5px 0px 5px 5px;
}

.select2.users_revolving_work .select2-search-choice table {
    display: inline-table;
    width: 142px;
    margin: 5px 0px 5px 5px;
    border: 1px solid #cccccc;
    border-radius: 4px;
    border-collapse: separate;
    vertical-align: top;
}

.select2.users_revolving_work .select2-search-choice table td {
    width: 18px;
    height: 26px;
    background: green;
    color: white;
    font-size: 11px;
    font-weight: bold;
    text-align: center;
}

.select2.users_revolving_work .select2-search-choice table td:first-child {
    border-radius: 4px;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
}

.select2.users_revolving_work .select2-search-choice table td:last-child {
    border-radius: 4px;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
}

.select2.users_revolving_work .select2-search-choice table td.remote_work {
    background: yellow;
    color: black;
}

.select2.users_revolving_work .select2-search-choice table td.not_working {
    background: gray;
}

.substitute_departments ul {
    position: relative;
    margin: 0px 0px 0px 32px;
    list-style: none;
}

.substitute_departments ul > li {
    position: relative;
}

.substitute_departments ul > li > .item {
    width: 500px;
    position: relative;
}

.substitute_departments ul:before {
    content: '';
    position: absolute;
    left: -16px;
    top: -20px;
    height: 36px;
    border-right: 1px dashed #aaa;
    z-index: 999;
}

.substitute_departments ul > li:not(:last-child):not(.last):before {
    content: '';
    position: absolute;
    left: -16px;
    top: 16px;
    bottom: -22px;
    border-right: 1px dashed #aaa;
}

.substitute_departments ul.departments {
    margin-left: 16px;
}

.substitute_departments .item {
    position: relative;
    display: flex;
    align-items: center;
    height: 32px;
    margin-bottom: 5px;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #aaa;
    border-radius: 5px;
    z-index: 1000;
}

.substitute_departments .item:before {
    content: '';
    position: absolute;
    left: -16px;
    top: 15px;
    width: 16px;
    border-top: 1px dashed #aaa;
}

.substitute_departments .item .icon {
    flex: 1 1 20px;
    padding: 5px;
    border-right: 1px solid #aaa;
    text-align: center;
}

.substitute_departments .item .name {
    flex: 1 1 100%;
    padding: 5px;
}

.substitute_departments .item .select {
    flex: 1 1 100%;
    overflow: hidden;
}

.substitute_departments .item .select .select2-container {
    width: calc(100% + 2px);
    margin-left: -1px;
}

.substitute_departments .item .select .select2-choice {
    background: transparent;
    border: 0px;
    line-height: 30px;
    height: 30px;
}

.substitute_departments .item .select .select2-arrow b {
    background-position: 0px 2px;
}

.substitute_departments .item .help {
    position: absolute;
    right: -25px;
    top: 5px;
    cursor: help;
    font-size: 20px;
}

.substitute_departments .item .actions {
    flex: 1 1 0px;
    padding: 5px;
    font-size: 0px;
    text-align: right;
    white-space: nowrap;
    border-left: 1px solid #aaa;
}

.substitute_departments .item .actions button {
    min-width: 25px;
}

.substitute_departments .item .actions [data-var] button:not(.active):not(:disabled) {
    opacity: 0.5;
}

.substitute_departments .item .actions [data-var] button:not(.active):not(:disabled):hover {
    opacity: 1;
}

.select2.substitute_departments_users {
    width: 484px;
}

.select2.substitute_departments_users .select2-search-choice .select2-search-choice-close {
    top: 11px;
}

.select2.substitute_departments_users .select2-search-choice > div > div {
    display: flex;
}

.select2.substitute_departments_users .select2-search-choice > div > div > div {
    line-height: 30px;
    margin: 0px 5px;
}

.select2.substitute_departments_users .select2-search-choice > div > div > div:first-child {
    width: 162px;
    height: 20px;
    line-height: 20px;
    padding: 4px 8px;
    margin-left: 0px;
    overflow: hidden;
    text-align: right;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.select2.substitute_departments_users .select2-search-choice > div > div > div:last-child {
    margin-right: 0px;
}

.select2.substitute_departments_users .select2-search-choice i.fa {
    margin: 0px;
}

.select2.substitute_departments_users .select2-search-choice select {
    width: 180px;
    margin: 0px;
}

select[data-class='substituteDepartmentsType'] {
    vertical-align: top;
}

.controls > .department .enabled {
    margin-bottom: 10px;
}

.day-week-label {
    margin-left: 5px;
}

.field-content .day-week-label,
.field-content-column .day-week-label {
    margin: 0px;
    text-align: center;
}

.dates .form-field {
    vertical-align: top;
}

.dates .form-field .day-week-label {
    display: block;
    width: 86px;
    margin-left: 0px;
    margin-top: 5px;
    text-align: center;
}

.report-users_gratuities {
    font-size: 10px;
}

.report-users_schedules,
.report-users_vacations {
    font-size: 13px;
}

.report-users_schedules tr td.extrarow {
    background: #ddd !important;
    font-size: 11px;
    padding: 4px 5px;
    border-bottom: 0px;
    text-align: left;
}

td > div.overlay {
    position: absolute;
    left: 0px;
    top: 0px;
    right: 0px;
    bottom: 0px;
    padding: 5px;
    text-align: right;
}

td > div.overlay i {
    vertical-align: top;
}

label > span.abbr {
    display: inline !important;
}

span.abbr {
    line-height: 100%;
    border-bottom: 1px dotted #999999;
}

.btn-gray:hover,
.btn-gray:focus,
.btn-gray:active,
.btn-gray.active,
.btn-gray.disabled,
.btn-gray[disabled] {
    color: #ffffff;
    background-color: #9da0a4;
}

.btn-gray {
    color: #ffffff;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    background-color: #8c8f93;
    background-image: -moz-linear-gradient(top, #7b7e82, #9da0a4);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#7b7e82), to(#9da0a4));
    background-image: -webkit-linear-gradient(top, #7b7e82, #9da0a4);
    background-image: -o-linear-gradient(top, #7b7e82, #9da0a4);
    background-image: linear-gradient(to bottom, #7b7e82, #9da0a4);
    background-repeat: repeat-x;
    border-color: #9da0a4 #9da0a4 #000000;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff7b7e82', endColorstr='#ff9da0a4', GradientType=0);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
}

.datepicker.datepicker-weeks tbody tr:hover td:not(.disabled):not(.active) {
    background: #eeeeee;
}

.btn-group select {
    margin-bottom: 0px;
    border-radius: 0px;
    margin: 0px -1px;
    outline: none;
}

.btn-group > .btn:nth-child(1 of :not([style*='display: none'])) {
    margin-left: 0;
    -webkit-border-bottom-left-radius: 4px;
    border-bottom-left-radius: 4px;
    -webkit-border-top-left-radius: 4px;
    border-top-left-radius: 4px;
    -moz-border-radius-bottomleft: 4px;
    -moz-border-radius-topleft: 4px;
}

.btn-group > .btn:nth-last-child(1 of :not([style*='display: none'])) {
    -webkit-border-top-right-radius: 4px;
    border-top-right-radius: 4px;
    -webkit-border-bottom-right-radius: 4px;
    border-bottom-right-radius: 4px;
    -moz-border-radius-topright: 4px;
    -moz-border-radius-bottomright: 4px;
}

/*.tasks {
  overflow: hidden;
}

.tasks select {
  width: 75px;
}

.tasks .day {
  margin-bottom: 15px;
  font-size: 21px;
  font-weight: bold;
}

.tasks .tasks-empty {
  text-align: center;
}

.tasks > .content {
  margin-bottom: -25px;
}

.tasks div.date {
  margin-bottom: 25px;
}

.tasks div.date.overdue .task {
  color: #b94a48;
}

.tasks ul.tasks-list {
  margin: 0px;
  list-style: none;
}

.tasks ul.tasks-list > li {
  box-sizing: border-box;
  display: table;
  width: 100%;
  margin-bottom: 10px;
  background: #fcf8e3;
  //background: #f9f9f9;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
}

.tasks ul.tasks-list > li:last-child {
  margin-bottom: 0px;
}

.tasks ul.tasks-list > li[data-extendable="true"] {
  cursor: pointer;
}

.tasks ul.tasks-list > li.preview {
  background: #f5f5f5;
  color: #a9a5a5;
}

.tasks ul.tasks-list > li.preview > div.status {
  color: #3a87ad;
}

.tasks ul.tasks-list > li.accepted {
  background: #dff0d8;
}

.tasks ul.tasks-list > li.accepted > div.status {
  color: #468847;
}

.tasks ul.tasks-list > li.rejected {
  background: #f2dede;
}

.tasks ul.tasks-list > li.rejected > div.status {
  color: #b94a48;
}

.tasks ul.tasks-list > li > div {
  position: relative;
  display: table-cell;
  padding: 5px;
  vertical-align: middle;
  border-right: 1px solid #e3e3e3;
}

.tasks ul.tasks-list > li > div:last-child {
  border-right: 0px;
}

.tasks ul.tasks-list > li > div.status {
  width: 19px;
  //width: 350px;
  text-align: center;
  color: #c09853;
}

.tasks ul.tasks-list > li > div.expand {
  width: 25px;
  text-align: center;
}

.tasks ul.tasks-list > li > div.from {
  width: 40px;
  text-align: center;
}

.tasks ul.tasks-list > li:not(.extended) .task {
  height: 20px;
  overflow: hidden;
}

.tasks ul.tasks-list > li.extended .task > .name {
  font-weight: bold;
  margin-bottom: 5px;
}

.tasks ul.tasks-list > li .extend {
  margin-top: 10px;
}

.tasks ul.tasks-list > li .amendment {
  position: absolute;
  top: 5px;
  right: 5px;
  margin-top: 0px;
}

.tasks ul.tasks-list > li:not(.extended) .extend {
  display: none;
}

.tasks ul.tasks-list > li .note {
  font-size: 12px;
  font-style: italic;
}

.tasks ul.tasks-list > li .error {
  color: #b94a48;
}

.tasks ul.tasks-list > li textarea {
  width: 500px;
}*/

.tasks {
    overflow: hidden;
}

.tasks select {
    width: 75px;
}

.tasks > .content {
    margin-bottom: -10px;
}

.tasks .tasks-empty {
    margin-bottom: 10px;
    text-align: center;
}

.tasks .period {
    margin-bottom: 15px;
    font-size: 21px;
    font-weight: bold;
    text-align: center;
}

.tasks .task {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: 100%;
    margin-bottom: 10px;
    background: #fcf8e3;
    border: 1px solid #e3e3e3;
    border-radius: 4px;
}

.tasks .task[data-extendable='true'] {
    cursor: pointer;
}

.tasks .task.preview {
    background: #f5f5f5;
    color: #a9a5a5;
}

.tasks .task.preview > div.status {
    color: #3a87ad;
}

.tasks .task.accepted {
    background: #dff0d8;
}

.tasks .task.accepted > div.status {
    color: #468847;
}

.tasks .task.rejected {
    background: #f2dede;
}

.tasks .task.rejected > div.status {
    color: #b94a48;
}

.tasks .task > div {
    width: 100%;
    padding: 5px;
    position: relative;
    vertical-align: middle;
    border-left: 1px solid #e3e3e3;
}

.tasks .task > div:first-child {
    border-left: 0px;
}

.tasks .task > div.status {
    width: 19px;
    text-align: center;
    color: #c09853;
}

.tasks .task > div.from {
    width: 40px;
    text-align: center;
}

.tasks .task .task-content {
    display: flex;
}

.tasks .task .task-content > div {
    width: 100%;
    flex: 100% 1 1;
    padding-right: 5px;
}

.tasks .task .task-content > div:last-child {
    padding-right: 0px;
}

.tasks .task .task-content > div.task-info {
    width: 200px;
    display: flex;
    flex: 200px 0 0;
    flex-direction: column;
    justify-content: space-between;
}

.tasks .task .task-content > div.task-info > div {
    text-align: right;
}

.tasks .task:not(.extended) .task-content {
    height: 20px;
    overflow: hidden;
}

.tasks .task:not(.extended) .task-content > div > .description {
    padding-top: 1px;
}

.tasks .task:not(.extended) .extend {
    display: none;
}

.tasks .task.extended .task-content > div > .name {
    font-weight: bold;
    margin-bottom: 5px;
}

.tasks .task.extended .task-content > div > .users-list {
    margin: 5px 0px;
}

.tasks .task.extended .task-content > div > .users-list > ul {
    list-style: none;
    margin: 0px 0px 0px 10px;
}

.tasks .task.extended .task-content > div > .users-list > ul > li > i {
    width: 20px;
    font-size: 20px;
    vertical-align: middle;
}

.tasks .task.extended .task-content > div > .users-list > ul > li > a {
    display: inline-block;
    width: 20px;
    font-size: 20px;
    vertical-align: middle;
}

.tasks .task .amendment.extend {
    margin-top: 0px;
}

.tasks .task .interval {
    font-size: 12px;
    white-space: nowrap;
}

.tasks .task.overdue .timeleft {
    color: #b94a48;
}

.tasks .task .timeleft.notice {
    color: #ff99cc;
}

.tasks .task .extend {
    margin-top: 10px;
}

.tasks .task .note {
    font-size: 12px;
    font-style: italic;
}

.tasks .task .error {
    color: #b94a48;
}

.tasks .task textarea {
    width: 500px;
}

.rrule-picker label {
    display: inline-block;
}

.rrule-picker input {
    margin: 0px;
}

.rrulepicker {
    width: 300px;
    border: 1px solid #cccccc;
    border-radius: 3px;
    text-align: center;
}

.rrulepicker .highlight {
    border: 1px solid #c09853;
    background: #c0985315;
    border-radius: 4px;
}

.rrulepicker select {
    width: 100%;
}

.rrulepicker input {
    margin: 0px 10px;
}

.rrulepicker input[type='checkbox'],
.rrulepicker input[type='radio'] {
    margin-left: 0px;
}

.rrulepicker-field {
    padding: 5px;
}

.rrulepicker-list {
    position: relative;
    margin: 0px;
    list-style: none;
}

.rrulepicker-list li {
    position: relative;
    padding: 5px 40px 5px 5px;
    border-top: 1px solid #cccccc;
}

.rrulepicker-list button[data-action='add'],
.rrulepicker-list button[data-action='remove'] {
    width: 25px;
    height: 25px;
    position: absolute;
    right: 5px;
    padding: 0px;
}

.rrulepicker-list button[data-action='add'] {
    top: -30px;
}

.rrulepicker-list button[data-action='remove'] {
    top: 50%;
    margin-top: -12px;
}

.rrulepicker-freq select {
    width: 125px;
}

.rrulepicker-interval input {
    width: 30px;
    text-align: center;
}

.rrulepicker-day-mode {
    margin-right: 40px;
}

.rrulepicker-month-day select,
.rrulepicker-week select {
    width: 65px;
}

.rrulepicker-month-day-reverse select,
.rrulepicker-week-reverse select {
    width: 65px;
}

.rrulepicker-months,
.rrulepicker-week-days {
    width: 250px;
    margin: 0px auto;
}

.rrulepicker-months span,
.rrulepicker-week-days span,
.rrulepicker-day-mode span {
    display: inline-block;
    padding: 2px;
    margin: 0px 1px 2px;
    text-align: left;
}

.rrulepicker-months span,
.rrulepicker-week-days span {
    width: 52px;
    white-space: nowrap;
}

.rrulepicker-summary {
    padding: 10px;
    background: #fff;
    border-top: 1px solid #cccccc;
    font-style: italic;
}

.rrulepicker-summary-error {
    color: #b94a48;
}

div[data-extandable='popover'] {
    height: 20px;
    overflow: hidden;
}

.table-fieldset {
    width: calc(100% - 10px);
    table-layout: fixed;
    border-collapse: separate;
    margin-bottom: 20px;
}

.table-fieldset tr th,
.table-fieldset tr td {
    padding: 15px 10px;
    vertical-align: top;
    box-sizing: border-box;
}

.table-fieldset tr th:first-child,
.table-fieldset tr td:first-child {
    min-width: 170px;
    width: 170px;
    padding-right: 10px;
    text-align: right;
}

.table-fieldset tr th:not(:first-child),
.table-fieldset tr td:not(:first-child) {
    border: 1px solid #e5e5e5;
}

.table-fieldset tr th:nth-child(2):nth-last-child(1),
.table-fieldset tr td:nth-child(2):nth-last-child(1) {
    width: calc(100% - 150px);
}

.table-fieldset tr th:nth-child(2):nth-last-child(2),
.table-fieldset tr td:nth-child(2):nth-last-child(2),
.table-fieldset tr th:nth-child(3):nth-last-child(1),
.table-fieldset tr td:nth-child(3):nth-last-child(1) {
    width: calc(50% - 75px);
}

.table-fieldset tr td:not(:first-child) {
    border-top: 0px;
}

.table-fieldset tr th:not(:nth-child(2)),
.table-fieldset tr td:not(:nth-child(2)) {
    border-left: 0px;
}

.table-fieldset tr th:nth-child(2) {
    border-top-left-radius: 5px;
}

.table-fieldset tr th:last-child {
    border-top-right-radius: 5px;
}

.table-fieldset tr:last-child td:nth-child(2) {
    border-bottom-left-radius: 5px;
}

.table-fieldset tr:last-child td:last-child {
    border-bottom-right-radius: 5px;
}

.table-fieldset tr td .form-field {
    width: 100%;
}

.table-fieldset tr td .form-field > input,
.table-fieldset tr td .form-field > textarea {
    width: calc(100% - 15px);
}

.table-fieldset tr td .form-field > .select2-container {
    width: 100%;
}

.table-fieldset tr td .form-field > .ql-toolbar,
.table-fieldset tr td .form-field > .ql-container {
    max-width: 100%;
}

div.settings-form textarea {
    width: 95%;
}

.settings-group {
    margin-left: 15px;
    margin-bottom: 20px;
    border: 1px solid #e5e5e5;
    border-right: 0px;
}

div.form .settings-group > fieldset {
    margin-bottom: 0px;
}

.settings-form .modifier-picker {
    margin-bottom: 15px;
}

.settings-form .modifier-list .modifier {
    width: 279px;
    padding: 5px;
    margin-bottom: 5px;
    background: linear-gradient(to top, #eee 0%, #fff 50%);
    border: 1px solid #aaa;
    border-radius: 5px;
}

.settings-form .modifier-list .modifier.invalid {
    background: #f2dede;
}

.settings-form .modifier-list input[type='number'] {
    width: 65px;
}

li.debug.enabled > a,
li.timezone_override.enabled > a {
    background-color: #51a351 !important;
    color: #fff;
}

form[data-form='debug'] {
    width: 163px;
    margin-bottom: 0px;
}

form[data-form='timezone_override'] {
    margin-bottom: 0px;
}

form[data-form='debug'] .control-group,
form[data-form='timezone_override'] .control-group {
    margin-bottom: 0px;
}

.block-list {
    position: relative;
}

.block-error {
    color: #b94a48;
}

span.date {
    white-space: nowrap;
}

span.date-block {
    display: inline-block;
    vertical-align: middle;
}

.ql-toolbar,
.ql-container {
    max-width: 600px;
    border-radius: 5px;
}

.ql-toolbar {
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}

.ql-container {
    min-height: 150px;
    background: #fff;
}

.ql-toolbar + .ql-container {
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
}

.ql-container.ql-disabled {
    border: 1px solid #ccc;
}

img.zoom {
    cursor: pointer;
}

#zoom {
    display: none;
    position: fixed;
    z-index: 11000;
    padding: 50px;
    left: 0;
    top: 0;
    width: calc(100% - 100px);
    height: calc(100% - 100px);
    overflow: auto;
    background-color: #000;
    background-color: rgba(0, 0, 0, 0.9);
}

#zoom > span.close {
    position: absolute;
    top: 25px;
    right: 25px;
    display: block;
    color: #f1f1f1;
    font-size: 40px;
    font-weight: bold;
    transition: 0.3s;
}

#zoom > span.close:hover,
#zoom > span.close:focus {
    color: #bbb;
    text-decoration: none;
    cursor: pointer;
}

#zoom > img {
    position: absolute;
    left: 50%;
    top: 50%;
    display: block;
    max-width: calc(100% - 100px);
    max-height: calc(100% - 100px);
    transform: translate(-50%, -50%);
    transform-origin: center center;
    animation-name: zoom;
    animation-duration: 0.5s;
}

@keyframes zoom {
    from {
        transform-origin: center center;
        transform: translate(-50%, -50%) scale(0);
    }
    to {
        transform-origin: center center;
        transform: translate(-50%, -50%) scale(1);
    }
}

.select2-flex-height .select2-choice {
    position: relative;
    height: auto;
    min-height: 28px;
}

.select2-flex-height .select2-choice > .select2-chosen {
    white-space: normal;
    word-break: break-all;
}

.select2-flex-height .select2-choice .select2-search-choice-close {
    top: calc(50% - 6px);
}

.select2-flex-height .select2-choice .select2-arrow b {
    height: 5px;
    position: relative;
    top: calc(50% - 2.5px);
    background-position: 0px -10px;
}

#select2-drop > .select2-search input {
    margin-bottom: 0px;
}

#select2-drop > .select2-search .checkbox {
    font-size: 12px;
    line-height: 32px;
}

#select2-drop > .select2-search .checkbox input {
    display: inline-block;
    vertical-align: middle;
}

#select2-drop > .select2-breadcrumbs {
    padding: 6px 12px;
    background: rgba(0, 0, 0, 0.8);
    font-size: 12px;
    word-break: break-all;
}

#select2-drop > .select2-breadcrumbs > span {
    color: #fff;
}

#select2-drop > .select2-breadcrumbs > span:not(:last-child):after {
    content: ' > ';
}

#select2-drop > .select2-breadcrumbs > span.select2-breadcrumb-selectable span:hover {
    color: #3875d7;
    cursor: pointer;
}

#select2-drop .select2-result {
    position: relative;
}

#select2-drop .select2-result .child-parent {
    display: block;
    font-size: 12px;
    font-style: italic;
    color: #999;
    margin-bottom: -4px;
    white-space: nowrap;
}

#select2-drop .select2-result .with-child-group {
    padding-right: 17px;
}

#select2-drop .select2-result .child-group {
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    display: flex;
    padding: 3px 10px 4px;
    align-items: center;
    color: #000;
}

#select2-drop .select2-result .child-group i {
    width: auto;
    margin-right: 0px;
}

#select2-drop .select2-result.select2-highlighted .child-parent,
#select2-drop .select2-result:hover .child-parent,
#select2-drop .select2-result.select2-highlighted .child-group,
#select2-drop .select2-result:hover .child-group {
    color: #fff;
}

#select2-drop .select2-result.select2-highlighted a.child-group,
#select2-drop .select2-result:hover a.child-group {
    color: #000;
}

#select2-drop .select2-result a.child-group:hover {
    background: rgba(0, 0, 0, 0.1);
    color: #fff;
    text-decoration: none;
}

.select2-chosen.asset {
    padding: 3px 0px 4px;
}

.select2-result-label.asset > div > i {
    position: absolute;
    top: calc(50% - 7px);
}

.select2-result-label.asset > div > div.fields {
    margin-left: 19px;
}

.select2-result-label.asset div.fields,
.select2-chosen.asset div.fields {
    display: flex;
    min-width: 300px;
    line-height: 16px;
}

.select2-result-label.asset div.fields > div,
.select2-chosen.asset div.fields > div {
    flex: 1 1 25%;
    padding: 0px 5px 0px 10px;
    font-size: 12px;
    box-sizing: border-box;
}

.select2-result-label.asset div.fields > div:first-child:nth-last-child(4),
.select2-chosen.asset div.fields > div:first-child:nth-last-child(4) ~ div {
    min-width: 25%;
    flex: 1 0 25%;
}

.select2-result-label.asset div.fields > div:first-child:nth-last-child(5),
.select2-chosen.asset div.fields > div:first-child:nth-last-child(5) ~ div {
    min-width: 20%;
    flex: 1 0 20%;
}

.select2-result-label.asset div.fields > div:last-child,
.select2-chosen.asset div.fields > div:last-child {
    padding-right: 0px;
}

.select2-result-label.asset div.fields > div > span,
.select2-chosen.asset div.fields > div > span {
    display: block;
    margin-left: -10px;
    font-weight: bold;
    font-size: 14px;
}

.select2-result:not(.select2-highlighted) .select2-result-label.asset.selected {
    background: rgba(0, 0, 0, 0.8) !important;
    color: #fff !important;
}

#assets-grid {
    font-size: 10px;
}

#assets-grid th,
#assets-grid td {
    line-height: 15px;
}

#assets-grid tbody td {
    padding: 2px;
    word-break: break-all;
    word-break: break-word;
}

#assets-grid tbody td:nth-child(2) {
    height: 30px;
}

#assets-grid tr.filter-total > td {
    line-height: 20px;
}

#assets-grid td.extrarow {
    line-height: 20px;
    background: #e4e4e4;
    padding: 4px 5px;
}

#assets-grid td.extrarow > div {
    line-height: 20px;
}

#assets-grid td.data-actions a {
    display: inline-block;
    margin-bottom: 0px;
}

#assets-grid td.data-actions a:last-child {
    margin-bottom: 0px;
}

#assets-grid .select2-container.input-small {
    min-width: 100px !important;
    width: calc(100% + 15px) !important;
}

.filter-container {
    text-align: center;
}

.filter-container > select,
.filter-container > .select2-container {
    margin-right: -15px;
}

.filter-container > select {
    width: calc(100% + 15px) !important;
}

.select2-container {
    width: 220px;
}

.select2-container.input-small {
    width: 120px !important;
}

.select2-container.input-medium {
    width: 150px !important;
}

table.treetable span.indenter:empty {
    margin-left: -15px;
}

.filter-container .filter-date input {
    margin-right: -15px;
}

#holiday-users.table * {
    box-sizing: border-box;
}

#holiday-users.table th {
    text-align: center;
}

#holiday-users.table td {
    text-align: center;
    vertical-align: middle;
}

#holiday-users.table td .select2-container {
    text-align: left;
}

#holiday-users.table td textarea {
    min-width: 200px;
    width: 100%;
    min-height: 50px;
}

#holiday-users.table td select {
    width: 100%;
}

#holiday-users.table td input[type='checkbox'] {
    margin-top: 0px;
}

#holiday-users.table td .hint {
    width: auto;
    padding-top: 9px;
    font-size: 12px;
    line-height: 12px;
    color: #3a87ad;
}

#holiday-users.table td .error {
    width: auto;
    padding-top: 9px;
    font-size: 12px;
    line-height: 12px;
    color: #b94a48;
}

.hint-error {
    color: #b94a48;
}

#holiday-users.table td.with-actions {
    position: relative;
    padding-right: 35px;
}

#holiday-users.table .actions {
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translate(0, -50%);
}

#holiday-users.table .actions button {
    display: block;
    margin-bottom: 2.5px;
}

#holiday-users.table .actions button:last-child {
    margin-bottom: 0px;
}

.alert table.table {
    background-color: #f5f5f5;
}

#assets-grid tr.released td:nth-child(n + 17):nth-child(-n + 37) {
    color: #999999;
}

#assets-grid tr.depreciated:not(.released) td:nth-child(n + 17):nth-child(-n + 37) {
    color: #bbb;
}

.table thead th a.sort {
    display: block;
    position: relative;
    cursor: pointer;
}

.table thead th a.sort.asc,
.table thead th a.sort.desc {
    padding-right: 10px;
}

.table thead th a.sort.asc:after,
.table thead th a.sort.desc:after {
    content: '';
    position: absolute;
    right: 0px;
    top: calc(50% - 2px);
    display: block;
    width: 0px;
    height: 0px;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
}

.table thead th a.sort.asc:after {
    border-top: 4px solid #000;
}

.table thead th a.sort.desc:after {
    border-bottom: 4px solid #000;
}

.grid-view .summary {
    font-weight: bold;
}

.select2-drop.in-modal {
    z-index: 11030;
}

tr.filter-total td {
    background-color: #d9edf7;
    border: 1px solid #bce8f1;
    color: #3a87ad;
    font-weight: bold;
    text-align: left;
    line-height: 30px;
}

[data-view='file'] {
    cursor: pointer;
}

div[data-view='file'] {
    position: relative;
    top: -10px;
    width: 250px;
    display: block;
    margin-bottom: 5px;
    min-height: 32px;
    background: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 4px;
    white-space: nowrap;
    overflow: hidden;
    text-align: left;
    text-overflow: ellipsis;
}

div[data-view='file']:before {
    display: inline-block;
    content: '';
    width: 40px;
    height: 42px;
    margin-right: 5px;
    background: #bce8f1 url('/assets/img/files/text.svg');
    background-size: contain;
    border-right: 1px solid #e5e5e5;
    vertical-align: middle;
}

div[data-view='file'][data-type='application/pdf']:before {
    background-image: url('/assets/img/files/application/pdf.svg');
}

div[data-view='file'][data-type='image/gif']:before {
    background-image: url('/assets/img/files/image/gif.svg');
}

div[data-view='file'][data-type='image/jpg']:before {
    background-image: url('/assets/img/files/image/jpg.svg');
}

div[data-view='file'][data-type='image/png']:before {
    background-image: url('/assets/img/files/image/png.svg');
}

div[data-view='file'][data-type='image/svg']:before {
    background-image: url('/assets/img/files/image/svg.svg');
}

ul.files {
    list-style: none;
    margin-left: 0px;
    margin-bottom: 0px;
}

ul.files li {
    display: flex;
    align-items: center;
    margin-bottom: 5px;
}

ul.files li:last-child {
    margin-bottom: 0px;
}

ul.files li > div[data-view='file'] {
    top: 0px;
    margin-bottom: 0px;
}

ul.files li > a.btn {
    margin-left: 5px;
}

.modal.file-viewer {
    width: 1024px;
    margin-left: -512px;
}

.modal.file-viewer .modal-body {
    max-height: 650px;
}

.modal.file-viewer iframe {
    width: 100%;
    height: 600px;
    border: 1px solid #eee;
}

.modal.file-viewer img {
    display: block;
    margin: 0px auto;
}

.logs-attributes button[data-action='expand'],
.logs-attributes button[data-action='collapse'] {
    display: none;
    margin: 5px auto 0px;
}

.logs-attributes[data-expandable='true']:not(.expanded) button[data-action='expand'] {
    display: block;
}

.logs-attributes[data-expandable='true'].expanded button[data-action='collapse'] {
    display: block;
}

.logs-attributes > .logs-attributes-content {
    max-height: 100px;
    overflow: hidden;
}

.logs-attributes.expanded > .logs-attributes-content {
    max-height: none;
}

.table tbody > tr > td.success {
    background-color: #dff0d8 !important;
}

.table tbody > tr > td.error {
    background-color: #f2dede !important;
}

.table tbody > tr > td.warning {
    background-color: #fcf8e3 !important;
}

.table tbody > tr > td.info {
    background-color: #d9edf7 !important;
}

.autoresponder-modal {
    width: 480px;
    margin-left: -225px;
}

.autoresponder-modal .modal-body,
.autoresponder-modal .modal-footer {
    font-weight: normal;
}

.autoresponder-modal .modal-body {
    text-align: center;
}

.autoresponder-modal [data-view='subject'] input {
    width: 400px;
    margin-top: 5px;
}

.autoresponder-modal [data-view='body'] textarea {
    width: 400px;
    height: 150px;
    margin-top: 5px;
}

#tracker {
    display: flex;
    padding: 0px;
}

#tracker > div {
    flex: 1 1 auto;
    padding: 10px;
}

#tracker > div:first-child {
    min-width: 150px;
    flex: 0 0 150px;
    border-right: 1px solid #e3e3e3;
}

#tracker-activity-timeline .vis-item.interval {
    background: #d4edda;
}

#tracker-activity-timeline .vis-item.working-interval {
    background: #cce5ff;
}

dl.tracker-report-duration dt {
    width: 100px;
    font-weight: normal;
}

dl.tracker-report-duration dd {
    margin-left: 105px;
}

.schedule-days-picker {
    margin: 0px 0px 20px 40px;
}

.schedule-days-picker .schedule-days {
    display: flex;
    flex-wrap: wrap;
}

.schedule-days-picker .schedule-day {
    flex: 0 0 100px;
    padding: 5px;
    margin: 0px 5px 5px 0px;
    background: linear-gradient(to top, #eee 0%, #fff 50%);
    border: 1px solid #aaa;
    border-radius: 5px;
}

.schedule-days-picker .schedule-day > div {
    font-weight: bolder;
    text-align: center;
    margin-bottom: 5px;
}

.schedule-days-picker .schedule-day > select {
    width: 100px;
}

.working-intervals-picker .intervals-list .interval {
    width: 170px;
    padding: 5px;
    margin-bottom: 5px;
    background: linear-gradient(to top, #eee 0%, #fff 50%);
    border: 1px solid #aaa;
    border-radius: 5px;
}

.working-intervals-picker .working-intervals-error {
    color: #b94a48;
    text-align: left;
    margin: 0px 0px 5px;
}

.request-clarifications {
    padding: 20px;
}

.form-horizontal .request-clarifications {
    padding-left: 190px;
}

.requests_highlight .controls.value {
    color: #0044cc;
}

.field_2-home_work_disaster-schedule th .split {
    font-weight: normal;
    color: #0044cc;
}

.field_2-home_work_disaster-schedule td .schedule .type {
    position: relative;
}

.field_2-home_work_disaster-schedule td .schedule .total {
    position: absolute;
    left: 90px;
    top: 50%;
    margin-top: -10px;
}

.field_2-home_work_disaster-schedule td .schedule .type.break .total {
    top: calc(50% + 12.5px);
}

.help-block:empty {
    margin-bottom: 0px;
}

.help-block.light,
.help-inline.light {
    color: #999999;
}

p.help-block.help-inline {
    display: inline-block;
    margin-top: 0px;
}

.transfer_assignments table {
    width: auto;
}

.transfer_assignments th,
.transfer_assignments td,
.transfer_assets th,
.transfer_assets td {
    text-align: center;
    vertical-align: middle;
}

.process {
    margin-bottom: 4px;
}

* > .process:last-child {
    margin-bottom: 0px;
}

.process i {
    position: relative;
    top: -1px;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 4px;
    vertical-align: middle;
    background: no-repeat url('/assets/img/processes/default.png') center center;
}

.process i[data-process='explorer.exe'] {
    background-image: url('/assets/img/processes/explorer.png');
}

.process i[data-process='chrome.exe'] {
    background-image: url('/assets/img/processes/chrome.png');
}

.process i[data-process='firefox.exe'] {
    background-image: url('/assets/img/processes/firefox.png');
}

.process i[data-process='skype.exe'] {
    background-image: url('/assets/img/processes/skype.png');
}

.process i[data-process='outlook.exe'] {
    background-image: url('/assets/img/processes/outlook.png');
}

.process i[data-process='element.exe'] {
    background-image: url('/assets/img/processes/element.png');
}

.process i[data-process='activitytracker.exe'] {
    background-image: url('/assets/img/processes/activitytracker.png');
}

.process [data-toggle='tooltip'] {
    max-width: 250px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: top;
}

.process-stats {
    margin-bottom: 0px;
}

.process-stats li {
    display: block;
    white-space: nowrap;
    text-align: center;
}

.activity_interval_info {
    display: flex;
    align-items: center;
}

.activity_interval_info .processes {
    flex-grow: 1;
    padding-right: 10px;
}

.ql-editor.ql-editor-viewer {
    padding: 0px;
    height: auto;
}

.ql-container.ql-disabled > .ql-editor.ql-editor-viewer {
    padding: 12px 15px;
}

.ql-editor.ql-editor-viewer > * {
    cursor: inherit;
}

.ql-editor.ql-editor-viewer p:empty {
    height: 1.42em;
}

.ql-editor.ql-editor-viewer ul,
.ql-editor.ql-editor-viewer ol {
    padding-left: 1.5em;
}

.ql-editor.ql-editor-viewer ul li:not([data-list]),
.ql-editor.ql-editor-viewer ol li:not([data-list]) {
    padding-left: 0px;
}

.ql-editor.ql-editor-viewer ul li:not([data-list]) {
    list-style-type: disc;
}

.ql-editor.ql-editor-viewer ol li:not([data-list]) {
    list-style-type: decimal;
}

.fa-skull {
    content: '☠';
}

.schedule-calendar[data-mode='button'] {
    display: inline-block;
}

.schedule-calendar-container {
    display: flex;
    flex-direction: column;
    margin: 5px 0px;
    border: 1px solid #ddd;
    border-radius: 4px;
}

.schedule-calendar-header {
    text-align: center;
    font-weight: bold;
}

.schedule-calendar-body {
    display: flex;
    flex-direction: row;
    border-top: 1px solid #ddd;
}

.schedule-calendar-days {
    display: flex;
    flex-direction: row;
    flex: 1 0 auto;
    justify-content: stretch;
}

.schedule-calendar-days > div {
    flex: 1 0 25px;
    border-right: 1px solid #ddd;
    text-align: center;
    line-height: 26px;
    width: 25px;
}

.schedule-calendar-picker {
    position: relative;
    flex: 0 0 auto;
    padding: 2px;
}

.schedule-calendar-picker input {
    position: absolute;
    inset: 0px;
    visibility: hidden;
}

.schedule-calendar-legend {
    display: flex;
    flex-wrap: nowrap;
    justify-content: end;
    align-items: center;
    white-space: nowrap;
    gap: 10px;
    font-size: 12px;
}

.schedule-calendar-legend > div > span {
    display: inline-block;
    width: 14px;
    height: 14px;
    vertical-align: middle;
    margin-top: -3px;
    border: 1px solid #ddd;
}

.datepicker.schedule-calendar-datepicker table tr td.day {
    border-radius: 0px;
}

.datepicker.schedule-calendar-datepicker table tr td.day.old,
.datepicker.schedule-calendar-datepicker table tr td.day.new {
    visibility: visible;
}

.datepicker.schedule-calendar-datepicker table tr td.day.old:not(.disabled),
.datepicker.schedule-calendar-datepicker table tr td.day.new:not(.disabled) {
    color: inherit;
}

.datepicker.schedule-calendar-datepicker table tr td.active,
.datepicker.schedule-calendar-datepicker table tr td.active:hover,
.datepicker.schedule-calendar-datepicker table tr td.active.disabled,
.datepicker.schedule-calendar-datepicker table tr td.active.disabled:hover {
    background: none;
    color: inherit;
    text-shadow: none;
}

.datepicker.schedule-calendar-datepicker table tr td.active:hover {
    background: #eeeeee;
}

.schedule-calendar-days > div:hover,
.datepicker.schedule-calendar-datepicker table tr td:hover {
    cursor: help;
}

.datepicker.schedule-calendar-datepicker table tr td.disabled:hover {
    cursor: default;
}

.schedule-calendar-days > div.standart,
.schedule-calendar-days > div.standart:hover,
.schedule-calendar-legend > div.standart > span,
.datepicker.schedule-calendar-datepicker table tr td.standart,
.datepicker.schedule-calendar-datepicker table tr td.standart:hover {
    background: #fecaca !important;
    color: #b91c1c !important;
}

.schedule-calendar-days > div.weekend,
.schedule-calendar-days > div.weekend:hover,
.schedule-calendar-legend > div.weekend > span,
.datepicker.schedule-calendar-datepicker table tr td.weekend,
.datepicker.schedule-calendar-datepicker table tr td.weekend:hover {
    background: #dcfce7 !important;
    color: #16a34a !important;
}

.schedule-calendar-days > div.reduced,
.schedule-calendar-days > div.reduced:hover,
.schedule-calendar-legend > div.reduced > span,
.datepicker.schedule-calendar-datepicker table tr td.reduced,
.datepicker.schedule-calendar-datepicker table tr td.reduced:hover {
    background: #fef3c7 !important;
    color: #f59e0b !important;
}

.asset-deprecation-data-item[data-index='blank'] {
    display: none;
}

.asset-deprecation-data-item input:disabled,
.asset-deprecation-data-item input:read-only,
.asset-deprecation-data-item select:disabled {
    border: none;
    background: none;
    outline: none;
    box-shadow: none;
    cursor: default;
    opacity: 1;
    padding: 4px 7px;
}

.asset-deprecation-data-item select:disabled {
    appearance: none;
    line-height: 18px;
    height: 28px;
    padding: 4px 20px 4px 10px;
    user-select: text;
}

.asset-deprecation-data-item > td {
    padding: 4px;
}

.asset-deprecation-data-item > td:nth-child(1) {
    text-align: right;
}

.asset-deprecation-data-item > td:nth-child(3) {
    white-space: nowrap;
}

.asset-deprecation-data-item > td:nth-child(3) select {
    width: 100%;
    text-align: center;
}

.asset-deprecation-data-item > td:nth-child(3) select:has(> option[value='custom']:checked) {
    width: 100px;
}

.asset-deprecation-data-item > td:nth-child(3) .form-field {
    margin-left: 2px;
}

.asset-deprecation-data-item > td:nth-child(3) input,
.asset-deprecation-data-item > td:nth-child(4) input {
    text-align: center;
}

table.assets-popover-table {
    font-size: 10px;
    text-align: center;
    margin-bottom: 0px;
}

table.assets-popover-table th,
table.assets-popover-table td {
    text-align: center;
    line-height: 12px;
    padding: 4px;
    max-width: 60px;
}
