a {
    text-decoration: none;
}
/* layout */
.css-authwrapper {padding: 5em;}
@media(max-width:992px) { .css-authwrapper {padding: 0;}  }
.css-logo {height: 6em; }
@media(max-width:992px) { .css-logo {height: 3em; } }
.js-menu {display: none;}

/* forms */
.css-passviewer {position: absolute; bottom: var(--m); right: 0;}
@media(max-width:992px) { .css-authform {background: transparent !important; } }

/* иконки из дизайна */
.icon.main {mask-image: url(../img/icons/main.svg); -webkit-mask-image: url(../img/icons/main.svg);}
.icon.more {mask-image: url(../img/icons/more.svg); -webkit-mask-image: url(../img/icons/more.svg);}
.icon.agreement {mask-image: url(../img/icons/agreement.svg); -webkit-mask-image: url(../img/icons/agreement.svg);}
.icon.map {mask-image: url(../img/icons/map.svg); -webkit-mask-image: url(../img/icons/map.svg);}
.icon.requests {mask-image: url(../img/icons/requests.svg); -webkit-mask-image: url(../img/icons/requests.svg);}
.icon.activities {mask-image: url(../img/icons/activities.svg); -webkit-mask-image: url(../img/icons/activities.svg);}
.icon.documents {mask-image: url(../img/icons/documents.svg); -webkit-mask-image: url(../img/icons/documents.svg);}
.icon.objects {mask-image: url(../img/icons/objects.svg); -webkit-mask-image: url(../img/icons/objects.svg);}

/* navigation */
.header__burger {width: 35px;height: 35px;min-width: 35px;cursor: pointer;position: relative;z-index: 5;}
.header__burger span:nth-child(1) {top: 11px;}
.header__burger span {display: block;position: absolute;width: 100%;height: 1px;border-radius: 1px;background: var(--grey);transition: opacity .3s ease,background-color .3s ease,-webkit-transform .3s ease;transition: transform .3s ease,opacity .3s ease,background-color .3s ease;transition: transform .3s ease,opacity .3s ease,background-color .3s ease,-webkit-transform .3s ease;-webkit-transform-origin: 50%;transform-origin: 50%;}
.header__burger span:nth-child(2) {top: calc(50% - 1px);}
.header__burger span:nth-child(3) {bottom: 11px;}
.header__burger.is-active span:nth-child(1) {-webkit-transform: rotate(135deg);transform: rotate(135deg);margin-top: 6px;}
.header__burger.is-active span:nth-child(2) {opacity: 0;}
.header__burger.is-active span:nth-child(3) {-webkit-transform: rotate(-135deg);transform: rotate(-135deg);margin-bottom: 6px;}
.header__burger.is-active span {background: #2c2c2c;width: 70%;margin-left: -3px;}
.profile-link .avatar-check {
    background: var(--blue);
    display: block;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    text-align: center;
    border: 1px solid #fff;
    position: absolute;
    margin-top: -48px;
    margin-left: 35px;
    color: #fff;
    font-size: 12px;
}
.profile-link-collapse {
    display: none;
    flex-direction: column;
}
.profile-link-collapse:not(.mobile) {
    z-index: 1;
    position: absolute;
    right: -15px;
    margin-top: 10px;
    background: #fff;
    padding: 15px;
    border-radius: 10px;
    -webkit-box-shadow: 4px 4px 8px 0 rgba(34, 60, 80, 0.2);
    -moz-box-shadow: 4px 4px 8px 0 rgba(34, 60, 80, 0.2);
    box-shadow: 4px 4px 8px 0 rgba(34, 60, 80, 0.2);
}
.profile-link-collapse.show {
    display: flex;
}
.profile-link-collapse:not(.mobile):before {
    content: '';
    border: 12px solid transparent;
    border-bottom: 12px solid #fff;
    position: absolute;
    top: -24px;
    right: 11px;
    width: 0;
}
.profile-link-collapse.mobile .mb-2 {
    margin: 0!important;
}

/* owl carousel custom */
.owl-nav > button {
    position: absolute;
    background: #fff!important;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    -webkit-box-shadow: 1px 1px 5px 0 rgba(34, 60, 80, 0.1);
    -moz-box-shadow: 1px 1px 5px 0 rgba(34, 60, 80, 0.1);
    box-shadow: 1px 1px 5px 0 rgba(34, 60, 80, 0.1);
}
.owl-prev {left: 0; top: 150px}
.owl-next {right: 0; top: 150px}

/* CALENDAR */
.table-calendar {
}
.table-calendar td {
    padding: 8px;
    background: #fff;
    text-align: center;
    vertical-align: middle;
    position: relative;
    width: 100px;
    height: 60px;
    cursor: pointer;
    font-size: 17px;
    color: #000;
}
.table-calendar th {
    padding: 8px;
    text-align: center;
    vertical-align: top;
    text-transform: uppercase;
    font-size: 0.7em;
}
.table-calendar td.day--lost {
    color: #ccc;
}
.table-calendar td:hover .day,
.table-calendar td.day--selected .day,
.table-calendar td.day--today .day {
    border: 1px solid var(--blue);
    background: #fff;
    color: var(--blue);
}
.table-calendar td.day--lost:hover .day {
    border: 1px solid #f6f6f6;
    background: #f6f6f6;
    color: #ccc;
    cursor: default;
}
.table-calendar td .day {
    background: #f6f6f6;
    border-radius: 50%;
    display: inline-block;
    width: 40px;
    height: 40px;
    padding: 8px;
    border: 1px solid #f6f6f6;
}
.table-calendar td .events {
    position: absolute;
    bottom: -6px;
    left: 0;
    width: 100%;
}
.table-calendar td .events i {
    font-size: 0.5em;
}
.table-calendar td.calendar--legend i {
    font-size: 0.9em;
}

/* кнопки */
.btn {
    border-radius: 3px;
}
.btn.btn-white {
    border: 1px solid var(--blue);
    color: var(--blue);
    background: #fff;
}
.btn.btn-blue {
    border: 1px solid var(--blue);
    color: #fff;
    background: var(--blue);
}

/* Модалки */
.ui-dialog.ui-widget-content {border-radius: 15px; padding: 5px 15px; max-width: 90%;}
.ui-widget-overlay {background: #666; opacity: 0.9; filter: Alpha(Opacity=90);}
.ui-dialog-titlebar {background: #fff; border: none;}
.ui-dialog-titlebar-close {border: none; background: transparent; top: -15px!important; right: -35px!important;}
.ui-dialog-titlebar-close:hover {border: none; background: transparent;}
.ui-icon-closethick {background-image: url(../img/icons/close.png)!important; background-position: 0!important;}
.ui-dialog-buttonpane {border: none;}
.ui-dialog-buttonset {float: left!important;}
.ui-dialog-buttonset .btn {padding-left: 2em; padding-right: 2em;}

/* Формы в модалках */
.modal-form label {color: var(--lgrey);}
.modal-form input, .ui-dialog select {border-color: var(--lgrey);}
.modal-form input, .modal-form select {line-height: 1.5em;}

/* Панели */
.panel .panel-heading {border-bottom: 1px dashed var(--lgrey); padding: var(--m2) 0;}
.panel .panel-body {border-bottom: 1px dashed var(--lgrey); padding: var(--m2) 0;}
.panel .panel-heading:has( + .panel-collapse.show), .panel .panel-heading:has( + .panel-collapse.collapsing) {color: var(--blue);}

/* виджет "Новости" */
.news .calendar {margin-right: 5px; width: 15px!important; display: inline-block!important; vertical-align: text-top;}

/* таблицы */
.table tr th {color: var(--lgrey); font-weight: 100;}
.table tr:nth-child(odd) td {background: #f6f6f6;}
.table a .fa.fa-angle-down {color: var(--black);}
.table a .fa.fa-angle-up {color: var(--blue);}

/* кастомные тултипы */
.custom-tooltip {
    display: none;
    position: absolute;
    z-index: 2;
    background: #fff;
    padding: var(--m2);
    border-radius: 10px;
    width: 400px;
    max-width: 90%;
    -webkit-box-shadow: 4px 4px 8px 0 rgba(34, 60, 80, 0.2);
    -moz-box-shadow: 4px 4px 8px 0 rgba(34, 60, 80, 0.2);
    box-shadow: 4px 4px 8px 0 rgba(34, 60, 80, 0.2);
}
.custom-tooltip.mobile {right: 5px; width: 170px; flex-direction: column;}
.custom-tooltip.mobile.active {display: flex;}
.custom-tooltip.mobile a {border-bottom: 1px solid #dadada; padding: 10px 0;}
.custom-tooltip.mobile a:last-child {border-bottom: none;}
[data-custom-tooltip]:hover + .custom-tooltip {display: block;}

/* главная страница */
.projects-list {max-height: 70vh; padding-right: 5px;}
.projects-list > div {border-bottom: 1px dashed var(--lgrey); padding: 15px 0;}
.projects-list > div:last-child {border-bottom: none;}
.projects-list .badge {margin: 15px 0 0 15px; font-weight: 100;}
.projects-list ._img-background {height: 300px;}
.projects-list .task-item {display: flex;}

.messages-list {max-height: 70vh;}
.messages-list > div {border-bottom: 1px dashed var(--lgrey); padding: 15px 0;}
.messages-list > div:last-child {border-bottom: none;}

.calendar-events-list ._scroll {max-height: 35vh}
.calendar-events-list ._scroll > div {border-bottom: 1px dashed var(--lgrey); padding: 15px 0;}
.calendar-events-list ._scroll > div:last-child {border-bottom: none;}

/* страница проекта */
.project-nav-container {background: #f8f8f8;}
.project-nav-container .nav-tabs {border: none; margin-bottom: var(--m3); padding: 5px;}
.project-nav-container .nav-item {width: 100%; margin-bottom: 10px;}
.project-nav-container .nav-link {color: var(--lgrey); padding-left: 0; padding-right: 0;}
.project-nav-container .nav-link, .project-nav-container .nav-link:hover, .project-nav-container .nav-link:focus, .project-nav-container .nav-link:active {border: none;}
.project-nav-container .nav-link.active {color: var(--blue); background: transparent; border: none; text-align: left; width: 100%;}
.project-nav-container .nav-link .icon {width: 16px; height: 16px; vertical-align: text-top; background-color: var(--lgrey);}
.project-nav-container .nav-link.active .icon {background-color: var(--blue);}

.project-timeline {width: 100%; overflow-x: scroll; overflow-y: hidden; padding-bottom: var(--m2);}
.project-timeline .month {align-items: center; cursor: pointer;}
.project-timeline .month:hover {opacity: 0.6;}
.project-timeline .month > span {padding: 0 8px;}
.project-timeline .month .sectors {width: 100%; height: 16px; background: #d6d6d6; border-left: 0.5px solid var(--lgrey);}
.project-timeline .month:first-child .sectors {border-radius: 8px 0 0 8px; border-left: none;}
.project-timeline .month:last-child .sectors {border-radius: 0 8px 8px 0;}
.project-timeline .month:first-child .sectors > div:first-child {border-radius: 8px 0 0 8px;}
.project-timeline .month:last-child .sectors > div:last-child {border-radius: 0 8px 8px 0;}
.project-timeline .sectors > div {flex: 1 1 0; width: 100%; height: 16px;}

.files .file {padding: var(--m2) 0; border-bottom: 1px dashed var(--lgrey);}
.files .file:last-child {border-bottom: none;}

.links .link {padding: var(--m2) 0; border-bottom: 1px dashed var(--lgrey);}
.links .link:last-child {border-bottom: none;}

.requests .link:hover, .requests .link.active {background: #f5f5f5; border-left: 1px solid var(--blue);}
.requests .link > span:first-child {padding-top: 0!important;}
.requests .link > span:last-child {padding-bottom: 0!important;}
.answer {padding-left: var(--m2); border-left: 2px solid #dadada;}

input.search {width: 100%; padding: 5px; background: transparent; border: none; border-bottom: 1px solid #dadada; background-image: url(../img/icons/search.png); background-repeat: no-repeat; background-position-x: right; background-position-y: center;}
input.datepicker {width: 100%; padding: 5px; background: transparent; border: none; border-bottom: 1px solid #dadada; background-image: url(../img/icons/calendar.png); background-repeat: no-repeat; background-position-x: 95%; background-position-y: center;}
input.search:active, input.datepicker:active, input.search:focus, input.datepicker:focus, input.search:focus-visible, input.datepicker:focus-visible {border: none; border-bottom: 1px solid #dadada;}

.documents .date, .documents .owner, .documents .size {font-weight: 500;}

.objects .object ._img-background {width: 100%; height: 250px; position: relative;}
.objects .object .status.donut-block {
    position: absolute;
    width: 110px;
    height: 110px;
    top: -25px;
    right: -15px;
    background: #fff;
    border-radius: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.objects .object .status.donut-block .donut-text {
    z-index: 999;
    text-align: center;
    position: absolute;
    top: 60%;
    left: 0;
    width: 100%;
    color: #000;
    line-height: 15px;
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}
.objects .object .status.donut-block .donut-chart {
    z-index: 2;
    position: absolute;
    height: 100px;
    width: 100px;
    top: 7px;
    left: 4px;
}
.objects .object .status.donut-block .donut-text .value {font-size: 40px;}
.objects .object .status.donut-block svg {height: 105px;}