ul.menu {
    overflow-x: auto !important;
    height: calc(100% - 34px ) !important;
}
ul.menu li.current a {
    text-decoration: underline;
    color:rgb(14, 86, 141);
    font-weight: bold;
}
.accordion {
    background-color: #eee;
    color: #444;
    cursor: pointer;
    padding: 18px;
    width: 100%;
    text-align: left;
    border: none;
    outline: none;
    transition: 0.4s;
  }
  .accordion + * {
    padding: 18px 0px;
    background-color: white;
    display: none;
    overflow: hidden;
  }
  .accordion:hover {
    background-color: #ccc;
  }

.loader {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    animation: rotate 1s linear infinite;

    z-index: 50;
    position: fixed;
    top:calc(50% - 24px);
    left:calc(50% - 24px);
  }
.loader::before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    inset: 0px;
    border-radius: 50%;
    border: 5px solid #FFF;
    animation: prixClipFix 2s linear infinite ;
}

@keyframes rotate {
    100%   {transform: rotate(360deg)}
}

@keyframes prixClipFix {
    0%   {clip-path:polygon(50% 50%,0 0,0 0,0 0,0 0,0 0)}
    25%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 0,100% 0,100% 0)}
    50%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,100% 100%,100% 100%)}
    75%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 100%)}
    100% {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 0)}
}
.loader-wrapper {
    position: fixed;
    width: 100%;
    height: 100%;
    top:0px;
    left:0px;
    right: 0px;
    bottom: 0px;
    z-index: 9999;
}
.loader-bg {
    background-color: #000;
    opacity: 0.5;
    width: 100%;
    height: 100%;
}
.loader-wrapper.hide {
    display: none;
}
.stop-scrolling {
    height: 100%;
    overflow: hidden;
}

tr.item .ui-spinner {
    vertical-align: top !important;
}
.filter_form .buttons + .buttons {
    margin-left: 10px;
}

.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}

.inline-block {
    display: flex;
}

.form.filter_form_inline {
    padding: 0px !important;
    margin-bottom: 5px;
}
.form.filter_form.filter_form_inline button {
    margin-top: 0;
}
.form.filter_form.filter_form_inline .select2 {
    position: relative;
    top: -1px;
}
.form.filter_form.filter_form_inline .float-left {
    min-width: 200px;
    max-width: 200px;
    margin-right: 15px;
}
.form.filter_form.filter_form_inline .float-left + .float-left {
    margin-right: 15px;
}

label + .ui-spinner.ui-widget.ui-widget-content {
    display: block;
}
label + textarea {
    width: 100%;
    display: block;
}


.form.filter_form.filter_form_inline .filter_form_element {
    min-width: 200px;
    max-width: 200px;
    width: 200px;
    margin-right: 15px;
}
.form.filter_form.filter_form_inline .filter_form_element:last-child {
    margin-right: 0px;
}


#app_modal {
    display: none;
}
.float-left {
    float: left;
}
.float-right {
    float: right;
}
.clearfix:before,
.clearfix:after {
 content: "";
 display: table;
}
.clearfix:after {
 clear: both;
}
.mt-0 {
    margin-top: 0;
}
.mb-3 {
    margin-bottom: 3px !important;
}
.mr-10 {
    margin-right: 10px;
}
.ml-10 {
    margin-left: 10px;
}
.ui-spinner.ui-corner-all.ui-widget.ui-widget-content input {
    border: 0;
}
.d-flex {
    display: flex;
}
.flex-wrap {
    flex-wrap: wrap!important;
}


.error + .select2-container--default .select2-selection--single {
    background: #f99;
    border: 1px solid #634949;

}
.error + .select2-container--default .select2-selection__placeholder {
    color:black;
}


div#navtop {
    z-index: 5;
}
div#logo {
    z-index: 4;
    height: 34px;
}
#content h1:first-child {
    z-index: 4;
    font-size: 18px;
}
ol, ul {
    padding-left: 0rem;
}

#content {
    background: #fff;
    padding: 77px 10px 10px 8px;
}
#content h1:first-child {
    width: 100%;
    left: unset !important;
    margin: unset !important;
    padding: 5px 8px;
}

@media (max-width: 1200px) {
    div#logo, #navtop {
        cursor: pointer
    }

    div#logo:before {
        content: "";
        position: absolute;
        left: 10px;
        top: 6px;
        width: 30px;
        height: 24px;
        display: block;
        background: repeating-linear-gradient( white 0px, white 4px, transparent 0px, transparent 9px )
    }

    ul.menu {
        display: none
    }

    ul.menu .home-item {
        display: block
    }

    ul.menu.opened {
        display: block;
        z-index: 2
    }

    #content {
        padding-left: 2px;
        padding-right: 2px
    }

    #content h1:first-child {
        left: 0;
        margin-left: 2px;
        margin-right: 2px;
        white-space: nowrap;
        overflow-x: auto;
        overflow-y: hidden
    }

    div#logo {
        padding-left: 2px;
        padding-right: 2px
    }

    div#logo a {
        display: none
    }

    h1 {
        font-size: 13px
    }

    table {
        display: block;
        overflow-x: auto
    }

    table th {
        white-space: nowrap
    }
}


* {
    font-family: Cambria;
    font-size: 14px;
}
button {
    font-size: 14px !important;
    font-family: Cambria !important;
}

input[type='text'], 
input[type='password'], 
input[type='search'],
input[type='number'],
select:not([multiple]) {
    height: 19px;
}
input[type='text'], 
input[type='password'], 
input[type='search'],
input[type='number'],
textarea,
select {
    font-size: 14px !important;
    font-family: Cambria !important;
    border-radius: 0 !important;
    border: 1px solid #aaa !important;
}
table .item td {
    vertical-align: top;
}
table .item td .select2-container {
    vertical-align: baseline;
    margin-top: 1px;
}
table tr.item > td > input.error, 
table tr.item > td > select.error {
    margin-top: 0px;
}
form table {
    margin-top: 5px;
}

.ui-spinner.ui-widget.ui-widget-content {
    height: 19px;
    border-radius: 0 !important;
    border: 1px solid #aaa !important;
}
.ui-spinner.ui-widget.ui-widget-content input {
    padding: 0;
    margin: 0;
    height: 17px;
    border: 0 !important;
    position: relative;
    top: -3px;
    padding: 0 2px;
}
.number-top-0 .ui-spinner.ui-widget.ui-widget-content input {
    /* top: 0px; */
    padding: 0 2px;
}

.modal-content {
    min-width: 60vw;
    /* max-height: 80vh; */
}
.modal-content input[type='text'],
.modal-content input[type='password'],
.modal-content input[type='search'],
.modal-content input[type='number'],
textarea,
.modal-content select {
    width: 100%; 
    font-size: 14px !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered, .select2-container--default .select2-selection--single .select2-selection__placeholder {
    font-size: 14px !important;
}

.form-control.error + .select2-container--default .select2-selection--single {
    background: #f99;
    border: 1px solid #634949;

}
.form-control.error + .select2-container--default .select2-selection__placeholder {
    color:black;
}

button {
    font-size: 13px;
}

.btn {
    margin-top: 0px; 
}
.btn-sm {
    padding: 0 3px !important;  
    border-radius: 5px;
    height: 19px !important;  
    font-size: 13px !important;  
}

.d-flex .form-element + .form-element {
    margin-left: 15px;
}

.mw200px {
    min-width: 200px;
}

.popover-text {
    cursor: pointer;
    color: #37a;
    text-decoration: none;
}
.popover-stext {
    display: flex;
}

div.checkbox {
    display: flex;
    padding: 5px 0;
}
div.checkbox > label {
    align-items: center!important;
    display: flex!important;
}
div.form div.checkbox input[type="checkbox"] {
    top: 0px;
}

.text-sm {
    font-size: 14px;
}

#ui-datepicker-div.ui-datepicker  {
    z-index: 2000 !important;
}

.modal-footer:empty {
    display: none;
}
.modal-content .modal-loader {
    position: absolute;
    width: calc(100% - 2em);
    height: calc(100% );
    background: rgb(0, 0, 0);
    top: calc(0.5em );
    opacity: 0.4;
    text-align: center;
    display: none;
    align-items: center!important;
    justify-content: center!important;
    z-index: 9999;
}
.modal-content .modal-loader img {
    width: 50px;
    height: 50px;
}
.equipment-link {
    color: darkgreen;
    text-decoration: none;
}
.destroyed-sim-line {
    color: rgb(173, 28, 28) !important;
    text-decoration: line-through !important;
}


.row.dt-top {
    min-height: 30px;
}
.dataTables_wrapper {
    width: calc(100% - 2px);
}

.dataTables_wrapper tr.filter td > * {
    width: 100%;
}
.dataTables_wrapper thead tr.filter td.actions:empty {
    display: none;
}
.dataTables_wrapper .sorting_disabled::before,
.dataTables_wrapper .sorting_disabled::after {
    display: none !important;
    cursor: default !important;
}
div.dataTables_wrapper div.dataTables_filter {
    text-align: left;
}
div.dataTables_wrapper div.dataTables_length {
    text-align: right;
}
div.dataTables_wrapper div.dataTables_filter input {
    margin-left: 0em;
    padding: 3px;
}

div.dataTables_wrapper  .actions {
    text-align: center !important;
}

div.dataTables_wrapper .dt-top-left {
    display: flex;
}
div.dataTables_wrapper .dt-top-right {
    display: flex;
}
div.dataTables_wrapper .dt-top-left div.dataTables_paginate ul.pagination {
    justify-content: flex-start;
}
.dt-top .dataTables_length select {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: 0;
}
.dt-top .dataTables_paginate  .paginate_button.page-item.first a {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.dataTables_paginate  .paginate_button.page-item.first a,
.dataTables_paginate  .paginate_button.page-item.previous a ,
.dataTables_paginate  .paginate_button.page-item.next a,
.dataTables_paginate  .paginate_button.page-item.last a {
    height: 31px;
}
div.dataTables_wrapper .dt-bottom-left {
    display: flex;
    justify-content: flex-start;
}
div.dataTables_wrapper .dt-bottom-right {
    display: flex;
    justify-content: flex-end;
}
div.dataTables_wrapper .dt-bottom-right .dataTables_info {
    justify-content: flex-end;
}
.dt-bottom .dataTables_length select {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: 0;
}
.dt-bottom .dataTables_paginate  .paginate_button.page-item.first a {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.dt-bottom ul.pagination {
    margin: 0 !important;
}

table.dataTable thead th.ui-state-default:first-child, 
table.dataTable tfoot th.ui-state-default:first-child {
    border-left-width: 0px;
}
table.dataTable>thead>tr>th, 
table.dataTable>thead>tr>td {
    padding: 3px;
}
table.dataTable tbody th, 
table.dataTable tbody td {
    padding: 3px;
}
.table-bordered > :not(caption) > * > * {
    border-width: 0;
}
.dataTables_wrapper .dataTables_paginate {
    padding-top: 0;
}
.dataTables_wrapper .dataTables_paginate .fg-button {
    padding: 3px;
    min-width: 25px;
    margin: 2px;
    text-align: center;
    background: #fff;
    border: 1px solid #aaa;
    line-height: 1.5em;
    font-size: 12px;
    min-width: 25px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}

table.dataTable .header th {
    color: #37a !important;
}
table.dataTable thead>tr>th.sorting:before, table.dataTable thead>tr>th.sorting_asc:before, table.dataTable thead>tr>th.sorting_desc:before, table.dataTable thead>tr>th.sorting_asc_disabled:before, table.dataTable thead>tr>th.sorting_desc_disabled:before, table.dataTable thead>tr>td.sorting:before, table.dataTable thead>tr>td.sorting_asc:before, table.dataTable thead>tr>td.sorting_desc:before, table.dataTable thead>tr>td.sorting_asc_disabled:before, table.dataTable thead>tr>td.sorting_desc_disabled:before {
    bottom: calc(50% - 11px);
    content: " ▲";
}
table.dataTable thead>tr>th.sorting:after, table.dataTable thead>tr>th.sorting_asc:after, table.dataTable thead>tr>th.sorting_desc:after, table.dataTable thead>tr>th.sorting_asc_disabled:after, table.dataTable thead>tr>th.sorting_desc_disabled:after, table.dataTable thead>tr>td.sorting:after, table.dataTable thead>tr>td.sorting_asc:after, table.dataTable thead>tr>td.sorting_desc:after, table.dataTable thead>tr>td.sorting_asc_disabled:after, table.dataTable thead>tr>td.sorting_desc_disabled:after {
    top: calc(50% - 4px);
    content: " ▼";
}
table.dataTable .header th:before,
table.dataTable .header th:after {
    display: none !important;
    font-size: 16px !important;
    color: #37a !important;
    line-height: 16px !important;
    opacity: 1 !important;
}
table.dataTable .header th.sorting_desc:before {
    display: inline-block !important;
}
table.dataTable .header th.sorting_asc::after {
    display: inline-block !important;
}
.dataTables_wrapper .dataTables_paginate .fg-button {
    padding: 3px;
}

table.dataTable tbody th {
    background-color: #eee;
}
.dataTables_wrapper .dataTables_filter input {
    border: 1px solid #aaa;
    background-color: #eee;
    border-radius: 0px;
    padding: 0px;
    background-color: transparent;
    color: inherit;
    margin-left: 3px;
}
.dt-search {
    height: 19px;
    position: relative;
    top: -1px;
}


.select2-container--default .select2-selection--single .select2-selection__clear {
    margin: 0;
    margin-right: 20px;
    height: 17px;
    padding: 0;
}
.select2-container--default .select2-selection--single .select2-selection__clear span {
    position: relative;
    top: -1px;
}

.select2-container .select2-selection--single {
    height: 19px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 17px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered,
.select2-container--default .select2-selection--single .select2-selection__placeholder {
    font-weight: normal;
    color: #333;
    padding-right: 0px;
    line-height: 17px;
}
.select2-container--default .select2-selection--single {
    background-color: #fff;
    border: 1px solid #aaa;
    border-radius: 0px;
}
.select2-container .select2-selection--single .select2-selection__rendered {
    padding-left: 3px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
    height: 19px;
}
.select2-results__option {
    padding: 3px;
    color: #333;
}
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: #eee;
    color: #333;
}
.select2-container + fieldset {
    margin-top: 10px;
}
table.list tr.filter .select2  {
	width: 100%;
	position: relative;
	top: -2px;
}
.ui-dialog button {
    cursor: pointer;
}

.client-objects-name-field, .tarif-state-wrapper  {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
}

.tarif-state-wrapper {
    font-size: large;
}

.tarif-state-wrapper .on-tariffing {
    color: green;
}

.tarif-state-wrapper .not-tariffing {
    text-decoration: line-through;
}

.additional-attributes-html {
    display: flex;
    gap: 8px;
    padding-left: 4px;
}
.additional-attributes-html img {
    padding-top: 2px;
}